PluginBench
Skill
Pass
Audit score 90

cs-arch

liuzhengdongfortest/codestable

How to install cs-arch

npx skills add https://github.com/liuzhengdongfortest/codestable --skill cs-arch
Claude Code
Cursor
Windsurf
Cline
Full instructions (SKILL.md)

Source of truth, from liuzhengdongfortest/codestable.


name: cs-arch description: 维护 .codestable/architecture/ 这份只记现状的系统地图,三种模式 update / check / backfill。触发:用户说"刷新 architecture"、"做架构检查"、"补这个模块的架构文档"、"方案和代码对得上吗",或 feature 阶段需要先做架构动作。不写未来规划(走 cs-roadmap)。

cs-arch

启动必读

开始任何判断或动作前,先读取 .codestable/attention.md;缺失则视为骨架不完整,提示先补齐或运行 cs-onboard,不要回退到外部 AI 入口文件。

.codestable/architecture/ 是项目"地图"——design 写方案前读它定位、issue-analyze 做根因时读它理解模块边界、新人读它知道系统大致长什么样。本技能是"起草 / 刷新 / 体检"三件事的统一入口。

architecture 是累积的、自给自足的系统地图,不是某次 feature 的详细方案,而是所有已落地 feature 沉淀下来的"系统现在长什么样"总图。读者打开应能看懂整体结构而不需要跳回历史 design。design 是临时增量稿,acceptance 把稳定下来的名词 / 编排 / 约束提炼回这里;design 文件归档,只在追究具体决策细节时翻。

只记现状不记计划——默认在 acceptance 跟着代码同步,必要时本技能主动 backfill / update。不写"未来会加什么层"、"下一步打算拆出 X 模块"——那些归 cs-roadmap。用户说"我想重构成 X 架构"先走 roadmap 拆 feature,每次 acceptance 把实际达到的结构提炼回 architecture。

详略判据:够不够让读者不跳转就读懂系统——稳定、跨 feature 可见的那一层写全;模块内部循环、辅助函数、一次性实现决定不进来。

架构文档价值在准、稳、可查。AI 容易破坏这三点的几种问题:

  • 凭空造系统——文档说 AuthManager 协调 TokenService,代码里根本没 AuthManager
  • 替用户拍板——悄悄选某种分层方式,读者以为是既定事实
  • 代码复述——每节都说"这里有什么",不说"为什么这么分",信息量等于 ls -R
  • 检查时看一眼感觉没问题——没给具体位置证据

共享路径与命名约定看 .codestable/reference/shared-conventions.md。文档结构模板、check 覆盖项、报告格式看同目录 reference.md


模式分流

启动先判断模式三选一(不让用户选菜单):

用户说什么模式
"刷新 {某文档}"、"代码变了把架构 doc 同步"、"更新到最新"update
"检查 design 自洽"、"方案和代码对得上吗"、"几份文档有没有打架"、"做架构体检"check
"补一份架构 doc"、"这块模块一直没写档"、"把已经在跑的子系统结构写下来"backfill

判断不出问用户。用户说"我想重构成 X / 打算新做 Y 模块"——不是本技能的事,转 cs-roadmap


单目标规则

每次只跑一个模式,且只锁定一个目标:

  • backfill:给已存在但从没写过档的模块补一份(architecture/{type}-{slug}.md 或更新 ARCHITECTURE.md
  • update:按代码最新状态 + 用户素材刷新一份已有 doc
  • check:三个子目标之一
    • design-internal — 一份 design 内部一致性
    • design-vs-code — design 与代码一致性
    • architecture-folder-internalarchitecture/ 多份文档间一致性

为什么不一次做多件?起草时一次吐多份用户 review 不过来;检查时三个子目标视角和材料完全不同,同时做每边都不深。用户提多个目标让 TA 选一个。


工作流骨架(三模式共用 6 阶段)

Phase 1:锁定目标
Phase 2:读取材料
Phase 3:执行(backfill/update = 起草;check = 检查)
Phase 4:自查(backfill/update)或 输出报告(check)
Phase 5:用户 review
Phase 6:落盘(backfill/update)或 等用户拍板(check)

Phase 1:锁定目标

确认:模式 + 目标对象 + 范围。

  • backfill:新 slug + 受众 + 范围(+ 确认模块在代码里已存在)
  • update:已有文档路径
  • check:子目标 + 检查对象(feature 名 / architecture 子范围)

范围不收敛就问用户收敛——一份 doc"全模块重写"往往意味着底下其实有多个独立子系统应该拆;一次检查覆盖整个 architecture/ 报告读起来抓不到重点。

Phase 2:读取材料

共同必读shared-conventions.md + ARCHITECTURE.md + architecture/ 下其他文档。

backfill / update 额外(详见 reference.md "读取清单"):目标模块代码入口和核心文件 + 用户素材 + 相关 compound 沉淀(decision / explore / learning)+ 相关已有 feature 方案。update 专项:当前 doc 全文 + last_reviewed 之后的代码变更(git log 粗扫)。

check 额外(按子目标):

  • design-internal / design-vs-code:方案 doc 全文 + 架构相关 doc
  • design-vs-code 再额外:与 design 第 2/3 节直接对应的代码
  • architecture-folder-internal:用户圈定的几份 doc + 索引 + 顺藤摸到的被引用文档(不扩展到代码)

Phase 3:执行

backfill / update:按 reference.md "文档结构"写完整初稿不分批吐半成品——分批 review 用户看不到全局一致性,第 2 节描述的结构和第 4 节决策经常有跨节矛盾。

check:按 reference.md "检查覆盖项"(三个子目标各 6 类)逐条执行。每条不一致都要记可定位位置file:linedesign 第X节)+ 现象 + 影响 + 修复建议。

Phase 4:自查 / 输出报告

backfill / update:按 reference.md "自查清单"(7 条)就地跑一遍,发现问题在 review 前处理掉(删 / 标 TODO / 改写)。自查结果简短汇报——发现了就说,不要走过场。

check:按 reference.md "报告模板"输出完整报告(检查摘要 / 不一致清单带严重级别 / 观察项 / 一致性良好项 / 建议下一步)。

Phase 5:用户 review

backfill / update:完整初稿贴给用户 review。 check:报告给用户,等确认结论。本技能不替用户拍板。

Phase 6:落盘 / 结束

backfill

  • 写入 architecture/{type}-{slug}.md(命名规则见 shared-conventions.md 第 0 节),frontmatter status: currentlast_reviewed 填当天
  • 同类聚合检查(落盘前必跑):按"架构 doc 分组规则"判断本次落盘后某 type 在根目录 ≥6 份——命中就把这类全搬进 architecture/{type}/、去掉文件名前缀、同步改 ARCHITECTURE.md 链接;搬迁清单在 Phase 5 一并 review
  • 索引更新ARCHITECTURE.md 加新文档引用——backfill 必定要加,否则写了没人会读;改动同样 review,不偷偷改

update:覆盖已有文件,last_reviewed 更新当天;结构性改动大时文末 变更日志 节加一条;ARCHITECTURE.md 只在 scope/summary 影响索引描述时更新。

check:不落盘结束。用户可能基于报告决定触发 backfill/update——那是下一轮的事。


硬性边界

  1. 只锚代码不造系统(backfill/update)——每条结构化断言必须能锚到 file:line;锚不到标 TODO: 待确认。模块在代码里还没写就不该走 backfill —— 那是规划转 cs-roadmap
  2. 不替用户拍板决策(backfill/update)——关键决策节实质内容必须来自用户或可追溯的 decision,AI 只起草结构和串联语言
  3. 只检查不修复(check)——禁止改 design / 代码 / 配置。check 和修复分开做,用户才能看到完整不一致清单后整体决定优先级
  4. 证据化(check)——每条不一致有可定位位置
  5. 可执行建议(check)——具体到"改哪里、怎么改",但不落盘
  6. 单目标(所有模式)
  7. 不改代码、不动 spec(所有模式)——只写架构 doc 或出报告。发现代码 / 方案 / decision 有问题记成"观察项"
  8. 不发散——范围外问题不扩展,记观察项

退出条件

共通

  • 已锁定单一模式和单一目标
  • 用户明确 review 通过(backfill/update)或确认结论(check)
  • 没有顺手修改代码 / 方案 doc / decision
  • 没有范围外文档改动

backfill / update 额外

  • 自查清单逐条跑过并汇报处理
  • frontmatter 完整(doc_type: architecture / status / last_reviewed
  • 每个结构化断言有 file:line 锚点或标 TODO: 待确认
  • 落盘前已按"分组规则"判断同类 ≥6 份,命中则搬迁清单已 review
  • backfillARCHITECTURE.md 已加链接(或用户明确决定暂不加)
  • update:结构性改动有 变更日志 条目

check 额外

  • 已覆盖对应子目标的检查项
  • 报告含不一致清单 + 修复建议
  • 报告不含任何实际修复动作

和其他工作流的关系

方向关系
cs-req 配合req 写"为什么有这个能力"、本技能写"用什么结构实现";frontmatter implements 反向链到 req slug
cs-feat-design 上游design 写"本 feature 和哪块架构对接"时读本技能产出的 doc;design 写完可触发 check 体检
cs-feat-accept 下游验收阶段实际去更新本技能产出的 doc(acceptance 自己归并,不回调本技能);想确认实现 vs design 对得上时触发 check design-vs-code
cs-decide 配合拍板架构决策后,update 模式把引用补进相关 doc 第 4 节
cs-issue-analyze 读者根因分析读本技能 doc 定位模块边界
cs-onboard 创建者onboard 建 ARCHITECTURE.md 占位,之后由本技能填实
cs-roadmap 配合architecture 记现状、roadmap 记规划。roadmap 起草读本技能 doc 理解现状但不改它;目标态架构归 roadmap

常见错误

backfill / update

  • 把"打算重构成什么样"写进来——目标态归 roadmap
  • 凭空造系统——出现代码里不存在的"协调层 / 中枢 / 管理器"
  • 替用户拍板——选型理由是 AI 编的
  • 代码复述——每节只列"这里有什么",没说"为什么这么分"
  • 分批吐半成品——用户看不出跨节矛盾
  • 术语冲突——新名字和代码 / 其他 architecture doc / compound 已有的冲突
  • 一次写 / 改多份——审不过来全部粗糙合入
  • 和已有 decision 冲突不停下——自己写了一版相悖的说法
  • backfill 落盘后忘加 ARCHITECTURE.md 索引——写了没人能发现
  • 把还没在代码里跑起来的模块走 backfill——那是目标态转 roadmap
  • update 加新内容但没代码依据——内容飘离实际的开端
  • 顺手把代码 / 方案 doc 一起改了——越界
  • 同类 ≥6 份还往根目录平铺——触发分组规则没搬迁
  • 文件名没遵循 {type}-{slug}.md——分组规则形同虚设

check

  • 一次同时做多个子目标
  • architecture-folder-internal 顺手读代码——那是 design-vs-code
  • 发现问题就顺手改代码或文档
  • 只说"这里不太对"不给证据位置
  • 建议过于抽象("优化一下架构")
  • 从一个目标无限扩展到全仓库审计

Related skills

More from liuzhengdongfortest/codestable and the wider catalog.

CS

cs-feat-design

liuzhengdongfortest/codestable

feature 流程阶段 1——为新功能起草 {slug}-design.md 和 {slug}-checklist.yaml,先交给 cs-feat-design-review 做人审前方案审查,再由用户整体确认为 approved。触发:用户说"开始设计方案"、"写 design doc"、"准备实现 XX",前提是已知道做什么、为谁、怎么算成功。

1.1k installsAudited
CS

cs-feat-accept

liuzhengdongfortest/codestable

feature 流程阶段 3——验收闭环:对照 design 核实现 + review 报告 + QA 报告或验收现场验证证据 + 盘点 cs-domain 候选(提示而非代写)+ 回写 requirement / roadmap,最后产出 {slug}-acceptance.md。触发:用户说"功能写完了验收一下"、"做最后检查"、"准备 merge"、"出验收报告"。前置依赖 cs-feat-impl 完成、cs-code-review 通过;如果未单独执行 cs-feat-qa,accept 必须现场补齐同等验证证据。

1.1k installsAudited
CS

cs-onboard

liuzhengdongfortest/codestable

把新仓库或有零散文档的仓库接入 CodeStable 体系,两条路径自动判断:空仓库从零搭骨架,已有文档走审计 + 迁移映射。触发:用户说"在这个项目里用 CodeStable"、"搭 CodeStable 结构"、"初始化 CodeStable"、"迁移到 CodeStable"。

1.1k installsAudited
CS

cs-brainstorm

liuzhengdongfortest/codestable

想法还模糊时的讨论入口,做分诊后路由到 feature-design / feature-brainstorm / roadmap。AI 是思考伙伴不是记录员。触发:用户说"有个想法还没想清楚"、"先 brainstorm 一下"、"聊一聊这块"、"方向还在摇摆"。不处理 bug 和重构。

1.1k installsAudited
CS

cs-feat-impl

liuzhengdongfortest/codestable

feature 流程阶段 2——按 {slug}-checklist.yaml 里 design 切好的 paradigm 维度 steps 推进,每步具体改哪个文件由 implement 自决,写完用统一格式汇报;也处理 cs-code-review 返回的 review-fix 和 cs-feat-qa 返回的 qa-fix。触发:用户说"方案确认了开始实现"、"按方案写代码"、"开工"、"修 review blocking"、"修 QA 失败项"。前提是 design 已 approved 且有 checklist。遇到方案外情况要回方案谈不要硬冲。

1.1k installsAudited
CS

cs-refactor

liuzhengdongfortest/codestable

代码优化的子流程入口,处理"行为不变、结构变"的工作(结构 / 性能 / 可读性),按 scan → design → apply 分步执行每步人工放行。触发:用户说"优化一下 / 重构 / 重写 / 拆一下 / 性能不行 / 代码太长"且不夹带行为改动。不处理新需求 / bug / 跨模块架构重划。

1.1k installsAudited