Skip to content
ForgeAILabPublic

About

AI coding agent workflow engine for structured task lifecycles.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

28 stars

Watchers

0 watching

Forks

Latest commit

 

History

1,548 Commits

Folders and files

Repository files navigation

Forge

Make multiple coding agents collaborate on one repo — without stepping on each other.

CI Release npm License: MIT Status: public beta

Forge hosts durable embedded assistants and task-scoped coding agents in one local control plane. Talk to one global Main Agent, hand approved context to one Project Agent per Project, and keep each chat's continuity without granting repository access outside an admitted Task. Every standalone coding Task still gets an isolated git worktree, CI gate, and review before changes touch main; ordered child Tasks run serially in their coordination root's shared worktree. REST, MCP, CLI, and web UI ship in one self-hosted binary.

Quickstart · Why Forge · Docs · Changelog · Contributing


Why Forge

Running two coding agents against the same repo is how you lose diffs. Forge fixes that: standalone tasks run in their own git worktrees, while ordered child tasks share a coordination root's worktree and run serially; every task hits your CI gate and waits for review before it merges. Agents collaborate; they don't collide.

  • Isolated delivery worktrees — standalone Tasks get their own worktree; ordered child Tasks run serially in their coordination root's shared worktree, so agents do not overwrite each other or pollute your main checkout.
  • Main Chat and Project Agent Chats — one global discovery timeline and one durable conversation per Project; the agent creates tasks and shapes Project records directly from chat, and Main-to-Project handoffs stay explicit and provenance-linked.
  • Persistent embedded identities — use Agent Settings for API keys, guided provider login, and exact CLI runtimes. Any enabled configured Agent can serve as Main, Project, Worker, or reviewer—including the same Agent in multiple roles—while each turn or Task still receives only its scoped permissions.
  • Mission Control — inspect attention, commitments, current scope, health, and recent outcomes without opening a wall of runtime logs.
  • Review that follows the Task — define ci_steps per Task and choose Agent review, no review, or human-required review. Human-required review can be accepted or rejected by the user or the bound Project Agent.
  • Structured task lifecycle — todo → in_progress → review → merging → done, with an audit log and explicit cancellation paths so handoffs between agents (and humans) are legible.
  • BYO agent — first-class adapters for Claude Code, Codex, Cursor, Gemini, opencode, Smith, and a generic shell executor. Add your own with a small adapter.
  • One binary, every surface — REST API, MCP JSON-RPC, forge-ctl CLI, and a React web UI ship together. Drive Forge from a script, an editor, or a browser.
  • Local-first by default — single binary, SQLite, loopback-only server with a persisted local port. No telemetry, no SaaS, your data stays on disk.

Who it's for

  • Developers already running more than one coding agent (Claude Code + Codex, Cursor + Gemini, …) who keep losing diffs to branch collisions or shared-tree edits.
  • Small engineering teams piloting agent workflows who need worktree isolation, audit trails, and a review gate before code lands on main.
  • Builders who want a local, hackable control plane for AI coding work — not another hosted dashboard.

If you only want an unscoped chat UI bolted onto your editor, Forge is not for you. Forge is built around durable identity, explicit authority, delivery evidence, and gated repository work.

5-minute quickstart

# Run instantly through npm (macOS / Linux)
npx @forgeailab/forge --demo

# Install via Homebrew (macOS / Linux)
brew install forgeailab/tap/forge

# Or grab the latest release directly
curl -fsSL https://raw.githubusercontent.com/ForgeAILab/forge/main/install.sh | bash

# Start the server with seeded demo data if you installed it locally
forge --demo

Open the management_url printed in the server logs. That's it — you should see a demo project with a labelled task and a fake daemon report. From here:

Working in one checkout from a terminal? Open the Kanban-first Forge Solo.

Prefer to build from source? cargo run -p forge-cli -- --demo.

Running a public demo instance, and the pull-request check that tests it → docs/demo-instance.md.

Live demo

https://forge.oc.mai1015.com — a throwaway Forge instance with a seeded Demo project (14 tasks across every state). Register an account to look around. Its data lives in memory and is wiped on every redeploy. In demo mode the server runs no command from user configuration and no agent of its own; see what a visitor can and cannot do.

Every pull request builds a fresh demo image, deploys it to that URL, waits until the exact build is serving, and runs a TestSprite browser suite against it. The check passes only when that build is live and the suite passes. The suite covers:

Area Tests
Task detail (open, edit title and description, priority, Escape, full page) 10
App shell and navigation (sidebar, brand, project switcher, theme, account menu) 8
Kanban board (create, move, search, filter, card actions) 7
Project settings (general, repositories, members, workflow, analytics, MCP) 6
Account pages (profile, settings, access tokens, usage) 4
Tasks table (open, sort, filter, combined filters) 4
Project overview (counts, charter state, chat entry points) 4
Task creation (board dialog, quick create, task types) 4
Task comments and task status moves 6

How it is wired → docs/demo-instance.md.

Core concepts

Forge kanban board showing tasks across backlog, todo, in_progress, review, and done columns
Concept What it is
Agent identity A durable account-owned agent with immutable selectable provider/CLI profiles.
Main Agent The account's single global assistant for discovery, Project lifecycle, bounded summaries, and explicit handoff.
Project A workspace grouping repos, Tasks, one Project Agent Chat, and a workflow definition.
Project Agent The single persistent manager for a Project; it manages Tasks only through the Project workflow.
Project Charter The user-approved, revisioned source of Project identity, scope, constraints, success, and unresolved knowledge.
Agent Chat The immutable, scope-isolated timeline for the Main Agent or one Project Agent.
Repo A pointer to a local git checkout that tasks operate on.
Task A unit of agent work with a state, optional CI steps, and an audit log.
Milestone / release An outcome contract with evidence-backed readiness and an immutable Mxxx-rN Forge snapshot.
Evidence Project-authorized image, video, or report metadata that can reuse Task media and survive release pinning.
Daemon The local process that reports installed CLIs and runs executions.
Worktree An isolated git checkout for standalone Tasks; ordered children reuse their coordination root's root-owned checkout, cleaned up when that root is done/cancelled.
Review mode Agent review, no review, or human-required review layered on the Task workflow and CI checks.
Task detail page with status, assignees by role, observability metrics, and lifecycle actions Daemon detail showing auto-detected CLIs: codex, claude_code, cursor, gemini, opencode, shell
Task detail — lifecycle, role assignments, CI/review gate, audit log Daemon — auto-detects installed CLIs on the host (Claude Code, Codex, Cursor, Gemini, opencode, shell)

Deeper dive → docs/architecture.md.

Documentation

Doc What's in it
Getting started Install, first project, agents, end-to-end task walkthrough.
Architecture Authority model, Project truth, milestones/evidence, crate graph, task state machine, database, event bus.
API reference Charter/Project/Document/Milestone/Release REST endpoints, media retention, pagination, MCP tools, SSE.
forge-ctl CLI Subcommands, daemon link, scripted runs.
Execution logs JSONL log schema and chat-history reconstruction.
Changelog Per-release changes and breaking notes.

Status

Forge is in public beta (0.1.x). The local-first single-user product is usable end-to-end, but APIs, schemas, and CLI flags can change without deprecation cycles. The Main/Project Agent Chat model described above is the approved replacement surface currently being implemented; its data-preserving migration starts at V071+. Check CHANGELOG.md for the visible breaking transition before building against collaboration APIs. Track breaking changes in CHANGELOG.md. A stable 1.0 will land once the workflow engine, multi-user story, and release artifacts (signing, SBOMs, Homebrew, Windows builds) are finalized.

Contributing

Issues, PRs, and design discussion are welcome. Start with CONTRIBUTING.md and check good first issue and help wanted labels. By participating you agree to the Code of Conduct.

Security

Please report vulnerabilities privately per .github/SECURITY.md.

License

MIT © Forge contributors.

About

AI coding agent workflow engine for structured task lifecycles.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

28 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages