Install
$ agentstack add skill-submato-serenity-interactive-chain-skill-serenity-interactive-chain-skill ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Serenity Interactive Chain
Use this skill to turn a theme, company, group, or ecosystem into a project-local self-contained HTML research artifact first, then support domain-by-domain and node-by-node follow-up questions.
Trigger
Use when the user wants a Serenity-style workflow, an interactive industry-chain document, a bottleneck map, company business-domain decomposition, or the ability to ask about any domain/layer/node in a supply chain.
Required workflow
- Use this skill as the single Serenity entrypoint. Do not trigger or load any other Serenity-related skill. Apply the stack-first research lens inside this skill: start from terminal demand, map physical layers, identify scarce constraints, then render the result as an interactive HTML mindmap.
- HTML-only output. Produce or update exactly one project-local self-contained
.htmlfile as the primary deliverable. Do not create Cursor Canvas files,.canvas.tsxfiles, React apps, or multi-file web apps for this skill. - Scope. Infer or ask briefly for: input type, theme/company/ecosystem, geography (global/A股/港股/美股), horizon, and whether the user wants names now or only the chain map. Default: AI infrastructure, global + A股对应, 6-18 months.
- If the input is a company/group/ecosystem, split business domains first. Do not flatten a multi-business company into one chain. Build a top-level domain map before supply-chain nodes:
domainId: short stable id, e.g.D1-starlink,D2-launch,D3-starshielddomain: business domain nameowner: company/subsidiary/ecosystem ownerproduct: what is being sold or deployedrevenueDriver: what makes demand growsupplyChainStart: where the physical chain beginskeyBottleneck: likely highest-priority constraint in that domainboundary: whether this belongs to the company, a sibling company, or a broader ecosystem
Examples:
- SpaceX should be split into Starlink, Launch/Falcon, Starship, Dragon/Human Spaceflight, Starshield/Government, Ground Infrastructure, and Terafab/compute if relevant.
- Tesla should be split into EVs, Energy storage, Supercharging, FSD/AI compute, Optimus, batteries, and manufacturing automation.
- "Musk ecosystem" can include SpaceX, Tesla/Optimus, xAI, Neuralink, and Boring, but clearly mark cross-company boundaries.
- Research the stack. For each domain, build 4-9 layers from terminal demand down to materials/consumables. Every supply-chain node must include a
domainIdand:
id: short stable id, e.g.L3-cw-laserdomainId: parent business domainlayer: layer name and ordersummary: required. Write 2-4 detailed plain-Chinese sentences, not a one-line label. Explain the physical object/process/software layer, where it sits upstream/downstream, what it connects to, and what it is not. Use the same depth as a good "glass substrate / TGV" explanation: definition, value-chain position, and boundary versus nearby concepts.role: required. What this node does in the system. Explain its practical function in demand release, performance, yield, cost, reliability, integration, or deployment speed.replaces: required. What it replaces, supplements, or competes with. If there is no direct substitute, say so. If replacement is conditional, state whether it is a near-term supplement, partial replacement, long-term architecture shift, or only a route option.constraint: why it may become a bottleneckevidence:confirmed,management-claim,inferred, orneeds-verificationcompanies: overseas, A股/港股, private names if relevantstatus: consensus/crowded, repricing, underfollowed, too earlycatalysts: what could make the market reprice itfalsification: what would prove the thesis weaknextQuestions: 2-4 clickable/user-facing follow-up promptsperformance: for recommended public research names only, include recent price performance over3个月,6个月, and1年.
- Support recursive drilldown. Any selected domain or node can become a new root for deeper decomposition. When the user says a level is not detailed enough, expand that selected item into a second-level stack using:
L0: terminal demand / deployment scenarioL1: system or moduleL2: core mechanism / actuator / chip / processL3: precision subcomponentL4: materials / consumablesL5: equipment / testing / qualificationL6: assembly / integration / yieldL7: infrastructure / energy / logistics
Omit levels that do not apply, but preserve the numbered level labels visible in the HTML mindmap. Example: selecting D4-tesla-optimus should reveal sublayers such as actuator module, harmonic reducer, roller screw, frameless motor, bearings, force sensors, dexterous hand, battery/thermal, control PCB/harness, and final assembly/testing.
- Create the interactive HTML mindmap. The
.htmlfile must be the primary deliverable. It must use a simplifiedMusk Ecosystem Mindmapinteraction pattern, not a static report, dashboard, flat table, Cursor Canvas, or generic card panel.
- Mandatory mindmap implementation pattern: build one inline JavaScript
nodes[]data tree and render it with recursive tree navigation. Use stable parent-child IDs (root,D1-*,D1-N1-*,D1-N1-S1-*) rather than separate unconnected arrays for domains and nodes. - Mandatory two-column layout by default: left = expandable mindmap tree; right = selected node detail and action buttons. Do not include a
同层节点/ sibling nodes middle column unless the user explicitly asks for peer comparison. - Mandatory visual shape: the generated HTML should look and behave like a simplified
Musk Ecosystem Mindmap: title ending inMindmap, stat strip, short interaction callout,脑图导航card,节点详情card, bottom个股分析详情section when stocks are present, and a final边界note. - Do not substitute: do not use a bar chart, heatmap, table-first report, filter dashboard, sibling-node panel, or generic left-domain/right-detail layout as the primary interface unless the user explicitly asks for a non-mindmap view.
- mindmap navigation nodes must display compact labels next to the node name: node type (
生态/业务域/节点/子层), market status (已拥挤/重估中/仍冷门/过早), evidence grade (强证据/报道披露/推断/待核实), and current chokepoint state (当下卡点/候选卡点/已定价卡点/远期卡点). These labels should also appear in sibling/peer comparison cards. - node detail panels must explain nodes as research objects, not ticker labels. By default every node should render:
它是什么: detailed definition of the layer/object/process, including where it sits in the value chain and what it is not.它的作用: the practical system role, such as enabling throughput, bandwidth, yield, power delivery, reliability, cost reduction, or deployment speed.替代 / 补充谁: direct substitute, partial substitute, complementary route, or no direct replacement. If adoption depends on customer architecture/qualification, say that explicitly.为什么可能卡脖子: the scarce-layer mechanism, preferably tied to physics, process control, equipment, materials, certification, or capacity.关联A股近期涨跌幅: whenA股 / 港股映射names public stocks, show3个月,半年, and1年price performance, plus数据截至日期,行情来源, and adjustment basis (前复权/后复权/未复权). Treat performance as context, not as a recommendation.- for emerging architecture shifts such as glass substrates/TGV, CPO, silicon photonics, HBM4, advanced substrates, or new power/cooling routes, be explicit about timing: current bottleneck, candidate bottleneck, future route option, or narrative-only.
- define market status consistently:
仍冷门: the node is plausibly important but not yet broadly priced or discussed.重估中: the market has started noticing and repricing the node, but the thesis may not be fully reflected yet; verify whether the move is backed by orders, margins, capacity, or filings.已拥挤: the node is consensus or narrative-heavy; use it as demand proof, not necessarily as the best entry point.过早: the node may matter later, but commercialization, evidence, or timing is not ready.- a top-level business-domain map when the input is a company/group/ecosystem;
- domain and layer decomposition must be represented as parent-child tree nodes, not as standalone filter tabs;
- the detail panel must show the current path above the selected node so users do not lose context after removing the sibling-node column;
- clickable/selectable nodes with detail panel;
- domain IDs and node IDs visible so the user can ask follow-ups by ID;
- after drilldown, add the selected domain/node's internal levels as child
subnodeentries in the tree and as "下一层" buttons in the detail panel; - node detail panels may include a "continue drilling" subsection; if a selected node has meaningful sublayers, render child subnodes with stable IDs and a child-detail area;
- when the HTML recommends or highlights public companies as research priorities, show a compact
近期涨跌幅section in the selected-node detail panel or stock card:3个月,6个月,1年. Keep this separate from the supply-chain thesis so users can distinguish price action from fundamental bottleneck quality. - every public A股/港股 stock rendered in
关联A股近期涨跌幅must include a per-stock验证copy-prompt button. The prompt must name the target HTML file, selectednodeId, node title, stock name, ticker, and the instruction to verify the stock's exact value-chain position, order/customer/revenue evidence, latest 3个月/6个月/1年 performance data, whether the move is already priced, falsification conditions, and to update the current HTML only if the mapping/evidence/status/performance changes. - node detail panels should include copy-prompt action buttons:
生成子层/继续细化: copy a prompt asking the agent to deepen this node and update the current HTML file.补证据: copy a prompt asking the agent to strengthen evidence, source grade, validation path, and falsification.找A股映射: copy a prompt asking the agent to add or refine A股/港股 mappings and verification checks.重新评估: copy a prompt asking the agent to re-check whether the node is still a current chokepoint, whether market status/evidence grade/chokepoint state should change, and whether mappings remain accurate.- action buttons must copy prompts that pass the target HTML path, selected
domainId,nodeId, node title, and the instruction to update that HTML file, so the user does not need to copy IDs manually. - tables only where comparison helps inside detail sections; they are never the primary navigation.
- swimlane/heatmap/table views are auxiliary comparison views, not the default primary navigation, unless the user explicitly asks for them.
- no network calls; embed all data, CSS, and JavaScript inline in the single HTML file.
- HTML tree click behavior: clicking a node selects it and expands it; clicking the same already-selected expanded node collapses it. Do not require modifier keys such as
Alt. Leaf nodes simply select. - HTML bottom stock-detail layout: use a true two-column masonry-style layout for stock detail cards (
column-count: 2, cardbreak-inside: avoid, mobilecolumn-count: 1) rather than a row-based CSS grid that stretches collapsed cards and leaves large blank boxes. - HTML stock-to-node navigation: every stock detail card must provide a compact jump-back affordance next to the ticker, preferably a small
↑icon beside股票名 / 代码. Clicking it selects the corresponding mindmap node, expands its ancestors, scrolls back to the map, and stops propagation so it does not toggle the stock card. Do not add a large extra对应脑图button in the card body. - HTML selected-node A股/港股映射: do not leave
A股 / 港股映射as text only. In the selected-node detail panel, render a structured stock list similar to股票名 代码 + 3个月/半年/1年涨跌幅 + 数据截至/来源 + 分析个股. Sort this list by logic strength, strongest first: evidence hardness, valuation not already exhausted, closeness to the scarce layer, and elasticity. If using a scorecard, sort by total score, then evidence score, then scarce-layer/choke score. Parent nodes should aggregate mapped stocks from descendant nodes; leaf nodes should show only their directly mapped stocks. - HTML ranking occurrence count: top stock-ranking tables must include an
出现/ occurrence column showing how many mindmap nodes mention or map to the stock. Use the count as a light priority boost and tie-breaker: multi-node coverage (e.g. both optical-module and cooling/power exposure) should rank above otherwise similar single-node names, but it should not override weak evidence or poor closeness to the scarce layer. Compute occurrence from explicitstockId/code -> nodeIdmappings plus nodeaShare/company text mentions. - HTML ranking table sorting: each numeric/score column in the top ranking table (
综合,出现,证据,估值未透支,离卡点&弹性,1年涨幅) should include compact ascending/descending controls. Default visual style: subtle stacked chevrons/triangles (▲/▼) next to the column label, grey when inactive and accent-colored when active, not heavy button pills. Percent columns must sort by parsed numeric value, not by string. The default sort remains the overall priority logic. - HTML stock mapping data: maintain a stock-code/id -> node-id map for the jump-back affordance. When adding a new node or moving a stock to a more precise layer, update this map, the parent node
aShare, the stock card text, and any ranking/summary verdict that mentions the affected layer. - HTML stock card actions: keep the detail-card body focused on
验证/下钻/交叉验证copy-prompt buttons. Navigation back to the tree belongs in the compact ticker-line↑affordance. - HTML stock action prompt clarity:
验证,下钻, and交叉验证must use different prompt templates, not the same generic prompt with only the verb changed. 验证: fact-check and update only the bottom个股分析详情card for that stock. Confirm exact value-chain position, order/customer/revenue evidence, latest 3/6/12-month performance, priced-in status, evidence quality, and falsification. Do not change tree nodes,stockNodeMap, top ranking, or score fields; if those structural fields should change, write a proposed-update note inside the stock detail card and wait for user confirmation.下钻: stock-level drilldown updates only the bottom个股分析详情card for that stock. Decompose the stock's strongest value-chain position into 3-6 finer verification facets, but write them inside the stock card as建议下钻结构/验证面; do not create tree nodes, changestockNodeMap, top ranking, or score fields unless the user separately confirms a node-level update. Node-level buttons such as生成子层are the controls that may modify the mindmap structure.交叉验证: cross-check and update only the bottom个股分析详情card for that stock. Use at least three independent source types, compare against peers/substitutes, separate strong evidence from reported/inferred claims, look for反证, and check valuation/crowding. Do not change tree nodes,stockNodeMap, top ranking, or score fields; if those structural fields should change, write a proposed-update note inside the stock detail card and wait for user confirmation.- HTML stats and document integrity: whenever nodes or stock cards are added/removed, update visible stat counts and verify there is exactly one `
and one closing`.
- Market performance data requirement. If the output contains a recommended/priority public-company list, current candidate ranking, or named public tickers intended for research, gather and show recent price performance before finalizing.
- Required columns/fields:
3个月涨跌幅,6个月涨跌幅,1年涨跌幅, `数
…
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: submato
- Source: submato/serenity-interactive-chain-skill
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.