必须通过飞书长连接或钉钉加签机器人建立安全通道,让消息实时抵达本地codex进程并原路返回结果;飞书端用长连接免公网ip,钉钉端需加签webhook中间层。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在钉钉或飞书里直接调用本地 Codex CLI 执行编程任务,不跳转、不复制、不手动粘贴,必须通过飞书长连接或钉钉加签机器人建立安全通道,让消息实时抵达你电脑上的 Codex 进程,并把执行过程和结果原路返回。
飞书端:用长连接模式直连本地 Codex
此方式无需公网 IP、不暴露本地端口、不依赖反向代理,适合个人开发者与小团队快速落地。核心是让飞书开放平台的长连接服务把消息推给你的桥接程序,再由它唤醒并监听 Codex CLI 的 JSON 流输出。
第一步:登录飞书开放平台 → 进入「应用管理」→ 点击「创建应用」→ 选择「企业自建应用」→ 填写名称(如“Codex 助手”)→ 勾选「机器人」能力 → 创建完成。
第二步:在新应用的「凭证与基础信息」页签中,复制【App ID】和【App Secret】;进入「应用能力」→ 开启「机器人」;进入「事件订阅」→ 选择「长连接模式」→ 订阅事件 im.message.receive_v1;最后点击「发布应用」并安装到本企业。
第三步:在飞书群或私聊中添加该机器人,确保它已在线。这一步若跳过,后续桥接服务收不到任何消息,【机器人未被添加进会话,长连接不会触发推送】。
第四步:下载并运行 feishu-codex-bridge:
git clone https://github.com/lutianding118-cmd/feishu-codex-bridge.git
cd feishu-codex-bridge
npm install
npm start
启动后终端将显示 “Connected to Feishu WebSocket”,表示长连接已就绪。
第五步:确保本地已安装并登录 Codex CLI(运行 codex --version 验证),且未被其他进程占用。桥接服务默认调用 codex run --json 执行指令,【Codex 必须处于登录态,否则首次请求将卡在认证环节,无错误提示但无响应】。
OpenClaw专家 — 用于任何OpenClaw问题或需求,包括配置错误、网关崩溃、网关未启动、斜杠指令、频道路由等。
钉钉端:启用加签机器人对接 Codex
钉钉不支持长连接直连本地 CLI,必须走加签 Webhook 模式。你需要一个可被钉钉访问的 HTTP 服务作为中间层,接收带签名的消息、校验、转发给 Codex、再把结果封装回钉钉格式返回。
方法一:使用 cc-connect(推荐新手)
它已内置钉钉 Channel 支持,自动处理加签验证、消息解析与流式回传。
下载项目:git clone https://github.com/chenhg5/cc-connect.git
安装依赖:cd cc-connect && npm install
编辑 .env 文件,填入钉钉机器人的 AppKey、AppSecret 和 Webhook 地址(从钉钉群「智能群助手」→ 添加机器人后获取);
运行:npm run start
启动后控制台显示 “DingTalk channel ready”,即可在群内 @机器人发送指令。
方法二:自主部署 OpenClaw + Codex 插件
需 Docker 环境。先拉取 OpenClaw 官方镜像:
docker pull openclaw/gateway:latest
运行时挂载 Codex CLI 路径并启用钉钉插件:
docker run -p 18789:18789 \
-v $(pwd)/codex:/usr/local/bin/codex \
-e DINGTALK_APP_KEY=your_app_key \
-e DINGTALK_APP_SECRET=your_app_secret \
openclaw/gateway:latest
配置完成后,在钉钉群中添加该机器人,发送测试消息触发绑定流程。
关键验证与调试
在飞书中发送 “test”,观察桥接服务终端是否打印出类似 {"event":{"type":"im.message.receive_v1","user_id":"xxx"}} 的原始消息体;若无输出,检查飞书应用是否已发布、机器人是否已被添加进当前会话。
在钉钉中发送 “/codex help”,若收到 “Command not found” 或超时无响应,立即检查 AppSecret 是否正确——钉钉加签失败时不会返回明确错误,只会静默丢弃请求。
执行任意 Codex 指令后,若飞书/钉钉只收到最终结果、看不到中间步骤,确认桥接服务或 cc-connect 是否启用了 --stream 模式;Codex 默认以 JSON 行格式逐行输出进度事件,这是实现“可见过程”的唯一来源。










