build-cs-skill
CodeStable skill authoring and evolution protocol. Use when creating, refactoring,…
实现新功能或功能改造。不用于纯 bug 修复(cs-issue)、行为等价重构(cs-refactor)、大需求拆解(cs-epic)。
$ npx -y skills add codestable/codestable --skill cs-feat --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/cs-featContext preview
The summary Claude sees to decide when to auto-load this skill.
实现新功能或功能改造。不用于纯 bug 修复(cs-issue)、行为等价重构(cs-refactor)、大需求拆解(cs-epic)。
name: cs-feat description: 实现新功能或功能改造。不用于纯 bug 修复(cs-issue)、行为等价重构(cs-refactor)、大需求拆解(cs-epic)。 argument-hint: "[功能描述]"
把一个功能做出来,流程强度与风险相称:普通改动直接做,高风险改动先对齐设计。
`references/shared-language.md`;普通改动沿用已有单义词汇时跳过,不增加 glossary、提问或产物。
检索到 lesson 后先做 read-repair。只做一次有界、最低成本的定向核实,优先读取已有代码、测试或 canonical 文档;不得仅为核实 lesson 运行大范围测试或反复复现。仍不足时跳过该 lesson,不阻塞正常任务。 只有 scope 符合、未退役、当前事实成立,并真实改变计划或验证,或明确排除一个具体且合理的错误路径 的条目才算有效命中;按 `经验命中:{path}({status});核验:{fact};影响:{plan_or_check}` 报告。`retired` 不应用; `observed` / `validated` 先核实再用;旧 lesson 缺 `status` 按 `observed` 读取,不批量迁移。只是相关 但没有改变行为时不制造复用证据;当前事实明确反证时立即停止应用,证据不足时不猜。
任务内只在内存保留最多 3 条候选,按新证据替换低价值项,不暂停或询问。强信号只包括:owner 纠正实际改变方案/代码/术语/验证;可复现证据推翻根因;同一路径失败两次后更换假设; blocking/important finding 暴露未编码不变量;新 red -> green 捕获可复发失败;lesson 真实改变本次行为 或被反证;重复 workaround;方法显著降低重试、成本或风险。
候选还必须同时有可追溯证据、能写成未来动作、适用于本次精确 diff 之外、且没有现成 canonical owner。网络波动、拼写、泛化口号、活动记录,以及已被机械 owner 完整覆盖的事实直接丢弃。
创建、改写规则/scope、晋升、删除与跨项目反馈仍须用户显式授权。为不中断 read-repair,仅对已有且 有效命中的 lesson 开放两种窄维护:`observed -> validated` 仅在独立后续任务确实采用并验证成功时 发生,只补一次代表性证据;必须记录 lesson 实际改变的计划或验证,或明确排除的具体且合理错误路径, 以及本次通过的验收证据。`observed|validated -> retired` 仅在当前仓库事实直接反证或发现已有 canonical owner 时发生,只写原因与替代/反证指针。窄维护不新建事实、不改规则、不扩 scope、不新增 gate,随当次代码、证据和 游标进入同一语义原子 milestone;稳定 validated 命中不写文件。需要改写结论或证据不足时只给 候选,新结论不得通过复活 retired 条目获得 validated 身份;窄维护必须在最终报告列出文件变化。
当前任务范围内能直接落成 red -> green 测试/checker 的约束优先机械化,不另写重复 lesson;会扩大 范围时只给候选。用户已明确说“记住 / 更新 / 退役”时,同轮按 `cs-keep` 处理,不重复确认。普通任务 只在强信号成立时展示最高价值一条,首行固定 `晶化候选:{rule}`,并给出证据、范围和建议归宿;无 强信号完全不显示模板,没有记忆写入授权时不落盘。
理解相关事实 → 实现 → 运行相称的验证 → 交付结果。普通任务不生成 CodeStable 产物,git diff、测试输出和交付说明就是证据。
`执行流程 = 最小闭环 + 每个未排除风险所要求的最少保障`。最小闭环是理解事实 → 最小完整改动 → 最窄权威验证 → 交付。选择它之前,基于目标及预计/实际触及的路径、符号、信任边界和代码外副作用, 对风险做一次静默、有界核对;不生成产物或逐项报告。一次最低成本定向核实后仍不能排除时先按风险 存在处理,或继续定向诊断到能够判定。不得以“没有注意到风险”作为降级依据。
每个新增门槛都要说明“风险事实 → 增加的保障”。一个风险只增加与它直接对应的保障,不自动启用 整套 design、全量回归、独立 review、work 文档或 Epic final acceptance 路径。行数、文件数、 文案/代码类型和 task kind 都不是风险的替代指标。用户指出“流程太重 / 只是小改动 / 文档比代码多” 时,这是重新核对风险和保障的触发信号,不是无条件跳过安全门槛。停止继续增加产物并重算;仍需 保留门槛时只说明阻止降级的具体风险。
独立 change review 不再默认发生。改变权限、安全、隐私或其他信任边界,持久化数据、schema 或迁移路径,并发、顺序或一致性语义,以及不可恢复的代码外副作用时触发;破坏兼容性、多消费者 契约、性能敏感路径或广传播面只在影响/正确性仍不确定或失败代价重大时触发;用户明确要求时也触发。 review 实际触发后才应用 `审查协议` 中的 reviewer 创建、目标冻结、lineage、findings 与轮次条款。
按风险事实最小增加保障:
owner 选择时确认。
或消费者影响仍不确定时独立 review,不把所有公开 interface 改动自动视为高风险。
破坏性或不可逆时确认。
再增加独立 review。
等独立风险存在时才做全量验证或独立 review。
design 被触发时,最低内容写清改什么、契约变化或不变、真实取舍,并把影响面分为必须修改 / 需要验证 / 仍待调查;没有的条目明确写无。task packet 形式也必须包含这些内容。共享语言分支与完整 design 独立 触发:触发时把 canonical 术语、定义、排除含义与边界场景写入已有 design 或 task packet,或链接项目 已有的 canonical 定义;当前会话内完成且两者都不存在时写入现有交付摘要,不为术语另建 artifact。 跨会话且前述载体不存在时写入既有 work 游标的 `边界` 节,不为术语新建 work。未触发时不增加章节、 问题或产物。
连续性需要不是风险门槛:跨会话、多人交接或用户要求留痕只增加单一临时 work 游标。普通改动选择 成本最低且足够权威的验证;已有定向测试足够时不叠加全量套件、浏览器 smoke 与独立 review。存在会 卡死方案的技术风险时,按 `references/code-design.md` 的穿刺协议先打通风险主路径。
以下 reviewer 创建、目标冻结、lineage、findings 与轮次条款仅在 review 被触发后生效;commit / 里程碑 授权门槛始终生效。
让 AI 编码在长期项目中保持边界、证据和记忆。 CodeStable 是一组面向严肃软件开发的轻量 skill 契约:不编排 Agent 团队,也不为项目建立第二套文档系统。模型在明确边界内行动,用证据证明结果,并把知识放回项目已有归宿。
CodeStable skill authoring and evolution protocol. Use when creating, refactoring,…
CodeStable skill 工程化闭环入口。触发:写/改一个 cs skill、评测 skill 效果、跨 model/agent 量化、优化 skill 提示词、把收敛结论固化回…
cs-review 的兼容别名(v1 沿用名)。触发后在当前 agent 中转到 cs-review,不维护独立规则或创建子 agent。
管理有证据的项目事实、lesson 生命周期与 canonical 归宿。触发:记录踩坑、教训、调研结论、纠偏,或用户说"记住这个"。