reply-conventions

reply-conventions is a skill for Claude Code, Codex from UstaLabs/supermux. It costs 44 tokens per session (650 once invoked), scanned A, original, MIT.

Instructions for replying from a supermux session, a system that connects one agent session to multiple chat clients. They explain how Codex, Cursor, and Claude Code sessions send visible messages to users.

In plain words
What is it for?
Sending user-facing responses correctly from supermux, especially when distinguishing ordinary Codex or Cursor replies from Claude Code replies that require a reply tool.
Why use it?
They prevent replies from being lost in terminal output or sent through the wrong channel. The required method depends on which coding assistant is running.

Skill for Claude CodeCodex

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.

agentmods
npx agentmods add skills/ustalabs/supermux/reply-conventions
Any agent
npx skills add UstaLabs/supermux --skill reply-conventions
Clone the repo
git clone --depth 1 https://github.com/UstaLabs/supermux

Made for: Claude Code, Codex.

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

README.md
[![agentmods](https://agentmods.dev/badge/skills/ustalabs/supermux/reply-conventions.svg)](https://agentmods.dev/skills/ustalabs/supermux/reply-conventions)
Your own site
<a href="https://agentmods.dev/skills/ustalabs/supermux/reply-conventions"><img src="https://agentmods.dev/badge/skills/ustalabs/supermux/reply-conventions.svg" alt="Measured on agentmods" height="20"></a>
Per session 44 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 650 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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 $0.00044 $0.00650
Opus 5 $0.00022 $0.00325
Sonnet 5 $0.00009 $0.00130
Haiku 4.5 $0.00004 $0.00065

Measured 5d ago against content hash 4ab790aee9ff, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

reply-conventions scanned grade A with 0 findings 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 5d ago.

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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

src/core/plugins/mux-core-assets/skills/reply-conventions/SKILL.md · 56 lines

How it starts

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

Replying as a supermux session

You are running inside supermux: a broker connecting the user's chat client(s) to many agent sessions on this machine. You are ONE session. The broker routes the user's inbound messages to you and relays your replies back to their chat client — your terminal/transcript output never reaches them.

How replies reach the user (differs per agent)

  • Claude Code sessions: every user-facing word MUST go through the mcp__mux-shim__reply tool. Text written only to your transcript or tmux pane is invisible.
  • Cursor and Codex sessions: you do NOT call a reply tool. Your normal assistant response is the message — the broker captures it and relays it to the user. Just respond normally.

Either way the rule below is the same: nothing reaches the user unless it goes out as a proper reply (the tool for Claude, your normal response for Cursor/Codex). Terminal-only output never reaches them.

The one rule that matters

Everything the user should see must leave the session as a reply — via the mcp__mux-shim__reply tool (Claude) or your normal assistant turn (Cursor/Codex). The user reads it on their phone or web client, not in your terminal.

  • reply(chat_id, text, …) — send a message. Push-notifies. Your primary output.
  • Each inbound message carries chat_id and message_id in its meta. Pass that same chat_id back when replying.
  • Don't reply to empty inbounds. Genuine internal scratch work needs no reply.
  • Long replies (200+ words) are fine. Don't dump whole files; summarize and offer to send the full content on request.

Which channel am I on? (the chat_id prefix tells you)

  • telegram:…Telegram. Reactions, message edits, attachments, and voice are supported. You may format with markdownv2. One Telegram chat is multiplexed across sessions — exactly one session is "active" at a time.
  • web:…Web PWA. Reactions and edits are NOT supported — do not call react / edit_message. Attachments ARE supported. Markdown renders in the app, so do NOT use markdownv2. Every session is its own separate chat.

Read the full file on GitHub · 56 lines

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. 5d ago First seen · 56 lines · 44 tokens per session scan A 4ab790aee9ff

Subscribe to this mod's changes

reply-conventions is a skill published in the GitHub repository UstaLabs/supermux (22 stars, last pushed 6d ago), licensed MIT. It adds 44 tokens to every session and 650 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

helmor-debug-operate

Operate, reproduce, and debug a running local Helmor desktop development build through the Tauri MCP bridge. Use when the user asks to use Tauri MCP, towery MCP, the local dev build, the Tauri webview, visual end-to-end validation, UI automation, screenshots, DOM/accessibility snapshots, IPC or log tracing…

dohooo/helmor · 117 tokens

helmor-release

Prepare Helmor releases by inspecting the current branch, drafting a concise user-facing Changesets entry first (bump + body — keep it as short as possible), creating any needed pending in-app release announcement under .announcements/, and then showing the user the result with a short menu of adjustments they can…

dohooo/helmor · 110 tokens

helmor-bump-vendors

Bump or upgrade the pinned versions of Helmor's bundled agent CLIs, SDKs, and supporting binaries — Claude Code + claude-agent-sdk (lockstep), Codex, Cursor SDK, OpenCode, Kimi, Pi, and gh / glab / cloudflared / llama.cpp / Node. Encodes exactly which files to edit (sidecar/package.json…

dohooo/helmor · 185 tokens

helmor-cli

Use the Helmor CLI to remote-control Helmor from the terminal. Use when the user asks to inspect Helmor data/settings, manage repositories/workspaces/sessions/files, send prompts to agents, list models, use GitHub integration, inspect scripts, run Helmor as an MCP server, generate shell completions, quit a running…

dohooo/helmor · 158 tokens

helmor-debug-loop

Autonomous local-development debugging loop for Helmor bugs. Use when the user asks an agent to reproduce, diagnose, instrument, fix, or verify a Helmor local dev build issue using repeated local UI simulation, temporary logging, Tauri MCP/towery MCP, screenshots, DOM/accessibility snapshots, IPC traces…

dohooo/helmor · 100 tokens

open-dynamic-workflows

Write and run dynamic workflows: short JavaScript scripts in Claude Code's workflow dialect, run with the odw CLI outside the host agent's context, fanning subtasks out to coding-agent CLIs (Codex, Claude Code, Gemini, Qwen, Kimi, or your own) in a background process and handing back only the final result. Use this…

xz1220/open-dynamic-workflows · 141 tokens