Agent Skillsexon-research/genomi › genomi-decode

genomi-decode

GitHub

激活后汇总Genomi各模块证据,生成包含概览、变异、营养、祖源及PGx的单页HTML仪表盘。需先校验并同步活跃基因组索引状态,确保数据完整后再渲染。

skills/decode/SKILL.md exon-research/genomi

Trigger Scenarios

/genomi decode decode my genome decode my DNA show me the dashboard the Genomi dashboard one-shot rundown

Install

npx skills add exon-research/genomi --skill genomi-decode -g -y
More Options

Use without installing

npx skills use exon-research/genomi@genomi-decode

指定 Agent (Claude Code)

npx skills add exon-research/genomi --skill genomi-decode -a claude-code -g -y

安装 repo 全部 skill

npx skills add exon-research/genomi --all -g -y

预览 repo 内 skill

npx skills add exon-research/genomi --list

SKILL.md

Frontmatter
{
    "name": "genomi-decode",
    "tools": [
        "decode.render_dashboard"
    ],
    "mutating": true,
    "description": "Activate this skill for \"\/genomi decode\", \"decode my genome\", \"decode my\nDNA\", \"show me the dashboard\", \"the Genomi dashboard\",\n\"one-shot rundown\", or any all-at-once request that asks Genomi to\ncompose every capability's findings into a single artifact. This is the\nwhole-genome dashboard kicker — it sweeps every relevant Genomi capability\nin one shot, not a per-target lookup.\n\nComposes evidence from every relevant Genomi capability into a single\nself-contained Genomi Dashboard.html and returns localhost serve metadata.\nActive genome required.\n"
}

Genomi Decode

The /genomi decode kicker tells the agent to assemble every relevant Genomi capability's evidence about the user's active genome and emit a single self-contained Genomi Dashboard.html artifact. Activate this skill whenever the user types /genomi decode, asks for "the dashboard", asks to "decode my genome", or asks for a one-shot evidence rundown.

Activation

This skill requires an Active Genome Index session and explicit approval to read it. The same approval gate that protects variant.resolve, clinvar.*, and the PGx ops protects decode.render_dashboard. If no active genome is selected the op fails with active_genome_index_required; if approval has not been granted it fails with active_genome_index_approval_required.

Reconcile Active Genome Index lifecycle before gathering panels

Call genomi.describe_context first. If active_genome_index.active_genome_index_readiness.status is needs_reparse or schema_too_new, handle the lifecycle before gathering any panel evidence — do not proceed with a stale Active Genome Index and silently bound the panels.

The full procedure lives in the Active Genome Index skill under the lifecycle guidance for needs_reparse and schema_too_new. Summary for decode:

  1. If needs_reparse and availability.agi_intake_source_path is true, call genomi.parse_source({"source": active_genome_index.agi_intake_source_path}) without prompting. Routine maintenance.
  2. If needs_reparse and the source path is gone, ask the user once for the current path and parse that. Don't continue with a stale Active Genome Index.
  3. If schema_too_new, the user's runtime is out of date — tell them to upgrade Genomi, stop.
  4. Only after active_genome_index_readiness.status == "complete" call the decode operation.

Dashboard Build

Call decode.render_dashboard. Decode owns panel gathering, panel shaping, and rendering. The agent may choose dashboard categories through structured parameters such as panels and select declared score/domain options. Omitted panels means every dashboard category. The agent does not assemble panel evidence and does not ask which PGx route to run; decode owns that work.

The renderer normalizes native upstream-op shapes internally:

  • overview — adapts active_genome_index.summarize output; snake_case keys (genome_build, nickname, active_genome_index_completed_at, nearest_reference_groups) are mapped automatically.
  • variants — adapts clinvar.scan_candidates variant inventory rows; clinvar.match_variants JSONL rows ({sample_variant, clinvar}) are also handled. Carrier/condition review groups render under risk, not variants.
  • nutrigenomics — adapts nutrigenomics.retrieve_domain_markers; it extracts gene.symbol, variant.rsid, established_effect.claim (→ recommendation), evidence_tier, and domain label (→ marker).
  • ancestry — adapts ancestry.estimate_population_context.
  • pgx — adapts PharmCAT sample_pgx_matrix and medication-review medication_review_matrix rows into PGx cards without merging separate medication recommendations by gene alone.
  • risk — adapts native prs.calculate_score results and phenotype.plan_risk_investigation carrier/condition review rows into risk/review cards.
  • variants_all — uses the ClinVar matches JSONL path materialized by decode.

Decode also gathers the current carrier/condition and PGx review contracts:

  • For risk, decode runs the declared risk_review_types from the selected Active Genome Index ClinVar matches scope. Omitted risk_review_types means carrier_review plus observed_condition_review; pass an empty array only when the user wants PRS-only risk evidence.
  • For pgx, decode runs pharmacogenomics.review_medication for explicit pgx_review_targets and for drug/gene targets discovered in PharmCAT sample_pgx_matrix rows, up to pgx_review_target_limit. Gene-only sample rows can be preserved as sample evidence, but decode does not invent medication-specific recommendations without a declared drug/source target.

If no PRS scores are installed in the user's library, the builder supplies a typed empty risk state so stale risk evidence is cleared rather than preserved.

Verify before claiming success

The renderer's response is the source of truth:

  • panels_rendered: panels that landed with real data.
  • panels_empty: panels with no usable evidence — they render as category-specific unavailable states in the UI.
  • evidence_build.panels_running: panels still running in a background job.
  • evidence_build.panel_states: per-panel source status, including PGx background job ids and check operations when applicable.

Read panels_empty and any evidence_build.panel_states before telling the user the dashboard is ready. Surface incomplete categories honestly with their typed state.

Refresh vs. reuse

Call decode.render_dashboard again to refresh the dashboard after installing libraries or changing category selections. Panels without usable evidence render as category-specific unavailable states.

Output location

By default the artifact is written to <tmp>/genomi-dashboards/<sample>/dashboard.html. The user may override output with any absolute filesystem path; the parent directory is created on demand.

Serving the dashboard

decode.render_dashboard returns a serve block:

{
  "serve": {
    "status": "started",
    "directory": "...",
    "filename": "dashboard.html",
    "port": 8766,
    "url": "http://127.0.0.1:8766/dashboard.html",
    "command": "python3 -m http.server 8766 --bind 127.0.0.1 --directory ..."
  }
}

Normal runtime calls start a local static dashboard server automatically and choose a free localhost port. Tell the user serve.url. If serve.status is ready_to_start or start_failed, run serve.command as a fallback and then tell the user the adjusted URL.

Boundaries

  • Active Genome Index session approval is required.
  • Decode owns panel evidence collection and shaping for the dashboard artifact.
  • The artifact is a single self-contained HTML file that renders fully offline — React/ReactDOM and the precompiled app JS are inlined, no CDN, no in-browser Babel. (One optional Google Fonts stylesheet is referenced; it falls back to system fonts offline and carries no genome data.) It opens by double-click; the local server is only there so the user can hit a URL.

Tool

decode.build_dashboard_evidence

Support operation used by decode.render_dashboard to inspect panel readiness and gaps. Normal dashboard requests should call decode.render_dashboard.

decode.render_dashboard

Build, shape, and render the Genomi Dashboard HTML artifact from the approved Active Genome Index. Returns { status, dashboard_path, panels_rendered, panels_empty, serve } plus the standard evidence_envelope. The serve block tells the host agent how to expose the dashboard at a localhost URL — see the "Serving the dashboard" section above.

Cross-Capability Synthesis

A scope-limited result from this capability is not a final user-facing answer when other Genomi capabilities can contribute orthogonal evidence to the same question. Returning "cannot answer" while applicable capabilities remain unexamined is a host-agent failure mode.

Version History

  • 47e0d05 Current 2026-07-05 10:53

Same Skill Collection

SKILL.md
skills/active-genome-index/SKILL.md
skills/analytical-grounding/SKILL.md
skills/ancestry/SKILL.md
skills/clinvar/SKILL.md
skills/drug-targets/SKILL.md
skills/functional-genomics/SKILL.md
skills/genomic-inquiry/SKILL.md
skills/gnomad/SKILL.md
skills/gwas-catalog/SKILL.md
skills/host-agent/genomi/SKILL.md
skills/journal/SKILL.md
skills/nutrigenomics/SKILL.md
skills/pharmacogenomics/SKILL.md
skills/prs/SKILL.md
skills/rare-disease-cancer/SKILL.md
skills/sequence/SKILL.md
skills/source-research/SKILL.md
skills/variant-evidence/SKILL.md

Metadata

Files
0
Version
47e0d05
Hash
b03d9e15
Indexed
2026-07-05 10:53

Accueil - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-16 22:45
浙ICP备14020137号-1 $Carte des visiteurs$