Stack-agnostic starter kit for AI-first projects built to work well with Codex, human review, and production delivery.
This repository is intentionally light on framework code. It gives every new project a strong operating system: agent instructions, skills, specs, architecture records, quality gates, and review templates.
Applications created from this workbench are expected to be hosted on AWS. The concrete AWS product is selected per project based on workload needs, with cost effectiveness as a primary criterion and explicit user validation before implementation. DNS is managed systematically through Cloudflare via API. Version control and collaboration are standardized on GitHub. When a relational database is required, PostgreSQL is the default engine.
Use this flow to create a clean project from the template.
On GitHub, click Use this template and create a new repository.
Then clone it:
git clone https://github.com/<owner>/<new-project>.git
cd <new-project>make bootstrap
make doctor
make checkIf make doctor reports missing rg, install ripgrep:
brew install ripgrepUpdate at least:
README.md.env.exampleAGENTS.mdDESIGN.mddocs/github/repository-metadata.md
Then run:
make new-project-checkThis command is expected to fail until template names, slugs, and TBD values are replaced or intentionally resolved.
List presets:
make design-templatesGenerate previews:
make design-previewsOpen:
templates/design/previews/index.html
Apply one preset:
make apply-design DESIGN=templates/design/public-product.DESIGN.mdThen adjust DESIGN.md tokens for the actual product.
cp docs/specs/000-template.md docs/specs/001-initial-product.mdFill in:
- problem, goals, and non-goals
- users and workflows
- AI behavior, if applicable
- data contracts
- database and persistence
- AWS deployment options
- Cloudflare DNS needs
- GitHub/release impact
- acceptance criteria
Create ADRs from:
cp docs/adr/0001-template.md docs/adr/0009-your-decision.mdCommon early ADRs:
- application stack
- AWS service selection
- PostgreSQL service: RDS or Aurora
- IaC tool: OpenTofu/Terraform or approved alternative
- DNS and domain strategy
Infrastructure, DNS, database service, IaC, release, and GitHub governance choices must be proposed and user-approved before implementation.
Keep the real vault outside the repository:
/Users/jbm/Documents/Obsidian/Projects/<new-project>
Set locally:
OBSIDIAN_VAULT_PATH=/Users/jbm/Documents/Obsidian/Projects/<new-project>Export reviewed context only:
make obsidian-export
make context-checkAdd the selected framework and update:
Makefilescripts/check-template.sh.env.exampleAGENTS.mdREADME.md
Keep commands Docker-compatible where possible.
make check
make context-check
make skills-scan
make new-project-check
git add .
git commit -m "Initialize project from AI workbench"
git push- Codex-ready repository instructions in
AGENTS.md - Repeatable local skills in
.codex/skills - Optional SkillKit workflow for discovering, scanning, and managing external skills
- Product and UX constraints in
DESIGN.md - DESIGN.md-style design system contract with machine-readable tokens
- Ready-made DESIGN.md presets for common AI product types
- Specification workflow in
SPECS.md - Architecture decision records in
docs/adr - Feature spec templates in
docs/specs - Runbook and architecture documentation placeholders
- GitHub issue and PR templates
- Minimal CI for template validation
- Stack-neutral scripts for validation and bootstrap
- AWS deployment decision framework with cost-effective service selection
- Cloudflare DNS management workflow via API
- GitHub versioning and repository governance workflow
- PostgreSQL-first relational database decision workflow
- Prompt library and minimal eval case format
- Sub-agent governance for parallel Codex work
- Optional Obsidian context workflow for local knowledge management
- Docker, task, and infrastructure templates
- Secrets, cost governance, and IaC decision workflows
- Apache-2.0 license for public reuse
- Public repository polish: badges, NOTICE, issue templates, ADR/spec indexes
- Copy or generate a new repository from this template.
- Update
README.md,DESIGN.md, andAGENTS.mdwith project-specific context. - Create the first feature spec from
docs/specs/000-template.md. - Record major technical choices in
docs/adr. - Add framework-specific commands to
Makefileandscripts/check-template.sh. - Use
docs/runbooks/skill-management.mdbefore adding external skills. - Use
docs/runbooks/aws-deployment-selection.mdbefore implementing infrastructure. - Use
docs/runbooks/cloudflare-dns-management.mdbefore changing DNS. - Use
docs/runbooks/github-versioning.mdbefore configuring repository governance or releases. - Use
docs/runbooks/database-selection.mdbefore adding persistence. - Use
docs/runbooks/design-system-management.mdbefore changing design tokens or importing Stitch output. - Use
docs/runbooks/design-template-selection.mdbefore applying a ready-made design preset. - Use
docs/runbooks/sub-agent-management.mdbefore coordinating delegated sub-agent work. - Use
docs/runbooks/obsidian-context.mdbefore exporting or promoting Obsidian context. - Use
docs/runbooks/iac-selection.md,docs/runbooks/secrets-management.md, anddocs/runbooks/cost-governance.mdbefore production infrastructure work. - Use
docs/checklists/new-project.mdwhen instantiating a derived project.
.
├── .codex/ # Codex skills and examples
├── .skills/ # Optional SkillKit manifests and metadata
├── .github/ # PR and issue workflows
├── context/ # Optional local context integrations
├── docs/
│ ├── adr/ # Architecture decision records
│ ├── architecture/ # System maps and diagrams
│ ├── runbooks/ # Operational procedures
│ └── specs/ # Product and implementation specs
├── evals/ # Stack-agnostic eval cases
├── prompts/ # Versioned prompt artifacts
├── scripts/ # Local automation hooks
├── templates/ # Reusable project templates
├── AGENTS.md # Agent operating instructions
├── CONTRIBUTING.md # Contribution workflow
├── DESIGN.md # UX/product/design system constraints
├── SECURITY.md # Security baseline
├── SPECS.md # Spec workflow
└── Makefile # Common command facade
flowchart LR
Idea["Idea / issue"] --> Spec["Spec"]
Spec --> ADR["ADR if architecture changes"]
ADR --> Build["Implementation"]
Spec --> Build
Build --> Check["Automated checks"]
Check --> Review["Human + Codex review"]
Review --> Ship["Release"]
Every project built from this template should define:
- A clear user or business outcome
- Explicit non-goals
- Security and privacy constraints
- Runtime and deployment assumptions
- AWS service selection rationale and user validation
- Cloudflare DNS records, API token scope, and rollback path
- GitHub repository, branch, PR, release, and protection rules
- PostgreSQL persistence model when relational storage is needed
- DESIGN.md tokens and UX rules for UI work
- Versioned prompts and evals for important AI behavior
- Bounded sub-agent execution plans when parallel work is useful
- Reviewed context exports when Obsidian is used
- Secrets, cost, and IaC governance when infrastructure is touched
- Fast local checks
- Production readiness criteria
docs/checklists/ai-readiness.mddocs/checklists/production-readiness.mddocs/checklists/repository-hardening.mddocs/checklists/skill-review.mddocs/checklists/aws-deployment-review.mddocs/checklists/cloudflare-dns-review.mddocs/checklists/github-repository-review.mddocs/checklists/database-review.mddocs/checklists/design-review.mddocs/checklists/iac-review.mddocs/checklists/secrets-review.mddocs/checklists/cost-review.mddocs/checklists/sub-agent-review.mddocs/checklists/context-review.md
SkillKit can help discover, translate, scan, and manage skills across Codex and other agents. It is intentionally optional and not installed during bootstrap.
make skills-recommend
make skills-scanRead docs/runbooks/skill-management.md before adding external skills.
make help
make check
make doctor
make context-check
make design-templates
make design-previews
make skills-scanmake new-project-check is intended for repositories created from this template after project-specific names and placeholder values are replaced.
Codex works best when tasks are scoped, files are discoverable, and project rules are explicit. Keep AGENTS.md, DESIGN.md, and specs current as the system evolves.
For OpenAI/Codex documentation, prefer the official docs MCP server or official OpenAI docs before making model, API, or workflow assumptions.
Licensed under the Apache License, Version 2.0. See LICENSE.