GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
作者提供的说明(英文原文)
Hand off coding tasks from ChatGPT, Codex or Claude Code to local Oh My Pi (OMP) workers.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
OMP_WORKER_OMP_COMMAND, OMP_WORKER_ALLOWED_ROOTS你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"omp-worker": {
"command": "npx",
"args": [
"-y",
"omp-worker-mcp"
],
"env": {
"OMP_WORKER_OMP_COMMAND": "your-value",
"OMP_WORKER_ALLOWED_ROOTS": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add omp-worker --env OMP_WORKER_OMP_COMMAND=your-value --env OMP_WORKER_ALLOWED_ROOTS=your-value -- npx -y omp-worker-mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"omp-worker": {
"command": "npx",
"args": [
"-y",
"omp-worker-mcp"
],
"env": {
"OMP_WORKER_OMP_COMMAND": "your-value",
"OMP_WORKER_ALLOWED_ROOTS": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"omp-worker": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"omp-worker-mcp"
],
"env": {
"OMP_WORKER_OMP_COMMAND": "your-value",
"OMP_WORKER_ALLOWED_ROOTS": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
OMP_WORKER_ALLOWED_ROOTS env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 divenire990 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:OMP_WORKER_OMP_COMMAND
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.2.1)于14天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:GitHub, Desktop Commander, Cloudflare MCP
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Let your main AI agent plan and review — and hand the hands-on coding to local [Oh My Pi](https://github.com/can1357/oh-my-pi) workers.
An MCP server that turns ChatGPT, Codex, Claude Code, Cursor and other MCP clients into a *supervisor*,
and Oh My Pi (OMP) on your own machine into its background *workforce*.
English · 简体中文 · Documentation
Quick start · Usage · Tools · Configuration · Safety model · FAQ
Most coding agents do everything in one place: read the code, plan, edit, run tests, fix — all inside one conversation and one model's budget. omp-worker-mcp splits that work into two roles:
| Role | Who | Responsibility |
|---|---|---|
| Supervisor | The agent you talk to: ChatGPT, Codex, Claude Code, Cursor… | Understands the request, splits the work, writes acceptance criteria, reviews the results |
| Worker | The OMP CLI on your machine, using the model you picked in omp setup | Reads files, edits code, runs shell commands and tests, reports back |
omp-worker-mcp is the bridge between them. It gives the supervisor a small set of MCP tools, starts OMP in the background, keeps every job on disk, and returns a short structured report instead of a wall of logs.
Highlights
omp_run_compact delegates a single task; omp_run_batch_compact runs up to 50 tasks as a dependency graph (DAG), up to 10 at a time.OMP_WORKER_RESULT envelope: status, summary, changed files, verification evidence and remaining items.omp_continue sends feedback to the *same* OMP session, so the worker keeps its context.OMP_WORKER_ALLOWED_ROOTS, available since 0.2.0; npm 0.1.1 lacks this feature) for the directories jobs may run in.A good fit when
Probably not worth it when
You need: Node.js ≥ 22 · Oh My Pi installed · an MCP client (Codex, Claude Code, Cursor, ChatGPT, …).
Install OMP by following its official instructions, then:
omp --version # confirm the CLI is on your PATH
omp setup # sign in and choose the default model
The default model you pick here is the model every worker will use. (Advanced: set modelRoles.default: / in ~/.omp/agent/config.yml.)
If
ompis not on yourPATH, setOMP_WORKER_OMP_COMMANDto the full path of the executable in the MCP config below.
There is nothing to install globally — the client runs the published package with npx -y omp-worker-mcp. Pick your client:
Codex — the author's daily setup
Edit ~/.codex/config.toml (Windows: C:\Users\ \.codex\config.toml):
[mcp_servers.omp-worker]
command = "npx" args = ["-y", "omp-worker-mcp"]
[mcp_servers.omp-worker.env] OMP_WORKER_OMP_COMMAND = "omp"
[features.code_mode] direct_only_tool_namespaces = ["mcp__omp_worker"]
*(If [features.code_mode] already exists in your config.toml, merge into that table and append "mcp__omp_worker" to direct_only_tool_namespaces rather than duplicating the table or overwriting existing entries. Legacy Codex builds used a top-level direct_only_tool_namespaces = ["mcp__omp_worker"] key before any [table] header. Neither setting is required to register the MCP server; see Codex direct namespace setup and the official Codex Config Reference.)*
ChatGPT (web) — via Secure MCP Tunnel
Version requirement (`>= 0.2.0`):
OMP_WORKER_ALLOWED_ROOTSis available sinceomp-worker-mcp0.2.0(historical npm0.1.1lacks this feature and does not enforceOMP_WORKER_ALLOWED_ROOTS). Confirmnpx -y omp-worker-mcp@latest --versionreports0.2.0or newer before exposing local execution remotely.
Run the server locally behind OpenAI's tunnel-client; your machine only makes outbound connections.
export OMP_WORKER_OMP_COMMAND=omp
export OMP_WORKER_ALLOWED_ROOTS='["/Users/you/Projects"]' # strongly recommended for remote access (available since 0.2.0; 0.1.1 lacks this feature) export CONTROL_PLANE_API_KEY=' '
tunnel-client init \ --sample sample_mcp_stdio_local \ --profile omp-worker \ --tunnel-id \ --mcp-command "npx -y omp-worker-mcp"
tunnel-client doctor --profile omp-worker --explain tunnel-client run --profile omp-worker
Windows PowerShell commands, 0.1.1 upgrade / local-build notes, managed runtime alternatives (tunnel-client runtimes connect), permission requirements and the full trust boundary: ChatGPT Secure MCP Tunnel guide.
Claude Code
claude mcp add omp-worker --scope user --env OMP_WORKER_OMP_COMMAND=omp -- npx -y omp-worker-mcp
Use --scope project to register it for the current project only. On Windows cmd.exe, if npx fails to resolve, use cmd /c npx.
Cursor · VS Code / Copilot · Windsurf · Continue · any JSON-config client
{
"mcpServers": { "omp-worker": { "command": "npx", "args": ["-y", "omp-worker-mcp"], "env": { "OMP_WORKER_OMP_COMMAND": "omp" } } } }
File locations and client-specific notes: Client configurations.
Restart the client after changing its config.
Registering the server makes the tools *available*; it does not make the agent *choose* them. Add a short policy to your project's instruction file — AGENTS.md (Codex), CLAUDE.md (Claude Code), .cursorrules / .github/copilot-instructions.md (others) — or to ChatGPT's project instructions:
## Delegation policy (omp-worker-mcp)
omp_run_compact, giving a clear goal and acceptance criteria.omp_run_batch_compact. Parallel write tasks need disjoint ownership; tasks touching the same files must be ordered with depends_on.omp_continue with specific feedback.git push, publishing, deployments or secret changes — confirm those with the user.
A fuller template: Author workflow → Policy template.
Start with something read-only:
Use omp-worker-mcp to do a read-only inspection of this workspace: summarize the
project structure and dependencies. Do not modify any files.
What you should see: the agent calls omp_run_compact, OMP works in the background, and a short summary comes back with no files changed. If the job runs longer than the wait window (60 s by default), the call returns a job_id with status running and the agent keeps going with omp_wait — that is normal.
Once the policy is in place you can just describe the outcome you want. The examples below show what the supervisor sends under the hood.
*"Add exponential backoff to the HTTP client in
src/net/, cover it with unit tests, and make surenpm testpasses."*
// omp_run_compact
{ "cwd": "/path/to/repo", "goal": "Add exponential backoff (max 5 retries) to src/net/client.ts for 5xx and network errors.", "acceptance": [ "Unit tests cover the retry and give-up paths", "npm test passes" ], "timeout_minutes": 30 }
What comes back is compact (abridged example):
{
"job_id": "job-…", "status": "completed", "attempt": 1, "max_attempts": 3, "session_id": "sess-…", "summary": "Added retry with exponential backoff to the HTTP client.", "artifacts": [ { "path": "src/net/client.ts", "description": "retry loop + backoff helper" }, { "path": "test/net/client.test.ts", "description": "retry / give-up tests" } ], "verification": ["npm test: all tests passed"], "remaining": [], "details_path": "…/jobs/job-…/job.json" }
*"Add a
/healthendpoint to the API and a status badge to the UI in parallel, then add an integration test that covers both."*
graph LR
api["api · write src/api/"] --> tests["tests · write tests/"] ui["ui · write src/ui/"] --> tests
// omp_run_batch_compact
{ "cwd": "/path/to/repo", "max_parallel": 2, "tasks": [ { "id": "api", "goal": "Add GET /health returning build info.", "access": "write", "ownership": ["src/api/"] }, { "id": "ui", "goal": "Show a status badge fed by /health.", "access": "write", "ownership": ["src/ui/"] }, { "id": "tests", "goal": "Add an integration test for /health and the badge.", "depends_on": ["api", "ui"], "access": "write", "ownership": ["tests/"], "acceptance": ["npm test passes"] } ] }
Rules worth knowing:
write tasks must list the paths they own in ownership (relative to cwd); read_only tasks list none.只显示了开头部分;其余内容请在仓库中阅读