Package Exports
- forge-dev-framework
- forge-dev-framework/dist/cli/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (forge-dev-framework) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
FORGE
Full Orchestration for Rapid Git Engineering
A multi-agent development framework for Claude Code Agent Teams that forges production-quality code through parallel specialization, adversarial verification, and bulletproof context engineering.
Features
- 🏗️ Event-Sourced State Engine — Append-only event log with single-writer merge
- 🤖 Multi-Agent Coordination — Contract-first protocol for parallel execution
- 📝 Template-Based Artifacts — Generate CLAUDE.md, REQUIREMENTS.md, ROADMAP.md
- 🌳 Git Worktree Isolation — Parallel task execution without conflicts
- ⚡ Slash Commands — Use
/forge:plan,/forge:executedirectly in Claude Code - 🎯 5-6 Task Limit — Enforced atomic task breakdown for optimal LLM performance
Installation
Global Installation (Recommended)
# Install globally via npm
npm install -g forge-dev-framework
# Commands are automatically installed to ~/.claude/commands/forge/
# Available from any project in Claude CodePer-Project Installation
# Install in a specific project
cd /path/to/your/project
npm install forge-dev-framework
# Commands installed to project .claude/commands/forge/
# Available only in this projectDevelopment Installation
# Clone the repository
git clone https://github.com/Alzarak/forge.git
cd forge
# Install dependencies
npm install
# Build the project
npm run build
# Install commands (global mode)
node dist/scripts/install.js --mode=global
# Or install to current project (project mode)
node dist/scripts/install.js --mode=projectQuick Start
Using Slash Commands (Recommended)
After installation, FORGE commands are available directly in Claude Code:
# Start a new FORGE project
/forge:new-project my-app
# Plan a phase
/forge:discuss M2-planning-engine
/forge:plan M2-planning-engine
# Execute with agent teams
/forge:execute M2-planning-engine
# Check progress
/forge:statusUsing CLI
# Initialize FORGE in current directory
forge init
# Show project status
forge status
# Generate artifacts
forge generate requirements
forge generate roadmap
# View configuration
forge configAvailable Commands
| Command | Description | Milestone |
|---|---|---|
/forge:new-project |
Initialize a new FORGE project | M1 ✅ |
/forge:init |
Initialize FORGE in current directory | M1 ✅ |
/forge:status |
Show project progress | M1 ✅ |
/forge:config |
View/edit configuration | M1 ✅ |
/forge:discuss |
Capture phase context | M2 🚧 |
/forge:plan |
Generate task breakdown | M2 🚧 |
/forge:verify |
Verify plan against requirements | M2 🚧 |
/forge:execute |
Execute phase with agent teams | M3 📋 |
/forge:generate |
Generate artifacts from templates | M1 ✅ |
/forge:help |
Show command reference | M1 ✅ |
Legend: ✅ Complete | 🚧 In Progress | 📋 Planned
Architecture
Event-Sourced State
FORGE uses an append-only event log with single-writer state derivation:
All Agents → state/events/*.json (append-only)
↓
State Steward (single writer)
↓
state/STATE.json (canonical)Contract-First Protocol
Cross-domain work requires published contracts first:
- Agent needs interface from another domain
- Write
REQUEST_CONTRACTevent - Provider publishes contract to
contracts/ - Both agents work against agreed contract
- Integration happens at merge time
File Ownership Boundaries
Each teammate writes only within their owned paths:
| Role | Owned Paths |
|---|---|
| ARCHITECT | Root artifacts, .claude/rules/, STATE.json (single-writer) |
| STATE-ENGINE | STATE.schema.json, event schemas, merge logic |
| CLI-ENGINE | src/cli/, src/commands/, bin/ |
| TEMPLATES | src/templates/, src/generators/ |
| GIT-OPS | src/git/, .github/ |
Wipe Protocol
Agent context is ephemeral, git is persistent:
- Hydrate — Agent reads CLAUDE.md + STATE.json + task + contracts
- Execute — Agent writes code, runs tests
- Commit — Atomic git commit (one task = one commit)
- Terminate — Session ends, context wiped
- Reincarnate — Next task starts with fresh context
Configuration
FORGE configuration is stored in .planning/forge.config.json:
{
"mode": "interactive",
"depth": "standard",
"maxTeammates": 5,
"taskLimit": 6,
"conventionalCommits": true,
"worktreeIsolation": true
}Available Settings
| Key | Type | Default | Description |
|---|---|---|---|
| mode | enum | interactive | yolo, interactive, standard |
| depth | enum | standard | quick, standard, comprehensive |
| maxTeammates | int | 5 | Max agents per phase (2-10) |
| taskLimit | int | 6 | Max tasks per phase (5-6 recommended) |
| conventionalCommits | bool | true | Enforce commit format |
| worktreeIsolation | bool | true | Use worktrees for tasks |
Development
Setup
# Clone repository
git clone https://github.com/Alzarak/forge.git
cd forge
# Install dependencies
npm install
# Build project
npm run buildScripts
npm run build # Build TypeScript to dist/
npm run dev # Run CLI in development mode
npm test # Run tests
npm run test:watch # Run tests in watch mode
npm run test:coverage # Run tests with coverageProject Structure
forge/
├── .claude/
│ ├── commands/ # Slash command definitions
│ └── rules/ # Scoped rules (api-patterns, etc.)
├── src/
│ ├── cli/ # CLI entry point
│ ├── commands/ # Command implementations
│ ├── generators/ # Template engine & XML generator
│ ├── git/ # Git operations (worktrees, hooks)
│ ├── types/ # TypeScript type definitions
│ ├── utils/ # Utilities (logger, state-api, etc.)
│ └── scripts/ # Installation scripts
├── templates/ # Artifact templates
├── bin/ # Executable entry point
├── state/ # State engine (events, STATE.json)
└── contracts/ # API contractsContributing
Contributions are welcome! Please read CLAUDE.md for project patterns and conventions.
Development Workflow
- Make changes following FORGE patterns
- Run tests:
npm test - Build:
npm run build - Commit:
type(scope): description - Push: PR review required
License
MIT © Alzarak
Links
- Documentation: CLAUDE.md
- Requirements: REQUIREMENTS.md
- Roadmap: ROADMAP.md
- Issues: GitHub Issues
Built with ❤️ by the FORGE Agent Team