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 Waddling-Penguin/mogkit --skill graphifygit clone --depth 1 https://github.com/Waddling-Penguin/mogkitWrote 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/waddling-penguin/mogkit/graphify)<a href="https://agentmods.dev/skills/waddling-penguin/mogkit/graphify"><img src="https://agentmods.dev/badge/skills/waddling-penguin/mogkit/graphify/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/waddling-penguin/mogkit/graphify"><img src="https://agentmods.dev/badge/skills/waddling-penguin/mogkit/graphify.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.00002 | $0.02423 |
| Opus 5.5 | $0.00001 | $0.00969 |
| Sonnet 5.5 | $0.00000 | $0.00485 |
| Haiku 4.5 | $0.00000 | $0.00242 |
Grade A, and why
graphify 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 — 189 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Purpose
graphify turns a folder of raw research into a structured, evidence-backed
graph the rest of the Discovery skills can interrogate. The graph is a
map of what the corpus actually says — it does not extend, summarize, or
infer beyond what the sources support.
It does NOT generate insights. It does not "complete" the picture. It does
not silently fill in plausible-sounding entities. Where the corpus is silent,
the graph is silent (or surfaces the silence as an explicit Assumption
node). Where the corpus is thin, the graph says so prominently — the thin
state is the primary state, not a problem to paper over.
Procedure
-
List every file in
sources/. Skipsources/README.md— it is the workspace boilerplate thatmogkit initships, not a real source. Also skip any file without a readable text extension (.md,.markdown,.txt). Note any skipped non-trivial files inmeta.notes. -
For each file, read it end to end. Parse the YAML frontmatter for
type(e.g.interview,ticket,prd,memo,research,transcript,note,other). If a file has notype, treat it asuntaggedand note it inmeta.notes. -
Compute
meta:generated: current ISO-8601 timestamp.sourceCount: number of files contributing to the graph.sourceTypes: unique types observed.health: derived per the rule below.notes: any skipped files, ambiguities, parse warnings.
Health rule:
thinifsourceCount < 8ORuniqueTypes < 2(where untagged counts as zero distinct types).richifsourceCount >= 20ANDuniqueTypes >= 3.developingotherwise.
-
Branch on health before extraction:
- If health is
thin: extract entities normally but state prominently ingraph.mdthat the corpus is thin and the downstream skills will gate confidence accordingly. Do not invent additional entities to pad the graph. A small honest graph is the correct output. - If health is
developingorrich: proceed to full extraction.
- If health is
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 · 189 lines · 2 tokens per session scan A 42498937c1ce
graphify is a skill published in the GitHub repository Waddling-Penguin/mogkit (5 stars, last pushed 5mo ago), licensed MIT. It adds 2 tokens to every session and 2,423 once invoked, about $0.0000 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
janitor-discover
Find new skills on GitHub or check a specific skill before installing. Use when the user wants to search for skills, evaluate a skill URL, check overlap and security risk before installing, or compare a local skill against alternatives. Trigger with '/janitor-discover'.
find-skills
Discovers, searches, and installs skills from multiple AI agent skill marketplaces (400K+ skills) using the SkillKit CLI. Supports browsing official partner collections (Anthropic, Vercel, Supabase, Stripe, and more) and community repositories, searching by domain or technology, and installing specific skills from…
find-skills
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
feishu
Work with Feishu or Lark bots, docs, sheets, bitables, approval flows, and OpenAPI/MCP setup without hardcoding credentials.
interview
Ask one useful structured question at a time only when material product/implementation choices are genuinely missing; remember answers and produce a brief/spec. Discoverable facts should be investigated instead of asked.
refocusing
Use when a long-running agent may have lost the product outcome, when context was compacted, when work has crossed a major boundary, or when a fresh path-based trace is needed before the next consequential action. Not for fresh-session orientation, waking an idle seat, or checkpoints.