Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
제작자가 쓴 설명(영어 원문)
Forge orchestrator MCP server for Claude Code (alpha). Codex/Gemini runners are not in the alpha.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
링크는 제작자의 파일로 바로 연결돼요. 우리가 보관하거나 다시 패키징하지 않아요. 파일을 열면 Claude Desktop이 설치해요.
터미널에서 이 명령어를 실행하세요
브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
레지스트리 이름이 GitHub 계정 nxtg-ai 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(1.8.0)은 어제 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 MCPB도 있어야 해요.
같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, Master CSS
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Inspect Master CSS classes, generated CSS, and project stylesheets from your AI client.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
Stage: Alpha. The Forge plugin and orchestrator are in alpha. On 2026-10-15 (UTC) a separate NXTG.AI team (product-oracle) ran the pre-registered core-job test on a clean install of the plugin (v3.14.0) and the orchestrator (forge 1.7.0). The test passed; each repeated check passed 3 of 3 (run 7). The evidence is attached to the forge-plugin v3.14.0 release. No SLA; interfaces may change without notice.
Orchestration for Claude Code on shared repos, with Codex CLI and Antigravity CLI (`agy`) as task runners — single Rust binary, zero deps.
Multi-agent inside a single tool works fine. Claude Code runs 20 subagents and they stay aligned because the tool manages that orchestration internally. The problem is multi-tool: several AI coding tools on the same repo with no shared state. That's what the orchestrator solves: today for Claude Code, with Codex CLI and Antigravity CLI (agy) as task runners. The orchestrator launches agy as a task runner; Forge makes no other claim about agy.
It adds file locking, knowledge capture, task planning, drift detection, and multi-tool orchestration to your development workflow. The tools read from and write to a single state directory. A 12-tool MCP server exposes the full orchestration state to any connected AI client, and can create, claim and complete tasks.
The orchestrator exists because I ran two AI tools on the same codebase and watched them fail in the same ways human teams fail. Claude refactored a module. Codex updated tests against the pre-refactor interface. Both saved. Tests failed. Neither tool knew the other existed. I'd spent 23 years watching this exact scenario with talented human teams. The solution was always the same: orchestration infrastructure.
curl -fsSL https://forge.nxtg.ai/install.sh | sh
export PATH="$HOME/.local/bin:$PATH" # this shell only; new shells already have it forge init
The installer installs Forge v1.8.0, the pinned release, not whichever release is newest. It puts forge in ~/.local/bin (change it with FORGE_INSTALL_DIR) and adds that directory to your PATH with one guarded line in ~/.profile, ~/.bashrc and, if you have zsh, ~/.zshenv. Set FORGE_NO_MODIFY_PATH=1 to leave your shell files alone.
If the claude CLI is on your PATH, the installer then adds forge's MCP tools to Claude Code, using only that CLI: it adds and refreshes the nxtg-forge marketplace (nxtg-ai/forge-plugin), updates nxtg-forge@nxtg-forge if you already have it, and installs the companion plugin nxtg-forge-orchestrator@nxtg-forge. It prints one line per change and changes no Claude configuration any other way. Without claude, or if a step fails, it prints the commands for you to run and still exits 0. Set FORGE_NO_CLAUDE_PLUGIN=1 to skip it.
Single binary. No runtime dependencies.
Register the orchestrator's MCP server with Codex CLI, then check that Codex lists it:
codex mcp add forge -- forge mcp
codex mcp list
This writes the entry to ~/.codex/config.toml:
[mcp_servers.forge]
command = "forge" args = ["mcp"]
The server works on the project in the directory it starts in. To pin one project, bind it when you register: codex mcp add forge --env FORGE_PROJECT_ROOT=/path/to/project -- forge mcp. Checked with codex-cli 0.162.1: codex mcp list shows forge enabled over stdio, and the server answers tools/list with its 12 tools. A tool call made through this registration from inside a Codex session has not been measured.
Four commands from zero to task board:
# 1. Initialize — creates .forge/ directory with state, event log, knowledge base
forge init
forge config brain openai
forge plan --generate
forge status
From here you can:
forge run — execute tasks headlessly (autonomous mode, great for CI)forge dashboard --pty — launch the TUI dashboard with interactive agent panesFrom a 94-line specification, an earlier version of the orchestrator coordinated three AI coding tools to build a complete CLI toolkit. That run drove the retired Gemini CLI; since v1.6.1 the adapter launches Antigravity CLI (agy) instead, and the run has not been re-measured.
SPEC.md (94 lines) → forge plan --generate → 15 tasks
Claude Code: 6 design tasks → completed Codex CLI: 6 implementation → completed Gemini CLI: 3 test/doc tasks → completed (pre-1.6.1 adapter)
Result: 5,306 lines of working code 10 auto-committed git entries 13 Python files (CLI + tests) Zero file conflicts
Three companies. Three tools. One orchestrator. One command:
forge dashboard --pty
| Feature | What It Does |
|---|---|
| File locking | A task names the files it touches; a claim through MCP or forge run --task … --agent … is refused while another task holds one of them |
| Knowledge flywheel | Captures decisions, patterns, learnings across tools. Auto-classified and searchable. |
| Plan generation | forge plan --generate decomposes specs into dependency-aware task graphs |
| Drift detection | Compares completed tasks against SPEC.md. Needs the openai brain; the default rule-based brain does not score drift |
| Task board | Dependency-tracked tasks, tool assignment, progress monitoring |
| Multi-tool adapters | Claude Code (MCP stdio); Codex CLI and Antigravity CLI (agy) as task runners (filesystem). Codex CLI can also register the MCP server (see below) |
| TUI dashboard | forge dashboard: live tool panes, task status, lock state |
| Headless mode | forge run: autonomous execution for CI/CD pipelines |
| MCP server | 12 tools accessible by any connected AI tool via stdio, including forge_create_task |
forge init # Initialize Forge in a project
forge plan --generate # Generate task plan from spec forge dashboard # Live TUI dashboard forge dashboard --pty # TUI with interactive agent panes (Stargate) forge run # Headless autonomous mode forge status # Current state summary forge verify # Create verify tasks for completed build tasks forge uat # Interactive UAT test runner forge ship # Ship phase: changelog, archive, clean state for the next cycle
Every command and its options, as the binary prints them. CI regenerates this block from forge --help and fails if it differs:
$ forge --help
Forge orchestrates Claude Code on shared repos, with Codex CLI and Antigravity CLI (agy) as task runners: file locking, knowledge capture and a shared task board.
Usage: forge [OPTIONS]
Commands: init Initialize Forge in a project — scaffold .forge/, detect AI tools plan Show or generate the master plan status Show orchestration status — task board, agent activity, governance run Execute tasks headlessly. Omit --task/--agent for autonomous parallel mode start Start autonomous orchestration — run all tasks with auto-claim/complete sync Reconcile state — update summaries, render adapter configs, check governance mcp Start the MCP server (stdio transport) — AI tools connect to query/update state dashboard Live TUI dashboard — task board, agent output, event log doctor Aggregate health verdict — quality, release debt, and drift in one fail-closed exit code pod Declarative tmux pod management — start, stop, and recover multi-pane agent pods verify Generate verify subtasks for completed build tasks uat Interactive UAT — describe issues naturally, capture findings ship Ship phase — generate changelog, archive artifacts, clean state for next cycle uninstall Uninstall Forge — remove binary and optionally project data config Get or set configuration values help Print this message or the help of the given subcommand(s)
Options: --project Path to the project root (defaults to current directory)
[default: .]
-h, --help Print help (see a summary with '-h')
-V, --version Print version
<!-- forge-help:end -->
Since v1.8.0, the crate also builds a library, forge_orchestrator, for tools that read or write a project's .forge/ directory without running forge. Its documented surface is forge_orchestrator::core: project state and file locks, tasks, the event log, the knowledge base and the plan. The rest of the crate is the binary's internals, hidden from the docs. Like the binary, the library is alpha, and its API may change.
[dependencies]
forge-orchestrator = "1.8" # the first version with the library
use forge_orchestrator::core::task::{Task, TaskManager};
let tasks = TaskManager::new(".forge"); tasks.create_task(&Task::new("T-001", "Parse the config", "Read forge.toml into Config"))?; for task in tasks.list_tasks()? { println!("{} {:?} {}", task.id, task.status, task.title); }
API docs: https://docs.rs/forge-orchestrator. To build them locally: cargo doc --open in a checkout.
Runnable examples, run in CI against the built binary:
examples/task_board.rs: print a project's task board from .forge/.examples/capture_knowledge.rs: capture a decision and list that category.examples/mcp_stdio.rs: talk to forge mcp as an MCP client: initialize, list the 12 tools, create a task.cargo build && cargo run --example mcp_stdio -- target/debug/forge /tmp/demo
cargo run --example task_board -- /tmp/demo
The orchestrator holds Forge's shared state: tasks, file locks, knowledge and the event log. The plugin (L1: Vibe Coder) adds Claude Code commands, skills and hooks, and its guard hooks run inside Claude Code. The UI (L3: Ship Lord) is a separate React dashboard.
┌──────────────────────────────────────┐
│ forge-orchestrator │ │ (Rust) │ │ │ │ File locking · Task planning │ │ Knowledge · Governance · MCP │ │ Multi-tool adapters │ │ │ │ Shared state lives here. │ │ Guard hooks live in forge-plugin. │ └───────────┬──────────────────┬───────┘ │ │ ┌──
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요