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.
npx agentmods add skills/agentproto/ts/agentpushnpx skills add agentproto/ts --skill agentpushgit clone --depth 1 https://github.com/agentproto/tsWhat 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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00119 | $0.03725 |
| Opus 5 | $0.00060 | $0.01862 |
| Sonnet 5 | $0.00024 | $0.00745 |
| Haiku 4.5 | $0.00012 | $0.00373 |
Grade A, and why
agentpush 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 yesterday.
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.
How it starts
The opening of the file, as written. The whole thing — 285 lines — stays where its author put it; the contents beside it link to each section on GitHub.
agentpush — the agentpush ⇄ agentproto transmitter
Bidirectional bridge between an imported agentpush MCP server (Telegram,
etc.) and live agentproto sessions: transmit_message sends outbound and
can bind the recipient to the sending session, and inbound replies from that
contact then route straight into the SAME session as a real user turn —
instead of spawning a brand-new agent for every reply.
Source: packages/runtime/src/transmitter-bindings.ts,
inbound-adapters.ts, outbound-adapters.ts, inbound-router.ts,
inbound-watcher.ts, the inbound_*/transmit_message/telegram_bot_*
tools in orchestration-tools.ts/telegram-bot-creds.ts, and the
POST /inbound(/:slug) routes in http-server.ts. Full reference:
packages/runtime/docs/TRANSMITTER.md.
The model
One TransmitterBindingStore maps
(alias, source, contactRef) -> { sessionId, mode, provider?, lastSeenTs }
alias— the imported MCP alias (agentpush) or bot-token alias (telegram).source— the channel/phone/chat id the message is scoped to.contactRef— the sender's id within that source.sessionId— the agentproto session future inbound replies from this contact should route into.mode—"route"or"route-or-spawn"(the mode this binding was created under).provider— the outbound provider the binding was created through ("agentpush","telegram", …). Defaults to"agentpush".
Bindings live in memory, persist (debounced write) to
~/.agentproto/transmitter-bindings.json, load on construct, and start
empty on a missing/corrupt file rather than throwing. One store instance is
shared across the poll watcher, transmit_message, and the inbound HTTP
routes.
MCP tools that actually exist
All verified against orchestration-tools.ts / telegram-bot-creds.ts —
don't assume a verb exists beyond this list.
| tool | purpose |
|---|---|
transmit_message |
Send outbound through a provider; binds the recipient to a session by default. Registered only when both an MCP proxy and a binding store are wired. |
inbound_watcher_start |
Start a background poller against poll_inbound on an imported agentpush alias; spawns (or routes, per mode) per contact_ref. Returns a watcherId. |
inbound_watcher_stop |
Stop a watcher by id. Cursor position is preserved for a later restart. |
inbound_watcher_list |
List all watchers (running + stopped) with cursor, poll/fire times, spawn count. |
inbound_endpoint_create |
Create/update a provider-agnostic POST /inbound/<slug> webhook endpoint (dialect, alias, mode, optional signing secret). |
inbound_endpoint_list |
List endpoints. Secrets are never emitted. |
inbound_endpoint_delete |
Delete an endpoint by slug. |
telegram_bot_token_set |
Store/rotate a Telegram bot token (0600 file under ~/.agentproto/telegram-bot-creds/), never echoed back. |
telegram_bot_token_status |
Check whether a token is configured (fingerprint/last4 only). |
telegram_bot_set_webhook |
Call Telegram's setWebhook for a bot alias using the stored token. |
mcp_import |
Prerequisite: import the agentpush MCP server under an alias before any tool above can use it. |
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.
- yesterday First seen · 285 lines · 119 tokens per session scan A 56b8c45a8c05
agentpush is a skill published in the GitHub repository agentproto/ts (5 stars, last pushed 2d ago), licensed Apache-2.0. It adds 119 tokens to every session and 3,725 once invoked, about $0.0006 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-31.
Other skills, from other repositories
strands-review
Local preview of the strands-agents/devtools /strands review agent. Body is the upstream Task Reviewer SOP verbatim — do not paraphrase. Use when the user types /strands-review, asks for a "strands review" of a PR, or wants to anticipate what the remote /strands review GitHub Action will flag. Findings are close but…
docs-writer
Draft or rewrite Strands Agents documentation pages. Use when writing new doc pages, rewriting pages that failed audit, drafting sections for existing pages, or writing blog posts and release notes about Strands. Also triggers on "write a doc", "draft a page", "rewrite the quickstart", "add a tutorial for X"…
pr-create
Creates a GitHub pull request using the gh CLI. Use when the user asks to create, open, or submit a PR on GitHub.
document-service
This skill should be used when the user asks to "analyze this codebase", "document this service", "generate technical docs", "I inherited this code", "help me understand this system", "create docs for this project", "what does this system look like", "onboard me to this codebase", "this codebase has no docs"…
aws-step-functions
Build workflows with AWS Step Functions state machines using the JSONata query language. Covers Amazon States Language (ASL) structure, state types, variables, data transformation, error handling, AWS service integration, and migrating from the JSONPath to the JSONata query language.
hyperpod-version-checker
Check and compare software component versions on SageMaker HyperPod cluster nodes - NVIDIA drivers, CUDA toolkit, cuDNN, NCCL, EFA, AWS OFI NCCL, GDRCopy, MPI, Neuron SDK (Trainium/Inferentia), Python, and PyTorch. Use when checking component versions, verifying CUDA/driver compatibility, detecting version mismatches…