crawl_config.json 2.29 KB
{
  "skill_name": "screenwriter",
  "description": "剧本整理技能 - 将原始剧本按标准格式整理",
  "crawl_sources": [
    {
      "name": "Fountain 官方文档",
      "url": "https://www.fountain.io/",
      "type": "format_spec",
      "purpose": "开源剧本标记语言规范"
    },
    {
      "name": "Wikipedia Screenplay",
      "url": "https://en.wikipedia.org/wiki/Screenplay",
      "type": "format_spec",
      "purpose": "行业标准概述"
    },
    {
      "name": "Wikipedia 剧本",
      "url": "https://zh.wikipedia.org/wiki/%E5%89%A7%E6%9C%AC",
      "type": "format_spec",
      "purpose": "中文剧本文档规范"
    }
  ],
  "parsing_rules": {
    "scene_heading": {
      "pattern": "^(INT\\.|EXT\\.|INT/EXT\\.)",
      "format": "[INT./EXT.] [LOCATION] - [TIME]",
      "example": "INT. COFFEE SHOP - DAY"
    },
    "character": {
      "pattern": "^[A-Z\\u4e00-\\u9fa5]+$",
      "format": "全大写(英文)或中文原名",
      "position": "居中,对话上方"
    },
    "dialogue": {
      "pattern": ".+",
      "format": "角色名下方缩进",
      "max_width": 60
    },
    "parenthetical": {
      "pattern": "^\\(.+\\)$",
      "format": "小括号,角色名与台词之间",
      "purpose": "表演提示"
    },
    "action": {
      "pattern": "^[^A-Z].*",
      "format": "段落形式,现在时态",
      "position": "场景标题后或对话间"
    },
    "transition": {
      "pattern": "^(CUT TO:|FADE OUT\\.|FADE IN:|DISSOLVE TO:)",
      "format": "右对齐",
      "purpose": "场景转换标记"
    }
  },
  "output_format": {
    "primary": "fountain",
    "alternatives": ["plain_text", "json"],
    "encoding": "utf-8"
  },
  "validation": {
    "required_fields": ["scenes", "characters", "dialogue_count"],
    "quality_checks": [
      "scene_heading_format",
      "character_name_case",
      "dialogue_indentation",
      "parenthetical_position"
    ]
  },
  "example_input": {
    "raw_script": "天刚亮 王妈进入室内 端着热粥走到小姐身边 王妈说小姐您吃点东西吧 小姐把碗砸在地上说不吃"
  },
  "example_output": {
    "format": "fountain",
    "scene_heading": "INT. BEDROOM - DAY",
    "character": "王妈",
    "dialogue": "(端着粥)小姐,您还是得注意身子,就吃点东西吧。"
  }
}