inter-agent
Communicate with other agents in your team — send messages, delegate tasks, list agents, check news.
Skill by idchain-world
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/idchain-world-inter-agent
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/inter-agent
Tools it pre-approves 1
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
Bash
What's inside
- Skill name
inter-agent- Description
- Communicate with other agents in your team — send messages, delegate tasks, list agents, check news. Use when asked to contact another agent or coordinate work.
- License
- MIT
- Allowed tools
- Bash
- Instructions
- 470 lines in SKILL.md · view on GitHub
Before installing
- Pre-approves any shell command
- Instructions call the network
Files (1)
- SKILL.md
SKILL.md (first lines)
# Inter-Agent Communication
You are part of a multi-agent team. Communicate with other agents via `curl` from the Bash tool. Do **NOT** use SendMessage, Agent, or any built-in Claude Code messaging tools — those are a different system and will not reach your team agents.
## The three patterns — copy these exactly
There are three ways to reach another agent. Copy the example for your case verbatim and change only `to` and `message`.
### 1. `/talk-to` — sync delegation (you need the reply)
```bash
curl -s -X POST http://localhost:$ID_AGENT_PORT/talk-to \
-H "Content-Type: application/json" \
-d '{"to":"agent-name","message":"what is your name?"}'
```
Blocks until the recipient replies. The reply is in the response body.
### 2. `/news-to` without `trigger` — passive notification (LLM is NOT woken)
```bash
curl -s -X POST http://localhost:$ID_AGENT_PORT/news-to \
-H "Content-Type: application/json" \
-d '{"to":"agent-name","message":"I am ready for work"}'
```
Returns 202 immediately. The message lands in the recipient's news feed but their LLM is **not** woken. They see it the next time they poll `/news` or are otherwise active. Use for status pings, "I claimed this task", "heads up — restarting in 5".
### 3. `/news-to` with `"trigger":true` — async delegation (LLM IS woken)
```bash
curl -s -X POST http://localhost:$ID_AGENT_PORT/news-to \
-H "Content-Type: application/json" \
-d '{"to":"agent-name","message":"I have a message, please pass it to the manager","trigger":true}'
```
Returns 202 immediately. The recipient's LLM **is** woken and processes the message as a new task. You do not get a reply on this HTTP call — the recipient can `/news-to` you back later with results. Use for telephone chains, long-running pipelines, and any handoff where holding a sync HTTP connection open would be wrong.
> ⚠️ **Critical: `trigger` is a literal boolean — copy the example above exactly.**
>
> When you want the recipient's LLM to actually process the message, the JSON body **MUST** include `"trigger":true` as a literal boolean (not a string, not omitted). Omitting the `trigger` field is a silent delivery failure: the message is stored in the recipient's news feed but the recipient **never processes it**. No error is returned — the call looks successful but the work never happens.
>
> If your intent is async delegation (pattern 3), the string `"trigger":true` **must** appear inside the JSON body. Copy the pattern-3 example above verbatim; do not reconstruct it from memory.
## When in doubt, use `/talk-to`
When you are not sure whether to use `/news-to` with `trigger:true` or `/talk-to`, **use `/talk-to`**. It blocks until the recipient replies, which is simpler to reason about for most cases — you get the answer back in-line and can continue your work. Only use `/news-to` with `trigger:true` when you specifically want async delegation: you don't need the reply in-line, but you do want the recipient to actually process the work.
Decision shortcut:
- Need the answer now to continue → `/talk-to` (pattern 1).
- Just telling somebody something → `/news-to` without `trigger` (pattern 2).
- Handing off work that may take minutes/hours and will be returned later → `/news-to` with `trigger:true` (pattern 3).
## Mandatory rule: when asked to "ask another agent"
If the user or manager says "ask coder …", "can you ask x …", or requests you to contact another agent:
1. You MUST use `/talk-to` (pattern 1) via curl and WAIT for their reply.
2. Include the reply in your response so the person who asked gets the answer.
3. Do NOT use SendMessage, Agent, or other built-in tools — use curl.
## Do not use `/message`
The old `/message` endpoint on the manager is **deprecated** — it responds with an `X-Deprecated` header and will be removed. Use `/talk-to` or `/news-to` on your local wrapper instead.
## How replies work (automatic)
**When someone sends you a message, your reply is sent automatically.** You do NOT need to run any curl command to reply.
1. Another agent sends you a message via `/talk-to` (which reaches you as `/talk`).
2. You process the message and generate your response.
3. Your response is automatically sent back to the sender.
**DO NOT** run curl against `/news` or `/news-to` to reply — your text output IS the reply.
## List available agents
```bash
curl -s $MANAGER_URL/agents -H "X-Id-Team: $ID_TEAM" | jq
```
The `name` field is the agent's full identifier (ENS domain after registration, or local name). Use this name as the `to` value when sending messages. The `url` field is the peer's REST-AP base URL — used by the catalog-aware selection flow below.
Both `/talk-to` and `/news-to` are exposed on your own local agent wrapper (`http://localhost:$ID_AGENT_PORT`). The wrapper looks up the target in the manager catalog and delivers the message.
## Choosing the right agent to delegate to
`/agents` only tells you **who exists**. It does not tell you who is the right peer for a given piece of work. Before `/talk-to` or `/news-to`, always run the catalog-aware selection flow.
### Step 1 — Enumerate peers
List candidates from the manager:
```bash
curl -s $MANAGER_URL/agents -H "X-Id-Team: $ID_TEAM" | jq '.agents[] | {name, alias, status, url}'
```
### Step 2 — BEFORE delegating, fetch each candidate's catalog
For every candidate from Step 1, GET `/catalog` and read `role`, `expertise`, `status`, `costTier`, and `notSuitableFor`. Do **not** rely on names or aliases alone:
```bash
# Single peer
curl -s http://localhost:<peer-port>/catalog | jq
```
```bash
# Manager-discovery substitution: resolve every peer's /catalog in one pass
for url in $(curl -s $MANAGER_URL/agents -H "X-Id-Team: $ID_TEAM" | jq -r '.agents[].url'); do
echo "== $url =="
curl -s "$url/catalog" | jq '{role, expertise, status, costTier, notSuitableFor}'
done
```
### Step 3 — Filter
Drop any candidate where:
- `status !== "available"` (e.g., `busy`, `offline`, `error`) — they cannot take new work.From idchain-world/id-agents, MIT.
More from idchain-world/id-agents
- 0.639score
task-discipline
idchain-world
Required lifecycle for non-trivial work.
SkillAFreshness: A★ 18Claude Code +9 - 0.598score
idagents-team-builder
idchain-world
Build an id-agents team correctly from scratch.
SkillBFreshness: B★ 18Claude Code +9 - 0.589score
idagents-admin-control
idchain-world
Programmatically manage an ID Agents team — add/remove agents, export/import team configs, rebuild and restart the manager, dispatch work to agents and poll…
SkillBFreshness: B★ 18Claude Code +9 - 0.552score
sound-symbolism
idchain-world
Analyze and choose names based on the perceptual qualities that letters and sounds carry.
SkillCFreshness: C★ 18Claude Code +9 - 0.542score
catalog
idchain-world
Update your REST-AP catalog to describe your role, expertise, and status to other agents and the manager.
SkillCFreshness: C★ 18Claude Code +9 - 0.541score
identity
idchain-world
Your agent identity — name and team.
SkillCFreshness: C★ 18Claude Code +9 - 0.492score
k8s-troubleshooter
idchain-world
Systematic Kubernetes troubleshooting and incident response.
SkillDFreshness: D★ 18Claude Code +9 - 0.492score
solidity-auditor
idchain-world
Security audit of Solidity code while you develop.
SkillDFreshness: D★ 18Claude Code +9 - 0.492score
x-ray
idchain-world
Generates an x-ray.md pre-audit report covering overview, enhanced threat model (protocol-type profiling, git-weighted attack surfaces, temporal risk…
SkillDFreshness: D★ 18Claude Code +9 - 0.488score
iac-terraform
idchain-world
Infrastructure as Code with Terraform and Terragrunt.
SkillDFreshness: D★ 18Claude Code +9 - 0.488score
ci-cd
idchain-world
CI/CD pipeline design, optimization, DevSecOps security scanning, and troubleshooting.
SkillDFreshness: D★ 18Claude Code +9 - 0.487score
wallet
idchain-world
OWS wallet — view addresses, sign transactions/messages, check balances, manage agent access.
SkillDFreshness: D★ 18Claude Code +9
Signals
- Stars
- 18
- Forks
- 4
- Open issues
- 0
- Last commit (this folder)
- Jul 25, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/idchain-world/id-agents
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from idchain-world
- 0.639score
task-discipline
idchain-world
Required lifecycle for non-trivial work.
SkillAFreshness: A★ 18Claude Code +9 - 0.598score
idagents-team-builder
idchain-world
Build an id-agents team correctly from scratch.
SkillBFreshness: B★ 18Claude Code +9 - 0.589score
idagents-admin-control
idchain-world
Programmatically manage an ID Agents team — add/remove agents, export/import team configs, rebuild and restart the manager, dispatch work to agents and poll…
SkillBFreshness: B★ 18Claude Code +9 - 0.552score
sound-symbolism
idchain-world
Analyze and choose names based on the perceptual qualities that letters and sounds carry.
SkillCFreshness: C★ 18Claude Code +9 - 0.542score
catalog
idchain-world
Update your REST-AP catalog to describe your role, expertise, and status to other agents and the manager.
SkillCFreshness: C★ 18Claude Code +9 - 0.541score
identity
idchain-world
Your agent identity — name and team.
SkillCFreshness: C★ 18Claude Code +9
Cite this page
inter-agent skill. Agent Mart. https://agentmart.dev/skills/idchain-world-inter-agent (last updated 2026-10-24)