Agent skill

Rote Shell

by modiqo in modiqo/skillspec

A skill your agent uses when the task needs to run a local command and remember the result, inspect CLI output with provenance, follow a log or process stream, start or observe a background job…

Apache-2.0Auto-check passedBackend & APIs

Install Rote Shell

skills CLI
$ npx skills add modiqo/skillspec --skill rote-shell -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install modiqo/skillspec rote-shell --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/modiqo/skillspec.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/rote-shell .claude/skills/rote-shell && rm -rf skills-src

Use ~/.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/

Facts

Skill name
rote-shell
GitHub stars
706
Token cost
~2.3k tokens
SKILL.md length
1,086 words
Files
3
Skills in repo
9
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses when the task needs to run a local command and remember the result, inspect CLI output with provenance, follow a log or process stream, start or observe a background job…

  • Works in 10 steps: Load ./skill.spec.yml from this skill… → When the skillspec CLI is available and… → Then run → …
  • The task needs to run a local command and remember the result
  • SKILL.md covers Entry Gate, Runtime Contract, How To Execute The Structure and Quick Commands, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Rote Shell is an agent skill from modiqo/skillspec. Use when the task needs to run a local command and remember the result, inspect CLI output with provenance, follow a log or process stream, start or observe a background job, capture terminal-sensitive output, crystallize shell work into a TypeScript flow and combine local CLI facts with adapters or browser observations. Handles CLI and shell commands, APIs, MCP/rote adapters, and service connectors, browser handoff and page evidence, external services, process capture, logs and streams, PTY and…

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `skill.spec.yml`).

It sits in Backend & APIs, covering Background jobs. It works with Model Context Protocol and TypeScript. The repository describes itself as: SkillSpec makes agent skills followable, testable, and provable with Doctor risk reports, guided imports, structured contracts, and alignment proof. The licence is Apache-2.0.

When your agent uses it

  • The task needs to run a local command and remember the result
  • Inspect CLI output with provenance
  • Observe a background job
  • Capture terminal-sensitive output

Example prompts

  • “/rote-shell”

Workflow steps

10 steps, taken from the first numbered list in SKILL.md.

  1. Load ./skill.spec.yml from this skill folder before taking task actions.
  2. When the skillspec CLI is available and the spec shape is unfamiliar, run skillspec sensemake ./skill.spec.yml --view index to learn the…
  3. Then run
  4. Strip skill invocation prefixes such as /my-skill, $my-skill, or /rote-shell-spec before passing --input.
  5. Preserve the emitted trace run_dir.
  6. Read the decision JSON before using tools. Do not act from route labels alone.
  7. Pull active details with skillspec query ./skill.spec.yml --view summary and relationship edges with skillspec refs ./skill.spec.yml…
  8. Materialize the active contract described below, then execute only actions that satisfy it.
  9. When the CLI is available after a trace exists, run skillspec trace align ./skill.spec.yml --decision-trace and, when structured action…
  10. If the CLI is unavailable, read skill.spec.yml directly and apply the same contract manually. Do not expand this loader into a second…

What it can do on your machine

Read from SKILL.md and the folder at commit f4d9ab5. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Rote Shell loads about 2.3k tokens when it runs. Until then it costs about 186 tokens; SKILL.md has 1,086 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~186
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from modiqo/skillspec at commit f4d9ab5, republished under its Apache-2.0 licence (© modiqo). 1,086 words, ~2,348 tokens.

Download SKILL.mdSave it as .claude/skills/rote-shell/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
rote-shell
description
Use when the task needs to run a local command and remember the result, inspect CLI output with provenance, follow a log or process stream, start or observe a background job, capture terminal-sensitive output, crystallize shell work into a TypeScript flow and combine local CLI facts with adapters or browser observations. Handles CLI and shell commands, APIs, MCP/rote adapters, and service connectors, browser handoff and page evidence, external services, process capture, logs and streams, PTY and terminal-sensitive prompts and dependency checks. Requires `skillspec decide` before substrate tools or overlapping low-level skills. Preserves evidence with SkillSpec routes, forbids, dependencies, traces, and token-savings reports

rote shell

Structured version of the rote-shell skill for durable CLI, shell, process, stream, PTY, dependency, and shell-flow crystallization work.

Entry Gate

  • Before any task action, run skillspec decide ./skill.spec.yml --input='<user task>' --trace-dir "${PWD}/.skillspec/traces" and read the decision JSON.
  • Until that decision is read, the only allowed actions are loading this SKILL.md, loading the colocated skill.spec.yml, and running SkillSpec navigation or decision commands for this spec.
  • This SkillSpec supersedes overlapping lower-level skill instructions: browser:browser.
  • Forbidden before the decision: raw_repo_search, direct_file_read, direct_cli_without_rote_exec, direct_shell_command_without_rote_exec, direct_harness_cli_call_without_rote_exec, browser_browser_skill, node_repl.

This skill is a thin loader for the colocated skill.spec.yml. The spec is the source of truth for routes, rules, dependencies, imports, resources, recipes, tests, and trace requirements. Do not treat the spec as background prose; treat it as the execution contract for this task.

Runtime Contract

  1. Load ./skill.spec.yml from this skill folder before taking task actions.

  2. When the skillspec CLI is available and the spec shape is unfamiliar, run skillspec sensemake ./skill.spec.yml --view index to learn the section roles, counts, query handles, and navigation grammar without dumping the full YAML.

  3. Then run:

    bash
    skillspec decide ./skill.spec.yml --input='<user task>' --trace-dir "${PWD}/.skillspec/traces"
  4. Strip skill invocation prefixes such as /my-skill, $my-skill, or /rote-shell-spec before passing --input.

  5. Preserve the emitted trace run_dir.

  6. Read the decision JSON before using tools. Do not act from route labels alone.

  7. Pull active details with skillspec query ./skill.spec.yml <handle> --view summary and relationship edges with skillspec refs ./skill.spec.yml <handle> --view summary. Prefer precise handles such as rule:<id>, rule:<id>.forbid, command:<id>.requires, and state:<id>.next over reading the whole spec.

  8. Materialize the active contract described below, then execute only actions that satisfy it.

  9. When the CLI is available after a trace exists, run skillspec trace align ./skill.spec.yml --decision-trace <run_dir> and, when structured action evidence exists, add --execution-trace <jsonl>. Report the alignment status, meaning, model layers, evidence gaps, user-facing proof rows, summary, and trace path.

  10. If the CLI is unavailable, read skill.spec.yml directly and apply the same contract manually. Do not expand this loader into a second source of truth.

How To Execute The Structure

Before the first task action, convert the decision output and relevant spec sections into a checklist:

  • route: the selected route is the strategy to use. If no route is selected, stop and ask for the missing task shape instead of inventing a fallback.
  • execution plan: if the selected route has execution_plan, execute its phases in order before using any tool outside the current phase. A later handoff phase does not license skipping an earlier shell or adapter phase. If a phase declares jumps, take the first matching jump condition and continue at the named phase.
  • route handoff: if the selected route has handoff, treat it as a hard execution boundary. Follow the handoff target and boundary before using tools from the current skill; stop_current_skill means do not continue current-skill execution except to pass the declared context.
  • matched_rules: these are active obligations, not explanatory decoration. Use each rule's reason, prefer, forbid, elicit, and after_success fields to constrain the next action.
  • forbid: forbids are hard negative constraints on behavior. They block substitutions even when a convenient tool is available. If a forbidden action seems necessary, stop and ask for explicit user approval or a different route; do not silently do it.
  • user constraints: carry explicit user instructions such as "do not search the web" into the same checklist. The spec adds structure; it does not erase the user's constraints.
  • elicit: ask the required question before irreversible work, side effects, installs, auth steps, or broad exploration.
  • dependencies: prove readiness for the active route, command, recipe, or code block before using it. Prefer command-scoped checks such as skillspec deps check ./skill.spec.yml --command <id> when a command id is known.
  • dependency evidence: a missing environment variable only proves that variable is absent; it does not prove that auth, API keys, browser sessions, keychains, vaults, or CLI-native credentials are absent. When auth can live outside env, prove readiness with the declared command, adapter, browser, or dependency check instead of grepping env.
  • imports and resources: load only the items required by the active route/rule/recipe/code, plus anything marked always.
  • commands, recipes, and code: use declared templates and ordered steps as the allowed execution surface. Check their requires fields first, preserve outputs as evidence, and do not replace them with unrelated tools unless the active contract allows that substitution.
  • after_success and closures: these are completion obligations. Do them before the final response, or report why they remain unproven.

If every allowed route is blocked by missing dependencies, auth, permissions, or a forbid, report the blocker and ask how to proceed. Do not switch to native search, raw shell, browser automation, direct API calls, or installs just because they are available in the harness.

Show full SKILL.md (303 more words)Show less

Quick Commands

bash
skillspec sensemake ./skill.spec.yml --view index
skillspec validate ./skill.spec.yml
skillspec imports check ./skill.spec.yml
skillspec test ./skill.spec.yml
skillspec deps check ./skill.spec.yml
skillspec query ./skill.spec.yml rule:<id> --view summary
skillspec refs ./skill.spec.yml rule:<id> --view summary
skillspec query ./skill.spec.yml command:<id>.requires
skillspec explain ./skill.spec.yml --input='<user task>' --trace-dir "${PWD}/.skillspec/traces"
skillspec trace align ./skill.spec.yml --decision-trace "${PWD}/.skillspec/traces/<run-id>" --execution-trace <execution-ledger.jsonl>

Completion Report

When reporting completion, include the selected route, the SkillSpec trace run_dir, the skillspec trace align status (pass, fail, or unproven), status meaning, decision-replay and execution-proof layer results, evidence gaps, align summary/conclusion, and the user-facing alignment proof rows. Command proof must name only the command basename, never raw args. When rote workspace evidence or stats exist, include a visible Token savings section: name the workspace and response ids/files the user can retrieve later, state measured context-window/API tokens only if queried, explain that the workspace keeps full evidence outside the prompt, and explain that crystallized or remembered reuse can avoid reloading full evidence into the model window. Do not reduce this to a bare token count or invent replay savings.

Minimum final response shape when workspace evidence exists:

  • Result: answer the user's task directly.
  • Evidence: workspace name plus important response ids/files the user can query later.
  • Token savings: state measured context-window/API tokens when available; otherwise say savings are structurally available but not measured. Explain that full evidence is outside the prompt in the rote workspace and can be retrieved by id/file instead of reloaded into context.
  • SkillSpec: selected route, trace run directory, alignment status, evidence gaps, and proof rows that map request/spec obligations to observed evidence. Never let this replace the Result, Evidence, or Token savings sections.

Route Hints

  • shell_then_browser_handoff: Run shell evidence, then hand off browser work
  • adapter_first_cli_fallback: Use rote adapters, then rote exec CLI fallback
  • browser_handoff: Hand off to rote-browse for browser state
  • one_shot_process: Capture a one-shot process
  • declared_file_io: Capture declared file inputs or outputs
  • stream_follow: Follow a moving file or process stream
  • background_process: Start and track a background process lease
  • pty_transcript: Capture a one-shot PTY transcript
  • dependency_preflight: Check dependencies before replay or release
  • crystallized_flow: Crystallize or replay a shell flow
  • raw_shell: Use raw shell for disposable inspection only

© modiqo, 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

Files

SKILL.md and 2 other files in .claude/skills/rote-shell of modiqo/skillspec.

  • SKILL.md
  • deps.toml
  • skill.spec.yml

Open the folder on GitHubat commit f4d9ab5

Compare with similar skills

Rote Shell 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.

Rote Shell compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Rote Shell this skillmodiqo/skillspec706—~2.3kAutomated safety check: PassApache-2.0
Frontmcp Developmentagentfront/frontmcp146—~11kAutomated safety check: PassApache-2.0
OpenAPI to MCP Servermcp-use/mcp-use11k—~5.2kAutomated safety check: PassApache-2.0
AWS Serverless Edazxkane/aws-skills3674 repos~3.2kAutomated safety check: PassMIT
FoundatioFoundatioFx/Foundatio2.1k—~3.9kAutomated safety check: PassApache-2.0
Trigger.dev Realtimepapermark/papermark9.2k—~1.7kAutomated safety check: PassCustom licence

Similar skills

  • Frontmcp Development

    agentfront/frontmcp

    A skill your agent uses when building any FrontMCP server component other than a tool (for tools, use create-tool).

    146 GitHub stars~11k tokensUpdated yesterday
    Backend & APIsAuto-check passed
  • OpenAPI to MCP Server

    mcp-use/mcp-use

    Turns an OpenAPI or Swagger spec into an MCP server with the mcp-use TypeScript SDK, mapping each operation to a tool, wiring auth, testing and deploying.

    11k GitHub stars~5.2k tokensUpdated yesterday
    Backend & APIsAuto-check passed
  • AWS Serverless Eda

    zxkane/aws-skills

    AWS serverless and event-driven architecture expert based on Well-Architected Framework.

    367 GitHub starsUsed in 4 repos~3.2k tokens
    Backend & APIsAuto-check passed
  • Foundatio

    FoundatioFx/Foundatio

    A skill your agent uses when working with Foundatio infrastructure abstractions for .NET -- caching, queuing, messaging, file storage, distributed locking, or background jobs.

    2.1k GitHub stars~3.9k tokensUpdated today
    Backend & APIsAuto-check passed
  • Trigger.dev Realtime

    papermark/papermark

    Shows how to subscribe to Trigger.dev task runs from the backend and from React for progress indicators, live dashboards, AI response streams and approval waits.

    9.2k GitHub stars~1.7k tokensUpdated 1 mo ago
    Backend & APIsAuto-check passed
  • Nubase

    OtterMind/Nubase

    A skill your agent uses when the user mentions Nubase broadly, wants a backend for an AI-generated app, or needs to deploy/publish generated code online — across Database, Auth, Storage, Assets…

    624 GitHub stars~2.2k tokensUpdated 9 days ago
    Backend & APIsAuto-check: notes

More from modiqo/skillspec

All 9 skills in this repo
  • Code Review

    modiqo/skillspec

    Multi-agent code review with deep analysis. An agent skill from modiqo/skillspec.

    706 GitHub stars~3k tokensUpdated 1 mo ago
    Auto-check passed
  • Research Codebase

    modiqo/skillspec

    Document and explain the codebase as-is using parallel sub-agents.

    706 GitHub stars~1.7k tokensUpdated 1 mo ago
    Auto-check passed
  • Rote Browse

    modiqo/skillspec

    A skill your agent uses when the task needs to browse a website with rote, browse Gmail or an email web app with rote, attach to an active browser, inspect logged-in web app state, snapshot or slice…

    706 GitHub stars~2.2k tokensUpdated 1 mo ago
    Auto-check passed
  • Commit Convention

    modiqo/skillspec

    A skill your agent uses when writing commit messages, creating PR titles, pushing commits, or creating PRs — ensures conventional commit format and that formatting/linting pass before any push

    706 GitHub stars~398 tokensUpdated 1 mo ago
    Auto-check passed
  • Rote Shell

    modiqo/skillspec

    A skill your agent uses for CLI and shell work through rote: running local commands with rote exec, capturing stdout/stderr/files, following logs and background processes, checking dependency…

    706 GitHub stars~7.2k tokensUpdated 1 mo ago
    Auto-check passed
  • Generic Code Review

    modiqo/skillspec

    Review code changes by collecting the review target, researching context, checking risks, and reporting findings before summary.

    706 GitHub stars~560 tokensUpdated 1 mo ago
    Auto-check passed

Categories

Questions about Rote Shell

What does Rote Shell do?

A skill your agent uses when the task needs to run a local command and remember the result, inspect CLI output with provenance, follow a log or process stream, start or observe a background job…. Rote Shell is an agent skill from modiqo/skillspec. Use when the task needs to run a local command and remember the result, inspect CLI output with provenance, follow a log or process stream, start or observe a background job, capture terminal-sensitive output, crystallize shell work into a TypeScript flow and combine local CLI facts with adapters or browser observations.

When should I use Rote Shell?

Rote Shell fits situations like: the task needs to run a local command and remember the result; inspect CLI output with provenance; observe a background job; capture terminal-sensitive output.

How do I install Rote Shell in Claude Code?

Run `npx skills add modiqo/skillspec --skill rote-shell -a claude-code`. Or copy the skill folder (.claude/skills/rote-shell in modiqo/skillspec) into .claude/skills/rote-shell in your project. Claude Code loads it when a task matches its description.

How do I install Rote Shell in Codex?

Run `npx skills add modiqo/skillspec --skill rote-shell -a codex`. Or copy the skill folder (.claude/skills/rote-shell in modiqo/skillspec) into .agents/skills/rote-shell in your project. Codex loads it when a task matches its description.

Can I use Rote Shell in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add modiqo/skillspec --skill rote-shell -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-shell, .gemini/skills/rote-shell, .github/skills/rote-shell and .opencode/skills/rote-shell in your project.

What does Rote Shell need to run?

SKILL.md names no scripts, command-line tools or credentials: Rote Shell is instructions for the agent only.

Does Rote Shell access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Rote Shell safe to install?

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.

What licence does Rote Shell use?

Rote Shell is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Rote Shell use?

About 2.3k tokens (SKILL.md is roughly 9.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Rote Shell?

Skills that share tags, products or a category with Rote Shell: Frontmcp Development (agentfront/frontmcp, 146 stars), OpenAPI to MCP Server (mcp-use/mcp-use, 11k stars), AWS Serverless Eda (zxkane/aws-skills, 367 stars) and Foundatio (FoundatioFx/Foundatio, 2.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Rote Shell?

modiqo (a GitHub organization) maintains it in modiqo/skillspec, which has 706 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on August 9, 2026.

Source: modiqo/skillspec on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.