native-agent-hub
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Codex Native Agent Hub
A unified Codex MCP bridge and local panel for Gemini / Antigravity, Claude Code, and DeepSeek Harness, with isolated worktrees and live task progress.
在 Codex 右侧完成模型接入、任务委派、进度查看与变更检查。三种模型分别使用自己的原生编码运行环境,连接配置和 API Key 独立保存。
Windows x64 · Python 3.11+ · Git · MCP stdio · MIT
Codex / 本地面板
│
├─ Gemini → Antigravity SDK
├─ Claude → Claude Code / Agent SDK
└─ DeepSeek → DeepSeek Harness / dsh SDK
│
对应原生协议的模型服务这是通过 MCP 接入的外部代理服务。右侧界面是本项目的本地网页,模型返回结果后由 Codex 检查。它不会把第三方模型注册为 Codex 内部的 spawn_agent 模型,也不需要修改 Codex 客户端。
能做什么
在一个面板中为三种代理分别设置 Base URL、Key、模型和适用的推理强度。
从中转站拉取模型列表,保留准确 ID,搜索、选择或为本次任务覆盖模型。
可为每个代理开启「自动选择适配模型」(默认关闭),由 Codex 判断复杂度后按模型名称为单次任务选型。
按原生协议测试基础生成;通过任务验证流式响应与真实文件工具。
默认只读审查;编辑任务默认创建独立 Git worktree,保留变更供检查和合并。
查看实际阶段、工具活动、调用次数、耗时、结果和历史;支持取消与超时。
每个服务实例最多同时运行两个任务,每个任务限制 40 次模型调用、100 次工具调用。
Windows DPAPI 按当前用户加密凭据;状态、会话和 worktree 默认存储在仓库外。
原生运行环境提供各自的系统提示、工具与执行流程;实际效果仍取决于模型、任务和中转站兼容性。
Related MCP server: Pair
安装
准备 Windows x64、Python 3.11+、Git 和可在终端使用的 Codex CLI。
git clone https://github.com/sdpd2333/codex-native-agent-hub.git
cd codex-native-agent-hub
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\install.ps1脚本创建项目内 .venv,安装固定版本的三套 SDK,并注册名为 native-agent-hub 的 MCP 服务。路径按实际安装位置生成。已有的 gemini-antigravity 服务不会被覆盖。
固定版本的 Windows SDK 包含各自所需的原生运行组件,无需另外安装 agy、Gemini CLI、Claude Code CLI 或 dsh 命令行。首次安装仍需下载 Python 依赖和运行组件;它们不会提交到本仓库。
仅安装依赖,不注册 MCP:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\install.ps1 -SkipMcpRegistration从右侧面板开始
重新加载 Codex 的 MCP 服务,或重新打开 Codex,然后说:
打开 native-agent-hub 的统一面板,放在右侧,项目目录使用当前项目。
Codex 调用 get_panel(project_dir=项目绝对路径),再通过桌面应用的 open_in_codex 打开返回的 URL,设置 target.type="browser"、placement="right"。普通 MCP 客户端也可在浏览器打开同一面板。
在「连接设置」选择 Gemini、Claude 或 DeepSeek。
填写该代理使用的 Base URL 和 API Key,点击「拉取模型」,选择完整模型 ID 后保存。
「测试基础生成」会发送一条简短请求,使用少量服务额度。
在「新建任务」选择代理、项目、模式和目标,先用小型只读任务验证工具兼容性。
在「任务进展」查看活动和结果;编辑任务可「查看变更」,读取 worktree 路径、分支与差异。
三套配置可以指向同一中转站,也可指向不同服务;Key 不会在代理之间自动复用。更换地址时必须重新填写 Key。任务提交时固定当时的配置,之后保存设置只影响新任务。
双击 configure.cmd 会在普通浏览器打开面板。也可手动启动:
.\.venv\Scripts\python.exe -B server.py --panel --project-dir C:\Projects\my-app加 --no-browser 只输出本机面板地址。服务结束后旧地址失效,重新获取即可。
自动选择适配模型
在「连接设置」为需要的代理勾选「自动选择适配模型」并保存。三种代理独立设置,旧配置升级后也默认关闭。开启后,无需在每次对话中指定模型,例如直接说「让 Gemini 调整这个页面的按钮样式」。Codex 根据范围、风险和不确定性判断 task_complexity;服务从该代理的实时模型列表中匹配完整 ID,只覆盖当前新任务。
Codex 判断的任务复杂度 | 典型任务 | Gemini(先限定最高版本) | Claude(沿用原规则) | DeepSeek |
| 文案、样式、已知原因的局部小修、只读摘要 | 快速 → 高能力 | 轻量 → 快速 → 均衡 | 仅 Flash |
| 范围明确的功能、测试和一般排错 | 快速 → 高能力 | 均衡 → 快速 → 高能力 | 仅 Flash |
| 架构、困难排错、大范围重构、安全/权限/并发/数据迁移 | 高能力;没有则保留默认模型 | 高能力;没有则保留默认模型 | 仅 Flash |
默认名称规则按代理分别处理:
Gemini:版本号优先,其次匹配能力档位。 Flash 为快速档(Flash Lite 也归入快速档),Pro / Ultra / Argon 为高能力档;不再单独识别 Lite / Nano 轻量档。先从这些通用编码候选中限定最高可解析版本,再按上表选型。因此,只有
gemini-4-pro和gemini-3.8-flash时,简单任务也会优先使用gemini-4-pro;如果同为 4 版本,简单/常规任务优先 Flash,复杂任务只选择高能力档。最高版本没有复杂任务所需的高能力型号时保留默认模型,不回到旧版本重新选型。版本优先于稳定/预览标记,所以较新预览版也会排在旧稳定版前面。Claude:保持现有设置。 Haiku 为快速档、Sonnet 为均衡档、Opus / Fable 为高能力档。先按任务档位顺序选择,同档优先稳定版,再比较系列档位和版本号,同分优先已保存模型。
DeepSeek:自动候选仅保留 Flash 快速档。 简单、常规和复杂任务均在 Flash 型号中选择;不再自动识别 Lite / Chat / V3 / Pro / Reasoner / R1 档位。同档优先稳定版,再比较版本号,同分优先已保存模型。没有可用 Flash 时保留默认模型,其他型号仍可手动指定。
Gemini 最高版本内的同档排序也优先稳定版,再比较系列档位,同分优先已保存模型。无法解析版本号的别名不优先于有明确版本号的型号;若全部候选都无法解析版本,则直接按任务档位顺序选择。发布日期、上下文长度和参数规模不作为版本号;中转站的完整原始 ID 保持不变。
仅识别对应代理的家族名称和少数明确别名(例如 Gemini 配置下的 3.8flash)。不自动选择其他家族、嵌入/图片/音视频等专用模型,无法识别的名称留给手动指定。列表拉取失败或没有合适档位时使用保存的默认模型。规则是名称启发式,不读取价格、不承诺实际能力或工具兼容性,也不会自动重试升级。
你在对话或「本次模型」中明确指定的 ID 始终优先;自动选型不会修改默认模型、切换代理或改变保存的推理强度。任务详情会显示实际模型、选型方式和原因。面板手动新建任务时由你选择复杂度;服务本身不会额外调用模型分析任务。
MCP 客户端需重新加载服务以获取新参数和策略。get_configuration 返回每个代理的开关及 model_selection_policy,list_models 额外返回名称分类。开启自动选型且未指定 model 时,submit_task 必须提供 task_complexity;关闭时仍直接使用默认模型。不要调用 select_model 实现临时选型。
自定义策略
策略集中在项目根目录的 model_selection.py,可直接编辑。 配置面板的「自定义选型策略」也会指出此位置。
位置 | 可以调整什么 |
| Codex 判断简单、常规、复杂任务时采用的说明 |
| 每个代理的名称提示词与档位;提示词为小写,档位为 |
| 按 |
| 先限定最高可解析版本、再按任务选择档位的代理集合,默认仅包含 |
| 同档稳定型号中优先选择的旗舰系列提示词 |
| 不自动用于编码任务的专用模型名称提示词 |
| 更细的版本比较与同档排序逻辑 |
例如,希望 Claude 的常规开发优先用 Haiku,可以把 PREFERENCES["claude"] 中的 standard 改为:
"standard": ("fast", "balanced", "strong"),若希望 Gemini 恢复为先按档位、再比较版本,可将其从 VERSION_FIRST 中移除(例如设为 set())。新增模型系列时,在对应代理的 NAME_RULES 中加入提示词和档位,例如 ("newseries", "balanced");默认只自动识别对应代理家族,完全自定义的别名还需调整 describe_model 的别名识别。修改后重新加载 MCP 服务,并重启面板,再运行单元测试确认符合你的预期。修改这些规则不会更改已保存的默认模型或已经启动的任务。
中转站的协议要求
代理 | 原生运行环境 | 模型调用接口 | 只读工具 |
Gemini |
|
| 浏览、搜索、查找、读取 |
Claude |
| Anthropic | Read、Glob、Grep |
DeepSeek |
| DeepSeek Messages | read、working_directory |
此处固定的 dsh 版本使用 Messages 协议。只提供 OpenAI /chat/completions 的路径不够。 根据你的服务商提供的兼容端点填写地址;不能仅凭模型名称判断协议。
Base URL 使用 HTTPS,可保留服务商要求的路径前缀。末尾 /v1 或 /v1beta 会被归一化,再添加对应接口路径。模型列表优先使用 /v1/models,Claude 支持分页;Gemini 必要时回退 /v1beta/models。
列表中可见、基础生成成功,均不能保证完整代理流程可用。SDK 会发送工具定义和流式请求,需要中转站完整转发。当前 DeepSeek 只读模式使用精简原生配置,尚不提供目录搜索工具;可在任务中指定需要读取的文件。编辑模式使用完整编码工具配置。
编辑任务与 worktree
edit 默认以源仓库当前 HEAD 创建独立分支 agent-hub/<代理>/<任务ID> 与 worktree,因此源仓库必须干净、已有提交。两个任务使用不同目录,避免直接覆盖彼此的修改。worktree 从已提交内容开始,未跟踪、忽略的文件和已安装依赖不会自动复制;必要时可在任务中要求安装依赖。
源项目有未提交更改或不是 Git 仓库时,可以先处理仓库状态,或在面板中明确选择「直接编辑项目目录」。只读任务始终读取指定目录,无需 Git。
任务结束、失败、取消或超时后,worktree 及已发生的修改都会保留。面板与 get_changes 返回已跟踪文件相对起点的差异和新增文件名;新增文件内容需要在工作区进一步查看。不会自动提交、合并或清理。
检查结果与测试后,可手动将需要的修改提交并 cherry-pick 到源分支:
git -C <worktree路径> diff
git -C <worktree路径> status --short
# 选择文件后提交,再在源项目中 cherry-pick 该提交。review 通过原生工具白名单禁用写入与命令执行。edit 允许文件修改和命令执行;worktree 用于隔离版本变更,不是操作系统沙箱。只对你授权的任务开放编辑模式。
在对话中委派
用 native-agent-hub 的 Claude 审查当前项目。先读取配置,再以 review 模式提交,最后核实发现的问题。
将这个模块的实现交给 DeepSeek,通过 dsh 执行。允许修改代码和运行测试,使用独立 worktree。完成后检查 get_changes 和测试结果。
MCP 工具 | 用途 |
| 三套配置的就绪状态、所选模型和已安装 SDK 版本 |
| 获取本地统一面板地址,可预填项目路径 |
| 拉取完整模型 ID,空查询返回所有模型 |
| 按用户要求保存默认模型 |
| 用保存的配置测试原生文本生成,会使用接口额度 |
| 提交任务,立即返回任务 ID 和面板地址 |
| 查询状态、活动与结果,支持等待和结果分页 |
| 读取工作区差异和新增文件名 |
| 终止本机工作进程树,保留文件修改 |
submit_task 参数包括 task、绝对路径 project_dir、backend=gemini|claude|deepseek、mode=review|edit、可选 model、可选 task_complexity=simple|standard|complex、workspace_mode=worktree|direct、timeout_seconds。默认 Gemini、review、worktree,超时 600 秒(可设 10–1800 秒)。
凭据与本地数据
默认状态目录:%LOCALAPPDATA%\CodexNativeAgentHub。无 LOCALAPPDATA 时使用 ~/.local/share/CodexNativeAgentHub。可通过 AGENT_HUB_STATE_DIR 覆盖;请保持在源码仓库外。
settings.json:三套非密钥配置。<代理>.dpapi:Windows 当前用户加密的 Key。jobs/:任务摘要、原生会话及规范化活动。worktrees/:保留的编辑工作区。
也支持 AGENT_HUB_GEMINI_API_KEY、AGENT_HUB_CLAUDE_API_KEY、AGENT_HUB_DEEPSEEK_API_KEY,环境变量优先于本地凭据。其他平台可用环境变量,但本项目的安装与原生集成测试范围为 Windows x64。
Key 经工作进程 stdin 传入,不放进启动参数、任务摘要或前端存储。面板活动只含固定标签和计数;原生会话日志与最终结果可能包含任务、文件内容和路径,不要上传状态目录。配置的模型服务会接收任务和代理读取的内容。本机面板 URL 自带随机访问令牌,请勿公开或转发。
开发与验证
.\.venv\Scripts\python.exe -B -m unittest discover -s tests -p "test_*.py" -v
.\.venv\Scripts\python.exe -B tests/runtime_smoke.py
.\.venv\Scripts\python.exe -B scripts/audit_release.py单元测试覆盖独立凭据、配置快照、来源校验、结果持久化、取消与超时、工具权限及 worktree 隔离。原生集成测试用真实 SDK 和运行组件连接本地模拟接口,验证三种代理的「读取 → 工具结果 → 回复」、文件写入及命令执行,检查实际进度与只读工具集;使用假 Key,不消耗模型服务额度。
GitHub Actions 在 Windows、Python 3.11 / 3.14 上执行这些检查。模拟接口验证的是本项目与固定 SDK 的集成,不代表某个第三方中转服务已通过验证。
欢迎通过 Issue 或 PR 提交最小复现和改进;请先运行上述检查,勿附带真实 Key、访问令牌、会话日志或个人路径。
参考与许可
本项目从 codex-gemini-antigravity 的本地面板与 MCP 桥接方案扩展而来,以独立仓库维护。项目代码采用 MIT License;第三方 SDK 及运行组件按各自条款分发。
This server cannot be deployed
Maintenance
Related MCP Connectors
Your AI apps as one team: hand work to Codex, Claude Code or Cursor on your Mac, with a logbook.
One identity across Claude Code, Codex, Cursor, Gemini, Windsurf: shared inbox and handoffs.
Shared workspace where Claude, ChatGPT, Codex and Grok share files, tasks, decisions and handoffs.
Coding agents from Claude Code, Cursor and Codex claim jobs and lock files on one shared board.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables Codex to delegate tasks to DeepSeek Harness through A2A/ACP, with reusable conversation contexts and a local dashboard for task status.1MIT
- AlicenseNot gradedqualityBmaintenanceEnables users to delegate coding tasks in a chosen project to the official Codex and Claude CLI agents from within an existing chat, then convene a council of configured models to gather independent opinions and review the resulting files and test runs. It also manages multi-provider API connections, model catalogs, and per-task token, time, and cost limits.MIT
- AlicenseNot gradedqualityAmaintenanceEnables Codex to delegate implementation, independent review, rework, and acceptance tasks to Claude Code via local terminal or optional Orca sessions, tracking progress and verifying changes before merge.413 npm6MIT
- FlicenseNot gradedqualityAmaintenanceEnables a primary AI coding assistant to delegate tasks to specialized sub-agents in parallel, share project context, and synthesize their responses. It uses existing local CLI tools and API subscriptions to coordinate Codex, Claude, Cursor, and Gemini without extra cost.-