用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/tomevault-io/skills-registry --skill hcom-agent-messaging命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | hcom-agent-messaging |
| description | | Use when this capability is needed. |
AI agents running in separate terminals are isolated. hcom connects them via hooks and a shared database so they can message, watch, and spawn each other in real-time.
curl -fsSL https://github.com/aannoo/hcom/releases/latest/download/hcom-installer.sh | sh
hcom claude # or: hcom gemini, hcom codex, hcom opencode
hcom # TUI dashboard
tell any agent:
send a message to claude
when codex goes idle send it the next task
watch gemini's file edits, review each and send feedback if any bugs
fork yourself to investigate the bug and report back
find which agent worked on terminal_id code, resume them and ask why it sucks
| capability | command | tested behavior |
|---|---|---|
| message each other | hcom send @name -- "msg" | delivers in under 1s (claude), 1-3s (codex) |
| read each other's transcripts | hcom transcript @name --full | includes tool I/O with --detailed |
| view/inject into terminal screens | hcom term inject name "text" --enter | approves prompts, types commands |
| query event history | hcom events --sql "..." --last N | file edits, commands, status, lifecycle |
| subscribe to activity | hcom events sub --idle name | real-time notifications via system messages |
| spawn/fork/resume/kill agents | hcom 1 claude --tag X --go --headless | headless background agents for scripts |
| build context bundles | hcom send --title X --transcript 1-20:full --files a.py | structured handoffs between agents |
| collision detection | automatic | 2 agents edit same file within 30s, both notified |
| cross-device messaging | hcom send @name:DEVICE -- "msg" | via MQTT relay, 1-5s latency |
hcom 1 claude --tag worker --go --headless --hcom-prompt "your task"
hcom 1 codex --tag engineer --go --headless --hcom-prompt "your task"
hcom 3 claude --tag team --go --headless # batch launch
flags: --go (skip confirmation), --headless (background), --tag X (group routing), --hcom-prompt (initial task), --hcom-system-prompt (role/personality)
hcom send @luna -- "direct message"
hcom send @worker- -- "all agents tagged worker"
hcom send @luna @nova -- "multiple targets"
hcom send -- "broadcast to everyone"
hcom send @luna --intent request -- "expecting reply"
hcom send @luna --intent inform -- "fyi, no reply needed"
hcom send @luna --thread review-1 -- "threaded conversation"
hcom events --wait 120 --sql "msg_text LIKE '%DONE%'"
hcom events --wait 60 --idle luna
hcom listen 30 # block until any message
hcom transcript @luna --full # complete conversation
hcom transcript @luna --full --detailed # with tool I/O, file edits
hcom transcript @luna --last 3 # last 3 exchanges
hcom list # show all active agents
hcom kill luna --go # kill + close terminal pane
hcom kill all --go # kill everything
hcom stop luna --go # graceful stop (preserves session)
hcom r luna # resume stopped agent
hcom f luna --tag rev # fork (clone session, new identity)
hcom events sub --idle luna # notify when luna goes idle
hcom events sub --file "*.py" --once # one-shot: next .py file edit
hcom events sub --collision # file edit collisions
| tool | hooks | delivery | session binding | launch to ready |
|---|---|---|---|---|
| claude code (incl. subagents) | 10 hooks | automatic (hook output) | instant on sessionstart | 3-5s |
| gemini cli (>= 0.26.0) | 7 hooks | automatic (hook output) | instant on beforeagent | 3-5s |
| codex | 1 hook (notify) | PTY injection | on first agent-turn-complete | 5-10s |
| opencode | 4 handlers (plugin) | plugin TCP endpoint | on plugin binding | 3-5s |
| any ai tool | manual | hcom start inside tool | on first command | varies |
codex note: session binding takes 5-10s. always wait before sending messages:
hcom events --wait 30 --idle "$codex_name"
if the user invokes this skill without arguments:
hcom status — if "command not found", install first:
curl -fsSL https://github.com/aannoo/hcom/releases/latest/download/hcom-installer.sh | sh
hcom hooks add to install hooks for all detected tools| status output | meaning | action |
|---|---|---|
| command not found | not installed | install via curl or pip install hcom |
[~] claude | tool exists, hooks not installed | hcom hooks add then restart |
[✓] claude | hooks installed | ready |
[✗] claude | tool not found | install the AI tool first |
hcom status # check installation
hcom hooks status # check hooks specifically
hcom relay status # check cross-device relay
hooks missing? hcom hooks add then restart tool.
still broken?
hcom reset all && hcom hooks add
# close all ai tool windows
hcom claude # fresh start
| symptom | diagnosis | fix |
|---|---|---|
agent not in hcom list | agent stopped or never bound | relaunch or wait for binding |
| message sent but not delivered | check hcom events --last 5 | verify @mention matches agent name/tag |
| codex agent shows inactive | stale_cleanup (session didn't bind in 30s) | wait for idle before sending |
| wrong agent receives message | @mention ambiguity | use @tag- prefix for reliable routing |
| messages leaking between workflows | no thread isolation | always use --thread |
agents follow these rules from their bootstrap:
--intent request → agent always responds--intent inform → agent responds only if useful--intent ack → agent does not respondexport HCOM_DIR="$PWD/.hcom" # project-local mode
hcom hooks add # installs to project dir
thread="t-$(date +%s)"
launch_out=$(hcom 1 claude --tag worker --go --headless \
--hcom-prompt "count 1-5. send result: hcom send \"@reviewer-\" --thread ${thread} --intent inform -- \"RESULT: <answer>\". stop: hcom stop" 2>&1)
worker=$(echo "$launch_out" | grep '^Names: ' | sed 's/^Names: //' | tr -d ' ')
launch_out=$(hcom 1 claude --tag reviewer --go --headless \
--hcom-prompt "wait for @worker-. send DONE to bigboss. stop: hcom stop" 2>&1)
hcom events --wait 120 --sql "msg_thread='${thread}' AND msg_text LIKE '%DONE%'"
hcom kill all --go
# worker does task, reviewer evaluates, sends APPROVED or FIX feedback
# worker corrects if needed, loop until approved
# see references/patterns.md for full tested scripts
# claude sends spec to @eng- (codex), codex implements, claude approves
# CRITICAL: wait for codex binding before messaging
hcom events --wait 30 --idle "$codex_name"
# see references/patterns.md for full tested scripts
# 3 agents independently answer, judge aggregates via hcom events --sql
# agents run in parallel (same wall-clock as 1 agent)
# see references/patterns.md for full tested scripts
#!/usr/bin/env bash
set -euo pipefail
LAUNCHED_NAMES=()
track_launch() {
local names=$(echo "$1" | grep '^Names: ' | sed 's/^Names: //')
for n in $names; do LAUNCHED_NAMES+=("$n"); done
}
cleanup() {
for name in "${LAUNCHED_NAMES[@]}"; do
hcom kill "$name" --go 2>/dev/null || true
done
}
trap cleanup ERR
name_flag=""
task=""
while [[ $# -gt 0 ]]; do
case "$1" in --name) name_flag="$2"; shift 2 ;; -*) shift ;; *) task="$1"; shift ;; esac
done
name_arg=""
[[ -n "$name_flag" ]] && name_arg="--name $name_flag"
thread="workflow-$(date +%s)"
key rules:
--name (hcom injects it)--go on launch/kill--headless for script agents--thread for message isolationhcom events --wait instead of sleepgrep '^Names: ' in launch outputtrap cleanup ERR + hcom kill| what | location |
|---|---|
| database | ~/.hcom/hcom.db |
| config | ~/.hcom/config.toml |
| logs | ~/.hcom/.tmp/logs/ |
| user scripts | ~/.hcom/scripts/ |
with HCOM_DIR set, uses that path instead of ~/.hcom.
| file | when to read |
|---|---|
references/patterns.md | writing multi-agent scripts — 6 tested patterns with full code and real event JSON |
references/cli-reference.md | complete command reference with all flags and examples |
references/cross-tool.md | claude + codex + gemini + opencode collaboration details and per-tool quirks |
references/gotchas.md | debugging scripts — timing, stale agents, codex binding, message delivery issues |
hcom --help # all commands
hcom <command> --help # command details
hcom run docs # full CLI + config + API reference
github: https://github.com/aannoo/hcom
Converted and distributed by TomeVault — claim your Tome and manage your conversions.