Right agent, right stage
Assign different executors per role: Codex to code, Claude to review, a lighter model to triage. Each role gets its own model and prompt template — no more one-agent-does-everything.
Forge is a self-hosted workflow engine for coding agents. Instead of pointing one agent at a repo and hoping for the best, you describe the stages of your work — plan, code, review, merge — and assign a different agent, model, and prompt to each one. Forge owns the handoff between them.
Concretely, that means you can:
Each task runs in its own git worktree, hits the gates you defined, and merges only
after they pass. You drive the whole thing from a REST API, an MCP endpoint, the
forge-ctl CLI, or the built-in web UI on 127.0.0.1:8080.
Right agent, right stage
Assign different executors per role: Codex to code, Claude to review, a lighter model to triage. Each role gets its own model and prompt template — no more one-agent-does-everything.
Isolated worktrees
Every task runs in its own git checkout with file-locking and path guardrails. Agents can’t step on each other; you can throw work away cleanly.
Gates between stages
Declare CI steps, reviewer agents, or human approval at any state in the workflow. Nothing moves to the next stage — or to merge — until the gate passes.
Self-hosted, MIT
Run Forge in your own environment. SQLite + WAL, no accounts, no telemetry, no SaaS — your code never leaves your infrastructure.
A Forge project has a workflow (the stages), a set of agents (executor +
model + prompt, bound to a daemon), and tasks that flow through the workflow.
At each stage, the workflow’s role (planner, coder, reviewer, …) is matched
to an agent you’ve registered for that role. Swap the agent and you swap who does
that stage — without touching the task or the rest of the pipeline.
That’s the whole pitch: workflows hold the shape of the work, agents hold the expertise, and Forge keeps them from stepping on each other.
forge_* MCP tools.