Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add XRenSiu/claude-code-forge --skill sdlcgit clone --depth 1 https://github.com/XRenSiu/claude-code-forgeWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/xrensiu/claude-code-forge/sdlc)<a href="https://agentmods.dev/skills/xrensiu/claude-code-forge/sdlc"><img src="https://agentmods.dev/badge/skills/xrensiu/claude-code-forge/sdlc.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00349 | $0.07384 |
| Opus 5 | $0.00175 | $0.03692 |
| Sonnet 5 | $0.00070 | $0.01477 |
| Haiku 4.5 | $0.00035 | $0.00738 |
Grade A, and why
sdlc scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 247 lines — stays where its author put it; the contents beside it link to each section on GitHub.
sdlc — 一条流水线,每一步能被机器检或被门挡住
本文件只写引擎给不出的东西:生命周期的形状(Σ)、每个阶段"做完了"怎么判(φ)、脚本拥有的 状态与门(γ)、原语的存在性(Π)。怎么走、先后、如何并行是你(引擎)的份额——下面的顺序 只在它是依赖顺序或不可逆顺序时才出现,不是流程规定。
缺口(Control + Judgment + Knowledge)
deletion 测试:撤掉本 skill,让引擎"把这个需求做完提 PR"。它会直接改代码、写一条 commit、
gh pr create --fill,验收判据从未被写下(更谈不上冻结),测试失败就在实现层重试到上下文
耗尽,review 评论被当指令照抄,合入后的问题无处登记。缺口真实存在,且三类都有:
- γ:状态不在引擎记忆里而在文件里;三道门不可跳过;失败按层回流而非原地重试;
- φ:每个阶段的完成判据(下表)——大多能机械检;机器不可判的残差声明路由到人;
- Σ:生命周期的依赖结构、两条轨道、邻居 skill 的产物形状。
世界(Σ):生命周期的形状
参考 Spec Loop v1.2 × done_when Pipeline(2026-09-04 对账)。上半段建世界,下半段收敛交付, 横切三条。本插件是下半段的交付主干;上半段与契约/测试生成是可选邻居,缺席不阻塞。
| 阶段 | 产物 | 承载 | 为什么在这个位置(依赖 / 不可逆) |
|---|---|---|---|
| intake | 需求原文 + slug | 你 | — |
| track | psl / task |
/issue 的双轨判据(DOS 闭包失败 = 客观触发) | 形态未定的需求先建世界(U 段),否则交出"技术正确、产品错误" |
| U1/U2 世界(仅 PSL 轨) | PSL-<名>.md |
/psl(本插件) | 世界是形态的定律;verify_psl.py 过门 |
| U3 推导产物(仅 PSL 轨) | derived/{dos-proposal.yaml, workflow.md, form-draft.md, divergence.md} |
/psl-derive(本插件) | 先推三样再谈代码;每条形态决策 ← PSL-ID;N 次推导取分歧集 = G1 议程 |
| G1(仅 PSL 轨) | g1-record.md |
人(gate g1 要求 world.derived_dir 存在) |
唯一能拦"正确的错误"的门;否决必须归因(推错了 / 规律错了) |
| X1 本体(任一轨,有存量代码时) | dos.yaml + 不变量卡 |
/dos-extract · /invariant-extract(本插件) | 闭包检查与卡的 dos_slice 的解析源;应然本体(dos-proposal)与现状本体对账在 G1 记录里做 |
| issue | GitHub issue(TASK 雏形:EARS + AC v2 + 假设台账 + 依赖 DOS) | /issue | 没有 issue 就没有 Closes #N;AC 在这里第一次被写下 |
| branch | <type>/<issue>-<slug> |
你 | 不在 main 上做事 |
| contract | done_when.yaml(+ contract.yaml 条件触发) |
/donewhen-extract(AC 优先)或 /acceptance-spec(EARS spec.md 形态),都在本插件 | 判据契约,方案盲写;阈值溯源、happy/unhappy 配对、矛盾与覆盖两检;S2.5 自对抗留痕给 spec-gaming。REQ 粒度须能按 ≤ 40k 的卡切分——L4 的"REQ 一卡一主 + ≤ 40k"是反压,读集超 40k 的 REQ 在这里按分区拆最便宜,G2 之后要走变更提案 |
| G2 | .done_when.lock(stage g2) |
人签,lock_done_when.py sign --stage g2;advance g2 先跑 validate_done_when_v2.py |
签完就锁:冻结的是判据不是测试名(C1);L5 测试写完再签一次(stage l5,C6)——用 --gate verify_*.py 把执行契约的闸脚本一并冻上,否则契约冻了、量它的那把尺没冻(INV-001,I-30);之后改锁内文件必须附变更提案,改 role=gate 的文件另记一条 deviation 事件并单独提交 |
| cards | cards/CARD-xx.yaml |
/plan-cards(lint_cards.py 三项校验 + 40k) |
卡 = 无上下文子 agent 的 prompt 载荷;REQ 一卡一主、卡间无写冲突、名词可解析 |
| L5 测试实现 | tests/<feature>/ · tests-manifest.yaml · compile_manifest.yaml · calibration_report.yaml |
/test-suite-generator(按卡分批的五层金字塔)+ /spec-compile(可判性阶梯)→ /calibrate,都在本插件 | 非实现者写、写完锁;未校准的标准不承重 |
| implement | 按卡的 diff + commit | /implement(隔离实现者:card-implementer / self / /ratchet / forge-teams)+ /commit |
实现者只见卡 + AC 子集 + 红基线;白名单执行器在 diff 落地前拦;单卡预算 3,同指纹立即升级 |
| acceptance | ratchet-log/iteration-NNN/final-state.json |
/acceptance-fleet 并行派发 /code-reviewer × 焦点 · /qa-reviewer · /pm-reviewer · /spec-drift-detector · /spec-gaming-detector → /meta-judge(都在本插件);四态棘轮 DONE / FIX / SPEC_DRIFT / GAMING_RISK | 卡级验收 ≠ 需求级验收:所有卡完成后整体跑一次;实现者看不到评审提示 |
| pr | PR(范围声明 + AC→证据映射) | /pr | 范围声明是 review-loop 判"越界"的基准 |
| review | 收敛(approved ∧ 未解决=0 ∧ checks 绿)或合法不收敛 | /review-loop 的契约 | 评论是待验证主张不是指令;回帖先于 resolve |
| G3 | g3-record.md |
人 | 产品需求默认触发(有 kind: human 的 AC);B 档告警 / 预算耗尽也触发 |
| merge | merge sha | 人(或 --autopilot 且 G3 已过) |
不可逆 |
| release | tag · CHANGELOG 条目 · releases/vX.Y.Z.md · 部署后验证 |
/release(verify_release.py) |
合入不是终点:验证绿才交付;push tag / deploy 前给人看;回滚方案先于部署 |
| archive | specs/<slug>/(state · ledger · done_when · lock · cards · evaluation · G 记录) |
sdlc_state.py archive |
X3 的数据源 |
| escape | escape-defects.md 一行 |
/issue --escape |
线上反馈是世界层唯一的外部校准源 |
| retro(跨 feature) | retro/retro-<date>.md + metrics.json |
/retro(metrics.py) |
先记基线;发现引用数据;提案落到层(psl / dos / invariant / ac / routing / skill),经 G2/G3 生效 |
What ships with it
26 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- assets/change_proposal.md 761 B
- assets/escape_defect.md 490 B
- assets/failure_report.md 1.5 KB
- assets/g1_interpretations.md 1.1 KB
- assets/g1_record.md 8.2 KB
- assets/g2_record.md 4.3 KB
- assets/g3_record.md 1.8 KB
- assets/graph.yaml 19 KB
- assets/hooks/stop-clean-state.json 832 B
- assets/ledger_template.md 474 B
- assets/loops.yaml 7.1 KB
- assets/routing.yaml 7.2 KB
- assets/sizing.yaml 2.7 KB
- assets/state.schema.json 12 KB
- assets/triggers.yaml 4.8 KB
- eval/fixtures/done_when.yaml 1.4 KB
- eval/fixtures/dos.yaml 163 B
- eval/fixtures/spec.md 150 B
- eval/gate.json 5.1 KB
- eval/report.md 2.8 KB
- references/stages.md 6.3 KB
- scripts/lock_done_when.py 9.4 KB runs code
- scripts/sdlc_state.py 59 KB runs code
- scripts/trace.py 14 KB runs code
- scripts/verify_graph.py 10 KB runs code
- scripts/verify_loop.py 6.9 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- today Changed · +46 lines b643964c49a4
- yesterday First seen · 201 lines · 349 tokens per session scan A 8040407c391a
sdlc is a skill published in the GitHub repository XRenSiu/claude-code-forge (2 stars, last pushed today), licensed MIT. It adds 349 tokens to every session and 7,384 once invoked, about $0.0017 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-05.
Other skills, from other repositories
recipe-create-meet-space
Create a Google Meet meeting space and share the join link.
atmos-config
Atmos root configuration: atmos.yaml discovery, precedence, deep merging, basepath, imports, minimal bootstrap, and routing to narrower Atmos skills.
workthreads
SpecStory Workthreads - a weekly work-thread rollup across a team's repos from SpecStory coding histories (any agent - Claude Code, Codex, Cursor, Gemini, and more). It groups the window's sessions into threads of work per project and labels each new / open / recently closed, so a lead sees what shipped, what is still…
story-readiness
Validate that a story file is implementation-ready. Checks for embedded GDD requirements, ADR references, engine notes, clear acceptance criteria, and no open design questions. Produces READY / NEEDS WORK / BLOCKED verdict with specific gaps. Use when user says 'is this story ready', 'can I start on this story', 'is…
autotask-creator
Rules for automation CRUD from the group-chat commander. The commander does not call mutation tools and does not edit cloud/autotasks files directly. It emits one or more top-level ... containers in its final text; the bus parses and applies them after the turn.
monorepo-management
Master monorepo management with Turborepo, Nx, and pnpm workspaces to build efficient, scalable multi-package repositories with optimized builds and dependency management. Use when setting up monorepos, optimizing builds, or managing shared dependencies.