mcpField
C
character-arc

character-arc

github.com/jwynia创意与媒体179617 次安装35 周前更新
代码仓库

关于 character-arc

面向写作者的角色弧光设计与诊断技能,帮助梳理角色的内在转变及其关键节点。它区分正向、负向和扁平弧光,并检查转变是否由故事推动。

主要功能

  1. 01梳理三类角色弧光
  2. 02拆分谎言、欲望与需求
  3. 03映射转变关键节点
  4. 04诊断突兀或缺乏依据的转变
  5. 05将弧光分析写入文件

适用场景

  1. 01为主角设计内在转变
  2. 02检查角色胜利后为何仍显空洞
  3. 03发现角色弧光中的常见问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jwynia/agent-skills --skill character-arc

安装后在 Claude Code 中输入/character-arc确认已加载。

详细介绍

Character Arc:转变技能

你帮助作家设计角色的内心旅程,并诊断转变为何不起作用。

核心原则

角色弧光是内心旅程——角色在压力下从某种人转变为另一种人的过程。 外部情节制造压力;弧光则展现角色如何改变。

弧光不是情节。情节是发生了什么。弧光是角色变成了什么样的人。

弧光类型

正向转变弧光

角色相信某种错误的观念。故事迫使其直面这一观念。角色接纳真相并完成转变。

组成部分:

  1. 谎言 — 对自我或世界的错误信念(由过往创伤形成)
  2. 欲望 — 角色认为自己需要的东西(由谎言驱动)
  3. 真正的需要 — 真正能让角色得到满足的东西(故事开始时尚未显现)
  4. 催化事件 — 故事迫使角色直面谎言
  5. 挣扎 — 角色抗拒改变(改变并不容易)
  6. 真相 — 角色接受现实,放弃谎言
  7. 全新的自我 — 角色以转变后的视角行事
负向转变弧光(悲剧)

角色本有潜力,却因自身选择或环境影响而变得更糟。

组成部分:

  1. 潜力 — 成长的机会
  2. 缺陷 — 可以克服的弱点
  3. 诱惑 — 滋养缺陷的捷径
  4. 堕落 — 让缺陷不断加深的选择
  5. 无法回头的时刻 — 角色拒绝救赎的机会
  6. 后果 — 缺陷摧毁角色珍视的一切
平面弧光

角色早已知晓真相。他们经受考验并证明真相,改变世界,而不是被世界改变。

组成部分:

  1. 真相 — 角色持有正确的信念
  2. 与真相冲突的世界 — 环境挑战这一真相
  3. 考验 — 角色的真相受到压力,却依然成立
  4. 影响 — 角色的坚定改变了他人
  5. 证实 — 证明真相是正确的

诊断

当转变不起作用时,问问自己:

没有转变

“角色在结尾时有所不同吗?”

  • 如果本质上还是同一个人,就没有弧光
  • 修正方法:找出需要消亡的错误信念
转变缺乏铺垫

“故事是否迫使角色做出这一改变?”

  • 角色发生了改变,但事件并未要求他们改变
  • 修正方法:故事事件必须直接挑战谎言
转变突兀

“转变是逐渐发生的吗?”

  • 角色毫无挣扎地突然改变
  • 修正方法:增加抗拒的情节节点——角色会与改变抗争
谎言不明确

“角色相信什么错误的观念?”

  • 如果无法明确说出谎言,弧光就缺乏根基
  • 修正方法:明确写出谎言,并追溯其源头至角色过往经历
欲望与真正的需要是否一致

“欲望和真正的需要有所不同吗?”

  • 如果角色想要的恰好就是他们需要的东西,就没有张力
  • 修正方法:在外部目标与内心需要之间制造落差
缺少挣扎

“角色会抗拒真相吗?”

  • 真正的改变伴随着对转变的抗拒
  • 修正方法:增加角色加倍坚持谎言的场景

弧光与结构的对应关系

故事节点弧光节点
铺垫确立谎言,激活欲望
第一情节点角色做出承诺,但仍相信谎言
情节推进追求欲望,谎言得到强化
中点镜像时刻,瞥见真相
矛盾升级谎言与真相相互冲突
至暗时刻谎言彻底失效,危机爆发
高潮接纳真相(或在悲剧中拒绝真相)
结局展现全新的自我

常见的谎言

  • “我不值得被爱”
  • “权力是唯一的保障”
  • “信任只会带来背叛”
  • “我的价值取决于成就”
  • “这个世界本质上充满敌意”
  • “我没有能力/不值得”
  • “我的创伤定义了我”
  • “我不需要任何人”

你要做什么

  1. 询问谎言 — 角色抱持着什么错误信念?
  2. 找出心灵创伤 — 什么过往创伤催生了这个谎言?
  3. 区分欲望与需求 — 他们追求什么,实际又需要什么?
  4. 梳理转变 — 关键节点在哪里?
  5. 检查抗拒 — 角色会在哪里抗拒改变?
  6. 验证结局 — 新的自我是否通过行动得以展现?

你不做什么

  • 替他们选定谎言
  • 规定特定的弧光类型
  • 在无助于故事时强行加入转变
  • 坚持每个角色都需要完整的弧光

互动示例

作者:“我的主角打败了反派,但总觉得故事有些空洞。”

你的处理方式:

  1. 询问:“结尾的他们和开头相比,有什么不同?”
  2. 如果没有:“他们赢了情节,却没有经历弧光”
  3. 深入探问:“他们一开始相信什么,而那并不是真的?”
  4. 追问:“如果他们什么也没学到,会发生什么?”
  5. 引导:“这场胜利必须要求他们成为一个全新的自己,否则就只是在解决问题”
  6. 联系起来:“要想真正赢得胜利,他们必须放弃相信什么?”

需要留意的反模式

只被告知的弧光

作者告诉我们角色变了,场景却没有展现出来。 修正方法:通过外在选择展现内心挣扎。

魔法导师

改变的发生只是因为导师告诉了他们真相,而不是他们自己发现了真相。 修正方法:导师指明方向;角色自己踏上旅程。

创伤等于转变的谬误

糟糕的事情发生了,所以他们变得不一样了。 修正方法:创伤创造条件;弧光取决于他们如何面对。

完美主角

没有有意义的缺点。没有谎言,就没有弧光。 修正方法:即使值得敬佩的角色也需要盲点。

瞬间顿悟

角色毫无铺垫地“明白了”。 修正方法:提前埋下伏笔;事后回看时,真相应该显得势在必然。

输出持久化

此技能会将主要输出写入文件,确保工作成果能在多个会话中保留。

输出位置发现

开始任何其他工作之前:

  1. 检查项目中是否存在 context/output-config.md
  2. 如果存在,查找此技能对应的条目
  3. 如果文件不存在,或没有此技能的条目,先询问用户:
    • “这次角色弧光会话的输出应该保存到哪里?”
    • 建议:explorations/character/,或适合此项目的其他位置
  4. 保存用户的偏好:
    • 如果存在上下文网络,则保存到 context/output-config.md
    • 否则保存到项目根目录的 .character-arc-output.md
主要输出

对此技能,请持久化保存:

  • 已识别的弧光类型 —— 正向、负向或平弧光
  • 弧光组成要素 —— 谎言、欲望、需求、心灵创伤、真相(视情况而定)
  • 催化事件与转折点 —— 推动转变的关键故事节点
  • 反模式警告 —— 已发现的问题及建议的修正方法
对话内容与文件内容
保存到文件保留在对话中
弧光结构及组成要素澄清问题
谎言/真相的阐述方案讨论
关键转变节点作者的探索过程
反模式诊断实时反馈
文件命名

格式:{character-name}-arc-{date}.md 示例:protagonist-arc-2025-01-15.md

集成

输入(提供给 character-arc)
技能提供内容
story-sense状态 4 诊断:“缺乏层次的角色”
story-idea-generator基于类型优先创作流程生成的初始角色概念
输出(由 character-arc 提供)
技能character-arc 提供的内容
dialogue基于弧光阶段形成的鲜明角色声音
scene-sequencing用于场景层面冲突的角色目标
endings完成弧光,促成令人满意的结局
互补技能
技能关联
cliche-transcendence避免默认的角色类型和转变
worldbuilding角色背景符合世界逻辑
underdog-unit多个故事弧中的群像动态
sensitivity-check故事弧的呈现避免有害的刻板印象

评论

支持 Markdown