bio-workflow-methods-docwriter — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited bio-workflow-methods-docwriter (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Write Methods text and run documentation from real workflow artifacts. Every command, version, and parameter comes from evidence; nothing is inferred.
run_manifest.yaml with the extractor for the engine:extract_nextflow_run.py reads trace.txt and the work/ task folders. --tool-versions is a JSON mapping of process name to {"tool": ..., "version": ...}; --outputs-manifest lists one final output path per line.extract_snakemake_run.py reads a JSONL file with one record per job (rule, status, tool, version, command, inputs, outputs). Assemble it from --printshellcmds logs and the version records; see fixtures/snakemake/jobs.jsonl.extract_cwl_run.py reads one normalized JSON record (run metadata plus steps and outputs), not a raw CWLProv folder; see fixtures/cwl/provenance.json.NOT CAPTURED; the final manifest must not contain it. If the value cannot be recovered, record the gap under limitations and do not call the manifest reproducible.validate_run_manifest.py.METHODS.md from templates/methods_report.md: workflow summary at the top, then inputs, exact rerun command, environment, steps as executed, QC, outputs, and limitations./scientific-writing. Keep script names, internal flags, and runtime bookkeeping in Methods or the supplement, not in Results.Resolve the installed skill once:
METHODS_SKILL="${METHODS_SKILL:-$HOME/.agents/skills/bio-workflow-methods-docwriter}"Each script declares its dependencies inline (PEP 723), so uv run --script needs no separate environment.
| Task | Action |
|---|---|
| Evidence checklist | reference/evidence-checklist.md |
| Standards to align with | reference/standards.md |
| Manifest schema | schemas/run-manifest.schema.json (LinkML source: schemas/workflow-run-schema.yaml) |
| Drafting templates | METHODS.md template, paper-summary YAML |
| Extract a Nextflow draft | uv run --script "$METHODS_SKILL/scripts/extract_nextflow_run.py" --help |
| Extract a Snakemake draft | uv run --script "$METHODS_SKILL/scripts/extract_snakemake_run.py" --help |
| Extract a CWL draft | uv run --script "$METHODS_SKILL/scripts/extract_cwl_run.py" --help |
| Validate manifest | uv run --script "$METHODS_SKILL/scripts/validate_run_manifest.py" run_manifest.yaml |
| Complete example manifest | examples/run_manifest.example.yaml |
METHODS.md (agent-authored; workflow summary first, then detailed steps)run_manifest.yaml (machine-readable run manifest)NOT CAPTURED, UNKNOWN, or TBD placeholder remains in a required fieldMETHODS.mdvalidate_run_manifest.pyMETHODS_SKILL="${METHODS_SKILL:-$HOME/.agents/skills/bio-workflow-methods-docwriter}"
uv run --script "$METHODS_SKILL/scripts/extract_nextflow_run.py" \
--trace trace.txt --workdir work --out run_manifest.yaml \
--run-id rnaseq-2026-02-02 --pipeline-name nf-core/rnaseq --pipeline-version 3.14.0 \
--commit-sha <sha> --engine-version <nextflow -version> \
--launch-command "<exact launch command>" \
--tool-versions tool-versions.json --outputs-manifest outputs.txt
uv run --script "$METHODS_SKILL/scripts/validate_run_manifest.py" run_manifest.yamlIssue: Missing tool versions in logs Solution: Use NOT CAPTURED only while assembling a draft. The final validator rejects it; recover the version from provenance or report the missing evidence in limitations without claiming a reproducible manifest.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.