Skip to main content
Glama


摘要

Cheap Labor 的存在是因为 Codex 的使用量是一个有限的额度池——而编码智能体所做的大部分工作其实不是写代码。读取文件、探索仓库、规划和审查 diff 都会消耗 Codex 的额度,却从未写过一行代码。

后来我们有了一个关键发现:ChatGPT 和 Codex 的使用量是分开计算的——两个独立的额度。于是我们决定分工:ChatGPT 用自己的额度完成所有思考工作,而 Codex 只被用于真正的实现。

这就是全部构想——一个通过 Secure MCP Tunnel 连接的本地 MCP 服务器:网页版 ChatGPT 驱动你机器上的 Codex CLI,在你的本地仓库上工作,只需一个 @cheap-labor 触发词。

技术栈

Cheap Labor 采用一套刻意精简的跨平台技术栈构建:

  • 运行时: Node.js(>= 20)——桥接服务器运行时

  • 语言: TypeScript——所有桥接代码

  • 协议: MCP SDK@modelcontextprotocol/sdk)——stdio MCP 服务器 + 客户端

  • 校验: zod——工具参数模式

  • 执行器: Codex CLIcodex mcp-server)——作为子进程 MCP 客户端,用于探索和实现

  • 连接: Secure MCP Tunneltunnel-client)——ChatGPT 网页版与本地服务器之间的私有、仅出站连接


Related MCP server: Kontrol

前置条件

  • macOS 或 Linux,已安装 Node.js >= 20 和 npm

  • git

  • 已开启开发者模式的付费 ChatGPT 账户

  • Codex CLI,已登录(codex login

  • tunnel-client——安装过程中自动安装:macOS 通过 Homebrew;Linux 通过 GitHub releases 二进制文件(linux-amd64/arm64)并加入 PATH

  • 来自 OpenAI 平台的 Secure MCP Tunnel + 运行时 API 密钥(安装程序会引导你到相应页面)


安装

快速跳转: 1. 克隆并安装2. 使用

  1. 克隆仓库并进入目录:

    git clone https://github.com/psrisuphan/cheap-labor.git
    cd cheap-labor
  2. 运行安装程序——它会安装依赖、构建桥接器、写入你的隧道配置文件、验证全部 23 个工具,并引导你将应用连接到 ChatGPT 网页版:

    ./scripts/install.sh

使用方法

  1. 启动隧道——使用 cheap-labor 期间保持其运行:

    ./scripts/tunnel.sh start    # stop: ./scripts/tunnel.sh stop
  2. 打开一个新的 ChatGPT 对话,输入 @cheap-labor——即你从工具菜单中添加的应用名称——然后提及项目。

  3. 确认项目目录(被询问时)——会话即已武装。


卸载

./scripts/uninstall.sh

清理脚本能触及的所有内容:旧的 MCP 注册、隧道守护进程、每个已初始化项目中的 .codex-bridge/ 状态、隧道配置文件和存储的 API 密钥,以及构建产物。三个提示(按 Enter 接受推荐答案,输入 n 保留)。之后会打印一份手动清理指南,涵盖只有你能触及的部分:ChatGPT 应用连接、Platform 隧道、运行时 API 密钥和项目文件夹。


工作原理

桥接器在武装之前处于休眠状态。休眠期间,服务器只在 instructions 中提供一条两行的"忽略这些工具"提示,因此无关的提示词会在完全不考虑桥接器的情况下得到回答。完整的工作流规则位于 init 工具的返回负载中,只有在武装之后才会进入对话。

触发机制就是调用本身——没有提示词监控、没有标签语法、没有短语扫描:

  1. 用户输入 @cheap-labor 来调用 cheap-labor。这是唯一的触发方式。

  2. ChatGPT 询问你想使用哪个项目,解析项目(find_projects 用于模糊名称匹配,create_project 用于新目录),与你确认确切路径,然后武装会话——init(project)(对于全新目录则直接使用 create_project)并接收一个 session_token

  3. 所有其他工具在没有有效 session_token 时拒绝运行——这是一道硬性兜底,同时也能阻止工作流之外的意外使用。

工作流程

  1. 武装会话——@cheap-labor + 确认项目 → init 返回令牌。

  2. 理解——git_statuslist_treeread_filegrep(全部免费)。

  3. 详细规划——ChatGPT 通过 plan_writePLAN.md / SPEC.md / TASKS.md 写入仓库的 .codex-bridge/ 文件夹。计划是精确的分步指令:要创建/编辑哪些文件、每项变更应该是什么、要运行哪些命令、以及如何验证。

  4. 小改动,直接完成——write_file / edit_file 免费处理单文件变更。

  5. 委派繁重工作——implement 将计划交给 Codex,后者逐字执行步骤、运行构建/测试、修复出错的地方,并返回 IMPLEMENTATION COMPLETE

  6. 审查——ChatGPT 读取返回的 git diff,并通过同一循环发送有针对性的修正。


功能特性

  • 单触发激活: 在任何 ChatGPT 对话中输入 @cheap-labor 是唯一的触发方式;桥接器在被调用前保持休眠(零模型注意力)——没有提示词监控、没有标签语法、没有短语扫描。

  • 风险门控执行: 命令被分类为只读 vs. 高风险;高风险工作通过 Codex 自动审查和你的否决权。

  • 内置安全护栏: 项目路径范围限定、密钥脱敏、每次繁重运行前的检查点,以及仅本地提交、绝不推送。

  • 跨平台: macOS 和 Linux,无公网端口,仅出站隧道。


工具参考

免费桥接工具(确定性本地 I/O,不消耗 Codex 额度):

工具

用途

init

为项目武装会话(唯一入口);返回 session_token + 操作模式简报

list_tree

目录结构,深度受限

read_file

文件内容,行范围限定、大小上限、密钥脱敏

grep

支持包含/排除 glob 的正则搜索

git_status / git_diff / git_log

仓库状态 + 审查循环(未跟踪文件会被列出)

run_command

风险门控的验证命令(测试、构建)

write_file

直接创建新文件(拒绝覆盖)

edit_file

对现有文件进行精确匹配编辑(基于内容的过期保护)

edit_pack

批量编辑/写入,全有或全无(无部分状态)

checkpoint

为回滚快照 HEAD + 工作树(implement 前自动执行)

rollback

恢复到检查点(需用户确认;本身可撤销)

git_commit

本地暂存并提交,提交信息需用户批准(绝不推送)

checkpoints

列出已记录的检查点

find_projects

将模糊名称解析为候选路径(浅层、常见位置)

create_project

创建新的项目目录(不执行 git init);返回 session_token

plan_read / plan_write / task_update

管理 .codex-bridge/ 交接文件

Codex 支持的工具(消耗 Codex 额度):

工具

用途

deep_explore

用于免费工具无法回答的问题的只读 Codex 会话

implement

基于当前计划的工作区写入 Codex;返回摘要 + git diff

codex_reply

通过线程 ID 继续会话(审批否决循环、后续跟进)


安全模型

  • implement / deep_explore 始终传递显式沙箱(workspace-write / read-only)——绝不使用 danger-full-access

  • 固定 Codex 模型 — 每次 Codex 调用都固定使用 gpt-5.6-luna,采用 medium 推理级别并关闭 Fast Mode,以每次调用的覆盖参数传递。桥接器从不写入 ~/.codex/config.toml。唯一例外:deep_explore 接受更强的模型,但前提是你在聊天中确认更改。

  • 自动安全审批 — Codex shell 审批以 MCP 征询的形式呈现:只读命令自动批准;任何有风险的操作(写入、网络、git 变更)都会被拒绝并记录,以便 ChatGPT 转达给你进行否决。否决通过 codex_reply 执行。

  • run_command 直接运行可执行文件(不经过 shell)。有风险的命令交由 Codex 自动审查——绝不授予完全访问权限,任何有风险的操作都不会未经提示而运行。

  • write_file 仅创建新文件;edit_file 仅通过精确匹配替换来编辑现有文件(过期/模糊匹配不写入任何内容);edit_pack 以全有或全无的方式批量处理。所有操作都有大小上限并拒绝二进制文件。

  • 发布模式checkpoint 快照 HEAD + 工作树(每次 implement 前自动执行);rollback 恢复检查点(其本身可撤销);git_commit 使用用户批准的消息在本地提交。push/pull/reset/rebase/checkout 从不暴露。

  • 桥接工具拒绝会话批准的项目目录之外的路径。

  • read_file / git_diff 默认对已知的机密模式进行脱敏处理。


项目结构

cheap-labor/
├── assets/                  # Logo / icons
├── scripts/                 # Installer, uninstaller, tunnel control, setup
│   ├── install.sh           # All-in-one installer
│   ├── uninstall.sh         # Clean uninstaller
│   ├── tunnel-setup.sh      # Writes the tunnel-client profile
│   ├── tunnel.sh            # start / stop / restart / status / logs the tunnel daemon
│   └── setup.mjs            # Prerequisite check
├── src/                     # Bridge MCP server
│   ├── index.ts             # Server entry, tool registration, server instructions
│   ├── safety.ts            # Project scoping, redaction, risk classification
│   ├── projects.ts          # Session approvals, ledger, find/create
│   ├── planstore.ts         # .codex-bridge/ I/O
│   ├── approvals.ts         # Auto-safe policy
│   └── tools/               # context, command, codexCommand, codex, deepExplore,
│                            # implement, edit, plans, ship
├── tests/                   # Node test suite
├── dist/                    # Build output (gitignored)
└── package.json

测试

要运行单元测试套件:

npm run typecheck    # tsc --noEmit
npm test             # node --test (tsx)

本地数据与日志

Cheap Labor 将其隧道配置文件、运行时 API 密钥和守护进程日志存储在项目目录之外的本地位置:

  • macOS / Linux: ~/.config/tunnel-client/

在此目录中你将找到:

  • cheap-labor.yamltunnel-client 配置文件(包含隧道 ID)。

  • cheap-labor.key — 运行时 API 密钥,权限为 chmod 600,绝不提交。

  • cheap-labor.log — 隧道守护进程日志。

计划和交接文件在运行时写入每个项目的 .codex-bridge/ 文件夹(已加入 gitignore)。Codex 自身的配置和认证位于 ~/.codex/


许可证

本项目采用 MIT 许可证授权。完整许可证文本请参阅 LICENSE 文件。

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    B
    maintenance
    A self-hosted MCP server that enables AI coding agents to read, edit, search, and run code in local projects with human review loops and policy controls.
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    MCP server that enables a coordinator AI agent to spawn, control, and supervise local coding agents with interactive gating for high-risk operations.
    10
    38
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • A paid remote MCP for OpenAI Codex agent coordination MCP, built to return verdicts, receipts, usage

  • MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.

  • An MCP server that gives your AI access to the source code and docs of all public github repos

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/psrisuphan/cheap-labor'

If you have feedback or need assistance with the MCP directory API, please join our Discord server