agent-infini
Use the InfiniSynapse CLI (`agent_infini`) for multi-turn AI data-analysis tasks,…
Use when designing, reviewing, or implementing single-cell RNA-seq QC in Python or R with a human-in-the-loop, data-driven approach. Trigger for scRNA QC metrics, per-sample diagnosis, threshold discussion, mitochondrial/ambient/doublet assessment, MAD vs fixed cutoffs, or
$ npx -y skills add xuzhougeng/wisp-science --skill singlecell-qc --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/singlecell-qcContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when designing, reviewing, or implementing single-cell RNA-seq QC in Python or R with a human-in-the-loop, data-driven approach. Trigger for scRNA QC metrics, per-sample diagnosis, threshold discussion, mitochondrial/ambient/doublet assessment, MAD vs fixed cutoffs, or
name: singlecell-qc description: Use when designing, reviewing, or implementing single-cell RNA-seq QC in Python or R with a human-in-the-loop, data-driven approach. Trigger for scRNA QC metrics, per-sample diagnosis, threshold discussion, mitochondrial/ambient/doublet assessment, MAD vs fixed cutoffs, or refactoring automated merge-first QC. The analyst confirms key decisions at each step—agents must inspect data, propose options, and wait for approval before filtering, doublet removal, or merging. Not a turnkey pipeline skill.
Use this skill for **data-driven, human-centered** single-cell QC. The analyst inspects distributions and confirms decisions; code computes metrics and executes only what was agreed.
inspect data → compute metrics → human reviews → confirm thresholds → small action → re-inspect
**Not** a one-click pipeline. Do not chain calculate → filter → doublet → merge unless the user explicitly requests full execution after reviewing pilot results.
Follow `analysis-workflow` for module and script layout. Match the user's language.
**Read first:** `references/human-in-the-loop.md`
Do **not** use for integration/Harmony, annotation, or spatial QC unless only expression-matrix QC is needed.
1. **Inspect before acting** — matrix type, species, sample metadata, existing checkpoints. 2. **Pilot samples first** — default 1–3 samples; expand only after user OK. 3. **Metrics before filters** — run `01-calculate_metrics`; stop and report. 4. **Propose thresholds, never silently apply** — show expected cell loss per sample. 5. **Ask at gates** — which metrics next? which thresholds? proceed to filter? merge? 6. **No silent heavy steps** — no full-cohort filter, Scrublet, decontX, or merge without explicit approval. 7. **Reversible checkpoints** — pre-filter metadata/counts stay intact; filtering writes new files. 8. **Scripts = one stage** — owner-editable; thresholds visible at top of filter scripts.
Full gate definitions: `references/human-in-the-loop.md`
find <project_root> -maxdepth 4 -type f \( -name '*.py' -o -name '*.R' -o -name '*.h5ad' -o -name '*.md' \) | head -60 rg -n "filter_cells|calculate_qc|metadata|mito|n_genes" <project_root>/scripts 2>/dev/null | head -30
Report to the user:
Then **ask** which samples to pilot and which metrics matter for this tissue.
Each stage ends with human confirmation.
| Stage | Script / action | Agent stops until user confirms | |-------|-----------------|--------------------------------| | A | Input inspection | sample list, matrix, species | | B | `01-calculate_metrics` (pilot) | metric scope (core / hbb / doublet / …) | | C | `02-qc_diagnosis` figures | figures match expectations | | D | Threshold proposal (table + loss estimate) | per-sample cutoffs | | E | `03-filter_cells` | filter summary acceptable | | F | optional doublet / ambient | method and aggressiveness | | G | `04-merge_qc_passed` | all samples signed off |
Stages D–G are **skipped** until the user says proceed.
| Tier | Metrics | Ask when | |------|---------|----------| | Core | `n_genes`, `n_UMIs`, `mito_frac`, `pct_counts_rb` | always unless h5ad already has them | | Recommended | `hbb_score`, `doublet_score`, cell cycle | tissue-dependent | | Extended | `chrY_frac`, `ambient_frac`, `nuclear_frac` | metadata / STARsolo available |
Details: `references/metrics-catalog.md`
Optional scaffold — create only stages the user needs:
scripts/01-qc/ 01-calculate_metrics.py|R # metrics only 02-qc_diagnosis.py|R # figures from metadata 03-filter_cells.py|R # runs only after threshold sign-off result/01-qc/ ... figure/01-qc/ ...
`references/project-layout.md`
| Tool | Role | |------|------| | `scripts/calculate_metrics.py` | core metrics → `metadata.tsv` | | `scripts/calculate_metrics.R` | same, R/Matrix | | `scripts/inspect_qc_metadata.py` | read-only cohort summary | | `assets/gene_sets/*` | hbb / chrY gene lists | | `assets/qc_thresholds.example.yaml` | template for **user-edited** thresholds |
`--run-scrublet` on Python script: **ask before using**.
# Typical pilot — metrics only python .../calculate_metrics.py \ --matrix-dir <dir> --sample-id PILOT --species human \ --output-dir result/01-qc/01-calculate_metrics/PILOT
Use the template in `references/human-in-the-loop.md`:
| Context | Reference | |---------|-----------| | scanpy / h5ad | `references/python-scanpy.md` | | Seurat | `references/r-seurat.md` | | threshold methods | `references/filtering-strategies.md` |
Pick one canonical metadata schema across languages (`n_genes`, `n_UMIs`, `mito_frac`, …).
Only produce what the current confirmed stage needs:
| After stage | Deliverable | |-------------|-------------| | B | `metadata.tsv`, `metrics_summary.json` | | C | diagnosis PDFs/PNGs | | D | threshold proposal table (no filte
The open-source, local-first AI research workbench. WISP — Workspace for Intelligent Scientific Practice Search the literature, run Python and R, query ~80 scientific databases, and keep the trail — figures, runs, decisions, and drafts — in one project.
Use the InfiniSynapse CLI (`agent_infini`) for multi-turn AI data-analysis tasks,…
Organize multi-step scientific analyses into reproducible, self-contained modules. Use for…
Use this skill to drive Wisp Browser Runtime sessions (shared daily Chrome or workspace…
Set up and validate a reproducible Python or R environment on a Wisp execution context. Use…
Use Cua Driver through MCP to inspect and operate the user's native desktop apps on Windows,…