飞书桥接 Claude Code / Codex 踩坑实录:从部署、魔改到重装

前言

最近发现了一个很有意思的项目 Claude-to-IM-skill,它可以把 Claude Code 或 OpenAI Codex 桥接到飞书、Telegram、Discord 等即时通讯平台。这样一来,你就能在手机上通过飞书与 AI 对话,让它帮你写代码、查日志、处理文件。

听起来很美好,但实际部署过程中踩了不少坑。本文记录了完整的踩坑、魔改、再踩坑的过程。


项目简介

Claude-to-IM-skill 本质上是一个 Bridge 服务,核心架构如下:

text

复制代码
飞书 App ←──WebSocket 长连接──→ Bridge 进程(运行在你的电脑上)
                                      ↓
                              Claude Code / Codex CLI

优点

  • 无需公网 IP,通过 WebSocket 长连接通信

  • 支持多平台:飞书、Telegram、Discord、QQ、微信

  • 支持双运行时:可在 Claude Code 和 Codex 之间切换

缺点

  • 官方文档对 Windows 支持不够完善

  • 会话系统与 Codex 原生会话不互通

  • 缺少运行时切换功能


踩坑记录

坑 1:Windows 路径大小写冲突

项目由两个 npm 包组成:

  • Claude-to-IM-skill(skill 包)

  • Claude-to-IM(核心库)

skill 包的 package.json 中,依赖路径写的是 file:../Claude-to-IM,但 Windows 文件系统大小写不敏感,导致 claude-to-imClaude-to-IM 被视为同一个目录,npm 链接失败。

解决方案 :把核心库目录重命名为 claude-to-im-core,并相应修改 package.json

json

复制代码
"claude-to-im": "file:../claude-to-im-core"

坑 2:daemon.ps1 启动脚本参数解析异常

Windows 版启动脚本 daemon.ps1 在 PowerShell 7 下会报错:

text

复制代码
A positional parameter cannot be found that accepts argument 'bridge.log'

原因:脚本中的日志重定向写法与 PowerShell 7 不兼容。

解决方案 :修改 supervisor-windows.ps1,改用 Start-Process-RedirectStandardOutput 参数。

坑 3:飞书机器人无法接收消息

Bridge 启动成功了,但在飞书里发消息没有任何反应。

原因:飞书后台的「事件订阅」尚未配置。

解决方案

  1. 进入飞书开放平台 → 事件订阅

  2. 选择「使用长连接接收事件」

  3. 添加事件:im.message.receive_v1

  4. 发布新版本

坑 4:无法给机器人发消息

飞书机器人页面上只有「查看消息」,找不到发送消息的输入框。

原因:飞书机器人需要先建立会话才能发消息。

解决方案:在群里 @ 机器人,或者在飞书后台配置好事件订阅后重新发布应用。


我提的 Issue

Issue #104:支持绑定 Codex 原生会话

问题描述

Bridge 的会话系统与 Codex 原生会话系统是彼此独立的:

  • Bridge 会话存储在 ~/.claude-to-im/data/sessions.json

  • Codex 原生会话存储在 ~/.codex/sessions/*.jsonl

这导致用户无法在飞书里继续之前在 Codex CLI 中进行的对话。

Issue 链接https://github.com/op7418/Claude-to-IM-skill/issues/104


自己做的改进

1. 添加 /import 命令

在飞书里可以直接导入 Codex 原生会话:

text

复制代码
/import              # 列出所有 Codex 会话
/import <session_id> # 导入指定会话

2. 添加 /runtime 命令

可以在飞书里直接切换运行时:

text

复制代码
/runtime             # 查看当前运行时
/runtime claude      # 切换到 Claude Code
/runtime codex       # 切换到 Codex
/runtime auto        # 自动选择

注意:切换时会重启 Bridge,有 5--10 秒的短暂断连。

3. 改进 /sessions 命令

显示会话列表时加入标题信息:

text

复制代码
Sessions:

Bridge Sessions:
✅ 497061b7... D:\files\HomeSense Stdio

Codex Sessions (use /bind <id> to import):
019d6b62... 阅读 HomeSense 契约与职责范围 2026/4/8
019de747... 概述微服务架构项目 2026/5/2

4. 添加 CTI_CODEX_SKIP_GIT_REPO_CHECK 环境变量

Codex 默认要求在 Git 仓库中运行,添加此环境变量可跳过检查:

text

复制代码
CTI_CODEX_SKIP_GIT_REPO_CHECK=true

发现的问题

问题 1:Codex SDK 版本不匹配

Bridge 使用的 @openai/codex-sdk 版本与 Codex CLI 版本不一致,导致调用失败:

text

复制代码
Error: Codex Exec exited with code 1: Reading prompt from stdin

解决方案:更新 SDK 到最新版本:

powershell

复制代码
npm install @openai/codex-sdk@latest

问题 2:第三方 API 代理不稳定

Codex 配置了第三方代理 api.pie-xian.com,经常返回 503 错误:

text

复制代码
ERROR: unexpected status 503 Service Unavailable: No available channel for model deepseek-v4-pro

问题 3:Codex CLI 无法调用工具

最终发现是 Codex CLI 本身出了问题:

  • 无法调用工具

  • 看不到工作区

  • 一直卡在 "Reconnecting..."


最终解决方案:重装 Codex

powershell

复制代码
# 1. 卸载旧版本
npm uninstall -g @openai/codex

# 2. 重新安装
npm install -g @openai/codex

# 3. 验证版本
codex --version

# 4. 重新登录
codex login

重装前的建议

  • 备份配置文件:~/.codex/config.toml

  • 备份会话目录:~/.codex/sessions/


总结

这个项目的想法很好,但目前还不够成熟,尤其是对 Windows 用户而言:

方面 评分
功能设计 ⭐⭐⭐⭐
文档完善度 ⭐⭐
Windows 支持 ⭐⭐
稳定性 ⭐⭐⭐

建议

  1. 如果你主要用 Claude Code,可以考虑 feishu-claude-code(Python 版,更加成熟)

  2. 如果想同时使用 Codex 和 Claude Code,需要自己动手魔改,或等待官方支持

  3. Windows 用户要做好踩坑的心理准备


相关链接


启动命令速查

powershell

复制代码
# 启动 Bridge
powershell -NoProfile -ExecutionPolicy Bypass -File "D:\files\claude-to-im\skill\scripts\daemon.ps1" start

# 停止 Bridge
powershell -NoProfile -ExecutionPolicy Bypass -File "D:\files\claude-to-im\skill\scripts\daemon.ps1" stop

# 查看状态
powershell -NoProfile -ExecutionPolicy Bypass -File "D:\files\claude-to-im\skill\scripts\daemon.ps1" status

# 查看日志
powershell -NoProfile -ExecutionPolicy Bypass -File "D:\files\claude-to-im\skill\scripts\daemon.ps1" logs 100
相关推荐
八月瓜科技3 小时前
豆包启动付费会员测试,承诺基础服务永久免费,免费AI时代是否终结?
数据库·人工智能·科技·深度学习·机器人
Mr数据杨3 小时前
【Codex】搭建Tauri工具数据工作台统一管理桌面端能力
django·codex·项目开发
Mr数据杨5 小时前
【Codex】用教学动画模块生成可管理的课堂演示资源
django·codex·项目开发
YJlio6 小时前
OpenClaw v2026.4.10 更新解析:Active Memory、Codex Provider、本地 MLX 语音与升级验证指南
memory·codex·版本更新·ai agent·active·openclaw·本地语音 自动化运维
地平线开发者1 天前
挑战杯“揭榜挂帅”|机器人领域·地平线赛题发布!共探智慧环卫清扫车新未来
人工智能·机器人
2601_957964871 天前
48V系统轻型巡检机器人锂电池完整设计方案要求(工业级智能巡检平台标准)【浩博电池】
人工智能·机器人
jerryinwuhan1 天前
人工智能工程技术(智能机器人应用)基于赛教融合的项目递进式课程体系
人工智能·机器人
hoiii1871 天前
基于STM32的扫地机器人源码工程
stm32·单片机·机器人