LaminDB Biological Data Management
davila7/claude-code-templates
Manages biological datasets with LaminDB: versioned artifacts, run lineage, ontology-based annotation, schema validation and links to workflow managers and ML tools.
Review staleness of reference docs under .agents/docs/ using bactopia-docs --validate.
$ npx skills add bactopia/bactopia --skill review-docs -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install bactopia/bactopia review-docs --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/review-docs .claude/skills/review-docs && 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 "review-docs" agent skill from https://github.com/bactopia/bactopia/tree/master/.agents/skills/review-docs into .claude/skills/review-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "review-docs", 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/review-docsType 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 review-docs -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install bactopia/bactopia review-docs --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/review-docs .agents/skills/review-docs && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "review-docs" agent skill from https://github.com/bactopia/bactopia/tree/master/.agents/skills/review-docs into .agents/skills/review-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "review-docs", 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 review-docs -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install bactopia/bactopia review-docs --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/review-docs .cursor/skills/review-docs && 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 "review-docs" agent skill from https://github.com/bactopia/bactopia/tree/master/.agents/skills/review-docs into .cursor/skills/review-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "review-docs", 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/review-docs--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 review-docs -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install bactopia/bactopia review-docs --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/review-docs .gemini/skills/review-docs && 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 "review-docs" agent skill from https://github.com/bactopia/bactopia/tree/master/.agents/skills/review-docs into .gemini/skills/review-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "review-docs", 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 review-docsInstalls 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 review-docs -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/review-docs .github/skills/review-docs && 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 "review-docs" agent skill from https://github.com/bactopia/bactopia/tree/master/.agents/skills/review-docs into .github/skills/review-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "review-docs", 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 review-docs -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 review-docs --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/review-docs .opencode/skills/review-docs && 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 "review-docs" agent skill from https://github.com/bactopia/bactopia/tree/master/.agents/skills/review-docs into .opencode/skills/review-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "review-docs", 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.
review-docsReview staleness of reference docs under .agents/docs/ using bactopia-docs --validate.
Review Docs is an agent skill from bactopia/bactopia. Review staleness of reference docs under .agents/docs/ using bactopia-docs --validate. Detects deprecated patterns (residue from past migrations like flattenPaths, the 4-channel emission framing, meta:Map) and ground-truth violations (stale module/subworkflow/workflow counts, wrong Nextflow version, references to nonexistent bactopia- commands or lint rule IDs, skill-inventory drift between 06-skills.md and .agents/skills/, broken markdown link targets). Use this skill whenever the user asks to review docs, check…
Its SKILL.md is about 3.4k 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-docs.sh`).
It sits in Research & Science, covering Reproducible research and Linting and formatting. It works with Nextflow. 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.
From 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.
Review Docs loads about 3.4k tokens when it runs. Until then it costs about 173 tokens; SKILL.md has 1,320 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); the scripts in this folder are not scanned.
The full file from bactopia/bactopia at commit 29fb741, republished under its MIT licence (© bactopia). 1,320 words, ~3,352 tokens.
.claude/skills/review-docs/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Run bactopia-docs --validate and present the staleness report, then triage findings on request. Cross-cutting (per-repo) doc audit, parallel to /review-citations for citations and /review-groovydoc for component-level GroovyDoc.
Two check families that don't fit the per-component lint rule model:
data/docs-patterns.yml registry. Each entry flags a phrase retired by a past migration (e.g. flattenPaths, the 4-channel subworkflow emission framing, Tuple<Map, ...> pre-Record typing, meta: Map, EMPTY_* placeholders, data/catalog.json path, bactopiatool_init name). New migrations append entries to the YAML; the rule list grows over time.find <tier> -name main.nf | wc -l)nextflowVersion in nextflow.config); informational mentions like 26.04+ or until Nextflow X are skipped.`bactopia-*` references inside backticks must resolve to a [tool.poetry.scripts] entry in bactopia-py/pyproject.toml. Bare prose mentions (bactopia-tools, bactopia-py) are ignored.M0xx/S0xx/W0xx/MC0xx/JS0xx/FMT0xx lint rule IDs must resolve to a rid = "..." assignment in bactopia-py/bactopia/lint/rules/..agents/skills/*/SKILL.md. Catches: skills on disk not listed in the table, rows referencing nonexistent skill directories, and purpose-cell drift from the SKILL.md description: first sentence.[text](path) must resolve to a real file. URLs and anchor-only links are skipped.Component-level checks live elsewhere:
/review-groovydoc (M0xx/S0xx rules, including @citation keys via M035/S019)citations.yml orphans, workflow @citation references) → /review-citationsRun bactopia-docs --validate via the wrapper, asking for JSON so it's easy to parse:
bash .agents/skills/review-docs/scripts/run-bactopia-docs.sh \
--bactopia-path /home/rpetit3/repos/bactopia/bactopia \
--validate --json --silent Exit code is 0 when all checks pass, 1 when any FAIL is found. Both cases print JSON on stdout.
Parse the JSON. Shape:
{
"bactopia_path": "/home/rpetit3/repos/bactopia/bactopia",
"docs_path": ".agents/docs",
"patterns_file": "data/docs-patterns.yml",
"ground_truth": {
"counts": {"modules": 97, "subworkflows": 88, "workflows": 70},
"nextflow_version": "25.04.6",
"cli_commands_total": 28,
"lint_rule_ids_total": 104,
"bactopia_py_resolved": "/home/rpetit3/repos/bactopia/bactopia-py"
},
"files_scanned": ["standards/01-style-guide.md", "..."],
"deprecated_patterns": [
{
"rule_id": "D001", "severity": "FAIL",
"file": "reference/03-glossary.md", "line": 40,
"match": "**flattenPaths**",
"pattern": "flattenPaths",
"hint": "Function removed from nf-bactopia plugin; remove or rephrase."
}
],
"ground_truth_violations": [
{
"rule_id": "D101", "severity": "FAIL",
"file": "project/01-repository-structure.md", "line": 42,
"match": "**Count**: 96 modules",
"claim": "96 modules", "actual": "97 modules"
}
],
"summary": {
"files_scanned": 16,
"deprecated_pattern_hits": 11,
"ground_truth_violations": 5,
"fail": 16, "warn": 0,
"patterns_loaded": 8
}
}Key fields:
deprecated_patterns[] — D0xx hits, one per (file, line, pattern) match.ground_truth_violations[] — D1xx hits; carries either claim/actual (counts/version) or reference/hint (CLI/rule/path).ground_truth.bactopia_py_resolved — null if the sibling repo wasn't found; D105/D106 are skipped silently in that case.Present a summary grouped by check family:
Clean repo (fail == 0): report "All <files_scanned> docs clean — <patterns_loaded> deprecated patterns, <cli_commands_total> CLI commands, <lint_rule_ids_total> lint rule IDs checked.". Stop there.
Issues found: show sections in this order:
Deprecated patterns (D0xx) — group by rule_id so the user sees migration residue together. For each rule, list file:line — match with the hint shown once at the top of the group.
D001 (flattenPaths): function removed from nf-bactopia plugin
• reference/03-glossary.md:40 - **flattenPaths**
• reference/03-glossary.md:155 - **flattenPaths**: Convert Set<Path> to Path
• reference/04-plugin-functions.md:114 ### flattenPaths (deprecated)
...Ground-truth violations (D1xx) — group by rule_id. For count/version checks, show claim → actual; for reference checks, show the bad reference + suggested fix.
D101 (module count): claim 96 → actual 97
• project/01-repository-structure.md:42
D104 (Nextflow version): claim 26.01.0 → actual 25.04.6
• project/04-testing-framework.md:4
• project/04-testing-framework.md:316 Lead with whichever family has more items. Keep it scannable: if any rule has more than ~10 hits, show the first 5 plus (... N more) and offer to print the rest on request.
If the user asks to fix issues, walk through them one rule at a time. Different rules need different treatments — don't batch them.
Each pattern represents a migration that already landed; the doc is just out of sync. Three fix patterns:
Replace with current term: most common case. flattenPaths → describe the current direct-emit pattern. 4-channel → 2 channels (sample_outputs + run_outputs). Tuple<Map, Path> → Channel<Record>. Read the surrounding paragraph before editing — sometimes the whole sentence needs rewriting, not just a token swap. Look at reference/01-examples.md for the modern equivalents.
Delete entirely: glossary entries for terms that no longer exist (e.g. the flattenPaths definition, the Tuple<Map, ...> type entries) should be removed, not rephrased. Take the whole bullet/section.
Mark as historical with inline ignore: very rarely, a doc legitimately needs to mention a deprecated term — e.g. a "what changed in v4" note. Suppress the rule on that line with an HTML comment:
Pre-v4 subworkflows used the 4-channel emission pattern. <!-- bactopia-docs: ignore D002 --> Multiple rules: <!-- bactopia-docs: ignore D001, D002 -->. Use this sparingly — every suppression is technical debt that will outlive the reason it was added.
actual value is authoritative — re-run after editing to confirm. Gotcha: the validator matches the first N modules|subworkflows|workflows phrase on each line, so a line that mentions a subset count (e.g. 66 workflows in bactopia-tools, 70 total) will be flagged as claim 66 → actual 70 even though the 66 is correct. Fix by rewording so subset counts don't use the same noun (e.g. 66 tools; 70 workflows total), not by editing the subset number.nextflowVersion from nextflow.config. If the doc was making a forward-looking claim ("targeting Nextflow X"), reword to remove the version or add +/x so D104 treats it as informational.bactopia-statuz → bactopia-status) or remove the reference if the command genuinely doesn't exist. Don't invent commands.After edits, re-run step 1. A clean re-run proves the fix landed correctly.
When a migration retires a term/pattern that should never appear again in docs, append it to data/docs-patterns.yml:
- id: D009 # next available D0xx
pattern: oldTermName # regex by default
literal: true # set if pattern should be matched as plain text
severity: FAIL # PASS | WARN | FAIL
hint: "What to do instead."
rationale: |
Free text describing the migration that retired this term.Always confirm with the user before adding a pattern — false positives at the registry level multiply across every doc forever.
actual field is reliable for counts/version; for CLI/rule references, the canonical source is the bactopia-py codebase.<!-- bactopia-docs: ignore Dxxx --> is technical debt; prefer rewriting to remove the deprecated term entirely. The rare legitimate use is a deliberate historical reference (changelog, "what changed" notes).ground_truth.bactopia_py_resolved is null, those checks didn't run. Pass --bactopia-py-path explicitly if the sibling repo is in a non-default location.bactopia-docs (checks PATH, then conda envs). No need to activate an env first.--bactopia-path must point at the repo root so the validator can find .agents/docs/, data/docs-patterns.yml, nextflow.config, and the tier directories.Some line that legitimately mentions flattenPaths. <!-- bactopia-docs: ignore D001 -->
Multiple rules on one line. <!-- bactopia-docs: ignore D001, D002 -->The HTML comment must be on the same line as the match. Suppression is per-rule, per-line — applies only to that line.
data/docs-patterns.yml entry shapepatterns:
- id: D001 # D001+, sequential
pattern: flattenPaths # regex by default; set literal:true for plain text
literal: true # optional
severity: FAIL # PASS | WARN | FAIL (default FAIL)
hint: "Short remediation." # shown in CLI output
rationale: | # free-text history
The migration / decision that retired this term.--bactopia-path PATH — required, points at the bactopia repo root--docs-path PATH — relative to bactopia-path (default: .agents/docs)--patterns-file PATH — relative to bactopia-path (default: data/docs-patterns.yml)--bactopia-py-path PATH — override the sibling-repo discovery for D105/D106--skip-path-check — skip D108 (faster runs; useful when you know link health is fine)--json — emit structured output instead of rich tables--silent — suppress non-error output when the run is clean--plain-text / -p — disable rich formatting for piping/review-groovydoccitations.yml orphans, workflow @citation refs) → /review-citations/project-status/update-catalog© 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/review-docs of bactopia/bactopia.
Open the folder on GitHubat commit 29fb741
Review Docs 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 |
|---|---|---|---|---|---|---|
| Review Docs this skillbactopia/bactopia | 522 | — | ~3.4k | Automated safety check: Pass | MIT | |
| LaminDB Biological Data Managementdavila7/claude-code-templates | 32k | 12 repos | ~3.6k | Automated safety check: Pass | MIT | |
| Latchbio Integrationdavila7/claude-code-templates | 32k | 11 repos | ~2.4k | Automated safety check: Pass | MIT | |
| PacsomaticBioTender-max/awesome-bio-agent-skills | 197 | — | ~1.3k | Automated safety check: Pass | MIT | |
| Latchbio IntegrationK-Dense-AI/scientific-agent-skills | 48k | 1 repos | ~2.5k | Automated safety check: Notes | MIT | |
| PacsomaticK-Dense-AI/scientific-agent-skills | 48k | 1 repos | ~1.6k | Automated safety check: Pass | MIT |
davila7/claude-code-templates
Manages biological datasets with LaminDB: versioned artifacts, run lineage, ontology-based annotation, schema validation and links to workflow managers and ML tools.
davila7/claude-code-templates
Latch platform for bioinformatics workflows. An agent skill from davila7/claude-code-templates.
BioTender-max/awesome-bio-agent-skills
Operator toolkit for nf-core/pacsomatic matched tumor-normal workflows from BAM inputs.
K-Dense-AI/scientific-agent-skills
Builds, registers, debugs, and operates bioinformatics workflows on Latch using the Python SDK, CLI, Latch Data and Registry, Nextflow, Snakemake, programmatic execution, and Latch MCP.
K-Dense-AI/scientific-agent-skills
Prepares and launches nf-core/pacsomatic matched tumor-normal PacBio HiFi genomics workflows from unaligned BAM inputs.
K-Dense-AI/scientific-agent-skills
Builds and operates reproducible genomics workloads on DNAnexus with the dx CLI, dxpy, apps/applets, native workflows, dxCompiler, and Nextflow.
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
Review staleness of reference docs under .agents/docs/ using bactopia-docs --validate. Review Docs is an agent skill from bactopia/bactopia.agents/docs/ using bactopia-docs --validate.
Review Docs fits situations like: the user asks to review docs; check doc staleness; audit reference docs; find outdated documentation.
Run `npx skills add bactopia/bactopia --skill review-docs -a claude-code`. Or copy the skill folder (.agents/skills/review-docs in bactopia/bactopia) into .claude/skills/review-docs in your project. Claude Code loads it when a task matches its description.
Run `npx skills add bactopia/bactopia --skill review-docs -a codex`. Or copy the skill folder (.agents/skills/review-docs in bactopia/bactopia) into .agents/skills/review-docs 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 review-docs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/review-docs, .gemini/skills/review-docs, .github/skills/review-docs and .opencode/skills/review-docs in your project.
Going by SKILL.md and its folder, Review Docs needs a shell for the scripts in its folder. Our summary lists: A Bash shell.
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 found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Review Docs is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.4k tokens (SKILL.md is roughly 13k 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 Review Docs: LaminDB Biological Data Management (davila7/claude-code-templates, 32k stars), Latchbio Integration (davila7/claude-code-templates, 32k stars), Pacsomatic (BioTender-max/awesome-bio-agent-skills, 197 stars) and Latchbio Integration (K-Dense-AI/scientific-agent-skills, 48k 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.