Iron Proxy Gateway for NanoClaw
nanocoai/nanoclaw
Installs or refreshes Iron Proxy and its Iron Control web console for NanoClaw, with a local Docker setup, database, credentials and a human approval bridge.
Run Bactopia nf-tests via bactopia-test and produce a timestamped logs/ directory that /review-tests can interpret.
The automated check flagged lines worth reading first. See the safety section below.
$ npx skills add bactopia/bactopia --skill run-tests -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install bactopia/bactopia run-tests --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/bactopia/bactopia.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/run-tests .claude/skills/run-tests && 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 "run-tests" agent skill from https://github.com/bactopia/bactopia/tree/master/.agents/skills/run-tests into .claude/skills/run-tests/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-tests", 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/bactopia/bactopia/tree/master/.agents/skills/run-testsType 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 bactopia/bactopia --skill run-tests -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install bactopia/bactopia run-tests --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bactopia/bactopia.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/run-tests .agents/skills/run-tests && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "run-tests" agent skill from https://github.com/bactopia/bactopia/tree/master/.agents/skills/run-tests into .agents/skills/run-tests/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-tests", 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 bactopia/bactopia --skill run-tests -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install bactopia/bactopia run-tests --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bactopia/bactopia.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/run-tests .cursor/skills/run-tests && 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 "run-tests" agent skill from https://github.com/bactopia/bactopia/tree/master/.agents/skills/run-tests into .cursor/skills/run-tests/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-tests", 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/bactopia/bactopia.git --path .agents/skills/run-tests--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 bactopia/bactopia --skill run-tests -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install bactopia/bactopia run-tests --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bactopia/bactopia.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/run-tests .gemini/skills/run-tests && 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 "run-tests" agent skill from https://github.com/bactopia/bactopia/tree/master/.agents/skills/run-tests into .gemini/skills/run-tests/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-tests", 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 bactopia/bactopia run-testsInstalls 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 bactopia/bactopia --skill run-tests -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/bactopia/bactopia.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/run-tests .github/skills/run-tests && 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 "run-tests" agent skill from https://github.com/bactopia/bactopia/tree/master/.agents/skills/run-tests into .github/skills/run-tests/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-tests", 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 bactopia/bactopia --skill run-tests -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install bactopia/bactopia run-tests --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bactopia/bactopia.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/run-tests .opencode/skills/run-tests && 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 "run-tests" agent skill from https://github.com/bactopia/bactopia/tree/master/.agents/skills/run-tests into .opencode/skills/run-tests/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-tests", 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.
run-testsRun Bactopia nf-tests via bactopia-test and produce a timestamped logs/ directory that /review-tests can interpret.
Run Tests is an agent skill from bactopia/bactopia. Run Bactopia nf-tests via bactopia-test and produce a timestamped logs/ directory that /review-tests can interpret. Use when asked to run tests, execute tests, test a module, test a subworkflow, test a workflow, or validate a change. Accepts optional tier and component arguments (e.g., "run tests on snippy", "test abricaterun module", "test amrfinderplus subworkflow").
Its SKILL.md is about 4.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/run-bactopia-test.sh`).
It sits in DevOps & Cloud. It works with Docker. The repository describes itself as: A flexible pipeline for complete analysis of bacterial genomes. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 29fb741. 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.
Ships 1 file in scripts/ (Shell), which the agent can run.
Shell commands in SKILL.md call:
condaFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Run Tests loads about 4.8k tokens when it runs. Until then it costs about 96 tokens; SKILL.md has 2,117 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 patterns that need a careful read before installing.
These flags are always added without asking the user: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); the scripts in this folder are not scanned.
The full file from bactopia/bactopia at commit 29fb741, republished under its MIT licence (© bactopia). 2,117 words, ~4,788 tokens.
.claude/skills/run-tests/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Run the Bactopia nf-test suite through bactopia-test for a specific component
and present the live output to the user. This is the "before" half of the
run-tests / review-tests pair: this skill runs the tests and writes a
timestamped logs/run-tests/{timestamp}/ directory; /review-tests then interprets
that directory (grouping failures, reading stdout files, etc.). Keep the two
responsibilities clearly separated -- do not try to do /review-tests' job here.
Every run is a 4-profile matrix. bactopia-test no longer takes a
--profile flag. For each selected component it tests docker, conda,
singularity_galaxy, and singularity_pull: docker validates (or generates)
the snapshot and the other three validate against it, surfacing runtime drift
without rewriting tests. Conda envs and Singularity images are pre-built
serially (from --cachedir) before the parallel test phase, so even a
single-component run pays that build/setup cost up front.
Resolve --tier and --include from what the user said. Use the
"Resolving arguments" table below. If the user did not name a specific
component, stop and ask which component they want to test -- do not run
the full suite (see the guardrails block).
Invoke the wrapper script with the resolved arguments:
bash .agents/skills/run-tests/scripts/run-bactopia-test.sh \
--bactopia-path /home/rpetit3/repos/bactopia/bactopia \
--test-data /home/rpetit3/repos/bactopia/bactopia-tests \
--outdir /home/rpetit3/repos/bactopia/bactopia \
--cachedir /data/cache \
[--tier TIER] \
--include COMPONENT Omit --tier entirely when the user said "test snippy" (no tier hint) --
the CLI's default all will then search every tier and the underscore-
segment matcher (see "--include matching") will pick up every component
whose name contains snippy.
Present the CLI's live output directly. bactopia-test produces a Rich
table with per-component, per-profile status (docker / conda /
singularity_galaxy / singularity_pull), durations, and a final summary.
Relay it without reformatting. Do not parse JSON, do not re-tabulate, do not
read the stdout files the CLI writes.
After the run finishes, extract the run timestamp and hand off to
/review-tests. See the "After the run" section.
bactopia-test's --include matcher is exact-match OR underscore-segment
match against a flattened component name (e.g.
modules/snippy/run/tests/main.nf.test → snippy_run). Patterns and wildcards
are not supported. That means --include snippy matches snippy_run,
snippy_core, etc.; --include snippy_run matches only the module.
Translate user phrasing into flags as follows:
| User says | --tier | --include | Notes |
|---|---|---|---|
| "run all tests on snippy" / "test snippy" | (omit) | snippy | Omitting --tier lets the CLI default (all) + segment match hit snippy_run, snippy_core, etc. |
| "test abricate_run module" / "run tests on abricate_run" | modules | abricate_run | _run/_download/_predict suffixes are a strong "this is a module" signal; pin --tier modules. |
| "test amrfinderplus subworkflow" | subworkflows | amrfinderplus | The explicit word "subworkflow" pins the tier. |
| "test the snippy workflow" | workflows | snippy | The explicit word "workflow" pins the tier. |
| "run tests" / "run the test suite" / no component | REFUSE | — | Stop and ask which component. The CLI default runs the full suite -- see guardrails. |
| "run all tests" (explicit) | REFUSE, ASK | — | Ask the user which specific component; full-suite runs are slow and not what this skill is for. |
If the user's request is ambiguous (e.g. "test snippy" could mean the module,
the subworkflow, or both), omitting --tier is the safe default -- the
segment matcher will catch all three and the user sees everything at once.
These flags are always added without asking the user:
| Flag | Value | Why |
|---|---|---|
--bactopia-path | /home/rpetit3/repos/bactopia/bactopia | Canonical repo location on this machine. |
--test-data | /home/rpetit3/repos/bactopia/bactopia-tests | Canonical test-data location; sets BACTOPIA_TESTS. |
--cachedir | /data/cache | Holds pre-built conda/ and singularity/ env caches on this host (the CLI default ~/.bactopia is empty here). |
--outdir | /home/rpetit3/repos/bactopia/bactopia | So logs/run-tests/{timestamp}/ lands at the repo root, where /review-tests reads. |
| Flag | Policy |
|---|---|
--generate | Never add unless the user's request contains one of: --generate, "generate mode", "regenerate snapshots", or "update snapshots". It overwrites the committed docker .snap for the tested components. |
--force-rebuild | Only add if the user explicitly asks to rebuild environments (or a build_failed was diagnosed). Forces a rebuild of existing Conda envs and Singularity images -- slow. |
--jobs N | Pass through if the user specified a number (e.g. "with 16 jobs"); otherwise omit and let the CLI default (32) apply. This is components-in-parallel; the 4 profiles within a component run sequentially. |
These are the non-negotiable rules. Violating any of them can burn hours of time or delete work the user cares about.
CRITICAL: never run with no component filter. With no --include, the CLI
tests every component (250+ across modules, subworkflows, and workflows) and
each one runs the full 4-profile matrix -- plus a serial env pre-build phase.
That is very expensive and is not what this skill is for. If the user asks to
"run tests" without naming a component, stop and ask which module /
subworkflow / workflow they want.
NEVER pass --generate unless the user explicitly asked for it with
the literal flag name or the phrases "generate mode", "regenerate
snapshots", or "update snapshots". --generate forces regeneration of the
docker snapshot, overwriting the committed .snap for the tested
components. (Without it, a missing snapshot is still generated automatically;
an existing one is validated, not touched.)
ALWAYS pass --cachedir /data/cache. The pre-built conda/ and
singularity/ env caches live there on this host. The CLI default
(~/.bactopia) is empty, so omitting it forces every environment to rebuild
from scratch -- hours of wasted work.
ALWAYS pass --outdir /home/rpetit3/repos/bactopia/bactopia so that
logs/run-tests/{timestamp}/ is written at the bactopia repo root. /review-tests
looks for logs relative to --bactopia-path; if --outdir is omitted the
logs land in whatever directory the shell was invoked from and the
downstream skill will not find them.
Do NOT pass --json. The default Rich text output is human-friendly
and already auto-logs a machine-readable summary.json into the logs
directory. --json exists as a fallback for programmatic parsing -- it is
not needed here.
Do NOT pass --fail-fast unless the user explicitly asks. The default
"run every component, report all failures at the end" behavior is what
/review-tests expects to consume. (--fail-fast stops on the first
component with any failing profile.)
Do NOT interpret failures in detail here. Do not read
stdout.txt, stderr.txt, outputs.txt, or nextflow.log files. Do
not group failures by type. Do not recommend fixes. That is deliberately
reserved for /review-tests so the two skills stay loosely coupled and
each has a single clear job.
There is no --profile flag anymore. Every run tests all four profiles.
If the user wants to re-check a single drifting/timed-out profile cell (e.g.
"re-run stecfinder's conda test"), you still run the whole component -- the
matrix always covers that profile -- and point them at that profile's row in
the output.
A timeout can be an intermittent hang, not a too-small budget -- do not
assume raising -tm will let it finish. Per-component timeout =
min(expected_seconds * -tm, --timeout). A cell that hangs never completes:
the task is killed by SIGTERM at the cap, so a bigger budget only makes it
hang longer. Confirmed example: stecfinder's conda profile has repeatedly
wedged on its third case -- the task runs the full ~184s (46.1 * 4) and is
killed (exit 143, succeededCount=0; abortedCount=1, no Task completed,
0-byte outputs), yet the whole component passes in ~24s (docker ~24s) when the
hang doesn't recur. This is a known intermittent hang to keep an eye on,
not slowness and not a baseline problem.
When a cell reports timeout, inspect the work tree to classify it, then act:
{profile}/.nf-test/.../work/**/.exitcode = 143, empty/0-byte
outputs, no Task completed in meta/nextflow.log): the tool/task never
returned control to nextflow/nf-test. Do NOT raise -tm or
--update-baselines -- neither addresses a hang. In a real pipeline run
Nextflow's own task retries absorb an intermittent hang like this, so no
code change is required unless it becomes persistent. If it does recur
often, escalate to a cross-environment deep dive (compare the docker
vs conda vs singularity envs -- program versions, dependency pins) to find
what differs on the wedging profile.COMPLETED just past the
budget): re-run with a raised -tm; if it then passes, the budget was the
issue. Only this case warrants a baseline/multiplier adjustment.When bactopia-test finishes, do these four things -- nothing more:
Report the status breakdown from the CLI's final summary table. It is a per-profile matrix (docker / conda / singularity_galaxy / singularity_pull); report the counts as shown.
Extract the run timestamp. The CLI prints the path to the logs
directory, which ends in a YYYYMMDD_HHMMSS directory (e.g.
logs/run-tests/20260410_143022/). Pull that timestamp out and show it to the user.
Point the user at /review-tests with an exact next step:
Run
/review-tests {timestamp}for a diagnostic grouping of any failures and per-component details.
Stop. Do not open log files. Do not enumerate failed components beyond the CLI's own summary table. Do not re-run. The job of this skill is to produce the logs directory and hand off.
--include matching (full semantics)bactopia-test builds a flattened component name by taking the test file
path, stripping the tests/main.nf.test suffix and the tier prefix, and
joining the remaining segments with _. Examples:
modules/snippy/run/tests/main.nf.test → snippy_runmodules/bactopia/gather/tests/main.nf.test → bactopia_gathersubworkflows/snippy/core/tests/main.nf.test → snippy_coresubworkflows/bactopia-tools/amrfinderplus/tests/main.nf.test → amrfinderplus
(the bactopia-tools/ prefix is stripped)workflows/teton/tests/main.nf.test → teton--include X matches a component if:
X equals the full flattened name exactly, ORX appears as a segment when the flattened name is split on _.Concrete consequences:
--include snippy matches snippy_run, snippy_core, and snippy
(any tier) but not snippyassembly -- no underscore boundary.--include run would match every *_run component, which is almost
never what the user wants. Prefer the more specific form.--include snippy,bakta).Taken from bactopia-py/bactopia/cli/testing.py. Defaults in parentheses.
Paths (required)
--bactopia-path — bactopia repo root (required)--test-data — test-data directory, sets BACTOPIA_TESTS (required unless --cleanup)Selection
--tier — modules / subworkflows / workflows / all (default: all)--include — comma-separated component names (default: none → all)--exclude — comma-separated component names (default: none)Execution
--cachedir — cache dir holding pre-built conda/ and singularity/ subdirs (default: ~/.bactopia; use /data/cache on this host)--generate — force regeneration of the docker snapshot, overwriting the committed .snap (default: off; a missing snapshot is generated regardless)--force-rebuild — force a rebuild of existing Conda envs and Singularity images (default: off)--max-retry — max build retries per environment during the build phase (default: 3)--jobs — components tested in parallel; the 4 profiles within a component run sequentially (default: 32)--fail-fast — stop on the first component with any failing profile (default: off)--timeout — per-run timeout in minutes (kills each nf-test subprocess), 0 to disable (default: 90)--times — path to test-times baseline JSON; enables per-component timeouts and longest-first ordering (default: {bactopia-path}/conf/test-times.json)--timeout-multiplier / -tm — per-component timeout = min(expected_seconds * this, --timeout); only applied when a test-times file is available (default: 4)Cleanup (operates instead of running tests)
--cleanup — remove .nf-test/ temp files under modules/, subworkflows/, workflows/, tests/, then exit (skips logs/ work dirs)--dry-run — with --cleanup, list what would be removedOutput
--outdir — directory to write logs/ into (default: .)--json — emit results as JSON (default: off; used only as fallback)Logging
--verbose — DEBUG logging--silent — ERROR logging only--version / --helpRemoved in the suite revamp:
--profile,--condadir,--singularity_cache(folded into the 4-profile matrix +--cachedir), and--keep(per-profile logs and.nf-test/work dirs are now always preserved underlogs/).
{outdir}/logs/run-tests/{YYYYMMDD_HHMMSS}/
├── summary.json # machine-readable rollup (first line of .tsv is `# generate=<bool>`)
├── summary.tsv # same data in TSV
├── modules/
│ └── {component}/
│ ├── docker/ # one dir per profile that ran
│ │ ├── stdout.txt # nf-test console incl. tool `Command error:` block
│ │ ├── stderr.txt # nf-test assertions / `Different Snapshot` md5 diff
│ │ ├── outputs.txt # undeclared-outputs report (or `# OK`)
│ │ └── .nf-test/ # preserved work tree (all cells, passing included)
│ ├── conda/ ...
│ ├── singularity_galaxy/ ...
│ └── singularity_pull/ ...
├── subworkflows/
│ └── ... (same structure)
└── workflows/
└── ... (same structure)Only the tiers that were tested have subdirectories in a given run, and a
component only has a {profile}/ dir for each profile that actually ran (a
component with no Galaxy image has no singularity_galaxy/). /review-tests
reads these files directly -- do not pre-load them here.
The wrapper at .agents/skills/run-tests/scripts/run-bactopia-test.sh
locates bactopia-test by checking, in order:
bactopia-test on PATH (respects an already-activated env)/bactopia-dev (exact) -- preferred,
built from environment.yml at the bactopia repo root/bactopia-py (exact) -- stable release/bactopia- (fuzzy, first match) --
catches bactopia-py-dev, bactopia-dev-v4, and any other
bactopia-* envbactopia-py or
activate an env containing it.This ordering matters: bactopia-dev is the canonical development env
(nextflow, nf-test, bactopia-py, and nf-bactopia build tools all in one
place) and will usually have the freshest bactopia-test version. The
older bactopia-py-dev env -- which contained only the Python CLI -- is
still supported as a fallback via the fuzzy step but should not be
preferred over bactopia-dev.
If a conda env is selected, the wrapper uses conda run --prefix <path>
to invoke the CLI without requiring the env to be activated. All arguments
are forwarded through "$@".
/review-tests — the "after" half. Reads logs/run-tests/{timestamp}/, groups
failures by type, reads stdout files on request, and suggests next steps.
Always point the user here after a run completes./project-status — component counts and coverage. Unrelated to the test
loop but uses the same wrapper-script pattern./update-module — bumps tool versions. Unrelated, but is the reference
for the "ask the user before mutating" pattern borrowed here for
--generate and --force-rebuild.© bactopia, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (scripts) in .agents/skills/run-tests of bactopia/bactopia.
Open the folder on GitHubat commit 29fb741
Run Tests 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 |
|---|---|---|---|---|---|---|
| Run Tests this skillbactopia/bactopia | 522 | — | ~4.8k | Automated safety check: Warn | MIT | |
| Iron Proxy Gateway for NanoClawnanocoai/nanoclaw | 31k | — | ~4.6k | Automated safety check: Notes | MIT | |
| GreptimeDB Dev Docker ImageGreptimeTeam/greptimedb | 6.7k | — | ~4k | Automated safety check: Notes | Apache-2.0 | |
| Senior DevOps Toolkitmaslennikov-ig/claude-code-orchestrator-kit | 260 | 6 repos | ~1.1k | Automated safety check: Notes | Custom licence | |
| LangBot Deployment Guidelangbot-app/LangBot | 18k | — | ~1.2k | Automated safety check: Notes | Apache-2.0 | |
| Build Openshell Mxc WindowsNVIDIA/OpenShell | 15k | — | ~4.9k | Automated safety check: Pass | Apache-2.0 |
nanocoai/nanoclaw
Installs or refreshes Iron Proxy and its Iron Control web console for NanoClaw, with a local Docker setup, database, credentials and a human approval bridge.
GreptimeTeam/greptimedb
Packages a locally built GreptimeDB debug binary into a development-only Docker image for local-cluster testing, with an optional push to a dev registry.
maslennikov-ig/claude-code-orchestrator-kit
Comprehensive DevOps skill for CI/CD, infrastructure automation, containerization, and cloud platforms (AWS, GCP, Azure). Includes pipeline setup…
langbot-app/LangBot
Deploys and configures a LangBot instance with Docker Compose or Kubernetes, covering config.yaml, the Box sandbox runtime, the plugin runtime and the global API key.
NVIDIA/OpenShell
Maintain and validate OpenShell's build-only Windows MSVC lane for x64 and ARM64.
yansongda/pay
A skill your agent uses when local PHP environment is unavailable.
bactopia/bactopia
Scaffold a complete Bactopia Tool across all three tiers -- module, subworkflow, and workflow entry point under workflows/bactopia-tools/.
bactopia/bactopia
Propagate the Bactopia and nf-bactopia versions declared in versions.yml into the hand-maintained files that carry a literal version (conf/testbase.config, CITATION.cff, bin/bactopia…
bactopia/bactopia
Regenerate nextflow.config and nextflowschema.json for Bactopia workflows by running bactopia-merge-schemas.
bactopia/bactopia
Show a live snapshot of the Bactopia project state — component counts, GroovyDoc coverage, nf-test coverage, and structural issues.
bactopia/bactopia
Audit whether Bactopia is ready for a version release and produce a GO / NO-GO recommendation report.
bactopia/bactopia
Review citation integrity across data/citations.yml and @citation tags using bactopia-citations --validate.
Works with
Categories
Run Bactopia nf-tests via bactopia-test and produce a timestamped logs/ directory that /review-tests can interpret. Run Tests is an agent skill from bactopia/bactopia. Run Bactopia nf-tests via bactopia-test and produce a timestamped logs/ directory that /review-tests can interpret.
Run Tests fits situations like: asked to run tests; test a subworkflow; test a workflow; validate a change.
Run `npx skills add bactopia/bactopia --skill run-tests -a claude-code`. Or copy the skill folder (.agents/skills/run-tests in bactopia/bactopia) into .claude/skills/run-tests in your project. Claude Code loads it when a task matches its description.
Run `npx skills add bactopia/bactopia --skill run-tests -a codex`. Or copy the skill folder (.agents/skills/run-tests in bactopia/bactopia) into .agents/skills/run-tests 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 bactopia/bactopia --skill run-tests -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/run-tests, .gemini/skills/run-tests, .github/skills/run-tests and .opencode/skills/run-tests in your project.
Going by SKILL.md and its folder, Run Tests needs a shell for the scripts in its folder and the command-line tools its instructions call (conda). Our summary lists: A Bash shell; Docker.
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.
Our automated static check of SKILL.md flagged 1 warning(s): tells the agent its actions are pre-authorized / not to stop for confirmation. Read the flagged lines before installing; the check is not a guarantee either way. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Run Tests is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.8k tokens (SKILL.md is roughly 19k 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 Run Tests: Iron Proxy Gateway for NanoClaw (nanocoai/nanoclaw, 31k stars), GreptimeDB Dev Docker Image (GreptimeTeam/greptimedb, 6.7k stars), Senior DevOps Toolkit (maslennikov-ig/claude-code-orchestrator-kit, 260 stars) and LangBot Deployment Guide (langbot-app/LangBot, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
bactopia (a GitHub organization) maintains it in bactopia/bactopia, which has 522 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on August 5, 2026.
Source: bactopia/bactopia on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.