用途:automate-me 面向“automate me”“创建/更新/刷新我的 -mode 技能”“把我的偏好或工作风格变成技能”等诉求,产出一份按用户定制的 -mode 技能,让智能体按该用户的方式工作。它本身是编排者:调度一次内联的历史挖掘、../poteto-mode/playbooks/authoring-a-skill.md 中的写作指南,以及 unslop(文风纪律)技能,并按顺序串起它们,不替代这些技能。
流程:先递归检查是否已存在匹配用户 handle 的 .agents/skills/**/-mode/SKILL.md 与 ~/.agents/skills/-mode/SKILL.md(模式技能也可放在个人分类目录 .agents/skills/<handle>/ 下);若已存在,用 AskQuestion 确认是更新(重复运行的默认项)还是推倒重来。更新模式下,第 1 步只挖掘技能上次编辑之后的历史(git log -1 --format=%cI <path>),第 2 步问“有什么变化或缺失”,第 4 步原地编辑,保留用户未否定的章节,并替换 frontmatter 中的 disable-model-invocation 行。挖掘阶段先用 pstack-harness 技能定位当前工作区的会话记录,只用本工作区的存储,不读其他工作区会话;把历史切成多片并行分析,寻找响应偏好、委派习惯、验证姿态、代码与行文纪律、流程约定、元偏好等信号;在 2 片以上出现的模式才算高置信,孤例通常丢弃。随后用 AskQuestion 做结构化提问(每题 4–6 个选项,分类题允许多选),最后留一个自由提问补漏,避免一次抛 20 个问题。
聚类与撰写:把信号归入响应风格、自主性、先理解、子智能体、文风/代码纪律、评审与验证、流程、技能等章节,只保留适用的。撰写遵循 authoring-a-skill.md,路径优先沿用既有模式技能的分类;新技能默认放在 .agents/skills/<handle>-mode/SKILL.md 或用户偏好的 ~/.agents/skills/<handle>-mode/。frontmatter 的 description 应以用户名 + /<handle>-mode + “按其风格工作”为触发条件,而非“写代码”这类泛化关键词,且保持合法 YAML。默认加门控:在 SKILL.md 旁写 agents/openai.yaml,在 policy: 下设 allow_implicit_invocation: false;在 Claude Code 上可询问用户是否在 ~/.claude/settings.json 的 skillOverrides 加 "<handle>-mode": "name-only",仅经用户同意后写入并保留其他键;不要写 disable-model-invocation,否则别的技能点名该技能时会被 Skill 工具拒绝。除非用户明确要求每轮都套用其模式,否则不关闭门控。
限制与注意:不要过度拟合单次对话,同一偏好需多次出现才固化;保持可操作性,不要重述其他技能内容或写诗化文字;引用其他技能时用其裸名(如“Use the unslop skill.”),不要内联摘抄;章节尽量精简,没有非默认规则就不加章节;用“the user/the human”而非作者本人名字;不要强行凑对称章节。它属于主观产出,用基准测试循环评估无意义,应与用户做体感校对后交付;仅当触发准确率在实践中出问题时,才做 description 优化循环。不适用情形:用户想要任务型技能(只需 authoring-a-skill 指南,无需挖掘),或只想固化某个很窄的流程(如“我如何写提交信息”),那属于普通技能而非模式技能。