mcpbeat Sign in

Hcom Agent Messaging Agent Skill

> Multi-agent communication for AI coding tools. Agents message, watch, and spawn each other across terminals. Use when setting up hcom, troubleshooting delivery, or writing multi-agent scripts.

10k tokens
context cost
the whole folder, loaded on every use
11
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
417
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/aannoo/hcom --skill hcom-agent-messaging

The instruction itself

16 sections, as written by the author

hcom — multi-agent communication for AI coding tools

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 kilo, hcom pi, hcom omp, hcom agy, hcom cursor-agent, hcom kimi, hcom copilot
hcom              # TUI dashboard

what humans can do

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


what agents can do

Message each other in real-time, bundle context for handoffs.

Observe each other: transcripts, file edits, terminal screens, command history.

Subscribe to each other: notify on status changes, file edits, specific events. React automatically.

Spawn, fork, resume, kill each other, in any terminal emulator.

run hcom --help for full command syntax and flags.


tool support

| tool | delivery | connect |

|------|----------|---------|

| claude code (incl. subagents) | automatic | hcom claude |

| gemini cli (>= 0.26.0) | automatic | hcom gemini |

| codex | automatic | hcom codex |

| opencode | automatic | hcom opencode |

| kilo code | automatic | hcom kilo |

| antigravity | automatic | hcom agy |

| cursor | automatic | hcom cursor-agent |

| any other ai tool | manual via hcom listen | hcom start (run inside tool) |

session binding (hcom transcript, hcom r/f by session id) happens on first message or first prompt for all hcom-launched tools.


setup

if the user invokes this skill without arguments:

  • run hcom status — if "command not found", install first:
   curl -fsSL https://github.com/aannoo/hcom/releases/latest/download/hcom-installer.sh | sh
  • run hcom hooks add to install hooks for all detected tools
  • restart the AI tool for hooks to activate

| status output | meaning | action |

|---------------|---------|--------|

| command not found | not installed | install via brew install aannoo/hcom/hcom, the curl installer above, 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 |


troubleshooting

"hcom not working"

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

"messages not arriving"

| 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 |

| message reaches more than one agent | duplicate base name across tags | target the full @tag-name to hit exactly one |

| messages leaking between workflows | no thread isolation | always use --thread |

intent system

agents follow these rules from their bootstrap:

  • --intent request -> agent always responds
  • --intent inform -> agent responds only if useful
  • --intent ack -> agent does not respond

sandbox / permission issues

export HCOM_DIR="$PWD/.hcom"     # project-local mode
hcom hooks add                   # installs to project dir

workflow scripting

place scripts in ~/.hcom/scripts/ as .sh or .py. run with hcom run <name> "task". see references/script-template.md for the full annotated template, or run hcom run docs --scripts inside an agent.

key rules

  • never use sleep — use hcom events --wait or hcom listen
  • never hardcode agent names — parse from grep '^Names: ' in launch output
  • always use --thread — without it, messages leak across workflows
  • always use trap cleanup ERR INT TERM — orphan headless agents run indefinitely
  • always use hcom kill for cleanup (not stop) — kill also closes the terminal pane
  • always forward --name — hcom injects it, scripts must propagate it
  • always use --go on launch commands — without it, scripts hang on confirmation prompt (hcom kill never prompts, so --go is optional there)

agent topologies

| topology | agents | pattern |

|----------|--------|---------|

| worker-reviewer | 2 | worker sends result, reviewer reads transcript, sends APPROVED/FIX |

| pipeline | N sequential | each stage reads previous via hcom transcript, signals via thread |

| ensemble | N+1 (judge) | N agents answer independently, judge reads all via hcom events --sql |

| hub-spoke | 1+N | coordinator broadcasts to @tag-, workers report back |

| reactive | N | hcom events sub triggers agent actions on file edits/status changes |


files

| 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.


reference files

| file | when to read |

|------|-------------|

| references/patterns.md | writing multi-agent scripts — 6 tested patterns with full code and real event JSON |

| references/cross-tool.md | claude + codex + gemini + opencode + kilo + pi + omp + antigravity + cursor + kimi + copilot collaboration details and per-tool quirks |

| references/gotchas.md | debugging scripts — timing, message delivery, intent system, cleanup |

| references/script-template.md | writing a new script from scratch — full template with commentary |

| references/scripts/ | 6 tested, working example scripts |


more info

hcom --help              # all commands
hcom <command> --help    # command details

github: https://github.com/aannoo/hcom

Other skills for the same job

different authors, same section of the catalogue
Skill Share
by frostant
×4

A skill that creates new Claude skills and automatically shares them on Slack using Rube for seamless team collaboration and skill discovery.

728 tokens
Init First Agent
by nanocoai

Walk the operator through creating the first NanoClaw agent for a DM channel — resolve the operator's channel identity, wire the DM messaging group to a new agent, and trigger a welcome DM via the normal delivery path. Use after channel credentials are configured and the service is running.

2k tokens
Customer Support Agent
by mastra-ai
vendor

Authoring playbook for building agents that triage and reply to customer messages — support tickets, email inquiries, chat questions, refund requests, or product issues. Use this when the user wants an agent that handles inbound customer questions, drafts replies, escalates hard cases, summarizes tickets, or follows a support playbook.

2k tokens
Build Zoom Team Chat App
by anthropics
vendor

Reference skill for Zoom Team Chat. Use after routing to a chat workflow when building user-scoped messaging integrations, chatbot experiences, rich cards, buttons, slash commands, or chat webhooks.

29k tokens
Language Injection
by microsoft
vendor

LLM Agent 多语言注入规范。在修改 Agent 提示词、添加新的 Agent 端点、处理用户可见的后端消息(message_code)时使用。

1k tokens
Trigger Chat Agent Advanced
by triggerdotdev
vendor

> Advanced and operational chat.agent capabilities for Trigger.dev, loaded on demand. Load this when working on the raw Sessions primitive (sessions / SessionHandle), a custom chat transport or the realtime wire protocol, durable sub-agents (AgentChat, chat.stream.writer), human-in-the-loop, steering, actions, background injection (chat.defer / chat.inject), fast starts (preload, Head Start via @trigger.dev/sdk/chat-server), context resilience (compaction, recovery boot, OOM, large payloads), chat.local run-scoped state, offline testing with mockChatAgent, or prerelease/version upgrades. For the everyday chat.agent({...}) definition and the useTriggerChatTransport happy path, use the trigger-authoring-chat-agent skill instead.

4k tokens
Bootstrap Google Tools
by google
vendor

Install and authenticate, on demand, the CLIs the sandbox does not prebake — Node/npm, `gws` (Google Workspace), `gcloud`, `agents-cli` (call remote A2A/ADK agents), and `mcp-cli` (use MCP-server tools). Use this whenever one of those tools is needed but missing (a `node`/`npm`/`gws`/`gcloud`/`agents-cli`/`mcp-cli` command returns "command not found"), or before starting any task that requires one — Google Workspace work (Drive, Gmail, Sheets, Calendar, Chat), GCP via `gcloud`, calling another agent deployed remotely over HTTP (Cloud Run or Vertex Agent Runtime), or using tools exposed by an MCP server. Setup only (install + config + headless auth); each tool's own usage lives in its own skill(s).

5k tokens
Hubspot Customer Prep
by openai
vendor

Use when preparing HubSpot customer briefs for meetings, renewals, QBRs, sales calls, escalations, handoffs, or follow-ups.

417 tokens

How to use it

Copy the folder

Take aannoo/hcom-agent-messaging from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.

Install what it needs

The instructions reference pip, brew. Without those the skill loads but fails at the first command.