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 lestrrat-ai/claude-code-plugins --skill compile-apigit clone --depth 1 https://github.com/lestrrat-ai/claude-code-pluginsWrote 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/lestrrat-ai/claude-code-plugins/compile-api)<a href="https://agentmods.dev/skills/lestrrat-ai/claude-code-plugins/compile-api"><img src="https://agentmods.dev/badge/skills/lestrrat-ai/claude-code-plugins/compile-api/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/lestrrat-ai/claude-code-plugins/compile-api"><img src="https://agentmods.dev/badge/skills/lestrrat-ai/claude-code-plugins/compile-api.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00058 | $0.00969 |
| Opus 5.5 | $0.00023 | $0.00388 |
| Sonnet 5.5 | $0.00012 | $0.00194 |
| Haiku 4.5 | $0.00006 | $0.00097 |
Grade A, and why
compile-api 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 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.
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.
What it actually says
Compile Fusion API Database
Invocation: Claude Code /fusion:compile-api; Codex $fusion:compile-api.
-
Resolve
scripts/compile_fusion_api.pyfrom this activeSKILL.mdto an absolute path. NEVER use a plugin-root environment variable. -
Run:
["python3", "<absolute-compile_fusion_api.py>"]Needs network access to
api.github.com(commit and file listing) andraw.githubusercontent.com(the stub files themselves), and to no other host:github.comis only the source string recorded in the database. The default output is the user cache (~/.cache/fusion-api-db/fusion-api.db), whichquery-apiprefers over the database bundled with the plugin — a recompile takes effect immediately, no plugin reinstall. -
Options, only when the user asks for them:
--ref <git-ref>compiles a specific ref of the reference repo (defaultmain).--source <dir>parses a local directory ofadsk/*.pystubs instead of downloading. It resolves no ref, so the two options are refused together (usage error, exit 2) rather than--refbeing ignored; a user asking for both wants a download of that ref.--output <path>writes elsewhere. Refreshing the plugin's bundled copy (authoring checkout of this plugin only) →--output <plugin>/skills/query-api/data/fusion-api.db, then commit the result.--self-testcompiles a built-in stub, asserts the stub-only member drop below, and exits without touching any database. Use it to verify the script after changing it; it takes no network and ignores--output.
-
Report the script's final line on stdout (path, symbol count, member count) and the
compiling <source>@<commit>line stderr opens with, as the source record. Every path emits that line: a download names the reference repo, the resolved commit, and the ref that was requested (compiling <repo>@<sha> (requested ref '<ref>')), a--sourcecompile names the local directory andlocalin place of a commit. Report the requested ref as well as the commit — the resolved commit alone cannot be checked against the ref the user named. Relay everywarning:line on stderr too: one kind reports how many statements used a construct the compiler does not index, one kind reports a warning Python raised while parsing a named stub, and one kind reports aSTUB_ONLY_MEMBERSentry (below) that matched nothing. The last means the compiler is still suppressing a member the stubs no longer declare — report it and say the entry needs review, but the database it wrote is usable. Non-zero exit → relay stderr as-is and stop.
The database tracks the SHIPPED RUNTIME, not the stubs, wherever the two disagree. The stubs are
auto-generated documentation and declare a few members the module Fusion imports does not define, so
the compiler drops those rather than indexing them — otherwise the database answers "yes, that
exists" about a call that raises AttributeError. STUB_ONLY_MEMBERS in the script names every
dropped member and owns the reasoning; info in query-api reports what a given database dropped
(stub_only_members_dropped). Adding an entry needs a diff against the runtime modules of the SAME
Fusion build (API/Python/packages/adsk/*.py in the install), never a different build: the reference
repo tracks a newer API than an installed Fusion, and that skew is a version gap, not a defect.
The script rebuilds the whole database from scratch; there is no incremental mode. It compiles into a staging file next to the output and replaces the output only after every stub has parsed and the result has been checked to be non-empty, so a compile that fails partway leaves the existing database in place. A compile that succeeds still discards the previous contents — anything hand-edited into that database is lost.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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 Changed · +14 lines 282a0a2df0dd
- 2mo ago First seen · 45 lines · 58 tokens per session scan A 74f451f8f575
compile-api is a skill published in the GitHub repository lestrrat-ai/claude-code-plugins (20 stars, last pushed 1mo ago), licensed MIT. It adds 58 tokens to every session and 969 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-30.
compile-api compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| compile-apilestrrat-ai/claude-code-plugins | Skill | 20 | 1mo ago | MIT | A | 58 | Claude Code |
| imagegenopenai/codex | Skill | 134k | today | Apache-2.0 | A | 113 | Codex |
| local-ai-agentsmicrosoft/ai-agents-for-beginners | Skill | 79k | yesterday | MIT | A | 200 | Claude Code, Codex |
| playwright-climicrosoft/playwright | Skill | 100k | yesterday | Apache-2.0 | A | 19 | Claude Code |
| browser-automationopenclaw/openclaw | Skill | 394k | today | MIT | A | 36 | Claude Code |
| systematic-debuggingobra/superpowers | Skill | 315k | 5d ago | MIT | A | 21 | Claude Code |
| next-cache-components-adoptionvercel/next.js | Skill | 143k | today | MIT | A | 95 | Claude Code |