compile

A workflow for compiling an Anthropic-style skill, meaning a folder containing a SKILL.md file and optional reference files, into a runnable pipeline.

In plain words
What is it for?
Use it when you want to make a skill deterministic and choose a DBOS, Cloudflare, or Temporal runtime for the generated workflow.
Why use it?
It handles the compilation process through the rote command-line tool instead of requiring you to design the pipeline manually.

Skill for Claude CodeCodex

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 skills/trevhud/rote/compile
Any agent
npx skills add trevhud/rote --skill compile
Clone the repo
git clone --depth 1 https://github.com/trevhud/rote

Made for: Claude Code, Codex.

Per session 144 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,386 The whole file, excluding the scripts and references it only reads on demand.
Security scan C 2 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.00144 $0.01386
Opus 5 $0.00072 $0.00693
Sonnet 5 $0.00029 $0.00277
Haiku 4.5 $0.00014 $0.00139

Measured 2d ago against content hash 33bdde84d678, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade C, and why

compile scanned grade C with 2 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 2d 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.

Downloads and executes remote codehighSupply chain

curl | sh runs whatever the server returns today, which is not necessarily what it returned when this was reviewed.

curl -LsSf https://astral.sh/uv/install.sh | sh

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -LsSf https://astral.sh/uv/install.sh | sh
plugin/skills/compile/SKILL.md · 132 lines

How it starts

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

Compile a skill

You orchestrate the rote CLI. It runs an LLM compiler agent over a source skill and emits a deterministic pipeline. Your job: resolve the inputs, run the CLI, then interpret the output for the user. You never classify nodes or write pipeline.yaml yourself — the CLI's agent does.

1. Identify the source skill

The source is a directory containing a SKILL.md (optionally a references/ folder). The user names it, or you infer it from context (a skill just discussed, a path in the conversation, .claude/skills/* or skills/* in the project).

Confirm the resolved absolute path with the user before running. Compilation costs real time and tokens; never guess-and-go. If the directory has no SKILL.md, stop and ask.

2. Pick a runtime target

Ask the user which runtime, with these tradeoffs (one line each):

Runtime Choose when Emits
dbos No infra to run — durability lives in SQLite/Postgres, runs anywhere Python runs Python
cloudflare You want serverless, fully managed execution on Cloudflare Workers TypeScript
temporal You already operate (or want) a Temporal cluster Python

If the user has no opinion and no existing infra, use dbos — it is the CLI's default and the only target with zero standing infrastructure (you can omit --runtime entirely in that case).

3. Resolve the CLI (uv)

The CLI ships on PyPI as the rote-cli package and is run via uvx — no virtualenv, no pip, nothing to install beyond uv itself. The package's executable is named rote, so every invocation is uvx --from rote-cli rote <args>. Do not run uvx rote-cli ... — uvx looks for an executable named after the package and the published wheel doesn't ship one.

  1. Check uv: uv --version. If missing, tell the user to install it with one command, then re-check:

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  2. Confirm the CLI resolves:

    uvx --from rote-cli rote --version
    

Read the full file on GitHub · 132 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. 2d ago First seen · 132 lines · 144 tokens per session scan C 33bdde84d678

Subscribe to this mod's changes

compile is a skill published in the GitHub repository trevhud/rote (6 stars, last pushed 3d ago), licensed Apache-2.0. It adds 144 tokens to every session and 1,386 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it C with 2 findings (downloads and executes remote code, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.