我做了个机器人,让团队在飞书里用 Claude Code
为什么要做这个
用过 Claude Code 的人都知道,它很强——能读代码、改代码、跑命令、做重构。但有个问题:你得开着终端才能用它。
这意味着你只能坐在电脑前,打开 terminal,才能和 Claude Code 对话。出门在外、手机上、或者想让团队其他人也能用?没门。
我就想:能不能把 Claude Code 接到飞书里,变成一个群聊机器人?
在群里 @一下,它就能帮你改代码、查问题、跑测试。不需要打开终端,不需要 SSH,手机上也能用。
这就是 CCBot 的由来。
OpenClaw:灵感来源
在做 CCBot 之前,我研究了一个叫 OpenClaw 的开源项目。
OpenClaw 是一个自托管的个人 AI 助手,由 PSPDFKit 创始人 Peter Steinberger 开发,MIT 协议。它的核心理念很简单:AI 应该跑在你自己的设备上,通过你日常用的聊天工具来交互。
它做的事情比 CCBot 宏大得多:
- 20+ 消息渠道:WhatsApp、Telegram、Slack、Discord、飞书、微信、iMessage……几乎你能想到的聊天工具它都支持
- 多模型支持:OpenAI、Anthropic、Google、Ollama(本地模型)、DeepSeek 等十几个 AI 供应商
- 原生 App:macOS 菜单栏应用、iOS App、Android App,都能作为助手的”节点”,提供设备独有的能力(摄像头、屏幕录制、语音等)
- 浏览器控制:通过 Playwright 控制一个独立的 Chrome 实例,能帮你浏览网页、填表、截图
- 语音交互:唤醒词检测、连续语音对话、文字转语音
- Live Canvas:一个 AI 驱动的可视化工作区,AI 可以实时渲染和操控画面
- 自动化:定时任务、Webhook、Gmail 订阅、轮询
- 插件系统:核心保持精简,70+ 扩展包通过插件加载
- 记忆系统:基于 LanceDB 的向量存储,以及工作区记忆文件
技术栈上,OpenClaw 用 TypeScript + Node.js,pnpm monorepo 管理,Hono 做 Web 网关,Lit 做控制面板 UI,SQLite + sqlite-vec 做数据存储和向量检索。部署方式灵活——Docker、Fly.io、Nix、裸机都行。
安全方面,它采用单操作者信任模型——每个网关实例只有一个受信用户,通过 DM 配对、白名单、沙箱、执行审批等机制保障安全。它不是一个多租户平台,就是你的个人助手。
OpenClaw 给我最大的启发是:AI 助手不应该被限制在某个特定的界面里,它应该出现在你日常使用的工具中。
但 OpenClaw 的定位是通用 AI 助手,而我想要的更聚焦——专门把 Claude Code 的编程能力带到飞书里。 不需要支持 20 个渠道,不需要多模型切换,就做好”飞书 + Claude Code”这一件事。
于是就有了 CCBot。
CCBot 是什么
CCBot 是一个开源的飞书机器人,把 Claude Code 的编程能力直接搬到飞书群聊里。
一句话概括:在飞书里 @CCBot,就等于在终端里用 Claude Code。
核心特性:
- 飞书 WebSocket 长连接——不需要公网 IP,不需要配置回调地址
- Claude Code
--print模式——带会话上下文,支持多轮对话 - PM2 进程管理——后台守护,一键启停
- 用户级消息队列——多人同时使用不冲突
- 长消息自动拆分——Claude 的长回复自动切割成多条飞书消息
- 飞书 Markdown 渲染——代码块、列表、加粗等格式正确显示
怎么用
安装
npm install -g @ccbot/cli
配置飞书机器人
- 在飞书开放平台创建一个自建应用
- 添加”机器人”能力
- 事件订阅 → 设置为”长连接”模式
- 添加事件:
im.message.receive_v1 - 开通权限:
im:message.p2p_msg:readonly(接收私聊消息)im:message.group_at_msg:readonly(接收群聊 @消息)im:message:send_as_bot(以机器人身份发送消息)
- 发布应用,记下 App ID 和 App Secret
启动
进入你的项目目录,运行:
ccbot start
首次启动会提示你输入配置:
? Claude Code path: claude
? Anthropic Base URL: https://api.anthropic.com
? Anthropic Auth Token: sk-xxx
? Feishu App ID: cli_xxx
? Feishu App Secret: ***
? Timeout in ms: 300000
配置保存在当前目录的 ccbot.json 里,后续启动自动读取。
使用
在飞书群聊或私聊中:
- 直接发消息或 @CCBot,它就会调用 Claude Code 处理你的请求
- 发送
/new重置会话 - 发送
/stop停止当前请求 - 发送
/status查看会话状态 - 发送
/version查看版本
管理
ccbot stop # 停止
ccbot restart # 重启
ccbot status # 查看状态
ccbot logs # 查看日志
ccbot delete # 从 pm2 中删除
技术实现
架构很简单:
飞书消息 → CCBot Server → Claude Code CLI (--print) → 飞书回复
CCBot 通过飞书的 WebSocket 长连接接收消息,然后调用本地的 claude --print 命令处理,最后把结果发回飞书。
几个关键设计:
- WebSocket 长连接:不像传统飞书机器人需要公网 IP 和回调 URL,CCBot 用长连接模式,跑在内网机器上就行
- 会话管理:每个用户有独立的会话上下文,多轮对话是连贯的
- 消息队列:同一个用户的请求排队处理,避免并发冲突
- PM2 守护:用 PM2 管理进程,崩溃自动重启,日志自动轮转
项目本身是一个 Lerna + Nx 的 monorepo,包含两个子包:
@ccbot/cli:核心 CLI 工具@ccbot/index:官网(ccbot.dev)
适用场景
- 个人开发者:手机上也能让 Claude Code 帮你改代码
- 小团队:在飞书群里共享一个 Claude Code 实例,大家都能用
- 远程办公:不用 SSH 到开发机,在飞书里直接操作
- 代码审查:把代码片段发到群里,让 CCBot 帮忙审查
CCBot vs OpenClaw
| 维度 | CCBot | OpenClaw |
|---|---|---|
| 定位 | Claude Code 飞书机器人 | 通用个人 AI 助手 |
| 消息渠道 | 飞书 | 20+ 渠道 |
| AI 后端 | Claude Code CLI | 多模型支持 |
| 部署复杂度 | npm install -g 一行搞定 | Docker/Fly.io/Nix |
| 原生 App | 无 | macOS/iOS/Android |
| 插件系统 | 无 | 70+ 扩展包 |
| 适合谁 | 用飞书 + Claude Code 的开发者 | 想要全能 AI 助手的极客 |
简单说:CCBot 是一把瑞士军刀里的螺丝刀——只做一件事,但做得够好。OpenClaw 是整把瑞士军刀。
如果你只是想在飞书里用 Claude Code,CCBot 五分钟就能跑起来。如果你想要一个能连接所有聊天工具、支持语音、能控制浏览器的全能 AI 助手,去看看 OpenClaw。
链接
相关推荐
AI-first 创业公司,为什么只需要一种编程语言?
技术架构越简单 = AI Coding 效率越高。从 Java 的"防人"设计到 TypeScript 全栈通吃,聊聊 AI 时代创业公司的编程语言选择。
cc-ping:一行命令 Ping 所有 Claude Code 配置
用多个 Claude Code API Key 或中继?cc-ping 帮你管理配置、一键切换,还能并行 Ping 所有节点比速度。
震惊!程序员用这个工具,4分钟干完95分钟的活!效率暴涨24倍
躺床上发3条消息,4分钟搞定3个项目。传统方式需要95分钟,这就是冷兵器和热兵器的差距。
CCBot - 研发提效 24 倍
通过 IM 机器人控制 Claude Code,3 个项目 4 分钟全部搞定。传统编程需要 95 分钟,效率提升 24 倍。
Claude Code /add-dir:被低估的 Monorepo 神器
Claude Code 默认只能看到当前目录。/add-dir 打破这个限制——分享我每天跨 5 个仓库使用的经验。
Claude Code 省 Token 小技巧:感叹号的妙用
一个简单却容易被忽略的技巧——用感叹号直接执行命令,省 token、提速度、更可控。
Claude Code /btw 命令详解:不打扰主线的快问快答
详细介绍 Claude Code 的 /btw 命令——它是什么、怎么用、什么时候该用,以及它和子代理、/compact 的区别。
Claude Code /compact:释放上下文,不丢进度
任务做到一半上下文满了?/compact 帮你压缩对话继续干活——和 /clear、/rewind 的区别一次讲清。
Claude Code /config:一文搞懂所有可调设置
用 Claude Code 却从没打开过 /config?这篇带你逐项拆解——从权限模式到自动压缩,从主题切换到通知配置,帮你打造最顺手的 AI 编程环境。
Claude Code /context:你的上下文都被什么吃了?
对话到一半 Claude Code 说上下文不够了?/context 用一张可视化网格告诉你:上下文被什么占了、占了多少、怎么优化。
Claude Code /diff:这次对话改了什么,一目了然
Claude Code 帮你改了一堆文件,但你不确定到底改了什么?/diff 用交互式界面展示所有改动——既有 git 视角的全量 diff,也有按对话轮次拆分的逐步 diff。
Claude Code /fast:同样的 Opus,两倍速——值不值?
/fast 不会降级模型,还是 Opus,只是更快。什么时候该开、什么时候该关,以及实际体验差异。
Claude Code 引用外部知识的最佳实践:GitHub MCP + Context7
用 GitHub MCP 和 Context7 MCP 两个工具组合,解决 Claude Code 知识过时导致的代码错误问题。
Claude Code /hooks:让 AI 按你的规矩办事
想在 Claude Code 执行命令前自动检查?想在任务完成后自动通知?/hooks 让你用脚本、AI 甚至 HTTP 请求,在关键节点插入自定义逻辑。
Claude Code /init:10 秒自动生成 CLAUDE.md
别再手写 CLAUDE.md 了。看看 /init 自动生成的效果、怎么自定义输出,以及一个让 Claude Code 效率翻倍的小技巧。
Claude Code MCP:让 AI 连接 GitHub、数据库等一切工具
MCP 把 Claude Code 从代码阅读器升级为全栈 Agent。哪些 MCP 服务器值得装、配置怎么写,实测分享。
Claude Code /memory 详解:让 AI 真正记住你的项目
详细介绍 Claude Code 的 /memory 命令和记忆系统——CLAUDE.md 手动指令、Auto Memory 自动记忆、模块化规则,让 Claude 跨会话记住项目规范和个人偏好。
Claude Code /model:Opus、Sonnet、Haiku 怎么选?
不是每个任务都需要 Opus。怎么切换模型、哪个场景用哪个、怎么省 token 又不掉质量。
Claude Code /permissions:谁能干什么,你说了算
每次 Claude Code 要跑命令都弹窗问你?嫌烦又不敢全放开?/permissions 帮你精细控制每个工具的权限——该放的放,该拦的拦。
Claude Code /plan 详解:先想清楚再动手
详细介绍 Claude Code 的 /plan 命令和 Plan Mode——只读规划模式,让 Claude 先分析代码、制定方案,确认后再动手,避免复杂任务翻车。
Claude Code + Playwright MCP:AI 终于能"看见"页面了
一个 Modal 溢出的 bug,Claude Code 反复修了 5 次都没搞定。直到接入 Playwright MCP 让它真正看到页面,一次定位,一次修复。
Claude Code /resume 命令详解:别让对话白聊
详细介绍 Claude Code 的 /resume 命令——恢复历史对话、管理会话、实用技巧,让你的每一轮对话都不浪费。
Claude Code /review:让 AI 帮你做 Code Review
提了 PR 没人看?想在合并前多一道把关?/review 让 Claude Code 像一个资深开发者一样审查你的代码——还有 /ultrareview 和 /security-review 两个进阶选择。
Claude Code Skills 详解:打造你的专属命令库
详细介绍 Claude Code 的 Skills 功能——创建自定义斜杠命令、复用提示词模板、共享团队最佳实践,让 AI 编程更高效更一致。
Claude Code /stats:看看 AI 到底帮你写了多少代码
好奇 Claude Code 到底写了多少行代码?/stats 给你完整数据——token、编辑次数、工具调用,教你怎么看。
Claude Code /status 命令详解:一眼看清会话全貌
详细介绍 Claude Code 的 /status 命令——它是什么、怎么用、能看到哪些信息,以及它在日常工作流中的实际价值。
Claude Code /tasks 命令详解:后台任务尽在掌控
详细介绍 Claude Code 的 /tasks 命令——查看后台任务、管理并行 Agent、掌控长时间运行的进程,让多任务开发井井有条。
Claude Code /usage 命令详解:你的额度还剩多少
详细介绍 Claude Code 的 /usage 命令——查看用量、了解限额、避免突然被限速,让你对自己的额度心中有数。
Claude Code /vim:在 AI 编程助手里用 Vim 键位
习惯了 Vim 的操作方式?/vim 让你在 Claude Code 的输入框里用 hjkl 移动、dd 删行、ciw 替换单词——不用改变肌肉记忆。
Claude Code 使用指南:从安装到实战,一篇就够(2026)
用了半年 Claude Code 的经验总结——5 分钟安装配置、最常用的命令、CLAUDE.md 编写技巧,以及没人告诉你的实战心得。
Claude 全家桶:从聊天到写代码到自动办公,一文讲清楚
一篇文章带你了解 Anthropic 的 Claude 全家桶——Claude.ai、Claude Code、Claude Cowork,以及 Opus、Sonnet、Haiku 三大模型家族。
Claude Code /agents 详解:自定义 AI 子代理,各司其职
详细介绍 Claude Code 的 /agents 命令——查看、管理和创建自定义 Agent,让不同任务由专门的 AI 角色来执行,从代码探索到架构规划各司其职。
Claude Code /doctor 详解:一键诊断你的开发环境
详细介绍 Claude Code 的 /doctor 命令——自动检测安装状态、API 连接、MCP 配置、上下文用量等问题,帮你快速定位和修复环境故障。
Claude Code /effort 详解:控制 AI 思考的深度
详细介绍 Claude Code 的 /effort 命令——调节 Claude 的推理努力程度,在速度和质量之间找到最佳平衡点,让每一次对话都恰到好处。
Claude Code /cost 详解:你的 AI 编程到底花了多少钱
详细介绍 Claude Code 的 /cost 命令——实时查看会话 API 成本,了解各模型定价和 Token 消耗明细,让每一分钱都花得明明白白。
Claude Code /export 详解:把 AI 对话带走
详细介绍 Claude Code 的 /export 命令——将对话导出为文件或复制到剪贴板,方便分享、存档和复盘,让每一次有价值的对话都不浪费。
Claude Code /rewind 详解:AI 改错了?一键回退
详细介绍 Claude Code 的 /rewind 命令——将代码和对话回退到任意历史节点,支持只回退代码、只回退对话、或两者同时回退,是你和 AI 协作时的后悔药。
Claude Code /plugin 详解:给你的 AI 编程助手装插件
详细介绍 Claude Code 的 /plugin 命令——管理插件的安装、启用、禁用和更新,通过插件扩展 Claude Code 的命令、技能、Agent 和 Hook,打造你专属的 AI 编程工具链。
Claude Code /theme 详解:给你的终端换个好看的皮肤
详细介绍 Claude Code 的 /theme 命令——6 种预设主题 + 自动模式,支持深色/浅色、色盲友好、ANSI 兼容,60+ 色值覆盖终端全部 UI 元素。
Claude Code /insights 详解:用 AI 分析你自己用 AI 的方式
详细介绍 Claude Code 的 /insights 命令——五阶段数据分析流水线、七大洞察章节、多维度会话统计,用 Claude Opus 生成专属 HTML 使用报告。
Claude Code /rename 详解:给你的会话取个有意义的名字
详细介绍 Claude Code 的 /rename 命令——手动命名、AI 自动生成(Haiku 模型)、启动参数命名、Plan 模式自动命名,以及双标题系统与 Bridge 同步机制。
Claude Code settings.json 配置详解:5 层优先级、3 种文件路径,一篇搞懂
Claude Code 的 settings.json 到底放哪里?用户级、项目级、本地级有什么区别?什么是 managed-settings.json?一篇讲清 5 层配置的优先级规则、合并逻辑和实际使用场景。
Claude Code settings.json 详解(二):permissions 权限系统全解析
深入解析 Claude Code 的 permissions 配置——allow/deny/ask 三类规则、通配符语法、MCP 工具权限、defaultMode 各模式含义,以及 additionalDirectories 的作用。
Claude Code settings.json 详解(三):hooks 钩子全解析
深入解析 Claude Code 的 hooks 配置——四种钩子类型、核心事件(PreToolUse/PostToolUse/Stop/Notification)、stdin/stdout 协议、exit code 语义,以及实用配置示例。
Claude Code settings.json 配置模板:env、模型、认证等实用字段速查
Claude Code settings.json 常用字段速查表:env 环境变量、模型切换、apiKeyHelper 动态认证、Git 署名、思考深度、语言与界面、自动更新等,附可直接复制的配置示例。
Claude Code Agent Loop:拆解 AI 编程助手的心脏
Claude Code 是怎么一步步理解你的需求、调用工具、自我修复的?从源码角度拆解 Agent Loop 的核心架构——流式响应、并行工具执行、自动压缩、错误恢复,一次讲透。