This repository is a reusable Spec Driven Design template for Codex, based on github/spec-kit.
It is already initialized for Codex skills mode. The project-principles step has
already been completed, and .specify/memory/constitution.md contains the
governing principles for code quality, testing, user experience consistency,
performance, and technical decision governance.
- Spec Kit project structure under
.specify/ - Codex skills under
.agents/skills/ - PowerShell Spec Kit helper scripts
- Git workflow extension for feature branches and optional commits
- Project constitution ratified in
.specify/memory/constitution.md - Root guidance in
AGENTS.md
Local metadata currently records Spec Kit 0.8.13, Codex as the default
integration, skills mode enabled, PowerShell scripts, and sequential branch
numbering.
Do not rerun Step 1 unless you intentionally want to revise the constitution. This template has already completed:
STEP 1: Establish project principles
Users of this template should continue from Step 2 of the Spec Kit detailed process: create the project specification for the application or feature they want to build.
For this Codex skills installation, use the skill names directly, such as
speckit-specify, or ask Codex to use $speckit-specify when the UI supports
skill chips. Slash-style prompts such as /speckit.specify may work in some
surfaces, but the installed integration is Codex skills mode.
The upstream process is documented in the Spec Kit Detailed Process. Use the Codex-focused flow below from Step 2 onward. For non-trivial work, keep the clarify, checklist, analyze, and validation gates in the path instead of jumping straight from a spec to implementation.
Use speckit-specify to describe the product behavior you want. Focus on what
the system should do and why users need it. Avoid choosing the tech stack in
this step unless it is a hard product constraint.
Example:
Use $speckit-specify to build a task management application for small teams. Users can
create projects, assign tasks, comment on tasks, and move tasks across a Kanban
board. Start with predefined users and no authentication for the first version.
Expected output:
- A feature branch such as
001-task-management - A new
specs/<feature>/spec.md - User stories, functional requirements, assumptions, success criteria, and constitution-aligned requirements
Use speckit-clarify before planning. Codex should identify underspecified
requirements, ask targeted questions, and record the answers in the spec.
Skip this only for an intentional spike or prototype, and state that explicitly so the tradeoff is visible in the artifacts.
Use speckit-checklist when the feature needs an explicit quality checklist
before planning. The checklist should cover requirement quality, security,
testing, UX, performance, and traceability.
Use speckit-plan once the specification is stable. This is where you provide
implementation constraints such as the language, framework, data storage, target
platform, architecture preferences, agent strategy, and validation expectations.
Expected output in specs/<feature>/:
plan.mdresearch.mddata-model.mdwhen applicablecontracts/when applicablequickstart.md
Use speckit-tasks after the plan is accepted. This creates tasks.md in the
feature directory with ordered, actionable work.
The generated task list should include:
- Story-by-story implementation phases
- Dependency ordering
- Parallel markers where safe
- File paths for implementation work
- Required validation and testing tasks
- Checkpoints for independently testable user stories
Use speckit-analyze before implementation to check consistency across the
specification, plan, and tasks. Codex should look for missing requirements,
contradictions, over-engineering, unclear test strategy, UX gaps, security gaps,
and performance risks.
The plan must keep the constitution as the decision filter.
Use speckit-implement when the specification, plan, tasks, and analysis are
ready. Codex should execute tasks in order, respect dependencies, run the
validation requested in the plan, and report unresolved risks.
Codex may need local tools such as package managers, language runtimes, test runners, or browsers depending on the feature plan. Install those in the target project environment before implementation begins.
| Purpose | Codex skill |
|---|---|
| Create or update principles | speckit-constitution |
| Create feature specification | speckit-specify |
| Clarify specification | speckit-clarify |
| Create checklist | speckit-checklist |
| Create implementation plan | speckit-plan |
| Generate tasks | speckit-tasks |
| Analyze artifacts | speckit-analyze |
| Implement tasks | speckit-implement |
Codex skills are stored in .agents/skills/. Ask Codex to use the named skill
directly, or use $skill-name when the UI exposes skill chips.
- Clone or copy this repository.
- Open it with Codex.
- Read
AGENTS.mdand.specify/memory/constitution.md. - Start a feature with Step 2:
speckit-specify. - Follow the generated artifacts through clarification, checklist, planning, tasks, analysis, and implementation.
Keep generated feature work under specs/<feature>/. Keep reusable Spec Kit
template changes under .specify/templates/, and keep Codex workflow changes
under .agents/skills/.
This template is based on Spec Kit but can intentionally diverge for Codex. When updating from upstream:
- Review upstream release notes before replacing local files.
- Preserve Codex skills mode unless you intentionally change integrations.
- Re-check
.specify/integration.jsonand.specify/init-options.json. - Re-run the Spec Kit workflow on a small sample feature before adopting the update broadly.
This repository is intentionally opinionated about governance and intentionally lightweight about tooling. It includes reusable guidance for:
- agent operating rules and human approval boundaries;
- security and agent-tooling threat modeling;
- Definition of Done and quality gates;
- architecture decision records and architecture overview;
- observability, performance, release, and runbook templates;
- GitHub issue and pull request templates.
It does not enable active CI, scanners, releases, Dependabot, SBOM generation, or community Spec Kit extensions by default. Add those only when the target project has a concrete stack, package ecosystem, release process, and owner.
Evaluate these only after the project has real requirements and owners:
- Spec Kit presets or extensions for agent parity, security governance, architecture governance, explicit task dependencies, table of contents, CI guard, QA testing, review, or verification.
- Dependency automation such as Dependabot or Renovate.
- Active GitHub Actions for lint, test, build, security scanning, artifact publishing, provenance, or release.
- OpenSSF Scorecard, SLSA provenance, SBOM publication, and formal threat modeling.
This project is licensed under the MIT License. See LICENSE.