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/timwuhaotian/the-pair/agents-mdgit clone --depth 1 https://github.com/timwuhaotian/the-pairWrote 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.
[](https://agentmods.dev/instructions/timwuhaotian/the-pair/agents-md)<a href="https://agentmods.dev/instructions/timwuhaotian/the-pair/agents-md"><img src="https://agentmods.dev/badge/instructions/timwuhaotian/the-pair/agents-md.svg" alt="Measured on agentmods" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.03090 | $0.03090 |
| Opus 5 | $0.01545 | $0.01545 |
| Sonnet 5 | $0.00618 | $0.00618 |
| Haiku 4.5 | $0.00309 | $0.00309 |
Grade A, and why
the-pair AGENTS.md 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 6d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
- **If the tool can be installed** (pip, npm, brew, curl), install or update it in an isolated environment and run `--help` / `--json` sample invocations to examine the actual CLI surface and event output firsthand. This How it starts
The opening of the file, as written. The whole thing — 205 lines — stays where its author put it; the contents beside it link to each section on GitHub.
AI Agent Guidelines for "The Pair"
This file contains instructions and context for any AI agents (like yourself) working on the the-pair repository.
Project Identity
"The Pair" is a Desktop application (v1.2.3) built with Tauri 2.x, React 19, and TypeScript. It orchestrates two local AI agents — a Mentor (planner/reviewer, read-only) and an Executor (code writer/command runner) — that cross-check each other's work. The app manages their lifecycle, monitors resources, tracks git changes, and provides a polished UI for humans to observe and intervene.
Tech Stack
- Framework: Tauri 2.0
- Backend: Rust
- Frontend: React 19, TypeScript
- Styling: Tailwind CSS v4,
clsx,tailwind-merge - Icons:
lucide-react - State Management:
zustand(usePairStore,useUpdateStore,useThemeStore) - Animations: Framer Motion
Architecture Rules
- Rust Backend vs. React Frontend:
- Never import Node.js built-ins directly into the Renderer (
src/renderer/src/). - Use Tauri commands in
src-tauri/src/to expose strict APIs to the frontend. - Frontend calls backend via
invoke()from@tauri-apps/api/core.
- Never import Node.js built-ins directly into the Renderer (
- Styling:
- Always use Tailwind CSS classes. Custom dark/light mode palette is defined in
src/renderer/src/assets/main.css. - Use the
cn()utility fromsrc/renderer/src/lib/utils.tsfor conditional class merging.
- Always use Tailwind CSS classes. Custom dark/light mode palette is defined in
- Agent Interactions:
- The application spawns processes. Always implement an iteration limit (
maxIterations) before pausing for human intervention. - Use the handoff guard (
src/renderer/src/lib/handoffGuard.ts) to prevent race conditions when pairs finish.
- The application spawns processes. Always implement an iteration limit (
- Error Handling:
- Handle permissions and locked files defensively in the Rust backend.
- Propagate errors cleanly to the frontend via Tauri commands to display in the
ErrorDetailPanel.
Rust Backend Modules (src-tauri/src/)
| Module | Responsibility |
|---|---|
pair_manager |
Pair lifecycle: create, list, delete, pause, resume, assign task, update models |
message_broker |
State machine for agent turn coordination and event routing |
process_spawner |
Spawns CLI processes, parses JSON event streams; delegates to provider trait for extraction |
provider_adapter |
Facade over the provider trait; legacy compatibility shim for ProviderAdapter::build_turn_command() etc. |
provider_registry |
ProviderKind enum, shared helpers (which_binary, collect_*), model discovery utilities |
providers |
Provider trait + per-provider modules (opencode.rs, codex.rs, claude.rs, gemini.rs, kimi.rs, pi.rs, kiro.rs, aider.rs). Each implements CLI args, token extraction, detection, and model metadata. |
model_catalog |
Static model metadata (display names, billing kind, recommended roles); delegates to provider trait for per-provider fields |
session_snapshot |
Persists and restores full pair state; supports session recovery after crash/restart |
skill_discovery |
Scans project dirs for .md skill files with YAML frontmatter |
resource_monitor |
Per-agent CPU/memory polling (1s interval) |
git_tracker |
Detects modified/added/deleted files relative to a baseline commit |
file_cache |
Lists files and parses @mention references in task specs |
path_env |
Refreshes $PATH from login shell so CLI tools are discoverable |
config_paths |
Resolves platform-specific config file locations |
stubs |
Placeholder Tauri commands not yet fully implemented |
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.
- 6d ago First seen · 205 lines · 3,090 tokens per session scan A 1e5392d2c754
the-pair AGENTS.md is an instructions file published in the GitHub repository timwuhaotian/the-pair (360 stars, last pushed 16d ago), licensed Apache-2.0. It adds 3,090 tokens to every session, about $0.0154 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other instructions, from other repositories
claude-code-settings copilot-instructions.md
Instructions for feiskyer/claude-code-settings, covering claude.md, environment setup, required dependencies, configuration and skills.
vibe-coding-prompt-template backend.instructions.md
Instructions for KhazP/vibe-coding-prompt-template: Read AGENTS.md, agentdocs/techstack.md, and agentdocs/codepatterns.md.
vibe-coding-prompt-template tests.instructions.md
Instructions for KhazP/vibe-coding-prompt-template, a project described as: Templates and workflow for generating PRDs, Tech Designs, and MVP and more using LLMs for AI IDEs.
cherry-studio AGENTS.md
AGENTS.md instructions for CherryHQ/cherry-studio, a project described as: AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs.
nexpath CLAUDE.md
Claude Code instructions for hi0001234d/nexpath, covering debugging, nexpath status, nexpath config get, nexpath config set and role: founder | indiehacker | pm.
ping-island AGENTS.md
AGENTS.md instructions for erha19/ping-island, covering agents.md, mission, start here, repo map and change routing.