Adaptation Synthesis(改编合成)是一个面向创作者的技能,用于从已提取的功能 DNA 文档合成新作品。它的核心任务是:把源作品中被抽象出来的功能,映射到新语境下能够服务这些功能的新形式,同时避免落入表层翻译的陷阱。
用途
该技能适用于以下场景:将源作品改编到新语境;合并多个源作品的提取结果;在保留原作功能与情感体验的前提下进行创造性转化。它不直接负责从源作品提取 DNA,而是建立在已有提取文档的基础上。
核心原则
成功的改编通过新形式服务原有功能;失败的改编复制表面元素,却丢失了让原作奏效的东西。技能引用 cliche-transcendence 中的正交性原则:新形式不应是 1:1 的翻译。例如,科幻版《哈姆雷特》不应出现“太空哈姆雷特王子”,而应有一个在结构位置上通过自身内在逻辑服务相同功能的主角。
状态诊断
技能定义了多个状态,用于判断当前所处阶段并给出干预:
- SYN0:没有 DNA 文档。写作者想改编但尚未提取。干预是转交 dna-extraction 技能,没有提取就无法合成。
- SYN1:DNA 就绪。已有提取文档,准备开始合成。干预是开始语境映射,识别新设定中自然产生所需压力的元素。
- SYN2:表层翻译模式。出现直接 1:1 映射,如“国王变成太空皇帝”。干预是正交性检查与功能优先的形式选择。
- SYN3:语境不匹配。功能已映射,但新设定无法连贯支撑。干预是语境功能映射与世界构建整合检查,可能需要更换目标语境或调整功能。
- SYN4:功能缺口。新形式已选,但实际未服务功能,关键功能缺失。干预是功能验证清单与缺口分析。
- SYN5:类型漂移。改编丢失原作的情感承诺,如悲剧变成冒险。干预是类型对齐检查与情感节拍比较。
- SYN6:源冲突。合并多个源时功能相互冲突。干预是建立源层级、解决冲突,可能需要舍弃或修改部分功能。
- SYN7:合成就绪。所有功能已映射到新形式,语境支撑功能,情感体验对齐,冲突已解决。干预是验证清单,并转交 outline-collaborator 或起草技能。
合成流程
- 加载 DNA 文档;2. 确定目标语境;3. 映射语境功能;4. 为每个主要功能生成多个形式选项;5. 应用正交性检查;6. 验证情感体验;7. 解决多源冲突;8. 生成合成文档;9. 验证完整性。
正交性原则
表层翻译创造的元素明显是改编,观众立刻看出“这是太空版哈姆雷特”,元素因源作品而存在。好的合成创造的元素拥有自身内在逻辑,只是恰好服务功能。正交性测试对每个改编元素提问:它是否因自身原因而存在;不了解源作品的人是否觉得它自然;它是否有自己的目标、逻辑与历史;能否在不提及源作品的情况下讲述这个故事。
语气与声音合成
当提取包含语气/声音分析时,合成需处理语气如何转化:判断语气是本质的还是特征性的;新语境中什么创造该语气;哪些语气元素可转移、哪些需替换。角色声音应被合成而非复制:相同功能(如“用幽默转移注意力的角色”),不同形式(具体的笑话与指涉)。
合并多个源
步骤包括:确定主源;映射功能兼容性;解决冲突(主源优先、融合、交替、转化);合成集群模式。冲突解决选项有:主源胜出、融合、交替、把冲突转化为特征。
合成文档 Schema
输出为结构化文档,包含 _meta、context_mapping、function_to_form_mapping、tone_synthesis、character_synthesis、validation、ready_for 等字段。示例中展示了“Corporate Hamlet”的合成计划,包括语境映射、功能到形式的映射、语气合成、角色合成与验证结果。
关键问题
语境映射:该设定中什么创造权力结构、不可逃避的义务、信息流控制、阻止角色离开的因素。形式选择:该语境中自然存在哪些形式、哪些可服务该功能、该形式是否“知道自己在什么故事里”、不熟悉源作品的人是否觉得可信。验证:是否交付相同情感体验、所有主要功能是否被服务、元素是否连贯、是明显改编还是独立成立。
反模式
- 表层替换:用“等价”形式替换,如国王→CEO、城堡→总部。修复是功能优先选择。
- 大杂烩组合:把所有源的一切都塞进去。修复是确立主源,只纳入互补的次要元素。
- 语气错配:功能正确但语气丢失。修复是显式语气合成。
- 强行套用:把原元素硬塞进不属于它的语境。修复是寻找语境原生的形式。
可用工具
synthesize.ts:从 DNA 文档进行交互式合成。
Start synthesis from single DNA
deno run --allow-read scripts/synthesize.ts hamlet.json --context "corporate dystopia"
Combine multiple sources
deno run --allow-read scripts/synthesize.ts hamlet.json killjoys.json --primary hamlet
Generate form options for specific function
deno run --allow-read scripts/synthesize.ts --function "proximity to power" --context scifi --count 5
form-options.ts:为抽象功能生成设定适配的形式。
Get form options
deno run --allow-read scripts/form-options.ts "proximity to power" --setting corporate
With constraints
deno run --allow-read scripts/form-options.ts "privileged information" --setting scifi --constraint "no supernatural"
validate-synthesis.ts:检查合成文档的完整性与功能覆盖。
Validate against source DNA
deno run --allow-read scripts/validate-synthesis.ts synthesis.json --against hamlet.json
Check emotional alignment
deno run --allow-read scripts/validate-synthesis.ts synthesis.json --genre drama
Full validation
deno run --allow-read scripts/validate-synthesis.ts synthesis.json --full
适用场景与限制
该技能适用于有明确源作品提取文档、需要跨语境改编或合并多源的创作任务。它依赖已有的 DNA 提取,不能替代提取步骤;其工具以 Deno 运行,需要相应环境。资料未提供收费、价格、平台支持范围等具体信息。