Diagnose ClickHouse cluster health and provide concrete remediation.
npx skills add https://github.com/FrankChen021/datastoria --skill diagnose-clickhouse-clusters
collect_cluster_status before health conclusions about current cluster health.collect_rca_evidence directly when the symptom and target are already clear. Use collect_cluster_status first only when you need current health context, severity/outliers, or help choosing the RCA symptom/scope.high_part_count and unknown.status_analysis_mode="windowed" and reuse the same time window in follow-up calls.visualization skill. Do not emit chart specs directly from this skill.Do not hardcode parts thresholds in responses. Use the thresholds and severities returned by collect_cluster_status.
Use one of these two formats:
Always print a table title line exactly before the table: ### Summary.
| Status | Nodes with Issues | Checks Run | Timestamp |
|--------|-------------------|------------|-----------|
| 🟢 OK / 🟠 WARNING / 🔴 CRITICAL | N | categories | ISO8601 |
Always print a table title line exactly before the table: ### Findings by Category.
Use a markdown table (not bullets) with one row per category.
Required columns:
| Category | Status | Key Metrics | Top Outlier / Scope | Notes |
|----------|--------|-------------|----------------------|-------|
| parts / errors / replication / ... | 🟢 OK / 🟠 WARNING / 🔴 CRITICAL | concise metric values with thresholds | node/table if present, else - | one short phrase |
Table rules:
collect_cluster_status in stable order.🟠 WARNING), never emoji-only.Key Metrics, put the 1-2 most important metrics only (single-line, semicolon-separated if needed).Notes as compact key/value items (single-line).max_parts_per_table=533 (>500)), avoid prose-heavy sentences. db.table or db ) in all table cells.Notes as compact comma-separated items.Top Outlier / Scope to -.Use compact structure only:
cause | support_score | evidence.In evidence, render up to 3 evidence_for items prefixed with ✓ and up to 2 evidence_against items prefixed with ✗, separated by <br/>.
When excluded_candidates is non-empty, include at least one excluded reason as a ✗ item for the most relevant row.
Evidence fidelity rules:
candidate.evidence_for and candidate.evidence_against from collect_rca_evidence for that row.observations, other candidates, or status output into the evidence cell.candidate.evidence_for or candidate.evidence_against.indicators_matched/indicators_checked, but never imply more matched checks than the tool returned.Formatting rule: print the line 3. Possible Actions, then a blank line, then an indented nested numbered list using exactly 1., 2., 3..
Do not continue the outer top-level numbering for action items.
Formatting rule: print the line 4. Gaps / Next Checks, then a blank line, then indented bullets using exactly -.
RCA brevity limits:
collect_cluster_status before giving any opinion on current health.status_analysis_mode="windowed" when user asks for a bounded time window or historical context.collect_rca_evidence. collect_cluster_status is optional unless current health context is needed.gaps[] is non-empty, explicitly state what evidence is missing.support_score < 0.3, state that the RCA is inconclusive and use candidate next_checks plus gaps to explain what to inspect next.0.30-0.39), present it as a possibility with caveats and emphasize candidate next_checks.evidence_for and evidence_against.collect_rca_evidence.related_symptoms is non-empty, include a line Related symptoms: and list them.Efficient database search tool for bioRxiv preprint server. Use this skill when searching for life sciences preprints by keywords, authors, date ranges, or categories, retrieving paper metadata, downloading PDFs, or conducting literature reviews.
Access BRENDA enzyme database via SOAP API. Retrieve kinetic parameters (Km, kcat), reaction equations, organism data, and substrate-specific enzyme information for biochemical research and metabolic pathway analysis.
Access ClinPGx pharmacogenomics data (successor to PharmGKB). Query gene-drug interactions, CPIC guidelines, allele functions, for precision medicine and genotype-guided dosing decisions.
Query NCBI ClinVar for variant clinical significance. Search by gene/position, interpret pathogenicity classifications, access via E-utilities API or FTP, annotate VCFs, for genomic medicine.
Access COSMIC cancer mutation database. Query somatic mutations, Cancer Gene Census, mutational signatures, gene fusions, for cancer research and precision oncology. Requires authentication.
Query Ensembl genome database REST API for 250+ species. Gene lookups, sequence retrieval, variant analysis, comparative genomics, orthologs, VEP predictions, for genomic research.
Query openFDA API for drugs, devices, adverse events, recalls, regulatory submissions (510k, PMA), substance identification (UNII), for FDA regulatory data analysis and safety research.
Query NCBI Gene via E-utilities/Datasets API. Search by symbol/ID, retrieve gene info (RefSeqs, GO, locations, phenotypes), batch lookups, for gene annotation and functional analysis.
Take frankchen021/diagnose-clickhouse-clusters from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.