Open source · MIT license
Write a markdown spec. Run forge build.
Specialized agents collaborate through structured API contracts, run in
parallel, and self-correct when the reviewer finds issues.
How it works
No prompt engineering. No copy-pasting. Describe what you want and run one command.
Install Forge, pick a template, and get a project directory with a pre-configured .forge/ folder.
Edit .forge/spec.md in plain English. Describe what the app does, its features, stack preferences, and non-goals.
Run forge build. The pipeline plans, assigns agents, writes files, and runs a review pass with auto-fix.
Agent pipeline
Agents share structured API contracts and full code through a thread-safe artifact bus. The reviewer sends fixes back to the specialist that wrote the file.
.env, or embed eval(). All decisions are logged.
| Agent | Responsibility |
|---|---|
| project-managernew | Takes the planner's task list and writes a precise, self-contained prompt for each agent — with stack context, files to generate, and API contracts. |
| planner | Reads spec and rules, decides tech stack, breaks the project into 3–8 ordered tasks. Avoids ORMs and TypeScript unless explicitly requested. |
| backend | Generates FastAPI routes, SQLite models (raw SQL), Pydantic schemas, service layer. Publishes structured API contracts (endpoints, schemas, auth) to the ContractRegistry. |
| frontend | Reads structured contracts from the registry + backend code from the ArtifactBus. Generates React + Vite pages that match backend endpoints exactly. |
| security | Reads all code from the ArtifactBus (not just filenames). Audits against OWASP Top 10, checks auth coverage via contracts. Patches files in place. |
| ci | Generates GitHub Actions workflows, Dockerfile, and docker-compose based on the project's stack. |
| deploy | Generates Railway, Render, Vercel, or Fly.io configuration from stack decisions. |
| reviewer | Reads all code from the bus. Runs automated contract validation (frontend vs backend). Routes fixes back to the original specialist agent — not a generic coder. One retry per file. |
Templates
Each template ships with a pre-filled spec, build rules, and a firewall policy for its stack.
| web-app | React + Vite, FastAPI, SQLite, Tailwind |
| api-only | FastAPI, Pydantic, SQLite — no frontend |
| ai-app | React + FastAPI with OpenAI or Anthropic |
| chrome-ext | Chrome Manifest V3, vanilla JS or React |
| cli-tool | Python CLI, Click or Typer, Rich output |
| data-viz | Streamlit or React with Plotly / Recharts |
| slack-bot | Python, slack-bolt, FastAPI handler |
| discord-bot | Python, discord.py, slash commands |
Features
Forge treats building software as a process, not a single LLM call.
Backend publishes machine-readable endpoint schemas. Frontend consumes them. No more POST /api/users vs POST /users mismatches. Contracts persist to .forge/contracts.json across builds.
Independent agents (backend, CI, deploy) run concurrently via a dependency-aware scheduler. Both classic and ADK modes.
Reviewer finds a bug in your backend? The fix goes to the backend agent — not a generic coder. One retry per file, tracked for observability.
Anthropic, OpenAI, Together, Groq, or local Ollama. Set an env var, switch with --provider.
Add to an existing project. Contracts from previous builds are loaded so new code knows what endpoints exist.
State saved after every task. forge agents start exposes each agent as an HTTP A2A server on ports 8101–8108.
Core install needs only pyyaml. LLM providers and ADK mode are optional extras.