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 instructions/yoreai/relay/agents-mdgit clone --depth 1 https://github.com/yoreai/relayWhat 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.03182 | $0.03182 |
| Opus 5 | $0.01591 | $0.01591 |
| Sonnet 5 | $0.00636 | $0.00636 |
| Haiku 4.5 | $0.00318 | $0.00318 |
Grade B, and why
relay AGENTS.md scanned grade B with 2 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 2d 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.
Sends data to an external URLmediumData exfiltration
A POST to an outside endpoint may be telemetry or may be exfiltration; either way the mod talks to somewhere, and you should know where.
allowlisted env (a full env made `lint: curl -d "$(env)"` an exfiltration one-liner). Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
allowlisted env (a full env made `lint: curl -d "$(env)"` an exfiltration one-liner). How it starts
The opening of the file, as written. The whole thing — 184 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Agent Instructions
Instructions for AI coding agents working on relay.
Source-of-truth files
README.md— what relay is, install/use, honest limits, roadmapCHANGELOG.md— released-version history and the reasoning behind each change (Keep a Changelog). Entries explain why, so this doubles as the design recorddefaults/router.yaml— starter directive: lanes → tiers → models (policy, shipped as data)defaults/catalog.yaml— the model facts table: price + quality class + serving backends. The only price source. A user'sprices.yamloverrides it per model andrelay updatecan't correct that, so relay never ships or writes one- This file — architecture, invariants, and the maintenance playbook
There is intentionally no TODO.md and no separate design doc. Released history and
rationale → CHANGELOG.md. Architecture and hard-won rules → here. Anything unbuilt is a
GitHub issue, not a file, so it can be discussed and closed.
After every code change
- Update
CHANGELOG.mdunder[Unreleased]— say why, not just what - Add/update tests for changed behavior
- Run
bun testandbun run typecheck - Keep employer/other-project entanglement out of this repo — no internal links, tickets, code, or anything implying a company sponsors this. The author's own bio naming their day job is fine; that's who they are, not a claim about who owns relay
Catalog maintenance (every few weeks — the "always looked at" table)
defaults/catalog.yaml is data on main: installed relays fetch it via
relay update directly from the repo — catalog changes need no release.
- Review model prices/classes against provider price pages and coding-agent leaderboards; add new models, drop dead ones (keep classes honest — a model's class is its quality bar, advise swaps only within a class). Prefer independently-verified benchmarks; vendor-only numbers are not a class promotion
- Check what the CLIs actually serve —
cursor-agent models,claude --help— and add a pinned id map entry for anything you route to - If the new model replaces an existing one at the same-or-lower price, give it
supersedes: [old-id]. That is the ONLY wayadvisecan tell existing users about a strictly-better model that saves them nothing (the cheaper-model rule stays silent) - Mirror every change in
EMBEDDED_CATALOG_YAML(src/embedded_defaults.ts) - Bump the
updated:date in BOTH copies bun run scripts/check-catalog.ts+bun test, then push to main
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.
- 2d ago First seen · 184 lines · 3,182 tokens per session scan B f3e9851577d7
relay AGENTS.md is an instructions file published in the GitHub repository yoreai/relay (2 stars, last pushed 24d ago), licensed Apache-2.0. It adds 3,182 tokens to every session, about $0.0159 per session on Opus 5. A static security scan graded it B with 2 findings (sends data to an external url, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other instructions, from other repositories
fff AGENTS.md
AGENTS.md instructions for dmtrKovalenko/fff, covering to clankers, development commands, building, testing and development tools and code quality.
bunqueue CLAUDE.md
Instructions for egeominotti/bunqueue, covering bunqueue, test isolation rules, architecture flow, directory structure and code guidelines.
gini-agent AGENTS.md
AGENTS.md instructions for Open-Curiosity/gini-agent, covering gini agent instructions, shape, adrs, boundaries and branches.
pi-coding-agent-forge AGENTS.md
Instructions for Firstp1ck/pi-coding-agent-forge, covering repository documentation rules, documentation goal, required documentation layers, readme.md — human guide and technical.md — advanced user reference.
rosetta pr-review-bots.instructions.md
How Copilot and CodeRabbit reviews manifest on a rosetta PR, why each looks different from a gh point of view, and what 'wrapping a PR' actually requires.
agentconfig.org AGENTS.md
Instructions for agentconfig/agentconfig.org, covering agent instructions for agentconfig.org, project overview, target audience, site structure and tech stack.