AgentLink AGENTS.md

Repository instructions for coding agents working on AgentLink, a system that connects two local coding-agent sessions through an encrypted relay. They describe the development workflow, project structure, and security rules.

In plain words
What is it for?
Developing and reviewing AgentLink changes, especially to its protocol, relay, cryptography, state handling, and logs.
Why use it?
They help agents avoid breaking encryption, identity checks, privacy protections, logging rules, and the intended limits of the relay.

Instructions file for CodexOpenCode

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 instructions/oryntai/agentlink/agents-md
Clone the repo
git clone --depth 1 https://github.com/Oryntai/AgentLink

Made for: Codex, OpenCode.

Per session 1,278 This file is loaded in full into every session.
When invoked 1,278 The same file — it is already loaded in full.
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.01278 $0.01278
Opus 5 $0.00639 $0.00639
Sonnet 5 $0.00256 $0.00256
Haiku 4.5 $0.00128 $0.00128

Measured yesterday against content hash a8336f0d2d21, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

AgentLink AGENTS.md 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.

AGENTS.md · 63 lines

How it starts

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

Instructions for coding agents

Project purpose

AgentLink connects exactly two local coding-agent sessions through an encrypted relay. It must never invoke a model API or grant one peer direct access to the other peer's machine.

Development workflow

  1. Use Node.js 20 or newer.
  2. Install dependencies with npm ci.
  3. Run npm run smoke after every protocol, relay, MCP, crypto, state, or logging change.
  4. Run git diff --check before committing.

Non-negotiable invariants

  • Keep message contents end-to-end encrypted. The relay must not receive a room secret or plaintext payload.
  • Authenticate all envelope routing metadata and verify the sender signature before decryption.
  • Preserve the identity-key proof and pinned-peer checks.
  • Never write room codes, private keys, auth values, tokens, or plaintext conversation fields to ordinary logs.
  • Keep .agent-link/, data/, logs/, and .env untracked.
  • Do not add a model-provider API dependency. AgentLink is a transport for subscription-backed local clients.
  • Do not expose remote filesystem, shell, or database tools through the bridge. Peers exchange natural-language text only.
  • Do not impose a conversation message-count limit. Network rate limits may protect the relay from abuse.
  • Ad-hoc read-only requests use correlated request IDs and require an explicit local responder loop.
  • Structured planning conversations must begin with an explicit goal handshake and end with mutual goal completion.
  • Completing one goal must not close the persistent peer transport; only owner shutdown or config hot reload closes it.
  • Exactly one authenticated local broker per participant config owns the remote WebSocket; GUI MCP processes are replaceable local frontends.
  • A frontend must negotiate protocol version, client range, and method list before using a broker, and may replace an incompatible one only through authenticated takeover. Stopping a broker by pid is an operator command, never automatic.
  • The activity ring stores metadata only. Request text, room codes, and payloads must never reach it, and it must stay bounded.
  • Under the manual approval policy a peer request must reach no local agent before the owner approves it: not through the inbox, not through a claim, not through a waiter, and not through a broadcast. Only the owner's window may read its text while it is held.
  • A guest is a peer that asks, never one that acts. Nothing in AgentLink may give the peer a direct path to files, shells, or tools; the answering agent decides what to do under its own prompt and approvals.
  • An invite code carries the room secret, so it is a bearer credential: it must always expire, be single use, and be revocable while pending. The invite registry stores no room code, no room secret, and no invite code.
  • An invite is consumed by the issuing side during the peer handshake, against the peer public key, and the consumption must be durably recorded before the peer is pinned. If it cannot be recorded, refuse the peer.
  • Local state files shared by more than one process are updated under a cross-process lock and merged monotonically. Pinned keys, bindings, and replay ids must never be lost to a concurrent writer.
  • A room binds to the first peer identity that proves membership. Admitting a different peer requires rotating the room, and this must hold even if the relay forgets its own membership state.
  • An unarmed GUI task must never be treated as available. Generic MCP wakeup is limited to resolving an already pending call.
  • Agent-facing instructions must check inbox and outbound status at task start, after substantial work units, before final output, and after owner notification without tight polling.

Read the full file on GitHub · 63 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. yesterday First seen · 63 lines · 1,278 tokens per session scan A a8336f0d2d21

Subscribe to this mod's changes

AgentLink AGENTS.md is an instructions file published in the GitHub repository Oryntai/AgentLink (0 stars, last pushed 2d ago), licensed MIT. It adds 1,278 tokens to every session, about $0.0064 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.