A Codex custom skill for review-driven development: requirements → source/file analysis → critical subagents → TODOs → TDD validation → independent review → documentation → improvement loop.
한국어 문서는 README.ko.md를 참고하세요.
Codex can implement quickly, but complex research or engineering work often fails because the agent skips one of the boring parts: clarifying assumptions, reusing existing code safely, testing the actual TODO, recording review evidence, or updating documentation. review-driven-development packages those steps into a repeatable skill workflow.
The skill is intentionally conservative:
- It asks first-run questions and stores project defaults.
- It analyzes text, Markdown, source files, tests, and data files before planning.
- It uses critical-only subagents for debate, validation, and improvement.
- It executes one TODO at a time.
- It refuses to mark a TODO complete without validation evidence, independent review evidence, and documentation status.
| Area | What is included |
|---|---|
| Skill entrypoint | skills/review-driven-development/SKILL.md |
| Persistent state | .codex/review-driven-development/profile.md, defaults.json, ledgers |
| Requirement analysis | Language/method/code-reuse options with tradeoffs |
| Source/file analysis | Markdown, README, AGENTS.md, source, tests, build files, CSV/data files |
| Critical subagents | Pre-plan, validation, and improvement brief generation |
| TODO lifecycle | Append-only TODO ledger with one active TODO rule |
| Validation | Dry-run and executed quality-gate reports for test/lint/build/eval |
| Documentation gate | README/docs/ADR/changelog/implementation-log checks |
| External skill policy | Official/community skill URLs and trust policy |
| Tests | self_test.py and pytest smoke workflow tests |
.
├── README.md
├── README.ko.md
├── README.en.md
├── VALIDATION.md
├── REVIEW_NOTES.md
├── external-skills.json
├── skills/
│ └── review-driven-development/
│ ├── SKILL.md
│ ├── agents/openai.yaml
│ ├── references/
│ └── scripts/
├── tests/
│ └── test_smoke_workflow.py
├── docs/
│ └── github-setup.md
└── .github/
├── workflows/ci.yml
├── dependabot.yml
├── ISSUE_TEMPLATE/
└── PULL_REQUEST_TEMPLATE.md
- Python 3.10+
pytestfor the test suite- Codex environment that supports custom skills
- Optional: GitHub CLI (
gh) if you use PR/comment workflows
Install test dependency locally:
python -m pip install -U pip pytestUse this when you want the skill to apply only to one repository.
mkdir -p .agents/skills
cp -R skills/review-driven-development .agents/skills/review-driven-development
python .agents/skills/review-driven-development/scripts/validate_skill.py \
--skill-dir .agents/skills/review-driven-developmentUse this when you want the skill available across repositories.
mkdir -p ~/.agents/skills
cp -R skills/review-driven-development ~/.agents/skills/review-driven-development
python ~/.agents/skills/review-driven-development/scripts/validate_skill.py \
--skill-dir ~/.agents/skills/review-driven-developmentpython skills/review-driven-development/scripts/skill_registration.py \
--repo-root . \
--scope repo \
--overwriteThen open Codex in the target repository and confirm the skill appears:
/skills
Invoke it explicitly:
Use $review-driven-development for this requirement.
Run the local validation suite first:
python -m compileall -q -f skills/review-driven-development/scripts
python skills/review-driven-development/scripts/validate_skill.py \
--skill-dir skills/review-driven-development
python skills/review-driven-development/scripts/self_test.py
pytest -qExpected result:
validate_skill.py: ok True
self_test.py: ok true
pytest: 11 passed
Create project state:
python skills/review-driven-development/scripts/rdd_state.py --root . ensure
python skills/review-driven-development/scripts/rdd_state.py --root . init-defaults \
--answers "English docs, Korean responses, TDD-first, review then reuse existing code"Build a project inventory:
python skills/review-driven-development/scripts/context_inventory.py --root . --save --summaryCreate or start a TODO:
python skills/review-driven-development/scripts/todo_manager.py --root . create \
"Add workflow smoke test" \
--acceptance "pytest passes" \
--risk medium
python skills/review-driven-development/scripts/todo_manager.py --root . start-nextRun quality gates:
python skills/review-driven-development/scripts/quality_gate.py \
--root . \
--todo-id RDD-T-00000001 \
--kinds test,lint,build \
--record-todo-evidenceFor real execution, configure commands first:
{
"test": ["pytest -q"],
"lint": [],
"build": [],
"eval": []
}Save it to:
.codex/review-driven-development/commands.json
Then run:
python skills/review-driven-development/scripts/quality_gate.py \
--root . \
--todo-id RDD-T-00000001 \
--kinds test,lint,build \
--execute \
--record-todo-evidenceRecord independent review and documentation status:
python skills/review-driven-development/scripts/todo_manager.py --root . review \
RDD-T-00000001 \
--summary "Independent validation completed; no blocker/high finding remains."
python skills/review-driven-development/scripts/todo_manager.py --root . docs \
RDD-T-00000001 \
updated \
--target README.md \
--target .codex/review-driven-development/implementation-log.mdComplete the TODO only after gates are satisfied:
python skills/review-driven-development/scripts/todo_manager.py --root . complete RDD-T-00000001flowchart TD
A[Requirement / files / docs / data] --> B[First-run profile + defaults]
B --> C[Context inventory]
C --> D[Critical-only subagent briefs]
D --> E[Main-agent decisions]
E --> F[Accepted findings become TODOs]
F --> G[One TODO in progress]
G --> H[TDD / quality gate]
H --> I[Independent review evidence]
I --> J[Documentation status]
J --> K{Completion gate}
K -->|pass| L[Completed TODO]
K -->|fail| M[Fix / debug / update TODO]
L --> N[Improvement critique]
N --> F
The skill stores project-local state under:
.codex/review-driven-development/
├── profile.md
├── defaults.json
├── todos.jsonl
├── critic-findings.jsonl
├── decision-log.md
├── review-ledger.md
├── implementation-log.md
├── context-inventory.json
└── validation-reports/
A TODO cannot be completed unless these are true:
- Acceptance criteria exist.
- Validation evidence exists.
- If real quality-gate commands are configured, passing executed evidence exists.
- Independent review evidence exists.
- Documentation status is
updatedornot_needed. - No unresolved blocker/high review finding remains.
External skills are listed in:
external-skills.json
skills/review-driven-development/references/external-skills.md
skills/review-driven-development/references/external-skill-links.md
Recommended priority:
- Official OpenAI skills:
define-goal,gh-address-comments,openai-docs - Engineering workflow skills:
source-driven-development,planning-and-task-breakdown,incremental-implementation,test-driven-development,code-review-and-quality,documentation-and-adrs - Fallback to this repository's
references/andscripts/if an external skill is unavailable
Community skills should be reviewed before enabling scripts, hooks, or permissions.
This repository includes GitHub-ready defaults:
.github/workflows/ci.yml
.github/dependabot.yml
.github/PULL_REQUEST_TEMPLATE.md
.github/ISSUE_TEMPLATE/*.yml
.github/CODEOWNERS
CONTRIBUTING.md
SECURITY.md
SUPPORT.md
CODE_OF_CONDUCT.md
Before publishing, replace placeholders:
grep -R "YOUR_GITHUB_USERNAME" -n .
grep -R "@YOUR_GITHUB_USERNAME" -n .Recommended topics:
codex skill agentic-workflow tdd code-review automation developer-tools python
See docs/github-setup.md and GITHUB_UPLOAD_CHECKLIST.md.
python -m pip install -U pip pytest
python -m compileall -q -f skills/review-driven-development/scripts
python skills/review-driven-development/scripts/validate_skill.py --skill-dir skills/review-driven-development
python skills/review-driven-development/scripts/self_test.py
pytest -qSee CONTRIBUTING.md. Keep changes small, preserve the critical-only subagent contract, and update tests when changing workflow gates.
See SECURITY.md. Do not store secrets in .codex/review-driven-development/ state files.
No open-source license has been selected yet. Add a LICENSE file before publishing as an open-source project.
한국어 전체 문서는 README.ko.md를 참고하세요. 이 프로젝트는 요구사항 분석, 비판 전용 subagent, TODO 단위 TDD 검증, 독립 review, 문서화를 반복하는 Codex custom skill입니다.