inter-agent-chat

inter-agent-chat is a skill for Claude Code from tessron/claude-code-skills. It costs 56 tokens per session (618 once invoked), scanned A, original, MIT.

A guide for sending messages between separate Claude Code agents through their terminal sessions. It explains how to find an agent's terminal and how messages should be formatted.

In plain words
What is it for?
Messaging one agent, broadcasting to several agents, replying to incoming agent messages, and stopping communication with the documented kill switch.
Why use it?
It provides a way for agents working in parallel to exchange instructions or results when they cannot communicate through the same prompt.

Skill for Claude Code

Written for Claude Code: SessionStart hook event. Also seen: mentions Claude Code.

Good fit Messaging one agent, broadcasting to several agents, replying to incoming agent messages, and stopping communication with the documented kill switch.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/tessron/claude-code-skills/inter-agent-chat
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add tessron/claude-code-skills --skill inter-agent-chat
Clone the repo
git clone --depth 1 https://github.com/tessron/claude-code-skills

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for inter-agent-chat

README.md
[![agentmods](https://agentmods.dev/badge/skills/tessron/claude-code-skills/inter-agent-chat/github.svg)](https://agentmods.dev/skills/tessron/claude-code-skills/inter-agent-chat)
Your own site
<a href="https://agentmods.dev/skills/tessron/claude-code-skills/inter-agent-chat"><img src="https://agentmods.dev/badge/skills/tessron/claude-code-skills/inter-agent-chat/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for inter-agent-chat

Your own site · 80×15
<a href="https://agentmods.dev/skills/tessron/claude-code-skills/inter-agent-chat"><img src="https://agentmods.dev/badge/skills/tessron/claude-code-skills/inter-agent-chat.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 56 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 618 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00056 $0.00618
Opus 5.5 $0.00022 $0.00247
Sonnet 5.5 $0.00011 $0.00124
Haiku 4.5 $0.00006 $0.00062

Measured 2mo ago against content hash 89b4badcb2a6, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

inter-agent-chat scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.

The scan reads SKILL.md. This mod also ships 1 executable file (register-pts.sh), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Asks for rootlowPrivilege escalation

A mod that escalates privileges can change anything on the machine, not only the project.

sudo python3 -c "

Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.

inter-agent-chat/SKILL.md · 59 lines

How it starts

The opening of the file, as written. The whole thing — 59 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Inter-Agent Terminal Chat

Send messages directly into another agent's Claude Code prompt via TIOCSTI terminal injection. Messages enter the receiving agent's context window as user input.

Discovery — PTS Registry

Registration is automatic via SessionStart hook. Do NOT register manually (tty doesn't work inside Claude Code).

Registry: /tmp/agent-pts/<agentName> — one file per agent containing its /dev/pts/N.

Sending

Inject characters into target's terminal input buffer using TIOCSTI ioctl. Only change the target and message:

sudo python3 -c "
import fcntl, termios, os, time
msg = '[@agentB] your message here. reply via inter-agent-chat skill.\r'
fd = os.open('$(cat /tmp/agent-pts/agentB)', os.O_WRONLY)
for c in msg:
    fcntl.ioctl(fd, termios.TIOCSTI, c.encode())
    time.sleep(0) # must yield to avoid paste detection
os.close(fd)
"

On the first message to an agent, end with "reply via inter-agent-chat skill." so they use this skill to reply. After that, just [@agentB] message is enough.

\r submits. \n does NOT submit (just adds a blank line). Always end with \r.

time.sleep(0) is required — without a thread yield between characters, the terminal detects rapid input as a paste and the message won't submit. sleep(0) adds negligible overhead and has been tested reliably up to 32K characters.

For broadcast: loop over /tmp/agent-pts/*, skip yourself.

Message Format

[@agentB] message               # single recipient
[@agentA @agentC] message       # multi-recipient (send to each listed)
[@all] message                  # broadcast to all agents
[@user] I need guidance         # flag for human attention
[@stop]                         # kill switch — stop all inter-agent chatter

Receiving

When you see [@yourName] or [@all] as input:

  1. Recognize it as an inter-agent message, not a user command
  2. Process the content — answer questions, act on directives
  3. Reply if needed — use this skill to inject into the SENDER's pts (not your own)
  4. [@stop] — stop immediately. Do not reply. Return to user-directed work.
  5. [@user] — for the human, not you (unless you're sending it)

Read the full file on GitHub · 59 lines

Files

What ships with it

3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2mo ago First seen · 59 lines · 56 tokens per session scan A 89b4badcb2a6

Subscribe to this mod's changes

inter-agent-chat is a skill published in the GitHub repository tessron/claude-code-skills (2 stars, last pushed 7mo ago), licensed MIT. It adds 56 tokens to every session and 618 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 1 finding (asks for root). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

chief-data-officer-advisor

Use for data strategy decisions: training models on customer data, warehouse vs lakehouse vs mesh, valuing data for a raise or M&A, or data hiring order. Runs aitrainingdataaudit.py, dataproductstrategypicker.py and dataassetvaluator.py.

alirezarezvani/claude-skills · 61 tokens

wrap-up

Use when closing out a launched managed agent ('wrap up', 'what do I own now'). Inventories primitives with primitivesinventory.py, regenerates the overview with overviewpage.py and suggests next upgrades with upgradesuggester.py.

alirezarezvani/claude-skills · 49 tokens

xiaohongshu-search-full

Search Xiaohongshu (XHS / RedNote) notes by keyword with full field extraction including body text, topics/tags, image list URLs, video stream URL, publish timestamp, and all engagement stats (likes, collects, comments, shares). Supports all page filter options: sort order (general, latest, most liked, most commented…

browser-act/skills · 254 tokens

x-tweet-by-conversation

Collects every tweet in an X (Twitter) conversation thread given a conversation id (root tweet id) — the focal tweet plus all replies, sub-replies, and quote chains — and returns normalized per-tweet data with text, author, engagement counts, media, hashtags, mentions, inreplyto mapping, and cursor for pagination. Use…

browser-act/skills · 218 tokens

amazon-reviews-api-skill

This skill helps users automatically extract Amazon product reviews via the Amazon Reviews API. Agent should proactively apply this skill when users express needs like getting reviews for Amazon product with ASIN B07TS6R1SF, analyzing customer feedback for a specific Amazon item, getting ratings and comments for a…

browser-act/skills · 124 tokens

amazon-competitor-analyzer

Scrapes Amazon product data from ASINs using browseract.com automation API and performs surgical competitive analysis. Compares specifications, pricing, review quality, and visual strategies to identify competitor moats and vulnerabilities.

browser-act/skills · 48 tokens