hcom 是一个命令行工具,用于把多个 AI 编码代理跨终端连接起来,使它们能够互相发消息、观察彼此并派生新代理。
用途:hcom 主要用于协调多代理流水线、将不同的 AI 命令行工具作为彼此的子代理运行,或单纯避免在多个代理之间手动复制粘贴内容。它把多个 AI CLI 变成一个可以互相通信、互相等待、互相触发的协作系统。
主要能力:
- 代理之间可以实时发消息:无论对方正在处理回合中,还是空闲时,都能立即唤醒或接收消息。
- 代理可以互相观察:查看状态、对话记录、文件编辑、终端实时画面、命令历史。
- 可以订阅并在状态变化、文件编辑、冲突或特定事件发生时收到通知,并自动做出反应。
- 可以在任意终端模拟器中派生、分叉、恢复、终止代理,也可以无头运行。
- hooks 会把活动记录到本地 SQLite 数据库,并从该数据库投递消息。hooks 仅在以 hcom 开头启动代理时激活,正常使用不受影响。
支持的工具:claude、codex、opencode、copilot、qoder、grok、pi、omp、agy、cursor、kimi、kilo、gemini。
使用方式:在启动代理的命令前加上 hcom,然后正常提示。例如让 claude 检查工作并发送修复;派生 3 个 opencode 拆分任务并收集结果;让代理分叉自己去调查 bug 并回报;当 codex 空闲时给它下一个任务。打开 TUI 仪表盘可以管理代理。代理可以在任意 CLI 工具中被提示保持监听消息。也可以从任意进程或脚本发送消息,或与 hcom 事件链式组合。每个代理都运行在一个真实终端中,可查看、滚动和中断。任何终端模拟器都可以用于派生代理;kitty、wezterm、tmux、zellij、waveterm、cmux、herdr 还支持通过 hcom kill 关闭窗格。可以配置自定义终端的打开/关闭方式。可以通过 MQTT 中继连接不同机器上的代理,令牌需像 API/SSH 密钥一样对待。可以安全移除所有 hcom hooks,然后删除二进制文件。
多代理工作流:内置和用户脚本(位于 ~/.hcom/scripts/)支持多代理模式,例如:
- hcom run confess:一个代理(或后台克隆)写一份诚实的自评,一个派生的校准器独立读取目标对话记录,一个裁判比较两份报告并通过 hcom 消息发回裁决。
- hcom run debate:裁判派生并设置一场与现有代理的辩论,在共享线程中协调轮次,所有代理都能看到彼此的论点,并共享工作区文件和对话记录的上下文。
- hcom run fatcow:一个无头代理读取某个路径下的每个文件,订阅文件编辑事件以保持最新,并按需回答其他代理。
- hcom run onidle:等待一个代理进入空闲状态,然后向另一个代理输入文本,或以该文本为提示启动一个新代理。 自定义脚本:把 *.sh 或 *.py 放入 ~/.hcom/scripts/,会自动发现并覆盖同名的内置脚本。可以要求代理编写一个脚本;hcom run docs --scripts 是编写指南。
限制与注意事项:资料中未提供定价、平台限制、性能指标或具体效果数据。配置位于 ~/.hcom/config.toml,优先级为默认值 < config.toml < 环境变量。可以通过 ~/.hcom/env 设置传递给每个已启动代理的外部环境变量。详细命令、标志和配置参考可通过 hcom <command> --help 或 hcom run docs --cli 查看。安全策略见 SECURITY.md。