K8e Sandbox
xiaods/k8e
Run a goal end to end inside an isolated K8E sandbox pod (gVisor / Kata / Firecracker) instead of on the host: exec bash / Python / Node / TypeScript, install packages, move files in and out, reuse…
Compile a proven agent skill (a SKILL.md plus references) into a deterministic pipeline that runs without an LLM in the loop, then serve it back to Claude as an MCP tool.
$ npx skills add davila7/claude-code-templates --skill rote -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install davila7/claude-code-templates rote --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .claude/skills && cp -r skills-src/cli-tool/components/skills/workflow-automation/rote .claude/skills/rote && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "rote" agent skill from https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/workflow-automation/rote into .claude/skills/rote/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rote", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/workflow-automation/roteType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add davila7/claude-code-templates --skill rote -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install davila7/claude-code-templates rote --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .agents/skills && cp -r skills-src/cli-tool/components/skills/workflow-automation/rote .agents/skills/rote && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "rote" agent skill from https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/workflow-automation/rote into .agents/skills/rote/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rote", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add davila7/claude-code-templates --skill rote -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install davila7/claude-code-templates rote --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/cli-tool/components/skills/workflow-automation/rote .cursor/skills/rote && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "rote" agent skill from https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/workflow-automation/rote into .cursor/skills/rote/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rote", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/davila7/claude-code-templates.git --path cli-tool/components/skills/workflow-automation/rote--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add davila7/claude-code-templates --skill rote -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install davila7/claude-code-templates rote --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/cli-tool/components/skills/workflow-automation/rote .gemini/skills/rote && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "rote" agent skill from https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/workflow-automation/rote into .gemini/skills/rote/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rote", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install davila7/claude-code-templates roteInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add davila7/claude-code-templates --skill rote -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .github/skills && cp -r skills-src/cli-tool/components/skills/workflow-automation/rote .github/skills/rote && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "rote" agent skill from https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/workflow-automation/rote into .github/skills/rote/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rote", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add davila7/claude-code-templates --skill rote -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install davila7/claude-code-templates rote --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/cli-tool/components/skills/workflow-automation/rote .opencode/skills/rote && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "rote" agent skill from https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/workflow-automation/rote into .opencode/skills/rote/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rote", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
roteCompile a proven agent skill (a SKILL.md plus references) into a deterministic pipeline that runs without an LLM in the loop, then serve it back to Claude as an MCP tool.
Rote is an agent skill from davila7/claude-code-templates. Compile a proven agent skill (a SKILL.md plus references) into a deterministic pipeline that runs without an LLM in the loop, then serve it back to Claude as an MCP tool. Use when: rote, compile this skill, turn this skill into a workflow, make this skill deterministic, make this skill cheaper or faster, harden this skill for production, run this skill as a background job.
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Backend & APIs, covering Background jobs and MCP servers. It works with Python and TypeScript. The repository describes itself as: CLI tool for configuring and monitoring Claude Code. The licence is Apache-2.0.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 46b4d8b. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
uvxpipuvclaudewranglerbrewpipxFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
docs.astral.shgithub.compypi.orgFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
ANTHROPIC_API_KEYANTHROPIC_AUTH_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Rote loads about 1.9k tokens when it runs. Until then it costs about 95 tokens; SKILL.md has 960 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from davila7/claude-code-templates at commit 46b4d8b, republished under its Apache-2.0 licence (© davila7). 960 words, ~1,938 tokens.
.claude/skills/rote/SKILL.md (or your agent's skills folder).You orchestrate the rote CLI. It runs an LLM compiler agent over a source
skill once, and emits a pipeline that runs forever after without an agent
loop. Your job is to resolve the inputs, run the CLI, and interpret the
output. You never classify nodes or write pipeline.yaml yourself; the
CLI's compiler agent does that.
Use it on a skill the user has already run many times and wants to run many more, unattended. Exploratory or one-off work should stay an agent loop: flexibility is the point there, and there is nothing proven to compile yet. Say so and stop if that is what you are looking at.
The source is a directory containing a SKILL.md, optionally with 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, so never guess and go. If the
directory has no SKILL.md, stop and ask.
| Runtime | --runtime | Language | Choose when |
|---|---|---|---|
| DBOS (default) | dbos | Python | No orchestrator to deploy. SQLite for dev, Postgres for prod |
| Temporal | temporal | Python | You already operate a Temporal cluster |
| Plain Python | python | Python | Max legibility, stdlib only. Refuses pipelines with HITL gates |
| Cloudflare Workflows | cloudflare | TypeScript | Serverless, managed, wrangler deploy-ready |
| DBOS (TypeScript) | dbos-ts | TypeScript | Zero orchestrator on the TS side. Postgres only |
| Inngest | inngest | TypeScript | Mounting into an existing Node or Next.js app |
If the user has no opinion and no existing infrastructure, use dbos. It is
the default and the only Python target with zero standing infrastructure, so
you can omit --runtime entirely.
The CLI ships on PyPI as rote-cli and its executable is named rote. With
uvx that means every invocation is uvx --from 'rote-cli>=0.12.1' rote <args>. Do
not run uvx rote-cli ...; uvx looks for an executable named after the
package, and the published wheel does not ship one.
uv --version # install uv first if missing
uvx --from 'rote-cli>=0.12.1' rote --version # confirm the CLI resolvesIf uv is missing, do not pipe a remote script into a shell. Ask the user to
install it through their package manager (brew install uv, pipx install uv,
or pip install uv) or to follow the official guide at
https://docs.astral.sh/uv/getting-started/installation/ and choose the method
they trust.
pip install rote-cli works too if the user prefers a virtualenv.
rote compile runs an LLM agent, so it needs a driver: Claude Code
(claude) or Codex (codex) installed and authed, or ANTHROPIC_API_KEY
for the in-process api driver. The default claude driver deliberately
scrubs ANTHROPIC_API_KEY and ANTHROPIC_AUTH_TOKEN from the child
environment so the run bills against the user's Claude subscription rather
than per-token API charges. Do not "fix" auth by exporting an API key. If
the user explicitly wants API billing, pass --agent api.
uvx --from 'rote-cli>=0.12.1' rote compile <skill-dir> --runtime <runtime> --out <out-dir>Pick an out-dir the user will find, such as ./compiled/<skill-name> next
to the source skill, and make sure it does not clobber existing work.
Set expectations before launching. This is not a quick command: a realistic skill takes roughly 13 minutes of wall clock and 30 to 40 agent turns on Sonnet. Run it in the background, tell the user you did, and poll rather than blocking the session.
If the run exits nonzero, check whether <out-dir>/compiled/pipeline.yaml
exists anyway. The CLI recovers completed work from transient subprocess
failures and says so in its output. Surface stderr to the user either way.
Read <out-dir>/compiled/pipeline.yaml and
<out-dir>/compiled/compile-report.md, then summarize:
Node-kind table. Count nodes per kind and say what each means here:
| Kind | Meaning |
|---|---|
pure_function | Deterministic code. The LLM is gone |
external_call | Direct API call with retry and timeout |
llm_judge | Typed LLM signature, kept but bounded |
agent_loop | Still agentic, because the input is genuinely unbounded |
hitl_gate | Durable human approval point |
Codified fraction. How many nodes no longer need an LLM, which nodes are mandatory, and what each HITL gate blocks on.
Where things landed. <out-dir>/compiled/ holds the IR, extracted/,
signatures/, and the report. <out-dir>/runtime/<runtime>/ holds the
deployable code.
Next steps. The extracted/* modules are scaffolds that raise
NotImplementedError. The user fills in real client code, then deploys
the runtime output.
Be honest in this summary. A pipeline that came out mostly agent_loop means
the skill was not as deterministic as it looked, and the user should know
that rather than hear a success story.
rote serve is one MCP server exposing every registered pipeline as a
callable tool. It triggers deployed workflows; it does not host them. The
full flow:
rote compile -> deploy the runtime -> rote register -> rote serve -> call from ClaudeRegister the pipeline once the runtime side is actually running (a DBOS app in worker mode, a Temporal worker, or a deployed Cloudflare Worker):
uvx --from 'rote-cli>=0.12.1' rote register <out-dir>
uvx --from 'rote-cli>=0.12.1' rote register <out-dir> --runtime temporal
uvx --from 'rote-cli>=0.12.1' rote register <out-dir> --runtime cloudflare --url https://<worker>.workers.devThis upserts ~/.rote/registry.json. Re-registering updates in place. After
recompiling a changed skill, register again: DBOS and Temporal workflow
names derive from the pipeline content hash and must stay in sync with the
emitted code.
Then add the server:
claude mcp add --scope user rote -- uvx --from 'rote-cli[serve,dbos]>=0.12.1' rote serveEach registry entry becomes two tools, or three on DBOS: <name> starts a
run and returns {workflow_id, status: "started"} immediately, since
compiled pipelines run for minutes to days; <name>_status polls a run by
workflow_id; and on DBOS <name>_signal resumes a run parked at a HITL
gate, so Claude can deliver approvals itself.
Two caveats worth stating proactively. A DBOS run stuck in enqueued means
the emitted app process is not running against the registered system
database. And while Claude Code picks up newly registered pipelines
immediately via the server's list_changed notification, Claude Desktop and
claude.ai snapshot tools at connect time, so a pipeline registered mid-session
appears there only after a reconnect.
© davila7, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in cli-tool/components/skills/workflow-automation/rote of davila7/claude-code-templates.
Open the folder on GitHubat commit 46b4d8b
Rote next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Rote this skilldavila7/claude-code-templates | 32k | — | ~1.9k | Automated safety check: Pass | Apache-2.0 | |
| K8e Sandboxxiaods/k8e | 500 | — | ~6k | Automated safety check: Pass | Apache-2.0 | |
| Temporal Developertemporalio/skill-temporal-developer | 230 | — | ~2.5k | Automated safety check: Pass | MIT | |
| Frontmcp Developmentagentfront/frontmcp | 146 | — | ~11k | Automated safety check: Pass | Apache-2.0 | |
| Using Message Queuesancoleman/ai-design-components | 526 | — | ~2.9k | Automated safety check: Pass | MIT | |
| Nevermined PaymentsLeoYeAI/openclaw-master-skills | 2.2k | — | ~4.5k | Automated safety check: Notes | MIT |
xiaods/k8e
Run a goal end to end inside an isolated K8E sandbox pod (gVisor / Kata / Firecracker) instead of on the host: exec bash / Python / Node / TypeScript, install packages, move files in and out, reuse…
temporalio/skill-temporal-developer
Develop, debug, and manage Temporal applications across Python, TypeScript, Go, Java, .NET, Ruby, and Rust.
agentfront/frontmcp
A skill your agent uses when building any FrontMCP server component other than a tool (for tools, use create-tool).
ancoleman/ai-design-components
Async communication patterns using message brokers and task queues.
LeoYeAI/openclaw-master-skills
Integrates Nevermined payment infrastructure into AI agents, MCP servers, Google A2A agents, and REST APIs.
anthropics/skills
Guides the design and implementation of Model Context Protocol servers in TypeScript or Python, from tool naming and error messages to evaluation.
davila7/claude-code-templates
Runs web-grounded searches through Perplexity's Sonar models over OpenRouter for current events, recent literature and cited facts beyond the model's training cutoff.
davila7/claude-code-templates
Analyzes Neuropixels recordings from SpikeGLX or Open Ephys through preprocessing, drift correction, Kilosort4 spike sorting, quality metrics and curation.
davila7/claude-code-templates
Supplies LaTeX templates and formatting rules for journals, conferences, posters, and grant proposals, then can check a draft against them.
davila7/claude-code-templates
Analyzes a brand's existing writing to lock in a consistent voice, then builds SEO blog posts and platform-specific social content around it.
davila7/claude-code-templates
Guides corrective and preventive action (CAPA) work in a quality management system, from initiation and root cause analysis through effectiveness verification.
davila7/claude-code-templates
Senior FDA consultant and specialist for medical device companies including HIPAA compliance and requirement management.
Works with
Categories
Compile a proven agent skill (a SKILL.md plus references) into a deterministic pipeline that runs without an LLM in the loop, then serve it back to Claude as an MCP tool. Rote is an agent skill from davila7/claude-code-templates.md plus references) into a deterministic pipeline that runs without an LLM in the loop, then serve it back to Claude as an MCP tool.
Rote fits situations like: compile this skill; turn this skill into a workflow; make this skill deterministic; make this skill cheaper.
Run `npx skills add davila7/claude-code-templates --skill rote -a claude-code`. Or copy the skill folder (cli-tool/components/skills/workflow-automation/rote in davila7/claude-code-templates) into .claude/skills/rote in your project. Claude Code loads it when a task matches its description.
Run `npx skills add davila7/claude-code-templates --skill rote -a codex`. Or copy the skill folder (cli-tool/components/skills/workflow-automation/rote in davila7/claude-code-templates) into .agents/skills/rote in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add davila7/claude-code-templates --skill rote -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/rote, .gemini/skills/rote, .github/skills/rote and .opencode/skills/rote in your project.
Going by SKILL.md and its folder, Rote needs the command-line tools its instructions call (uvx, pip, uv, claude, wrangler and brew) and credentials named ANTHROPIC_API_KEY and ANTHROPIC_AUTH_TOKEN. Our summary lists: Python 3; A credential in ANTHROPIC_API_KEY; A credential in ANTHROPIC_AUTH_TOKEN.
SKILL.md names 3 domains. As links in the text: docs.astral.sh, github.com and pypi.org. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Rote is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Rote: K8e Sandbox (xiaods/k8e, 500 stars), Temporal Developer (temporalio/skill-temporal-developer, 230 stars), Frontmcp Development (agentfront/frontmcp, 146 stars) and Using Message Queues (ancoleman/ai-design-components, 526 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
davila7 (a GitHub user) maintains it in davila7/claude-code-templates, which has 32,483 GitHub stars. The repository holds 478 skills in this directory. The repository was last updated on October 9, 2026.
Source: davila7/claude-code-templates on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.