Borrowing it
Nothing to install: this file belongs to ashaychangwani/imprint. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/ashaychangwani/imprint/main/.claude/skills/imprint-auth-compile-log/SKILL.mdgit clone --depth 1 https://github.com/ashaychangwani/imprintWrote 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/ashaychangwani/imprint/imprint-auth-compile-log)<a href="https://agentmods.dev/skills/ashaychangwani/imprint/imprint-auth-compile-log"><img src="https://agentmods.dev/badge/skills/ashaychangwani/imprint/imprint-auth-compile-log/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/ashaychangwani/imprint/imprint-auth-compile-log"><img src="https://agentmods.dev/badge/skills/ashaychangwani/imprint/imprint-auth-compile-log.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.00059 | $0.02961 |
| Opus 5.5 | $0.00024 | $0.01184 |
| Sonnet 5.5 | $0.00012 | $0.00592 |
| Haiku 4.5 | $0.00006 | $0.00296 |
Grade B, and why
imprint-auth-compile-log scanned grade B 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 2mo 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.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
T=$(find ~/.claude/projects -name "$SID.jsonl" 2>/dev/null | head -1); echo "transcript: $T" How it starts
The opening of the file, as written. The whole thing — 213 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Investigate a site's auth-tool compile
The authenticate_<site> tool is compiled by a separate agent loop from data tools
(auth-compile-agent.ts → an MCP-server-driven claude-cli/codex session; the live login runs
in auth-verifier.ts on headed cdp-replay). Its logs live in a few places — and the most
important one is not the file you'd guess.
Key gotcha:
~/.imprint/<site>/authenticate_<site>/.compile-log.jsonis hook events only (SessionStart / init / success). The agent's actual tool calls + reasoning are in a separate claude-cli transcript keyed by thesession_idinside that hook log. Step 2 shows how to find it.
Substitute the real site slug for <site> throughout (e.g. amex-fhr, remitly). The auth tool
dir is always ~/.imprint/<site>/authenticate_<site>/.
Step 1 — Ongoing or completed?
SITE=<site>; AUTHDIR=~/.imprint/$SITE/authenticate_$SITE
# Is a teach process still alive? (auth runs HEADED — a visible Chrome window is open mid-run)
pgrep -fl "cli.ts teach $SITE" ; pgrep -afl "Chrome for Testing|Chromium" | head -1
# Completed? these appear only after the auth block finishes
ls -la "$AUTHDIR"/.compile-done.json "$AUTHDIR"/workflow.json "$AUTHDIR"/index.ts 2>/dev/null
| Signal | Meaning |
|---|---|
.compile-log.json mtime advancing, no .compile-done.json |
Ongoing — agent still shaping/verifying |
spinner shows Auth compile: turn N — verify initiate … |
Ongoing, in live verification |
| a headed Chrome window is open + a push/OTP hit your phone | Ongoing, initiate fired — approve it |
.compile-done.json present + workflow.json/index.ts emitted |
Completed (success) — emit() only runs on success |
run log says Auth tool compiled + session stored / compilation failed |
Completed — success / failure |
Step 2 — Find the artifacts (incl. the real transcript)
SITE=<site>; AUTHDIR=~/.imprint/$SITE/authenticate_$SITE
# 1. Hook log — grab the claude-cli session_id from it
SID=$(python3 -c "import json,sys; d=json.load(open('$AUTHDIR/.compile-log.json')); print(next((e.get('session_id') for e in d if e.get('session_id')), ''))")
echo "auth session: $SID"
# 2. The REAL agent transcript (full tool-call conversation), located by session_id
T=$(find ~/.claude/projects -name "$SID.jsonl" 2>/dev/null | head -1); echo "transcript: $T"
# 3. Final outcome
cat "$AUTHDIR/.compile-done.json" 2>/dev/null
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.
- 2mo ago First seen · 213 lines · 59 tokens per session scan B 12834b22c9ae
imprint-auth-compile-log is a skill published in the GitHub repository ashaychangwani/imprint (24 stars, last pushed 15d ago), licensed MIT. It adds 59 tokens to every session and 2,961 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
smiles-validation
Strict SMILES validation, structural comparison, and modification verification. Catches invalid LLM-generated molecules.
gini-bug-report
File a locally-captured, already-redacted Gini crash report as a GitHub issue, with the user's consent. Reads the pending crash queue and delegates the actual filing to the github-issues skill.
investigate
A structured root-cause investigation method for software bugs. It moves from history and reproduction through tested hypotheses, a focused fix, verification, and a report.
bugfix-triage
A method for locating the cause of a bug before changing code, using a minimal reproduction and step-by-step narrowing of the failing input and code path.
rust-native-scanner
Expertise in high-performance native codebase scanning and validation using Rust. Trigger this skill when asked to "scan the codebase natively", "run rust scanner", or "validate bxc core using rust".
api-linter
MCP definition linter rules reference. Use when bun run lint:mcp or bun run devcheck reports a lint error or warning (format-parity, schema-is-object, name-format, server-json-, etc.) and you need to understand the rule, its severity, and how to fix it. Every rule ID the linter emits has an entry in this doc.