README
ΒΆ
Archie
Archie is a docs-first AI CLI that helps engineers turn vague ideas into clear, executable technical designs β and keep projects moving with structure and discipline.
Archie is not a coding tool. It is a design, specification, and execution-orchestration system built on Markdown files.
Why Archie?
Most projects fail before coding starts:
- requirements are unclear,
- designs are scattered,
- decisions are lost in chat,
- progress is hard to track.
Archie fixes this by enforcing:
- π Docs as Source of Truth
- π A strict feature state machine
- π§ AI-assisted review, design, and spec generation
- π¦ Everything stored locally, in Markdown
- π§© Composable sub-agents for API, workflow, storage, metrics, tasks, test plans
Core Idea
Archie treats a feature as the atomic unit and enforces the minimum design chain:
Feature β Workflow β Spec
Everything else (API, storage, metrics, tasks, test plans, deployment notes) supports this chain.
Installation
go install github.com/GarrickZ2/archie@latest
Verify Installation
archie --help
How to Use Archie
Archie has two modes of operation:
Mode 1: CLI Commands (Terminal)
Direct workspace management commands you run in your terminal:
| Command | Description |
|---|---|
archie init |
Initialize workspace structure and install agent commands |
archie setup |
Interactive TUI to edit background and manage features |
archie status |
Show project status with interactive feature browser |
archie export |
Export documentation to single markdown file |
Mode 2: Agent Commands (Coding Assistant)
AI-powered design commands that work inside your coding agent through conversational slash commands.
Supported Coding Agents:
- π€ Claude Code (
.claude/commands/) - π€ Cursor (
.cursor/commands/) - π€ Windsurf (
.windsurf/workflows/) - π€ Gemini Code Assist (
.gemini/commands/) - π€ Qwen Code (
.qwen/commands/) - π€ Custom agents (via
archie custom-agent)
How it works:
- Run
archie initto install agent command files - Open project in your coding assistant (e.g., Claude Code, Cursor)
- Use slash commands + conversation to invoke Archie agents
Available Agent Commands:
| Slash Command | Description | Status Required |
|---|---|---|
/init |
Initialize project workspace | N/A |
/review |
Clarify requirements and dependencies | NOT_REVIEWED, UNDER_REVIEW, BLOCKED |
/design |
Generate design artifacts (workflow, API, storage, metrics) | READY_FOR_DESIGN, UNDER_DESIGN |
/test-plan |
Create comprehensive test plan | DESIGNED, SPEC_READY, IMPLEMENTING, FINISHED |
/spec |
Generate coding-ready specification | DESIGNED |
/plan |
Manage execution tasks and timeline | DESIGNED, SPEC_READY, IMPLEMENTING, FINISHED |
/revise |
Modify/create/merge/split/delete features | Any |
/ask |
Ask questions about the project | Any |
/fix |
Fix validation errors or schema issues | Any |
Quick Start
Step 1: Install Archie (CLI)
go install github.com/GarrickZ2/archie@latest
Step 2: Initialize Your Project (CLI)
mkdir my-project
cd my-project
archie init
This creates:
- Workspace file structure (
features/,workflow/,spec/, etc.) - Schema templates (
.archie/docs/schema/) - Agent command files for your coding assistant
Step 3: Set Up Project Context (CLI)
archie setup
Interactive TUI to:
- Edit
background.md(project context, tech stack, hard rules) - Create and manage feature files
Step 4: Use Agents in Your Coding Assistant
Open the project in Claude Code, Cursor, Windsurf, or your preferred coding agent.
Example conversation in Claude Code:
You: /review user-authentication
Claude: I'll help you review the user-authentication feature.
Let me clarify the requirements and dependencies...
[Conducts AI-assisted review, discovers dependencies,
identifies blockers, updates feature documentation]
β
Review complete. Status β READY_FOR_DESIGN
---
You: /design user-authentication
Claude: I'll generate the design artifacts.
[Creates workflow diagrams, API specs, storage schemas,
metrics definitions, task breakdown]
β
Design complete. Generated:
- workflow/user-authentication/main.mmd
- api/api.md (updated)
- storage.md (updated)
- metrics.md (updated)
---
You: /test-plan user-authentication
Claude: I'll create a comprehensive test plan.
[Generates test case matrix (Unit/Integration/E2E),
failure scenarios, coverage mindmap, automation strategy]
β
Test plan complete.
- testplan/user-authentication.md
---
You: /spec user-authentication
Claude: I'll generate the coding-ready specification.
[Aggregates all design artifacts into executable spec]
β
Spec ready. Status β SPEC_READY
- spec/user-authentication.spec.md
Step 5: Monitor Progress (CLI)
archie status
Interactive TUI showing:
- Overall project health
- Feature status distribution
- Blocked features
- Detailed feature information
Step 6: Export Documentation (CLI)
archie export
Generates a single markdown file with:
- Selected documentation
- Feature specifications
- TOC, statistics, and dependency graph
What Archie Does
With Archie you can:
- β Initialize a project from scratch or messy notes
- β Review features and clarify requirements
- β Design workflows, APIs, storage, and observability
- β Generate comprehensive test plans
- β Generate coding-ready specs
- β Track blockers, tasks, and progress
- β Export clean documentation bundles
- β Manage feature lifecycle (create/merge/split/delete)
All via a CLI with interactive TUI support.
Project Structure
.
βββ background.md # Project context, tech stack, hard rules
βββ features/
β βββ README.md # Feature registry
β βββ <feature-key>.md # Feature definition
βββ workflow/
β βββ <feature-key>/
β βββ workflow.md # Workflow narrative
β βββ main.mmd # Main flow diagram (Mermaid)
βββ spec/
β βββ <feature-key>.spec.md # Coding-ready specification
βββ testplan/
β βββ <feature-key>.md # Test case checklist
βββ tasks.md # Execution tasks per feature
βββ metrics.md # Observability per feature
βββ storage.md # Database schemas per feature
βββ api/
β βββ api.md # API index and change records
βββ dependency.md # Dependency catalog
βββ deployment.md # Release notes and checklist
Complete Workflow Example
# 1. Install and initialize (CLI)
go install github.com/GarrickZ2/archie@latest
mkdir my-ecommerce
cd my-ecommerce
archie init
# 2. Set up project (CLI)
archie setup
# β Edit background.md with tech stack, hard rules
# β Create feature: "checkout-discount"
# 3. Open in Claude Code and use agents (Agent Mode)
In Claude Code:
You: /review checkout-discount
Claude: Let me review the checkout-discount feature...
[Reviews requirements, discovers dependencies, identifies blockers]
β
Status β READY_FOR_DESIGN
You: /design checkout-discount
Claude: Generating design artifacts...
β
Created workflow diagrams, API specs, storage schemas
You: /test-plan checkout-discount
Claude: Creating comprehensive test plan...
β
Generated 15 unit tests, 8 integration tests, 3 E2E tests
You: /spec checkout-discount
Claude: Generating coding specification...
β
Spec ready for implementation
You: /plan checkout-discount
Claude: Creating execution plan...
β
12 tasks created, estimated timeline: 5-7 days
# 4. Monitor progress (CLI)
archie status
# β Interactive TUI showing all features and their status
# 5. Export for review (CLI)
archie export
# β Generated: archie-export-2024-01-15.md
Feature State Machine
NOT_REVIEWED β UNDER_REVIEW β READY_FOR_DESIGN β UNDER_DESIGN β
DESIGNED β SPEC_READY β IMPLEMENTING β FINISHED
Special state: BLOCKED (can occur at any stage)
Key Concepts
Commands
High-level orchestrators that manage the feature lifecycle.
Subagents
Specialized capability units:
- Workflow Designer
- API Designer
- Storage Designer
- Metrics Designer
- Task Manager
- Test Plan Generator
Templates
Archie uses schema templates (.archie/docs/schema/) so teams can maintain consistent document structure while keeping it machine-parseable.
State Machine
Every feature follows a strict state progression ensuring design quality before implementation.
Advanced Features
Feature Management with /revise (Agent Mode)
The /revise agent command supports powerful feature lifecycle operations:
In your coding assistant:
You: /revise --create payment-gateway
Agent: Creating new feature: payment-gateway
β
Created features/payment-gateway.md
β
Status: NOT_REVIEWED
You: /revise --merge user-login,user-signup --into user-auth
Agent: Merging features...
β
Merged features/user-login.md + features/user-signup.md
β
Created features/user-auth.md
β
Archived source features
You: /revise --split checkout-flow
Agent: How would you like to split this feature?
[Interactive conversation to determine split boundaries]
β
Created 3 new features from checkout-flow
You: /revise --change checkout-discount --status IMPLEMENTING
Agent: Updating status...
β
checkout-discount: DESIGNED β IMPLEMENTING
CLI Commands Reference
Initialize Workspace
archie init
Creates workspace structure and installs agent commands for all supported coding assistants.
Interactive Setup
archie setup
TUI interface to edit project context and manage features.
Status Monitoring
# Interactive status browser
archie status
# Compact status report
archie status --compact
Documentation Export
# Interactive export with selection
archie export
# Export to specific file
archie export -o docs/design.md
# Export without table of contents
archie export --no-toc
# Export without statistics
archie export --no-stats
# Export without dependency graph
archie export --no-dep-graph
Who Is This For?
- Backend / Full-stack engineers
- Tech leads
- Early-stage startups
- Infra & platform teams
- Anyone tired of chaotic design docs
Philosophy
- Local-first: Everything stored in your filesystem
- Markdown-native: Human-readable, version-controllable
- Deterministic over magical: Predictable, explicit behavior
- Explicit over implicit: No hidden state, clear contracts
- Humans stay in control: AI assists, you decide
Status
Archie is under active design and early development.
Contributions, feedback, and ideas are welcome.
License
MIT License - see LICENSE file for details.
Contributing
We welcome contributions! Please:
- Fork the repository
- Create a feature branch
- Submit a pull request with clear description
For bugs or feature requests, please open an issue.
Documentation
ΒΆ
There is no documentation for this package.