← Back to home@zwbao

dsh-plugin-longpi

LongPi 1.0.0 for DeepSeek Harness: longevity concierge, personal genome, VCF ingest, multi-omics report, s2f-agent routing.

Stars
0
Language
TypeScript
Created
Sep 17, 2026
Updated
Sep 18, 2026

Introduction

LongPi for DeepSeek Harness

license node dsh dsh-plugin

Version 1.1.0. Production bundle, not an MVP slice.

The longevity concierge for DeepSeek Harness: a North-Star biological-age dashboard, five phenotype modules, a medically guarded chat, and a launch-day itinerary — as one installable dsh.bundle.

中文 · Intended use · Security

LongPi dashboard: composite biological age 45.1 versus chronological 45, five phenotype modules, radar

There is no other DSH plugin that owns this surface. Clinical note-drafting lives in dsh-medseek. LongPi is the member-facing longevity OS: see the number, ask why, take a next step, hand off to a human. Drafts never prescribe.

It is not a medical device. Bundled labs belong to the synthetic member 张明远 (demo).

The claim we can actually defend

Health plugins fail the same way: a number appears on a dashboard and nobody can say where it came from. LongPi's whole pitch is that every number is either recomputable from the repo or explicitly labelled as a demo input.

The headline age is computed, not authored:

npm test   # prints: smoke ok { version: '1.1.0', ... }

test/smoke.mjs recomputes the published PhenoAge model (Levine 2018) from the nine-marker demo panel and asserts the engine lands on 52.52920526313869 years. Change a coefficient, a unit or the Gompertz back-projection and the test fails. That value, plus the five module weights, produces the composite 45.1 against a chronological 45.

Part of the headlineSourceAuditable?
Biological module agePhenoAge engine, nine blood markers✅ formula + constants in src/bioage.ts, pinned by a golden test
The other four module agesFixed demo inputs⚠️ labelled demo in every payload, and shown as such in the GUI
CompositeStated weights, contributions returned✅ compositeAge() returns each module's contribution
Homeostatic dysregulationMahalanobis distance to a young-healthy reference⚠️ not run without a real reference cohort — the engine refuses instead of inventing one
KDM, Horvath, GrimAge, DunedinPACENot implemented⚠️ listed in read_bioage_model with the reason, not silently omitted

The engine also refuses to score rather than guess: a missing marker, a mg/dL value passed into a mmol/L slot, or a non-physiological age each return a typed failure with the expected unit.

Why this can be the #1 health plugin

The awesome-dsh-plugin catalog is dense in UI chrome, memory, and billing. On longevity / biological age / phenotype, it is empty. The one serious health bundle is MedSeek (clinician SOAP/SBAR + FDA/PubMed). LongPi does not copy that. It ships the missing product:

LongPiMedSeek
WhoMember, concierge, launch cohortPhysician / APP / nurse
North StarComposite biological age + 5 modulesStructured clinical notes
NetworkOptional Tycho twin + s2f routingAllowlisted FDA / PubMed / trials
GuardNo diagnosis, no dose change, 120PHI egress + citation discipline
GUIDashboard tab, radar, provenance lineTheme + settings + search cards

Stars follow a category-defining README, a one-line install, a screenshot whose numbers are true, and the dsh-plugin topic. This repo is built to that bar.

Install

dsh plugin --profile web add github:zwbao/dsh-plugin-longpi
dsh web

From a checkout:

npm install && npm test
dsh plugin --profile web add "$PWD"
dsh --profile web --dump-config   # expect "# == dsh-plugin-longpi"

If dsh is not on PATH:

npx -y --package @deepseek-ai/dsh dsh plugin --profile web add "$PWD"

Restart the GUI (or hard-refresh). Open a session → tab LongPi. Uninstall: dsh plugin --profile web remove dsh-plugin-longpi.

What you get

SurfaceWhat you see
Conversation view LongPiComposite age, Δ vs chronological, 5-module radar, status chips, insights, Oct 24 itinerary
Composer dockSuggested questions (copy → paste into Chat)
Sidebar markLongPi dot
PersonaHealth assistant, not a coding agent
Tools (23)8 concierge + 4 biological-age + 11 genome/omics/s2f — matches source
Skills (6)Phenotype, panel, itinerary, genome, multi-omics, s2f routing

Tools (23)

ToolAnswersWrites
read_dashboardComposite age, five modules, insightsno
read_phenotypeOne module + metricsno
explain_metricOne demo metric vs reference / previousno
list_insightsReviewed insight cardsno
get_event_briefing2026-10-24 itineraryno
search_faqKeyword FAQ + glossaryno
create_appointment_requestConcierge intent (max 1 / process)yes
handoff_conciergeHuman handoff (max 1 / process)yes
compute_biological_agePhenoAge from nine markers; refuses on missing or mis-united inputno
read_bioage_modelModel card: citations, required units, claim ceilings, what is not implementedno
read_demo_lab_panelThe synthetic nine-marker panel and the ages it producesno
compute_composite_ageWeighted composite + each module's contributionno
s2f_routeRank s2f-agent skillsno
s2f_planDry-run plan + missing canonical inputsno
s2f_executeOptional penguin s2f route (off by default)no
s2f_batch_requestDe-identified JSON for s2f batch (gpn_msa / translate)no
read_personal_genome12-locus longevity panelno
ingest_vcfLocal VCF SNP ingest (hg38, capped)in-process
annotate_variantConsequence, ClinVar note, literature, s2f skillsno
annotate_multiomicsFive omics layersno
build_omics_report1.1.0 combined reportno
export_reportJSON or Markdownno
lookup_longevity_evidenceCurated index with verified licence and integration mode per rowno

Skills (6)

  • phenotype-literacy — composite age and module weights
  • panel-interpretation — hs-CRP, inflammatory age, VO₂ max, HRV, sleep
  • event-day-itinerary — launch-day path
  • genome-personalization — demo WGS panel + s2f scoring path
  • multiomics-annotation — layered omics, never fill missing layers
  • s2f-routing — s2f-penguin guards + profile batch contract

Quick start

  1. Install, restart dsh web, new session, open the LongPi tab.
  2. Ask in Chat: “我的 hs-CRP 高吗?” The agent should call explain_metric / search_faq and quote 4.2 mg/L (demo).
  3. Ask: “10 月 24 日怎么走?” → get_event_briefing.
  4. Try a medication-change phrasing. The guard must refuse and point to a concierge.

Every answer that cites a number must come from a tool or the demo customer_block. Invented labs are a bug.

Architecture

flowchart LR
  subgraph dsh["DeepSeek Harness"]
    WEB[Web GUI]
    TOOLS[Tool registry]
    SK[Skill registry]
    SP[System prompt]
  end
  subgraph bundle["dsh-plugin-longpi"]
    HOST[Host: tools + guard + persona]
    FIX[Synthetic fixture 张明远]
    UI[Client: Dashboard + dock]
    API["GET /api/longpi/dashboard"]
  end
  WEB --> UI
  UI --> API --> FIX
  HOST --> TOOLS
  HOST --> SK
  HOST --> SP
  HOST --> FIX

One package, one cordis.patch.yml row. No EHR. No wearable OAuth. No third-party Cordis plugins inside the customer process.

Where LongPi stops, and what it delegates

LongPi is deliberately the thin part of a three-part system. It owns the member-facing surface and the frontier evidence; it does not re-implement the databases or the longitudinal statistics that already exist and are better than anything this repo would write.

LayerOwnerWhat it holdsHow LongPi talks to it
Member surface + frontier evidenceLongPi (this repo)Biological-age computation, the nine-marker panel, genomics/omics annotation, s2f routing, guardrails, GUI—
Sequence-to-function claimss2f-penguin / s2f-agentVariant-effect model adapters, claim ceilings, run receiptss2f_route / s2f_plan / s2f_batch_request emit a de-identified contract; execution stays in that repo. DSH never runs GPU inference.
This person's long-term dataTycho Engine (local, MCP)Hash-chained ledger, twin labs/genotype, forecast resolution and calibration, N-of-1 sequential analysis, safety gate, screening loopOne @deepseek-ai/dsh-mcp-client row in cordis.patch.yml (shipped commented out). Tools appear as mcp__tycho__*.

The boundary rule: LongPi proposes candidates with an explicit claim ceiling; Tycho decides what is true about this individual. A phenotype-age number never becomes a treatment instruction, and a forecast never becomes a conclusion before its window resolves.

To turn on the twin, follow the annotated block at the bottom of cordis.patch.yml (tycho paths → tycho list-tools → tycho serve).

Safety model

LayerMechanism
BannerPersistent 演示数据 / DEMO DATA
PersonaNo 诊断 / 患有 / 治愈; no dose changes
agent/pre-stepEmergency → 120 script; medication intent → refuse
Write caps1 appointment, 1 handoff per process
NetworkDashboard API is local; tools do not fetch
Refusal over guessingMissing marker → MISSING_INPUT; implausible unit → OUT_OF_RANGE; no reference cohort → NO_REFERENCE
ProvenanceEvery engine result carries model, citation, units, claim ceiling; the GUI marks computed vs demo inputs
Licence honestylookup_longevity_evidence labels each project import / process / cite / unknown; copyleft rows can never claim import (asserted in the smoke test)

Details: docs/intended-use.md, SECURITY.md.

Configuration

cordis.patch.yml:

config:
  brandName: 健康助手
  demoBanner: true
  itineraryDate: '2026-10-24'

Compatibility

dshtested on @deepseek-ai/dsh 0.1.5-rc.1
Node^22.19 || >=24

Development

npm install
npm test          # tsdown + smoke (PhenoAge golden vector, tools, guards, VCF, report)

Use Node 22 or 24. The bundler (rolldown) ships a native arm64 binding; on Node 20 npm test fails with Cannot find module '@rolldown/binding-darwin-arm64'. If your default node is older:

PATH="$(brew --prefix node@22)/bin:$PATH" npm test

npm test asserts the PhenoAge golden vector 52.52920526313869 (recomputed from the nine-marker panel), that a missing marker yields MISSING_INPUT, that 100 in the glucose slot yields OUT_OF_RANGE, that HD without a reference cohort yields NO_REFERENCE, that all 23 tools register, hs-CRP alias crp → hs_crp, medication and emergency guards, and FAQ retrieve.

Listing checklist (awesome-dsh-plugin)

  • dsh.bundle + cordis.patch.yml
  • dsh plugin add installable
  • MIT LICENSE
  • Tool count in README matches source
  • GitHub topic dsh-plugin
  • One-line description on the list, category Tools & Capabilities or Skills

License

MIT. The dsh-plugin topic is a discovery tag, not a DeepSeek endorsement and not a medical clearance.