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 agentmods add skills/lync-cyber/cataforge/tdd-enginenpx skills add lync-cyber/CataForge --skill tdd-enginegit clone --depth 1 https://github.com/lync-cyber/CataForgeWrote 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/lync-cyber/cataforge/tdd-engine)<a href="https://agentmods.dev/skills/lync-cyber/cataforge/tdd-engine"><img src="https://agentmods.dev/badge/skills/lync-cyber/cataforge/tdd-engine.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 | $0.00053 | $0.05917 |
| Opus 5 | $0.00026 | $0.02959 |
| Sonnet 5 | $0.00011 | $0.01183 |
| Haiku 4.5 | $0.00005 | $0.00592 |
Grade A, and why
tdd-engine 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 5d ago.
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 — 371 lines — stays where its author put it; the contents beside it link to each section on GitHub.
TDD引擎 (tdd-engine)
能力边界
- 能做: 指导orchestrator编排TDD三阶段子代理(RED/GREEN/REFACTOR)、light-dispatch/light-inline/standard 档位路由、prototype 主线程内联实现、同 sprint_group 独立任务并行调度、定义子代理prompt模板
- 不做: 需求分析、架构设计、文档生成、集成测试 / E2E 测试(由 testing skill 负责,本 skill 限单元测试粒度的 RED/GREEN/REFACTOR)
架构说明
orchestrator作为主线程Agent,在Phase 5逐任务执行时调用本skill。每个TDD阶段作为独立子代理启动,拥有独立上下文窗口,避免阶段间上下文污染。
orchestrator (主线程)
├─ 通过调度接口启动 → RED SubAgent (test-writer) — 独立上下文
├─ 收集RED产出 → 通过调度接口启动 → GREEN SubAgent (implementer) — 独立上下文
├─ implementer self-report `refactor_needed=true` 或 `tdd_refactor: required` → REFACTOR SubAgent (refactorer)
└─ 汇总产出 → 更新dev-plan任务状态
四档执行模式(触发条件唯一定义在 §执行流程 任务路由分支):
| 档 | 执行位置 |
|---|---|
| standard | RED + GREEN + REFACTOR(条件) 三次 dispatch |
| light-dispatch | implementer 一次 dispatch(合并 RED+GREEN) |
| light-inline | orchestrator 主线程内联 implementer 行为,零子代理 boot |
| prototype-inline | 同 light-inline,强制跳过 REFACTOR |
Mid-Progress Drop Contract
避免子代理在末尾 finalize 集中产出导致 task-notification truncation(征兆:100+ tools / 100K+ tokens / 5min+ 被打断;<agent-result> 不返回但 artifact 已部分落地)。触发(任一命中):loc_estimate > MID_PROGRESS_LOC(缺字段取 len(AC) × 30)或 len(tdd_acceptance) > 6。命中时 implementer dispatch prompt 强制注入:
Mid-progress 落盘:
- 先
Write全部目标文件的空骨架(import + export stub +describe(...)/ 函数签名占位),按依赖序落盘——被导入文件先于引用它的文件(写盘纪律见 SUB-AGENT-PROTOCOLS §并行/多文件写盘纪律)- 逐 AC 迭代填充实现 + 测试
- 每完成一条 AC 立刻运行
{test_command_fast}(按需附 file 过滤)验证- 禁止末尾一次
Edit堆所有 AC 实现 + 全套断言
适用:standard Step 3 GREEN ✅;light-dispatch ✅;light-inline / prototype-inline ❌(主线程产出,token 由主线程窗口管理,不需此契约)。契约失效(仍 truncation)→ ORCHESTRATOR-RECOVERY-PROTOCOLS §Sub-Agent Truncation Recovery Protocol 主线程接管。
TDD 子代理共享约束
以下约束适用于所有 TDD 子代理,通过 AGENT.md 的 disallowedTools 和本节定义:
- 各 Step 的 dispatch 块:角色定义 / 返回格式 / 异常处理由对应 AGENT.md 经 subagent_type 自动加载,prompt 仅内联任务上下文,各 Step 不再重述
- AskUserQuestion 不可用。如需用户输入,返回 blocked 并在
<questions>描述问题,orchestrator 以 continuation 重启 - 返回
<agent-result>格式(详见 dispatch-prompt.md §COMMON-SECTIONS) - blocked 时可追加
<questions>字段
What ships with it
6 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.
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.
- 5d ago First seen · 371 lines · 53 tokens per session scan A 297757f2cb5f
tdd-engine is a skill published in the GitHub repository lync-cyber/CataForge (128 stars, last pushed 1mo ago), licensed MIT. It adds 53 tokens to every session and 5,917 once invoked, about $0.0003 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-08-30.
Other skills, from other repositories
engram-testing-coverage
TDD and coverage standards for Engram. Trigger: When implementing behavior changes in any package.
tdd
Test-driven development. Use when the user wants to build features or fix bugs test-first, mentions "red-green-refactor", or wants integration tests.
conductor-implement
Execute tasks from a track's implementation plan following TDD workflow.
mobiai-mobile-tdd
You MUST use this before writing any implementation code for a mobile feature, bug fix, refactor, or behavior change. Tests come before implementation — no exceptions.
iterative-development
TDD iteration loops using Claude Code Stop hooks - runs tests after each response, feeds failures back automatically.
python
Python development with ruff, mypy, pytest - TDD and type safety.