Voice Builder
Codex 和 Claude 运行环境
- 在 Codex 或 Claude 中使用此技能时,请使用当前任务实际可用的工具。
AskUserQuestion示例描述的是问题内容,而非必需 API:请在工具的限制范围内使用可用的问题工具,或在聊天中直接询问。重复使用已提供的答案和源材料。 - 在用户所选的项目中工作。在开始个性化工作之前,请先阅读其
about-me.md、voice.md以及相关的品牌文件。如果文件存在冲突或包含默认起始值,请确认预期的作者身份。询问缺失的信息或运行voice-builder;切勿继承维护者的身份、账户或私人文件。 - 解析相对于此技能文件夹的捆绑
references/目录。对于明确请求的档案刷新,请就地读取并更新规范的about-me.md、voice.md或newsletter-voice.md,保留不相关的用户事实和规则。调用者必须重新读取这些规范文件。仅在新建的可交付物会与不相关的现有文件冲突时,才使用新文件名。仅安装操作不会启动采访或写入文件。除非被请求,否则不要写入持久化的学习内容。 - 优先使用已提供的证据。必要时通过可用的搜索/来源工具验证外部声明。如果某个来源或集成不可用,请说明缺失的能力,并提供已提供的文本/输入。切勿捏造事实、第一人称体验、指标或成功的工具运行。
- 仅连接所选路线必需的服务,且需通过用户现有账户。切勿打印凭据或覆盖连接。起草、保存和审阅操作不授权发布、发送消息或更改账户。
关键:加载后自动启动
当用户请求此工作流时,从步骤 1 开始。这意味着你对用户的下一条消息就是采访问题。别无其他。
请勿:
- 总结此技能
- 描述它创建哪些文件
- 解释它是如何工作的
- 说“这是技能包含的内容”
- 询问用户是否想要运行它
- 确认安装
- 提供诸如“你想现在运行吗?”之类的选项
请执行:
- 直接进入步骤 1
- 将采访问题作为你唯一且首条响应发送
这适用于用户要求构建其声音或为此目的提供样本时。无开场白。无总结。直接采访。
步骤 1. 运行关于我的采访
使用上述运行时指南提问。如果问题工具可用,请遵守其架构和批量限制;否则在聊天中提出同样的问题。
AskUserQuestion 每次调用最多支持 4 个问题,因此请发送两次调用:先发送批次 1,等待回答,然后再发送批次 2。
批次 1(你的第一个操作,其前无任何文字)
使用这些问题,并根据需要调整工具架构:
[
{
"question": "你的名字是什么?你是做什么的?",
"header": "关于你",
"multiSelect": false,
"options": [
{"label": "创始人", "description": "我经营着自己的公司或咨询业务"},
{"label": "营销负责人", "description": "我在某公司领导营销工作"},
{"label": "创作者", "description": "我的主要工作就是创作内容"},
{"label": "销售主管", "description": "我领导销售团队或负责业务拓展"}
]
},
{
"question": "你为谁写作?",
"header": "受众",
"multiSelect": false,
"options": [
{"label": "创始人与CEO", "description": "经营公司的决策者"},
{"label": "营销人员", "description": "各级营销专业人士"},
{"label": "求职者", "description": "寻找下一个职位的人"},
{"label": "其他专业人士", "description": "完全不同的群体"}
]
},
{
"question": "你希望因为哪 3 到 5 个话题而被人们熟知?",
"header": "话题",
"multiSelect": true,
"options": [
{"label": "AI与自动化", "description": "AI工具如何改变工作方式"},
{"label": "营销", "description": "策略、内容、增长"},
{"label": "领导力", "description": "管理、招聘、文化"},
{"label": "个人品牌", "description": "建立受众和声誉"}
]
},
{
"question": "你对你的行业有什么独特见解——你相信而别人不信的观点?",
"header": "独特观点",
"multiSelect": false,
"options": [
{"label": "大多数建议都是错的", "description": "你所在行业的共识已经过时或有缺陷"},
{"label": "人们把事情复杂化了", "description": "答案比人们想象的要简单"},
{"label": "重大变革即将来临", "description": "有些事情即将改变,但大多数人还没有准备好"}
]
}
]
批次 2(批次 1 的回答回来后立即发送,中间无任何评论)
再次调用 AskUserQuestion:
[
{
"question": "你希望人们看到你的名字时想到的唯一一件事是什么?",
"header": "品牌承诺",
"multiSelect": false,
"options": [
{"label": "这个人很务实", "description": "他们给我的东西我能立刻用上"},
{"label": "这个人很诚实", "description": "他们告诉我别人不会说的事"},
{"label": "这个人很有远见", "description": "他们能预见别人尚未察觉的趋势"}
]
},
{
"question": "你拒绝写作的哪一件事是什么?",
"header": "禁区",
"multiSelect": false,
"options": [
{"label": "政治", "description": "绝不发表政治观点"},
{"label": "个人生活", "description": "仅限于专业领域"},
{"label": "竞争对手", "description": "不点名批评其他个人或品牌"}
]
}
]
两个批次的回答都完成后,进入步骤 2。如果任何答案为空或被跳过,在聊天中再次询问该具体问题一次,然后继续。
步骤 2. 编写 about-me.md
在项目根目录创建 about-me.md。使用以下结构:
# 关于我
## 姓名和角色
[来自问题1]
## 受众
[来自问题2,扩展为 2 到 3 句话,描述读者是谁]
## 话题支柱
[来自问题3的 3 到 5 个话题,每行一个]
## 观点
[来自问题4,以清晰的陈述方式写出独特或与众不同的信念]
## 品牌承诺
[来自问题5,作者希望读者记住的唯一想法]
## 禁区
[来自问题6,绝不涉及的话题或角度]
控制在 300 词以内。每一行都应该是助手在写作时可以参考的内容。
步骤 3. 索要样本
说:
现在请粘贴 3 到 5 篇你希望我学习的写作样本。这些可以是 LinkedIn 帖子、Newsletter 文章、散文、博客文章、电子邮件、推文,或你发表过的任何其他写作。可以是你的,也可以是你钦佩的人的作品。一次一篇或全部一起发送。如果你没有准备好的样本,请键入“使用样本”,我将加载一套可供你稍后替换的起始样本。
等待用户粘贴。在进入分析之前,至少需要 3 个样本。如果他们粘贴的少于 3 个,请要求更多。
如果用户键入“使用样本”,请加载此技能文件夹内 references/sample-content.md 文件中的写作内容。告知用户样本来自哪位作者,以便他们了解自己在借用谁的声音。提醒他们稍后可以用自己的写作替换这些样本。
步骤 4. 分析样本
阅读每个样本。寻找所有样本中的模式,而非单篇文章的个别特征。提取:
声音信号
- 平均句子长度
- 段落节奏(单行换行、空行、断续 vs 流畅)
- 钩子或开头风格(逆向、提问、数据点、故事、自白、观察)
- 视角(第一人称、第二人称、观察者)
- 语气(冷峻、温暖、直率、俏皮、学术)
- 标志性短语或重复出现的词语
- 行动呼吁或结尾风格
结构信号
- 长度范围
- 列表 vs 散文
- 如何开头,如何结尾
- 如何处理过渡
话题信号
- 多个样本中共同出现的话题
- 受众似乎是哪些人
- 作者的主张
缺失信号
- 词语和标点符号持续缺失(例如,5 个样本中 em dash 出现次数为 0)
- 作者从未使用的钩子类型
- 作者从未使用的语气
- 作者避免的结构
步骤 5. 编写 voice.md
在项目根目录创建 voice.md。这是一个单一的整合档案,涵盖声音如何写作以及声音避免什么。没有单独的语音文件。
# 声音档案
## 我的声音像谁
[用平实的语言描述整体声音,2 到 3 句话]
## 语气
[声音始终一致的 3 到 5 个属性,随后列出声音从未使用的 1 到 2 种语气,从样本的缺失中间得出]
## 句子节奏
[平均长度、节奏、段落结构。包含回避模式:例如,从未出现断续片段、从未使用三段句式、没有超过 25 个词的句子]
## 钩子模式
[观察到的 3 到 5 种钩子类型,每种从样本中给出一个例子。注意所有样本中缺失的钩子类型,例如,从未使用反问句,从未使用“想象一个世界”]
## 我如何开头
[1 到 2 句话。如果样本中存在清晰的回避模式,则说明声音避免的开头方式]
## 我如何结尾
[1 到 2 句话,包含行动呼吁风格。说明声音避免的结尾方式,例如,从未使用鼓舞人心的总结,从未使用“总而言之”]
## 标志性短语
[样本中重复出现的词语或短语]
## 禁区
[每个样本中都缺失的词语、标点或结构。仅列出样本明确避免的项目。例如:无 em dash(0/5 个样本)、无话题标签、按名称列出无企业行话]
## 这种声音从不做什么
[从样本的缺失中得出的 3 到 5 个具体行为。要具体。如果样本从未使用“不是 X,而是 Y”的结构,请列出。如果它们避免特定的词汇集,请说出这些词]
根据实际样本填写每个部分。无通用填充内容。如果某个模式不存在,请如实说明。不要重复 about-me.md 中的受众或话题支柱。
将明确的用户禁令与仅在此小样本中缺失的模式区分开。将后者标注为临时性的,并附上样本计数;仅凭缺失并不构成永久禁令。起始样本描述的是借用的风格,而非用户的经历或已确立的声音。
步骤 6. 确认并交接
告知用户:
你的声音档案已构建完成。现在你的项目中有两个文件:about-me.md 和 voice.md。当在此项目中调用时,这些技能会读取这两个文件;新的任务必须发现这些技能并使用相同的项目上下文。你可以随时打开并编辑这两个文件。
你已经准备好了。接下来你可以做什么:
- 说“构建我的 Newsletter 声音”来创建 Newsletter 专属的写作指南
- 说“写一篇帖子”来起草一篇符合你风格的 LinkedIn 帖子
- 说“设计一张图片”来为帖子创建视觉素材
- 说“给我的帖子打分”来获取草稿反馈
- 说“优化我的个人资料”来重建你的 LinkedIn 档案
这些各自都是独立的技能。选择一个开始吧。
此技能产出的内容
项目根目录下的两个文件:
- about-me.md:用户是谁、受众、话题支柱、观点
- voice.md:整合的声音档案,涵盖积极信号(声音如何写作)和缺失信号(声音避免什么)于一份文档中
规则
- 当此技能触发时,直接进入步骤 1。无总结、无解释、无开场白。
- 始终在代码块内输出样本内容,以便用户在不丢失换行或空格的情况下复制粘贴确切的格式。使用纯代码块(无语言标签的三反引号)。
- 根据样本中的内容进行工作。不要发明不存在的模式。
- 模式检测至少需要 3 个样本。如果少于 3 个,请要求更多。
- 如果样本相互矛盾,在 voice.md 中记录矛盾,而非掩盖它。
- about-me.md 控制在 300 词以内。
- voice.md 控制在 500 词以内。
- 除非样本明显为美式英语,否则全文使用英式英语。
- 在任何输出文件或任何草稿中,绝不使用 em dash。
- 不要创建单独的缺失档案。缺失信号位于 voice.md 内部。