Takopi Telegram 编程助手桥
通过 Telegram 远程运行并续接多个代码代理会话。
README 明示 Telegram、外部 Agent CLI、进度流、文件传输及工作树等主要数据与副作用通道,发布流程也采用范围明确的 GitHub 权限和 PyPI 可信发布;项目作者与许可证归属清楚。扣分在于:运行时可操作仓库、分支和文件,却未提供权限最小化、危险操作确认、令牌存储/脱敏、数据保留或完整回滚策略;依赖大多只有下限而非精确锁定,且未见漏洞扫描或依赖更新策略。未知出版者身份本身未作负面推断。
README、包元数据、入口点和 CI 对产品定位、支持的引擎、Python 版本及发布版本保持一致,足以支持自洽满分。依赖与外部引擎要求列示清楚,CI 使用冻结同步并在发布前测试;但 Python 3.14+ 和 PATH 中的第三方引擎形成较窄的可用条件,所给材料也没有安装可用性降级方案。未提供运行时代码或用户可见错误消息证据,因此 failure_messages 计零。
assistant、workspace、handoff 三种工作流以及多项目、工作树、群组主题和终端接力场景定义具体,受众与场景证据充分。引擎前缀、项目命令和分支提及方式提供了较清楚的触发规则,插件入口也允许扩展。扣分在于未展示冲突触发、无效目标、群聊权限边界或跨平台差异的处理;环境适配主要停留在 uv、Python 3.14+、PATH 引擎和“OS Independent”元数据。
README 的功能、要求、安装、设置、使用、插件和开发结构清楚,并指向配置、规范和插件文档;包名、CLI 名、版本和入口点稳定一致。安装说明及完整 MIT 文本可获满分。扣分在于所给材料没有 FAQ、集中式已知限制、支持政策或独立 changelog;自动生成发布说明和版本匹配检查只部分满足版本历史要求。作者、问题跟踪地址和发布流程表明维护路径,但没有维护团队、响应承诺或治理说明。
产品承诺把多个 Agent CLI 接入 Telegram,并提供流式进度、会话恢复、排队、取消、工作树和文件交换,输出面向移动聊天使用,具有明确的便利价值。扣分在于材料主要是功能声明和少量测试辅助代码,未展示实际输出样例、消息格式、复杂结果的可读性、性能或使用成本;订阅、Telegram 信任边界及 Python/引擎安装负担也未被系统比较。
核心身份、版本、依赖、入口点、许可证、CI 和发布方式可追溯到相应文件,README 的引擎支持也与 pyproject 入口点相互印证,CI 与测试配置交叉支持存在质量门槛。扣分在于大部分运行时功能声明没有对应实现文件或针对性测试证据,所给测试仅包含夹具和事件工厂;功能陈述也很少标注适用条件、例外或哪些内容只是预期行为。
- 该桥接器可让远程 Telegram 消息触发 Agent 对仓库、分支和文件的操作;在确认聊天授权、危险操作确认和目录隔离机制之前,不应授予敏感仓库访问权。
- Bot token 及现有 OpenAI/Anthropic 订阅属于敏感凭据;材料未说明本地存储、日志脱敏、轮换或泄露响应方式。
- 运行依赖 Python 3.14+、uv 以及至少一个独立安装的 Agent CLI;部署前应核实目标环境和依赖版本的实际可用性。
- 依赖未在 pyproject 中精确固定,且材料未展示漏洞扫描;应审查锁文件、传递依赖和插件来源。
- 工作树与取消控制不能等同于事务回滚;文件修改、Git 操作或远程副作用可能需要单独的备份与恢复方案。
这个 Agent 能做什么,适合哪些场景?
Takopi 是连接 Telegram 与 Codex、Claude Code、OpenCode、Pi 的本地桥接工具。它在项目及 Git worktree 上运行所选引擎,并把命令、工具调用、文件变化和耗时持续发送到聊天中。用户可以在 Telegram 内续接会话,也可以复制恢复命令回到终端继续工作。项目、分支、群组话题和代理会话可以分别映射,使多个仓库或分支并行运行。它通过本机 CLI 部署,需要 Python 3.14+、uv、Telegram 机器人令牌,以及至少一个位于 PATH 中的受支持引擎。
运行 takopi 后,设置向导通过 @BotFather 创建的机器人令牌连接 Telegram 聊天,并让用户选择 assistant、workspace 或 handoff 工作流及默认引擎。聊天消息可用 /codex、/claude、/opencode 或 /pi 指定引擎;Takopi 随后在当前项目或已注册项目中启动对应会话。takopi init happy-gadgets 注册项目,/happy-gadgets 定位该项目,@feat/memory-box 则把任务放入对应分支的独立 Git worktree。运行期间,它向聊天流式发送命令、工具、文件变化和耗时,并按代理会话排队;Codex 会话还提供 steering 与取消控制。它也能接收语音留言和定时消息、在聊天与仓库之间传输文件或目录,并通过回复消息或恢复行续接会话。
- 需要离开工作站的开发者,可从 Telegram 向本机项目发送任务并观察命令、工具调用和文件变化。
- 同时维护多个仓库的工程师,可注册项目后使用
/项目名从任意位置选择目标仓库。 - 并行开发多个分支的团队成员,可用
@分支名为任务分配独立 Git worktree,减少工作区互相干扰。 - 需要在手机与终端之间交接工作的用户,可在聊天中继续会话,或复制恢复行回到终端。
- 使用 Telegram 群组论坛管理协作的团队,可把不同话题映射到相应仓库和分支上下文。
- 同时使用 Codex、Claude Code、OpenCode 或 Pi 的开发者,可按消息选择引擎并设置默认引擎。
这个 Agent 有哪些优点和局限?
- 同一 Telegram 界面原生支持 Codex、Claude Code、OpenCode 和 Pi,可逐条消息选择引擎。
- 项目、分支和 Git worktree 是内置执行上下文,适合同时处理多个仓库与隔离分支。
- 流式呈现命令、工具、文件变化和耗时,比只返回最终文本更便于远程监督。
- 会话可在聊天中无状态续接,也可通过恢复行交接到终端。
- 支持 Telegram 语音留言、定时消息、群组话题以及双向文件或目录传输。
- 要求 Python 3.14+ 和 uv,运行环境门槛高于只需常见稳定版 Python 的工具。
- 至少一个受支持引擎必须预先安装并位于 PATH;Takopi 不自行提供代码代理引擎。
- 部署依赖 Telegram 机器人令牌和聊天连接,不适合禁止 Telegram 或外部网络访问的环境。
- README 只说明可沿用 Anthropic 和 OpenAI 订阅,未提供费用、配额或订阅兼容边界。
- 来源未说明权限隔离、身份验证强化、沙箱策略或代理命令失败后的恢复机制。
如何安装或部署这个 Agent?
先安装 uv:curl -LsSf https://astral.sh/uv/install.sh | sh。然后安装 Python 3.14:uv python install 3.14。确保 codex、claude、opencode 或 pi 中至少一个命令已位于 PATH,再执行 uv tool install -U takopi。首次运行 takopi,按向导通过 @BotFather 创建 Telegram 机器人令牌、选择 assistant、workspace 或 handoff 工作流、连接聊天并选择默认引擎。
如何使用这个 Agent?
进入仓库并启动:cd ~/dev/happy-gadgets,然后运行 takopi。向机器人发送消息即可开始;用 /codex、/claude、/opencode 或 /pi 前缀选择引擎,并通过回复继续线程。可执行 takopi init happy-gadgets 注册项目,然后发送 /happy-gadgets hard reset the timeline 定位该项目。发送 /happy-gadgets @feat/memory-box freeze artifacts forever 会在该分支的独立 worktree 中运行任务。使用 takopi config list、takopi config get 和 takopi config set 查看或修改设置。
常见问题
Takopi 是否包含自己的代码模型或代理引擎?
codex、claude、opencode 或 pi 至少一个已安装并位于 PATH。