Larkin
把 Codex、Claude Code、Pi 等 Coding Agent runtime 接入飞书协作的本地 Runtime Host。
事实与状态
- 作者 / 维护者Idan Lin(林一丹)
- 当前状态公开开发中;最新公开稳定版 v0.2.93
- 版本核验npm 0.2.93;GitHub Release v0.2.93(发布于 2026-08-14)
- 主要语言TypeScript
- 许可证Apache-2.0
- 核验日期
它解决什么问题
Coding Agent 的执行上下文通常停留在个人终端里;团队协作却发生在飞书。人因此反复在终端和群聊之间复制、转述、追问。Larkin 让本地 Agent 通过一个受控的 Runtime Host 进入现有沟通环境,同时保留持久会话、消息新鲜度校验和操作边界。
当前可核验能力
- 连接 Codex、Claude Code 与 Pi agent runtimes。
- 用持久会话承接飞书消息与后续任务。
- 提供 Inbox、提醒、交互消息和本地 Dashboard。
- 支持 npm 运行,也为 macOS、Linux、Windows x64 发布 standalone binaries。
- 在发送前执行 freshness gate,避免基于旧群聊版本的回复直接扩散。
关键设计机制
Inbox 将“收到变化”和“把完整正文放进上下文”分开。消息先成为可查询的待处理事实,Agent 在合适的执行边界主动拉取,避免每条群消息都粗暴打断当前任务。
freshness gate 在真正发送前再次核对房间版本。如果 Agent 构思回复期间群聊或话题已经变化,发送会在到达飞书前被阻止,并把尚未看到的上下文交还给 Agent 重新判断。
这与 Raft 提出的 Held Draft 都关注“草稿基于哪个房间版本”,但不是同一个实现。Held Draft 会持有草稿再决定修改、发送或放弃;Larkin 当前不持久保存被挂起的草稿,而是通过 freshness gate 拒绝旧版本回复。
边界与限制
- Larkin 是本地 Runtime Host,不是托管式模型服务;使用者仍需安装和授权飞书 CLI 与至少一个受支持的 Agent runtime。
- 平台边界是飞书;README 没有声明 Slack、Teams 等其他 IM 已受支持。
- 它提供消息、会话与协作基础设施,但没有声称完整解决多 Agent 的自动分工、冲突裁决或责任归属。
- Windows 11 x64 的核心路径已验证;外部 Agent 可执行文件、provider 鉴权和飞书 CLI 仍是分别安装的依赖。
- 本地运行不等于天然安全。凭据、Bot scope、群聊可见性和主机权限仍需由部署者控制。