Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Run parallel, resumable, human-operable Antigravity CLI sessions from any MCP agent harness
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
AGY_CMDต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"codex-agy-bridge": {
"command": "uvx",
"args": [
"codex-agy-bridge"
],
"env": {
"AGY_CMD": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add codex-agy-bridge --env AGY_CMD='ใส่ค่าของคุณ' -- uvx codex-agy-bridgeเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"codex-agy-bridge": {
"command": "uvx",
"args": [
"codex-agy-bridge"
],
"env": {
"AGY_CMD": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"codex-agy-bridge": {
"type": "stdio",
"command": "uvx",
"args": [
"codex-agy-bridge"
],
"env": {
"AGY_CMD": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
AGY_CMD envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub varadfromeast ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.12) เข้า registry 2 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, sync. labs
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
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.
Lipsync videos, dub them into other languages, make talking videos and open sync. Studio.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Run Antigravity from an agent harness as durable, parallel, human-operable agy sessions over MCP.
codex-agy-bridge wraps the official Antigravity CLI with a resumable MCP control plane. Agent harnesses like Codex, Claude Desktop, or your own GPT/Claude-powered MCP client can start agy runs, wait on sparse events, attach a real terminal, send guarded input, cancel safely, continue exact conversations, and collect final results later by run_id.
Prerequisites:
agy), already authenticated locallyuv / uvxtmux and a supported terminal launcher:# macOS
brew install tmux
sudo apt install tmux gnome-terminal
Check the required commands:
codex --version
agy --version agy models uvx --version tmux -V
agy --version only proves the binary exists. Before adding the MCP server, run agy models; if Antigravity asks you to sign in or reports that you are not logged in, start a visible session and complete the browser/login flow:
agy --prompt-interactive "Authenticate Antigravity and then exit."
agy models
After agy models succeeds, install or restart the MCP server. If a bridge run still hits auth, agy_run_start returns status="auth_required" and opens a visible agy authentication session by default. Complete sign-in there, then start a fresh run. You can also use agy_run_observe(view="terminal") or agy_admin(action="doctor") to inspect the auth-required status.
Install from PyPI with the Codex CLI:
codex mcp add codex-agy-bridge \
--env AGY_CMD="$(command -v agy)" \ -- "$(command -v uvx)" codex-agy-bridge@latest
Restart the harness, then verify in Codex if you used the command above:
codex mcp get codex-agy-bridge
codex mcp list
Remove it with:
codex mcp remove codex-agy-bridge
For Claude Desktop or a custom MCP client, use the same stdio command shape: uvx codex-agy-bridge@latest with AGY_CMD set to the authenticated agy executable.
agy runs, each with its own durable state, logs, transcript projection, and result.tmux sessions, so Terminal.app can attach without killing the agent.run_id.agy_run_wait short-polls lifecycle, attention, progress, and terminal events without transcript-polling spam.agy_run_input can reject stale writes when event or transcript cursors changed after the caller observed the run.Help the user install it; do not silently mutate their machine.
command -v codex
command -v agy command -v uvx command -v tmux agy --version agy models
agy models reports an auth error, help the user complete the Day 0 authentication flow above before adding the MCP server.codex mcp add codex-agy-bridge \
--env AGY_CMD="$(command -v agy)" \ -- "$(command -v uvx)" codex-agy-bridge@latest
codex mcp get codex-agy-bridge
codex mcp list
The Quick Install command stores an stdio MCP server definition. When the agent harness starts the server, uvx resolves codex-agy-bridge@latest from PyPI, installs it into an isolated cached environment, and runs the codex-agy-bridge console script. AGY_CMD pins the bridge to the user's already-installed and authenticated agy executable.
Do not replace $ or $(...) manually in the command. In POSIX shells, $(command -v agy) and $(command -v uvx) expand to absolute executable paths.
Use this when you want the repository version directly:
codex mcp add codex-agy-bridge \
--env AGY_CMD="$(command -v agy)" \ -- uvx --from git+https://github.com/varadfromeast/codex-agy-bridge \ codex-agy-bridge
git clone https://github.com/varadfromeast/codex-agy-bridge.git
cd codex-agy-bridge uv sync --extra dev
codex mcp add codex-agy-bridge \ --env AGY_CMD="$(command -v agy)" \ -- uv --directory "$PWD" run codex-agy-bridge
flowchart LR
H["Agent harness (Codex, Claude, custom MCP client)"] M["codex-agy-bridge MCP stdio server"] S["Durable control plane runs, goals, events, results"] W["Detached run supervisor"] A["Antigravity CLI agy"] T["Persistent tmux session human attach/input"] L["Local Antigravity trajectory files"]
H <-->|"MCP tools"| M M <--> S S --> W W --> A W <--> T A --> L W -->|"bounded transcript projection"| S T -->|"terminal logs and attention prompts"| S
The bridge keeps the MCP server responsive while detached supervisors own the long-running agy processes. State and events are persisted locally, so a run can continue after the original MCP call returns. For the deeper process model, see docs/ARCHITECTURE.md. For the MCP control-loop vision, see docs/MCP_VISION.md.
| Tool | Purpose |
|---|---|
agy_run_start | Start, continue, or open an interactive foreground run |
agy_run_wait | Short-poll until selected runs emit sparse wake events |
agy_run_observe | Read full, status, transcript, or raw terminal views |
agy_run_input | Send input with optional event/transcript preconditions |
agy_run_cancel | Cancel one active run |
agy_run_result | Read final result metadata or bounded result chunks |
agy_goal | Create goals, start targets, and read aggregate status |
agy_admin | Read diagnostics, models, plugins, validation, and changelog |
Omit model (or pass null) to let Agy choose its default: the bridge stores model: null and does not send --model. This applies to runs, review tools, and goals, whose targets inherit their goal's selection. Explicit selections are validated against agy models, including the bridge's former Gemini 3.5 Flash (Medium) default; unknown and empty selections are rejected. The bridge never substitutes the first catalog entry. agy_admin(action="models") reports default_model: null and default_model_source: "agy_cli"; this describes delegation, not an observed effective provider model.
Existing persisted runs and goals retain their model strings and remain readable. They are not silently migrated to a different model. New launches from an old goal revalidate its selection and reject it if it is no longer available; create a new goal with an available model or omit the selection to delegate to Agy. Previously reserved runs retain their original command policy. New delegated requests have distinct deduplication keys from explicitly selected models. Older bridge versions that require a string goal model cannot read new null-model goals; avoid downgrading with those goals in use.
Typical flow:
agy_run_start -> agy_run_wait -> agy_run_observe -> agy_run_result
In Codex MCP, tools may be exposed with the server prefix, for example codex_agy_bridge_agy_run_wait. Run responses include exact wait_call arguments; note that agy_run_wait always takes run_ids: ["..."], even for a single run. Supported wait conditions are any_attention, any_terminal, all_terminal, any_event, and aliases attention, terminal, finished, finish, complete, completed, result, all_finished, all_complete, and all_completed.
Use agy_goal when the harness should split work into named targets with a shared objective and bounded parallelism.
| Variable | Default | Purpose |
|---|---|---|
AGY_CMD | agy on PATH | Exact Antigravity executable |
AGY_BRIDGE_STATE_DIR | ~/.local/state/codex-agy-bridge | Durable run and goal state |
AGY_BRIDGE_AGY_ROOT | ~/.gemini/antigravity-cli | Antigravity conversations and trajectories |
AGY_BRIDGE_MAX_PARALLEL | 50 | Global concurrent-run limit |
AGY_BRIDGE_COMPLETION_STABILITY_SECONDS | 150 | Time a final marker must remain stable |
AGY_BRIDGE_MCP_WAIT_SLICE_SECONDS | 120 | Max seconds a single agy_run_wait MCP call blocks before returning a snapshot so gateways do not time out |
Run state survives MCP server restarts under ~/.local/state/codex-agy-bridge/.
This project is experimental. It currently targets Python 3.11+, macOS or Linux with a supported terminal launcher, tmux, and Antigravity CLI 1.0.8-compatible commands and trajectory files.
Antigravity is an agentic CLI. It can read and write files, execute commands, and access the network with the current user's privileges. This bridge is not a sandbox or security boundary.
The bridge always enables Antigravity's dangerous permission-skip policy so unattended runs do not stall on CLI approval prompts. Any dangerously_skip_permissions=false input is rejected; the only allowed value is true. sandbox=true and additional_directories are CLI policy hints, not filesystem containment.
The bridge does not read or copy Antigravity OAuth credentials. It invokes the installed agy binary and reads ordinary local conversation metadata and trajectory files.
git clone https://github.com/varadfromeast/codex-agy-bridge.git
cd codex-agy-bridge uv sync --extra dev uv run pytest uv run ruff check . uv build
Run the server directly:
uv run codex-agy-bridge
The server uses stdio transport. Do not print diagnostic text to stdout; it would corrupt MCP framing.
A pushed version tag runs .github/workflows/publish.yml, which verifies versions, runs checks, builds distributions, publishes to PyPI through GitHub OIDC, creates a GitHub release, and publishes server.json to the MCP Registry.
The current reader expects Antigravity trajectory JSONL under:
~/.gemini/antigravity-cli/brain/<conversation-id>/
.system_generated/logs/transcript.jsonl
If Antigravity moves to SQLite or a local daemon API, a new adapter can replace this reader without changing the MCP tool contract.
MIT