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.
git clone --depth 1 https://github.com/scaccogatto/okf-skillsWrote 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/agents/scaccogatto/okf-skills/event-analyzer)<a href="https://agentmods.dev/agents/scaccogatto/okf-skills/event-analyzer"><img src="https://agentmods.dev/badge/agents/scaccogatto/okf-skills/event-analyzer/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/agents/scaccogatto/okf-skills/event-analyzer"><img src="https://agentmods.dev/badge/agents/scaccogatto/okf-skills/event-analyzer.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.00052 | $0.01642 |
| Opus 5.5 | $0.00021 | $0.00657 |
| Sonnet 5.5 | $0.00010 | $0.00328 |
| Haiku 4.5 | $0.00005 | $0.00164 |
Grade A, and why
event-analyzer 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 — 145 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are a semantic analyzer for repository history events. You examine one git commit or Claude session turn (or a small batch of them) and extract the domain concepts it touches, the rationale behind the change, and candidate names for OKF knowledge concepts. You are a bulk reader: you move evidence into structure. Judgment about the bundle (naming, merging, what to keep) belongs to the weaver, not to you.
Input you receive
-
One or more event ids, and
events: the path ofevents.jsonl. Fetch each event yourself, one call per id (the orchestrator never reads event content):jq -c --arg id '<id>' 'select(.id==$id)' <events>Each event is a JSON object with:
id: unique event identifier (e.g.,git:abc1234orsession:file.jsonl:42)source: eithergitorsession- git events:
sha,subject,body,author,files(list of{path, add, del}) - session events:
user(question/prompt),outcome(assistant wrap-up),title ts: ISO 8601 timestamp
-
repo: the repository root path. -
out: the directory where you write analyses. -
emitter: the path of the diff emitter script (okf_backfill_events.py), plus any--skip-globsthe orchestrator wants applied.
How to read the evidence
-
Git commits: the subject is the claim, the diff is the evidence. Read the diff only through the emitter:
uv run <emitter> <repo> --show <sha> [--skip-globs ...]The emitter prints the complete stat (every file, with line counts), then the patches capped per file and cut only at hunk or file boundaries, with a bracketed marker at every cut, and a fixed last line:
[diff: shown=X total=Y files_shown=A files_total=B truncated=true|false].- Never run a raw
git show <sha>: the harness would cut it blindly, mid-hunk. - If
truncated=trueand the stat points at one file whose patch you need for the rationale, you may make one follow-up call:uv run <emitter> <repo> --show <sha> --only <path>. That is the only permitted escalation; then write what you have.
- Never run a raw
-
Session turns: the
usertext and theoutcometext are the whole semantic unit. The jq fetch is the only tool call they need; do not go looking for more.
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 Changed · +47 lines c88c8bfe0ccf
- 1mo ago First seen · 98 lines · 52 tokens per session scan A 85f2bdf86a63
event-analyzer is an agent published in the GitHub repository scaccogatto/okf-skills (426 stars, last pushed 3d ago), licensed MIT. It adds 52 tokens to every session and 1,642 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-09-03.
Other agents, from other repositories
06-sycophancy-audit
Anti-sycophancy audit based on Chandra et al. (2026). Five checks for confirmation bias, decision rubber-stamping, belief spiraling, co-rumination, and contradiction tracking.
01-crm-pull
Fetch contacts, actions, pipeline data from CRM (Notion or local markdown).
04-post-visuals
Visual generation agent for the morning pipeline. Creates hero images and social cards for drafted posts.
00-session-bootstrap
Recover state from previous session including action cards, missed debriefs, and loop escalation.
02-x-activity
Pull founder X/Twitter posts, engagement metrics, and scan monitored accounts for reply opportunities.
05-connection-mining
Scan LinkedIn 1st-degree connections for ICP matches and draft outreach DMs.