Skip to content
Agentmart
Submit a tool

run-checks

How to run tests, builds, type checks, installs, and other verification commands on this machine — locally, or on remote Crabbox workers when they are…

Skill by tobywise

IndexedMIT
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/tobywise-run-checks

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

How to run tests, builds, type checks, installs, and other verification commands on this machine — locally, or on remote Crabbox workers when they are available. Use before running any test suite, build, type check, dependency install, migration, Docker build, or other expensive command. Also says which tests to run while iterating and when the full suite must run.

Use cases: testing, devops

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/run-checks

What's inside

Skill name
run-checks
Description
How to run tests, builds, type checks, installs, and other verification commands on this machine — locally, or on remote Crabbox workers when they are available. Use before running any test suite, build, type check, dependency install, migration, Docker build, or other expensive command. Also says which tests to run while iterating and when the full suite must run.
License
MIT
Instructions
77 lines in SKILL.md · view on GitHub

Agent Skills spec issues

  • files: referenced but missing: scripts/check.sh

Files (2)

  • SKILL.md
  • crabbox.md · references/

SKILL.md (first lines)

# Run checks

## Choose the runner

Decide once per session, before the first check:

1. **The project says.** If the project's agent instructions (`AGENTS.md` or
   `CLAUDE.md`) name a runner — for example "checks in this repository run
   locally" — use it.
2. **Otherwise, detect.** Run `command -v cbrun`.
   - **Found:** this machine is a controller for remote Crabbox workers. Read
     `references/crabbox.md` in this skill's directory
     (`~/.agents/skills/run-checks/references/crabbox.md`) and follow it as
     well as the rules below. Never run tests, builds, type checks, installs,
     or other expensive commands directly on this machine.
   - **Not found:** run checks locally, as described below.

State which runner you chose and why in your first report of a check.

## Choose which tests to run

Run a **targeted selection** while iterating, and the **full suite** once at
the end.

- **Targeted selection:** the tests that exercise the change — tests for the
  changed files, tests that import or call the changed code (search for
  them), and any tests a plan names. Select them with the test runner's own
  options, such as file paths, test IDs, `-k`, or markers for pytest, or
  `test_file()` and `filter` for testthat.
- Make the full suite the selection when the change reaches code many tests
  share — `conftest.py` or shared test helpers, configuration, dependency or
  lock files, build settings, a widely imported module — or when the full
  suite costs about as much as the selection.
- After a failure, rerun just the failing tests, named explicitly, until they
  pass; then rerun the targeted selection. Name them rather than using
  pytest's `--lf`, whose cache is lost on fresh Crabbox workers.
- **Full suite:** once the code is stable, run it once before reporting the
  work complete. Reuse a passing full-suite result only for the same,
  unchanged code, with its exact command and exit status recorded. Work with
  no executable behaviour, such as documentation only, needs no run.
- Report which tests ran: the selection, or the full suite.

## Local runner

- Run checks in the project's own locked environment, through its declared
  entrypoints: `uv run --locked` for a uv project (plain `uv run` can rewrite
  `uv.lock`), the project's `make` targets or scripts, and so on. Respect
  `.python-version` and `requires-python`.
- Project-locked setup is allowed, such as `uv sync --locked`. Never add,
  upgrade, or install unlocked dependencies to make a check pass.
- Keep checks bounded. Stop and ask the user to run an intensive scientific
  analysis themselves, giving the exact command and expected artifacts.
- Never run migrations, deployments, or anything that changes external systems
  as a check.

## Always

- Batch related checks into one invocation, cheapest first, rather than
  separate runs per file or tool.
- Rerun one saved check command rather than retyping it. Use the project's
  check entrypoint (`make check`, `scripts/check.sh`, …) if it has one;
  otherwise write the batched command for the current targeted selection to
  `scripts/check.sh` with the file-writing tool, rerun that script, update it
  when the selection changes, and tell the user it exists so they can keep or
  delete it.
- Give long commands a generous timeout. A timeout or cancellation is not a
  test result.
- Report the exact command and its exit code. Distinguish a real test failure
  from an environment, setup, infrastructure, or timeout failure.
- Never rerun an unchanged failing check; rerun only after a relevant change.
- Retry an infrastructure failure only for idempotent checks: tests, linting,
  builds. Never automatically retry deployments, migrations, publishing, or
  other side-effecting commands.
- Let output stream normally; don't pipe long-running commands through `head`,
  `tail`, or `grep` unless necessary.

From tobywise/agent-skills, MIT.

More from tobywise/agent-skills

Signals

Stars
0
Forks
0
Open issues
0
Last commit (this folder)
Oct 6, 2026 (22 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from tobywise

Cite this page

run-checks skill. Agent Mart. https://agentmart.dev/skills/tobywise-run-checks (last updated 2026-10-24)