@oh-story/dsh 0.1.18 → 0.1.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/README.md +12 -12
  2. package/lib/drama/manifest.json +77 -247
  3. package/lib/drama/skills/short-drama/SKILL.md +9 -1
  4. package/lib/drama/skills/short-drama/references/creator-documents.md +51 -23
  5. package/lib/drama/skills/short-drama/references/reference-roles.md +1 -1
  6. package/lib/drama/skills/short-drama/scripts/creator_markdown_check.py +442 -129
  7. package/lib/drama/skills/short-drama/scripts/project_tool.py +54 -1
  8. package/lib/drama/skills/short-drama-assets/SKILL.md +2 -6
  9. package/lib/drama/skills/short-drama-assets/references/continuity-lock.md +9 -3
  10. package/lib/drama/skills/short-drama-assets/references/era-anchors.md +3 -3
  11. package/lib/drama/skills/short-drama-assets/references/location-and-view.md +4 -0
  12. package/lib/drama/skills/short-drama-develop/references/adaptation-craft.md +2 -2
  13. package/lib/drama/skills/short-drama-develop/references/episode-design.md +19 -4
  14. package/lib/drama/skills/short-drama-develop/references/genre-cards//347/263/273/347/273/237/346/265/201.md +1 -1
  15. package/lib/drama/skills/short-drama-edit/SKILL.md +1 -1
  16. package/lib/drama/skills/short-drama-edit/scripts/edit_tool.py +28 -6
  17. package/lib/drama/skills/short-drama-edit/scripts/selftest.py +1 -1
  18. package/lib/drama/skills/short-drama-image-prompts/SKILL.md +1 -5
  19. package/lib/drama/skills/short-drama-novel-analyze/references/aggregation-and-entities.md +2 -2
  20. package/lib/drama/skills/short-drama-produce/SKILL.md +2 -0
  21. package/lib/drama/skills/short-drama-review/SKILL.md +0 -4
  22. package/lib/drama/skills/short-drama-review/references/production-quality-gates.md +1 -1
  23. package/lib/drama/skills/short-drama-storyboard/SKILL.md +9 -9
  24. package/lib/drama/skills/short-drama-storyboard/references/blocking-playbooks.md +43 -13
  25. package/lib/drama/skills/short-drama-storyboard/references/keyframe-craft.md +5 -5
  26. package/lib/drama/skills/short-drama-storyboard/references/production-shot-grammar.md +5 -5
  27. package/lib/drama/skills/short-drama-storyboard/references/shot-craft.md +27 -3
  28. package/lib/drama/skills/short-drama-storyboard/references/stage-contract.md +2 -1
  29. package/lib/drama/skills/short-drama-video-prompts/SKILL.md +6 -8
  30. package/lib/drama/skills/short-drama-video-prompts/references/camera-audio-continuity.md +16 -1
  31. package/lib/drama/skills/short-drama-video-prompts/references/delivery-profile.md +23 -6
  32. package/lib/drama/skills/short-drama-video-prompts/references/motion-recipe.md +2 -2
  33. package/lib/drama/skills/short-drama-video-prompts/references/production-prompt-grammar.md +8 -1
  34. package/lib/drama/skills/short-drama-video-prompts/references/seedance-2.0.md +41 -2
  35. package/lib/drama/skills/short-drama-video-prompts/references/seedance-2.5.md +1 -1
  36. package/lib/drama/skills/short-drama-video-prompts/references/target-model-profile.md +5 -1
  37. package/lib/drama/skills/short-drama-write/SKILL.md +7 -3
  38. package/lib/drama/skills/short-drama-write/references/screenplay-format.md +1 -1
  39. package/lib/drama/skills/short-drama-write/scripts/duration_estimate.py +94 -1
  40. package/lib/drama/skills/short-drama-write/scripts/screenplay_index.py +13 -4
  41. package/lib/drama/skills/short-drama-write/scripts/selftest.py +3 -77
  42. package/lib/index.js +2 -2
  43. package/lib/index.js.map +1 -1
  44. package/lib/novel-to-game/README.md +20 -34
  45. package/lib/novel-to-game/README_ZH.md +20 -34
  46. package/lib/novel-to-game/VERSION +1 -1
  47. package/lib/novel-to-game/examples/jin-ping-mei/build/BUILD_BRIEF.md +2 -6
  48. package/lib/novel-to-game/examples/jin-ping-mei/build/app/js/audio.js +33 -39
  49. package/lib/novel-to-game/examples/jin-ping-mei/qa/README.md +2 -2
  50. package/lib/novel-to-game/manifest.json +46 -46
  51. package/lib/novel-to-game/skills/game-art-direction/SKILL.md +1 -1
  52. package/lib/novel-to-game/skills/game-build/references/baked-sprite-workflow.md +2 -3
  53. package/lib/novel-to-game/skills/game-build/references/blender-asset-workflow.md +6 -7
  54. package/lib/novel-to-game/skills/game-build/references/build-brief-contract.md +2 -2
  55. package/lib/novel-to-game/skills/game-build/references/generative-media-pipeline.md +1 -4
  56. package/lib/novel-to-game/skills/game-build/references/playable-model-contract.md +1 -3
  57. package/lib/novel-to-game/skills/game-build/references/tts-production-contract.md +1 -3
  58. package/lib/novel-to-game/skills/game-concept/SKILL.md +1 -1
  59. package/lib/novel-to-game/skills/game-qa/SKILL.md +3 -4
  60. package/lib/novel-to-game/skills/game-qa/references/qa-contract.md +1 -1
  61. package/lib/novel-to-game/skills/game-qa/references/test-design-method.md +3 -2
  62. package/lib/novel-to-game/skills/novel-game-analyze/SKILL.md +13 -14
  63. package/lib/novel-to-game/skills/novel-game-analyze/references/gameability-protocol.md +1 -2
  64. package/lib/novel-to-game/skills/novel-to-game/SKILL.md +4 -4
  65. package/lib/novel-to-game/skills/novel-to-game/references/intake-method.md +2 -3
  66. package/lib/novel-to-game/skills/novel-to-game/references/pipeline-contract.md +0 -8
  67. package/lib/oh-story/manifest.json +49 -49
  68. package/lib/oh-story/skills/story/SKILL.md +2 -2
  69. package/lib/oh-story/skills/story/VERSION +1 -1
  70. package/lib/oh-story/skills/story-deslop/SKILL.md +2 -2
  71. package/lib/oh-story/skills/story-import/SKILL.md +5 -5
  72. package/lib/oh-story/skills/story-import/references/deep-analysis.md +1 -1
  73. package/lib/oh-story/skills/story-import/references/import-report.md +1 -1
  74. package/lib/oh-story/skills/story-import/references/import-tracking.md +1 -1
  75. package/lib/oh-story/skills/story-import/references/outline-reverse.md +1 -1
  76. package/lib/oh-story/skills/story-import/scripts/tracking_commit.py +6 -1
  77. package/lib/oh-story/skills/story-long-analyze/SKILL.md +2 -2
  78. package/lib/oh-story/skills/story-long-write/SKILL.md +2 -2
  79. package/lib/oh-story/skills/story-long-write/references/agent-calls.md +3 -3
  80. package/lib/oh-story/skills/story-long-write/references/tracking-transaction.md +2 -2
  81. package/lib/oh-story/skills/story-long-write/scripts/tracking_commit.py +6 -1
  82. package/lib/oh-story/skills/story-review/SKILL.md +8 -7
  83. package/lib/oh-story/skills/story-review/references/agent-prompts.md +7 -7
  84. package/lib/oh-story/skills/story-review/references/tracking-transaction.md +2 -2
  85. package/lib/oh-story/skills/story-review/scripts/tracking_commit.py +6 -1
  86. package/lib/oh-story/skills/story-setup/SKILL.md +6 -6
  87. package/lib/oh-story/skills/story-short-write/SKILL.md +2 -2
  88. package/lib/oh-story/skills/story-short-write/references/agent-calls.md +3 -3
  89. package/lib/oh-story/skills/story-short-write/references/workflow-design.md +2 -2
  90. package/lib/oh-story/skills/story-short-write/references/workflow-revision.md +1 -1
  91. package/package.json +21 -21
  92. package/lib/drama/skills/short-drama-assets/assets/character-look.example.jsonl +0 -3
  93. package/lib/drama/skills/short-drama-assets/assets/continuity.example.jsonl +0 -4
  94. package/lib/drama/skills/short-drama-assets/assets/decisions.example.jsonl +0 -5
  95. package/lib/drama/skills/short-drama-assets/assets/location-view.example.jsonl +0 -3
  96. package/lib/drama/skills/short-drama-assets/assets/occurrences.example.jsonl +0 -5
  97. package/lib/drama/skills/short-drama-assets/assets/prop-state.example.jsonl +0 -3
  98. package/lib/drama/skills/short-drama-assets/examples/minimal/characters.jsonl +0 -2
  99. package/lib/drama/skills/short-drama-assets/examples/minimal/looks.jsonl +0 -2
  100. package/lib/drama/skills/short-drama-assets/scripts/asset_check.py +0 -267
  101. package/lib/drama/skills/short-drama-assets/scripts/selftest.py +0 -89
  102. package/lib/drama/skills/short-drama-image-prompts/examples/minimal-image-prompt-specs.jsonl +0 -2
  103. package/lib/drama/skills/short-drama-image-prompts/scripts/image_prompt_check.py +0 -443
  104. package/lib/drama/skills/short-drama-image-prompts/scripts/selftest.py +0 -95
  105. package/lib/drama/skills/short-drama-review/assets/finding-template.jsonl +0 -2
  106. package/lib/drama/skills/short-drama-review/assets/supersession-decision.example.json +0 -42
  107. package/lib/drama/skills/short-drama-review/assets/verdict-template.json +0 -32
  108. package/lib/drama/skills/short-drama-review/examples/minimal-findings.jsonl +0 -2
  109. package/lib/drama/skills/short-drama-review/examples/minimal-verdict.json +0 -34
  110. package/lib/drama/skills/short-drama-review/scripts/review_check.py +0 -325
  111. package/lib/drama/skills/short-drama-review/scripts/selftest.py +0 -87
  112. package/lib/drama/skills/short-drama-storyboard/assets/coverage-audition.example.jsonl +0 -2
  113. package/lib/drama/skills/short-drama-storyboard/assets/revision-lineage.fragment.json +0 -12
  114. package/lib/drama/skills/short-drama-storyboard/assets/scene-visual-plan.example.jsonl +0 -2
  115. package/lib/drama/skills/short-drama-storyboard/scripts/selftest.py +0 -191
  116. package/lib/drama/skills/short-drama-storyboard/scripts/storyboard_check.py +0 -824
  117. package/lib/drama/skills/short-drama-video-prompts/assets/coverage-scope.fragment.json +0 -21
  118. package/lib/drama/skills/short-drama-video-prompts/assets/motion-terminal.example.jsonl +0 -2
  119. package/lib/drama/skills/short-drama-video-prompts/assets/performance.fragment.json +0 -38
  120. package/lib/drama/skills/short-drama-video-prompts/examples/minimal-music-specs.jsonl +0 -2
  121. package/lib/drama/skills/short-drama-video-prompts/scripts/container_check.py +0 -329
  122. package/lib/drama/skills/short-drama-video-prompts/scripts/motion_timing_check.py +0 -451
  123. package/lib/drama/skills/short-drama-video-prompts/scripts/music_spec_check.py +0 -327
  124. package/lib/drama/skills/short-drama-video-prompts/scripts/selftest.py +0 -82
  125. package/lib/drama/skills/short-drama-write/scripts/voice_sheet_check.py +0 -416
package/README.md CHANGED
@@ -6,9 +6,9 @@
6
6
 
7
7
  `oh-story-dsh` 是基于 DeepSeek Harness(DSH)构建的社区小说、短剧、互动游戏与视频解说创作插件。以下清单对应当前源码;已发布包按各自的 manifest 固定上游提交。
8
8
 
9
- - 13 个 Oh Story 0.9.0 小说 Skills 与 7 个专业 Roles;
10
- - 11 个 Drama Skills 0.9.0 短剧流程,每集按请求维护最多五份创作 Markdown(剧本、视觉设定、分镜、图片提示词、视频提示词),成片装配另写《剪辑单.md》;
11
- - 7 个 NovelToGame 0.6.0 Skills、`game-adaptations/<project>` 产物协议与《金瓶梅 · 风月总账》ADV 可玩构建(18+,欢迎卡「先玩内置示例」即可试玩);
9
+ - 13 个 Oh Story 0.9.1 小说 Skills 与 7 个专业 Roles;
10
+ - 11 个 Drama Skills 0.9.2 短剧流程,每集按请求维护最多五份创作 Markdown(剧本、视觉设定、分镜、图片提示词、视频提示词),成片装配另写《剪辑单.md》;
11
+ - 7 个 NovelToGame 0.6.1 Skills、`game-adaptations/<project>` 产物协议与《金瓶梅 · 风月总账》ADV 可玩构建(18+,欢迎卡「先玩内置示例」即可试玩);
12
12
  - 7 个 video-recap-skills 0.6.2 Skills(3 个用户入口)、`video-recaps/<project>` 项目约定与轻量视频预览工作台;
13
13
  - 小说协议 hooks 与安全的 Session workspace 文件路由;
14
14
  - 小说/短剧的文件树、编辑器、Chat 三栏工作台,以及游戏/视频的“左侧工作台 + 右侧 Chat”制作面板;
@@ -23,20 +23,20 @@
23
23
  安装命令会临时提供 pnpm;只安装 Node.js 的机器也能执行。DSH 的 `plugin add` 内部需要 pnpm,单独运行 `npx @deepseek-ai/dsh ... plugin add` 不会自动补上它。
24
24
 
25
25
  ```bash
26
- npx -y --package pnpm@11.7.0 --package @deepseek-ai/dsh@0.2.1-rc.2 dsh plugin --profile web add @oh-story/dsh@0.1.18 &&
27
- npx -y @deepseek-ai/dsh@0.2.1-rc.2 web
26
+ npx -y --package pnpm@11.7.0 --package @deepseek-ai/dsh@0.2.1-rc.4 dsh plugin --profile web add @oh-story/dsh@0.1.19 &&
27
+ npx -y @deepseek-ai/dsh@0.2.1-rc.4 web
28
28
  ```
29
29
 
30
30
  也可以直接安装 GitHub Release 中的预构建包:
31
31
 
32
32
  ```bash
33
- npx -y --package pnpm@11.7.0 --package @deepseek-ai/dsh@0.2.1-rc.2 dsh plugin --profile web add https://github.com/zenstory-ai/oh-story-dsh/releases/download/v0.1.18/oh-story-dsh-0.1.18.tgz &&
34
- npx -y @deepseek-ai/dsh@0.2.1-rc.2 web
33
+ npx -y --package pnpm@11.7.0 --package @deepseek-ai/dsh@0.2.1-rc.4 dsh plugin --profile web add https://github.com/zenstory-ai/oh-story-dsh/releases/download/v0.1.19/oh-story-dsh-0.1.19.tgz &&
34
+ npx -y @deepseek-ai/dsh@0.2.1-rc.4 web
35
35
  ```
36
36
 
37
37
  保持终端运行。若浏览器未自动打开,访问终端打印的完整 `http://127.0.0.1:3080/?token=...` 链接完成首次认证。
38
38
 
39
- 本页默认命令固定使用 npm `latest` 的 `0.2.1-rc.2`。仍在用 `0.2.0-rc.2` 时把安装、启动两条命令中的版本同时改回它;插件接受 `>=0.2.0-rc.2 <0.2.1-0` 或 `>=0.2.1-alpha.1 <0.2.2-0`,不要混装宿主版本。
39
+ 本页默认命令固定使用 npm `next` 的 `0.2.1-rc.4`,npm `latest` 的 `0.2.1-rc.2` 同样验证过。仍在用 `0.2.0-rc.2` 时把安装、启动两条命令中的版本同时改回它;插件接受 `>=0.2.0-rc.2 <0.2.1-0` 或 `>=0.2.1-alpha.1 <0.2.2-0`,不要混装宿主版本。
40
40
 
41
41
  需要 Node.js 24+。开始 AI 创作前需要在 DSH 的「设置 → 模型」中添加 Provider 并填入 API Key,或在启动前设置环境变量 `DEEPSEEK_API_KEY`。
42
42
 
@@ -76,7 +76,7 @@ Drama Skills 0.6.0 不支持把 v0.5 结构化项目原地升级为 creator-firs
76
76
 
77
77
  0.8.1 的角色参考音频必须绑定具体角色,并通过严格的 `reference_roles`、身份与禁控校验;音频不会出现在图片参考选择器里。NovelToGame 0.5.0 的 ADV 示例不迁移旧存档,升级后清除旧站点存储并重新开始。video-recap 0.6.1 改用 QC schema 2,删除旧 QC 标志/路径;升级既有 `work/` 时可能重新生成 ASR、剪辑、TTS 与索引,不得沿用或伪造旧 PASS。0.6.2 起 dub(英译中原声复刻)必须带 `--confirm-voice-rights`,包括旧 `work/` 打印的续跑命令;没有 `MIMO_API_KEY` 时旁白评审直接退出,不再外发稿件。
78
78
 
79
- Oh Story 0.9.0 按写书步骤重整参考资料,书稿、设定、追踪和作者记忆不用迁移;之前导入的长篇续写前,先让 `/story-long-write` 把旧剧情单元改写成单元卡。作者习惯仍由长篇、短篇写作入口管理,独立审稿与去味只消费本次提供的偏好,检测或标注不会改正文。Drama 0.9 继续按当前需要维护 Markdown 创作文档,旧模板不再补建。
79
+ Oh Story 0.9.0 按写书步骤重整参考资料,书稿、设定、追踪和作者记忆不用迁移;之前导入的长篇续写前,先让 `/story-long-write` 把旧剧情单元改写成单元卡。作者习惯仍由长篇、短篇写作入口管理,独立审稿与去味只消费本次提供的偏好,检测或标注不会改正文。Oh Story 0.9.1 的续写状态卡最多列 20 个活跃角色。Drama 0.9 继续按当前需要维护 Markdown 创作文档,旧模板不再补建;0.9.1 起旧 JSON 检查器不再随包,结构检查统一用 `creator_markdown_check.py`,0.9.2 可在每写完一份文档后加 `--partial` 只核对已有文档。
80
80
 
81
81
  ## 没看到界面时
82
82
 
@@ -90,7 +90,7 @@ Oh Story 0.9.0 按写书步骤重整参考资料,书稿、设定、追踪和
90
90
  插件装进哪个 profile,那个 profile 的每个 Session 都能发现创作 Skills,具体指令在使用时读取;工作台只在有创作项目时显示。想让原版 `web` 保持干净、只在创作时打开工作台,就装进独立 profile:
91
91
 
92
92
  ```bash
93
- npx -y --package pnpm@11.7.0 --package @deepseek-ai/dsh@0.2.1-rc.2 dsh plugin --profile story add @oh-story/dsh@0.1.18
93
+ npx -y --package pnpm@11.7.0 --package @deepseek-ai/dsh@0.2.1-rc.4 dsh plugin --profile story add @oh-story/dsh@0.1.19
94
94
  ```
95
95
 
96
96
  新 profile 默认没有界面。编辑 `~/.dsh/profiles/story/package.json`,把 `dsh.profile.bundles` 改成 `["@deepseek-ai/dsh-base", "@deepseek-ai/dsh-web-app", "@oh-story/dsh"]`。
@@ -98,8 +98,8 @@ npx -y --package pnpm@11.7.0 --package @deepseek-ai/dsh@0.2.1-rc.2 dsh plugin --
98
98
  `@deepseek-ai/dsh-web-app` 是 DSH 自带的 Web 界面包,需要在创作插件之前加载。
99
99
 
100
100
  ```bash
101
- npx -y @deepseek-ai/dsh@0.2.1-rc.2 web # 原版 DSH
102
- npx -y @deepseek-ai/dsh@0.2.1-rc.2 --profile story --port 3081 # 创作工作台
101
+ npx -y @deepseek-ai/dsh@0.2.1-rc.4 web # 原版 DSH
102
+ npx -y @deepseek-ai/dsh@0.2.1-rc.4 --profile story --port 3081 # 创作工作台
103
103
  ```
104
104
 
105
105
  模型、凭据、workspace 与历史会话由 DSH 统一保存,切换 profile 不会丢。安装与启动请使用同一个 dsh 版本。
@@ -2,9 +2,9 @@
2
2
  "schemaVersion": 1,
3
3
  "upstream": {
4
4
  "repository": "https://github.com/zenstory-ai/drama-skills.git",
5
- "commit": "dafe80ee390ec8be5a7ec8dd156a84d511f8e7dd"
5
+ "commit": "fdb7b7c58017e3eae64eca382c2a85ede368dab0"
6
6
  },
7
- "generatedAt": "2026-10-15T09:54:04.691Z",
7
+ "generatedAt": "2026-10-27T08:36:13.020Z",
8
8
  "skills": [
9
9
  "short-drama",
10
10
  "short-drama-assets",
@@ -26,54 +26,14 @@
26
26
  },
27
27
  {
28
28
  "path": "skills/short-drama-assets/SKILL.md",
29
- "sha256": "12f35e91a808bd164294a33288fd8345234cb9726ae5fceafa098df6ca80070c",
30
- "bytes": 5569
29
+ "sha256": "73043f9686554672378a57686bdb507912260442ef168acf3c26130df11c8c93",
30
+ "bytes": 5744
31
31
  },
32
32
  {
33
33
  "path": "skills/short-drama-assets/agents/openai.yaml",
34
34
  "sha256": "ed6ab12d47a84ade6f5952644257d43aaa13197acadb15ca9db7638d4cf5481b",
35
35
  "bytes": 294
36
36
  },
37
- {
38
- "path": "skills/short-drama-assets/assets/character-look.example.jsonl",
39
- "sha256": "23d8e3f6ada7cf556e44b955d45e4a1536d6f83c490c33e498205eaf36c073b9",
40
- "bytes": 2914
41
- },
42
- {
43
- "path": "skills/short-drama-assets/assets/continuity.example.jsonl",
44
- "sha256": "763d3961eb0da4e4e4c420a015dcd4ef8c8914f1b4a53eb8eb4a3a6da20fe56f",
45
- "bytes": 3487
46
- },
47
- {
48
- "path": "skills/short-drama-assets/assets/decisions.example.jsonl",
49
- "sha256": "7041acd603fcd555611b2b3c2da82f56151e9dc26242c9409c96c455ea3fa7e0",
50
- "bytes": 4073
51
- },
52
- {
53
- "path": "skills/short-drama-assets/assets/location-view.example.jsonl",
54
- "sha256": "538d60dc33dcfe6649d45f37d6b67910dfc3455ac5d5193ee4796f3a910681a8",
55
- "bytes": 1960
56
- },
57
- {
58
- "path": "skills/short-drama-assets/assets/occurrences.example.jsonl",
59
- "sha256": "4e7cc65b0b17d66f64b7fcafb755a2bac4c253babf966dcc49d69a40462f525e",
60
- "bytes": 4505
61
- },
62
- {
63
- "path": "skills/short-drama-assets/assets/prop-state.example.jsonl",
64
- "sha256": "f6330a42d04cdbace03661008280ec5ebf6751804db37c99eed45dd5e5250133",
65
- "bytes": 1888
66
- },
67
- {
68
- "path": "skills/short-drama-assets/examples/minimal/characters.jsonl",
69
- "sha256": "5e2404d74ee449471a6e456d7016e515fb0e11032d6738a4b2877a0244d26a65",
70
- "bytes": 652
71
- },
72
- {
73
- "path": "skills/short-drama-assets/examples/minimal/looks.jsonl",
74
- "sha256": "4ae4e1e9721c5e1c5488742667acb5f0288c314f5e8c39e1ee82e31bf7160323",
75
- "bytes": 742
76
- },
77
37
  {
78
38
  "path": "skills/short-drama-assets/references/asset-review-checklist.md",
79
39
  "sha256": "dd52740c6097d09f881bf42c159b9c5c5a2d5c142308ba76c149fca865826998",
@@ -91,13 +51,13 @@
91
51
  },
92
52
  {
93
53
  "path": "skills/short-drama-assets/references/continuity-lock.md",
94
- "sha256": "3327b78f7f528c7820fd1421727c92489a1612172f5c8b224133f25eaeb48b39",
95
- "bytes": 7147
54
+ "sha256": "0f6960b2d6f989c12383f5349d43779f5bd03ec914f53f25412e3b9d0bcd8946",
55
+ "bytes": 7780
96
56
  },
97
57
  {
98
58
  "path": "skills/short-drama-assets/references/era-anchors.md",
99
- "sha256": "3531d7c9c48d308002fceed0efa1332916b7044ec99f5b23d9cb35acc89ecb1a",
100
- "bytes": 2346
59
+ "sha256": "66a3e4c2127725d84b6fedfc0585837c5c764a3285f2db0be762473dfc9e23d4",
60
+ "bytes": 2367
101
61
  },
102
62
  {
103
63
  "path": "skills/short-drama-assets/references/identity-vs-variant.md",
@@ -106,8 +66,8 @@
106
66
  },
107
67
  {
108
68
  "path": "skills/short-drama-assets/references/location-and-view.md",
109
- "sha256": "6f74447fcf6a11c8718b77c4b8378e596c754d1bd2db3e568d840df357409a91",
110
- "bytes": 4054
69
+ "sha256": "d484bbdd3e781da667293411f674ea1bc2a3b31d6c42a86280a8b25dec9f8f47",
70
+ "bytes": 4436
111
71
  },
112
72
  {
113
73
  "path": "skills/short-drama-assets/references/occurrence-extraction.md",
@@ -129,16 +89,6 @@
129
89
  "sha256": "df6edfbc053b33ed8bfb4849bb90512c253961ce23c05b466015b8cc7ce85583",
130
90
  "bytes": 10208
131
91
  },
132
- {
133
- "path": "skills/short-drama-assets/scripts/asset_check.py",
134
- "sha256": "e19bf29a16d407c4b397fe721267ddffe5000f280db43fe89b5436a7db0bc9a7",
135
- "bytes": 10260
136
- },
137
- {
138
- "path": "skills/short-drama-assets/scripts/selftest.py",
139
- "sha256": "95868581c8e8c406c0b9169442e05e3c2b75d50ffaa6f194eab7f09b89050666",
140
- "bytes": 3174
141
- },
142
92
  {
143
93
  "path": "skills/short-drama-develop/SKILL.md",
144
94
  "sha256": "8fda1d827d060a1f26f71ef0ef58b87ea37f68ed2419736c0949d283d2719ee2",
@@ -171,8 +121,8 @@
171
121
  },
172
122
  {
173
123
  "path": "skills/short-drama-develop/references/adaptation-craft.md",
174
- "sha256": "a9174b5291eaa8f4e41fb4727d460ec633482d85f211d274c64dfe6c7ceaeb71",
175
- "bytes": 17891
124
+ "sha256": "27b205f1aba2203e50b25296eafeff770c4126c2b223172676112d13243f42f7",
125
+ "bytes": 17894
176
126
  },
177
127
  {
178
128
  "path": "skills/short-drama-develop/references/creative-reference-intake.md",
@@ -186,8 +136,8 @@
186
136
  },
187
137
  {
188
138
  "path": "skills/short-drama-develop/references/episode-design.md",
189
- "sha256": "a86da6909cb030af591042bfec4b2a6f52b127d0259d40705fedeb6d4f35429a",
190
- "bytes": 29681
139
+ "sha256": "332cc9731810eb33fb7fd59bcdbc06da21f781509a06eff3aa4f4041db426f64",
140
+ "bytes": 31121
191
141
  },
192
142
  {
193
143
  "path": "skills/short-drama-develop/references/genre-and-hook-playbook.md",
@@ -246,8 +196,8 @@
246
196
  },
247
197
  {
248
198
  "path": "skills/short-drama-develop/references/genre-cards/系统流.md",
249
- "sha256": "9bb90930823bd499379542a33292ad6e2fbe433350a2d088a5a563dc9ca0232f",
250
- "bytes": 4483
199
+ "sha256": "557986580ca0035ce4572dcebc5d057e00153e9d6ce6aebda9d7c5179cbdc13c",
200
+ "bytes": 4510
251
201
  },
252
202
  {
253
203
  "path": "skills/short-drama-develop/references/genre-cards/职场喜剧.md",
@@ -321,8 +271,8 @@
321
271
  },
322
272
  {
323
273
  "path": "skills/short-drama-edit/SKILL.md",
324
- "sha256": "dc3a81a98da0a9769f7bb7d0e0dd2345d7d7fe7a2fb476485444aa443d5ef435",
325
- "bytes": 15008
274
+ "sha256": "38946a741e12b2be0ac9715fdd31c0886e80cb5f80b6531c1da3314e4481301f",
275
+ "bytes": 15010
326
276
  },
327
277
  {
328
278
  "path": "skills/short-drama-edit/agents/openai.yaml",
@@ -456,29 +406,24 @@
456
406
  },
457
407
  {
458
408
  "path": "skills/short-drama-edit/scripts/edit_tool.py",
459
- "sha256": "b9b7d5b7f47c5e2cddc3b42fd8a77973b25b7111540a5a80cccd22825ad048ef",
460
- "bytes": 130747
409
+ "sha256": "15a6e11110916197b9fc0252b91deea963a6f6cb40a7419e13c6cacedd68c9a1",
410
+ "bytes": 132013
461
411
  },
462
412
  {
463
413
  "path": "skills/short-drama-edit/scripts/selftest.py",
464
- "sha256": "308760a10f0031cace5a47bdf3f1107a51bdca1e0cce4cee71466ad887ae2825",
414
+ "sha256": "a71e563dfc4b55ce1f7a393bee1aa36aa977245424f44837754656c603280e46",
465
415
  "bytes": 26399
466
416
  },
467
417
  {
468
418
  "path": "skills/short-drama-image-prompts/SKILL.md",
469
- "sha256": "f226e2cd0d4c051a930357320e81a3dcf8fcde5e28f1672517b4fbe5a2013db2",
470
- "bytes": 5060
419
+ "sha256": "b6e4acf14911c40298cd56bbf03e0a25faf633da49187e5813c1eea8e9fc610e",
420
+ "bytes": 5011
471
421
  },
472
422
  {
473
423
  "path": "skills/short-drama-image-prompts/agents/openai.yaml",
474
424
  "sha256": "df7927cdd98d30560d24d53ed8607ab495ce101f282b02bf746048408ba20241",
475
425
  "bytes": 310
476
426
  },
477
- {
478
- "path": "skills/short-drama-image-prompts/examples/minimal-image-prompt-specs.jsonl",
479
- "sha256": "e295df00278c27346a8169fd1ab3a8263940905693d7c562d904ff773cb767fe",
480
- "bytes": 2363
481
- },
482
427
  {
483
428
  "path": "skills/short-drama-image-prompts/references/character-and-look.md",
484
429
  "sha256": "f0ee2b15aef1ecb187748ef833912bbfc00f7181a5e43088cfde9d19fae49607",
@@ -529,16 +474,6 @@
529
474
  "sha256": "7813c87297ef94ec26178cc59bf3a59a93b47fc19be2793a7e80cdc9d3c5ebb9",
530
475
  "bytes": 3712
531
476
  },
532
- {
533
- "path": "skills/short-drama-image-prompts/scripts/image_prompt_check.py",
534
- "sha256": "a6e3217410e366f0626766218e41e5d41501efde87f5f2283c65c7e7adb901f4",
535
- "bytes": 17936
536
- },
537
- {
538
- "path": "skills/short-drama-image-prompts/scripts/selftest.py",
539
- "sha256": "9cc21ea2b835df84289d3d1f6bd363ed20c2cb2f81870a69e75bd53052c01968",
540
- "bytes": 3862
541
- },
542
477
  {
543
478
  "path": "skills/short-drama-novel-analyze/SKILL.md",
544
479
  "sha256": "105d5322f9607fefa98608ff90e5e6031c1d856e4a20b8f9502cde13f43c907c",
@@ -566,7 +501,7 @@
566
501
  },
567
502
  {
568
503
  "path": "skills/short-drama-novel-analyze/references/aggregation-and-entities.md",
569
- "sha256": "a0cc42b8ab0f8f2cddb4eef8ac3acc6143e7c75ce963ad4f0cd65e9cd167c6b5",
504
+ "sha256": "2afd25f0e2f1591ce30d1c5aff06bcb2084e9e5b2b7cdbaec09fc6e8c60b912d",
570
505
  "bytes": 9890
571
506
  },
572
507
  {
@@ -591,8 +526,8 @@
591
526
  },
592
527
  {
593
528
  "path": "skills/short-drama-produce/SKILL.md",
594
- "sha256": "5172f57e616ef2f9d0003efb9dbab662a6dbdac589850fa629b53a129e727f79",
595
- "bytes": 15433
529
+ "sha256": "dfeca69609dcca477f7cc9d488c1554e8da1ea851e2fe0f4e95169924a2b74f2",
530
+ "bytes": 15689
596
531
  },
597
532
  {
598
533
  "path": "skills/short-drama-produce/agents/openai.yaml",
@@ -651,39 +586,14 @@
651
586
  },
652
587
  {
653
588
  "path": "skills/short-drama-review/SKILL.md",
654
- "sha256": "7e134d029de085acad15e0a80707c79d7663c4392d97834873c308786ada9143",
655
- "bytes": 5405
589
+ "sha256": "13b72416eb86a7ec6131a1d1e4db6b06e4797bef5e56e254d91f96fba2ad6765",
590
+ "bytes": 5314
656
591
  },
657
592
  {
658
593
  "path": "skills/short-drama-review/agents/openai.yaml",
659
594
  "sha256": "d828625cee0450daff12a87ff6e71c012ffdcd59fcce21f2938625769671c5eb",
660
595
  "bytes": 319
661
596
  },
662
- {
663
- "path": "skills/short-drama-review/assets/finding-template.jsonl",
664
- "sha256": "c85258204e9781b5731d58fc742588c5fd17427ddc18873f41ee1919f1980b90",
665
- "bytes": 1267
666
- },
667
- {
668
- "path": "skills/short-drama-review/assets/supersession-decision.example.json",
669
- "sha256": "ca0eb7db8605eb960173fba907b4a4a9ac4b92f680869f4499e52f139c5e58ee",
670
- "bytes": 1197
671
- },
672
- {
673
- "path": "skills/short-drama-review/assets/verdict-template.json",
674
- "sha256": "cb3c7657f0b9f46616f65e5612fc8b28b03668e7e0b65871235897388fd714c6",
675
- "bytes": 685
676
- },
677
- {
678
- "path": "skills/short-drama-review/examples/minimal-findings.jsonl",
679
- "sha256": "2bec0be2f7e310a7b7efc9cb424cd792fd406110855ed84876fc5979772d7555",
680
- "bytes": 1121
681
- },
682
- {
683
- "path": "skills/short-drama-review/examples/minimal-verdict.json",
684
- "sha256": "f7039663121ea799892a1e117c21e9e02364791bc11e48f66c2cf7ded78c6bb5",
685
- "bytes": 674
686
- },
687
597
  {
688
598
  "path": "skills/short-drama-review/references/anti-template-repair.md",
689
599
  "sha256": "101e28f28765d9e2c804832fd06c853f2071b6b1a26c210f7be42fca5de395d4",
@@ -691,8 +601,8 @@
691
601
  },
692
602
  {
693
603
  "path": "skills/short-drama-review/references/production-quality-gates.md",
694
- "sha256": "c4855a4250038bf5ddd69d04a91629b364f5733165711cd7ccc5534a3c7cd0fe",
695
- "bytes": 19794
604
+ "sha256": "42653ce7d833128ade8c7e6dd6fbbf4fabdce1298b00bf0f889c30c52564e2b4",
605
+ "bytes": 19790
696
606
  },
697
607
  {
698
608
  "path": "skills/short-drama-review/references/project-calibration.md",
@@ -729,45 +639,20 @@
729
639
  "sha256": "b04225a5e9d3260a4ebe0402bf800d3d2faf2b6ac76ab709534cac9423fe20c2",
730
640
  "bytes": 4229
731
641
  },
732
- {
733
- "path": "skills/short-drama-review/scripts/review_check.py",
734
- "sha256": "01503d966920ff9b931eaa50fb7aebc6500c94e75e2ae0e387a2bac8c7c3c27a",
735
- "bytes": 12684
736
- },
737
- {
738
- "path": "skills/short-drama-review/scripts/selftest.py",
739
- "sha256": "2d818a5be4ff03f2ac9885f4cd4fb4e4eaabe372997f55f42a5f1e3d505bcb49",
740
- "bytes": 3165
741
- },
742
642
  {
743
643
  "path": "skills/short-drama-storyboard/SKILL.md",
744
- "sha256": "a5c4f42444e271f3d0bab3e6ccb05b9d5d8d28bef98bcbf5fe61b885b7d877ed",
745
- "bytes": 19225
644
+ "sha256": "fec0a090c48b8939cdd5302937446faf2ffbbca26bf596e69e2b32dd8153067e",
645
+ "bytes": 20719
746
646
  },
747
647
  {
748
648
  "path": "skills/short-drama-storyboard/agents/openai.yaml",
749
649
  "sha256": "d6a0712925307b730942e6948cb0dda5867051eb2e5fb433b1a094385af6762e",
750
650
  "bytes": 283
751
651
  },
752
- {
753
- "path": "skills/short-drama-storyboard/assets/coverage-audition.example.jsonl",
754
- "sha256": "b4da96db0e2f6ef9d200dd7e3bfef73edee71d82a3258c670c2a86cc5469a08b",
755
- "bytes": 1985
756
- },
757
- {
758
- "path": "skills/short-drama-storyboard/assets/revision-lineage.fragment.json",
759
- "sha256": "375a15a2f52d4e280a84298ae44dd950d95880a611c4edf1f5df63f24f5aa6e2",
760
- "bytes": 277
761
- },
762
- {
763
- "path": "skills/short-drama-storyboard/assets/scene-visual-plan.example.jsonl",
764
- "sha256": "3eb20063ba0bd7ce3540e6d39b1b7aa324f7f7c1699e127c6f66b6ae78ef9d83",
765
- "bytes": 2837
766
- },
767
652
  {
768
653
  "path": "skills/short-drama-storyboard/references/blocking-playbooks.md",
769
- "sha256": "932aac82d8e537b6c42259071934db2d42d4e1f89baffca122ba7a1115649573",
770
- "bytes": 12273
654
+ "sha256": "bcc86f714b2e52ea7fc03e0283b1d43b28aceedeffe84f0eba2b39db519bd1a4",
655
+ "bytes": 15513
771
656
  },
772
657
  {
773
658
  "path": "skills/short-drama-storyboard/references/comic-keyframe-lexicon.md",
@@ -781,8 +666,8 @@
781
666
  },
782
667
  {
783
668
  "path": "skills/short-drama-storyboard/references/keyframe-craft.md",
784
- "sha256": "72c218a7a5374da85b22b7a69e9f949b1f5e12c1245440dbed229c91e614b27e",
785
- "bytes": 9779
669
+ "sha256": "226a190009f74b6be123723505193d1db1fb6ad06f43fadbf961be8ac2062a20",
670
+ "bytes": 9758
786
671
  },
787
672
  {
788
673
  "path": "skills/short-drama-storyboard/references/lighting-craft.md",
@@ -791,8 +676,8 @@
791
676
  },
792
677
  {
793
678
  "path": "skills/short-drama-storyboard/references/production-shot-grammar.md",
794
- "sha256": "401256a44246174b9a17c413e1b94f9ead974a7d2ecf658ea398b6f8e4ebf1e2",
795
- "bytes": 21704
679
+ "sha256": "cb41de6840f577e259ad6691f3f06814424b6bf69925c076468dd7156b7a8181",
680
+ "bytes": 21678
796
681
  },
797
682
  {
798
683
  "path": "skills/short-drama-storyboard/references/review-and-fixtures.md",
@@ -811,8 +696,8 @@
811
696
  },
812
697
  {
813
698
  "path": "skills/short-drama-storyboard/references/shot-craft.md",
814
- "sha256": "756336c997397c50308dc08d4947fe45268ffaf9705f3a1c1d6c823b4f32666e",
815
- "bytes": 22640
699
+ "sha256": "9b8b3f5d3f1ed306a4510a9964ee0f57e5341ce3a40f0509815368117e49a507",
700
+ "bytes": 25253
816
701
  },
817
702
  {
818
703
  "path": "skills/short-drama-storyboard/references/shot-revision-identity.md",
@@ -821,58 +706,28 @@
821
706
  },
822
707
  {
823
708
  "path": "skills/short-drama-storyboard/references/stage-contract.md",
824
- "sha256": "24025b389cc1c3bbad2c71198dd2aab569dd5674768301bcbb2276a21688710f",
825
- "bytes": 12575
826
- },
827
- {
828
- "path": "skills/short-drama-storyboard/scripts/selftest.py",
829
- "sha256": "b2ef8452a72f46200538afdfd55bd52e655b51a5cfddfaed548b264239067fb1",
830
- "bytes": 6933
831
- },
832
- {
833
- "path": "skills/short-drama-storyboard/scripts/storyboard_check.py",
834
- "sha256": "0f9956fd53782b6da43ab0d63bfda1f3b7be3ceb4a776d32f3272088f7be912d",
835
- "bytes": 31133
709
+ "sha256": "429585afce63c3edc1b073256ffa9915af4f489e8d53d59a8bb0f66aba1f5531",
710
+ "bytes": 13597
836
711
  },
837
712
  {
838
713
  "path": "skills/short-drama-video-prompts/SKILL.md",
839
- "sha256": "39a44ae23095035bc64bfbbde45c28988724e24106802c2af1ff5dd9ba0107a9",
840
- "bytes": 17269
714
+ "sha256": "647a5ee2965c50158a6e4f4176a84fec426c1420b5866cf7114a2676e6747865",
715
+ "bytes": 17566
841
716
  },
842
717
  {
843
718
  "path": "skills/short-drama-video-prompts/agents/openai.yaml",
844
719
  "sha256": "57de201034bf3adb3a9db079e7ce0119b0b86e8ba370e90f59fdb52ae83c08a9",
845
720
  "bytes": 298
846
721
  },
847
- {
848
- "path": "skills/short-drama-video-prompts/assets/coverage-scope.fragment.json",
849
- "sha256": "22345078b2a07acdd4188fc6d7674340296dccd96a793aa9cd1da228d205f4af",
850
- "bytes": 685
851
- },
852
- {
853
- "path": "skills/short-drama-video-prompts/assets/motion-terminal.example.jsonl",
854
- "sha256": "c0b15d8ca3393eda2ebcf3d0d7aa5d88e76ac45e99e66b63c08b453dbbe66c36",
855
- "bytes": 925
856
- },
857
- {
858
- "path": "skills/short-drama-video-prompts/assets/performance.fragment.json",
859
- "sha256": "0ba3edcfeefa304275c0d0a8d9f028f340353404952e8759592a3def509960d9",
860
- "bytes": 1236
861
- },
862
- {
863
- "path": "skills/short-drama-video-prompts/examples/minimal-music-specs.jsonl",
864
- "sha256": "add90d6b5994f6fdb092fa348c7a14e90b69600dd30c1a2834fb4a45b960256b",
865
- "bytes": 806
866
- },
867
722
  {
868
723
  "path": "skills/short-drama-video-prompts/references/camera-audio-continuity.md",
869
- "sha256": "eb0ad7f8c2bf598a489898694a19546031d3f1f72d4708f90dc04190910646fd",
870
- "bytes": 15699
724
+ "sha256": "586c0be817e2e72b56a926b437b5bacc25956606dd1cfa96bad9b02793daf464",
725
+ "bytes": 17052
871
726
  },
872
727
  {
873
728
  "path": "skills/short-drama-video-prompts/references/delivery-profile.md",
874
- "sha256": "be82d298e8dfd133df033ae2cff27f403ec8e46ed0f281f418dfdc250d5579bb",
875
- "bytes": 20296
729
+ "sha256": "31e12aa3612b930cf98a7cea681a6ddbd37882f94c8c32665d9b5d6ae51efeda",
730
+ "bytes": 21326
876
731
  },
877
732
  {
878
733
  "path": "skills/short-drama-video-prompts/references/generability.md",
@@ -886,8 +741,8 @@
886
741
  },
887
742
  {
888
743
  "path": "skills/short-drama-video-prompts/references/motion-recipe.md",
889
- "sha256": "7822a471b1b8aa98d206c4455b5d57f88dc2642f65a5fecf0e269b6df051e9c4",
890
- "bytes": 21276
744
+ "sha256": "c59f7ffbd9d9cb8142be94c70a8f472be3148fe060a7320ea42d69ca185639fc",
745
+ "bytes": 21270
891
746
  },
892
747
  {
893
748
  "path": "skills/short-drama-video-prompts/references/performance-action-timing.md",
@@ -896,8 +751,8 @@
896
751
  },
897
752
  {
898
753
  "path": "skills/short-drama-video-prompts/references/production-prompt-grammar.md",
899
- "sha256": "02e5962b6bc8ff48203a98c866c75b1342133e3db99b656e1cf0013693f30d00",
900
- "bytes": 21741
754
+ "sha256": "f46bef927fa5ef77a3f9f454ffd1d6a9b1522107533a8023140e15d4f25b03bb",
755
+ "bytes": 22549
901
756
  },
902
757
  {
903
758
  "path": "skills/short-drama-video-prompts/references/review-and-fixtures.md",
@@ -906,13 +761,13 @@
906
761
  },
907
762
  {
908
763
  "path": "skills/short-drama-video-prompts/references/seedance-2.0.md",
909
- "sha256": "7acefd1d1c71e56256b88670f2b008c1d8fd505767fe433e05b1dad3abe214c5",
910
- "bytes": 3442
764
+ "sha256": "4a36778e1c32d7b6290dafb9138941f3e3c9d75fea2d4407f083ae859feb9dc3",
765
+ "bytes": 6771
911
766
  },
912
767
  {
913
768
  "path": "skills/short-drama-video-prompts/references/seedance-2.5.md",
914
- "sha256": "3839bfc4b01e686531ea96e27ee4ad8131a5ef53d6530119e1a932f8900658a3",
915
- "bytes": 9886
769
+ "sha256": "f5e8a52c1c57f00a7af4a2d54bb241d531ca8b74084c0e2158c7cdc56b6caba3",
770
+ "bytes": 9889
916
771
  },
917
772
  {
918
773
  "path": "skills/short-drama-video-prompts/references/stage-contract.md",
@@ -921,38 +776,18 @@
921
776
  },
922
777
  {
923
778
  "path": "skills/short-drama-video-prompts/references/target-model-profile.md",
924
- "sha256": "61afad5172bdf58487d0c7a0b27e578f57fd89ca89f6d0e65197389e114330f5",
925
- "bytes": 10176
779
+ "sha256": "f2b57e017b201a52bb21c2171d313c5563e987dd8f6549d1d6d493246cf0d958",
780
+ "bytes": 10543
926
781
  },
927
782
  {
928
783
  "path": "skills/short-drama-video-prompts/references/wan-3.0.md",
929
784
  "sha256": "514395b47ff7dfd48f4d06a2a2a801dd6d7e32e85377ecfed36a1bd3f1a40fa2",
930
785
  "bytes": 7211
931
786
  },
932
- {
933
- "path": "skills/short-drama-video-prompts/scripts/container_check.py",
934
- "sha256": "74650a2e5c9fa982f82df17a4b5796f2f80280a1d4a6af69cf67fcafcb351837",
935
- "bytes": 12662
936
- },
937
- {
938
- "path": "skills/short-drama-video-prompts/scripts/motion_timing_check.py",
939
- "sha256": "5d6526fc0dbca62b48686caffc3ef5e3d595afc46a4abe21bb0562672c4b93a5",
940
- "bytes": 18240
941
- },
942
- {
943
- "path": "skills/short-drama-video-prompts/scripts/music_spec_check.py",
944
- "sha256": "abcbd5d3fc55b281b5b05989b81919a0a8477bb85d4c580d47cc7de22b95c493",
945
- "bytes": 12502
946
- },
947
- {
948
- "path": "skills/short-drama-video-prompts/scripts/selftest.py",
949
- "sha256": "8ba38a8a49c90e0e21b53515bdc34fc5b787a9931530d52c1fe97f8d6880a828",
950
- "bytes": 2862
951
- },
952
787
  {
953
788
  "path": "skills/short-drama-write/SKILL.md",
954
- "sha256": "9f966387375cd6e8a37b4332ab3126e31c09899b5eafaf535736dd32070a3311",
955
- "bytes": 10515
789
+ "sha256": "87085fd7791d3c53b20523139616e3f9032227385c30eb2aa48f367cb006e790",
790
+ "bytes": 11094
956
791
  },
957
792
  {
958
793
  "path": "skills/short-drama-write/agents/openai.yaml",
@@ -986,8 +821,8 @@
986
821
  },
987
822
  {
988
823
  "path": "skills/short-drama-write/references/screenplay-format.md",
989
- "sha256": "2fd8d1abfcc1ad880265181c3256ba9b5b893a3ac81d771379677a66baacbd90",
990
- "bytes": 10825
824
+ "sha256": "0c49c996116e6083e94ee1a3fdaf169e0dc2e8d2ad1a8181e482e0c4b6e81ed0",
825
+ "bytes": 10898
991
826
  },
992
827
  {
993
828
  "path": "skills/short-drama-write/references/script-craft.md",
@@ -1006,28 +841,23 @@
1006
841
  },
1007
842
  {
1008
843
  "path": "skills/short-drama-write/scripts/duration_estimate.py",
1009
- "sha256": "c648745b58c8a2c286e61e6cc1034376a522fc97114d434379b92d36c142e70e",
1010
- "bytes": 14249
844
+ "sha256": "87002aa2eeb00e80e87b1ae8f12e55b5053a4640087065752452df949ab4d4e0",
845
+ "bytes": 18389
1011
846
  },
1012
847
  {
1013
848
  "path": "skills/short-drama-write/scripts/screenplay_index.py",
1014
- "sha256": "11ce6307b615e91ea9ff277212875c3adf5aafb58289bed5ff54f0f2d877dec9",
1015
- "bytes": 43578
849
+ "sha256": "5d346f3e7097dec654b27c00d555d10f7f293ce6442db3ac456e811c8a72e4cb",
850
+ "bytes": 44166
1016
851
  },
1017
852
  {
1018
853
  "path": "skills/short-drama-write/scripts/selftest.py",
1019
- "sha256": "90a3a6cf475acf335e09dbc71a4aa3ac986257e1eb0c617b91c48fb4bc1f4660",
1020
- "bytes": 8928
1021
- },
1022
- {
1023
- "path": "skills/short-drama-write/scripts/voice_sheet_check.py",
1024
- "sha256": "c3862db34546c6bad280e44c5cb08d680c250b7f62c73cb8bfe33876a9494753",
1025
- "bytes": 15353
854
+ "sha256": "f7f461dc9d23d3ecee8080079f4c5b362136a3b4760aeb0e0ad1f7248877ecce",
855
+ "bytes": 6061
1026
856
  },
1027
857
  {
1028
858
  "path": "skills/short-drama/SKILL.md",
1029
- "sha256": "68dcb3b0fce210ff15acbeecd6e5e8958ebf4d7faf8570be5272656b00827673",
1030
- "bytes": 11510
859
+ "sha256": "4d98f20ec15e6e0c90f8456869d680b361ef904ca29eba7e6b996cf4a712c8e8",
860
+ "bytes": 12500
1031
861
  },
1032
862
  {
1033
863
  "path": "skills/short-drama/agents/openai.yaml",
@@ -1066,8 +896,8 @@
1066
896
  },
1067
897
  {
1068
898
  "path": "skills/short-drama/references/creator-documents.md",
1069
- "sha256": "28f63829e3f85a7ab877699df6cfbdc3c80384c873418903c7e8d1b0ee169053",
1070
- "bytes": 17036
899
+ "sha256": "331c2f34ceaffe0668413107134d0a407637d0eaf51d75034f95896467cdbccc",
900
+ "bytes": 18550
1071
901
  },
1072
902
  {
1073
903
  "path": "skills/short-drama/references/creator-workflow.md",
@@ -1126,7 +956,7 @@
1126
956
  },
1127
957
  {
1128
958
  "path": "skills/short-drama/references/reference-roles.md",
1129
- "sha256": "7765b21925f7acbca1e5e59f8fee13a5fc4ddf7a846cf56491c859cee177629d",
959
+ "sha256": "45e84608e7619eaf66cfe44d4ddbf7c9c1988d4a3303963b3690958ec3eb49d2",
1130
960
  "bytes": 4485
1131
961
  },
1132
962
  {
@@ -1136,13 +966,13 @@
1136
966
  },
1137
967
  {
1138
968
  "path": "skills/short-drama/scripts/creator_markdown_check.py",
1139
- "sha256": "c09f9f510f0c8f18be8cae1bd00efcb35cc132c6a04606b53d686fee7fa4c632",
1140
- "bytes": 76402
969
+ "sha256": "adba7a59375769d3e7f6c1d6c96ccfffb084f96051ef6c295abf8615582ffb64",
970
+ "bytes": 90994
1141
971
  },
1142
972
  {
1143
973
  "path": "skills/short-drama/scripts/project_tool.py",
1144
- "sha256": "aae381f2ddf80e5a53ce968d55307e71e7b3174ed802bcec7530b083d814dc9b",
1145
- "bytes": 101685
974
+ "sha256": "b0b6bc6be7cd9b862068445b8ed5a7562b1c571ae91ec8ea49a70b8ba7d0c0a4",
975
+ "bytes": 104396
1146
976
  },
1147
977
  {
1148
978
  "path": "skills/short-drama/scripts/selftest.py",