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 skills add firstintent/a2a-bridge --skill context-protectgit clone --depth 1 https://github.com/firstintent/a2a-bridgeWrote 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/skills/firstintent/a2a-bridge/context-protect)<a href="https://agentmods.dev/skills/firstintent/a2a-bridge/context-protect"><img src="https://agentmods.dev/badge/skills/firstintent/a2a-bridge/context-protect/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/firstintent/a2a-bridge/context-protect"><img src="https://agentmods.dev/badge/skills/firstintent/a2a-bridge/context-protect.svg" alt="Reviewed on agentmods" width="80" 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.00054 | $0.01131 |
| Opus 5.5 | $0.00022 | $0.00452 |
| Sonnet 5.5 | $0.00011 | $0.00226 |
| Haiku 4.5 | $0.00005 | $0.00113 |
Grade A, and why
context-protect 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 1mo 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.
How it starts
The opening of the file, as written. The whole thing — 129 lines — stays where its author put it; the contents beside it link to each section on GitHub.
context-protect — delegate a long dig, keep the summary
Your primary session's context is the scarcest resource it has. When a subtask would otherwise dump a long log, a codebase audit, or a full transcript analysis into it, push the work to a peer and keep only the summary. The peer stays free to grind through the full data; your session stays free to reason about the conclusion.
When to use
- The input is long (log file, directory listing, CI trace, transcript).
- You only need a conclusion, a bug location, a count, or a bullet list — not the raw material.
- The primary session does not need to answer follow-up questions about other details buried in the input. If it might, fetch the full output instead; summarization is lossy.
When NOT to use
- You cannot enumerate the question up front. Summarization works when you know what you want to learn; it fails when you are still orienting.
- The peer's summary is not trustworthy without spot-checks. Either
verify the summary via a second pass (see
skills/verify/) or pull the raw data. - The task is cheap to run inline. Paying for a second agent's context just to avoid a 200-token paste is not worth it.
Protocol
Set Message.metadata.return_format to "summary" on the
message/stream request:
{
"message": {
"parts": [{ "kind": "text", "text": "<digest prompt>" }],
"metadata": { "return_format": "summary" }
}
}
The peer adapter surfaces return_format: "summary" to the peer
(the bridge does not summarize on its own — adapters relay the hint
to the model). The peer is expected to compress its own output
before returning; the shape that comes back is ordinary text, not a
structured artifact.
Prompt scaffold
You are assisting a larger session that is TIGHT ON CONTEXT. Answer
the QUESTION below using the INPUT, then return ONLY the summary
requested — no raw excerpts longer than a single line of evidence
per bullet, no preambles, no "here is the summary" framing.
QUESTION:
<one specific question, e.g. "Which request ids failed with a
timeout between 14:00 and 15:00, and which upstream did they point
at?">
INPUT:
<paste or attach the log / audit / transcript>
OUTPUT FORMAT:
- Bullet list, at most N bullets.
- Each bullet: one fact, one citation (timestamp / line / file:line).
- End with a single-sentence "bottom line" summarizing the pattern.
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.
- 1mo ago First seen · 129 lines · 54 tokens per session scan A 674f44d19ee6
context-protect is a skill published in the GitHub repository firstintent/a2a-bridge (9 stars, last pushed 6mo ago), licensed MIT. It adds 54 tokens to every session and 1,131 once invoked, about $0.0002 per session on Opus 5.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
plugin-creator
Create and scaffold plugin directories for Codex with a required .codex-plugin/plugin.json, optional plugin folders/files, valid manifest defaults, and personal-marketplace entries by default. Use when Codex needs to create a new personal plugin, add optional plugin structure, generate or update marketplace entries…
codex-pr-body
Update the title and body of one or more pull requests.
update-v8-version
Update Codex's pinned v8 / rustyv8 versions, validate the release-candidate path, and investigate failed V8 canary or artifact builds. Use when asked to bump V8, update rustyv8 artifacts, prepare or validate a V8 release candidate, check v8-canary, or diagnose why a V8 version update no longer builds.
qa-testing
Verify your work by actually operating the app or website you changed, instead of assuming it works. Strongly recommended whenever you build, modify, or debug a web app, website, or desktop GUI app. Drive real browsers with the agent-browser CLI and native desktop apps with the cua-driver CLI. These are installed on…
path-types
Choose Rust types for operating system paths across the Codex repository. Use when defining new path-bearing types or explicitly migrating existing ones.
code-review-testing
For agent changes prefer integration tests over unit tests. Integration tests are under core/suite and use testcodex to set up a test instance of codex.