通过飞书 IM 消息控制 Claude Code 等 ACP 兼容的 Coding Agent,在远程服务器上完成编码工作。
- 飞书对话驱动 — 在飞书聊天中直接向 ACP 兼容的 Coding Agent 发送编码指令,支持私聊和群组
- 流式输出 — 通过飞书交互式卡片实时展示 Agent 的输出内容和工具调用过程
- 多会话管理 — 每个对话/话题独立维护会话,支持创建、恢复、切换和删除
- 项目管理 — 支持创建、切换、编辑项目,每个项目拥有独立的工作目录和会话空间
- 权限确认 — Agent 执行敏感操作时弹出确认卡片,由用户选择是否允许
- 模型切换 — 在飞书中随时切换 Claude 模型
- Bun 运行时
- Claude Code ACP Server(需先安装:
npm install -g @zed-industries/claude-code-acp,确保claude-code-acp命令可用;也可使用其他兼容的 ACP,通过修改配置文件即可) - 飞书开放平台应用(需开启消息接收和卡片回调事件)
直接通过 bunx 运行,无需克隆项目:
# 初始化配置文件
bunx --bun larkcoder --init
# 编辑配置文件,填写飞书应用凭据
# 编辑 config.yaml
# 启动服务
bunx --bun larkcoder# 克隆项目
git clone <repo-url> && cd larkcoder
# 安装依赖
bun install
# 初始化配置文件(使用 CLI)
bun run start -- --init
# 或直接运行
bun bin/larkcoder.ts --init
# 编辑配置文件,填写飞书应用凭据
# 编辑 config.yaml
# 启动服务(使用 CLI,推荐用于本地调试)
bun run start
# 或直接运行
bun bin/larkcoder.ts
# 或使用开发模式(直接运行 src/index.ts,使用环境变量 CONFIG_PATH)
bun run dev也可以直接运行启动脚本,它会自动完成依赖安装和数据库迁移:
./start.sh本地调试提示:
- 使用
bun run start或bun bin/larkcoder.ts可以像bunx --bun larkcoder一样使用 CLI 功能(如--init、--config等),但运行的是本地代码,方便调试和修改 - 使用
bun run dev直接运行src/index.ts,适合快速启动(使用默认config.yaml或CONFIG_PATH环境变量)
bunx --bun larkcoder [选项]
选项:
-c, --config <path> 指定配置文件路径 (默认: config.yaml)
-i, --init 初始化配置文件(从模板创建)
-h, --help 显示帮助信息编辑 config.yaml(参考 config.example.yaml):
lark:
app_id: "cli_xxxxxx" # 飞书应用 App ID
app_secret: "your_app_secret" # 飞书应用 App Secret
agent:
working_dir: "/path/to/work" # Agent 工作目录提示:可以使用兼容的 ACP,通过修改配置文件中的
agent.command和agent.args字段即可。
直接在飞书中发送消息即可与 Agent 对话。在群组中需要 @机器人。
发送 /help 查看所有可用命令。
MIT