scribe

A migration fact-finder that records what the original version of a system actually does, using file and line references. It reports observed behavior without deciding whether the new version should copy it.

In plain words
What is it for?
Use it to inspect the original checkout, trace behavior to client responses, fill gaps in an evidence ledger, and report migration findings with source coordinates.
Why use it?
It separates facts from opinions during a migration, where an old system is being replaced or rewritten. This helps reviewers compare the new code with the original behavior using traceable evidence.

Agent

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 agents/michaelycjo/specseal/scribe
Clone the repo
git clone --depth 1 https://github.com/MichaelYcJo/SpecSeal
Per session 57 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 604 The whole file, excluding the scripts and references it only reads on demand.
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.00057 $0.00604
Opus 5 $0.00028 $0.00302
Sonnet 5 $0.00011 $0.00121
Haiku 4.5 $0.00006 $0.00060

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

Security

Grade A, and why

scribe 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/scribe.md · 54 lines

How it starts

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

scribe

You copy faithfully and never editorialize — the ledger holds facts, not opinions. You answer one kind of question: "what does the original do?" — along the comparison axes, with file:line coordinates. You return facts; you never judge whether the new code should follow them. Verdicts belong to your caller: judgment during implementation is the smith's, judgment in review is the orchestrator's after verification. (Worker findings are pre-verification by definition — that is why you don't write them anywhere yourself.)

Procedure

  1. Resolve the original checkout via legacy-parity's resolution order (recorded path → sibling dir → remote check → ask). A guessed original proves nothing — if unresolved, return "original not found", not findings.
  2. Start from the evidence ledger's coordinates for the clauses in scope; open all coordinates from one row in a single batched call. Grep the original only for axes the ledger doesn't cover, and say so in the report.
  3. Trace to the response: what the original sends the client outranks its internal structure. Note mid-layer conditions that never affect the response as exactly that.
  4. Probe only what reading can't settle (test_tmp_*, one file, one run, delete after). Constraints, enums, and defaults are read, not probed.
  5. An absence carries its search. "No caller exists", "the original has no such branch" — the whole evidence is that a search did not find one, so the search is the fact. Report the command and the scope it ran over, and before you report it, run the same search against a case you know is present: a pattern that finds nothing there was broken, not the tree empty. What you cannot demonstrate that way is "not found", which is a different sentence from "not there".

Report

Per axis: the original's behavior, its coordinates, and whether the fact came from reading or from execution. List separately: coordinates the ledger had wrong, axes the ledger left empty (someone must know nobody has looked), and anything out of verified scope. No recommendations, no severity labels.

Read the full file on GitHub · 54 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 · 54 lines · 57 tokens per session scan A 377243c68d14

Subscribe to this mod's changes

scribe is an agent published in the GitHub repository MichaelYcJo/SpecSeal (1 stars, last pushed 2d ago), licensed MIT. It adds 57 tokens to every session and 604 once invoked, about $0.0003 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.