@v587d/capital-generation 2.15.0 → 2.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/config/client.js CHANGED
@@ -5,15 +5,16 @@ window.__ModuleLoader__.load({
5
5
  var module = { exports: {} }
6
6
  var exports = module.exports
7
7
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' })
8
- "use strict";var D=Object.defineProperty;var Ee=Object.getOwnPropertyDescriptor;var _e=Object.getOwnPropertyNames;var Fe=Object.prototype.hasOwnProperty;var P=(t,e,a)=>()=>{if(a)throw a[0];try{return t&&(e=t(t=0)),e}catch(s){throw a=[s],s}};var M=(t,e)=>{for(var a in e)D(t,a,{get:e[a],enumerable:!0})},Le=(t,e,a,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of _e(e))!Fe.call(t,r)&&r!==a&&D(t,r,{get:()=>e[r],enumerable:!(s=Ee(e,r))||s.enumerable});return t};var B=t=>Le(D({},"__esModule",{value:!0}),t);var ie={};M(ie,{SELECTED_SKILL_CATALOG:()=>j,SELECTED_SKILL_SKILL_DIRS:()=>Ie,SELECTED_SKILL_TAGS:()=>W,SELECTED_SKILL_TAG_AXES:()=>qe,SELECTED_SKILL_TAG_LABELS:()=>Ne});var Ie,j,qe,W,Ne,K=P(()=>{"use strict";Ie=Object.freeze({"investment-skills":"skills","china-stock-research-skills":"skills",InvestSkill:"plugins/us-stock-analysis/skills","peter-lynch-skill":"skills","trading-skills":"skills","claude-for-financial-services-cn":"vertical-plugins/china-finance/skills",financeskills:"skills","quant-agent-skills":"skills"}),j=Object.freeze([{key:"buffettFramework",name:"buffett-investment-framework",label:{zh:"Buffett Investment Framework",en:"Buffett Investment Framework"},description:{zh:"\u4EE5\u8BC1\u636E\u4E3A\u57FA\u7840\u7684\u5546\u4E1A\u8D28\u91CF\u3001\u8D44\u672C\u914D\u7F6E\u3001\u4F30\u503C\u548C\u98CE\u9669\u5206\u6790\u6846\u67B6\u3002\u4E3B\u8981\u6E90\u4E8E\u7F8E\u80A1\u8BED\u5883\u3002",en:"Evidence-led business quality, capital allocation, valuation, and risk analysis. Primarily US-market oriented."},owner:"finterm-ai",repository:"investment-skills",status:"experimental",lastCommit:"2026-07-22",reviewBy:"2026-11-06",tags:["business-analysis","cash-flow","perspective","risk","valuation"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u4E0D\u80FD\u76F4\u63A5\u5F53\u4F5C A \u80A1\u89C4\u5219\u6216\u6295\u8D44\u5EFA\u8BAE\u3002",en:"Experimental; do not treat it as A-share rules or investment advice."}},{key:"financialHealth",name:"financial-health",label:{zh:"\u8D22\u52A1\u5065\u5EB7",en:"Financial Health"},description:{zh:"\u68C0\u67E5\u76C8\u5229\u8D28\u91CF\u3001\u73B0\u91D1\u8F6C\u6362\u3001\u8425\u8FD0\u8D44\u672C\u3001\u6760\u6746\u548C\u8D44\u4EA7\u8D1F\u503A\u8868\u98CE\u9669\u3002",en:"Checks earnings quality, cash conversion, working capital, leverage, and balance-sheet risk."},owner:"spikeHongg",repository:"china-stock-research-skills",status:"watchlist",lastCommit:"2026-03-09",reviewBy:"2026-11-06",tags:["a-share","cash-flow","financial-health","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u7EF4\u62A4\u8F83\u4E45\u672A\u66F4\u65B0\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u5185\u5BB9\u548C\u6765\u6E90\u3002",en:"Cold-start experiment; upstream has been quiet, so review content and sources before use."}},{key:"riskWarningCatalysts",name:"risk-warning-catalysts",label:{zh:"\u98CE\u9669\u4E0E\u50AC\u5316\u5242\u76D1\u63A7",en:"Risk Warning Catalysts"},description:{zh:"\u628A\u7814\u7A76\u7ED3\u8BBA\u8F6C\u6210\u5E26\u6765\u6E90\u3001\u9608\u503C\u548C\u590D\u67E5\u9891\u7387\u7684\u98CE\u9669\u4E0E\u50AC\u5316\u5242\u76D1\u63A7\u9879\u3002",en:"Turns research into source-backed risk and catalyst monitoring with thresholds and review cadence."},owner:"spikeHongg",repository:"china-stock-research-skills",status:"watchlist",lastCommit:"2026-03-09",reviewBy:"2026-11-06",tags:["a-share","monitoring","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0D\u8D1F\u8D23\u4F30\u503C\u6216\u4EA4\u6613\u51B3\u7B56\u3002",en:"Cold-start experiment; it does not make valuation or trading decisions."}},{key:"valuationInvestmentStrategy",name:"valuation-investment-strategy",label:{zh:"\u4F30\u503C\u4E0E\u60C5\u666F\u5206\u6790",en:"Valuation Investment Strategy"},description:{zh:"\u5728\u4E8B\u5B9E\u57FA\u7840\u5B8C\u6210\u540E\u6784\u5EFA\u5E26\u5047\u8BBE\u3001\u60C5\u666F\u548C\u5931\u6548\u6761\u4EF6\u7684\u4F30\u503C\u6846\u67B6\u3002",en:"Builds valuation scenarios with assumptions and invalidation conditions after the factual base is ready."},owner:"spikeHongg",repository:"china-stock-research-skills",status:"watchlist",lastCommit:"2026-03-09",reviewBy:"2026-11-06",tags:["a-share","risk","valuation"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u8F93\u51FA\u4E0D\u7B49\u4E8E\u4E70\u5356\u6216\u4ED3\u4F4D\u5EFA\u8BAE\u3002",en:"Cold-start experiment; output is not a buy, sell, or position-size recommendation."}},{key:"strategyBusinessTransition",name:"strategy-business-transition",label:{zh:"\u6218\u7565\u4E0E\u4E1A\u52A1\u8F6C\u578B",en:"Strategy Business Transition"},description:{zh:"\u68C0\u9A8C\u516C\u53F8\u6218\u7565\u53D9\u4E8B\u3001\u4E1A\u52A1\u8FC1\u79FB\u3001\u8D44\u672C\u914D\u7F6E\u548C\u8F6C\u578B\u91CC\u7A0B\u7891\u3002",en:"Tests strategy narratives, business migration, capital allocation, and transition milestones."},owner:"spikeHongg",repository:"china-stock-research-skills",status:"watchlist",lastCommit:"2026-03-09",reviewBy:"2026-11-06",tags:["a-share","strategy","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0D\u8D1F\u8D23\u4F30\u503C\u6216\u4EA4\u6613\u8BA1\u5212\u3002",en:"Cold-start experiment; it does not make valuation or trading plans."}},{key:"industryCompetitionMoat",name:"industry-competition-moat",label:{zh:"\u884C\u4E1A\u7ADE\u4E89\u4E0E\u62A4\u57CE\u6CB3",en:"Industry Competition Moat"},description:{zh:"\u5206\u6790\u884C\u4E1A\u7ED3\u6784\u3001\u7ADE\u4E89\u683C\u5C40\u3001\u4F9B\u9700\u548C\u516C\u53F8\u5DEE\u5F02\u5316\u662F\u5426\u53EF\u6301\u7EED\u3002",en:"Analyzes industry structure, competition, supply-demand, and sustainable differentiation."},owner:"spikeHongg",repository:"china-stock-research-skills",status:"watchlist",lastCommit:"2026-03-09",reviewBy:"2026-11-06",tags:["a-share","business-analysis","competition","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u884C\u4E1A\u5224\u65AD\u4ECD\u9700\u56DE\u5230\u516C\u5F00\u8BC1\u636E\u3002",en:"Cold-start experiment; industry conclusions still require public evidence."}},{key:"businessDecompositionOrderQuality",name:"business-decomposition-order-quality",label:{zh:"\u4E1A\u52A1\u62C6\u89E3\u4E0E\u8BA2\u5355\u8D28\u91CF",en:"Business Decomposition Order Quality"},description:{zh:"\u62C6\u89E3\u4EA7\u54C1\u3001\u5BA2\u6237\u3001\u9879\u76EE\u548C\u8BA2\u5355\uFF0C\u68C0\u67E5\u589E\u957F\u80FD\u5426\u8F6C\u5316\u4E3A\u6536\u5165\u548C\u73B0\u91D1\u3002",en:"Breaks down products, customers, projects, and orders to test conversion into revenue and cash."},owner:"spikeHongg",repository:"china-stock-research-skills",status:"watchlist",lastCommit:"2026-03-09",reviewBy:"2026-11-06",tags:["a-share","business-analysis","cash-flow","orders","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0D\u8D1F\u8D23\u6700\u7EC8\u4F30\u503C\u6216\u4E70\u5356\u5EFA\u8BAE\u3002",en:"Cold-start experiment; it does not make final valuation or trading recommendations."}},{key:"tenKDigest",name:"10k-digest",label:{zh:"\u5E74\u62A5\uFF0810-K\uFF09\u9010\u8282\u7CBE\u8BFB",en:"10-K Report Digest"},description:{zh:"\u9010\u8282\u7CBE\u8BFB\u7F8E\u80A1\u5E74\u62A5 10-K\uFF0C\u4EA7\u51FA\u6458\u8981\u3001\u5206\u8282\u8981\u70B9\u3001\u5173\u952E\u6307\u6807\u4E0E\u53EF\u6838\u5BF9\u7684\u51FA\u5904\u5F15\u7528\u3002",en:"Reads a 10-K section by section into an abstract, section summaries, key metrics and sourced references."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","filings","business-analysis"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u7AE0\u8282\u53E3\u5F84\u6309\u7F8E\u80A1 10-K \u5199\uFF0CA \u80A1\u5E74\u62A5\u7684\u62AB\u9732\u7ED3\u6784\u4E0D\u540C\uFF0C\u4E0D\u80FD\u76F4\u63A5\u5E73\u79FB\u3002",en:"Experimental; the section map follows US 10-K disclosure and does not transfer to A-share annual reports."}},{key:"bearCase",name:"bear-case",label:{zh:"\u7A7A\u5934\u89C6\u89D2\u7EA2\u961F\u53CD\u9A73",en:"Bear Case Red Team"},description:{zh:"\u9488\u5BF9\u4E00\u4E2A\u770B\u591A\u8BBA\u70B9\u523B\u610F\u6784\u5EFA\u6700\u5F3A\u7684\u53CD\u9762\u8BBA\u8BC1\uFF0C\u9010\u6761\u627E\u51FA\u53CD\u8BC1\u4E0E\u8106\u5F31\u5047\u8BBE\u3002",en:"Builds the strongest deliberate short-side counter-argument to a bullish thesis, with counterevidence."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","risk","perspective"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u53EA\u505A\u53CD\u9762\u8BBA\u8BC1\uFF0C\u4E0D\u6784\u6210\u5356\u51FA\u6216\u505A\u7A7A\u5EFA\u8BAE\uFF0C\u4E5F\u4E0D\u9884\u6D4B\u8DCC\u5E45\u3002",en:"Experimental; a counter-argument only, not a sell or short recommendation and no downside forecast."}},{key:"catalystCalendar",name:"catalyst-calendar",label:{zh:"90 \u5929\u50AC\u5316\u5242\u65E5\u5386",en:"Catalyst Calendar"},description:{zh:"\u5217\u51FA\u672A\u6765 90 \u5929\u7684\u4E8B\u4EF6\u50AC\u5316\u5242\u4E0E\u9884\u671F\u5F71\u54CD\uFF0C\u7528\u6765\u5B89\u6392\u590D\u67E5\u8282\u594F\u3002",en:"Lists upcoming catalysts over a 90-day window with expected impact and a review cadence."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","earnings","monitoring"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u4E8B\u4EF6\u5F71\u54CD\u662F\u5B9A\u6027\u5224\u65AD\uFF0C\u4E0D\u9884\u6D4B\u5177\u4F53\u6DA8\u8DCC\u3002",en:"Experimental; catalyst impact is qualitative and does not forecast price moves."}},{key:"competitorAnalysis",name:"competitor-analysis",label:{zh:"\u76F4\u63A5\u5BF9\u624B\u4E0E\u62A4\u57CE\u6CB3",en:"Competitor Analysis"},description:{zh:"\u56F4\u7ED5\u4E00\u5BB6\u516C\u53F8\u4E0E\u5176\u76F4\u63A5\u5BF9\u624B\u505A\u62A4\u57CE\u6CB3\u3001\u5E02\u573A\u5730\u4F4D\u4E0E\u884C\u4E1A\u683C\u5C40\u5206\u6790\u3002",en:"Moat, market position and industry dynamics for one company against its direct rivals."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","competition","business-analysis","risk"],riskNote:{zh:"\u4E0E\u300C\u884C\u4E1A\u7ADE\u4E89\u4E0E\u62A4\u57CE\u6CB3\u300D\u89C6\u89D2\u91CD\u53E0\uFF0C\u540C\u4E1A\u540D\u5355\u4E0E\u53E3\u5F84\u6309\u7F8E\u80A1\u62AB\u9732\u53D6\u6750\uFF1B\u7ED3\u8BBA\u4ECD\u8981\u56DE\u5230\u516C\u5F00\u8BC1\u636E\u3002",en:"Overlaps the industry/moat lens; peer sets follow US disclosure, so conclusions still need public evidence."}},{key:"dividendAnalysis",name:"dividend-analysis",label:{zh:"\u5206\u7EA2\u56DE\u8D2D\u4E0E\u8D44\u672C\u914D\u7F6E",en:"Dividend & Capital Allocation"},description:{zh:"\u628A\u5206\u7EA2\u3001\u56DE\u8D2D\u3001\u5E76\u8D2D\u3001\u503A\u52A1\u7BA1\u7406\u4E0E\u81EA\u7531\u73B0\u91D1\u6D41\u53BB\u5411\u5408\u8D77\u6765\u770B\u8D44\u672C\u914D\u7F6E\u7EAA\u5F8B\u3002",en:"Reviews dividends, buybacks, M&A, debt and FCF deployment as one capital-allocation discipline."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","capital-allocation","cash-flow","valuation"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u4E0D\u627F\u8BFA\u80A1\u606F\u53EF\u6301\u7EED\u6027\uFF0C\u4E5F\u4E0D\u9884\u6D4B\u6536\u76CA\u3002",en:"Experimental; it does not promise dividend sustainability or returns."}},{key:"earningsCallAnalysis",name:"earnings-call-analysis",label:{zh:"\u4E1A\u7EE9\u7535\u8BDD\u4F1A\u6587\u672C\u5206\u6790",en:"Earnings Call Analysis"},description:{zh:"\u4ECE\u4E1A\u7EE9\u7535\u8BDD\u4F1A\u7EAA\u8981\u91CC\u8BFB\u60C5\u7EEA\u3001\u4E3B\u9898\u4E0E\u7BA1\u7406\u5C42\u53E3\u5F84\u7684\u53D8\u5316\u3002",en:"Reads sentiment, themes and shifts in management tone from earnings call transcripts."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","earnings","perspective"],riskNote:{zh:"\u5FC5\u987B\u5148\u62FF\u5230\u7EAA\u8981\u539F\u6587\uFF1B\u6CA1\u6709\u539F\u6587\u65F6\u4E0D\u8BB8\u51ED\u5370\u8C61\u8865\u5199\u7BA1\u7406\u5C42\u8868\u6001\u3002",en:"Needs the actual transcript; never reconstruct management remarks from memory."}},{key:"earningsPreview",name:"earnings-preview",label:{zh:"\u8D22\u62A5\u524D\u4E09\u6863\u60C5\u666F\u63A8\u6F14",en:"Earnings Preview"},description:{zh:"\u5BF9\u6BD4\u4E00\u81F4\u9884\u671F\u4E0E\u671F\u6743\u9690\u542B\u6CE2\u52A8\uFF0C\u7ED9\u51FA\u8D85\u9884\u671F/\u7B26\u5408/\u4E0D\u53CA\u4E09\u6863\u60C5\u666F\u4E0E\u5404\u81EA\u8981\u76EF\u7684\u6307\u6807\u3002",en:"Compares consensus with the implied move and lays out beat / in-line / miss scenarios with watch KPIs."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","earnings","risk","monitoring"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u6B63\u6587\u6BCF\u6863\u60C5\u666F\u5E26\u4ED3\u4F4D\u5199\u6CD5\uFF0C\u53EA\u5F53\u63A8\u6F14\u7EC3\u4E60\uFF0C\u4E0D\u662F\u4EA4\u6613\u6307\u4EE4\u3002",en:"Experimental; each scenario carries position wording \u2014 read it as a rehearsal, not a trade instruction."}},{key:"economicsAnalysis",name:"economics-analysis",label:{zh:"\u7F8E\u56FD\u5B8F\u89C2\u6307\u6807\u89E3\u8BFB",en:"US Economics Analysis"},description:{zh:"\u89E3\u8BFB\u7F8E\u56FD\u5B8F\u89C2\u6570\u636E\u4E0E\u5229\u7387\u8DEF\u5F84\uFF0C\u5E76\u4EA4\u4EE3\u5B83\u4F20\u5BFC\u5230\u5E02\u573A\u7684\u8DEF\u5F84\u3002",en:"Interprets US macro prints and the rate path, and spells out the transmission to markets."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","macro","risk"],riskNote:{zh:"\u53E3\u5F84\u662F\u7F8E\u56FD\u5B8F\u89C2\uFF0C\u5BF9 A \u80A1\u53EA\u80FD\u5F53\u5916\u90E8\u73AF\u5883\u53D8\u91CF\uFF0C\u4E0D\u76F4\u63A5\u63A8\u653F\u7B56\u3002",en:"US macro only; for A-shares treat it as an external condition, not a policy read."}},{key:"etfAnalysis",name:"etf-analysis",label:{zh:"ETF \u5C3D\u8C03\u4E0E\u5951\u5408\u5EA6\u8BC4\u5206",en:"ETF Analysis"},description:{zh:"\u8D39\u7387\u3001\u8DDF\u8E2A\u8BEF\u5DEE\u3001\u6D41\u52A8\u6027\u3001\u6210\u5206\u96C6\u4E2D\u5EA6\u4E0E\u6301\u4ED3\u91CD\u53E0\uFF0C\u6C47\u6210\u4E00\u679A ETF \u5951\u5408\u5EA6\u8BC4\u5206\u3002",en:"Expense ratio, tracking difference, liquidity, concentration and overlap rolled into a fitness score."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","instruments","portfolio","risk"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u8BC4\u5206\u8861\u91CF\u7ED3\u6784\u7279\u5F81\uFF0C\u4E0D\u4EE3\u8868\u6536\u76CA\u9884\u671F\u3002",en:"Experimental; the score describes structure, not expected return."}},{key:"factCheck",name:"fact-check",label:{zh:"\u9010\u6761\u4E3B\u5F20\u6838\u9A8C\u4E0E\u8865\u5F15\u7528",en:"Fact Check"},description:{zh:"\u628A\u62A5\u544A\u91CC\u7684\u6BCF\u4E2A\u6570\u5B57\u4E0E\u4E8B\u5B9E\u4E3B\u5F20\u62C6\u51FA\u6765\u9010\u6761\u6BD4\u5BF9\u4E00\u624B\u6765\u6E90\uFF0C\u6807\u6CE8\u5DF2\u6838\u9A8C/\u4E0D\u7B26/\u65E0\u6CD5\u6838\u9A8C\u5E76\u56DE\u586B\u5F15\u7528\u3002",en:"Extracts every figure and claim, checks each against a primary source, and marks verified / mismatch / unverifiable."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","filings","verification"],riskNote:{zh:"\u4E00\u624B\u6765\u6E90\u6E05\u5355\u6309 SEC \u6587\u4EF6\u3001\u516C\u53F8 IR\u3001FRED \u4E0E\u4EA4\u6613\u6240\u6570\u636E\u5199\uFF1BA \u80A1\u6750\u6599\u8981\u6362\u6210\u516C\u544A\u4E0E\u5B98\u65B9\u62AB\u9732\u3002",en:"Its primary-source list is SEC / IR / FRED / exchange data; swap in announcements and official disclosure for A-shares."}},{key:"financialReportAnalyst",name:"financial-report-analyst",label:{zh:"\u8D22\u62A5\u8D28\u91CF\u4E0E\u7EA2\u65D7\u89E3\u8BFB",en:"Financial Report Analyst"},description:{zh:"\u4ECE 10-K / 10-Q \u8BFB\u62A5\u8868\u8D28\u91CF\u3001\u5F02\u5E38\u7EA2\u65D7\u4E0E\u4E00\u4E2A\u53EF\u4EA4\u4EE3\u51FA\u5904\u7684\u4FE1\u53F7\u3002",en:"Reads statement quality, red flags and one sourced signal from 10-K / 10-Q filings."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","filings","financial-health","risk"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u7EA2\u65D7\u662F\u63D0\u793A\u590D\u67E5\u7684\u7EBF\u7D22\uFF0C\u4E0D\u662F\u7ED3\u8BBA\u3002",en:"Experimental; red flags are prompts to re-check, not conclusions."}},{key:"industryMap",name:"industry-map",label:{zh:"\u4EA7\u4E1A\u94FE\u5730\u56FE\u4E0E\u54BD\u5589\u70B9",en:"Industry Map"},description:{zh:"\u628A\u4E0A\u4E0B\u6E38\u753B\u6210\u6709\u5411\u56FE\uFF0C\u5B9A\u4F4D\u516C\u53F8\u4F4D\u7F6E\u3001\u627E\u4F9B\u9700\u74F6\u9888\u4E0E\u5229\u6DA6\u6C60\uFF0C\u5E76\u6D3E\u751F\u4E8C\u7EBF\u7EBF\u7D22\u3002",en:"Maps the value chain as a directed graph to locate the company, find chokepoints and second-order ideas."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","macro","competition","business-analysis"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u4EA7\u4E1A\u94FE\u5224\u65AD\u4ECD\u9700\u9010\u6761\u56DE\u5230\u516C\u5F00\u8BC1\u636E\u3002",en:"Experimental; value-chain reads still need claim-by-claim public evidence."}},{key:"insiderTrading",name:"insider-trading",label:{zh:"\u5185\u90E8\u4EBA\u589E\u51CF\u6301\u8FFD\u8E2A",en:"Insider Trading"},description:{zh:"\u4ECE SEC Form 4 \u8FFD\u8E2A\u9AD8\u7BA1\u4E0E\u8463\u4E8B\u7684\u589E\u51CF\u53D8\u52A8\u5E76\u505A\u89E3\u8BFB\u3002",en:"Tracks executive and director buying and selling from SEC Form 4 filings."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","filings","monitoring","perspective"],riskNote:{zh:"\u4F9D\u8D56\u7F8E\u56FD\u5185\u90E8\u4EBA\u7533\u62A5\u5236\u5EA6\uFF1BA \u80A1\u8981\u6362\u6210\u5927\u80A1\u4E1C\u4E0E\u8463\u76D1\u9AD8\u53D8\u52A8\u516C\u544A\uFF0C\u53E3\u5F84\u4E0D\u53EF\u76F4\u63A5\u5E73\u79FB\u3002",en:"Assumes US insider filings; A-shares need major-holder and director-change announcements instead."}},{key:"institutionalOwnership",name:"institutional-ownership",label:{zh:"\u673A\u6784\u6301\u4ED3\u53D8\u52A8",en:"Institutional Ownership"},description:{zh:"\u4ECE 13F \u6587\u4EF6\u8BFB\u673A\u6784\u6301\u4ED3\u53D8\u5316\uFF0C\u8BC6\u522B\u673A\u6784\u8D44\u91D1\u7684\u8FC1\u79FB\u65B9\u5411\u3002",en:"Reads changes in institutional holdings from 13F filings to spot where the money is moving."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","filings","monitoring"],riskNote:{zh:"13F \u6709\u4E00\u4E2A\u5B63\u5EA6\u6EDE\u540E\u4E14\u4E0D\u542B\u7A7A\u5934\u4ED3\u4F4D\uFF1B\u8BFB\u6210\u8D8B\u52BF\u4E4B\u524D\u5148\u8BB0\u4F4F\u8FD9\u4E24\u70B9\u3002",en:"13F lags a quarter and omits shorts \u2014 remember both before reading it as a trend."}},{key:"learningCoach",name:"learning-coach",label:{zh:"\u628A\u5206\u6790\u8BB2\u6210\u8BFE\u7A0B",en:"Learning Coach"},description:{zh:"\u50CF\u5BFC\u5E08\u4E00\u6837\u9010\u6307\u6807\u89E3\u91CA\u4E00\u4EFD\u5206\u6790\u7ED3\u679C\uFF0C\u518D\u53CD\u95EE 3\u20135 \u4E2A\u68C0\u9A8C\u7406\u89E3\u7684\u95EE\u9898\u3002",en:"Explains an analysis metric by metric in plain words, then asks 3\u20135 Socratic questions."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["education","perspective"],riskNote:{zh:"\u6559\u5B66\u6027\u8D28\uFF1B\u5B83\u89E3\u91CA\u7684\u662F\u4E0A\u6E38\u5206\u6790\u7684\u53E3\u5F84\uFF0C\u4E0D\u989D\u5916\u4EA7\u751F\u6295\u8D44\u5224\u65AD\u3002",en:"Educational; it explains the analysis it is handed and forms no investment view of its own."}},{key:"optionsAnalysis",name:"options-analysis",label:{zh:"\u671F\u6743\u5E0C\u814A\u5B57\u6BCD\u4E0E\u9690\u6CE2",en:"Options Analysis"},description:{zh:"\u770B\u5E0C\u814A\u5B57\u6BCD\u3001\u9690\u542B\u6CE2\u52A8\u7387\u4E0E\u7B56\u7565\u9002\u914D\u5EA6\uFF0C\u7528\u6765\u7406\u89E3\u671F\u6743\u7684\u98CE\u9669\u5F62\u72B6\u3002",en:"Reviews Greeks, implied volatility and strategy fit to characterise an options risk shape."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","instruments","risk"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u53EA\u89E3\u91CA\u671F\u6743\u98CE\u9669\uFF0C\u4E0D\u63A8\u8350\u5177\u4F53\u5408\u7EA6\u6216\u7B56\u7565\u7EC4\u5408\u3002",en:"Experimental; it explains options risk and does not recommend contracts or spreads."}},{key:"portfolioReview",name:"portfolio-review",label:{zh:"\u7EC4\u5408\u8868\u73B0\u4E0E\u914D\u7F6E\u504F\u79BB",en:"Portfolio Review"},description:{zh:"\u590D\u76D8\u7EC4\u5408\u7684\u6536\u76CA\u6765\u6E90\u3001\u96C6\u4E2D\u5EA6\u4E0E\u914D\u7F6E\u504F\u79BB\uFF0C\u5E76\u5217\u51FA\u9700\u8981\u76EF\u7684\u89C2\u5BDF\u9879\u3002",en:"Reviews portfolio performance, concentration and allocation drift, with items to watch."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","portfolio","risk"],riskNote:{zh:"\u4E0E\u672C\u63D2\u4EF6\u81EA\u5E26\u7684\u7EC4\u5408\u590D\u76D8\u6D41\u7A0B\u91CD\u53E0\uFF1B\u8FD9\u6761\u6309\u7F8E\u80A1\u8BED\u5883\u7ED9\u89C2\u5BDF\u6E05\u5355\uFF0C\u4ED3\u4F4D\u52A8\u4F5C\u4ECD\u7531\u4F7F\u7528\u8005\u51B3\u5B9A\u3002",en:"Overlaps the built-in portfolio review; this one gives a US-context watchlist and leaves position moves to you."}},{key:"positionLadder",name:"position-ladder",label:{zh:"\u5206\u6279\u5EFA\u4ED3\u4E0E\u644A\u8584\u8282\u594F",en:"Position Ladder"},description:{zh:"\u628A\u5EFA\u4ED3\u62C6\u6210\u5206\u6279\u7684\u80A1\u6570\u4E0A\u4E0B\u9650\u4E0E\u52A0\u51CF\u4ED3\u8282\u594F\uFF0C\u5E76\u68C0\u67E5\u6279\u6B21\u8BB0\u8D26\u3001\u6D17\u552E\u7A97\u53E3\u4E0E\u603B\u6536\u76CA\u53E3\u5F84\u3002",en:"Plans a staged entry with share-count floors and ceilings, trim/re-add cadence, lot and wash-sale checks."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","portfolio","monitoring"],riskNote:{zh:"\u6B63\u6587\u91CC\u7684\u80A1\u6570\u533A\u95F4\u662F\u63A8\u6F14\u7528\u7684\u7EC3\u4E60\uFF0C\u4E0D\u662F\u4E70\u5356\u6307\u4EE4\uFF1B\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\u3001\u4E0D\u66FF\u4F7F\u7528\u8005\u4E0B\u5355\uFF0C\u4ED3\u4F4D\u51B3\u5B9A\u5728\u4F7F\u7528\u8005\u3002",en:"Its share-count ranges are rehearsal arithmetic, not orders; this plugin holds no broker interface and places nothing for you \u2014 the sizing call stays with you."}},{key:"resultValidator",name:"result-validator",label:{zh:"\u5206\u6790\u7ED3\u679C\u7F6E\u4FE1\u5EA6\u8BC4\u5206",en:"Result Validator"},description:{zh:"\u4ECE\u6570\u636E\u8D28\u91CF\u3001\u65B9\u6CD5\u4E00\u81F4\u6027\u4E0E\u4FE1\u53F7\u51B2\u7A81\u4E09\u4E2A\u7EF4\u5EA6\uFF0C\u7ED9\u4E00\u4EFD\u5206\u6790\u7ED3\u679C\u6253\u7F6E\u4FE1\u5EA6\u5206\u3002",en:"Scores an analysis's confidence across data quality, methodology and signal consistency."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["verification","perspective"],riskNote:{zh:"\u6253\u7684\u662F\u6570\u636E\u4E0E\u65B9\u6CD5\u81EA\u6D3D\u5EA6\uFF0C\u4E0D\u7B49\u4E8E\u9884\u6D4B\u51C6\u786E\u7387\uFF0C\u4E5F\u4E0D\u627F\u8BFA\u8868\u73B0\u3002",en:"It grades internal data/method consistency, not forecast accuracy or future performance."}},{key:"riskStressTest",name:"risk-stress-test",label:{zh:"\u7EC4\u5408\u538B\u529B\u6D4B\u8BD5\u4E0E\u98CE\u9669\u9884\u7B97",en:"Risk Stress Test"},description:{zh:"beta \u52A0\u6743\u655E\u53E3\u3001\u5386\u53F2\u60C5\u666F\u91CD\u653E\u3001VaR / CVaR\u3001\u6700\u5927\u56DE\u64A4\u4F30\u8BA1\u4E0E\u6D41\u52A8\u6027\u9000\u51FA\u5929\u6570\u3002",en:"Beta-weighted exposure, historical scenario replay, VaR / CVaR, drawdown estimates and days to exit."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","portfolio","risk","macro"],riskNote:{zh:"\u6A21\u578B\u5316\u4F30\u8BA1\uFF0C\u5047\u8BBE\u4E00\u53D8\u7ED3\u679C\u5C31\u53D8\uFF1B\u4E0D\u6784\u6210\u98CE\u63A7\u989D\u5EA6\uFF0C\u4E5F\u4E0D\u662F\u51CF\u4ED3\u6307\u4EE4\u3002",en:"Model output moves with every assumption; this is not a risk limit or a de-risking order."}},{key:"sectorAnalysis",name:"sector-analysis",label:{zh:"\u677F\u5757\u76F8\u5BF9\u5F3A\u5F31\u4E0E\u8F6E\u52A8",en:"Sector Analysis"},description:{zh:"\u770B\u7F8E\u56FD\u5404\u677F\u5757\u7684\u76F8\u5BF9\u5F3A\u5F31\u4E0E\u8F6E\u52A8\u7EBF\u7D22\uFF0C\u5E76\u4EA4\u4EE3\u5224\u65AD\u4F9D\u636E\u3002",en:"Reviews US sector positioning and rotation clues, and states what each read rests on."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","macro","competition"],riskNote:{zh:"\u677F\u5757\u5206\u7C7B\u6309\u7F8E\u80A1\u53E3\u5F84\uFF0C\u4E0E A \u80A1\u884C\u4E1A\u5206\u7C7B\u4E0D\u53EF\u76F4\u63A5\u5BF9\u7167\u3002",en:"Sector taxonomy is US-market; it does not line up with A-share industry classification."}},{key:"shortInterest",name:"short-interest",label:{zh:"\u7A7A\u5934\u6301\u4ED3\u4E0E\u6324\u538B\u6761\u4EF6",en:"Short Interest"},description:{zh:"\u8BFB\u7A7A\u5934\u6BD4\u4F8B\u3001\u56DE\u8865\u6210\u672C\u4E0E\u6324\u538B\u6761\u4EF6\uFF0C\u5E76\u68C0\u67E5\u5229\u7A7A\u5806\u79EF\u4FE1\u53F7\u3002",en:"Analyses short ratio, cost to cover, squeeze conditions and bearish positioning signals."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","filings","monitoring","risk"],riskNote:{zh:"\u7A7A\u5934\u6570\u636E\u662F\u6EDE\u540E\u62AB\u9732\uFF1B\u5F53\u6210\u5B9E\u65F6\u7ED3\u8BBA\u4E4B\u524D\u5148\u6838\u5BF9\u53E3\u5F84\u4E0E\u622A\u6B62\u65E5\u671F\u3002",en:"Short data is reported with a lag \u2014 check basis and as-of date before reading it as live."}},{key:"stockEval",name:"stock-eval",label:{zh:"\u57FA\u672C\u9762\u4E0E\u4F30\u503C\u7EFC\u5408\u8BC4\u4F30",en:"Stock Evaluation"},description:{zh:"\u628A\u8D22\u52A1\u8D28\u91CF\u3001\u6210\u957F\u3001\u4F30\u503C\u4E0E\u98CE\u9669\u5408\u5230\u4E00\u6B21\u7EFC\u5408\u8BC4\u4F30\u91CC\uFF0C\u5E76\u8F93\u51FA\u4E00\u4E2A\u53EF\u4EA4\u4EE3\u51FA\u5904\u7684\u7ED3\u8BBA\u3002",en:"Combines quality, growth, valuation and risk into one evaluation with a sourced conclusion."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","business-analysis","financial-health","valuation","risk"],riskNote:{zh:"\u4E0A\u6E38\u5DF2\u628A fundamental-analysis \u5408\u5165\u672C\u6761\uFF1B\u7EFC\u5408\u7ED3\u8BBA\u4ECD\u662F\u7F8E\u80A1\u53E3\u5F84\uFF0C\u4E0D\u66FF\u4EE3\u672C\u63D2\u4EF6\u65E2\u6709\u7814\u7A76\u6D41\u7A0B\u3002",en:"Upstream folded fundamental-analysis in; the read is US-context and does not replace Capital's own research flow."}},{key:"stockScreener",name:"stock-screener",label:{zh:"\u591A\u6807\u7684\u6A2A\u5411\u6253\u5206\u6392\u5E8F",en:"Stock Screener"},description:{zh:"\u6309\u4F30\u503C\u3001\u8D28\u91CF\u3001\u52A8\u91CF\u3001\u60C5\u7EEA\u4E0E\u6210\u957F\u4E94\u4E2A\u7EF4\u5EA6\u7ED9\u4E00\u7BEE\u5B50\u6807\u7684\u6253\u5206\u5E76\u6392\u5E8F\u3002",en:"Screens and ranks a list of US stocks across valuation, quality, momentum, sentiment and growth."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","valuation","business-analysis","technicals"],riskNote:{zh:"\u6392\u5E8F\u53EA\u53CD\u6620\u5F53\u671F\u6253\u5206\u53E3\u5F84\uFF0C\u4E0D\u9884\u6D4B\u672A\u6765\u8868\u73B0\uFF1B\u6807\u7684\u6E05\u5355\u4E0E\u6570\u636E\u6765\u6E90\u4ECD\u8981\u8D70\u672C\u63D2\u4EF6\u7684\u53D6\u6570\u94FE\u8DEF\u3002",en:"Ranking reflects the current scoring inputs only, not future performance; data still comes via Capital's own sources."}},{key:"stockValuation",name:"stock-valuation",label:{zh:"\u56DB\u65B9\u6CD5\u4F30\u503C\u533A\u95F4",en:"Stock Valuation"},description:{zh:"DCF\u3001\u53EF\u6BD4\u516C\u53F8\u3001EV \u500D\u6570\u4E0E\u5269\u4F59\u6536\u76CA\u4E00\u8D77\u51FA\u4F30\u503C\u533A\u95F4\uFF0C\u5E76\u9010\u6761\u4EA4\u4EE3\u5047\u8BBE\u3002",en:"Values a company with DCF, comparables, EV multiples and residual income, stating every assumption."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","valuation","cash-flow"],riskNote:{zh:"\u533A\u95F4\u968F\u5047\u8BBE\u5927\u5E45\u79FB\u52A8\uFF1B\u8F93\u51FA\u4E0D\u7B49\u4E8E\u76EE\u6807\u4EF7\uFF0C\u4E5F\u4E0D\u662F\u4E70\u5356\u5EFA\u8BAE\u3002",en:"Ranges swing with assumptions; the output is not a price target or a trade call."}},{key:"taxLens",name:"tax-lens",label:{zh:"\u7F8E\u56FD\u7A0E\u52A1\u89C6\u89D2\u68C0\u89C6\u6E05\u5355",en:"Tax Lens"},description:{zh:"\u957F\u77ED\u671F\u8D44\u672C\u5229\u5F97\u3001\u6D17\u552E\u7A97\u53E3\u3001\u5408\u683C\u80A1\u606F\u6301\u6709\u671F\u3001\u6279\u6B21\u9009\u62E9\u4E0E\u5E74\u5EA6\u7A0E\u8D1F\u62D6\u7D2F\u7684\u68C0\u89C6\u6E05\u5355\u3002",en:"Checks short vs. long-term gains, wash-sale windows, qualified dividends, lot selection and estimated tax drag."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","tax","portfolio"],riskNote:{zh:"\u53EA\u8BB2\u7F8E\u56FD\u7A0E\u5236\u4E14\u6B62\u4E8E\u6559\u80B2\u53E3\u5F84\uFF1B\u4E2D\u56FD\u5927\u9646\u7684\u7A0E\u52A1\u4E0E\u8D26\u6237\u5B89\u6392\u8BF7\u54A8\u8BE2\u4E13\u4E1A\u4EBA\u58EB\u3002",en:"US tax mechanics, educational only; get professional advice for mainland-China tax and account matters."}},{key:"technicalAnalysis",name:"technical-analysis",label:{zh:"\u6280\u672F\u9762\u4E0E\u6307\u6807\u89E3\u8BFB",en:"Technical Analysis"},description:{zh:"\u7528\u5747\u7EBF\u3001\u6210\u4EA4\u91CF\u3001RSI / MACD \u7B49\u6307\u6807\u8BFB\u8D8B\u52BF\u3001\u5173\u952E\u4EF7\u4F4D\u4E0E\u590D\u67E5\u89E6\u53D1\u6761\u4EF6\u3002",en:"Reads trend and key levels with moving averages, volume, RSI and MACD, plus re-check triggers."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","technicals","monitoring"],riskNote:{zh:"\u6280\u672F\u4FE1\u53F7\u53EA\u7ED9\u590D\u67E5\u6761\u4EF6\uFF0C\u4E0D\u9884\u6D4B\u65B9\u5411\uFF1B\u4E0D\u8981\u628A\u56FE\u5F62\u7ED3\u8BBA\u5199\u6210\u4E8B\u5B9E\u3002",en:"Technical signals are re-check triggers, not direction forecasts \u2014 do not present them as facts."}},{key:"thesisTracker",name:"thesis-tracker",label:{zh:"\u6295\u8D44\u8BBA\u70B9\u5B58\u6863\u4E0E\u590D\u6838",en:"Thesis Tracker"},description:{zh:"\u5199\u4E0B\u8BBA\u70B9\u7684 KPI\u3001\u5931\u6548\u6761\u4EF6\u4E0E\u50AC\u5316\u5242\uFF0C\u4E4B\u540E\u6309\u65B0\u6570\u636E\u590D\u67E5\u5E76\u7ED9\u51FA\u7EF4\u6301 / \u8D70\u5F31 / \u5931\u6548\u3002",en:"Records KPIs, invalidation triggers and catalysts, then re-checks them as INTACT / WEAKENED / BROKEN."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","verification","monitoring","perspective"],riskNote:{zh:"\u4E0A\u6E38\u5047\u8BBE\u80FD\u628A\u8BBA\u70B9\u843D\u76D8\uFF1B\u5728\u672C\u63D2\u4EF6\u4E0B\u6587\u4EF6\u5199\u5728\u5DE5\u4F5C\u76EE\u5F55\u5E76\u670D\u4ECE\u5F53\u524D\u4F1A\u8BDD\u6743\u9650\u3002",en:"Upstream assumes it can save files; under Capital it writes into the session workspace and obeys its permissions."}},{key:"peterLynchResearch",name:"peter-lynch-skill",label:{zh:"\u5F7C\u5F97\xB7\u6797\u5947\u5F0F\u4E2A\u80A1\u7814\u7A76",en:"Peter Lynch Research"},description:{zh:"\u7ED9\u4E00\u4E2A\u4EE3\u7801\u6216\u516C\u53F8\u540D\uFF0C\u8D70\u5FEB\u7B5B\uFF08SKIP / WATCHLIST / DEEP RESEARCH\uFF09\u6216\u5B8C\u6574\u5C3D\u8C03\uFF0C\u751F\u610F\u7406\u89E3\u3001\u5206\u7C7B\u4E0E\u4F30\u503C\u653E\u5728\u540C\u4E00\u5957\u68C0\u67E5\u91CC\uFF0C\u6BCF\u6761\u4E3B\u5F20\u914D\u53EF\u70B9\u5F00\u7684\u6765\u6E90\u94FE\u63A5\u3002\u7F8E\u80A1\u4E0E\u5883\u5916\u4E0A\u5E02\u53E3\u5F84\u3002",en:"Screens a ticker or company fast (SKIP / WATCHLIST / DEEP RESEARCH) or runs full due diligence, with linked sources under every claim. US and overseas-listing conventions."},owner:"DjNero11",repository:"peter-lynch-skill",status:"watchlist",lastCommit:"2026-06-28",reviewBy:"2026-11-06",tags:["peter-lynch","us-stock","valuation","risk","verification"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u4EC5\u4E24\u6B21\u63D0\u4EA4\u3001\u81EA 2026-06-28 \u8D77\u65E0\u66F4\u65B0\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002X/10 \u8861\u91CF\u7684\u662F\u8BBA\u70B9\u81EA\u6D3D\u5EA6\u4E0E\u7ED3\u6784\u7279\u5F81\uFF0C\u4E0D\u9884\u6D4B\u8868\u73B0\uFF0C\u4E5F\u4E0D\u6784\u6210\u4E70\u5356\u5EFA\u8BAE\u3002",en:"Cold-start experiment; upstream has two commits and has been quiet since 2026-06-28, so review the sources before use. The X/10 score rates thesis consistency and structure, not forecast performance, and is not investment advice."}},{key:"catalystMap",name:"catalyst-map",label:{zh:"\u50AC\u5316\u5242\u5730\u56FE",en:"Catalyst Map"},description:{zh:'\u628A\u8981\u53D1\u751F\u7684\u4E8B\u4EF6\u6309"\u5F71\u54CD\u4EC0\u4E48\u3001\u4EC0\u4E48\u65F6\u5019\u5F71\u54CD\u3001\u4F1A\u4F20\u5BFC\u5230\u8C01"\u6392\u6210\u6CE8\u610F\u529B\u4F18\u5148\u7EA7\uFF0C\u5E76\u6807\u51FA\u4F9D\u8D56\u540C\u4E00\u4E8B\u4EF6\u94FE\u7684\u6301\u4ED3\u3002\u7F8E\u80A1\u4E0E\u5883\u5916\u5B8F\u89C2\u65E5\u5386\u53E3\u5F84\u3002',en:"Ranks upcoming events by what they move, when, and how they transmit across related names, and flags positions hanging on the same event chain. US and overseas calendar conventions."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","macro","monitoring","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5B83\u6392\u7684\u662F\u6CE8\u610F\u529B\u4F18\u5148\u7EA7\uFF0C\u4E0D\u9884\u6D4B\u4EF7\u683C\u8D70\u5411\uFF0C\u4E5F\u4E0D\u6784\u6210\u4E70\u5356\u5EFA\u8BAE\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The map ranks attention, not price direction, and is not investment advice."}},{key:"watchlistReview",name:"watchlist-review",label:{zh:"\u81EA\u9009\u80A1\u5206\u8BCA",en:"Watchlist Review"},description:{zh:"\u5BF9\u4F7F\u7528\u8005\u7ED9\u51FA\u7684\u81EA\u9009\u6E05\u5355\u505A\u5206\u8BCA\uFF1A\u54EA\u4E9B\u503C\u5F97\u76EF\u3001\u54EA\u4E9B\u53EA\u4F5C\u80CC\u666F\u3001\u54EA\u4E9B\u7406\u7531\u5DF2\u7ECF\u4E0D\u6210\u7ACB\uFF0C\u5E76\u8BF4\u6E05\u79FB\u51FA\u7684\u662F\u6E05\u5355\u6761\u76EE\u800C\u4E0D\u662F\u6301\u4ED3\u3002",en:"Triages the watchlist the user supplies into active focus, background monitoring, or removal, and says that what comes off is a list entry, not a position."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","portfolio","monitoring","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5206\u8BCA\u53EA\u4F5C\u7528\u4E8E\u81EA\u9009\u6E05\u5355\uFF0C\u4E0D\u6784\u6210\u4E70\u5356\u52A8\u4F5C\uFF1B\u672C\u63D2\u4EF6\u8BFB\u4E0D\u5230\u5238\u5546\u8D26\u6237\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The triage acts on the watchlist only, is not a buy or sell action, and this plugin cannot read a brokerage account."}},{key:"evidenceGapCheck",name:"evidence-gap-check",label:{zh:"\u8BC1\u636E\u7F3A\u53E3\u68C0\u67E5",en:"Evidence Gap Check"},description:{zh:'\u628A\u4E00\u7B14\u60F3\u6CD5\u8FD8\u7F3A\u7684\u4E8B\u5B9E\u3001\u5047\u8BBE\u4E0E\u672A\u89E3\u95EE\u9898\u6309"\u4F1A\u4E0D\u4F1A\u6539\u53D8\u5224\u65AD"\u6392\u5E8F\uFF0C\u8BF4\u6E05\u54EA\u4E9B\u7F3A\u53E3\u5FC5\u987B\u5148\u8865\u3001\u54EA\u4E9B\u53EA\u662F\u964D\u4F4E\u7F6E\u4FE1\u5EA6\u3002',en:"Ranks the missing facts, assumptions and open questions behind an idea by whether they change the judgement, and separates blocking gaps from confidence gaps."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","verification","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5B83\u53EA\u5217\u8BC1\u636E\u7F3A\u53E3\uFF0C\u4E0D\u7ED9\u8BC4\u7EA7\u3001\u4E0D\u66FF\u4F7F\u7528\u8005\u51B3\u5B9A\u8FD9\u7B14\u505A\u4E0D\u505A\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. It lists evidence gaps only: no rating, and no decision about whether to take the trade."}},{key:"thesisValidation",name:"thesis-validation",label:{zh:"\u8BBA\u70B9\u538B\u529B\u6D4B\u8BD5",en:"Thesis Validation"},description:{zh:"\u628A\u4E00\u4E2A\u8BF4\u6CD5\u538B\u6210\u53EF\u68C0\u9A8C\u7684\u4E3B\u5F20\uFF1A\u8BBA\u70B9\u3001\u8BC1\u636E\u3001\u5931\u6548\u6761\u4EF6\u4E0E\u65F6\u95F4\u7A97\u5206\u5F00\u5199\uFF0C\u518D\u5224\u5B83\u591F\u4E0D\u591F\u683C\u8FDB\u5165\u7ED3\u6784\u68C0\u67E5\u3002",en:"Turns a claim into something testable \u2014 thesis, evidence, invalidation, timeframe \u2014 then judges whether it is ready to be built on."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","verification","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5224\u7684\u662F\u8BBA\u70B9\u662F\u5426\u81EA\u6D3D\u53EF\u68C0\u9A8C\uFF0C\u4E0D\u9884\u6D4B\u8868\u73B0\uFF0C\u4E5F\u4E0D\u6784\u6210\u4E70\u5356\u5EFA\u8BAE\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. It tests whether a thesis is coherent and falsifiable, not how it will perform, and is not investment advice."}},{key:"riskRewardSanityCheck",name:"risk-reward-sanity-check",label:{zh:"\u76C8\u4E8F\u6BD4\u81EA\u6D3D\u68C0\u67E5",en:"Risk-Reward Sanity Check"},description:{zh:"\u6309\u5165\u573A\u3001\u6B62\u635F\u4E0E\u76EE\u6807\u7B97\u51FA\u76C8\u4E8F\u6BD4\uFF0C\u518D\u68C0\u67E5\u8FD9\u4E2A\u7ED3\u6784\u662F\u5426\u81EA\u6D3D\uFF1A\u76EE\u6807\u662F\u5426\u843D\u5728\u566A\u58F0\u91CC\u3001\u6B62\u635F\u662F\u5426\u5728\u660E\u663E\u7684\u6D41\u52A8\u6027\u805A\u96C6\u5904\u3002",en:"Works out the reward-to-risk ratio from entry, stop and target, then tests whether the structure holds \u2014 targets inside noise, stops sitting in obvious liquidity pools."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","risk","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6BD4\u503C\u8861\u91CF\u7684\u662F\u7ED3\u6784\u81EA\u6D3D\u4E0E\u5931\u8D25\u9762\uFF0C\u4E0D\u662F\u80DC\u7387\u6216\u6536\u76CA\u627F\u8BFA\uFF0C\u672C\u63D2\u4EF6\u4E5F\u4E0D\u636E\u5B83\u7ED9\u4ED3\u4F4D\u6570\u5B57\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The ratio measures structural coherence and failure modes, not win rate or returns, and this plugin derives no position size from it."}},{key:"executionPlanCheck",name:"execution-plan-check",label:{zh:"\u6267\u884C\u8BA1\u5212\u68C0\u67E5",en:"Execution Plan Check"},description:{zh:"\u68C0\u67E5\u4E00\u4EFD\u4EA4\u6613\u8BA1\u5212\u5728\u64CD\u4F5C\u4E0A\u662F\u5426\u771F\u7684\u80FD\u843D\u5730\uFF1A\u8BA2\u5355\u7C7B\u578B\u4E0E\u7D27\u8FEB\u5EA6\u662F\u5426\u5339\u914D\u3001\u6D41\u52A8\u6027\u4E0E\u70B9\u5DEE\u98CE\u9669\u3001\u4E8B\u4EF6\u65F6\u70B9\u3001\u6B62\u635F\u80FD\u5426\u6210\u4EA4\u3002",en:"Checks whether a plan is operationally workable: order type against urgency, liquidity and spread risk, event timing, and whether a stop would actually fill."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","risk","monitoring","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u68C0\u67E5\u7684\u662F\u8BA1\u5212\u7684\u53EF\u64CD\u4F5C\u6027\uFF1A\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u4E0B\u5355\u3001\u4E0D\u6539\u5355\uFF0C\u4E5F\u4E0D\u4F1A\u66FF\u4F60\u6267\u884C\u4EFB\u4F55\u4E00\u7B14\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. It reviews whether a plan is executable: this plugin has no broker interface, places and amends no orders and executes nothing for you."}},{key:"portfolioConcentration",name:"portfolio-concentration",label:{zh:"\u7EC4\u5408\u96C6\u4E2D\u5EA6\u68C0\u67E5",en:"Portfolio Concentration"},description:{zh:"\u770B\u7EC4\u5408\u662F\u5426\u8FC7\u5EA6\u538B\u5728\u540C\u4E00\u6279\u53D1\u884C\u4EBA\u3001\u884C\u4E1A\u3001\u4E3B\u9898\u6216\u76F8\u5173\u66B4\u9732\u4E0A\uFF0C\u5E76\u5199\u6E05\u8FD9\u4E2A\u5224\u65AD\u9700\u8981\u54EA\u4E9B\u6301\u4ED3\u6570\u636E\u624D\u6210\u7ACB\u3002",en:"Shows whether a book leans too hard on a few issuers, sectors, themes or correlated exposures, and what holdings data that verdict needs to stand."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","portfolio","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6587\u4E2D\u7684 5%\uFF0F10% \u4E00\u7C7B\u662F\u7ECF\u9A8C\u53E3\u5F84\u4E0D\u662F\u666E\u9002\u89C4\u5219\uFF1B\u6301\u4ED3\u53EA\u4EE5\u4F7F\u7528\u8005\u81EA\u62A5\u7684\u6807\u8BB0\u4E3A\u51C6\uFF08\u672C\u63D2\u4EF6\u8BFB\u4E0D\u5230\u5238\u5546\u8D26\u6237\uFF09\uFF0C\u4E5F\u4E0D\u6784\u6210\u52A0\u51CF\u4ED3\u5EFA\u8BAE\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The 5% / 10% bands are practical review thresholds, not universal laws; the book comes only from positions the user marked as held (this plugin cannot read a brokerage account), and it is not advice to add or reduce."}},{key:"journalPatternAnalyzer",name:"journal-pattern-analyzer",label:{zh:"\u4EA4\u6613\u65E5\u5FD7\u6A21\u5F0F\u5206\u6790",en:"Journal Pattern Analyzer"},description:{zh:"\u4ECE\u4F7F\u7528\u8005\u81EA\u5DF1\u7684\u4EA4\u6613\u65E5\u5FD7\u91CC\u627E\u91CD\u590D\u51FA\u73B0\u7684\u4F18\u52BF\u4E0E\u5931\u8BEF\u3001\u5B83\u4EEC\u5404\u81EA\u53D1\u751F\u5728\u4EC0\u4E48\u73AF\u5883\u4E0B\uFF0C\u5E76\u4E3A\u5C0F\u6837\u672C\u8BBE\u62A4\u680F\u3002",en:"Finds the repeated strengths and mistakes in the user\u2019s own trade journal, groups them by environment, and keeps small samples from hardening into lessons."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","education","portfolio"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u80DC\u7387\u3001\u671F\u671B\u503C\u8FD9\u7C7B\u6570\u5B57\u662F\u5BF9\u5DF2\u6709\u65E5\u5FD7\u7684\u63CF\u8FF0\uFF0C\u4E0D\u8BC1\u660E\u53EF\u6301\u7EED\u7684\u4F18\u52BF\uFF0C\u4E5F\u4E0D\u6784\u6210\u6295\u8D44\u5EFA\u8BAE\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. Win rate and expectancy describe the log you already have: they prove no durable edge and are not investment advice."}},{key:"postTradeReview",name:"post-trade-review",label:{zh:"\u4EA4\u6613\u590D\u76D8",en:"Post-Trade Review"},description:{zh:"\u6309\u8BBA\u70B9\u3001setup\u3001\u6267\u884C\u3001\u5B88\u89C4\u4E0E\u7ED3\u679C\u51E0\u6761\u7EBF\u590D\u76D8\u4E00\u7B14\u5DF2\u7ECF\u5E73\u6389\u7684\u4EA4\u6613\uFF0C\u907F\u514D\u7528\u540E\u89C6\u955C\u7F16\u9020\u6559\u8BAD\u3002",en:"Reviews a closed trade across thesis, setup, execution, adherence and outcome without rewriting it with hindsight."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","education"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u590D\u76D8\u5F97\u51FA\u7684"\u4E0B\u6B21\u8981\u6539\u7684\u89C4\u5219"\u5C5E\u4E8E\u8FC7\u7A0B\u63A8\u6F14\uFF0C\u672C\u63D2\u4EF6\u4E0D\u636E\u5B83\u66FF\u4F7F\u7528\u8005\u8C03\u6574\u6301\u4ED3\u6216\u4E0B\u5355\u3002',en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The rule changes it suggests are process exercises: this plugin adjusts no holdings and places no orders on them."}},{key:"positionSizing",name:"position-sizing",label:{zh:"\u5165\u573A\u4ED3\u4F4D\u6D4B\u7B97",en:"Position Sizing"},description:{zh:"\u4ECE\u8D26\u6237\u89C4\u6A21\u3001\u5355\u7B14\u98CE\u9669\u9884\u7B97\u3001\u5165\u573A\u4EF7\u4E0E\u6B62\u635F\u4EF7\u53CD\u63A8\u4E00\u4E2A\u53EF\u8FA9\u62A4\u7684\u4ED3\u4F4D\uFF0C\u5E76\u628A\u6469\u64E6\u6210\u672C\u3001\u4E8B\u4EF6\u98CE\u9669\u4E0E\u6D41\u52A8\u6027\u6321\u5728\u516C\u5F0F\u4E4B\u5916\u2014\u2014\u5B83\u53EA\u7B97\u5927\u5C0F\uFF0C\u4E0D\u8BC4\u5224\u8FD9\u7B14\u8BE5\u4E0D\u8BE5\u505A\u3002",en:"Works a defensible size back from account equity, a per-trade risk budget, entry and stop, with trading friction taken into account; it sizes the trade and deliberately does not judge the thesis."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","risk","portfolio","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5B83\u7ED9\u51FA\u7684\u4ED3\u4F4D\u6570\u5B57\u662F\u65B9\u6CD5\u63A8\u6F14\uFF0C\u4E0D\u662F\u8BA2\u5355\uFF1A\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u636E\u5B83\u4E0B\u5355\uFF0C\u4E5F\u4E0D\u66FF\u4F60\u52A8\u4EFB\u4F55\u4E00\u7B14\u4ED3\uFF1B\u8D26\u6237\u89C4\u6A21\u4E0E\u98CE\u9669\u9884\u7B97\u7531\u4F60\u63D0\u4F9B\uFF0C\u53D6\u4E0D\u5230\u5C31\u505C\u4E0B\u800C\u4E0D\u662F\u731C\u3002\u6B62\u635F\u3001\u6ED1\u70B9\u3001\u5408\u7EA6\u4E58\u6570\u4E0E\u6D41\u52A8\u6027\u90A3\u4E00\u6863\u6309\u7F8E\u80A1\uFF0F\u5883\u5916\u53E3\u5F84\u5199\uFF08A \u80A1 T+1\u3001\u6DA8\u8DCC\u505C\u4E0E\u96C6\u5408\u7ADE\u4EF7\u90FD\u4E0D\u6210\u7ACB\uFF09\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The size it produces is a method exercise, not an order: this plugin holds no broker interface, places nothing on it and moves no position for you. Account equity and risk budget come from you \u2014 if they are missing it stops rather than guesses. Stops, slippage, contract multipliers and liquidity assumptions are US / offshore conventions (A-share T+1, daily limits and the call auction do not map onto them)."}},{key:"positionManagement",name:"position-management",label:{zh:"\u6301\u4ED3\u8BBA\u70B9\u590D\u6838",en:"Position Management"},description:{zh:"\u5BF9\u7167\u539F\u59CB\u8BBA\u70B9\u3001\u5931\u6548\u6761\u4EF6\u3001\u50AC\u5316\u5242\u65E5\u5386\u4E0E\u6267\u884C\u7EA6\u675F\u590D\u67E5\u4E00\u7B14\u5728\u624B\u4ED3\u4F4D\uFF0C\u7ED9\u51FA\u7EE7\u7EED\u6301\u6709\u3001\u51CF\u4ED3\u3001\u6536\u7D27\u6B62\u635F\u8FD8\u662F\u79BB\u573A\u7684\u5224\u65AD\uFF0C\u5E76\u4EA4\u4EE3\u8FD9\u4E2A\u5224\u65AD\u5EFA\u7ACB\u5728\u54EA\u4E9B\u8BC1\u636E\u4E0A\u3002",en:"Revisits an open position against the original thesis, its invalidation logic, the catalyst calendar and execution constraints, then argues hold, trim, tighten or exit on stated evidence."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","monitoring","portfolio","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6301\u4ED3\u52A0\u51CF\uFF08\u6301\u6709 / \u51CF\u4ED3 / \u6536\u7D27 / \u79BB\u573A\uFF09\u5C5E\u4E8E\u65B9\u6CD5\u63A8\u6F14\uFF0C\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\u3001\u4E0D\u4EE3\u4F60\u6267\u884C\u4EFB\u4F55\u4E00\u7B14\uFF1B\u539F\u59CB\u8BBA\u70B9\u6216\u6301\u4ED3\u4FE1\u606F\u7F3A\u5931\u65F6\u5B83\u6309\u4E34\u65F6\u53E3\u5F84\u590D\u67E5\u5E76\u70B9\u540D\u7F3A\u53E3\uFF0C\u4E0D\u7F16\u4E00\u4EFD\u5E72\u51C0\u7684\u4E8B\u524D\u8BA1\u5212\u3002\u671F\u6743\u3001\u76D8\u540E\u65F6\u6BB5\u4E0E\u6267\u884C\u7EA6\u675F\u90A3\u4E00\u6863\u6309\u7F8E\u80A1\uFF0F\u5883\u5916\u53E3\u5F84\u5199\uFF0CA \u80A1\u7684 T+1\u3001\u6DA8\u8DCC\u505C\u4E0E\u96C6\u5408\u7ADE\u4EF7\u5728\u6B63\u6587\u91CC\u6CA1\u6709\u5BF9\u5E94\u7269\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The hold / trim / tighten / exit call is a method exercise: this plugin holds no broker interface and executes nothing for you. When the original plan or position detail is missing it reviews provisionally and names the gap instead of inventing a tidy prior plan. Options, extended hours and execution constraints follow US / offshore conventions \u2014 A-share T+1, daily price limits and the call auction have no counterpart in the text."}},{key:"macroEventAnalysis",name:"macro-event-analysis",label:{zh:"\u5B8F\u89C2\u4E8B\u4EF6\u68B3\u7406",en:"Macro Event Analysis"},description:{zh:"\u628A\u672A\u6765\u4E00\u5230\u4E24\u5468\u7684\u5B8F\u89C2\u4E8B\u4EF6\u6392\u6210\u51B3\u7B56\u76F8\u5173\u7684\u6E05\u5355\uFF1A\u6309\u5E02\u573A\u654F\u611F\u5EA6\u3001\u610F\u5916\u7A7A\u95F4\u3001\u4F20\u5BFC\u901F\u5EA6\u4E0E\u65F6\u95F4\u538B\u529B\u6392\u5E8F\uFF0C\u518D\u843D\u5230\u5229\u7387\u3001\u6C47\u7387\u3001\u5546\u54C1\u4E0E\u98CE\u9669\u504F\u597D\u7684\u4F20\u5BFC\u8DEF\u5F84\u3002",en:"Turns the next one to two weeks of macro events into a decision-relevant slate, ranked by market sensitivity, surprise capacity, transmission speed and timing pressure, then mapped to rates, FX, commodities and risk appetite."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","macro","monitoring","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5B83\u6392\u7684\u662F\u4E8B\u4EF6\u98CE\u9669\u4E0E\u4F20\u5BFC\u8DEF\u5F84\uFF0C\u4E0D\u9884\u6D4B\u5355\u6B21\u6570\u636E\u7684\u65B9\u5411\uFF0C\u4E5F\u4E0D\u6784\u6210\u4E70\u5356\u5EFA\u8BAE\uFF1B\u65E5\u5386\u7F3A\u5931\u65F6\u6309\u7F3A\u53E3\u5982\u5B9E\u5217\u51FA\uFF0C\u4E0D\u8865\u4E00\u81F4\u9884\u671F\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. It ranks event risk and transmission channels, does not predict the direction of a release, and is not investment advice. Missing calendar rows stay missing rather than being filled from memory."}},{key:"marketRegimeAnalysis",name:"market-regime-analysis",label:{zh:"\u5E02\u573A\u73AF\u5883\u5224\u5B9A",en:"Market Regime Analysis"},description:{zh:"\u6309\u8D8B\u52BF\u3001\u6CE2\u52A8\u7387\u3001\u5E7F\u5EA6\u4E0E\u4E8B\u4EF6\u80CC\u666F\u56DB\u4E2A\u951A\u70B9\u4FDD\u5B88\u5730\u5224\u5B9A\u5F53\u524D\u5E02\u573A\u73AF\u5883\uFF08\u5065\u5EB7\u8D8B\u52BF / \u8106\u5F31\u8D8B\u52BF / \u8FC7\u6E21 / \u9632\u5FA1\uFF09\uFF0C\u5E76\u8BF4\u660E\u54EA\u4E9B\u8BC1\u636E\u4F1A\u63A8\u7FFB\u8FD9\u4E2A\u5224\u5B9A\u3002",en:"Classifies the current market environment conservatively across trend, volatility, breadth and event backdrop (healthy trend, fragile trend, transition, defensive), and states what evidence would overturn the call."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","technicals","risk","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5B83\u7ED9\u7684\u662F\u6218\u672F\u9ED8\u8BA4\u503C\u4E0E\u5931\u6548\u6761\u4EF6\uFF0C\u4E0D\u9884\u6D4B\u6536\u76CA\u3001\u4E0D\u7ED9\u7F6E\u4FE1\u5EA6\u767E\u5206\u6BD4\uFF0C\u4E5F\u4E0D\u4EE3\u66FF\u5177\u4F53\u6807\u7684\u7684\u4EA4\u6613\u8BA1\u5212\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. It gives tactical defaults and invalidation conditions \u2014 no return forecast, no confidence percentages, and no substitute for instrument-level trade planning."}},{key:"chinaEarningsAnalysis",name:"china-earnings-analysis",label:{zh:"A \u80A1\u4E1A\u7EE9\u70B9\u8BC4",en:"A-Share Earnings Review"},description:{zh:"\u628A\u5DF2\u8986\u76D6\u516C\u53F8\u7684\u5B63\u62A5\u6216\u5E74\u62A5\u5199\u6210 A \u80A1\u5356\u65B9\u4F53\u4F8B\u7684\u70B9\u8BC4\uFF1A\u5B9E\u9645 / \u4E00\u81F4\u9884\u671F / \u4E0A\u671F\u7684\u5DEE\u5F02\u8868\u3001\u6536\u5165\u4E0E\u5229\u6DA6\u7387\u5206\u89E3\u3001\u8D44\u4EA7\u8D1F\u503A\u8868\u4E0E\u73B0\u91D1\u6D41\u5173\u6CE8\u70B9\uFF0C\u518D\u843D\u5230\u4F30\u503C\u4E0E\u98CE\u9669\u3002",en:"Writes a quarterly or annual update in Chinese sell-side format: an actual / consensus / prior variance table, revenue and margin decomposition, balance-sheet and cash-flow focus, then valuation and risks."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","earnings","filings","financial-health"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u672C\u63D2\u4EF6\u6CA1\u6709\u4E00\u81F4\u9884\u671F\u7684\u7ED3\u6784\u5316\u53D6\u6570\u9762\uFF1A\u90A3\u4E00\u5217\u53D6\u4E0D\u5230\u5C31\u7559\u7A7A\u5E76\u70B9\u540D\u7F3A\u5931\uFF0C\u4E0D\u7528\u8BB0\u5FC6\u8865\u3002\u62A5\u544A\u91CC\u7684\u8BC4\u7EA7\u4E0E\u76EE\u6807\u4EF7\u6BB5\u843D\u5C5E\u4E8E\u63A8\u6F14\u7EC3\u4E60\uFF0C\u4E0D\u6784\u6210\u4E70\u5356\u5EFA\u8BAE\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. This plugin has no consensus endpoint: that column stays empty and the gap is named rather than remembered. The rating and target-price paragraphs are exercises, not investment advice."}},{key:"chinaEarningsPreview",name:"china-earnings-preview",label:{zh:"A \u80A1\u8D22\u62A5\u524D\u77BB",en:"A-Share Earnings Preview"},description:{zh:"\u516C\u5E03\u524D\u628A\u5173\u6CE8\u70B9\u6392\u597D\uFF1A\u5386\u53F2\u57FA\u7EBF\u3001\u8981\u76EF\u7684\u4E09\u5230\u4E94\u4E2A\u6307\u6807\u3001\u4E50\u89C2 / \u57FA\u51C6 / \u60B2\u89C2\u4E09\u6863\u60C5\u666F\u4E0E\u89E6\u53D1\u6761\u4EF6\uFF0C\u6309 A \u80A1\u62AB\u9732\u8282\u594F\uFF08\u4E1A\u7EE9\u9884\u544A\u3001\u5FEB\u62A5\u3001\u6B63\u5F0F\u62A5\u544A\uFF09\u5199\u524D\u77BB\u3002",en:"Sets up the pre-release frame: historical baseline, the three to five metrics that matter, bull / base / bear scenarios with their triggers, all on the A-share rhythm of \u9884\u544A, \u5FEB\u62A5 and the full report."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","earnings","monitoring"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5BBF\u4E3B\u53D6\u4E0D\u5230\u4E00\u81F4\u9884\u671F\u65F6\uFF0C\u60C5\u666F\u5BF9\u6BD4\u5199\u5728\u5386\u53F2\u4E0E\u81EA\u5BB6\u62AB\u9732\u53E3\u5F84\u4E0A\uFF0C\u5E76\u6807\u660E\u90A3\u662F\u4F60\u81EA\u5DF1\u7684\u57FA\u7EBF\uFF1B\u6587\u4E2D\u7684\u4ED3\u4F4D\u4E0E\u4EA4\u6613\u7B56\u7565\u8BBE\u60F3\u5C5E\u4E8E\u63A8\u6F14\u7EC3\u4E60\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. With no retrievable consensus, scenarios are framed against history and the company\u2019s own disclosed range, labelled as your baseline; the sizing and trade ideas it sketches are exercises."}},{key:"chinaCompsAnalysis",name:"china-comps-analysis",label:{zh:"A \u80A1\u53EF\u6BD4\u516C\u53F8\u500D\u6570",en:"A-Share Comparable Multiples"},description:{zh:"\u6309 A \u80A1\u53E3\u5F84\u642D\u540C\u4E1A\u500D\u6570\u8868\uFF1A\u677F\u5757\u5206\u7EC4\u4E0E\u5E02\u503C / \u589E\u901F / \u76C8\u5229\u6027\u7B5B\u9009\uFF0CP/E\uFF08\u52A8\u6001\xB7\u9759\u6001\xB7TTM\uFF09\u3001P/B\u3001EV/EBITDA \u4E0E\u6EA2\u4EF7\u6298\u4EF7\u7684\u89E3\u91CA\uFF0C\u6700\u540E\u6536\u655B\u6210\u4E00\u4E2A\u4F30\u503C\u533A\u95F4\u3002",en:"Builds a peer multiple table on A-share conventions: sector grouping with size, growth and profitability screens, dynamic / static / TTM P/E, P/B and EV/EBITDA, premium and discount explanations, and a resulting valuation range."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","valuation","competition"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u533A\u95F4\u968F\u500D\u6570\u5047\u8BBE\u5927\u5E45\u79FB\u52A8\uFF0C\u672B\u5C3E\u7684\u76EE\u6807\u4EF7\u4E0E\u6295\u8D44\u5EFA\u8BAE\u5C5E\u4E8E\u63A8\u6F14\u7EC3\u4E60\uFF0C\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u636E\u5B83\u4E0B\u5355\uFF0C\u4E5F\u4E0D\u4F1A\u66FF\u4F60\u6267\u884C\u4EFB\u4F55\u4E00\u7B14\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. The range moves with the multiple assumptions, and the closing target price and recommendation are exercises: this plugin has no broker interface and places no order on them."}},{key:"chinaDcf",name:"china-dcf",label:{zh:"A \u80A1 DCF \u53E3\u5F84",en:"A-Share DCF Conventions"},description:{zh:"\u7528\u4E2D\u56FD\u8D22\u62A5\u53E3\u5F84\u8DD1 DCF\uFF1A\u65E0\u98CE\u9669\u5229\u7387\u53D6\u5341\u5E74\u671F\u56FD\u503A\u6536\u76CA\u7387\u3001A \u80A1\u80A1\u6743\u98CE\u9669\u6EA2\u4EF7\u300125% \u7A0E\u7387\uFF08\u9AD8\u65B0\u6280\u672F\u4F01\u4E1A 15%\uFF09\u3001\u672C\u5E01\u7EC8\u503C\u589E\u957F\uFF0C\u518D\u628A WACC \u4E0E\u654F\u611F\u6027\u644A\u5F00\u3002",en:"Runs a DCF on Chinese conventions: a 10-year government bond yield as the risk-free rate, A-share equity risk premium, 25% tax (15% for \u9AD8\u65B0\u6280\u672F\u4F01\u4E1A), local-currency terminal growth, then WACC and sensitivities."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","valuation","cash-flow"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u56FD\u503A\u6536\u76CA\u7387\u6216 \u03B2 \u53D6\u4E0D\u5230\u65F6\u6309\u5047\u8BBE\u533A\u95F4\u505A\u654F\u611F\u6027\u5E76\u5199\u660E\u5047\u8BBE\uFF0C\u4E0D\u5047\u8BBE\u4E00\u4E2A\u70B9\u4F4D\uFF1B\u884C\u4E1A\u5229\u6DA6\u7387\u7684\u9ED8\u8BA4\u503C\u662F\u8FD9\u4E2A\u6A21\u578B\u7684\u8F93\u5165\uFF0C\u4E0D\u662F\u5BF9\u516C\u53F8\u7684\u9884\u6D4B\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. If the bond yield or beta cannot be retrieved, the model runs as a labelled sensitivity band rather than a guessed level; the sector margin defaults are inputs to this model, not forecasts of the company."}},{key:"chinaSectorOverview",name:"china-sector-overview",label:{zh:"A \u80A1\u884C\u4E1A\u5168\u666F",en:"A-Share Sector Landscape"},description:{zh:"\u753B\u4E00\u5F20 A \u80A1\u884C\u4E1A\u5730\u56FE\uFF1A\u5E02\u573A\u89C4\u6A21\u4E0E\u96C6\u4E2D\u5EA6\u3001\u653F\u7B56\u4E0E\u76D1\u7BA1\u6846\u67B6\u3001\u7ADE\u4E89\u683C\u5C40\u4E0E\u6309\u677F\u5757\u7684\u5173\u952E KPI\uFF08\u6279\u4EF7\u3001\u88C5\u673A\u91CF\u3001NIM \u4E00\u7C7B\uFF09\uFF0C\u518D\u843D\u5230\u4E3B\u9898\u4E0E\u4F30\u503C\u5BF9\u7167\u3002",en:"Maps an A-share industry: market size and concentration, the policy and regulatory frame, competitive structure with sector-specific KPIs (\u6279\u4EF7, \u88C5\u673A\u91CF, NIM and the like), then themes and valuation context."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","macro","competition","business-analysis"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u884C\u4E1A\u53E3\u5F84\u7684\u7EDF\u8BA1\u53D6\u4E0D\u5230\u5C31\u5199\u6210\u7F3A\u53E3\uFF0C\u4E0D\u6298\u7B97\u6210\u8BB0\u5FC6\u91CC\u7684\u6570\uFF1B\u591A\u7A7A\u4E00\u89C8\u4E0E"\u91CD\u70B9\u6807\u7684\u3001\u76EE\u6807\u4EF7\u3001\u8BC4\u7EA7"\u4E00\u8282\u5C5E\u4E8E\u63A8\u6F14\u7EC3\u4E60\uFF0C\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u636E\u5B83\u4E0B\u5355\uFF0C\u4E5F\u4E0D\u4F1A\u66FF\u4F60\u6267\u884C\u4EFB\u4F55\u4E00\u7B14\u3002',en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. Industry statistics that do not come back stay a named gap rather than a remembered figure; the long / short list and the \u91CD\u70B9\u6807\u7684\u3001\u76EE\u6807\u4EF7\u3001\u8BC4\u7EA7 section are exercises, and this plugin \u2014 with no broker interface \u2014 places no order on them."}},{key:"chinaCatalystCalendar",name:"china-catalyst-calendar",label:{zh:"A \u80A1\u50AC\u5316\u5242\u65E5\u5386",en:"A-Share Catalyst Calendar"},description:{zh:"\u628A A \u80A1\u7684\u62AB\u9732\u4E0E\u4E8B\u4EF6\u6309\u65F6\u95F4\u6392\u6210\u6CE8\u610F\u529B\u65E5\u5386\uFF1A\u8D22\u62A5\u4E0E\u4E1A\u7EE9\u9884\u544A\u3001\u80A1\u4E1C\u5927\u4F1A\u3001\u89E3\u7981\u4E0E\u5206\u7EA2\u56DE\u8D2D\u3001\u653F\u7B56\u4E0E\u884C\u4E1A\u4F1A\u8BAE\uFF0C\u5E76\u6807\u51FA\u538B\u5728\u540C\u4E00\u4E2A\u4E8B\u4EF6\u94FE\u4E0A\u7684\u516C\u53F8\u3002",en:"Lays A-share disclosures and events out as an attention calendar: earnings and \u4E1A\u7EE9\u9884\u544A, shareholder meetings, lockup expiries, dividends and buybacks, policy and industry events, flagging names hanging on the same event chain."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","monitoring","macro","earnings"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u4E0E\u7F8E\u80A1\u53E3\u5F84\u7684\u300C\u50AC\u5316\u5242\u5730\u56FE\u300D\u540C\u65CF\uFF0C\u4F46\u6362\u6210 A \u80A1\u62AB\u9732\u8282\u594F\uFF1B\u65E5\u671F\u6CA1\u53D6\u56DE\u6765\u5C31\u6807\u6210\u672A\u786E\u8BA4\uFF0C\u4E0D\u7F16\u65E5\u5386\uFF0C\u4E5F\u4E0D\u9884\u6D4B\u4EF7\u683C\u8D70\u5411\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. The same family as the US-market Catalyst Map, retuned to A-share disclosure rhythm; a date that did not come back is marked unconfirmed rather than invented, and the calendar forecasts no price direction."}},{key:"chinaBreakTrace",name:"china-break-trace",label:{zh:"A \u80A1\u8D22\u52A1\u6838\u67E5",en:"A-Share Forensic Review"},description:{zh:"\u5BF9 A \u80A1\u8D22\u62A5\u505A\u53D6\u8BC1\u5F0F\u6838\u67E5\uFF1A\u79D1\u76EE\u52FE\u7A3D\u3001\u5229\u6DA6\u4E0E\u73B0\u91D1\u6D41\u7684\u80CC\u79BB\u3001\u5E94\u6536\u4E0E\u5B58\u8D27\u5F02\u5E38\u3001\u8425\u8FD0\u8D44\u672C\u53E3\u5F84\uFF0C\u518D\u8BFB\u5BA1\u8BA1\u610F\u89C1\u7C7B\u578B\u3001\u4EA4\u6613\u6240\u95EE\u8BE2\u4E0E\u5904\u7F5A\u516C\u544A\u91CC\u7684\u4FE1\u53F7\u3002",en:"Works through A-share statements forensically: line-item tie-outs, the gap between earnings and cash flow, receivable and inventory anomalies, working-capital behaviour, then what auditor opinions, exchange inquiries and penalties signal."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","risk","financial-health","verification"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5B83\u5217\u7684\u662F"\u8BE5\u53BB\u67E5\u4EC0\u4E48"\uFF0C\u4E0D\u662F\u6307\u63A7\uFF0C\u4E5F\u4E0D\u6784\u6210\u4E70\u5356\u5EFA\u8BAE\uFF1B\u4E0E\u300C\u98CE\u9669\u4E0E\u50AC\u5316\u5242\u76D1\u63A7\u300D\u90E8\u5206\u91CD\u53E0\uFF0C\u8FD9\u9897\u6309\u62A5\u8868\u79D1\u76EE\u4E0E\u76D1\u7BA1\u6587\u4E66\u8D70\u3002',en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. It lists what to investigate, not an accusation, and is not investment advice; it overlaps the risk-and-catalyst module but works from statement lines and regulatory documents."}},{key:"chinaVarianceCommentary",name:"china-variance-commentary",label:{zh:"A \u80A1\u4E1A\u7EE9\u5DEE\u5F02\u8868\u8FF0",en:"A-Share Variance Commentary"},description:{zh:'\u628A\u5DEE\u5F02\u5199\u6210\u8BFB\u5F97\u61C2\u7684\u4E2D\u6587\uFF1A\u8D85\u9884\u671F / \u4F4E\u4E8E\u9884\u671F\u600E\u4E48\u5206\u7C7B\u3001\u9A71\u52A8\u56E0\u7D20\u5F52\u56E0\u5230\u54EA\u4E00\u5C42\u3001\u53E3\u5F84\u4E0E\u5355\u4F4D\u4E00\u81F4\u6027\u600E\u4E48\u4EA4\u4EE3\uFF0C\u4EE5\u53CA"\u8FD9\u4E2A\u53D8\u5316\u610F\u5473\u7740\u4EC0\u4E48"\u7684\u53E5\u5B50\u7EA7\u5199\u6CD5\u3002',en:"Turns variances into readable Chinese commentary: how to classify beat / miss / in-line, where to attribute the driver, how to keep \u53E3\u5F84 and units consistent, and how to say what the change actually means."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","earnings","verification"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5BBF\u4E3B\u53D6\u4E0D\u5230\u4E00\u81F4\u9884\u671F\u65F6\uFF0C\u5DEE\u5F02\u5C31\u5199\u5728\u53BB\u5E74\u540C\u671F\u3001\u5148\u524D\u53E3\u5F84\u4E0E\u62AB\u9732\u533A\u95F4\u4E0A\uFF0C\u5E76\u8BF4\u660E\u90A3\u662F\u54EA\u79CD\u57FA\u7EBF\uFF0C\u4E0D\u5192\u5145\u5E02\u573A\u5171\u8BC6\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. Without a retrievable consensus, variances are stated against prior-year, your own earlier figures and the disclosed range \u2014 labelled as which baseline, never dressed up as market consensus."}},{key:"chinaInitiatingCoverage",name:"china-initiating-coverage",label:{zh:"A \u80A1\u9996\u6B21\u8986\u76D6",en:"A-Share Initiation Report"},description:{zh:"\u6309\u5238\u5546\u7814\u7A76\u6240\u4F53\u4F8B\u642D\u4E00\u4EFD A \u80A1\u9996\u6B21\u8986\u76D6\uFF1A\u516C\u53F8\u4E0E\u884C\u4E1A\u5206\u6790\u3001\u4E09\u8868\u5EFA\u6A21\u3001\u4F30\u503C\u4E0E\u500D\u6570\u533A\u95F4\u3001\u56FE\u8868\u6E05\u5355\u4E0E\u62A5\u544A\u9AA8\u67B6\uFF0C\u4E00\u8DEF\u5199\u5230\u8BC4\u7EA7\u4E0E\u76EE\u6807\u4EF7\u90A3\u4E00\u8282\u3002",en:"Assembles an initiation report in Chinese sell-side form: company and industry analysis, three-statement modelling, valuation and multiple ranges, the exhibit list and the report skeleton, through to the rating and target-price section."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","valuation","business-analysis","filings"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u4E94\u6863\u8BC4\u7EA7\u4E0E\u76EE\u6807\u4EF7\u662F\u628A\u6750\u6599\u5199\u6210\u4E00\u4E2A\u7ED3\u8BBA\u7684\u63A8\u6F14\u7EC3\u4E60\uFF0C\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u636E\u5B83\u4E0B\u5355\uFF0C\u4E5F\u4E0D\u4F1A\u66FF\u4F60\u6267\u884C\u4EFB\u4F55\u4E00\u7B14\uFF1B\u62A5\u544A\u5199\u5728\u6700\u7EC8\u7B54\u590D\u91CC\u3001\u4E0D\u4EA7\u51FA\u6587\u4EF6\uFF0C\u9875\u6570\u53EA\u662F\u4F53\u91CF\u53C2\u8003\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. The five-tier rating and target price are a conclusion exercise: this plugin has no broker interface and places no order on them. The report is written into the final reply rather than a file, and the page counts are only a sense of scale."}},{key:"chinaMorningNote",name:"china-morning-note",label:{zh:"A \u80A1\u6668\u4F1A\u7EAA\u8981",en:"A-Share Morning Note"},description:{zh:"\u6309\u56FD\u5185\u5356\u65B9\u6668\u4F1A\u8282\u594F\uFF08\u5F00\u76D8\u524D 7:00\u20138:30\uFF09\u5199\u4E00\u4EFD\u5F53\u65E5\u7B56\u7565\uFF1A\u9694\u591C\u4E0E\u5916\u76D8\u53D8\u5316\u3001\u76D8\u524D\u60C5\u7EEA\u3001\u5F53\u65E5\u89E3\u7981\u4E0E\u62AB\u9732\u4E8B\u4EF6\u3001\u76EF\u76D8\u8981\u70B9\uFF0C\u6536\u5230 2\u20134 \u6761\u5F53\u65E5\u60F3\u6CD5\u3002",en:"Writes the pre-open desk note on Chinese sell-side timing (07:00\u201308:30): overnight and external markets, pre-market sentiment, today\u2019s unlock and disclosure events, what to watch intraday, distilled into 2\u20134 ideas for the session."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","monitoring","portfolio"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6668\u4F1A\u91CC\u7684\u65B9\u5411\uFF08Long / Short / Watch\uFF09\u3001\u6B62\u635F\u4F4D\u4E0E\u4ED3\u4F4D\u5199\u6CD5\u90FD\u662F\u63A8\u6F14\u7EC3\u4E60\uFF1A\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u636E\u5B83\u4E0B\u5355\uFF0C\u4E5F\u4E0D\u66FF\u4F60\u52A8\u4ED3\u3002\u884C\u60C5\u3001\u516C\u544A\u4E0E\u4E8B\u4EF6\u4E00\u5F8B\u8D70\u5BBF\u4E3B\u53D6\u6570\u901A\u9053\uFF0C\u6CA1\u56DE\u6765\u7684\u5B57\u6BB5\u5199\u6210\u7F3A\u53E3\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. The Long / Short / Watch calls, stop levels and sizing language in the note are a rehearsal exercise: this plugin holds no broker interface, places no order on them and moves no position for you. Quotes, filings and events come through the host retrieval channel, and anything that does not come back is written up as a gap."}},{key:"chinaThesisTracker",name:"china-thesis-tracker",label:{zh:"A \u80A1\u6301\u4ED3\u8BBA\u70B9\u8DDF\u8E2A",en:"A-Share Thesis Tracker"},description:{zh:"\u4E3A\u6301\u4ED3\u4E0E\u81EA\u9009\u9010\u53EA\u7EF4\u62A4\u6295\u8D44\u903B\u8F91\uFF1A\u8BB0\u4E0B\u8BBA\u70B9\u524D\u63D0\u3001\u8DDF\u8E2A\u5173\u952E\u6570\u636E\u70B9\u4E0E\u50AC\u5316\u5242\u3001\u6309\u65B0\u62AB\u9732\u66F4\u65B0\u6709\u6548\u6027\uFF0C\u5E76\u7ED9\u51FA\u7EF4\u6301 / \u52A0\u4ED3 / \u51CF\u4ED3 / \u79BB\u573A\u7684\u5224\u65AD\u4E0E\u76EE\u6807\u4EF7\u3001\u6B62\u635F\u4F4D\u3002",en:"Keeps a live thesis per holding and watchlist name: states the premises, tracks the key data points and catalysts, updates validity as new filings land, and argues maintain / add / reduce / exit with a target price and a stop."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","monitoring","portfolio"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u52A0\u4ED3 / \u51CF\u4ED3 / \u79BB\u573A\u4E0E\u76EE\u6807\u4EF7\u3001\u6B62\u635F\u4F4D\u5C5E\u4E8E\u63A8\u6F14\u7EC3\u4E60\uFF1A\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u636E\u5B83\u6267\u884C\u4EFB\u4F55\u4E00\u7B14\uFF0C\u4E5F\u4E0D\u638C\u63E1\u4F60\u7684\u5B9E\u9645\u6301\u4ED3\u4E0E\u6210\u672C\u2014\u2014\u90A3\u4E9B\u5F97\u7531\u4F60\u7ED9\uFF0C\u7F3A\u4E86\u5C31\u53EA\u590D\u67E5\u903B\u8F91\u4E0D\u52A8\u4F5C\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. The add / reduce / exit calls with target price and stop are a rehearsal exercise: this plugin holds no broker interface, executes nothing on them and does not know your actual holdings or cost basis \u2014 provide them, and with them missing it reviews the logic without recommending action."}},{key:"chinaIdeaGeneration",name:"china-idea-generation",label:{zh:"A \u80A1\u9009\u80A1\u4E0E\u673A\u4F1A\u751F\u6210",en:"A-Share Idea Screening"},description:{zh:"\u6309\u91CF\u5316\u7B5B\u9009\u3001\u4E3B\u9898\u7EBF\u7D22\u4E0E\u5F62\u6001\u8BC6\u522B\u4E09\u6761\u7EBF\u7CFB\u7EDF\u6027\u5730\u627E A \u80A1\u6807\u7684\uFF1A\u591A\u7A7A\u4E24\u4FA7\u5404\u51FA\u6E05\u5355\uFF0C\u9010\u6761\u5199\u50AC\u5316\u5242\u3001\u4E3A\u4EC0\u4E48\u73B0\u5728\u3001\u4FE1\u5FF5\u6863\u4E0E\u9A8C\u8BC1\u4E0B\u4E00\u6B65\u3002",en:"Surfaces A-share names along three rails \u2014 quantitative screens, thematic leads and pattern recognition \u2014 producing long and short lists with, per name, the catalyst, why now, a conviction tier and the next check."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","technicals","portfolio"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6E05\u5355\u91CC\u7684 Long / Short \u65B9\u5411\u3001\u4FE1\u5FF5\u6863\u4E0E\u4ED3\u4F4D\u5EFA\u8BAE\u5C5E\u4E8E\u63A8\u6F14\u7EC3\u4E60\uFF0C\u4E0D\u662F\u8BA2\u5355\uFF1A\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E5F\u4E0D\u636E\u5B83\u4EEC\u66FF\u4F60\u4E0B\u4EFB\u4F55\u4E00\u7B14\uFF1B\u7B5B\u9009\u6761\u4EF6\u8981\u7684\u6570\u5B57\u53D6\u4E0D\u5230\u5C31\u70B9\u540D\u7F3A\u53E3\uFF0C\u4E0D\u7528\u8BB0\u5FC6\u91CC\u7684\u6570\u8865\u9F50\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. The Long / Short directions, conviction tiers and sizing suggestions on the list are a rehearsal exercise, not orders: this plugin holds no broker interface and places nothing for you on them. Numbers a screen needs but retrieval cannot get are named as gaps rather than filled from memory."}},{key:"companyValuation",name:"company-valuation",label:{zh:"\u4F01\u4E1A\u4F30\u503C\u4E0E\u80A1\u6743\u4EF7\u503C\u6865",en:"Company Valuation"},description:{zh:"\u4E09\u6761\u8DEF\u4F30\u4F01\u4E1A\u4EF7\u503C\u4E0E\u80A1\u6743\u4EF7\u503C\uFF1A\u5148\u5265\u79BB\u4E00\u6B21\u6027\u9879\u76EE\u505A DCF\uFF0C\u518D\u7528\u540C\u4E1A\u500D\u6570\u4E0E\u5148\u4F8B\u4EA4\u6613\u4EA4\u53C9\u9A8C\u8BC1\uFF0C\u6700\u540E\u628A\u4F01\u4E1A\u4EF7\u503C\u6362\u6210\u80A1\u6743\u4EF7\u503C\u2014\u2014\u6709\u606F\u8D1F\u503A\u3001\u5C11\u6570\u80A1\u4E1C\u6743\u76CA\u3001\u53C2\u80A1\u516C\u53F8\u3001\u517B\u8001\u91D1\u7F3A\u53E3\u9010\u7B14\u5217\u51FA\u3002",en:"Triangulates enterprise and equity value: a DCF on normalized earnings, cross-checked against peer multiples and precedent deal multiples, then an explicit enterprise-to-equity bridge that itemizes debt-like charges, minority interests, associates and any pension deficit."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["valuation","cash-flow","us-stock"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u8FD9\u9897\u6309 IFRS \u4E0E\u7F8E\u80A1\u4F30\u503C\u60EF\u4F8B\u5199\uFF1A\u5148\u4F8B\u4EA4\u6613\u500D\u6570\u3001\u63A7\u5236\u6743\u6EA2\u4EF7 20\u201335% \u4E0E EV/EBITDA \u90A3\u5957\u500D\u6570\u5728 A \u80A1\u62AB\u9732\u91CC\u5E38\u5E38\u62FF\u4E0D\u5230\u540C\u53E3\u5F84\u6570\u636E\uFF0C\u53D6\u4E0D\u5230\u5C31\u70B9\u540D\u7F3A\u53E3\uFF0C\u4E0D\u7528\u8BB0\u5FC6\u91CC\u7684\u6570\u8865\u9F50\u3002\u5B83\u7ED9\u51FA\u7684\u4F30\u503C\u533A\u95F4\u4E0E"\u54EA\u51E0\u6761\u5047\u8BBE\u771F\u6B63\u51B3\u5B9A\u7B54\u6848"\u5C5E\u4E8E\u65B9\u6CD5\u63A8\u6F14\uFF0C\u4E0D\u662F\u8BA2\u5355\u2014\u2014\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E5F\u4E0D\u636E\u5B83\u4E0B\u5355\u3002',en:'Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. The method is written to IFRS and US valuation practice: precedent-transaction multiples, the 20\u201335% control premium and the EV/EBITDA comp set often have no same-basis counterpart in A-share disclosure \u2014 name the gap instead of filling it from memory. The concluded range and the "assumptions that actually move the answer" are a rehearsal exercise, not orders: this plugin holds no broker interface and places nothing for you.'}},{key:"waccComputation",name:"wacc-computation",label:{zh:"WACC \u4E0E\u8D44\u672C\u6210\u672C\u4F30\u7B97",en:"WACC Computation"},description:{zh:"\u628A\u6298\u73B0\u7387\u62C6\u5F00\u4F30\uFF1ACAPM \u5404\u8F93\u5165\uFF08\u65E0\u98CE\u9669\u5229\u7387\u3001\u03B2\u3001\u80A1\u6743\u98CE\u9669\u6EA2\u4EF7\u3001\u89C4\u6A21\u4E0E\u56FD\u5BB6\u98CE\u9669\u6EA2\u4EF7\uFF09\u3001\u53EF\u6BD4 \u03B2 \u7684\u53BB\u6760\u6746\u4E0E\u518D\u6760\u6746\u3001\u6309\u5E02\u503C\u52A0\u6743\u7684\u7A0E\u540E\u503A\u52A1\u6210\u672C\uFF0C\u6700\u540E\u4EA4\u51FA\u4E00\u5F20 \u03B2 \xD7 \u98CE\u9669\u6EA2\u4EF7\u7684\u654F\u611F\u6027\u533A\u95F4\u3002",en:"Builds the discount rate piece by piece \u2014 CAPM inputs (risk-free rate, beta, equity risk premium, size and country premia), unlevering and relevering peer betas on the target's capital structure, market-value weights on the after-tax cost of debt \u2014 and ends on a beta-by-premium sensitivity range."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["valuation","risk","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6B63\u6587\u7684\u6570\u5B57\u57FA\u51C6\u662F\u7F8E\u56FD\u7684\uFF1A\u65E0\u98CE\u9669\u5229\u7387\u53D6 10 \u5E74\u671F\u7F8E\u503A\u3001\u98CE\u9669\u6EA2\u4EF7\u7528\u7F8E\u80A1 ERP\u3001\u7A0E\u7387\u6309\u7F8E\u56FD\u8FB9\u9645\u7A0E\u7387\u3002\u7528\u4E8E A \u80A1\u8981\u6362\u6210\u4E2D\u56FD 10 \u5E74\u671F\u56FD\u503A\u3001\u5883\u5185 ERP \u4E0E 15% / 25% \u90A3\u4E00\u6863\u5B9E\u9645\u7A0E\u7387\uFF0C\u8FD9\u4E9B\u66FF\u6362\u503C\u672C\u63D2\u4EF6\u6CA1\u6709\u73B0\u6210\u6765\u6E90\u65F6\u4E00\u5F8B\u7559\u7A7A\u70B9\u540D\uFF0C\u4E0D\u51ED\u8BB0\u5FC6\u586B\u3002\u7B97\u51FA\u7684 WACC \u662F\u63A8\u6F14\u8F93\u5165\uFF0C\u4E0D\u662F\u5BF9\u4EFB\u4F55\u6807\u7684\u7684\u5224\u65AD\u3002",en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. Its numeric anchors are American: a 10-year Treasury as the risk-free rate, US equity risk premium, a US marginal tax rate. Applying it to A-shares means a China 10-year government bond yield, a local ERP and the 15% / 25% statutory rate actually paid \u2014 where this plugin has no source for the replacement value, leave it blank and say so rather than quoting memory. The computed WACC is an input to a rehearsal, not a verdict on anything."}},{key:"threeStatementModeling",name:"three-statement-modeling",label:{zh:"\u4E09\u8868\u52FE\u7A3D\u5EFA\u6A21\u4E0E\u8BCA\u65AD",en:"Three-Statement Modeling"},description:{zh:'\u6309\u56FA\u5B9A\u987A\u5E8F\u642D\u4E00\u5F20\u8054\u52A8\u7684\u4E09\u8868\u6A21\u578B\uFF1A\u9A71\u52A8\u56E0\u5B50\u96C6\u4E2D\u4E00\u5904\u3001\u6536\u5165\u6784\u5EFA\u5229\u6DA6\u8868\u3001\u56FA\u5B9A\u8D44\u4EA7\u4E0E\u8425\u8FD0\u8D44\u672C\u4E0E\u503A\u52A1\u4E09\u5F20\u9644\u8868\u63A8\u52A8\u8D44\u4EA7\u8D1F\u503A\u8868\u3001\u73B0\u91D1\u6D41\u91CF\u8868\u5B8C\u5168\u7531\u524D\u4E24\u8868\u7684\u5DEE\u989D\u5012\u63A8\uFF0C\u6BCF\u4E00\u671F\u90FD\u6446\u4E00\u884C"\u4E0D\u5E73\u5C31\u70B9\u540D"\u7684\u5E73\u8861\u68C0\u67E5\u3002',en:"Assembles a linked three-statement model in a fixed order \u2014 one place for drivers, an income statement built from revenue, PP&E / working-capital / debt schedules driving the balance sheet, a cash flow statement derived entirely from the deltas \u2014 with a balance check on every period that names the ones that do not tie."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["financial-health","cash-flow","business-analysis"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u79D1\u76EE\u8868\u6309 IFRS / US GAAP \u5217\u793A\uFF0CA \u80A1\u62A5\u8868\u53E6\u6709\u4E00\u6279\u9700\u8981\u81EA\u5DF1\u6620\u5C04\u7684\u884C\u6B21\uFF08\u5176\u4ED6\u5E94\u6536\u3001\u5408\u540C\u8D44\u4EA7\u4E0E\u5408\u540C\u8D1F\u503A\u3001\u5C11\u6570\u80A1\u4E1C\u6743\u76CA\u7B49\uFF09\u2014\u2014\u8FD9\u9897\u53EA\u8BB2\u52FE\u7A3D\u5F62\u72B6\uFF0C\u4E0D\u66FF\u4F60\u5224\u65AD\u54EA\u4E00\u7B14\u8BE5\u5F52\u54EA\u4E00\u79D1\u76EE\u3002\u5B83\u5EFA\u7684\u662F\u6A21\u578B\u9AA8\u67B6\uFF0C\u4EA7\u51FA\u7684\u9884\u6D4B\u6570\u5B57\u5C5E\u4E8E\u63A8\u6F14\uFF1B\u9700\u8981\u7684\u5386\u53F2\u62A5\u8868\u6216\u9644\u6CE8\u660E\u7EC6\u53D6\u4E0D\u5230\u5C31\u70B9\u540D\u7F3A\u53E3\u3002",en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. Its chart of accounts is IFRS / US GAAP, so A-share statements need their own mapping for lines such as other receivables, contract assets and liabilities, and minority interests \u2014 this skill teaches the linkage, not where a given item belongs. What it produces is a model skeleton whose projected numbers are a rehearsal; historical statements or note detail it cannot retrieve are named as gaps."}},{key:"creditAnalysis",name:"credit-analysis",label:{zh:"\u507F\u503A\u80FD\u529B\u4E0E\u503A\u52A1\u5BB9\u91CF\u5206\u6790",en:"Credit Analysis"},description:{zh:'\u56DE\u7B54\u4E00\u4EF6\u4E8B\uFF1A\u8FD9\u5BB6\u516C\u53F8\u80FD\u4E0D\u80FD\u7A7F\u8FC7\u5468\u671F\u628A\u94B1\u8FD8\u4E0A\u3002\u6760\u6746\u3001\u5229\u606F\u8986\u76D6\u3001DSCR\u3001\u81EA\u7531\u73B0\u91D1\u6D41\u5BF9\u503A\u52A1\u3001\u6D41\u52A8\u6027\u4E94\u7EC4\u7B97\u5F0F\u5404\u7B97\u6B63\u5E38\u53E3\u5F84\u4E0E\u538B\u529B\u53E3\u5F84\uFF0C\u518D\u770B\u62C5\u4FDD\u6298\u4EF7\u3001\u6E05\u6536\u987A\u5E8F\u3001\u5951\u7EA6\u4F59\u91CF\u4E0E"\u8C01\u66FF\u5B83\u515C\u5E95"\u3002',en:"Answers one question: can this borrower service and repay through the cycle. Five ratio families \u2014 leverage, interest coverage, DSCR, free cash flow to debt, liquidity \u2014 each on a normalized and a stressed basis, then collateral haircuts, recovery ranking, covenant headroom and who actually stands behind it."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["risk","financial-health","us-stock"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6B63\u6587\u7684"\u8212\u9002\u9608\u503C"\uFF08\u6760\u6746 3.0x\u3001DSCR 1.2x \u4E00\u7C7B\uFF09\u662F\u56FD\u9645\u516C\u53F8\u8D37\u6B3E\u7684\u60EF\u4F8B\u503C\uFF0C\u4E0D\u662F\u4EFB\u4F55\u5E02\u573A\u7684\u76D1\u7BA1\u7EBF\uFF1B\u5883\u5185\u516C\u53F8\u503A\u3001\u53EF\u8F6C\u503A\u4E0E\u94F6\u884C\u6388\u4FE1\u7684\u5951\u7EA6\u6761\u6B3E\u548C\u5B9A\u4E49\u5404\u4E0D\u76F8\u540C\uFF0C\u8981\u6309\u52DF\u96C6\u8BF4\u660E\u4E66\u4E0E\u5E74\u62A5\u539F\u6587\u6838\u5BF9\u3002\u5B83\u5199\u51FA\u7684 approve / decline / \u7ED3\u6784\u5EFA\u8BAE\u5C5E\u4FE1\u7528\u4FA7\u7684\u65B9\u6CD5\u63A8\u6F14\uFF0C\u65E2\u4E0D\u662F\u6388\u4FE1\u610F\u89C1\u4E5F\u4E0D\u662F\u8BA2\u5355\u2014\u2014\u672C\u63D2\u4EF6\u4E0D\u4EE3\u4F60\u4E0B\u5355\u3002',en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. Its comfort thresholds (3.0x leverage, 1.2x DSCR and the rest) are international corporate-lending conventions, not any market's regulatory line; domestic bond, convertible and bank-facility covenants differ in both level and definition, so check them against the offering circular and the annual report as filed. The approve / decline / restructure it writes is a credit-side rehearsal, neither a credit opinion nor an order \u2014 this plugin places nothing for you."}},{key:"eclComputation",name:"ecl-computation",label:{zh:"\u9884\u671F\u4FE1\u7528\u635F\u5931\u4E0E\u4E09\u9636\u6BB5\u51CF\u503C",en:"Expected Credit Loss"},description:{zh:'\u6309 IFRS 9 \u7684\u4E09\u9636\u6BB5\u601D\u8DEF\u628A\u51CF\u503C\u62C6\u5F00\uFF1A\u9636\u6BB5\u5212\u5206\u4E0E\u8FC1\u5F99\u5224\u65AD\u3001PD / LGD / EAD \u4E09\u53C2\u6570\u3001\u5E94\u6536\u8D26\u9F84\u7684\u51C6\u5907\u77E9\u9635\u7B80\u5316\u6CD5\u3001\u5B8F\u89C2\u60C5\u666F\u52A0\u6743\u4E0E\u8986\u76D6\u7387\uFF0C\u518D\u95EE\u4E00\u53E5"\u4E0B\u884C\u60C5\u666F\u6982\u7387\u63D0\u9AD8 10% \u4F1A\u600E\u6837"\u3002',en:"Takes the IFRS 9 impairment logic apart: stage assignment and migration, the PD / LGD / EAD parameters, the simplified provision matrix over aging buckets, macro scenario weighting and coverage ratios, then one more question \u2014 what changes if the downside scenario gains ten points of probability."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["risk","financial-health","filings"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u4E2D\u56FD\u300A\u4F01\u4E1A\u4F1A\u8BA1\u51C6\u5219\u7B2C 22 \u53F7\u300B\u5DF2\u4E0E IFRS 9 \u7684\u4E09\u9636\u6BB5\u6846\u67B6\u5BF9\u9F50\uFF0C\u4F46\u62AB\u9732\u7C92\u5EA6\u4E0D\u540C\uFF1A\u4E0A\u5E02\u516C\u53F8\u5E74\u62A5\u7ED9\u51FA\u9636\u6BB5\u4F59\u989D\u4E0E\u51CF\u503C\u51C6\u5907\uFF0C\u4E0D\u7ED9\u51FA PD / LGD \u53C2\u6570\u3002\u6240\u4EE5\u8FD9\u9897\u66F4\u9002\u5408\u7528\u6765\u5224\u65AD\u522B\u4EBA\u62AB\u9732\u7684\u51CF\u503C\u5408\u4E0D\u5408\u7406\uFF0C\u800C\u4E0D\u662F\u81EA\u5DF1\u7B97\u51FA\u4E00\u4E2A\u51C6\u5907\u6570\uFF1B\u9700\u8981\u800C\u53D6\u4E0D\u5230\u7684\u660E\u7EC6\u4E00\u5F8B\u70B9\u540D\u7F3A\u53E3\uFF0C\u4E0D\u7528\u5408\u8BA1\u5012\u63A8\u3002",en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. China's Accounting Standard for Business Enterprises No. 22 already follows the IFRS 9 three-stage framework, but disclosure granularity differs: listed issuers give stage balances and impairment charges, not PD / LGD parameters. Use this skill to judge whether a disclosed provision is defensible rather than to compute your own; detail that retrieval cannot get is named as a gap, never back-derived from a total."}},{key:"insuranceReserving",name:"insurance-reserving",label:{zh:"\u4FDD\u9669\u51C6\u5907\u91D1\u4E0E\u7EFC\u5408\u6210\u672C\u7387",en:"Insurance Reserving"},description:{zh:'\u4E00\u6761\u51C6\u5907\u91D1\u94FE\u6761\u8D70\u5230\u5E95\uFF1A\u8D54\u6B3E\u53D1\u5C55\u4E09\u89D2\u3001\u5E74\u9F84\u5230\u5E74\u9F84\u56E0\u5B50\u3001\u94FE\u5F0F\u6CD5\u4E0E Bornhuetter-Ferguson\u3001IBNR\uFF0C\u518D\u843D\u5230\u7EFC\u5408\u6210\u672C\u7387\u2014\u2014\u628A"\u672A\u51B3\u8D54\u6B3E\u4F30\u5F97\u51C6\u4E0D\u51C6"\u548C"\u8FD9\u5355\u627F\u4FDD\u4E1A\u52A1\u5230\u5E95\u8D5A\u4E0D\u8D5A\u94B1"\u5206\u6210\u4E24\u4EF6\u4E8B\u3002',en:'Runs the reserve chain end to end: loss development triangles, age-to-age factors, chain ladder and Bornhuetter-Ferguson, IBNR, then the combined ratio \u2014 keeping "are unpaid claims estimated well" and "does this book actually earn" as two separate questions.'},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["risk","financial-health"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u7CBE\u7B97\u5047\u8BBE\u3001\u6298\u73B0\u4E0E\u8D1F\u503A\u8BA1\u91CF\u6309 IFRS 17 \u4E0E\u4E00\u822C\u7CBE\u7B97\u60EF\u4F8B\u5199\uFF0C\u5883\u5185\u4E0A\u5E02\u9669\u4F01\u7684\u6CD5\u5B9A\u51C6\u5907\u91D1\u3001\u6298\u73B0\u7387\u53C2\u8003\u66F2\u7EBF\u4E0E\u4FDD\u6237\u50A8\u91D1\u53E3\u5F84\u53E6\u6709\u89C4\u5B9A\u3002\u53D1\u5C55\u4E09\u89D2\u8981\u6309\u9669\u79CD\u548C\u5E74\u5EA6\u62C6\u5F00\u7684\u8D54\u6B3E\u660E\u7EC6\uFF0C\u8FD9\u7C7B\u7C92\u5EA6\u5728\u516C\u5F00\u62AB\u9732\u91CC\u5E38\u5E38\u53D6\u4E0D\u5230\u2014\u2014\u70B9\u540D\u7F3A\u53E3\uFF0C\u4E0D\u8981\u62FF\u5408\u8BA1\u6570\u644A\u3002",en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. Its actuarial assumptions, discounting and measurement follow IFRS 17 and general actuarial practice; statutory reserves, the reference yield curve and policyholder-deposit treatment for listed Chinese insurers follow separate rules. A development triangle needs claims detail split by line and accident year \u2014 granularity public disclosure often does not give, so name the gap instead of spreading a total across it."}},{key:"bankingCompliance",name:"banking-compliance",label:{zh:"\u94F6\u884C\u8D44\u672C\u4E0E\u6D41\u52A8\u6027\u6307\u6807",en:"Bank Capital Ratios"},description:{zh:'\u94F6\u884C\u80A1\u6700\u786C\u7684\u51E0\u5F20\u8868\uFF1ACET1 / Tier 1 / \u603B\u8D44\u672C\u5145\u8DB3\u7387\u3001\u98CE\u9669\u52A0\u6743\u8D44\u4EA7\u53CA\u5176\u6743\u91CD\u7ED3\u6784\u3001\u6760\u6746\u7387\u4E0E LCR / NSFR\uFF0C\u52A0\u4E00\u5957"\u8FDD\u7EA6\u6253\u8FDB\u6765\u540E\u8D44\u672C\u591F\u4E0D\u591F"\u7684\u538B\u529B\u5F62\u72B6\u3002',en:"The hardest numbers on a bank name: CET1 / Tier 1 / total capital adequacy, risk-weighted assets and their weight structure, the leverage ratio, LCR and NSFR, plus a pass that asks whether capital still holds once defaults arrive."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["risk","financial-health","macro"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u9608\u503C\u6309\u5DF4\u585E\u5C14\u539F\u503C\u5199\uFF084.5% / 6% / 8%\uFF09\uFF1A\u4E2D\u56FD\u5927\u9646\u9002\u7528\u300A\u5546\u4E1A\u94F6\u884C\u8D44\u672C\u7BA1\u7406\u529E\u6CD5\u300B\uFF0C\u6838\u5FC3\u4E00\u7EA7\u6700\u4F4E 5% \u4E4B\u4E0A\u8FD8\u6709\u50A8\u5907\u8D44\u672C\u4E0E\u7CFB\u7EDF\u91CD\u8981\u6027\u9644\u52A0\uFF0C\u8D44\u672C\u5B9A\u4E49\u4E0E\u98CE\u9669\u6743\u91CD\u4E5F\u53E6\u6709\u8868\u2014\u2014\u8FD9\u9897\u7684\u6BD4\u7387\u5F62\u72B6\u53EF\u4EE5\u7528\uFF0C\u6570\u5B57\u53EA\u80FD\u5F53\u5883\u5916\u53C2\u7167\uFF0C\u4E0D\u80FD\u5F53\u5883\u5185\u5408\u89C4\u5224\u65AD\u3002\u98CE\u9669\u6743\u91CD\u660E\u7EC6\u4E0E LCR \u5206\u9879\u5728 A \u80A1\u5E74\u62A5\u91CC\u7684\u62AB\u9732\u7C92\u5EA6\u4E0D\u4E00\uFF0C\u53D6\u4E0D\u5230\u5C31\u70B9\u540D\u7F3A\u53E3\u3002",en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. Its thresholds are Basel originals (4.5% / 6% / 8%): mainland China applies the Capital Rules for Commercial Banks, where the 5% minimum CET1 sits on top of a conservation buffer and system-importance add-ons, and capital definitions and risk-weight tables differ again. Use the ratio shapes, treat the numbers as an overseas reference, and never as a domestic compliance judgement; risk-weight and LCR detail varies by filing, so missing lines are named as gaps."}},{key:"forensicAccounting",name:"forensic-accounting",label:{zh:"\u8D26\u52A1\u5F02\u5E38\u4E0E\u6570\u5B57\u5206\u5E03\u6392\u67E5",en:"Forensic Ledger Screening"},description:{zh:"\u62FF\u8D26\u548C\u6570\u5B57\u505A\u53D6\u8BC1\u5F0F\u6392\u67E5\uFF1A\u9996\u4F4D\u6570\u5B57\u7684 Benford \u5206\u5E03\u68C0\u9A8C\u3001\u6574\u6570\u4E0E\u91CD\u590D\u91D1\u989D\u3001\u8D44\u91D1\u5FAA\u73AF\u8DEF\u5F84\u3001\u4F9B\u5E94\u5546\u4E0E\u5173\u8054\u65B9\u91CD\u5408\uFF0C\u5E76\u628A\u7ED3\u8BBA\u5199\u6210\u4E00\u6761\u7ECF\u5F97\u8D77\u590D\u6838\u4E0E\u8D28\u8BE2\u7684\u8BC1\u636E\u94FE\u3002",en:"Screens a ledger forensically: Benford first-digit tests, round-number and repeated-amount patterns, round-trip flows, vendor and related-party overlaps \u2014 written up as an evidence chain that can survive review and cross-examination."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["verification","risk","financial-health"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u9664\u9996\u4F4D\u6570\u5B57\u68C0\u9A8C\u53EF\u4EE5\u53EA\u5BF9\u516C\u5F00\u62A5\u8868\u505A\u4EE5\u5916\uFF0C\u8FD9\u9897\u7684\u4E3B\u8981\u8DEF\u5F84\uFF08\u94F6\u884C\u6D41\u6C34\u3001\u5458\u5DE5\u4E0E\u4F9B\u5E94\u5546\u4FE1\u606F\u6BD4\u5BF9\u3001\u4F01\u4E1A\u5185\u90E8\u7CFB\u7EDF\uFF09\u9700\u8981\u4F7F\u7528\u8005\u81EA\u5DF1\u63D0\u4F9B\u8D26\u52A1\u660E\u7EC6\uFF1A\u672C\u63D2\u4EF6\u4E0D\u8FDE\u4F01\u4E1A\u5185\u90E8\u7CFB\u7EDF\uFF0C\u4E5F\u6CA1\u6709\u90A3\u4E9B\u6570\u636E\u6E90\u3002\u5B83\u7ED9\u51FA\u7684"\u7591\u4F3C"\u6E05\u5355\u662F\u6392\u67E5\u7EBF\u7D22\uFF0C\u4E0D\u662F\u821E\u5F0A\u8BA4\u5B9A\uFF0C\u4E5F\u4E0D\u6784\u6210\u5BA1\u8BA1\u6216\u6CD5\u5F8B\u610F\u89C1\uFF1B\u6837\u672C\u91CF\u4E0D\u8DB3\u65F6\u9996\u4F4D\u6570\u5B57\u68C0\u9A8C\u672C\u8EAB\u4E0D\u6210\u7ACB\uFF0C\u6B63\u6587\u7684\u95E8\u69DB\u8981\u7167\u505A\u3002',en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. Only the first-digit test can run on published statements; the rest of this skill's paths \u2014 bank statements, employee-versus-vendor matching, internal ERP systems \u2014 require the user to supply the accounting detail, since this plugin connects to no corporate system and holds no such source. What it returns is a list of leads, not a fraud finding, and neither an audit nor a legal opinion; a Benford test on too small a sample is void, and the sample thresholds in the text stand."}},{key:"crossMarketListingChoice",name:"cross-market-listing-choice",label:{zh:"\u8DE8\u5E02\u573A\u9009\u7EBF\uFF08A/H \xB7 ADR/HK\uFF09",en:"Cross-Market Listing Choice"},description:{zh:"\u540C\u4E00\u5BB6\u516C\u53F8\u5728\u591A\u4E2A\u5E02\u573A\u5404\u6709\u4E0A\u5E02\u7EBF\u65F6\uFF0C\u9009\u4E00\u6761\u6765\u6301\u6709\u3001\u52A0\u4ED3\u6216\u89C2\u5BDF\uFF1AA/H \u6EA2\u4EF7\u4E0E\u5E01\u79CD\u80A1\u606F\u7A0E\u3001\u6D41\u52A8\u6027\u4E0E\u901A\u9053\u3001ADR \u6362\u7B97\u6BD4\u4F8B\u4E0E\u62AB\u9732\u6587\u4EF6\u8DEF\u5F84\u3002\u516C\u53F8\u5C42\u9762\u53EA\u7814\u7A76\u4E00\u6B21\u2014\u2014A \u4E0E H \u662F\u540C\u4E00\u5BB6\u516C\u53F8\u7684\u4E24\u6761\u7EBF\uFF0C\u53D8\u7684\u53EA\u6709\u4EF7\u5DEE\u3001\u7A0E\u3001\u5E01\u79CD\u548C\u4F60\u80FD\u4E0D\u80FD\u4E70\u5230\u3002",en:"Picks which listing of a single issuer to hold, add, or watch: A/H premium and currency/dividend withholding, liquidity and channel access, ADR conversion ratios and filing paths. The company is researched once \u2014 A and H are two lines of the same business, so what changes is spread, tax, currency and whether you can reach it."},owner:"Howard-Jerry",repository:"quant-agent-skills",status:"watchlist",lastCommit:"2026-08-05",reviewBy:"2026-11-15",tags:["a-share","us-stock","portfolio","risk"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1A\u4E0A\u6E38\u4E94\u6B21\u63D0\u4EA4\u5168\u843D\u5728 2026-08-05 \u540C\u4E00\u5929\uFF0C\u4E4B\u540E\u65E0\u7EF4\u62A4\uFF0C\u4F5C\u8005\u58F0\u660E\u6B63\u6587\u6765\u81EA\u5176\u79C1\u6709\u91CF\u5316\u7CFB\u7EDF\uFF08\u6570\u636E\u5C42\u5C1A\u672A\u5F00\u6E90\uFF09\u3002\u8FD9\u9897\u53EA\u505A\u9009\u7EBF\uFF0C\u4E0D\u91CD\u505A\u516C\u53F8\u7814\u7A76\u2014\u2014\u516C\u53F8\u672C\u8EAB\u7684\u7ED3\u8BBA\u4EA4\u7ED9\u65E2\u6709\u7814\u7A76\u8DEF\u5F84\u3002\u672C\u63D2\u4EF6\u6CA1\u6709\u73B0\u6210\u7684 A/H \u6EA2\u4EF7\u6216 ADR \u5E73\u4EF7\u6761\u76EE\uFF1A\u6EA2\u4EF7\u5FC5\u987B\u7531\u4E24\u6761\u7EBF\u540C\u4E00 as-of \u4EA4\u6613\u65E5\u7684\u6536\u76D8\u4EF7\u52A0\u4E0A\u5F53\u65E5\u6C47\u7387\u73B0\u7B97\uFF0C\u8FD9\u4E09\u9879\u4EFB\u4E00\u9879\u53D6\u4E0D\u5230\u5C31\u4E0D\u7ED9\u6EA2\u4EF7\u6570\u5B57\uFF0C\u53EA\u62A5\u544A\u7F3A\u54EA\u4E00\u9879\uFF1B\u6C47\u7387\u6761\u76EE\u6309\u6B21\u6D88\u8017\u4E0A\u6E38\u79EF\u5206\uFF0C\u51ED\u636E\u7F3A\u5931\u3001\u9650\u6D41\u4E0E\u540E\u7AEF\u9519\u8BEF\u4E00\u5F8B\u4E0D\u91CD\u8BD5\uFF0C\u4E5F\u4E0D\u8BB8\u7528\u8BB0\u5FC6\u91CC\u7684\u8FD1\u4F3C\u6C47\u7387\u8865\u6570\u3002\u672C\u63D2\u4EF6\u4E0D\u6301\u6709\u4F7F\u7528\u8005\u7684\u6210\u4EA4\u8D26\u672C\uFF0C\u6301\u4ED3\u4E0E\u6210\u672C\u4EF7\u53EA\u80FD\u6309\u4F60\u5728\u5BF9\u8BDD\u91CC\u5F53\u573A\u7ED9\u51FA\u7684\u4FE1\u606F\u56DE\u7B54\uFF0C\u56DE\u7B54\u5B8C\u5C31\u653E\u4E0B\uFF0C\u4E0D\u6301\u4E45\u5316\u3002\u4EF7\u5DEE\u662F\u5F53\u5929\u7684\u4E8B\u5B9E\uFF0C"\u6298\u4EF7\u7684\u90A3\u6761\u7EBF\u4F1A\u6DA8\u56DE\u6765"\u4E0D\u662F\u8FD9\u9897\u7684\u7ED3\u8BBA\uFF0C\u5386\u53F2\u4EF7\u5DEE\u533A\u95F4\u53EA\u662F\u53C2\u7167\u3001\u4E0D\u662F\u76EE\u6807\u3002\u672C\u63D2\u4EF6\u4E0D\u63D0\u4F9B\u4EA4\u6613\u6267\u884C\u754C\u9762\uFF0C\u4E0D\u6784\u6210\u6295\u8D44\u5EFA\u8BAE\uFF0C\u52A8\u54EA\u6761\u7EBF\u4E0E\u52A8\u591A\u5C11\u7531\u4F7F\u7528\u8005\u81EA\u5DF1\u51B3\u5B9A\u5E76\u81EA\u5DF1\u6267\u884C\u3002',en:`Cold-start experiment: all five upstream commits landed on 2026-08-05 with nothing since, and the author states the text comes from a private quant system whose data layer is not yet open. This skill only picks a listing \u2014 it never re-runs the company research, which stays with the existing paths. This plugin has no ready-made A/H premium or ADR parity entry: the premium must be computed from both lines' closes on the same as-of trading day plus that day's FX, and if any of the three is missing you report which one instead of publishing a premium. FX entries consume upstream quota; missing credentials, throttling and backend errors are never retried, and an approximate rate from memory is not a substitute. This plugin holds no user trade ledger \u2014 position and cost basis can only be answered from what the user states in the conversation, and nothing is persisted. A spread is a same-day fact; "the cheaper line will converge" is not a conclusion of this skill, and a historical range is a reference, not a target. No trading interface is provided and nothing here is investment advice: which line to take, and how much, stays with the user.`}}]),qe=Object.freeze({market:Object.freeze({zh:"\u5E02\u573A\u53E3\u5F84",en:"Market"}),capability:Object.freeze({zh:"\u5206\u6790\u65B9\u6CD5",en:"Method"}),topic:Object.freeze({zh:"\u573A\u666F\u4E3B\u9898",en:"Topic"})}),W=Object.freeze({"a-share":{zh:"A \u80A1",en:"A-share",axis:"market"},"business-analysis":{zh:"\u4E1A\u52A1\u5206\u6790",en:"Business analysis",axis:"capability"},"capital-allocation":{zh:"\u8D44\u672C\u914D\u7F6E",en:"Capital allocation",axis:"capability"},"cash-flow":{zh:"\u73B0\u91D1\u6D41",en:"Cash flow",axis:"capability"},competition:{zh:"\u7ADE\u4E89\u683C\u5C40",en:"Competition",axis:"topic"},earnings:{zh:"\u4E1A\u7EE9\u4E0E\u7535\u8BDD\u4F1A",en:"Earnings",axis:"capability"},education:{zh:"\u6559\u5B66",en:"Education",axis:"topic"},filings:{zh:"\u62AB\u9732\u6587\u4EF6",en:"Filings",axis:"capability"},"financial-health":{zh:"\u8D22\u52A1\u5065\u5EB7",en:"Financial health",axis:"capability"},instruments:{zh:"\u671F\u6743\u4E0E\u57FA\u91D1",en:"Options & funds",axis:"topic"},macro:{zh:"\u5B8F\u89C2\u4E0E\u884C\u4E1A",en:"Macro & industry",axis:"topic"},monitoring:{zh:"\u76D1\u63A7",en:"Monitoring",axis:"topic"},orders:{zh:"\u8BA2\u5355",en:"Orders",axis:"topic"},perspective:{zh:"\u5206\u6790\u89C6\u89D2",en:"Perspective",axis:"topic"},"peter-lynch":{zh:"\u5F7C\u5F97\xB7\u6797\u5947",en:"Peter Lynch",axis:"topic"},portfolio:{zh:"\u7EC4\u5408\u4E0E\u4ED3\u4F4D",en:"Portfolio",axis:"topic"},risk:{zh:"\u98CE\u9669",en:"Risk",axis:"topic"},strategy:{zh:"\u6218\u7565",en:"Strategy",axis:"topic"},tax:{zh:"\u7A0E\u52A1",en:"Tax",axis:"topic"},technicals:{zh:"\u6280\u672F\u9762",en:"Technicals",axis:"topic"},"trade-discipline":{zh:"\u4EA4\u6613\u7EAA\u5F8B",en:"Trade discipline",axis:"topic"},"us-stock":{zh:"\u7F8E\u80A1",en:"US equity",axis:"market"},valuation:{zh:"\u4F30\u503C",en:"Valuation",axis:"capability"},verification:{zh:"\u8BC1\u636E\u6838\u9A8C",en:"Verification",axis:"capability"}}),Ne=Object.freeze({zh:Object.freeze({all:"\u5168\u90E8",...Object.fromEntries(Object.entries(W).map(([t,e])=>[t,e.zh]))}),en:Object.freeze({all:"All",...Object.fromEntries(Object.entries(W).map(([t,e])=>[t,e.en]))})})});var ne={};M(ne,{SELECTED_SKILL_METHODS:()=>Me,SELECTED_SKILL_PRESETS:()=>De,SELECTED_SKILL_PRESET_ORDER:()=>H,SELECTED_SKILL_REQUIREMENTS:()=>Be,SELECTED_SKILL_ROLES:()=>Ue,SELECTED_SKILL_ROLE_ALIASES:()=>L,SELECTED_SKILL_ROUTING:()=>O,SELECTED_SKILL_STAGES:()=>Pe,selectedSkillNamesForRole:()=>Ke,selectedSkillRoleKey:()=>se,selectedSkillRouting:()=>We,selectedSkillUseWhen:()=>He});function se(t){return L[t]??t}function We(t){return O[t]}function Ke(t,e){let a=se(t);return e.filter(s=>O[s.name]?.roles.includes(a)).map(s=>s.name)}function He(t,e="zh"){let a=O[t];return a?.useWhen[e]??a?.useWhen.zh??""}var Ue,L,De,H,Pe,Me,Be,O,V=P(()=>{"use strict";Ue=Object.freeze({main:Object.freeze({zh:"\u4E3B Agent",en:"Main Agent"}),data_junior:Object.freeze({zh:"\u6570\u636E\u5206\u6790",en:"Data analysis"}),web_retriever:Object.freeze({zh:"\u68C0\u7D22\u4E0E\u53D6\u8BC1",en:"Retrieval & evidence"})}),L=Object.freeze({data_analyst:"data_junior"}),De=Object.freeze({main:Object.freeze({zh:"\u81EA\u52A8\u6A21\u5F0F",en:"Auto mode"}),data_collector:Object.freeze({zh:"\u884C\u60C5\u4E13\u5BB6",en:"Market specialist"}),web_retriever:Object.freeze({zh:"\u8D44\u8BAF\u4E13\u5458",en:"News specialist"}),data_junior:Object.freeze({zh:"\u5206\u6790\u5E08",en:"Analyst"}),visualization_specialist:Object.freeze({zh:"\u7ED8\u56FE\u4E13\u5458",en:"Chart specialist"})}),H=Object.freeze(["main","data_collector","web_retriever","data_junior","visualization_specialist"]),Pe=Object.freeze({research:Object.freeze({zh:"\u7814\u7A76",en:"Research"}),"pre-event":Object.freeze({zh:"\u4E8B\u4EF6\u524D",en:"Pre-event"}),"post-event":Object.freeze({zh:"\u4E8B\u4EF6\u540E",en:"Post-event"}),monitoring:Object.freeze({zh:"\u6301\u7EED\u76D1\u63A7",en:"Monitoring"}),execution:Object.freeze({zh:"\u6267\u884C",en:"Execution"}),review:Object.freeze({zh:"\u590D\u76D8 / \u6838\u9A8C",en:"Review"}),learning:Object.freeze({zh:"\u6559\u5B66",en:"Learning"})}),Me=Object.freeze({valuation:Object.freeze({zh:"\u4F30\u503C",en:"Valuation"}),"financial-health":Object.freeze({zh:"\u8D22\u52A1\u5065\u5EB7",en:"Financial health"}),accounting:Object.freeze({zh:"\u4F1A\u8BA1\u4E0E\u62A5\u8868",en:"Accounting"}),risk:Object.freeze({zh:"\u98CE\u9669",en:"Risk"}),technical:Object.freeze({zh:"\u6280\u672F\u9762",en:"Technicals"}),portfolio:Object.freeze({zh:"\u7EC4\u5408",en:"Portfolio"}),tax:Object.freeze({zh:"\u7A0E\u52A1",en:"Tax"}),evidence:Object.freeze({zh:"\u8BC1\u636E",en:"Evidence"}),earnings:Object.freeze({zh:"\u4E1A\u7EE9",en:"Earnings"}),macro:Object.freeze({zh:"\u5B8F\u89C2\u4E0E\u884C\u4E1A",en:"Macro & industry"}),ownership:Object.freeze({zh:"\u6301\u4ED3\u4E0E\u5185\u90E8\u4EBA",en:"Ownership"}),screening:Object.freeze({zh:"\u7B5B\u9009",en:"Screening"}),teaching:Object.freeze({zh:"\u6559\u5B66",en:"Teaching"}),trade:Object.freeze({zh:"\u4EA4\u6613\u7EAA\u5F8B",en:"Trade discipline"})}),Be=Object.freeze({financial_statements:Object.freeze({zh:"\u8D22\u52A1\u62A5\u8868",en:"Financial statements"}),price_history:Object.freeze({zh:"\u884C\u60C5\u5E8F\u5217",en:"Price history"}),filings:Object.freeze({zh:"\u62AB\u9732\u6587\u4EF6",en:"Filings"}),portfolio:Object.freeze({zh:"\u6301\u4ED3\u6570\u636E",en:"Portfolio data"}),options:Object.freeze({zh:"\u671F\u6743\u94FE",en:"Options chain"}),macro:Object.freeze({zh:"\u5B8F\u89C2\u5E8F\u5217",en:"Macro series"}),fx:Object.freeze({zh:"\u6C47\u7387",en:"FX rates"}),peer_data:Object.freeze({zh:"\u540C\u4E1A\u6570\u636E",en:"Peer data"}),user_input:Object.freeze({zh:"\u7528\u6237\u63D0\u4F9B\u7684\u4FE1\u606F",en:"User-provided input"}),transcript:Object.freeze({zh:"\u7535\u8BDD\u4F1A\u7EAA\u8981",en:"Transcript"}),industry_data:Object.freeze({zh:"\u884C\u4E1A\u6570\u636E",en:"Industry data"})}),O=Object.freeze({"buffett-investment-framework":Object.freeze({market:Object.freeze(["global"]),stage:"research",methods:Object.freeze(["valuation","financial-health","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u6309\u5546\u4E1A\u8D28\u91CF\u3001\u8D44\u672C\u914D\u7F6E\u3001\u4F30\u503C\u4E0E\u98CE\u9669\u642D\u5EFA\u57FA\u672C\u9762\u7814\u7A76\u6846\u67B6\uFF0C\u6216\u660E\u786E\u63D0\u5230\u5DF4\u83F2\u7279\u5F0F\u5206\u6790\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5DF4\u83F2\u7279\u3001\u5546\u4E1A\u8D28\u91CF\u3001\u8D44\u672C\u914D\u7F6E\u3001\u62A4\u57CE\u6CB3\u3002",en:"Use when the task matches this method: evidence-led business quality, capital allocation, valuation, and risk analysis. Primarily US-market oriented. Triggers on Buffett Investment Framework, Business analysis, Cash flow, Perspective, Risk, Valuation."}),requires:Object.freeze(["financial_statements","price_history"]),overlaps:Object.freeze(["stock-valuation","company-valuation","china-dcf","china-comps-analysis","valuation-investment-strategy","stock-eval","peter-lynch-skill","china-initiating-coverage","stock-screener"]),canonicalFor:Object.freeze([])}),"financial-health":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["financial-health","accounting"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u68C0\u67E5\u76C8\u5229\u8D28\u91CF\u3001\u73B0\u91D1\u8F6C\u6362\u3001\u8425\u8FD0\u8D44\u672C\u3001\u6760\u6746\u4E0E\u8D44\u4EA7\u8D1F\u503A\u8868\u98CE\u9669\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8D22\u52A1\u5065\u5EB7\u3001\u73B0\u91D1\u6D41\u3001\u5E94\u6536\u8D26\u6B3E\u3001\u51CF\u503C\u3001\u8D1F\u503A\u3002\u53EA\u770B\u4E00\u4E2A\u5B63\u5EA6\u589E\u901F\u65F6\u4E0D\u8981\u7528\u3002",en:'Use when the user asks to check earnings quality, cash conversion, working capital, leverage or balance-sheet risk. Triggers on "financial health", "cash flow", "receivables", "impairment", "leverage". Not for a single quarter growth read.'}),requires:Object.freeze(["financial_statements"]),overlaps:Object.freeze(["financial-report-analyst","china-break-trace","forensic-accounting","result-validator","fact-check","evidence-gap-check"]),canonicalFor:Object.freeze([])}),"risk-warning-catalysts":Object.freeze({market:Object.freeze(["a-share"]),stage:"monitoring",methods:Object.freeze(["risk","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u628A\u7814\u7A76\u7ED3\u8BBA\u8F6C\u6210\u5E26\u6765\u6E90\u3001\u9608\u503C\u548C\u590D\u67E5\u9891\u7387\u7684\u98CE\u9669\u4E0E\u50AC\u5316\u5242\u76D1\u63A7\u9879\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u98CE\u9669\u76D1\u63A7\u3001\u50AC\u5316\u5242\u3001\u9608\u503C\u3001\u590D\u67E5\u9891\u7387\u3002",en:"Use when the task matches this method: turns research into source-backed risk and catalyst monitoring with thresholds and review cadence. Triggers on Risk Warning Catalysts, A-share, Monitoring, Risk."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze(["catalyst-calendar","catalyst-map","china-catalyst-calendar","thesis-tracker","china-thesis-tracker"]),canonicalFor:Object.freeze([])}),"valuation-investment-strategy":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["valuation","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u5728\u4E00\u6B21\u4E8B\u5B9E\u6838\u67E5\u4E4B\u540E\u642D\u5EFA\u5E26\u5047\u8BBE\u3001\u60C5\u666F\u4E0E\u5931\u6548\u6761\u4EF6\u7684\u4F30\u503C\u6846\u67B6\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4F30\u503C\u6846\u67B6\u3001\u60C5\u666F\u5206\u6790\u3001\u5931\u6548\u6761\u4EF6\u3002",en:"Use when the task matches this method: builds valuation scenarios with assumptions and invalidation conditions after the factual base is ready. Triggers on Valuation Investment Strategy, A-share, Risk, Valuation."}),requires:Object.freeze(["financial_statements","price_history","peer_data"]),overlaps:Object.freeze(["stock-valuation","company-valuation","china-dcf","china-comps-analysis","stock-eval","buffett-investment-framework","peter-lynch-skill"]),canonicalFor:Object.freeze([])}),"strategy-business-transition":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["evidence","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u68C0\u9A8C\u516C\u53F8\u6218\u7565\u53D9\u4E8B\u3001\u4E1A\u52A1\u8FC1\u79FB\u3001\u8D44\u672C\u914D\u7F6E\u4E0E\u8F6C\u578B\u91CC\u7A0B\u7891\u662F\u5426\u81EA\u6D3D\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u6218\u7565\u3001\u4E1A\u52A1\u8F6C\u578B\u3001\u8D44\u672C\u914D\u7F6E\u3001\u91CC\u7A0B\u7891\u3002",en:"Use when the task matches this method: tests strategy narratives, business migration, capital allocation, and transition milestones. Triggers on Strategy Business Transition, A-share, Strategy, Risk."}),requires:Object.freeze(["filings","industry_data"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"industry-competition-moat":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["evidence","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5224\u65AD\u884C\u4E1A\u7ED3\u6784\u3001\u7ADE\u4E89\u683C\u5C40\u3001\u4F9B\u9700\u4E0E\u516C\u53F8\u5DEE\u5F02\u5316\u662F\u5426\u53EF\u6301\u7EED\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u884C\u4E1A\u683C\u5C40\u3001\u7ADE\u4E89\u3001\u62A4\u57CE\u6CB3\u3001\u4F9B\u9700\u3002",en:"Use when the task matches this method: analyzes industry structure, competition, supply-demand, and sustainable differentiation. Triggers on Industry Competition Moat, A-share, Business analysis, Competition, Risk."}),requires:Object.freeze(["industry_data","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"business-decomposition-order-quality":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["financial-health","accounting"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u62C6\u89E3\u4EA7\u54C1\u3001\u5BA2\u6237\u3001\u9879\u76EE\u4E0E\u8BA2\u5355\uFF0C\u68C0\u67E5\u589E\u957F\u80FD\u5426\u8F6C\u6210\u6536\u5165\u4E0E\u73B0\u91D1\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4E1A\u52A1\u62C6\u89E3\u3001\u8BA2\u5355\u8D28\u91CF\u3001\u6536\u5165\u8F6C\u5316\u3001\u73B0\u91D1\u6D41\u3002",en:"Use when the task matches this method: breaks down products, customers, projects, and orders to test conversion into revenue and cash. Triggers on Business Decomposition Order Quality, A-share, Business analysis, Cash flow, Orders, Risk."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"10k-digest":Object.freeze({market:Object.freeze(["us-stock"]),stage:"post-event",methods:Object.freeze(["earnings","evidence"]),roles:Object.freeze(["web_retriever","main"]),primaryRole:"web_retriever",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u9010\u8282\u7CBE\u8BFB\u4E00\u4EFD\u7F8E\u80A1 10-K\uFF0C\u4EA7\u51FA\u6458\u8981\u3001\u5206\u8282\u8981\u70B9\u3001\u5173\u952E\u6307\u6807\u4E0E\u53EF\u6838\u5BF9\u51FA\u5904\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A10-K\u3001\u5E74\u62A5\u7CBE\u8BFB\u3001\u5206\u8282\u6458\u8981\u3002",en:"Use when the task matches this method: reads a 10-K section by section into an abstract, section summaries, key metrics and sourced references. Triggers on 10-K Report Digest, US equity, Filings, Business analysis."}),requires:Object.freeze(["filings"]),overlaps:Object.freeze(["earnings-preview","earnings-call-analysis","china-earnings-preview","china-earnings-analysis","china-variance-commentary","financial-report-analyst","china-break-trace"]),canonicalFor:Object.freeze(["us/post-event/10k-digest"])}),"bear-case":Object.freeze({market:Object.freeze(["us-stock"]),stage:"review",methods:Object.freeze(["evidence","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u5BF9\u4E00\u4E2A\u770B\u591A\u8BBA\u70B9\u505A\u6700\u5F3A\u7684\u53CD\u9762\u8BBA\u8BC1\u3001\u9010\u6761\u627E\u53CD\u8BC1\u4E0E\u8106\u5F31\u5047\u8BBE\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7A7A\u5934\u3001\u7EA2\u961F\u3001\u53CD\u65B9\u3001\u770B\u7A7A\u3001bear case\u3002\u5B83\u4E0D\u9884\u6D4B\u8DCC\u5E45\u3002",en:'Use when the user asks for the strongest counter-argument to a bullish thesis with counterevidence and fragile assumptions. Triggers on "bear case", "red team", "short thesis", "counter-argument". It does not forecast downside.'}),requires:Object.freeze(["filings","price_history"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"catalyst-calendar":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["earnings","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u5217\u51FA\u672A\u6765 90 \u5929\u7684\u4E8B\u4EF6\u50AC\u5316\u5242\u3001\u9884\u671F\u5F71\u54CD\u4E0E\u590D\u67E5\u8282\u594F\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u50AC\u5316\u5242\u3001\u65E5\u5386\u3001\u8D22\u62A5\u65E5\u3001\u89E3\u7981\u3001\u4E8B\u4EF6\u3002\u9700\u8981\u628A\u4E8B\u4EF6\u6309\u6CE8\u610F\u529B\u4F18\u5148\u7EA7\u6392\u5E8F\u65F6\u7528 catalyst-map\u3002",en:'Use when the user asks for the next 90 days of event catalysts with expected impact and a review cadence. Triggers on "catalyst", "calendar", "earnings date", "lock-up". Use catalyst-map when the ask is a ranked attention map.'}),requires:Object.freeze(["filings","macro"]),overlaps:Object.freeze(["catalyst-map","china-catalyst-calendar","risk-warning-catalysts","thesis-tracker","china-thesis-tracker"]),canonicalFor:Object.freeze(["us/monitoring/catalysts"])}),"competitor-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["evidence","valuation"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u56F4\u7ED5\u4E00\u5BB6\u516C\u53F8\u4E0E\u5176\u76F4\u63A5\u5BF9\u624B\u6BD4\u8F83\u62A4\u57CE\u6CB3\u3001\u5E02\u573A\u5730\u4F4D\u4E0E\u884C\u4E1A\u683C\u5C40\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7ADE\u4E89\u5BF9\u624B\u3001\u62A4\u57CE\u6CB3\u3001\u5E02\u573A\u5730\u4F4D\u3001\u540C\u4E1A\u3002",en:"Use when the task matches this method: moat, market position and industry dynamics for one company against its direct rivals. Triggers on Competitor Analysis, US equity, Competition, Business analysis, Risk."}),requires:Object.freeze(["peer_data","financial_statements"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"dividend-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["valuation","financial-health"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u5206\u7EA2\u3001\u56DE\u8D2D\u3001\u5E76\u8D2D\u3001\u503A\u52A1\u7BA1\u7406\u4E0E\u81EA\u7531\u73B0\u91D1\u6D41\u53BB\u5411\u5408\u8D77\u6765\u770B\u8D44\u672C\u914D\u7F6E\u7EAA\u5F8B\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5206\u7EA2\u3001\u56DE\u8D2D\u3001\u8D44\u672C\u914D\u7F6E\u3001\u81EA\u7531\u73B0\u91D1\u6D41\u3002",en:"Use when the task matches this method: reviews dividends, buybacks, M&A, debt and FCF deployment as one capital-allocation discipline. Triggers on Dividend & Capital Allocation, US equity, Capital allocation, Cash flow, Valuation."}),requires:Object.freeze(["financial_statements","price_history"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"earnings-call-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"post-event",methods:Object.freeze(["earnings","evidence"]),roles:Object.freeze(["web_retriever","main"]),primaryRole:"web_retriever",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u62FF\u5230\u4E1A\u7EE9\u7535\u8BDD\u4F1A\u7EAA\u8981\uFF0C\u8981\u6C42\u8BFB\u60C5\u7EEA\u3001\u4E3B\u9898\u4E0E\u7BA1\u7406\u5C42\u53E3\u5F84\u53D8\u5316\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7535\u8BDD\u4F1A\u3001\u7EAA\u8981\u3001\u7BA1\u7406\u5C42\u53E3\u5F84\u3001\u60C5\u7EEA\u3002",en:"Use when the task matches this method: reads sentiment, themes and shifts in management tone from earnings call transcripts. Triggers on Earnings Call Analysis, US equity, Earnings, Perspective."}),requires:Object.freeze(["transcript"]),overlaps:Object.freeze(["earnings-preview","china-earnings-preview","china-earnings-analysis","china-variance-commentary","financial-report-analyst","10k-digest","china-break-trace"]),canonicalFor:Object.freeze(["us/post-event/earnings-call"])}),"earnings-preview":Object.freeze({market:Object.freeze(["us-stock"]),stage:"pre-event",methods:Object.freeze(["earnings","risk"]),roles:Object.freeze(["data_junior","main"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5728\u7F8E\u80A1\u8D22\u62A5\u516C\u5E03\u524D\uFF0C\u5BF9\u6BD4\u4E00\u81F4\u9884\u671F\u4E0E\u671F\u6743\u9690\u542B\u6CE2\u52A8\uFF0C\u505A\u8D85\u9884\u671F / \u7B26\u5408 / \u4E0D\u53CA\u4E09\u6863\u60C5\u666F\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8D22\u62A5\u524D\u77BB\u3001\u9690\u542B\u6CE2\u52A8\u3001\u4E00\u81F4\u9884\u671F\u3001\u60C5\u666F\u3002",en:"Use when the task matches this method: compares consensus with the implied move and lays out beat / in-line / miss scenarios with watch KPIs. Triggers on Earnings Preview, US equity, Earnings, Risk, Monitoring."}),requires:Object.freeze(["financial_statements","options","macro"]),overlaps:Object.freeze(["earnings-call-analysis","china-earnings-preview","china-earnings-analysis","china-variance-commentary","financial-report-analyst","10k-digest","china-break-trace"]),canonicalFor:Object.freeze(["us/pre-event/earnings-preview"])}),"economics-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["macro","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u89E3\u8BFB\u7F8E\u56FD\u5B8F\u89C2\u6570\u636E\u4E0E\u5229\u7387\u8DEF\u5F84\uFF0C\u5E76\u4EA4\u4EE3\u5B83\u5982\u4F55\u4F20\u5BFC\u5230\u5E02\u573A\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7F8E\u56FD\u5B8F\u89C2\u3001\u5229\u7387\u8DEF\u5F84\u3001\u4F20\u5BFC\u3001CPI\u3001\u975E\u519C\u3002",en:"Use when the task matches this method: interprets US macro prints and the rate path, and spells out the transmission to markets. Triggers on US Economics Analysis, US equity, Macro & industry, Risk."}),requires:Object.freeze(["macro"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"etf-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["portfolio","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6BD4\u8F83 ETF \u7684\u8D39\u7387\u3001\u8DDF\u8E2A\u8BEF\u5DEE\u3001\u6D41\u52A8\u6027\u3001\u6210\u5206\u96C6\u4E2D\u5EA6\u4E0E\u6301\u4ED3\u91CD\u53E0\uFF0C\u5E76\u7ED9\u51FA\u5951\u5408\u5EA6\u8BC4\u5206\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AETF\u3001\u8D39\u7387\u3001\u8DDF\u8E2A\u8BEF\u5DEE\u3001\u6301\u4ED3\u91CD\u53E0\u3002",en:"Use when the task matches this method: expense ratio, tracking difference, liquidity, concentration and overlap rolled into a fitness score. Triggers on ETF Analysis, US equity, Options & funds, Portfolio, Risk."}),requires:Object.freeze(["price_history","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"fact-check":Object.freeze({market:Object.freeze(["us-stock"]),stage:"review",methods:Object.freeze(["evidence"]),roles:Object.freeze(["web_retriever","main"]),primaryRole:"web_retriever",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u628A\u62A5\u544A\u91CC\u7684\u6570\u5B57\u4E0E\u4E8B\u5B9E\u4E3B\u5F20\u9010\u6761\u5BF9\u7167\u4E00\u624B\u6765\u6E90\u3001\u6807\u6CE8\u5DF2\u6838\u9A8C / \u4E0D\u7B26 / \u65E0\u6CD5\u6838\u9A8C\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u6838\u9A8C\u3001fact check\u3001\u5F15\u7528\u3001\u4E00\u624B\u6765\u6E90\u3002\u5B83\u53EA\u6838\u4E8B\u5B9E\uFF0C\u4E0D\u91CD\u505A\u6295\u8D44\u7ED3\u8BBA\u3002",en:'Use when the user asks to verify every figure and factual claim against primary sources and mark verified / mismatch / unverifiable. Triggers on "fact check", "verify", "citations", "primary source". It verifies facts, not the investment conclusion.'}),requires:Object.freeze(["filings"]),overlaps:Object.freeze(["financial-health","financial-report-analyst","china-break-trace","forensic-accounting","result-validator","evidence-gap-check"]),canonicalFor:Object.freeze(["global/review/claims"])}),"financial-report-analyst":Object.freeze({market:Object.freeze(["us-stock"]),stage:"post-event",methods:Object.freeze(["accounting","financial-health"]),roles:Object.freeze(["data_junior","web_retriever"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u4ECE 10-K / 10-Q \u8BFB\u62A5\u8868\u8D28\u91CF\u3001\u5F02\u5E38\u7EA2\u65D7\u4E0E\u53EF\u4EA4\u4EE3\u51FA\u5904\u7684\u4FE1\u53F7\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A10-Q\u3001\u62A5\u8868\u8D28\u91CF\u3001\u7EA2\u65D7\u3001\u5F02\u5E38\u3002",en:"Use when the task matches this method: reads statement quality, red flags and one sourced signal from 10-K / 10-Q filings. Triggers on Financial Report Analyst, US equity, Filings, Financial health, Risk."}),requires:Object.freeze(["filings","financial_statements"]),overlaps:Object.freeze(["earnings-preview","earnings-call-analysis","china-earnings-preview","china-earnings-analysis","china-variance-commentary","10k-digest","china-break-trace","financial-health","forensic-accounting","result-validator","fact-check","evidence-gap-check"]),canonicalFor:Object.freeze(["us/quality/statement"])}),"industry-map":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["evidence","macro"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u4EA7\u4E1A\u94FE\u4E0A\u4E0B\u6E38\u753B\u6210\u6709\u5411\u56FE\uFF0C\u5B9A\u4F4D\u516C\u53F8\u4F4D\u7F6E\u3001\u4F9B\u9700\u74F6\u9888\u4E0E\u5229\u6DA6\u6C60\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4EA7\u4E1A\u94FE\u3001\u4E0A\u4E0B\u6E38\u3001\u74F6\u9888\u3001\u5229\u6DA6\u6C60\u3002",en:"Use when the task matches this method: maps the value chain as a directed graph to locate the company, find chokepoints and second-order ideas. Triggers on Industry Map, US equity, Macro & industry, Competition, Business analysis."}),requires:Object.freeze(["industry_data","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"insider-trading":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["ownership","evidence"]),roles:Object.freeze(["data_junior","web_retriever"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u4ECE SEC Form 4 \u8FFD\u8E2A\u9AD8\u7BA1\u4E0E\u8463\u4E8B\u589E\u51CF\u6301\u5E76\u505A\u89E3\u8BFB\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5185\u90E8\u4EBA\u3001Form 4\u3001\u589E\u51CF\u6301\u3001\u9AD8\u7BA1\u3002",en:"Use when the task matches this method: tracks executive and director buying and selling from SEC Form 4 filings. Triggers on Insider Trading, US equity, Filings, Monitoring, Perspective."}),requires:Object.freeze(["filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"institutional-ownership":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["ownership","evidence"]),roles:Object.freeze(["data_junior","web_retriever"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u4ECE 13F \u8BFB\u673A\u6784\u6301\u4ED3\u53D8\u5316\u3001\u8BC6\u522B\u8D44\u91D1\u8FC1\u79FB\u65B9\u5411\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A13F\u3001\u673A\u6784\u6301\u4ED3\u3001\u8D44\u91D1\u8FC1\u79FB\u3002",en:"Use when the task matches this method: reads changes in institutional holdings from 13F filings to spot where the money is moving. Triggers on Institutional Ownership, US equity, Filings, Monitoring."}),requires:Object.freeze(["filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"learning-coach":Object.freeze({market:Object.freeze(["global"]),stage:"learning",methods:Object.freeze(["teaching"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u628A\u4E00\u4EFD\u5206\u6790\u7ED3\u679C\u8BB2\u6210\u8BFE\u7A0B\u3001\u9010\u6307\u6807\u89E3\u91CA\u5E76\u53CD\u95EE\u7406\u89E3\u95EE\u9898\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8BB2\u89E3\u3001\u6559\u5B66\u3001\u9010\u6307\u6807\u3001\u7406\u89E3\u68C0\u9A8C\u3002",en:"Use when the task matches this method: explains an analysis metric by metric in plain words, then asks 3\u20135 Socratic questions. Triggers on Learning Coach, Education, Perspective."}),requires:Object.freeze(["user_input"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"options-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["technical","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u770B\u671F\u6743\u5E0C\u814A\u5B57\u6BCD\u3001\u9690\u542B\u6CE2\u52A8\u7387\u4E0E\u7B56\u7565\u9002\u914D\u5EA6\uFF0C\u7406\u89E3\u98CE\u9669\u5F62\u72B6\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u671F\u6743\u3001Greeks\u3001\u9690\u542B\u6CE2\u52A8\u7387\u3001\u7B56\u7565\u3002",en:"Use when the task matches this method: reviews Greeks, implied volatility and strategy fit to characterise an options risk shape. Triggers on Options Analysis, US equity, Options & funds, Risk."}),requires:Object.freeze(["options","price_history"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"portfolio-review":Object.freeze({market:Object.freeze(["us-stock"]),stage:"review",methods:Object.freeze(["portfolio","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u590D\u76D8\u5B9E\u9645\u6301\u4ED3\u6216\u7EC4\u5408\u7684\u6536\u76CA\u6765\u6E90\u3001\u96C6\u4E2D\u5EA6\u3001\u914D\u7F6E\u504F\u79BB\u4E0E\u98CE\u9669\u52A8\u4F5C\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7EC4\u5408\u590D\u76D8\u3001\u6301\u4ED3\u3001\u914D\u7F6E\u504F\u79BB\u3001\u96C6\u4E2D\u5EA6\u3002\u81EA\u9009\u6E05\u5355\u4E0D\u7B49\u4E8E\u6301\u4ED3\u3002",en:'Use when the user asks to review actual holdings or a portfolio for return drivers, concentration, allocation drift and risk actions. Triggers on "portfolio review", "holdings", "allocation drift", "concentration". A watchlist is not a portfolio.'}),requires:Object.freeze(["portfolio","price_history"]),overlaps:Object.freeze(["portfolio-concentration","risk-stress-test","position-sizing","position-ladder","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze(["global/portfolio/review"])}),"position-ladder":Object.freeze({market:Object.freeze(["us-stock"]),stage:"execution",methods:Object.freeze(["portfolio","trade"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u5EFA\u4ED3\u62C6\u6210\u5206\u6279\u80A1\u6570\u4E0A\u4E0B\u9650\u4E0E\u52A0\u51CF\u4ED3\u8282\u594F\uFF0C\u5E76\u68C0\u67E5\u6279\u6B21\u8BB0\u8D26\u4E0E\u6D17\u552E\u7A97\u53E3\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5206\u6279\u5EFA\u4ED3\u3001\u52A0\u51CF\u4ED3\u3001\u6279\u6B21\u3001\u6D17\u552E\u3002",en:"Use when the task matches this method: plans a staged entry with share-count floors and ceilings, trim/re-add cadence, lot and wash-sale checks. Triggers on Position Ladder, US equity, Portfolio, Monitoring."}),requires:Object.freeze(["portfolio","price_history"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze(["global/execution/ladder"])}),"result-validator":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["evidence","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u4ECE\u6570\u636E\u8D28\u91CF\u3001\u65B9\u6CD5\u4E00\u81F4\u6027\u4E0E\u4FE1\u53F7\u51B2\u7A81\u4E09\u4E2A\u7EF4\u5EA6\u7ED9\u4E00\u4EFD\u5206\u6790\u7ED3\u679C\u6253\u7F6E\u4FE1\u5EA6\u5206\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7F6E\u4FE1\u5EA6\u3001\u6570\u636E\u8D28\u91CF\u3001\u65B9\u6CD5\u4E00\u81F4\u6027\u3001\u4FE1\u53F7\u51B2\u7A81\u3002",en:"Use when the task matches this method: scores an analysis's confidence across data quality, methodology and signal consistency. Triggers on Result Validator, Verification, Perspective."}),requires:Object.freeze(["user_input"]),overlaps:Object.freeze(["financial-health","financial-report-analyst","china-break-trace","forensic-accounting","fact-check","evidence-gap-check"]),canonicalFor:Object.freeze([])}),"risk-stress-test":Object.freeze({market:Object.freeze(["us-stock"]),stage:"review",methods:Object.freeze(["risk","portfolio"]),roles:Object.freeze(["data_junior","main"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5BF9\u7EC4\u5408\u505A beta \u52A0\u6743\u655E\u53E3\u3001\u5386\u53F2\u60C5\u666F\u91CD\u653E\u3001VaR / CVaR\u3001\u6700\u5927\u56DE\u64A4\u4E0E\u6D41\u52A8\u6027\u9000\u51FA\u5929\u6570\u6D4B\u7B97\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u538B\u529B\u6D4B\u8BD5\u3001VaR\u3001CVaR\u3001\u56DE\u64A4\u3001\u98CE\u9669\u9884\u7B97\u3002",en:"Use when the task matches this method: beta-weighted exposure, historical scenario replay, VaR / CVaR, drawdown estimates and days to exit. Triggers on Risk Stress Test, US equity, Portfolio, Risk, Macro & industry."}),requires:Object.freeze(["portfolio","price_history","macro"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","position-sizing","position-ladder","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze(["global/portfolio/stress"])}),"sector-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["macro","technical"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u770B\u7F8E\u56FD\u5404\u677F\u5757\u7684\u76F8\u5BF9\u5F3A\u5F31\u4E0E\u8F6E\u52A8\u7EBF\u7D22\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u677F\u5757\u3001\u76F8\u5BF9\u5F3A\u5F31\u3001\u8F6E\u52A8\u3001\u884C\u4E1A\u3002",en:"Use when the task matches this method: reviews US sector positioning and rotation clues, and states what each read rests on. Triggers on Sector Analysis, US equity, Macro & industry, Competition."}),requires:Object.freeze(["price_history","macro"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"short-interest":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["ownership","risk"]),roles:Object.freeze(["data_junior","web_retriever"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u8BFB\u7A7A\u5934\u6BD4\u4F8B\u3001\u56DE\u8865\u6210\u672C\u4E0E\u6324\u538B\u6761\u4EF6\uFF0C\u5E76\u68C0\u67E5\u5229\u7A7A\u5806\u79EF\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7A7A\u5934\u3001short interest\u3001\u6324\u538B\u3001\u56DE\u8865\u3002",en:"Use when the task matches this method: analyses short ratio, cost to cover, squeeze conditions and bearish positioning signals. Triggers on Short Interest, US equity, Filings, Monitoring, Risk."}),requires:Object.freeze(["filings","price_history"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"stock-eval":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["valuation","financial-health","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u8D22\u52A1\u8D28\u91CF\u3001\u6210\u957F\u3001\u4F30\u503C\u4E0E\u98CE\u9669\u5408\u6210\u4E00\u6B21\u7F8E\u80A1\u7EFC\u5408\u8BC4\u4F30\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7EFC\u5408\u8BC4\u4F30\u3001\u57FA\u672C\u9762\u3001\u4F30\u503C\u3001\u98CE\u9669\u3002",en:"Use when the task matches this method: combines quality, growth, valuation and risk into one evaluation with a sourced conclusion. Triggers on Stock Evaluation, US equity, Business analysis, Financial health, Valuation, Risk."}),requires:Object.freeze(["financial_statements","price_history","peer_data"]),overlaps:Object.freeze(["stock-valuation","company-valuation","china-dcf","china-comps-analysis","valuation-investment-strategy","buffett-investment-framework","peter-lynch-skill","china-initiating-coverage","stock-screener"]),canonicalFor:Object.freeze(["us/research/comprehensive"])}),"stock-screener":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["screening","valuation"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309\u4F30\u503C\u3001\u8D28\u91CF\u3001\u52A8\u91CF\u3001\u60C5\u7EEA\u4E0E\u6210\u957F\u4E94\u4E2A\u7EF4\u5EA6\u7ED9\u4E00\u7BEE\u5B50\u7F8E\u80A1\u6253\u5206\u6392\u5E8F\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7B5B\u9009\u3001\u6253\u5206\u3001\u6392\u5E8F\u3001\u591A\u6807\u7684\u3002",en:"Use when the task matches this method: screens and ranks a list of US stocks across valuation, quality, momentum, sentiment and growth. Triggers on Stock Screener, US equity, Valuation, Business analysis, Technicals."}),requires:Object.freeze(["price_history","financial_statements"]),overlaps:Object.freeze(["buffett-investment-framework","peter-lynch-skill","stock-eval","china-initiating-coverage"]),canonicalFor:Object.freeze([])}),"stock-valuation":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["valuation"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u5BF9\u7F8E\u80A1\u6216\u5883\u5916\u4E0A\u5E02\u516C\u53F8\u505A DCF\u3001\u53EF\u6BD4\u516C\u53F8\u3001EV \u500D\u6570\u6216\u5269\u4F59\u6536\u76CA\u4F30\u503C\u533A\u95F4\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4F30\u503C\u3001DCF\u3001\u76EE\u6807\u4EF7\u3001\u5408\u7406\u533A\u95F4\u3002\u5355\u72EC\u7B97 WACC \u6216\u505A EV/\u80A1\u6743\u6865\u65F6\u7528\u66F4\u4E13\u95E8\u7684 skill\u3002",en:'Use when the user asks for a DCF, comparables, EV multiple or residual-income valuation range for a US or offshore listed company. Triggers on "valuation", "DCF", "target price", "fair value range".'}),requires:Object.freeze(["financial_statements","price_history","peer_data"]),overlaps:Object.freeze(["company-valuation","china-dcf","china-comps-analysis","valuation-investment-strategy","stock-eval","buffett-investment-framework","peter-lynch-skill"]),canonicalFor:Object.freeze(["us/valuation/multi-method"])}),"tax-lens":Object.freeze({market:Object.freeze(["us-stock"]),stage:"review",methods:Object.freeze(["tax","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u95EE\u9898\u6D89\u53CA\u7F8E\u56FD\u8D44\u672C\u5229\u5F97\u3001\u6D17\u552E\u7A97\u53E3\u3001\u5408\u683C\u80A1\u606F\u6301\u6709\u671F\u3001\u6279\u6B21\u9009\u62E9\u6216\u5E74\u5EA6\u7A0E\u8D1F\u62D6\u7D2F\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7A0E\u3001wash sale\u3001\u957F\u671F / \u77ED\u671F\u3001\u7A0E\u8D1F\u3002\u4E2D\u56FD\u5927\u9646\u7A0E\u52A1\u4E0D\u8981\u5957\u7528\u3002",en:'Use when the question involves US capital-gains treatment, the wash-sale window, qualified-dividend holding periods, lot selection or annual tax drag. Triggers on "tax", "wash sale", "long-term / short-term", "tax drag". Not for mainland-China tax.'}),requires:Object.freeze(["portfolio","user_input"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze(["global/tax/us"])}),"technical-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["technical"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u7528\u5747\u7EBF\u3001\u6210\u4EA4\u91CF\u3001RSI / MACD \u8BFB\u8D8B\u52BF\u3001\u5173\u952E\u4EF7\u4F4D\u3001\u652F\u6491\u538B\u529B\u6216\u590D\u67E5\u89E6\u53D1\u6761\u4EF6\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u6280\u672F\u9762\u3001\u8865\u8DCC\u3001\u8D8B\u52BF\u3001\u652F\u6491\u538B\u529B\u3002\u5B83\u662F\u590D\u67E5\u6761\u4EF6\uFF0C\u4E0D\u662F\u65B9\u5411\u9884\u6D4B\u3002",en:'Use when the user asks for trend, key levels, support / resistance or re-check triggers using moving averages, volume, RSI or MACD. Triggers on "\u6280\u672F\u9762", "\u8865\u8DCC", "\u8D8B\u52BF", "\u652F\u6491\u538B\u529B". It gives re-check conditions, not a direction forecast.'}),requires:Object.freeze(["price_history"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"thesis-tracker":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["evidence","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5199\u4E0B\u8BBA\u70B9\u7684 KPI\u3001\u5931\u6548\u6761\u4EF6\u4E0E\u50AC\u5316\u5242\uFF0C\u5E76\u5728\u65B0\u6570\u636E\u5230\u6765\u540E\u590D\u6838\u7EF4\u6301 / \u8D70\u5F31 / \u5931\u6548\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8BBA\u70B9\u8DDF\u8E2A\u3001KPI\u3001\u5931\u6548\u6761\u4EF6\u3001\u50AC\u5316\u5242\u3002",en:"Use when the task matches this method: records KPIs, invalidation triggers and catalysts, then re-checks them as INTACT / WEAKENED / BROKEN. Triggers on Thesis Tracker, US equity, Verification, Monitoring, Perspective."}),requires:Object.freeze(["filings","price_history"]),overlaps:Object.freeze(["catalyst-calendar","catalyst-map","china-catalyst-calendar","risk-warning-catalysts","china-thesis-tracker"]),canonicalFor:Object.freeze([])}),"peter-lynch-skill":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["valuation","evidence","screening"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u6309\u5F7C\u5F97\xB7\u6797\u5947\u5F0F\u5FEB\u7B5B\uFF08SKIP / WATCHLIST / DEEP RESEARCH\uFF09\u6216\u5B8C\u6574\u5C3D\u8C03\u7814\u7A76\u4E00\u53EA\u7F8E\u80A1\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5F7C\u5F97\xB7\u6797\u5947\u3001\u5FEB\u7B5B\u3001\u5C3D\u8C03\u3001\u5206\u7C7B\u3002",en:"Use when the task matches this method: screens a ticker or company fast (SKIP / WATCHLIST / DEEP RESEARCH) or runs full due diligence, with linked sources under every claim. US and overseas-listing conventions. Triggers on Peter Lynch Research, Peter Lynch, US equity, Valuation, Risk, Verification."}),requires:Object.freeze(["financial_statements","price_history","filings"]),overlaps:Object.freeze(["stock-valuation","company-valuation","china-dcf","china-comps-analysis","valuation-investment-strategy","stock-eval","buffett-investment-framework","china-initiating-coverage","stock-screener"]),canonicalFor:Object.freeze([])}),"catalyst-map":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["earnings","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u4E8B\u4EF6\u6309\u5F71\u54CD\u4EC0\u4E48\u3001\u4EC0\u4E48\u65F6\u5019\u5F71\u54CD\u3001\u4F20\u5BFC\u5230\u8C01\u6392\u6210\u6CE8\u610F\u529B\u4F18\u5148\u7EA7\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u50AC\u5316\u5242\u5730\u56FE\u3001\u4E8B\u4EF6\u94FE\u3001\u6CE8\u610F\u529B\u3001\u4F20\u5BFC\u3002",en:"Use when the task matches this method: ranks upcoming events by what they move, when, and how they transmit across related names, and flags positions hanging on the same event chain. US and overseas calendar conventions. Triggers on Catalyst Map, Trade discipline, Macro & industry, Monitoring, US equity."}),requires:Object.freeze(["filings","macro"]),overlaps:Object.freeze(["catalyst-calendar","china-catalyst-calendar","risk-warning-catalysts","thesis-tracker","china-thesis-tracker","macro-event-analysis"]),canonicalFor:Object.freeze([])}),"watchlist-review":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["portfolio","evidence"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5BF9\u81EA\u9009\u6E05\u5355\u505A\u5206\u8BCA\uFF0C\u533A\u5206\u503C\u5F97\u76EF\u3001\u53EA\u4F5C\u80CC\u666F\u4E0E\u7406\u7531\u5DF2\u4E0D\u6210\u7ACB\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u81EA\u9009\u80A1\u3001\u5206\u8BCA\u3001\u6E05\u5355\u3001\u79FB\u9664\u3002",en:"Use when the task matches this method: triages the watchlist the user supplies into active focus, background monitoring, or removal, and says that what comes off is a list entry, not a position. Triggers on Watchlist Review, Trade discipline, Portfolio, Monitoring, US equity."}),requires:Object.freeze(["portfolio","price_history"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-ladder","position-management","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze([])}),"evidence-gap-check":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["evidence"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u4E00\u7B14\u60F3\u6CD5\u8FD8\u7F3A\u7684\u4E8B\u5B9E\u3001\u5047\u8BBE\u4E0E\u672A\u89E3\u95EE\u9898\u6309\u4F1A\u4E0D\u4F1A\u6539\u53D8\u5224\u65AD\u6392\u5E8F\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8BC1\u636E\u7F3A\u53E3\u3001\u5047\u8BBE\u3001\u672A\u89E3\u95EE\u9898\u3001\u7F6E\u4FE1\u5EA6\u3002",en:"Use when the task matches this method: ranks the missing facts, assumptions and open questions behind an idea by whether they change the judgement, and separates blocking gaps from confidence gaps. Triggers on Evidence Gap Check, Trade discipline, Verification, Risk."}),requires:Object.freeze(["user_input"]),overlaps:Object.freeze(["financial-health","financial-report-analyst","china-break-trace","forensic-accounting","result-validator","fact-check"]),canonicalFor:Object.freeze([])}),"thesis-validation":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["evidence","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u4E00\u4E2A\u8BF4\u6CD5\u538B\u6210\u53EF\u68C0\u9A8C\u7684\u8BBA\u70B9\u3001\u8BC1\u636E\u3001\u5931\u6548\u6761\u4EF6\u4E0E\u65F6\u95F4\u7A97\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8BBA\u70B9\u538B\u529B\u6D4B\u8BD5\u3001\u53EF\u68C0\u9A8C\u3001\u5931\u6548\u3001\u65F6\u95F4\u7A97\u3002",en:"Use when the task matches this method: turns a claim into something testable \u2014 thesis, evidence, invalidation, timeframe \u2014 then judges whether it is ready to be built on. Triggers on Thesis Validation, Trade discipline, Verification, Risk."}),requires:Object.freeze(["user_input","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"risk-reward-sanity-check":Object.freeze({market:Object.freeze(["us-stock"]),stage:"execution",methods:Object.freeze(["trade","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u7ED9\u51FA\u5165\u573A\u3001\u6B62\u635F\u4E0E\u76EE\u6807\uFF0C\u8981\u6C42\u7B97\u76C8\u4E8F\u6BD4\u5E76\u68C0\u67E5\u76EE\u6807\u662F\u5426\u5728\u566A\u58F0\u91CC\u3001\u6B62\u635F\u662F\u5426\u5728\u6D41\u52A8\u6027\u805A\u96C6\u5904\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u76C8\u4E8F\u6BD4\u3001\u6B62\u635F\u3001\u76EE\u6807\u3001\u7ED3\u6784\u81EA\u6D3D\u3002",en:"Use when the task matches this method: works out the reward-to-risk ratio from entry, stop and target, then tests whether the structure holds \u2014 targets inside noise, stops sitting in obvious liquidity pools. Triggers on Risk-Reward Sanity Check, Trade discipline, Risk, US equity."}),requires:Object.freeze(["price_history","user_input"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-ladder","position-management","watchlist-review","execution-plan-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze([])}),"execution-plan-check":Object.freeze({market:Object.freeze(["us-stock"]),stage:"execution",methods:Object.freeze(["trade","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u68C0\u67E5\u4E00\u4EFD\u4EA4\u6613\u8BA1\u5212\u5728\u64CD\u4F5C\u4E0A\u80FD\u5426\u843D\u5730\uFF1A\u8BA2\u5355\u7C7B\u578B\u3001\u6D41\u52A8\u6027\u3001\u70B9\u5DEE\u3001\u4E8B\u4EF6\u65F6\u70B9\u4E0E\u6B62\u635F\u6210\u4EA4\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u6267\u884C\u8BA1\u5212\u3001\u8BA2\u5355\u7C7B\u578B\u3001\u6D41\u52A8\u6027\u3001\u6B62\u635F\u3002",en:"Use when the task matches this method: checks whether a plan is operationally workable: order type against urgency, liquidity and spread risk, event timing, and whether a stop would actually fill. Triggers on Execution Plan Check, Trade discipline, Risk, Monitoring, US equity."}),requires:Object.freeze(["price_history","user_input"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-ladder","position-management","watchlist-review","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze([])}),"portfolio-concentration":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["portfolio","risk"]),roles:Object.freeze(["data_junior","main"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5224\u65AD\u7EC4\u5408\u662F\u5426\u8FC7\u5EA6\u538B\u5728\u540C\u4E00\u6279\u53D1\u884C\u4EBA\u3001\u884C\u4E1A\u3001\u4E3B\u9898\u6216\u76F8\u5173\u66B4\u9732\u4E0A\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u96C6\u4E2D\u5EA6\u3001\u53D1\u884C\u4E3B\u4F53\u3001\u884C\u4E1A\u3001\u76F8\u5173\u66B4\u9732\u3002",en:"Use when the task matches this method: shows whether a book leans too hard on a few issuers, sectors, themes or correlated exposures, and what holdings data that verdict needs to stand. Triggers on Portfolio Concentration, Trade discipline, Portfolio, Risk."}),requires:Object.freeze(["portfolio"]),overlaps:Object.freeze(["portfolio-review","risk-stress-test","position-sizing","position-ladder","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze(["global/portfolio/concentration"])}),"journal-pattern-analyzer":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["trade","teaching"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u4ECE\u81EA\u5DF1\u7684\u4EA4\u6613\u65E5\u5FD7\u91CC\u627E\u91CD\u590D\u51FA\u73B0\u7684\u4F18\u52BF\u4E0E\u5931\u8BEF\uFF0C\u5E76\u6309\u73AF\u5883\u5206\u7EC4\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4EA4\u6613\u65E5\u5FD7\u3001\u6A21\u5F0F\u3001\u4F18\u52BF\u3001\u5931\u8BEF\u3001\u5C0F\u6837\u672C\u3002",en:"Use when the task matches this method: finds the repeated strengths and mistakes in the user\u2019s own trade journal, groups them by environment, and keeps small samples from hardening into lessons. Triggers on Journal Pattern Analyzer, Trade discipline, Education, Portfolio."}),requires:Object.freeze(["portfolio","user_input"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-ladder","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review"]),canonicalFor:Object.freeze([])}),"post-trade-review":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["trade","teaching"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309\u8BBA\u70B9\u3001setup\u3001\u6267\u884C\u3001\u5B88\u89C4\u4E0E\u7ED3\u679C\u590D\u76D8\u4E00\u7B14\u5DF2\u5E73\u6389\u7684\u4EA4\u6613\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4EA4\u6613\u590D\u76D8\u3001\u540E\u89C6\u955C\u3001\u5B88\u89C4\u3001\u7ED3\u679C\u3002",en:"Use when the task matches this method: reviews a closed trade across thesis, setup, execution, adherence and outcome without rewriting it with hindsight. Triggers on Post-Trade Review, Trade discipline, Education."}),requires:Object.freeze(["user_input"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-ladder","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","journal-pattern-analyzer"]),canonicalFor:Object.freeze(["global/review/post-trade"])}),"position-sizing":Object.freeze({market:Object.freeze(["us-stock"]),stage:"execution",methods:Object.freeze(["trade","portfolio"]),roles:Object.freeze(["data_junior","main"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u7ED9\u51FA\u8D26\u6237\u89C4\u6A21\u3001\u5355\u7B14\u98CE\u9669\u9884\u7B97\u3001\u5165\u573A\u4EF7\u4E0E\u6B62\u635F\u4EF7\uFF0C\u8981\u6C42\u53CD\u63A8\u4E00\u4E2A\u53EF\u8FA9\u62A4\u7684\u4ED3\u4F4D\u5927\u5C0F\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4ED3\u4F4D\u3001\u5934\u5BF8\u3001\u98CE\u9669\u9884\u7B97\u3001\u6B62\u635F\u3002\u5B83\u53EA\u7B97\u5927\u5C0F\uFF0C\u4E0D\u5224\u65AD\u8FD9\u7B14\u8BE5\u4E0D\u8BE5\u505A\u3002",en:'Use when the user supplies account equity, per-trade risk budget, entry and stop, and asks for a defensible position size. Triggers on "position size", "risk budget", "stop". It sizes the trade, not whether to take it.'}),requires:Object.freeze(["portfolio","price_history","user_input"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-ladder","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze(["global/execution/sizing"])}),"position-management":Object.freeze({market:Object.freeze(["us-stock"]),stage:"review",methods:Object.freeze(["portfolio","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5BF9\u7167\u539F\u59CB\u8BBA\u70B9\u3001\u5931\u6548\u6761\u4EF6\u3001\u50AC\u5316\u5242\u4E0E\u6267\u884C\u7EA6\u675F\u590D\u67E5\u4E00\u7B14\u5728\u624B\u4ED3\u4F4D\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u6301\u4ED3\u590D\u6838\u3001\u7EE7\u7EED\u6301\u6709\u3001\u51CF\u4ED3\u3001\u6B62\u635F\u3001\u79BB\u573A\u3002",en:"Use when the task matches this method: revisits an open position against the original thesis, its invalidation logic, the catalyst calendar and execution constraints, then argues hold, trim, tighten or exit on stated evidence. Triggers on Position Management, Trade discipline, Monitoring, Portfolio, US equity."}),requires:Object.freeze(["portfolio","filings","price_history"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-ladder","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze([])}),"macro-event-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"pre-event",methods:Object.freeze(["macro","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5728\u672A\u6765\u4E00\u5230\u4E24\u5468\u7684\u5B8F\u89C2\u4E8B\u4EF6\u91CC\u6311\u51FA\u771F\u6B63\u5F71\u54CD\u51B3\u7B56\u7684\u51E0\u9879\uFF0C\u5E76\u770B\u6E05\u5B83\u4EEC\u901A\u8FC7\u5229\u7387\u3001\u6C47\u7387\u3001\u5546\u54C1\u4E0E\u98CE\u9669\u504F\u597D\u4F20\u5BFC\u5230\u6301\u4ED3\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5B8F\u89C2\u4E8B\u4EF6\u3001\u4E8B\u4EF6\u98CE\u9669\u3001\u4F20\u5BFC\u3001\u65F6\u95F4\u7A97\u3002",en:"Use when the task matches this method: filters the next one to two weeks of macro events down to the decision-relevant few and maps their transmission through rates, FX, commodities and risk appetite. Triggers on Macro Event Analysis, Trade discipline, Macro & industry, Monitoring, US equity."}),requires:Object.freeze(["macro"]),overlaps:Object.freeze(["catalyst-map","market-regime-analysis"]),canonicalFor:Object.freeze(["global/pre-event/macro"])}),"market-regime-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["technical","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309\u8D8B\u52BF\u3001\u6CE2\u52A8\u7387\u3001\u5E7F\u5EA6\u4E0E\u4E8B\u4EF6\u80CC\u666F\u5224\u5B9A\u5F53\u524D\u5E02\u573A\u73AF\u5883\uFF0C\u5E76\u636E\u6B64\u9009\u62E9\u8D8B\u52BF\u8DDF\u968F\u3001\u5747\u503C\u56DE\u5F52\u8FD8\u662F\u9632\u5FA1\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5E02\u573A\u73AF\u5883\u3001\u8D8B\u52BF\u3001\u6CE2\u52A8\u7387\u3001\u5E7F\u5EA6\u3002",en:"Use when the task matches this method: classifies the environment across trend, volatility, breadth and event backdrop, then argues whether trend-following, mean reversion or caution is the better default. Triggers on Market Regime Analysis, Trade discipline, Technicals, Risk, US equity."}),requires:Object.freeze(["price_history","macro"]),overlaps:Object.freeze(["macro-event-analysis"]),canonicalFor:Object.freeze(["global/monitoring/regime"])}),"china-earnings-analysis":Object.freeze({market:Object.freeze(["a-share"]),stage:"post-event",methods:Object.freeze(["earnings","financial-health"]),roles:Object.freeze(["main","data_junior"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u5BF9 A \u80A1\u516C\u53F8\u505A\u5B63\u62A5/\u5E74\u62A5\u70B9\u8BC4\uFF0C\u9700\u8981\u5B9E\u9645 / \u4E00\u81F4\u9884\u671F / \u4E0A\u671F\u5DEE\u5F02\u8868\u3001\u6536\u5165\u4E0E\u5229\u6DA6\u7387\u5206\u89E3\u3001\u8D44\u4EA7\u8D1F\u503A\u8868\u4E0E\u73B0\u91D1\u6D41\u5173\u6CE8\u70B9\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8D22\u62A5\u70B9\u8BC4\u3001\u5B63\u62A5\u70B9\u8BC4\u3001\u5E74\u62A5\u70B9\u8BC4\u3001\u4E1A\u7EE9\u5206\u6790\u3002\u53EA\u67E5\u516C\u544A\u4E8B\u5B9E\u65F6\u4E0D\u8981\u7528\u3002",en:'Use when the user asks for an A-share quarterly or annual post-earnings review and needs an actual / consensus / prior variance table, revenue and margin decomposition, or balance-sheet and cash-flow focus. Triggers on "\u8D22\u62A5\u70B9\u8BC4", "\u5B63\u62A5\u70B9\u8BC4", "\u5E74\u62A5\u70B9\u8BC4", "\u4E1A\u7EE9\u5206\u6790". Not for a single announcement lookup.'}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze(["earnings-preview","earnings-call-analysis","china-earnings-preview","china-variance-commentary","financial-report-analyst","10k-digest","china-break-trace"]),canonicalFor:Object.freeze(["a-share/post-event/earnings-note"])}),"china-earnings-preview":Object.freeze({market:Object.freeze(["a-share"]),stage:"pre-event",methods:Object.freeze(["earnings","risk"]),roles:Object.freeze(["data_junior","main"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u5728\u4E00\u4EFD A \u80A1\u8D22\u62A5\u516C\u5E03\u524D\uFF0C\u8981\u6C42\u5386\u53F2\u57FA\u7EBF\u3001\u8981\u76EF\u7684\u4E09\u5230\u4E94\u4E2A\u6307\u6807\u3001\u4E50\u89C2 / \u57FA\u51C6 / \u60B2\u89C2\u4E09\u6863\u60C5\u666F\u4E0E\u89E6\u53D1\u6761\u4EF6\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8D22\u62A5\u524D\u77BB\u3001\u4E1A\u7EE9\u9884\u544A\u3001\u5FEB\u62A5\u3001\u524D\u77BB\u3002",en:'Use when the user asks for an A-share pre-earnings frame: historical baseline, three to five metrics to watch, and bull / base / bear scenarios with triggers. Triggers on "\u8D22\u62A5\u524D\u77BB", "\u4E1A\u7EE9\u9884\u544A", "\u5FEB\u62A5".'}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze(["earnings-preview","earnings-call-analysis","china-earnings-analysis","china-variance-commentary","financial-report-analyst","10k-digest","china-break-trace"]),canonicalFor:Object.freeze(["a-share/pre-event/earnings-preview"])}),"china-comps-analysis":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["valuation"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309 A \u80A1\u53E3\u5F84\u642D\u540C\u4E1A\u500D\u6570\u8868\uFF0C\u6BD4\u8F83 P/E\u3001P/B\u3001EV/EBITDA \u4E0E\u6EA2\u4EF7\u6298\u4EF7\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u53EF\u6BD4\u516C\u53F8\u3001\u500D\u6570\u3001P/E\u3001EV/EBITDA\u3001A \u80A1\u3002",en:"Use when the task matches this method: builds a peer multiple table on A-share conventions: sector grouping with size, growth and profitability screens, dynamic / static / TTM P/E, P/B and EV/EBITDA, premium and discount explanations, and a resulting valuation range. Triggers on A-Share Comparable Multiples, A-share, Valuation, Competition."}),requires:Object.freeze(["financial_statements","peer_data","price_history"]),overlaps:Object.freeze(["stock-valuation","company-valuation","china-dcf","valuation-investment-strategy","stock-eval","buffett-investment-framework","peter-lynch-skill"]),canonicalFor:Object.freeze(["a-share/valuation/comps"])}),"china-dcf":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["valuation","financial-health"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u7528\u4E2D\u56FD\u8D22\u62A5\u53E3\u5F84\u8DD1 DCF\uFF1A\u5341\u5E74\u671F\u56FD\u503A\u3001A \u80A1\u80A1\u6743\u98CE\u9669\u6EA2\u4EF7\u300125% / 15% \u7A0E\u7387\u4E0E\u672C\u5E01\u7EC8\u503C\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AA \u80A1 DCF\u3001WACC\u3001\u654F\u611F\u6027\u3001\u7EC8\u503C\u3002",en:"Use when the task matches this method: runs a DCF on Chinese conventions: a 10-year government bond yield as the risk-free rate, A-share equity risk premium, 25% tax (15% for \u9AD8\u65B0\u6280\u672F\u4F01\u4E1A), local-currency terminal growth, then WACC and sensitivities. Triggers on A-Share DCF Conventions, A-share, Valuation, Cash flow."}),requires:Object.freeze(["financial_statements","macro"]),overlaps:Object.freeze(["stock-valuation","company-valuation","china-comps-analysis","valuation-investment-strategy","stock-eval","buffett-investment-framework","peter-lynch-skill"]),canonicalFor:Object.freeze(["a-share/valuation/dcf"])}),"china-sector-overview":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["macro","evidence"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u753B A \u80A1\u884C\u4E1A\u5168\u666F\uFF1A\u5E02\u573A\u89C4\u6A21\u3001\u96C6\u4E2D\u5EA6\u3001\u653F\u7B56\u6846\u67B6\u3001\u7ADE\u4E89\u683C\u5C40\u4E0E\u5173\u952E KPI \u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AA \u80A1\u884C\u4E1A\u3001\u5E02\u573A\u89C4\u6A21\u3001\u96C6\u4E2D\u5EA6\u3001\u653F\u7B56\u3001KPI\u3002",en:"Use when the task matches this method: maps an A-share industry: market size and concentration, the policy and regulatory frame, competitive structure with sector-specific KPIs (\u6279\u4EF7, \u88C5\u673A\u91CF, NIM and the like), then themes and valuation context. Triggers on A-Share Sector Landscape, A-share, Macro & industry, Competition, Business analysis."}),requires:Object.freeze(["industry_data","filings","macro"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"china-catalyst-calendar":Object.freeze({market:Object.freeze(["a-share"]),stage:"monitoring",methods:Object.freeze(["earnings","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A A \u80A1\u62AB\u9732\u4E0E\u4E8B\u4EF6\u6309\u65F6\u95F4\u6392\u6210\u6CE8\u610F\u529B\u65E5\u5386\uFF1A\u8D22\u62A5\u3001\u9884\u544A\u3001\u80A1\u4E1C\u5927\u4F1A\u3001\u89E3\u7981\u3001\u5206\u7EA2\u56DE\u8D2D\u4E0E\u653F\u7B56\u4F1A\u8BAE\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AA \u80A1\u50AC\u5316\u5242\u3001\u65E5\u5386\u3001\u89E3\u7981\u3001\u62AB\u9732\u3002",en:"Use when the task matches this method: lays A-share disclosures and events out as an attention calendar: earnings and \u4E1A\u7EE9\u9884\u544A, shareholder meetings, lockup expiries, dividends and buybacks, policy and industry events, flagging names hanging on the same event chain. Triggers on A-Share Catalyst Calendar, A-share, Monitoring, Macro & industry, Earnings."}),requires:Object.freeze(["filings","macro"]),overlaps:Object.freeze(["catalyst-calendar","catalyst-map","risk-warning-catalysts","thesis-tracker","china-thesis-tracker"]),canonicalFor:Object.freeze(["a-share/monitoring/catalysts"])}),"china-break-trace":Object.freeze({market:Object.freeze(["a-share"]),stage:"post-event",methods:Object.freeze(["accounting","evidence","risk"]),roles:Object.freeze(["data_junior","web_retriever"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5BF9 A \u80A1\u8D22\u62A5\u505A\u53D6\u8BC1\u5F0F\u6838\u67E5\uFF1A\u79D1\u76EE\u52FE\u7A3D\u3001\u5229\u6DA6\u4E0E\u73B0\u91D1\u6D41\u80CC\u79BB\u3001\u5E94\u6536\u5B58\u8D27\u5F02\u5E38\u3001\u5BA1\u8BA1\u610F\u89C1\u4E0E\u95EE\u8BE2\u51FD\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8D22\u52A1\u6838\u67E5\u3001\u52FE\u7A3D\u3001\u73B0\u91D1\u6D41\u80CC\u79BB\u3001\u95EE\u8BE2\u51FD\u3002",en:"Use when the task matches this method: works through A-share statements forensically: line-item tie-outs, the gap between earnings and cash flow, receivable and inventory anomalies, working-capital behaviour, then what auditor opinions, exchange inquiries and penalties signal. Triggers on A-Share Forensic Review, A-share, Risk, Financial health, Verification."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze(["earnings-preview","earnings-call-analysis","china-earnings-preview","china-earnings-analysis","china-variance-commentary","financial-report-analyst","10k-digest","financial-health","forensic-accounting","result-validator","fact-check","evidence-gap-check"]),canonicalFor:Object.freeze(["a-share/quality/forensic"])}),"china-variance-commentary":Object.freeze({market:Object.freeze(["a-share"]),stage:"post-event",methods:Object.freeze(["earnings","evidence"]),roles:Object.freeze(["main","data_junior"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A A \u80A1\u4E1A\u7EE9\u5DEE\u5F02\u5199\u6210\u53EF\u8BFB\u7684\u4E2D\u6587\uFF1A\u8D85\u9884\u671F / \u4F4E\u4E8E\u9884\u671F\u5206\u7C7B\u3001\u9A71\u52A8\u5F52\u56E0\u3001\u53E3\u5F84\u4E0E\u5355\u4F4D\u4E00\u81F4\u6027\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4E1A\u7EE9\u5DEE\u5F02\u3001\u8D85\u9884\u671F\u3001\u5F52\u56E0\u3001\u53E3\u5F84\u3002",en:"Use when the task matches this method: turns variances into readable Chinese commentary: how to classify beat / miss / in-line, where to attribute the driver, how to keep \u53E3\u5F84 and units consistent, and how to say what the change actually means. Triggers on A-Share Variance Commentary, A-share, Earnings, Verification."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze(["earnings-preview","earnings-call-analysis","china-earnings-preview","china-earnings-analysis","financial-report-analyst","10k-digest","china-break-trace"]),canonicalFor:Object.freeze(["a-share/post-event/variance-paragraph"])}),"china-initiating-coverage":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["valuation","financial-health","evidence"]),roles:Object.freeze(["main","data_junior"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309\u5238\u5546\u7814\u7A76\u6240\u4F53\u4F8B\u642D\u4E00\u4EFD A \u80A1\u9996\u6B21\u8986\u76D6\uFF1A\u516C\u53F8\u884C\u4E1A\u3001\u4E09\u8868\u3001\u4F30\u503C\u3001\u56FE\u8868\u6E05\u5355\u4E0E\u62A5\u544A\u9AA8\u67B6\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u9996\u6B21\u8986\u76D6\u3001\u6DF1\u5EA6\u62A5\u544A\u3001\u4E09\u8868\u3001\u4F30\u503C\u3001\u76EE\u6807\u4EF7\u3002",en:"Use when the task matches this method: assembles an initiation report in Chinese sell-side form: company and industry analysis, three-statement modelling, valuation and multiple ranges, the exhibit list and the report skeleton, through to the rating and target-price section. Triggers on A-Share Initiation Report, A-share, Valuation, Business analysis, Filings."}),requires:Object.freeze(["financial_statements","filings","peer_data"]),overlaps:Object.freeze(["buffett-investment-framework","peter-lynch-skill","stock-eval","stock-screener"]),canonicalFor:Object.freeze(["a-share/research/initiation"])}),"china-morning-note":Object.freeze({market:Object.freeze(["a-share"]),stage:"monitoring",methods:Object.freeze(["macro","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309 A \u80A1\u5356\u65B9\u6668\u4F1A\u8282\u594F\u5199\u4E00\u4EFD\u5F53\u65E5\u7B56\u7565\uFF1A\u9694\u591C\u5916\u76D8\u3001\u76D8\u524D\u60C5\u7EEA\u3001\u89E3\u7981\u62AB\u9732\u4E8B\u4EF6\u4E0E\u76EF\u76D8\u8981\u70B9\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u6668\u4F1A\u3001\u76D8\u524D\u3001\u9694\u591C\u3001\u76EF\u76D8\u3002",en:"Use when the task matches this method: writes the pre-open desk note on Chinese sell-side timing (07:00\u201308:30): overnight and external markets, pre-market sentiment, today\u2019s unlock and disclosure events, what to watch intraday, distilled into 2\u20134 ideas for the session. Triggers on A-Share Morning Note, A-share, Monitoring, Portfolio."}),requires:Object.freeze(["macro","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"china-thesis-tracker":Object.freeze({market:Object.freeze(["a-share"]),stage:"monitoring",methods:Object.freeze(["evidence","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u4E3A A \u80A1\u6301\u4ED3\u4E0E\u81EA\u9009\u9010\u53EA\u7EF4\u62A4\u6295\u8D44\u903B\u8F91\u3001\u8DDF\u8E2A\u6570\u636E\u70B9\u4E0E\u50AC\u5316\u5242\uFF0C\u5E76\u66F4\u65B0\u6709\u6548\u6027\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AA \u80A1\u8BBA\u70B9\u3001\u6301\u4ED3\u8DDF\u8E2A\u3001\u50AC\u5316\u5242\u3001\u6709\u6548\u6027\u3002",en:"Use when the task matches this method: keeps a live thesis per holding and watchlist name: states the premises, tracks the key data points and catalysts, updates validity as new filings land, and argues maintain / add / reduce / exit with a target price and a stop. Triggers on A-Share Thesis Tracker, A-share, Monitoring, Portfolio."}),requires:Object.freeze(["portfolio","filings","price_history"]),overlaps:Object.freeze(["catalyst-calendar","catalyst-map","china-catalyst-calendar","risk-warning-catalysts","thesis-tracker"]),canonicalFor:Object.freeze([])}),"china-idea-generation":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["screening","technical"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309\u91CF\u5316\u7B5B\u9009\u3001\u4E3B\u9898\u7EBF\u7D22\u4E0E\u5F62\u6001\u8BC6\u522B\u7CFB\u7EDF\u6027\u5730\u627E A \u80A1\u591A\u7A7A\u6807\u7684\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AA \u80A1\u9009\u80A1\u3001\u7B5B\u9009\u3001\u4E3B\u9898\u3001\u5F62\u6001\u3001\u591A\u7A7A\u3002",en:"Use when the task matches this method: surfaces A-share names along three rails \u2014 quantitative screens, thematic leads and pattern recognition \u2014 producing long and short lists with, per name, the catalyst, why now, a conviction tier and the next check. Triggers on A-Share Idea Screening, A-share, Technicals, Portfolio."}),requires:Object.freeze(["price_history","financial_statements"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"company-valuation":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["valuation","financial-health"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u7528 DCF\u3001\u540C\u4E1A\u500D\u6570\u4E0E\u5148\u4F8B\u4EA4\u6613\u4F30\u4F01\u4E1A\u4EF7\u503C\uFF0C\u5E76\u628A EV \u6865\u5230\u80A1\u6743\u4EF7\u503C\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4F01\u4E1A\u4EF7\u503C\u3001\u80A1\u6743\u4EF7\u503C\u6865\u3001DCF\u3001\u5148\u4F8B\u4EA4\u6613\u3002",en:"Use when the task matches this method: triangulates enterprise and equity value: a DCF on normalized earnings, cross-checked against peer multiples and precedent deal multiples, then an explicit enterprise-to-equity bridge that itemizes debt-like charges, minority interests, associates and any pension deficit. Triggers on Company Valuation, Valuation, Cash flow, US equity."}),requires:Object.freeze(["financial_statements","peer_data","price_history"]),overlaps:Object.freeze(["stock-valuation","china-dcf","china-comps-analysis","valuation-investment-strategy","stock-eval","buffett-investment-framework","peter-lynch-skill"]),canonicalFor:Object.freeze(["us/valuation/dcf"])}),"wacc-computation":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["valuation","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u62C6\u89E3 CAPM \u8F93\u5165\u3001\u53EF\u6BD4 \u03B2 \u53BB\u6760\u6746 / \u518D\u6760\u6746\u4E0E\u7A0E\u540E\u503A\u52A1\u6210\u672C\uFF0C\u7B97 WACC \u4E0E\u654F\u611F\u6027\u533A\u95F4\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AWACC\u3001CAPM\u3001\u03B2\u3001\u80A1\u6743\u98CE\u9669\u6EA2\u4EF7\u3001\u8D44\u672C\u6210\u672C\u3002",en:"Use when the task matches this method: builds the discount rate piece by piece \u2014 CAPM inputs (risk-free rate, beta, equity risk premium, size and country premia), unlevering and relevering peer betas on the target's capital structure, market-value weights on the after-tax cost of debt \u2014 and ends on a beta-by-premium sensitivity range. Triggers on WACC Computation, Valuation, Risk, US equity."}),requires:Object.freeze(["financial_statements","price_history","macro"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze(["us/valuation/wacc"])}),"three-statement-modeling":Object.freeze({market:Object.freeze(["global"]),stage:"research",methods:Object.freeze(["accounting","financial-health"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u642D\u4E00\u5F20\u8054\u52A8\u7684\u4E09\u8868\u6A21\u578B\uFF0C\u5E76\u7528\u6BCF\u671F\u5E73\u8861\u68C0\u67E5\u70B9\u540D\u4E0D\u5E73\u7684\u9879\u76EE\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4E09\u8868\u6A21\u578B\u3001\u52FE\u7A3D\u3001\u8D44\u4EA7\u8D1F\u503A\u8868\u3001\u73B0\u91D1\u6D41\u3001\u5E73\u8861\u68C0\u67E5\u3002",en:"Use when the task matches this method: assembles a linked three-statement model in a fixed order \u2014 one place for drivers, an income statement built from revenue, PP&E / working-capital / debt schedules driving the balance sheet, a cash flow statement derived entirely from the deltas \u2014 with a balance check on every period that names the ones that do not tie. Triggers on Three-Statement Modeling, Financial health, Cash flow, Business analysis."}),requires:Object.freeze(["financial_statements"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"credit-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["risk","financial-health"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5224\u65AD\u4E00\u5BB6\u516C\u53F8\u80FD\u5426\u7A7F\u8FC7\u5468\u671F\u8FD8\u503A\uFF0C\u7B97\u6760\u6746\u3001\u5229\u606F\u8986\u76D6\u3001DSCR\u3001FCF / \u503A\u52A1\u4E0E\u6D41\u52A8\u6027\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u507F\u503A\u80FD\u529B\u3001DSCR\u3001\u6760\u6746\u3001\u4FE1\u7528\u5206\u6790\u3002",en:"Use when the task matches this method: answers one question: can this borrower service and repay through the cycle. Five ratio families \u2014 leverage, interest coverage, DSCR, free cash flow to debt, liquidity \u2014 each on a normalized and a stressed basis, then collateral haircuts, recovery ranking, covenant headroom and who actually stands behind it. Triggers on Credit Analysis, Risk, Financial health, US equity."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"ecl-computation":Object.freeze({market:Object.freeze(["global"]),stage:"research",methods:Object.freeze(["accounting","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309 IFRS 9 \u4E09\u9636\u6BB5\u62C6\u5206\u9884\u671F\u4FE1\u7528\u635F\u5931\uFF1A\u9636\u6BB5\u8FC1\u5F99\u3001PD / LGD / EAD\u3001\u8D26\u9F84\u77E9\u9635\u4E0E\u60C5\u666F\u52A0\u6743\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u9884\u671F\u4FE1\u7528\u635F\u5931\u3001IFRS 9\u3001PD\u3001LGD\u3001\u51CF\u503C\u3002",en:"Use when the task matches this method: takes the IFRS 9 impairment logic apart: stage assignment and migration, the PD / LGD / EAD parameters, the simplified provision matrix over aging buckets, macro scenario weighting and coverage ratios, then one more question \u2014 what changes if the downside scenario gains ten points of probability. Triggers on Expected Credit Loss, Risk, Financial health, Filings."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"insurance-reserving":Object.freeze({market:Object.freeze(["global"]),stage:"research",methods:Object.freeze(["accounting","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u770B\u4FDD\u9669\u51C6\u5907\u91D1\u94FE\u6761\uFF1A\u8D54\u6B3E\u53D1\u5C55\u4E09\u89D2\u3001\u94FE\u5F0F\u6CD5\u3001Bornhuetter-Ferguson\u3001IBNR \u4E0E\u7EFC\u5408\u6210\u672C\u7387\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4FDD\u9669\u51C6\u5907\u91D1\u3001IBNR\u3001\u53D1\u5C55\u4E09\u89D2\u3001\u7EFC\u5408\u6210\u672C\u7387\u3002",en:'Use when the task matches this method: runs the reserve chain end to end: loss development triangles, age-to-age factors, chain ladder and Bornhuetter-Ferguson, IBNR, then the combined ratio \u2014 keeping "are unpaid claims estimated well" and "does this book actually earn" as two separate questions. Triggers on Insurance Reserving, Risk, Financial health.'}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"banking-compliance":Object.freeze({market:Object.freeze(["global"]),stage:"research",methods:Object.freeze(["risk","financial-health"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u770B\u94F6\u884C\u8D44\u672C\u4E0E\u6D41\u52A8\u6027\u6307\u6807\uFF1ACET1\u3001RWA\u3001\u6760\u6746\u7387\u3001LCR / NSFR \u4E0E\u538B\u529B\u5F62\u72B6\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u94F6\u884C\u8D44\u672C\u3001CET1\u3001RWA\u3001LCR\u3001NSFR\u3002",en:"Use when the task matches this method: the hardest numbers on a bank name: CET1 / Tier 1 / total capital adequacy, risk-weighted assets and their weight structure, the leverage ratio, LCR and NSFR, plus a pass that asks whether capital still holds once defaults arrive. Triggers on Bank Capital Ratios, Risk, Financial health, Macro & industry."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"forensic-accounting":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["accounting","evidence"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u7528 Benford\u3001\u6574\u6570\u91CD\u590D\u91D1\u989D\u3001\u8D44\u91D1\u5FAA\u73AF\u4E0E\u4F9B\u5E94\u5546\u5173\u8054\u65B9\u91CD\u5408\u4F5C\u53D6\u8BC1\u5F0F\u6392\u67E5\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u53D6\u8BC1\u4F1A\u8BA1\u3001Benford\u3001\u8D44\u91D1\u5FAA\u73AF\u3001\u5173\u8054\u65B9\u3002",en:"Use when the task matches this method: screens a ledger forensically: Benford first-digit tests, round-number and repeated-amount patterns, round-trip flows, vendor and related-party overlaps \u2014 written up as an evidence chain that can survive review and cross-examination. Triggers on Forensic Ledger Screening, Verification, Risk, Financial health."}),requires:Object.freeze(["financial_statements","filings","user_input"]),overlaps:Object.freeze(["financial-health","financial-report-analyst","china-break-trace","result-validator","fact-check","evidence-gap-check"]),canonicalFor:Object.freeze([])}),"cross-market-listing-choice":Object.freeze({market:Object.freeze(["a-share","us-stock"]),stage:"review",methods:Object.freeze(["portfolio","tax","risk"]),roles:Object.freeze(["main","data_junior"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u540C\u4E00\u5BB6\u516C\u53F8\u6709 A/H\u3001ADR/\u6E2F\u80A1\u591A\u6761\u4E0A\u5E02\u7EBF\uFF0C\u7528\u6237\u8981\u9009\u4E00\u6761\u6301\u6709\u3001\u52A0\u4ED3\u6216\u89C2\u5BDF\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AA/H \u6EA2\u4EF7\u3001ADR\u3001\u9009\u7EBF\u3001\u6C47\u7387\u3001\u80A1\u606F\u7A0E\u3002",en:"Use when the task matches this method: picks which listing of a single issuer to hold, add, or watch: A/H premium and currency/dividend withholding, liquidity and channel access, ADR conversion ratios and filing paths. The company is researched once \u2014 A and H are two lines of the same business, so what changes is spread, tax, currency and whether you can reach it. Triggers on Cross-Market Listing Choice, A-share, US equity, Portfolio, Risk."}),requires:Object.freeze(["price_history","fx","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])})})});var le={};M(le,{SELECTED_SKILL_FILTER_ALL:()=>d,filterSelectedSkills:()=>$e,selectedSkillFacetCounts:()=>Je,selectedSkillPresetTotals:()=>Ge,selectedSkillRoles:()=>I,selectedSkillTraitOrder:()=>Ve});function I(t){return(O[t.name]?.roles??[]).map(e=>L[e]??e)}function Ve(t=j){let e=new Map;for(let s of t)for(let r of s.tags)e.set(r,(e.get(r)??0)+1);let a=[...e.keys()].sort((s,r)=>e.get(r)-e.get(s));return[d,...a]}function Ge(t=j){let e=new Map(H.map(a=>[a,0]));for(let a of t)for(let s of new Set(I(a)))e.has(s)&&e.set(s,e.get(s)+1);return e}function $e({trait:t=d,preset:e=d,catalog:a=j}={}){return a.filter(s=>re(s,t)&&oe(s,e))}function Je({trait:t=d,preset:e=d,catalog:a=j}={}){let s=new Map([[d,0]]);for(let l of a.filter(o=>oe(o,e))){s.set(d,s.get(d)+1);for(let o of l.tags)s.set(o,(s.get(o)??0)+1)}let r=new Map([[d,0]]);for(let l of a.filter(o=>re(o,t))){r.set(d,r.get(d)+1);for(let o of new Set(I(l)))r.set(o,(r.get(o)??0)+1)}return{traits:s,presets:r}}var d,re,oe,ce=P(()=>{"use strict";K();V();d="all";re=(t,e)=>e===d||t.tags.includes(e),oe=(t,e)=>e===d||I(t).includes(e)});var{createElement:i,useEffect:Y,useRef:Qe,useState:w}=require("react"),{createPortal:Ye}=require("react-dom"),{SettingsForm:Xe,SettingsSecretField:Ze,SettingsFormModel:et,SegmentedControl:tt,Pill:he,Switch:X,Tag:de,Modal:at,IconRightUpOutlineRegular:ge}=require("@deepseek-ai/dsh-client-ui-primitives"),{SELECTED_SKILL_CATALOG:Z,SELECTED_SKILL_TAG_LABELS:be}=(K(),B(ie)),{SELECTED_SKILL_FILTER_ALL:v,filterSelectedSkills:it,selectedSkillFacetCounts:st,selectedSkillPresetTotals:nt,selectedSkillRoles:rt,selectedSkillTraitOrder:ot}=(ce(),B(le)),{SELECTED_SKILL_PRESETS:lt,SELECTED_SKILL_PRESET_ORDER:ct,SELECTED_SKILL_ROUTING:ht}=(V(),B(ne)),G="capital-config",x="@v587d/capital-generation",$="settings.capital",ue="plugins.detail.badge",dt="https://github.com/v587d/capital-generation",ut=`https://www.npmjs.com/package/${x}`,pt="FUYAO_API_KEY",mt="FTSHARE_API_KEY",ft="ANYSEARCH_API_KEY",gt="WIND_API_KEY",bt="PADDLE_OCR_TOKEN",J="capital-config-tabs",kt="/capital-skills",T={fuyao:"https://fuyao.aicubes.cn/docs/",ftshare:"https://market.ft.tech/gateway/doc/p/pb8eizu3",anysearch:"https://www.anysearch.com/docs/auth",wind:"https://market.windalice.com/",paddleocr:"https://aistudio.baidu.com/paddleocr"},k=["fuyao","ftshare","anysearch","wind","paddleocr"],pe=["tickMs","runTimeoutMinutes","idleTimeoutMinutes","maxSteps","maxToolCalls","inAppNotifications"],q={tickMs:6e4,runTimeoutMinutes:30,idleTimeoutMinutes:5,maxSteps:300,maxToolCalls:1200,inAppNotifications:!0},me=Z.map(({key:t})=>t),yt=ot(),vt=nt(),S={fuyao:pt,ftshare:mt,anysearch:ft,wind:gt,paddleocr:bt},wt=()=>Object.fromEntries(k.map(t=>[t,{ref:S[t],configured:!1,writable:!0}])),zt={tabsLabel:"\u914D\u7F6E\u5206\u533A",title:"\u6570\u636E\u6E90",titleUnsaved:"\u6570\u636E\u6E90 \u672A\u4FDD\u5B58",componentsTitle:"\u5305\u542B\u7684\u7EC4\u4EF6",componentsHint:"\u7EC4\u4EF6\u6E05\u5355\u7531 DSH \u7ED8\u5236\uFF0C\u663E\u793A\u5728\u4E0B\u65B9\u3002",fuyaoLabel:"Fuyao API Key",fuyaoHint:"\u540C\u82B1\u987A Fuyao \u7ED3\u6784\u5316\u6570\u636E\u63A5\u53E3\u3002\u4FDD\u5B58\u540E\u65B0\u81EA\u52A8\u6A21\u5F0F\u4F1A\u8BDD\u751F\u6548\u3002",ftshareLabel:"FTShare API Key",ftshareHint:"\u975E\u51F8\u79D1\u6280 FTShare \u7ED3\u6784\u5316\u6570\u636E\u63A5\u53E3\uFF08\u514D\u8D39\u6863\uFF09\u3002\u4FDD\u5B58\u540E\u65B0\u81EA\u52A8\u6A21\u5F0F\u4F1A\u8BDD\u751F\u6548\u3002",anysearchLabel:"AnySearch API Key",anysearchHint:"AnySearch \u7F51\u9875\u641C\u7D22 / \u63D0\u53D6\u63A5\u53E3\u3002\u4FDD\u5B58\u540E\u65B0\u81EA\u52A8\u6A21\u5F0F\u4F1A\u8BDD\u751F\u6548\u3002",localFetchLabel:"\u5141\u8BB8\u542F\u52A8\u672C\u5730\u63D0\u53D6\u7F51\u9875\u5185\u5BB9",localFetchHint:"\u5F00\u542F\u540E\u672C\u5730\u6293\u53D6\u515C\u5E95\uFF08\u56DE\u6267\u6765\u6E90 local-http\uFF09\u3002\u4FDD\u5B58\u540E\u65B0\u81EA\u52A8\u6A21\u5F0F\u4F1A\u8BDD\u751F\u6548\u3002",automationTitle:"\u6295\u7814\u81EA\u52A8\u5316",automationHint:"\u8C03\u5EA6\u5668\u4E0E\u65E0\u4EBA\u503C\u5B88\u8FD0\u884C\u7684\u9ED8\u8BA4\u4E0A\u9650\uFF1B\u4EFB\u52A1\u8BE6\u60C5\u91CC\u7684\u8BBE\u7F6E\u4F18\u5148\u3002\u6539\u52A8\u5728\u4E0B\u4E00\u4E2A tick \u751F\u6548\u3002",automationTick:"\u8C03\u5EA6\u95F4\u9694\uFF08\u6BEB\u79D2\uFF09",automationRunTimeout:"wall-clock \u4E0A\u9650\uFF08\u5206\u949F\uFF09",automationIdleTimeout:"\u7A7A\u95F2\u8D85\u65F6\uFF08\u5206\u949F\uFF09",automationMaxSteps:"\u6700\u5927\u6B65\u9AA4",automationMaxToolCalls:"\u6700\u5927\u5DE5\u5177\u8C03\u7528",automationInApp:"\u5199\u5165\u5E94\u7528\u5185\u901A\u77E5",windLabel:"Wind Alice API Key",windHint:"Wind \u91D1\u878D\u4FE1\u62AB\u7C7B\u6587\u6863\u68C0\u7D22\u63A5\u53E3\u3002\u4FDD\u5B58\u540E\u65B0\u81EA\u52A8\u6A21\u5F0F\u4F1A\u8BDD\u751F\u6548\u3002",paddleocrLabel:"PaddleOCR \u6587\u6863\u89E3\u6790 Token",paddleocrHint:"\u914D\u7F6E Token \u540E\u81EA\u52A8\u89E3\u6790 PDF\u3001\u56FE\u7247\u3002\u4FDD\u5B58\u540E\u65B0\u81EA\u52A8\u6A21\u5F0F\u4F1A\u8BDD\u751F\u6548\u3002",selectedSkillsTitle:"\u7CBE\u9009 Skills",selectedSkillsModeLabel:"\u667A\u80FD\u88C5\u8F7D Skills",selectedSkillsModeHint:"\u5F00\u542F\u540E\uFF0C\u7531\u5927\u6A21\u578B\u6839\u636E\u7528\u6237\u63D0\u95EE\uFF0C\u667A\u80FD\u88C5\u8F7D\u5408\u9002\u7684\u7CBE\u9009\u300CSkills\u300D\u3002",selectedSkillsFilterLabel:"\u7B5B\u9009\u7CBE\u9009 Skills",selectedSkillsTraitGroup:"Skill \u7279\u70B9",selectedSkillsPresetGroup:"\u9002\u7528\u9884\u8BBE",selectedSkillsAll:"\u5168\u90E8",selectedSkillsEmpty:"\u6CA1\u6709\u7B26\u5408\u5F53\u524D\u7B5B\u9009\u6761\u4EF6\u7684 Skill\u3002",selectedSkillsWhen:"\u4F55\u65F6\u4F7F\u7528",selectedSkillsKeywords:"\u5173\u952E\u8BCD",selectedSkillsOpenDetail:"\u67E5\u770B Skill \u539F\u6587",selectedSkillsPresetUnavailable:"\u8BE5\u9884\u8BBE\u4E0D\u52A0\u8F7D\u7CBE\u9009 Skills",selectedSkillsDetailClose:"\u5173\u95ED",selectedSkillsDocLoading:"\u539F\u6587\u8BFB\u53D6\u4E2D\u2026",selectedSkillsDocFailed:"\u539F\u6587\u8BFB\u4E0D\u5230\uFF1A\u8FD9\u4EFD\u5FEB\u7167\u6CA1\u968F\u5305\u843D\u5730\uFF0C\u6216\u6682\u65F6\u8BFB\u4E0D\u51FA\u6765\u3002",selectedSkillsDocStale:"\u539F\u6587\u8BFB\u4E0D\u5230\uFF1A\u5BBF\u4E3B\u8FDB\u7A0B\u91CC\u8FD8\u6CA1\u6709\u8FD9\u6761\u8BFB\u539F\u6587\u7684\u901A\u9053\u3002\u5347\u7EA7\u63D2\u4EF6\u540E\u8981\u91CD\u542F DSH\uFF0C\u91CD\u542F\u524D\u5237\u65B0\u9875\u9762\u4E5F\u6CA1\u6709\u7528\u3002",selectedSkillsOpenRepo:"\u6253\u5F00\u4E0A\u6E38\u4ED3\u5E93",openDocs:"\u5B98\u65B9\u6587\u6863",configured:"\u5DF2\u914D\u7F6E\u5BC6\u94A5\u3002",notConfigured:"\u672A\u914D\u7F6E\u5BC6\u94A5\u3002",save:"\u4FDD\u5B58",saving:"\u4FDD\u5B58\u4E2D\u2026",readOnly:"\u672C\u90E8\u7F72\u7684\u8BBE\u7F6E\u4E3A\u53EA\u8BFB\u3002",saveFailed:"\u672C\u90E8\u7F72\u6CA1\u6709\u63A5\u53D7\u8FD9\u4E9B\u503C\uFF0C\u5DF2\u4FDD\u7559\u4F9B\u4F60\u4FEE\u6539\u3002",unavailable:"\u8BE5\u63D2\u4EF6\u5F53\u524D\u672A\u52A0\u8F7D\uFF0C\u6682\u65F6\u65E0\u6CD5\u914D\u7F6E\u3002",githubLabel:"GitHub \u4ED3\u5E93",npmLabel:"npm \u5305\u9875\u9762"},jt={tabsLabel:"Settings sections",title:"Data Sources",titleUnsaved:"Data Sources unsaved",componentsTitle:"Components",componentsHint:"The component list is drawn by DSH and appears below.",fuyaoLabel:"Fuyao API Key",fuyaoHint:"Tonghuashun Fuyao structured-data API. Takes effect in new Auto mode sessions.",ftshareLabel:"FTShare API Key",ftshareHint:"Feikon FTShare structured-data API (free tier). Takes effect in new Auto mode sessions.",anysearchLabel:"AnySearch API Key",anysearchHint:"AnySearch web search / extract interface. Takes effect in new Auto mode sessions.",localFetchLabel:"Allow local web page extraction",localFetchHint:"When on, a failed fetch falls back to local direct fetching (receipt via: local-http). Takes effect in new Auto mode sessions.",automationTitle:"Research automation",automationHint:"Scheduler and unattended-run defaults; per-task limits win. Changes apply on the next tick.",automationTick:"Tick interval (ms)",automationRunTimeout:"Wall-clock limit (minutes)",automationIdleTimeout:"Idle timeout (minutes)",automationMaxSteps:"Max steps",automationMaxToolCalls:"Max tool calls",automationInApp:"Write in-app notifications",windLabel:"Wind Alice API Key",windHint:"Wind financial disclosure document retrieval interface. Takes effect in new Auto mode sessions.",paddleocrLabel:"PaddleOCR document token",paddleocrHint:"Configure the token to parse PDFs and images automatically. Takes effect in new Auto mode sessions.",selectedSkillsTitle:"Selected Skills",selectedSkillsModeLabel:"Auto-load Skills",selectedSkillsModeHint:"When on, the model picks the relevant selected Skills for each question.",selectedSkillsFilterLabel:"Filter selected Skills",selectedSkillsTraitGroup:"Skill traits",selectedSkillsPresetGroup:"Preset",selectedSkillsAll:"All",selectedSkillsEmpty:"No skills match the current filters.",selectedSkillsWhen:"Use when",selectedSkillsKeywords:"Keywords",selectedSkillsOpenDetail:"Open skill source",selectedSkillsPresetUnavailable:"This preset does not load selected Skills.",selectedSkillsDetailClose:"Close",selectedSkillsDocLoading:"Loading the source\u2026",selectedSkillsDocFailed:"The source could not be read: this snapshot is not in the installed package, or it cannot be opened right now.",selectedSkillsDocStale:"The source could not be read: this host process has no route for it yet. After upgrading the plugin, restart DSH \u2014 reloading the page alone will not help.",selectedSkillsOpenRepo:"Open upstream repository",openDocs:"Official docs",configured:"A key is configured.",notConfigured:"No key is configured.",save:"Save",saving:"Saving\u2026",readOnly:"This deployment stores settings read-only.",saveFailed:"The deployment did not accept these values; they were left for you to correct.",unavailable:"This plugin is not loaded, so it cannot be configured right now.",githubLabel:"GitHub repository",npmLabel:"npm package page"};function R(t,e){return typeof t=="string"&&t.length>0?t:e}function Ot(t,e){return e==="fuyao"?R(t.value?.fuyaoCredentialRef,S.fuyao):e==="ftshare"?R(t.value?.ftshareCredentialRef,S.ftshare):e==="wind"?R(t.value?.retriever?.windDocs?.credentialRef,S.wind):e==="paddleocr"?R(t.value?.retriever?.paddleOcr?.credentialRef,S.paddleocr):R(t.value?.retriever?.credentialRef,S.anysearch)}function St(){if(typeof document>"u"||document.querySelector("style[data-capital-config]"))return()=>{};let t=document.createElement("style");return t.dataset.capitalConfig="true",t.textContent=`
8
+ "use strict";var W=Object.defineProperty;var De=Object.getOwnPropertyDescriptor;var Me=Object.getOwnPropertyNames;var Pe=Object.prototype.hasOwnProperty;var K=(t,e,a)=>()=>{if(a)throw a[0];try{return t&&(e=t(t=0)),e}catch(s){throw a=[s],s}};var H=(t,e)=>{for(var a in e)W(t,a,{get:e[a],enumerable:!0})},Be=(t,e,a,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Me(e))!Pe.call(t,r)&&r!==a&&W(t,r,{get:()=>e[r],enumerable:!(s=De(e,r))||s.enumerable});return t};var V=t=>Be(W({},"__esModule",{value:!0}),t);var le={};H(le,{SELECTED_SKILL_CATALOG:()=>O,SELECTED_SKILL_SKILL_DIRS:()=>We,SELECTED_SKILL_TAGS:()=>G,SELECTED_SKILL_TAG_AXES:()=>Ke,SELECTED_SKILL_TAG_LABELS:()=>He});var We,O,Ke,G,He,$=K(()=>{"use strict";We=Object.freeze({"investment-skills":"skills","china-stock-research-skills":"skills",InvestSkill:"plugins/us-stock-analysis/skills","peter-lynch-skill":"skills","trading-skills":"skills","claude-for-financial-services-cn":"vertical-plugins/china-finance/skills",financeskills:"skills","quant-agent-skills":"skills"}),O=Object.freeze([{key:"buffettFramework",name:"buffett-investment-framework",label:{zh:"Buffett Investment Framework",en:"Buffett Investment Framework"},description:{zh:"\u4EE5\u8BC1\u636E\u4E3A\u57FA\u7840\u7684\u5546\u4E1A\u8D28\u91CF\u3001\u8D44\u672C\u914D\u7F6E\u3001\u4F30\u503C\u548C\u98CE\u9669\u5206\u6790\u6846\u67B6\u3002\u4E3B\u8981\u6E90\u4E8E\u7F8E\u80A1\u8BED\u5883\u3002",en:"Evidence-led business quality, capital allocation, valuation, and risk analysis. Primarily US-market oriented."},owner:"finterm-ai",repository:"investment-skills",status:"experimental",lastCommit:"2026-07-22",reviewBy:"2026-11-06",tags:["business-analysis","cash-flow","perspective","risk","valuation"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u4E0D\u80FD\u76F4\u63A5\u5F53\u4F5C A \u80A1\u89C4\u5219\u6216\u6295\u8D44\u5EFA\u8BAE\u3002",en:"Experimental; do not treat it as A-share rules or investment advice."}},{key:"financialHealth",name:"financial-health",label:{zh:"\u8D22\u52A1\u5065\u5EB7",en:"Financial Health"},description:{zh:"\u68C0\u67E5\u76C8\u5229\u8D28\u91CF\u3001\u73B0\u91D1\u8F6C\u6362\u3001\u8425\u8FD0\u8D44\u672C\u3001\u6760\u6746\u548C\u8D44\u4EA7\u8D1F\u503A\u8868\u98CE\u9669\u3002",en:"Checks earnings quality, cash conversion, working capital, leverage, and balance-sheet risk."},owner:"spikeHongg",repository:"china-stock-research-skills",status:"watchlist",lastCommit:"2026-03-09",reviewBy:"2026-11-06",tags:["a-share","cash-flow","financial-health","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u7EF4\u62A4\u8F83\u4E45\u672A\u66F4\u65B0\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u5185\u5BB9\u548C\u6765\u6E90\u3002",en:"Cold-start experiment; upstream has been quiet, so review content and sources before use."}},{key:"riskWarningCatalysts",name:"risk-warning-catalysts",label:{zh:"\u98CE\u9669\u4E0E\u50AC\u5316\u5242\u76D1\u63A7",en:"Risk Warning Catalysts"},description:{zh:"\u628A\u7814\u7A76\u7ED3\u8BBA\u8F6C\u6210\u5E26\u6765\u6E90\u3001\u9608\u503C\u548C\u590D\u67E5\u9891\u7387\u7684\u98CE\u9669\u4E0E\u50AC\u5316\u5242\u76D1\u63A7\u9879\u3002",en:"Turns research into source-backed risk and catalyst monitoring with thresholds and review cadence."},owner:"spikeHongg",repository:"china-stock-research-skills",status:"watchlist",lastCommit:"2026-03-09",reviewBy:"2026-11-06",tags:["a-share","monitoring","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0D\u8D1F\u8D23\u4F30\u503C\u6216\u4EA4\u6613\u51B3\u7B56\u3002",en:"Cold-start experiment; it does not make valuation or trading decisions."}},{key:"valuationInvestmentStrategy",name:"valuation-investment-strategy",label:{zh:"\u4F30\u503C\u4E0E\u60C5\u666F\u5206\u6790",en:"Valuation Investment Strategy"},description:{zh:"\u5728\u4E8B\u5B9E\u57FA\u7840\u5B8C\u6210\u540E\u6784\u5EFA\u5E26\u5047\u8BBE\u3001\u60C5\u666F\u548C\u5931\u6548\u6761\u4EF6\u7684\u4F30\u503C\u6846\u67B6\u3002",en:"Builds valuation scenarios with assumptions and invalidation conditions after the factual base is ready."},owner:"spikeHongg",repository:"china-stock-research-skills",status:"watchlist",lastCommit:"2026-03-09",reviewBy:"2026-11-06",tags:["a-share","risk","valuation"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u8F93\u51FA\u4E0D\u7B49\u4E8E\u4E70\u5356\u6216\u4ED3\u4F4D\u5EFA\u8BAE\u3002",en:"Cold-start experiment; output is not a buy, sell, or position-size recommendation."}},{key:"strategyBusinessTransition",name:"strategy-business-transition",label:{zh:"\u6218\u7565\u4E0E\u4E1A\u52A1\u8F6C\u578B",en:"Strategy Business Transition"},description:{zh:"\u68C0\u9A8C\u516C\u53F8\u6218\u7565\u53D9\u4E8B\u3001\u4E1A\u52A1\u8FC1\u79FB\u3001\u8D44\u672C\u914D\u7F6E\u548C\u8F6C\u578B\u91CC\u7A0B\u7891\u3002",en:"Tests strategy narratives, business migration, capital allocation, and transition milestones."},owner:"spikeHongg",repository:"china-stock-research-skills",status:"watchlist",lastCommit:"2026-03-09",reviewBy:"2026-11-06",tags:["a-share","strategy","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0D\u8D1F\u8D23\u4F30\u503C\u6216\u4EA4\u6613\u8BA1\u5212\u3002",en:"Cold-start experiment; it does not make valuation or trading plans."}},{key:"industryCompetitionMoat",name:"industry-competition-moat",label:{zh:"\u884C\u4E1A\u7ADE\u4E89\u4E0E\u62A4\u57CE\u6CB3",en:"Industry Competition Moat"},description:{zh:"\u5206\u6790\u884C\u4E1A\u7ED3\u6784\u3001\u7ADE\u4E89\u683C\u5C40\u3001\u4F9B\u9700\u548C\u516C\u53F8\u5DEE\u5F02\u5316\u662F\u5426\u53EF\u6301\u7EED\u3002",en:"Analyzes industry structure, competition, supply-demand, and sustainable differentiation."},owner:"spikeHongg",repository:"china-stock-research-skills",status:"watchlist",lastCommit:"2026-03-09",reviewBy:"2026-11-06",tags:["a-share","business-analysis","competition","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u884C\u4E1A\u5224\u65AD\u4ECD\u9700\u56DE\u5230\u516C\u5F00\u8BC1\u636E\u3002",en:"Cold-start experiment; industry conclusions still require public evidence."}},{key:"businessDecompositionOrderQuality",name:"business-decomposition-order-quality",label:{zh:"\u4E1A\u52A1\u62C6\u89E3\u4E0E\u8BA2\u5355\u8D28\u91CF",en:"Business Decomposition Order Quality"},description:{zh:"\u62C6\u89E3\u4EA7\u54C1\u3001\u5BA2\u6237\u3001\u9879\u76EE\u548C\u8BA2\u5355\uFF0C\u68C0\u67E5\u589E\u957F\u80FD\u5426\u8F6C\u5316\u4E3A\u6536\u5165\u548C\u73B0\u91D1\u3002",en:"Breaks down products, customers, projects, and orders to test conversion into revenue and cash."},owner:"spikeHongg",repository:"china-stock-research-skills",status:"watchlist",lastCommit:"2026-03-09",reviewBy:"2026-11-06",tags:["a-share","business-analysis","cash-flow","orders","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0D\u8D1F\u8D23\u6700\u7EC8\u4F30\u503C\u6216\u4E70\u5356\u5EFA\u8BAE\u3002",en:"Cold-start experiment; it does not make final valuation or trading recommendations."}},{key:"tenKDigest",name:"10k-digest",label:{zh:"\u5E74\u62A5\uFF0810-K\uFF09\u9010\u8282\u7CBE\u8BFB",en:"10-K Report Digest"},description:{zh:"\u9010\u8282\u7CBE\u8BFB\u7F8E\u80A1\u5E74\u62A5 10-K\uFF0C\u4EA7\u51FA\u6458\u8981\u3001\u5206\u8282\u8981\u70B9\u3001\u5173\u952E\u6307\u6807\u4E0E\u53EF\u6838\u5BF9\u7684\u51FA\u5904\u5F15\u7528\u3002",en:"Reads a 10-K section by section into an abstract, section summaries, key metrics and sourced references."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","filings","business-analysis"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u7AE0\u8282\u53E3\u5F84\u6309\u7F8E\u80A1 10-K \u5199\uFF0CA \u80A1\u5E74\u62A5\u7684\u62AB\u9732\u7ED3\u6784\u4E0D\u540C\uFF0C\u4E0D\u80FD\u76F4\u63A5\u5E73\u79FB\u3002",en:"Experimental; the section map follows US 10-K disclosure and does not transfer to A-share annual reports."}},{key:"bearCase",name:"bear-case",label:{zh:"\u7A7A\u5934\u89C6\u89D2\u7EA2\u961F\u53CD\u9A73",en:"Bear Case Red Team"},description:{zh:"\u9488\u5BF9\u4E00\u4E2A\u770B\u591A\u8BBA\u70B9\u523B\u610F\u6784\u5EFA\u6700\u5F3A\u7684\u53CD\u9762\u8BBA\u8BC1\uFF0C\u9010\u6761\u627E\u51FA\u53CD\u8BC1\u4E0E\u8106\u5F31\u5047\u8BBE\u3002",en:"Builds the strongest deliberate short-side counter-argument to a bullish thesis, with counterevidence."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","risk","perspective"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u53EA\u505A\u53CD\u9762\u8BBA\u8BC1\uFF0C\u4E0D\u6784\u6210\u5356\u51FA\u6216\u505A\u7A7A\u5EFA\u8BAE\uFF0C\u4E5F\u4E0D\u9884\u6D4B\u8DCC\u5E45\u3002",en:"Experimental; a counter-argument only, not a sell or short recommendation and no downside forecast."}},{key:"catalystCalendar",name:"catalyst-calendar",label:{zh:"90 \u5929\u50AC\u5316\u5242\u65E5\u5386",en:"Catalyst Calendar"},description:{zh:"\u5217\u51FA\u672A\u6765 90 \u5929\u7684\u4E8B\u4EF6\u50AC\u5316\u5242\u4E0E\u9884\u671F\u5F71\u54CD\uFF0C\u7528\u6765\u5B89\u6392\u590D\u67E5\u8282\u594F\u3002",en:"Lists upcoming catalysts over a 90-day window with expected impact and a review cadence."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","earnings","monitoring"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u4E8B\u4EF6\u5F71\u54CD\u662F\u5B9A\u6027\u5224\u65AD\uFF0C\u4E0D\u9884\u6D4B\u5177\u4F53\u6DA8\u8DCC\u3002",en:"Experimental; catalyst impact is qualitative and does not forecast price moves."}},{key:"competitorAnalysis",name:"competitor-analysis",label:{zh:"\u76F4\u63A5\u5BF9\u624B\u4E0E\u62A4\u57CE\u6CB3",en:"Competitor Analysis"},description:{zh:"\u56F4\u7ED5\u4E00\u5BB6\u516C\u53F8\u4E0E\u5176\u76F4\u63A5\u5BF9\u624B\u505A\u62A4\u57CE\u6CB3\u3001\u5E02\u573A\u5730\u4F4D\u4E0E\u884C\u4E1A\u683C\u5C40\u5206\u6790\u3002",en:"Moat, market position and industry dynamics for one company against its direct rivals."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","competition","business-analysis","risk"],riskNote:{zh:"\u4E0E\u300C\u884C\u4E1A\u7ADE\u4E89\u4E0E\u62A4\u57CE\u6CB3\u300D\u89C6\u89D2\u91CD\u53E0\uFF0C\u540C\u4E1A\u540D\u5355\u4E0E\u53E3\u5F84\u6309\u7F8E\u80A1\u62AB\u9732\u53D6\u6750\uFF1B\u7ED3\u8BBA\u4ECD\u8981\u56DE\u5230\u516C\u5F00\u8BC1\u636E\u3002",en:"Overlaps the industry/moat lens; peer sets follow US disclosure, so conclusions still need public evidence."}},{key:"dividendAnalysis",name:"dividend-analysis",label:{zh:"\u5206\u7EA2\u56DE\u8D2D\u4E0E\u8D44\u672C\u914D\u7F6E",en:"Dividend & Capital Allocation"},description:{zh:"\u628A\u5206\u7EA2\u3001\u56DE\u8D2D\u3001\u5E76\u8D2D\u3001\u503A\u52A1\u7BA1\u7406\u4E0E\u81EA\u7531\u73B0\u91D1\u6D41\u53BB\u5411\u5408\u8D77\u6765\u770B\u8D44\u672C\u914D\u7F6E\u7EAA\u5F8B\u3002",en:"Reviews dividends, buybacks, M&A, debt and FCF deployment as one capital-allocation discipline."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","capital-allocation","cash-flow","valuation"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u4E0D\u627F\u8BFA\u80A1\u606F\u53EF\u6301\u7EED\u6027\uFF0C\u4E5F\u4E0D\u9884\u6D4B\u6536\u76CA\u3002",en:"Experimental; it does not promise dividend sustainability or returns."}},{key:"earningsCallAnalysis",name:"earnings-call-analysis",label:{zh:"\u4E1A\u7EE9\u7535\u8BDD\u4F1A\u6587\u672C\u5206\u6790",en:"Earnings Call Analysis"},description:{zh:"\u4ECE\u4E1A\u7EE9\u7535\u8BDD\u4F1A\u7EAA\u8981\u91CC\u8BFB\u60C5\u7EEA\u3001\u4E3B\u9898\u4E0E\u7BA1\u7406\u5C42\u53E3\u5F84\u7684\u53D8\u5316\u3002",en:"Reads sentiment, themes and shifts in management tone from earnings call transcripts."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","earnings","perspective"],riskNote:{zh:"\u5FC5\u987B\u5148\u62FF\u5230\u7EAA\u8981\u539F\u6587\uFF1B\u6CA1\u6709\u539F\u6587\u65F6\u4E0D\u8BB8\u51ED\u5370\u8C61\u8865\u5199\u7BA1\u7406\u5C42\u8868\u6001\u3002",en:"Needs the actual transcript; never reconstruct management remarks from memory."}},{key:"earningsPreview",name:"earnings-preview",label:{zh:"\u8D22\u62A5\u524D\u4E09\u6863\u60C5\u666F\u63A8\u6F14",en:"Earnings Preview"},description:{zh:"\u5BF9\u6BD4\u4E00\u81F4\u9884\u671F\u4E0E\u671F\u6743\u9690\u542B\u6CE2\u52A8\uFF0C\u7ED9\u51FA\u8D85\u9884\u671F/\u7B26\u5408/\u4E0D\u53CA\u4E09\u6863\u60C5\u666F\u4E0E\u5404\u81EA\u8981\u76EF\u7684\u6307\u6807\u3002",en:"Compares consensus with the implied move and lays out beat / in-line / miss scenarios with watch KPIs."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","earnings","risk","monitoring"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u6B63\u6587\u6BCF\u6863\u60C5\u666F\u5E26\u4ED3\u4F4D\u5199\u6CD5\uFF0C\u53EA\u5F53\u63A8\u6F14\u7EC3\u4E60\uFF0C\u4E0D\u662F\u4EA4\u6613\u6307\u4EE4\u3002",en:"Experimental; each scenario carries position wording \u2014 read it as a rehearsal, not a trade instruction."}},{key:"economicsAnalysis",name:"economics-analysis",label:{zh:"\u7F8E\u56FD\u5B8F\u89C2\u6307\u6807\u89E3\u8BFB",en:"US Economics Analysis"},description:{zh:"\u89E3\u8BFB\u7F8E\u56FD\u5B8F\u89C2\u6570\u636E\u4E0E\u5229\u7387\u8DEF\u5F84\uFF0C\u5E76\u4EA4\u4EE3\u5B83\u4F20\u5BFC\u5230\u5E02\u573A\u7684\u8DEF\u5F84\u3002",en:"Interprets US macro prints and the rate path, and spells out the transmission to markets."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","macro","risk"],riskNote:{zh:"\u53E3\u5F84\u662F\u7F8E\u56FD\u5B8F\u89C2\uFF0C\u5BF9 A \u80A1\u53EA\u80FD\u5F53\u5916\u90E8\u73AF\u5883\u53D8\u91CF\uFF0C\u4E0D\u76F4\u63A5\u63A8\u653F\u7B56\u3002",en:"US macro only; for A-shares treat it as an external condition, not a policy read."}},{key:"etfAnalysis",name:"etf-analysis",label:{zh:"ETF \u5C3D\u8C03\u4E0E\u5951\u5408\u5EA6\u8BC4\u5206",en:"ETF Analysis"},description:{zh:"\u8D39\u7387\u3001\u8DDF\u8E2A\u8BEF\u5DEE\u3001\u6D41\u52A8\u6027\u3001\u6210\u5206\u96C6\u4E2D\u5EA6\u4E0E\u6301\u4ED3\u91CD\u53E0\uFF0C\u6C47\u6210\u4E00\u679A ETF \u5951\u5408\u5EA6\u8BC4\u5206\u3002",en:"Expense ratio, tracking difference, liquidity, concentration and overlap rolled into a fitness score."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","instruments","portfolio","risk"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u8BC4\u5206\u8861\u91CF\u7ED3\u6784\u7279\u5F81\uFF0C\u4E0D\u4EE3\u8868\u6536\u76CA\u9884\u671F\u3002",en:"Experimental; the score describes structure, not expected return."}},{key:"factCheck",name:"fact-check",label:{zh:"\u9010\u6761\u4E3B\u5F20\u6838\u9A8C\u4E0E\u8865\u5F15\u7528",en:"Fact Check"},description:{zh:"\u628A\u62A5\u544A\u91CC\u7684\u6BCF\u4E2A\u6570\u5B57\u4E0E\u4E8B\u5B9E\u4E3B\u5F20\u62C6\u51FA\u6765\u9010\u6761\u6BD4\u5BF9\u4E00\u624B\u6765\u6E90\uFF0C\u6807\u6CE8\u5DF2\u6838\u9A8C/\u4E0D\u7B26/\u65E0\u6CD5\u6838\u9A8C\u5E76\u56DE\u586B\u5F15\u7528\u3002",en:"Extracts every figure and claim, checks each against a primary source, and marks verified / mismatch / unverifiable."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","filings","verification"],riskNote:{zh:"\u4E00\u624B\u6765\u6E90\u6E05\u5355\u6309 SEC \u6587\u4EF6\u3001\u516C\u53F8 IR\u3001FRED \u4E0E\u4EA4\u6613\u6240\u6570\u636E\u5199\uFF1BA \u80A1\u6750\u6599\u8981\u6362\u6210\u516C\u544A\u4E0E\u5B98\u65B9\u62AB\u9732\u3002",en:"Its primary-source list is SEC / IR / FRED / exchange data; swap in announcements and official disclosure for A-shares."}},{key:"financialReportAnalyst",name:"financial-report-analyst",label:{zh:"\u8D22\u62A5\u8D28\u91CF\u4E0E\u7EA2\u65D7\u89E3\u8BFB",en:"Financial Report Analyst"},description:{zh:"\u4ECE 10-K / 10-Q \u8BFB\u62A5\u8868\u8D28\u91CF\u3001\u5F02\u5E38\u7EA2\u65D7\u4E0E\u4E00\u4E2A\u53EF\u4EA4\u4EE3\u51FA\u5904\u7684\u4FE1\u53F7\u3002",en:"Reads statement quality, red flags and one sourced signal from 10-K / 10-Q filings."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","filings","financial-health","risk"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u7EA2\u65D7\u662F\u63D0\u793A\u590D\u67E5\u7684\u7EBF\u7D22\uFF0C\u4E0D\u662F\u7ED3\u8BBA\u3002",en:"Experimental; red flags are prompts to re-check, not conclusions."}},{key:"industryMap",name:"industry-map",label:{zh:"\u4EA7\u4E1A\u94FE\u5730\u56FE\u4E0E\u54BD\u5589\u70B9",en:"Industry Map"},description:{zh:"\u628A\u4E0A\u4E0B\u6E38\u753B\u6210\u6709\u5411\u56FE\uFF0C\u5B9A\u4F4D\u516C\u53F8\u4F4D\u7F6E\u3001\u627E\u4F9B\u9700\u74F6\u9888\u4E0E\u5229\u6DA6\u6C60\uFF0C\u5E76\u6D3E\u751F\u4E8C\u7EBF\u7EBF\u7D22\u3002",en:"Maps the value chain as a directed graph to locate the company, find chokepoints and second-order ideas."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","macro","competition","business-analysis"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u4EA7\u4E1A\u94FE\u5224\u65AD\u4ECD\u9700\u9010\u6761\u56DE\u5230\u516C\u5F00\u8BC1\u636E\u3002",en:"Experimental; value-chain reads still need claim-by-claim public evidence."}},{key:"insiderTrading",name:"insider-trading",label:{zh:"\u5185\u90E8\u4EBA\u589E\u51CF\u6301\u8FFD\u8E2A",en:"Insider Trading"},description:{zh:"\u4ECE SEC Form 4 \u8FFD\u8E2A\u9AD8\u7BA1\u4E0E\u8463\u4E8B\u7684\u589E\u51CF\u53D8\u52A8\u5E76\u505A\u89E3\u8BFB\u3002",en:"Tracks executive and director buying and selling from SEC Form 4 filings."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","filings","monitoring","perspective"],riskNote:{zh:"\u4F9D\u8D56\u7F8E\u56FD\u5185\u90E8\u4EBA\u7533\u62A5\u5236\u5EA6\uFF1BA \u80A1\u8981\u6362\u6210\u5927\u80A1\u4E1C\u4E0E\u8463\u76D1\u9AD8\u53D8\u52A8\u516C\u544A\uFF0C\u53E3\u5F84\u4E0D\u53EF\u76F4\u63A5\u5E73\u79FB\u3002",en:"Assumes US insider filings; A-shares need major-holder and director-change announcements instead."}},{key:"institutionalOwnership",name:"institutional-ownership",label:{zh:"\u673A\u6784\u6301\u4ED3\u53D8\u52A8",en:"Institutional Ownership"},description:{zh:"\u4ECE 13F \u6587\u4EF6\u8BFB\u673A\u6784\u6301\u4ED3\u53D8\u5316\uFF0C\u8BC6\u522B\u673A\u6784\u8D44\u91D1\u7684\u8FC1\u79FB\u65B9\u5411\u3002",en:"Reads changes in institutional holdings from 13F filings to spot where the money is moving."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","filings","monitoring"],riskNote:{zh:"13F \u6709\u4E00\u4E2A\u5B63\u5EA6\u6EDE\u540E\u4E14\u4E0D\u542B\u7A7A\u5934\u4ED3\u4F4D\uFF1B\u8BFB\u6210\u8D8B\u52BF\u4E4B\u524D\u5148\u8BB0\u4F4F\u8FD9\u4E24\u70B9\u3002",en:"13F lags a quarter and omits shorts \u2014 remember both before reading it as a trend."}},{key:"learningCoach",name:"learning-coach",label:{zh:"\u628A\u5206\u6790\u8BB2\u6210\u8BFE\u7A0B",en:"Learning Coach"},description:{zh:"\u50CF\u5BFC\u5E08\u4E00\u6837\u9010\u6307\u6807\u89E3\u91CA\u4E00\u4EFD\u5206\u6790\u7ED3\u679C\uFF0C\u518D\u53CD\u95EE 3\u20135 \u4E2A\u68C0\u9A8C\u7406\u89E3\u7684\u95EE\u9898\u3002",en:"Explains an analysis metric by metric in plain words, then asks 3\u20135 Socratic questions."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["education","perspective"],riskNote:{zh:"\u6559\u5B66\u6027\u8D28\uFF1B\u5B83\u89E3\u91CA\u7684\u662F\u4E0A\u6E38\u5206\u6790\u7684\u53E3\u5F84\uFF0C\u4E0D\u989D\u5916\u4EA7\u751F\u6295\u8D44\u5224\u65AD\u3002",en:"Educational; it explains the analysis it is handed and forms no investment view of its own."}},{key:"optionsAnalysis",name:"options-analysis",label:{zh:"\u671F\u6743\u5E0C\u814A\u5B57\u6BCD\u4E0E\u9690\u6CE2",en:"Options Analysis"},description:{zh:"\u770B\u5E0C\u814A\u5B57\u6BCD\u3001\u9690\u542B\u6CE2\u52A8\u7387\u4E0E\u7B56\u7565\u9002\u914D\u5EA6\uFF0C\u7528\u6765\u7406\u89E3\u671F\u6743\u7684\u98CE\u9669\u5F62\u72B6\u3002",en:"Reviews Greeks, implied volatility and strategy fit to characterise an options risk shape."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","instruments","risk"],riskNote:{zh:"\u5B9E\u9A8C\u6027\u8D28\uFF1B\u53EA\u89E3\u91CA\u671F\u6743\u98CE\u9669\uFF0C\u4E0D\u63A8\u8350\u5177\u4F53\u5408\u7EA6\u6216\u7B56\u7565\u7EC4\u5408\u3002",en:"Experimental; it explains options risk and does not recommend contracts or spreads."}},{key:"portfolioReview",name:"portfolio-review",label:{zh:"\u7EC4\u5408\u8868\u73B0\u4E0E\u914D\u7F6E\u504F\u79BB",en:"Portfolio Review"},description:{zh:"\u590D\u76D8\u7EC4\u5408\u7684\u6536\u76CA\u6765\u6E90\u3001\u96C6\u4E2D\u5EA6\u4E0E\u914D\u7F6E\u504F\u79BB\uFF0C\u5E76\u5217\u51FA\u9700\u8981\u76EF\u7684\u89C2\u5BDF\u9879\u3002",en:"Reviews portfolio performance, concentration and allocation drift, with items to watch."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","portfolio","risk"],riskNote:{zh:"\u4E0E\u672C\u63D2\u4EF6\u81EA\u5E26\u7684\u7EC4\u5408\u590D\u76D8\u6D41\u7A0B\u91CD\u53E0\uFF1B\u8FD9\u6761\u6309\u7F8E\u80A1\u8BED\u5883\u7ED9\u89C2\u5BDF\u6E05\u5355\uFF0C\u4ED3\u4F4D\u52A8\u4F5C\u4ECD\u7531\u4F7F\u7528\u8005\u51B3\u5B9A\u3002",en:"Overlaps the built-in portfolio review; this one gives a US-context watchlist and leaves position moves to you."}},{key:"positionLadder",name:"position-ladder",label:{zh:"\u5206\u6279\u5EFA\u4ED3\u4E0E\u644A\u8584\u8282\u594F",en:"Position Ladder"},description:{zh:"\u628A\u5EFA\u4ED3\u62C6\u6210\u5206\u6279\u7684\u80A1\u6570\u4E0A\u4E0B\u9650\u4E0E\u52A0\u51CF\u4ED3\u8282\u594F\uFF0C\u5E76\u68C0\u67E5\u6279\u6B21\u8BB0\u8D26\u3001\u6D17\u552E\u7A97\u53E3\u4E0E\u603B\u6536\u76CA\u53E3\u5F84\u3002",en:"Plans a staged entry with share-count floors and ceilings, trim/re-add cadence, lot and wash-sale checks."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","portfolio","monitoring"],riskNote:{zh:"\u6B63\u6587\u91CC\u7684\u80A1\u6570\u533A\u95F4\u662F\u63A8\u6F14\u7528\u7684\u7EC3\u4E60\uFF0C\u4E0D\u662F\u4E70\u5356\u6307\u4EE4\uFF1B\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\u3001\u4E0D\u66FF\u4F7F\u7528\u8005\u4E0B\u5355\uFF0C\u4ED3\u4F4D\u51B3\u5B9A\u5728\u4F7F\u7528\u8005\u3002",en:"Its share-count ranges are rehearsal arithmetic, not orders; this plugin holds no broker interface and places nothing for you \u2014 the sizing call stays with you."}},{key:"resultValidator",name:"result-validator",label:{zh:"\u5206\u6790\u7ED3\u679C\u7F6E\u4FE1\u5EA6\u8BC4\u5206",en:"Result Validator"},description:{zh:"\u4ECE\u6570\u636E\u8D28\u91CF\u3001\u65B9\u6CD5\u4E00\u81F4\u6027\u4E0E\u4FE1\u53F7\u51B2\u7A81\u4E09\u4E2A\u7EF4\u5EA6\uFF0C\u7ED9\u4E00\u4EFD\u5206\u6790\u7ED3\u679C\u6253\u7F6E\u4FE1\u5EA6\u5206\u3002",en:"Scores an analysis's confidence across data quality, methodology and signal consistency."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["verification","perspective"],riskNote:{zh:"\u6253\u7684\u662F\u6570\u636E\u4E0E\u65B9\u6CD5\u81EA\u6D3D\u5EA6\uFF0C\u4E0D\u7B49\u4E8E\u9884\u6D4B\u51C6\u786E\u7387\uFF0C\u4E5F\u4E0D\u627F\u8BFA\u8868\u73B0\u3002",en:"It grades internal data/method consistency, not forecast accuracy or future performance."}},{key:"riskStressTest",name:"risk-stress-test",label:{zh:"\u7EC4\u5408\u538B\u529B\u6D4B\u8BD5\u4E0E\u98CE\u9669\u9884\u7B97",en:"Risk Stress Test"},description:{zh:"beta \u52A0\u6743\u655E\u53E3\u3001\u5386\u53F2\u60C5\u666F\u91CD\u653E\u3001VaR / CVaR\u3001\u6700\u5927\u56DE\u64A4\u4F30\u8BA1\u4E0E\u6D41\u52A8\u6027\u9000\u51FA\u5929\u6570\u3002",en:"Beta-weighted exposure, historical scenario replay, VaR / CVaR, drawdown estimates and days to exit."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","portfolio","risk","macro"],riskNote:{zh:"\u6A21\u578B\u5316\u4F30\u8BA1\uFF0C\u5047\u8BBE\u4E00\u53D8\u7ED3\u679C\u5C31\u53D8\uFF1B\u4E0D\u6784\u6210\u98CE\u63A7\u989D\u5EA6\uFF0C\u4E5F\u4E0D\u662F\u51CF\u4ED3\u6307\u4EE4\u3002",en:"Model output moves with every assumption; this is not a risk limit or a de-risking order."}},{key:"sectorAnalysis",name:"sector-analysis",label:{zh:"\u677F\u5757\u76F8\u5BF9\u5F3A\u5F31\u4E0E\u8F6E\u52A8",en:"Sector Analysis"},description:{zh:"\u770B\u7F8E\u56FD\u5404\u677F\u5757\u7684\u76F8\u5BF9\u5F3A\u5F31\u4E0E\u8F6E\u52A8\u7EBF\u7D22\uFF0C\u5E76\u4EA4\u4EE3\u5224\u65AD\u4F9D\u636E\u3002",en:"Reviews US sector positioning and rotation clues, and states what each read rests on."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","macro","competition"],riskNote:{zh:"\u677F\u5757\u5206\u7C7B\u6309\u7F8E\u80A1\u53E3\u5F84\uFF0C\u4E0E A \u80A1\u884C\u4E1A\u5206\u7C7B\u4E0D\u53EF\u76F4\u63A5\u5BF9\u7167\u3002",en:"Sector taxonomy is US-market; it does not line up with A-share industry classification."}},{key:"shortInterest",name:"short-interest",label:{zh:"\u7A7A\u5934\u6301\u4ED3\u4E0E\u6324\u538B\u6761\u4EF6",en:"Short Interest"},description:{zh:"\u8BFB\u7A7A\u5934\u6BD4\u4F8B\u3001\u56DE\u8865\u6210\u672C\u4E0E\u6324\u538B\u6761\u4EF6\uFF0C\u5E76\u68C0\u67E5\u5229\u7A7A\u5806\u79EF\u4FE1\u53F7\u3002",en:"Analyses short ratio, cost to cover, squeeze conditions and bearish positioning signals."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","filings","monitoring","risk"],riskNote:{zh:"\u7A7A\u5934\u6570\u636E\u662F\u6EDE\u540E\u62AB\u9732\uFF1B\u5F53\u6210\u5B9E\u65F6\u7ED3\u8BBA\u4E4B\u524D\u5148\u6838\u5BF9\u53E3\u5F84\u4E0E\u622A\u6B62\u65E5\u671F\u3002",en:"Short data is reported with a lag \u2014 check basis and as-of date before reading it as live."}},{key:"stockEval",name:"stock-eval",label:{zh:"\u57FA\u672C\u9762\u4E0E\u4F30\u503C\u7EFC\u5408\u8BC4\u4F30",en:"Stock Evaluation"},description:{zh:"\u628A\u8D22\u52A1\u8D28\u91CF\u3001\u6210\u957F\u3001\u4F30\u503C\u4E0E\u98CE\u9669\u5408\u5230\u4E00\u6B21\u7EFC\u5408\u8BC4\u4F30\u91CC\uFF0C\u5E76\u8F93\u51FA\u4E00\u4E2A\u53EF\u4EA4\u4EE3\u51FA\u5904\u7684\u7ED3\u8BBA\u3002",en:"Combines quality, growth, valuation and risk into one evaluation with a sourced conclusion."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","business-analysis","financial-health","valuation","risk"],riskNote:{zh:"\u4E0A\u6E38\u5DF2\u628A fundamental-analysis \u5408\u5165\u672C\u6761\uFF1B\u7EFC\u5408\u7ED3\u8BBA\u4ECD\u662F\u7F8E\u80A1\u53E3\u5F84\uFF0C\u4E0D\u66FF\u4EE3\u672C\u63D2\u4EF6\u65E2\u6709\u7814\u7A76\u6D41\u7A0B\u3002",en:"Upstream folded fundamental-analysis in; the read is US-context and does not replace Capital's own research flow."}},{key:"stockScreener",name:"stock-screener",label:{zh:"\u591A\u6807\u7684\u6A2A\u5411\u6253\u5206\u6392\u5E8F",en:"Stock Screener"},description:{zh:"\u6309\u4F30\u503C\u3001\u8D28\u91CF\u3001\u52A8\u91CF\u3001\u60C5\u7EEA\u4E0E\u6210\u957F\u4E94\u4E2A\u7EF4\u5EA6\u7ED9\u4E00\u7BEE\u5B50\u6807\u7684\u6253\u5206\u5E76\u6392\u5E8F\u3002",en:"Screens and ranks a list of US stocks across valuation, quality, momentum, sentiment and growth."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","valuation","business-analysis","technicals"],riskNote:{zh:"\u6392\u5E8F\u53EA\u53CD\u6620\u5F53\u671F\u6253\u5206\u53E3\u5F84\uFF0C\u4E0D\u9884\u6D4B\u672A\u6765\u8868\u73B0\uFF1B\u6807\u7684\u6E05\u5355\u4E0E\u6570\u636E\u6765\u6E90\u4ECD\u8981\u8D70\u672C\u63D2\u4EF6\u7684\u53D6\u6570\u94FE\u8DEF\u3002",en:"Ranking reflects the current scoring inputs only, not future performance; data still comes via Capital's own sources."}},{key:"stockValuation",name:"stock-valuation",label:{zh:"\u56DB\u65B9\u6CD5\u4F30\u503C\u533A\u95F4",en:"Stock Valuation"},description:{zh:"DCF\u3001\u53EF\u6BD4\u516C\u53F8\u3001EV \u500D\u6570\u4E0E\u5269\u4F59\u6536\u76CA\u4E00\u8D77\u51FA\u4F30\u503C\u533A\u95F4\uFF0C\u5E76\u9010\u6761\u4EA4\u4EE3\u5047\u8BBE\u3002",en:"Values a company with DCF, comparables, EV multiples and residual income, stating every assumption."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","valuation","cash-flow"],riskNote:{zh:"\u533A\u95F4\u968F\u5047\u8BBE\u5927\u5E45\u79FB\u52A8\uFF1B\u8F93\u51FA\u4E0D\u7B49\u4E8E\u76EE\u6807\u4EF7\uFF0C\u4E5F\u4E0D\u662F\u4E70\u5356\u5EFA\u8BAE\u3002",en:"Ranges swing with assumptions; the output is not a price target or a trade call."}},{key:"taxLens",name:"tax-lens",label:{zh:"\u7F8E\u56FD\u7A0E\u52A1\u89C6\u89D2\u68C0\u89C6\u6E05\u5355",en:"Tax Lens"},description:{zh:"\u957F\u77ED\u671F\u8D44\u672C\u5229\u5F97\u3001\u6D17\u552E\u7A97\u53E3\u3001\u5408\u683C\u80A1\u606F\u6301\u6709\u671F\u3001\u6279\u6B21\u9009\u62E9\u4E0E\u5E74\u5EA6\u7A0E\u8D1F\u62D6\u7D2F\u7684\u68C0\u89C6\u6E05\u5355\u3002",en:"Checks short vs. long-term gains, wash-sale windows, qualified dividends, lot selection and estimated tax drag."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","tax","portfolio"],riskNote:{zh:"\u53EA\u8BB2\u7F8E\u56FD\u7A0E\u5236\u4E14\u6B62\u4E8E\u6559\u80B2\u53E3\u5F84\uFF1B\u4E2D\u56FD\u5927\u9646\u7684\u7A0E\u52A1\u4E0E\u8D26\u6237\u5B89\u6392\u8BF7\u54A8\u8BE2\u4E13\u4E1A\u4EBA\u58EB\u3002",en:"US tax mechanics, educational only; get professional advice for mainland-China tax and account matters."}},{key:"technicalAnalysis",name:"technical-analysis",label:{zh:"\u6280\u672F\u9762\u4E0E\u6307\u6807\u89E3\u8BFB",en:"Technical Analysis"},description:{zh:"\u7528\u5747\u7EBF\u3001\u6210\u4EA4\u91CF\u3001RSI / MACD \u7B49\u6307\u6807\u8BFB\u8D8B\u52BF\u3001\u5173\u952E\u4EF7\u4F4D\u4E0E\u590D\u67E5\u89E6\u53D1\u6761\u4EF6\u3002",en:"Reads trend and key levels with moving averages, volume, RSI and MACD, plus re-check triggers."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","technicals","monitoring"],riskNote:{zh:"\u6280\u672F\u4FE1\u53F7\u53EA\u7ED9\u590D\u67E5\u6761\u4EF6\uFF0C\u4E0D\u9884\u6D4B\u65B9\u5411\uFF1B\u4E0D\u8981\u628A\u56FE\u5F62\u7ED3\u8BBA\u5199\u6210\u4E8B\u5B9E\u3002",en:"Technical signals are re-check triggers, not direction forecasts \u2014 do not present them as facts."}},{key:"thesisTracker",name:"thesis-tracker",label:{zh:"\u6295\u8D44\u8BBA\u70B9\u5B58\u6863\u4E0E\u590D\u6838",en:"Thesis Tracker"},description:{zh:"\u5199\u4E0B\u8BBA\u70B9\u7684 KPI\u3001\u5931\u6548\u6761\u4EF6\u4E0E\u50AC\u5316\u5242\uFF0C\u4E4B\u540E\u6309\u65B0\u6570\u636E\u590D\u67E5\u5E76\u7ED9\u51FA\u7EF4\u6301 / \u8D70\u5F31 / \u5931\u6548\u3002",en:"Records KPIs, invalidation triggers and catalysts, then re-checks them as INTACT / WEAKENED / BROKEN."},owner:"yennanliu",repository:"InvestSkill",status:"experimental",lastCommit:"2026-09-25",reviewBy:"2026-11-06",tags:["us-stock","verification","monitoring","perspective"],riskNote:{zh:"\u4E0A\u6E38\u5047\u8BBE\u80FD\u628A\u8BBA\u70B9\u843D\u76D8\uFF1B\u5728\u672C\u63D2\u4EF6\u4E0B\u6587\u4EF6\u5199\u5728\u5DE5\u4F5C\u76EE\u5F55\u5E76\u670D\u4ECE\u5F53\u524D\u4F1A\u8BDD\u6743\u9650\u3002",en:"Upstream assumes it can save files; under Capital it writes into the session workspace and obeys its permissions."}},{key:"peterLynchResearch",name:"peter-lynch-skill",label:{zh:"\u5F7C\u5F97\xB7\u6797\u5947\u5F0F\u4E2A\u80A1\u7814\u7A76",en:"Peter Lynch Research"},description:{zh:"\u7ED9\u4E00\u4E2A\u4EE3\u7801\u6216\u516C\u53F8\u540D\uFF0C\u8D70\u5FEB\u7B5B\uFF08SKIP / WATCHLIST / DEEP RESEARCH\uFF09\u6216\u5B8C\u6574\u5C3D\u8C03\uFF0C\u751F\u610F\u7406\u89E3\u3001\u5206\u7C7B\u4E0E\u4F30\u503C\u653E\u5728\u540C\u4E00\u5957\u68C0\u67E5\u91CC\uFF0C\u6BCF\u6761\u4E3B\u5F20\u914D\u53EF\u70B9\u5F00\u7684\u6765\u6E90\u94FE\u63A5\u3002\u7F8E\u80A1\u4E0E\u5883\u5916\u4E0A\u5E02\u53E3\u5F84\u3002",en:"Screens a ticker or company fast (SKIP / WATCHLIST / DEEP RESEARCH) or runs full due diligence, with linked sources under every claim. US and overseas-listing conventions."},owner:"DjNero11",repository:"peter-lynch-skill",status:"watchlist",lastCommit:"2026-06-28",reviewBy:"2026-11-06",tags:["peter-lynch","us-stock","valuation","risk","verification"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u4EC5\u4E24\u6B21\u63D0\u4EA4\u3001\u81EA 2026-06-28 \u8D77\u65E0\u66F4\u65B0\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002X/10 \u8861\u91CF\u7684\u662F\u8BBA\u70B9\u81EA\u6D3D\u5EA6\u4E0E\u7ED3\u6784\u7279\u5F81\uFF0C\u4E0D\u9884\u6D4B\u8868\u73B0\uFF0C\u4E5F\u4E0D\u6784\u6210\u4E70\u5356\u5EFA\u8BAE\u3002",en:"Cold-start experiment; upstream has two commits and has been quiet since 2026-06-28, so review the sources before use. The X/10 score rates thesis consistency and structure, not forecast performance, and is not investment advice."}},{key:"catalystMap",name:"catalyst-map",label:{zh:"\u50AC\u5316\u5242\u5730\u56FE",en:"Catalyst Map"},description:{zh:'\u628A\u8981\u53D1\u751F\u7684\u4E8B\u4EF6\u6309"\u5F71\u54CD\u4EC0\u4E48\u3001\u4EC0\u4E48\u65F6\u5019\u5F71\u54CD\u3001\u4F1A\u4F20\u5BFC\u5230\u8C01"\u6392\u6210\u6CE8\u610F\u529B\u4F18\u5148\u7EA7\uFF0C\u5E76\u6807\u51FA\u4F9D\u8D56\u540C\u4E00\u4E8B\u4EF6\u94FE\u7684\u6301\u4ED3\u3002\u7F8E\u80A1\u4E0E\u5883\u5916\u5B8F\u89C2\u65E5\u5386\u53E3\u5F84\u3002',en:"Ranks upcoming events by what they move, when, and how they transmit across related names, and flags positions hanging on the same event chain. US and overseas calendar conventions."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","macro","monitoring","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5B83\u6392\u7684\u662F\u6CE8\u610F\u529B\u4F18\u5148\u7EA7\uFF0C\u4E0D\u9884\u6D4B\u4EF7\u683C\u8D70\u5411\uFF0C\u4E5F\u4E0D\u6784\u6210\u4E70\u5356\u5EFA\u8BAE\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The map ranks attention, not price direction, and is not investment advice."}},{key:"watchlistReview",name:"watchlist-review",label:{zh:"\u81EA\u9009\u80A1\u5206\u8BCA",en:"Watchlist Review"},description:{zh:"\u5BF9\u4F7F\u7528\u8005\u7ED9\u51FA\u7684\u81EA\u9009\u6E05\u5355\u505A\u5206\u8BCA\uFF1A\u54EA\u4E9B\u503C\u5F97\u76EF\u3001\u54EA\u4E9B\u53EA\u4F5C\u80CC\u666F\u3001\u54EA\u4E9B\u7406\u7531\u5DF2\u7ECF\u4E0D\u6210\u7ACB\uFF0C\u5E76\u8BF4\u6E05\u79FB\u51FA\u7684\u662F\u6E05\u5355\u6761\u76EE\u800C\u4E0D\u662F\u6301\u4ED3\u3002",en:"Triages the watchlist the user supplies into active focus, background monitoring, or removal, and says that what comes off is a list entry, not a position."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","portfolio","monitoring","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5206\u8BCA\u53EA\u4F5C\u7528\u4E8E\u81EA\u9009\u6E05\u5355\uFF0C\u4E0D\u6784\u6210\u4E70\u5356\u52A8\u4F5C\uFF1B\u672C\u63D2\u4EF6\u8BFB\u4E0D\u5230\u5238\u5546\u8D26\u6237\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The triage acts on the watchlist only, is not a buy or sell action, and this plugin cannot read a brokerage account."}},{key:"evidenceGapCheck",name:"evidence-gap-check",label:{zh:"\u8BC1\u636E\u7F3A\u53E3\u68C0\u67E5",en:"Evidence Gap Check"},description:{zh:'\u628A\u4E00\u7B14\u60F3\u6CD5\u8FD8\u7F3A\u7684\u4E8B\u5B9E\u3001\u5047\u8BBE\u4E0E\u672A\u89E3\u95EE\u9898\u6309"\u4F1A\u4E0D\u4F1A\u6539\u53D8\u5224\u65AD"\u6392\u5E8F\uFF0C\u8BF4\u6E05\u54EA\u4E9B\u7F3A\u53E3\u5FC5\u987B\u5148\u8865\u3001\u54EA\u4E9B\u53EA\u662F\u964D\u4F4E\u7F6E\u4FE1\u5EA6\u3002',en:"Ranks the missing facts, assumptions and open questions behind an idea by whether they change the judgement, and separates blocking gaps from confidence gaps."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","verification","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5B83\u53EA\u5217\u8BC1\u636E\u7F3A\u53E3\uFF0C\u4E0D\u7ED9\u8BC4\u7EA7\u3001\u4E0D\u66FF\u4F7F\u7528\u8005\u51B3\u5B9A\u8FD9\u7B14\u505A\u4E0D\u505A\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. It lists evidence gaps only: no rating, and no decision about whether to take the trade."}},{key:"thesisValidation",name:"thesis-validation",label:{zh:"\u8BBA\u70B9\u538B\u529B\u6D4B\u8BD5",en:"Thesis Validation"},description:{zh:"\u628A\u4E00\u4E2A\u8BF4\u6CD5\u538B\u6210\u53EF\u68C0\u9A8C\u7684\u4E3B\u5F20\uFF1A\u8BBA\u70B9\u3001\u8BC1\u636E\u3001\u5931\u6548\u6761\u4EF6\u4E0E\u65F6\u95F4\u7A97\u5206\u5F00\u5199\uFF0C\u518D\u5224\u5B83\u591F\u4E0D\u591F\u683C\u8FDB\u5165\u7ED3\u6784\u68C0\u67E5\u3002",en:"Turns a claim into something testable \u2014 thesis, evidence, invalidation, timeframe \u2014 then judges whether it is ready to be built on."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","verification","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5224\u7684\u662F\u8BBA\u70B9\u662F\u5426\u81EA\u6D3D\u53EF\u68C0\u9A8C\uFF0C\u4E0D\u9884\u6D4B\u8868\u73B0\uFF0C\u4E5F\u4E0D\u6784\u6210\u4E70\u5356\u5EFA\u8BAE\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. It tests whether a thesis is coherent and falsifiable, not how it will perform, and is not investment advice."}},{key:"riskRewardSanityCheck",name:"risk-reward-sanity-check",label:{zh:"\u76C8\u4E8F\u6BD4\u81EA\u6D3D\u68C0\u67E5",en:"Risk-Reward Sanity Check"},description:{zh:"\u6309\u5165\u573A\u3001\u6B62\u635F\u4E0E\u76EE\u6807\u7B97\u51FA\u76C8\u4E8F\u6BD4\uFF0C\u518D\u68C0\u67E5\u8FD9\u4E2A\u7ED3\u6784\u662F\u5426\u81EA\u6D3D\uFF1A\u76EE\u6807\u662F\u5426\u843D\u5728\u566A\u58F0\u91CC\u3001\u6B62\u635F\u662F\u5426\u5728\u660E\u663E\u7684\u6D41\u52A8\u6027\u805A\u96C6\u5904\u3002",en:"Works out the reward-to-risk ratio from entry, stop and target, then tests whether the structure holds \u2014 targets inside noise, stops sitting in obvious liquidity pools."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","risk","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6BD4\u503C\u8861\u91CF\u7684\u662F\u7ED3\u6784\u81EA\u6D3D\u4E0E\u5931\u8D25\u9762\uFF0C\u4E0D\u662F\u80DC\u7387\u6216\u6536\u76CA\u627F\u8BFA\uFF0C\u672C\u63D2\u4EF6\u4E5F\u4E0D\u636E\u5B83\u7ED9\u4ED3\u4F4D\u6570\u5B57\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The ratio measures structural coherence and failure modes, not win rate or returns, and this plugin derives no position size from it."}},{key:"executionPlanCheck",name:"execution-plan-check",label:{zh:"\u6267\u884C\u8BA1\u5212\u68C0\u67E5",en:"Execution Plan Check"},description:{zh:"\u68C0\u67E5\u4E00\u4EFD\u4EA4\u6613\u8BA1\u5212\u5728\u64CD\u4F5C\u4E0A\u662F\u5426\u771F\u7684\u80FD\u843D\u5730\uFF1A\u8BA2\u5355\u7C7B\u578B\u4E0E\u7D27\u8FEB\u5EA6\u662F\u5426\u5339\u914D\u3001\u6D41\u52A8\u6027\u4E0E\u70B9\u5DEE\u98CE\u9669\u3001\u4E8B\u4EF6\u65F6\u70B9\u3001\u6B62\u635F\u80FD\u5426\u6210\u4EA4\u3002",en:"Checks whether a plan is operationally workable: order type against urgency, liquidity and spread risk, event timing, and whether a stop would actually fill."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","risk","monitoring","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u68C0\u67E5\u7684\u662F\u8BA1\u5212\u7684\u53EF\u64CD\u4F5C\u6027\uFF1A\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u4E0B\u5355\u3001\u4E0D\u6539\u5355\uFF0C\u4E5F\u4E0D\u4F1A\u66FF\u4F60\u6267\u884C\u4EFB\u4F55\u4E00\u7B14\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. It reviews whether a plan is executable: this plugin has no broker interface, places and amends no orders and executes nothing for you."}},{key:"portfolioConcentration",name:"portfolio-concentration",label:{zh:"\u7EC4\u5408\u96C6\u4E2D\u5EA6\u68C0\u67E5",en:"Portfolio Concentration"},description:{zh:"\u770B\u7EC4\u5408\u662F\u5426\u8FC7\u5EA6\u538B\u5728\u540C\u4E00\u6279\u53D1\u884C\u4EBA\u3001\u884C\u4E1A\u3001\u4E3B\u9898\u6216\u76F8\u5173\u66B4\u9732\u4E0A\uFF0C\u5E76\u5199\u6E05\u8FD9\u4E2A\u5224\u65AD\u9700\u8981\u54EA\u4E9B\u6301\u4ED3\u6570\u636E\u624D\u6210\u7ACB\u3002",en:"Shows whether a book leans too hard on a few issuers, sectors, themes or correlated exposures, and what holdings data that verdict needs to stand."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","portfolio","risk"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6587\u4E2D\u7684 5%\uFF0F10% \u4E00\u7C7B\u662F\u7ECF\u9A8C\u53E3\u5F84\u4E0D\u662F\u666E\u9002\u89C4\u5219\uFF1B\u6301\u4ED3\u53EA\u4EE5\u4F7F\u7528\u8005\u81EA\u62A5\u7684\u6807\u8BB0\u4E3A\u51C6\uFF08\u672C\u63D2\u4EF6\u8BFB\u4E0D\u5230\u5238\u5546\u8D26\u6237\uFF09\uFF0C\u4E5F\u4E0D\u6784\u6210\u52A0\u51CF\u4ED3\u5EFA\u8BAE\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The 5% / 10% bands are practical review thresholds, not universal laws; the book comes only from positions the user marked as held (this plugin cannot read a brokerage account), and it is not advice to add or reduce."}},{key:"journalPatternAnalyzer",name:"journal-pattern-analyzer",label:{zh:"\u4EA4\u6613\u65E5\u5FD7\u6A21\u5F0F\u5206\u6790",en:"Journal Pattern Analyzer"},description:{zh:"\u4ECE\u4F7F\u7528\u8005\u81EA\u5DF1\u7684\u4EA4\u6613\u65E5\u5FD7\u91CC\u627E\u91CD\u590D\u51FA\u73B0\u7684\u4F18\u52BF\u4E0E\u5931\u8BEF\u3001\u5B83\u4EEC\u5404\u81EA\u53D1\u751F\u5728\u4EC0\u4E48\u73AF\u5883\u4E0B\uFF0C\u5E76\u4E3A\u5C0F\u6837\u672C\u8BBE\u62A4\u680F\u3002",en:"Finds the repeated strengths and mistakes in the user\u2019s own trade journal, groups them by environment, and keeps small samples from hardening into lessons."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","education","portfolio"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u80DC\u7387\u3001\u671F\u671B\u503C\u8FD9\u7C7B\u6570\u5B57\u662F\u5BF9\u5DF2\u6709\u65E5\u5FD7\u7684\u63CF\u8FF0\uFF0C\u4E0D\u8BC1\u660E\u53EF\u6301\u7EED\u7684\u4F18\u52BF\uFF0C\u4E5F\u4E0D\u6784\u6210\u6295\u8D44\u5EFA\u8BAE\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. Win rate and expectancy describe the log you already have: they prove no durable edge and are not investment advice."}},{key:"postTradeReview",name:"post-trade-review",label:{zh:"\u4EA4\u6613\u590D\u76D8",en:"Post-Trade Review"},description:{zh:"\u6309\u8BBA\u70B9\u3001setup\u3001\u6267\u884C\u3001\u5B88\u89C4\u4E0E\u7ED3\u679C\u51E0\u6761\u7EBF\u590D\u76D8\u4E00\u7B14\u5DF2\u7ECF\u5E73\u6389\u7684\u4EA4\u6613\uFF0C\u907F\u514D\u7528\u540E\u89C6\u955C\u7F16\u9020\u6559\u8BAD\u3002",en:"Reviews a closed trade across thesis, setup, execution, adherence and outcome without rewriting it with hindsight."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","education"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u590D\u76D8\u5F97\u51FA\u7684"\u4E0B\u6B21\u8981\u6539\u7684\u89C4\u5219"\u5C5E\u4E8E\u8FC7\u7A0B\u63A8\u6F14\uFF0C\u672C\u63D2\u4EF6\u4E0D\u636E\u5B83\u66FF\u4F7F\u7528\u8005\u8C03\u6574\u6301\u4ED3\u6216\u4E0B\u5355\u3002',en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The rule changes it suggests are process exercises: this plugin adjusts no holdings and places no orders on them."}},{key:"positionSizing",name:"position-sizing",label:{zh:"\u5165\u573A\u4ED3\u4F4D\u6D4B\u7B97",en:"Position Sizing"},description:{zh:"\u4ECE\u8D26\u6237\u89C4\u6A21\u3001\u5355\u7B14\u98CE\u9669\u9884\u7B97\u3001\u5165\u573A\u4EF7\u4E0E\u6B62\u635F\u4EF7\u53CD\u63A8\u4E00\u4E2A\u53EF\u8FA9\u62A4\u7684\u4ED3\u4F4D\uFF0C\u5E76\u628A\u6469\u64E6\u6210\u672C\u3001\u4E8B\u4EF6\u98CE\u9669\u4E0E\u6D41\u52A8\u6027\u6321\u5728\u516C\u5F0F\u4E4B\u5916\u2014\u2014\u5B83\u53EA\u7B97\u5927\u5C0F\uFF0C\u4E0D\u8BC4\u5224\u8FD9\u7B14\u8BE5\u4E0D\u8BE5\u505A\u3002",en:"Works a defensible size back from account equity, a per-trade risk budget, entry and stop, with trading friction taken into account; it sizes the trade and deliberately does not judge the thesis."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","risk","portfolio","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5B83\u7ED9\u51FA\u7684\u4ED3\u4F4D\u6570\u5B57\u662F\u65B9\u6CD5\u63A8\u6F14\uFF0C\u4E0D\u662F\u8BA2\u5355\uFF1A\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u636E\u5B83\u4E0B\u5355\uFF0C\u4E5F\u4E0D\u66FF\u4F60\u52A8\u4EFB\u4F55\u4E00\u7B14\u4ED3\uFF1B\u8D26\u6237\u89C4\u6A21\u4E0E\u98CE\u9669\u9884\u7B97\u7531\u4F60\u63D0\u4F9B\uFF0C\u53D6\u4E0D\u5230\u5C31\u505C\u4E0B\u800C\u4E0D\u662F\u731C\u3002\u6B62\u635F\u3001\u6ED1\u70B9\u3001\u5408\u7EA6\u4E58\u6570\u4E0E\u6D41\u52A8\u6027\u90A3\u4E00\u6863\u6309\u7F8E\u80A1\uFF0F\u5883\u5916\u53E3\u5F84\u5199\uFF08A \u80A1 T+1\u3001\u6DA8\u8DCC\u505C\u4E0E\u96C6\u5408\u7ADE\u4EF7\u90FD\u4E0D\u6210\u7ACB\uFF09\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The size it produces is a method exercise, not an order: this plugin holds no broker interface, places nothing on it and moves no position for you. Account equity and risk budget come from you \u2014 if they are missing it stops rather than guesses. Stops, slippage, contract multipliers and liquidity assumptions are US / offshore conventions (A-share T+1, daily limits and the call auction do not map onto them)."}},{key:"positionManagement",name:"position-management",label:{zh:"\u6301\u4ED3\u8BBA\u70B9\u590D\u6838",en:"Position Management"},description:{zh:"\u5BF9\u7167\u539F\u59CB\u8BBA\u70B9\u3001\u5931\u6548\u6761\u4EF6\u3001\u50AC\u5316\u5242\u65E5\u5386\u4E0E\u6267\u884C\u7EA6\u675F\u590D\u67E5\u4E00\u7B14\u5728\u624B\u4ED3\u4F4D\uFF0C\u7ED9\u51FA\u7EE7\u7EED\u6301\u6709\u3001\u51CF\u4ED3\u3001\u6536\u7D27\u6B62\u635F\u8FD8\u662F\u79BB\u573A\u7684\u5224\u65AD\uFF0C\u5E76\u4EA4\u4EE3\u8FD9\u4E2A\u5224\u65AD\u5EFA\u7ACB\u5728\u54EA\u4E9B\u8BC1\u636E\u4E0A\u3002",en:"Revisits an open position against the original thesis, its invalidation logic, the catalyst calendar and execution constraints, then argues hold, trim, tighten or exit on stated evidence."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","monitoring","portfolio","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6301\u4ED3\u52A0\u51CF\uFF08\u6301\u6709 / \u51CF\u4ED3 / \u6536\u7D27 / \u79BB\u573A\uFF09\u5C5E\u4E8E\u65B9\u6CD5\u63A8\u6F14\uFF0C\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\u3001\u4E0D\u4EE3\u4F60\u6267\u884C\u4EFB\u4F55\u4E00\u7B14\uFF1B\u539F\u59CB\u8BBA\u70B9\u6216\u6301\u4ED3\u4FE1\u606F\u7F3A\u5931\u65F6\u5B83\u6309\u4E34\u65F6\u53E3\u5F84\u590D\u67E5\u5E76\u70B9\u540D\u7F3A\u53E3\uFF0C\u4E0D\u7F16\u4E00\u4EFD\u5E72\u51C0\u7684\u4E8B\u524D\u8BA1\u5212\u3002\u671F\u6743\u3001\u76D8\u540E\u65F6\u6BB5\u4E0E\u6267\u884C\u7EA6\u675F\u90A3\u4E00\u6863\u6309\u7F8E\u80A1\uFF0F\u5883\u5916\u53E3\u5F84\u5199\uFF0CA \u80A1\u7684 T+1\u3001\u6DA8\u8DCC\u505C\u4E0E\u96C6\u5408\u7ADE\u4EF7\u5728\u6B63\u6587\u91CC\u6CA1\u6709\u5BF9\u5E94\u7269\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. The hold / trim / tighten / exit call is a method exercise: this plugin holds no broker interface and executes nothing for you. When the original plan or position detail is missing it reviews provisionally and names the gap instead of inventing a tidy prior plan. Options, extended hours and execution constraints follow US / offshore conventions \u2014 A-share T+1, daily price limits and the call auction have no counterpart in the text."}},{key:"macroEventAnalysis",name:"macro-event-analysis",label:{zh:"\u5B8F\u89C2\u4E8B\u4EF6\u68B3\u7406",en:"Macro Event Analysis"},description:{zh:"\u628A\u672A\u6765\u4E00\u5230\u4E24\u5468\u7684\u5B8F\u89C2\u4E8B\u4EF6\u6392\u6210\u51B3\u7B56\u76F8\u5173\u7684\u6E05\u5355\uFF1A\u6309\u5E02\u573A\u654F\u611F\u5EA6\u3001\u610F\u5916\u7A7A\u95F4\u3001\u4F20\u5BFC\u901F\u5EA6\u4E0E\u65F6\u95F4\u538B\u529B\u6392\u5E8F\uFF0C\u518D\u843D\u5230\u5229\u7387\u3001\u6C47\u7387\u3001\u5546\u54C1\u4E0E\u98CE\u9669\u504F\u597D\u7684\u4F20\u5BFC\u8DEF\u5F84\u3002",en:"Turns the next one to two weeks of macro events into a decision-relevant slate, ranked by market sensitivity, surprise capacity, transmission speed and timing pressure, then mapped to rates, FX, commodities and risk appetite."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","macro","monitoring","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5B83\u6392\u7684\u662F\u4E8B\u4EF6\u98CE\u9669\u4E0E\u4F20\u5BFC\u8DEF\u5F84\uFF0C\u4E0D\u9884\u6D4B\u5355\u6B21\u6570\u636E\u7684\u65B9\u5411\uFF0C\u4E5F\u4E0D\u6784\u6210\u4E70\u5356\u5EFA\u8BAE\uFF1B\u65E5\u5386\u7F3A\u5931\u65F6\u6309\u7F3A\u53E3\u5982\u5B9E\u5217\u51FA\uFF0C\u4E0D\u8865\u4E00\u81F4\u9884\u671F\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. It ranks event risk and transmission channels, does not predict the direction of a release, and is not investment advice. Missing calendar rows stay missing rather than being filled from memory."}},{key:"marketRegimeAnalysis",name:"market-regime-analysis",label:{zh:"\u5E02\u573A\u73AF\u5883\u5224\u5B9A",en:"Market Regime Analysis"},description:{zh:"\u6309\u8D8B\u52BF\u3001\u6CE2\u52A8\u7387\u3001\u5E7F\u5EA6\u4E0E\u4E8B\u4EF6\u80CC\u666F\u56DB\u4E2A\u951A\u70B9\u4FDD\u5B88\u5730\u5224\u5B9A\u5F53\u524D\u5E02\u573A\u73AF\u5883\uFF08\u5065\u5EB7\u8D8B\u52BF / \u8106\u5F31\u8D8B\u52BF / \u8FC7\u6E21 / \u9632\u5FA1\uFF09\uFF0C\u5E76\u8BF4\u660E\u54EA\u4E9B\u8BC1\u636E\u4F1A\u63A8\u7FFB\u8FD9\u4E2A\u5224\u5B9A\u3002",en:"Classifies the current market environment conservatively across trend, volatility, breadth and event backdrop (healthy trend, fragile trend, transition, defensive), and states what evidence would overturn the call."},owner:"marian2js",repository:"trading-skills",status:"watchlist",lastCommit:"2026-03-16",reviewBy:"2026-11-06",tags:["trade-discipline","technicals","risk","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u81EA 2026-03-16 \u8D77\u65E0\u63D0\u4EA4\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5B83\u7ED9\u7684\u662F\u6218\u672F\u9ED8\u8BA4\u503C\u4E0E\u5931\u6548\u6761\u4EF6\uFF0C\u4E0D\u9884\u6D4B\u6536\u76CA\u3001\u4E0D\u7ED9\u7F6E\u4FE1\u5EA6\u767E\u5206\u6BD4\uFF0C\u4E5F\u4E0D\u4EE3\u66FF\u5177\u4F53\u6807\u7684\u7684\u4EA4\u6613\u8BA1\u5212\u3002",en:"Cold-start experiment; upstream has been quiet since 2026-03-16, so review the sources before use. It gives tactical defaults and invalidation conditions \u2014 no return forecast, no confidence percentages, and no substitute for instrument-level trade planning."}},{key:"chinaEarningsAnalysis",name:"china-earnings-analysis",label:{zh:"A \u80A1\u4E1A\u7EE9\u70B9\u8BC4",en:"A-Share Earnings Review"},description:{zh:"\u628A\u5DF2\u8986\u76D6\u516C\u53F8\u7684\u5B63\u62A5\u6216\u5E74\u62A5\u5199\u6210 A \u80A1\u5356\u65B9\u4F53\u4F8B\u7684\u70B9\u8BC4\uFF1A\u5B9E\u9645 / \u4E00\u81F4\u9884\u671F / \u4E0A\u671F\u7684\u5DEE\u5F02\u8868\u3001\u6536\u5165\u4E0E\u5229\u6DA6\u7387\u5206\u89E3\u3001\u8D44\u4EA7\u8D1F\u503A\u8868\u4E0E\u73B0\u91D1\u6D41\u5173\u6CE8\u70B9\uFF0C\u518D\u843D\u5230\u4F30\u503C\u4E0E\u98CE\u9669\u3002",en:"Writes a quarterly or annual update in Chinese sell-side format: an actual / consensus / prior variance table, revenue and margin decomposition, balance-sheet and cash-flow focus, then valuation and risks."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","earnings","filings","financial-health"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u672C\u63D2\u4EF6\u6CA1\u6709\u4E00\u81F4\u9884\u671F\u7684\u7ED3\u6784\u5316\u53D6\u6570\u9762\uFF1A\u90A3\u4E00\u5217\u53D6\u4E0D\u5230\u5C31\u7559\u7A7A\u5E76\u70B9\u540D\u7F3A\u5931\uFF0C\u4E0D\u7528\u8BB0\u5FC6\u8865\u3002\u62A5\u544A\u91CC\u7684\u8BC4\u7EA7\u4E0E\u76EE\u6807\u4EF7\u6BB5\u843D\u5C5E\u4E8E\u63A8\u6F14\u7EC3\u4E60\uFF0C\u4E0D\u6784\u6210\u4E70\u5356\u5EFA\u8BAE\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. This plugin has no consensus endpoint: that column stays empty and the gap is named rather than remembered. The rating and target-price paragraphs are exercises, not investment advice."}},{key:"chinaEarningsPreview",name:"china-earnings-preview",label:{zh:"A \u80A1\u8D22\u62A5\u524D\u77BB",en:"A-Share Earnings Preview"},description:{zh:"\u516C\u5E03\u524D\u628A\u5173\u6CE8\u70B9\u6392\u597D\uFF1A\u5386\u53F2\u57FA\u7EBF\u3001\u8981\u76EF\u7684\u4E09\u5230\u4E94\u4E2A\u6307\u6807\u3001\u4E50\u89C2 / \u57FA\u51C6 / \u60B2\u89C2\u4E09\u6863\u60C5\u666F\u4E0E\u89E6\u53D1\u6761\u4EF6\uFF0C\u6309 A \u80A1\u62AB\u9732\u8282\u594F\uFF08\u4E1A\u7EE9\u9884\u544A\u3001\u5FEB\u62A5\u3001\u6B63\u5F0F\u62A5\u544A\uFF09\u5199\u524D\u77BB\u3002",en:"Sets up the pre-release frame: historical baseline, the three to five metrics that matter, bull / base / bear scenarios with their triggers, all on the A-share rhythm of \u9884\u544A, \u5FEB\u62A5 and the full report."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","earnings","monitoring"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5BBF\u4E3B\u53D6\u4E0D\u5230\u4E00\u81F4\u9884\u671F\u65F6\uFF0C\u60C5\u666F\u5BF9\u6BD4\u5199\u5728\u5386\u53F2\u4E0E\u81EA\u5BB6\u62AB\u9732\u53E3\u5F84\u4E0A\uFF0C\u5E76\u6807\u660E\u90A3\u662F\u4F60\u81EA\u5DF1\u7684\u57FA\u7EBF\uFF1B\u6587\u4E2D\u7684\u4ED3\u4F4D\u4E0E\u4EA4\u6613\u7B56\u7565\u8BBE\u60F3\u5C5E\u4E8E\u63A8\u6F14\u7EC3\u4E60\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. With no retrievable consensus, scenarios are framed against history and the company\u2019s own disclosed range, labelled as your baseline; the sizing and trade ideas it sketches are exercises."}},{key:"chinaCompsAnalysis",name:"china-comps-analysis",label:{zh:"A \u80A1\u53EF\u6BD4\u516C\u53F8\u500D\u6570",en:"A-Share Comparable Multiples"},description:{zh:"\u6309 A \u80A1\u53E3\u5F84\u642D\u540C\u4E1A\u500D\u6570\u8868\uFF1A\u677F\u5757\u5206\u7EC4\u4E0E\u5E02\u503C / \u589E\u901F / \u76C8\u5229\u6027\u7B5B\u9009\uFF0CP/E\uFF08\u52A8\u6001\xB7\u9759\u6001\xB7TTM\uFF09\u3001P/B\u3001EV/EBITDA \u4E0E\u6EA2\u4EF7\u6298\u4EF7\u7684\u89E3\u91CA\uFF0C\u6700\u540E\u6536\u655B\u6210\u4E00\u4E2A\u4F30\u503C\u533A\u95F4\u3002",en:"Builds a peer multiple table on A-share conventions: sector grouping with size, growth and profitability screens, dynamic / static / TTM P/E, P/B and EV/EBITDA, premium and discount explanations, and a resulting valuation range."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","valuation","competition"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u533A\u95F4\u968F\u500D\u6570\u5047\u8BBE\u5927\u5E45\u79FB\u52A8\uFF0C\u672B\u5C3E\u7684\u76EE\u6807\u4EF7\u4E0E\u6295\u8D44\u5EFA\u8BAE\u5C5E\u4E8E\u63A8\u6F14\u7EC3\u4E60\uFF0C\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u636E\u5B83\u4E0B\u5355\uFF0C\u4E5F\u4E0D\u4F1A\u66FF\u4F60\u6267\u884C\u4EFB\u4F55\u4E00\u7B14\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. The range moves with the multiple assumptions, and the closing target price and recommendation are exercises: this plugin has no broker interface and places no order on them."}},{key:"chinaDcf",name:"china-dcf",label:{zh:"A \u80A1 DCF \u53E3\u5F84",en:"A-Share DCF Conventions"},description:{zh:"\u7528\u4E2D\u56FD\u8D22\u62A5\u53E3\u5F84\u8DD1 DCF\uFF1A\u65E0\u98CE\u9669\u5229\u7387\u53D6\u5341\u5E74\u671F\u56FD\u503A\u6536\u76CA\u7387\u3001A \u80A1\u80A1\u6743\u98CE\u9669\u6EA2\u4EF7\u300125% \u7A0E\u7387\uFF08\u9AD8\u65B0\u6280\u672F\u4F01\u4E1A 15%\uFF09\u3001\u672C\u5E01\u7EC8\u503C\u589E\u957F\uFF0C\u518D\u628A WACC \u4E0E\u654F\u611F\u6027\u644A\u5F00\u3002",en:"Runs a DCF on Chinese conventions: a 10-year government bond yield as the risk-free rate, A-share equity risk premium, 25% tax (15% for \u9AD8\u65B0\u6280\u672F\u4F01\u4E1A), local-currency terminal growth, then WACC and sensitivities."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","valuation","cash-flow"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u56FD\u503A\u6536\u76CA\u7387\u6216 \u03B2 \u53D6\u4E0D\u5230\u65F6\u6309\u5047\u8BBE\u533A\u95F4\u505A\u654F\u611F\u6027\u5E76\u5199\u660E\u5047\u8BBE\uFF0C\u4E0D\u5047\u8BBE\u4E00\u4E2A\u70B9\u4F4D\uFF1B\u884C\u4E1A\u5229\u6DA6\u7387\u7684\u9ED8\u8BA4\u503C\u662F\u8FD9\u4E2A\u6A21\u578B\u7684\u8F93\u5165\uFF0C\u4E0D\u662F\u5BF9\u516C\u53F8\u7684\u9884\u6D4B\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. If the bond yield or beta cannot be retrieved, the model runs as a labelled sensitivity band rather than a guessed level; the sector margin defaults are inputs to this model, not forecasts of the company."}},{key:"chinaSectorOverview",name:"china-sector-overview",label:{zh:"A \u80A1\u884C\u4E1A\u5168\u666F",en:"A-Share Sector Landscape"},description:{zh:"\u753B\u4E00\u5F20 A \u80A1\u884C\u4E1A\u5730\u56FE\uFF1A\u5E02\u573A\u89C4\u6A21\u4E0E\u96C6\u4E2D\u5EA6\u3001\u653F\u7B56\u4E0E\u76D1\u7BA1\u6846\u67B6\u3001\u7ADE\u4E89\u683C\u5C40\u4E0E\u6309\u677F\u5757\u7684\u5173\u952E KPI\uFF08\u6279\u4EF7\u3001\u88C5\u673A\u91CF\u3001NIM \u4E00\u7C7B\uFF09\uFF0C\u518D\u843D\u5230\u4E3B\u9898\u4E0E\u4F30\u503C\u5BF9\u7167\u3002",en:"Maps an A-share industry: market size and concentration, the policy and regulatory frame, competitive structure with sector-specific KPIs (\u6279\u4EF7, \u88C5\u673A\u91CF, NIM and the like), then themes and valuation context."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","macro","competition","business-analysis"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u884C\u4E1A\u53E3\u5F84\u7684\u7EDF\u8BA1\u53D6\u4E0D\u5230\u5C31\u5199\u6210\u7F3A\u53E3\uFF0C\u4E0D\u6298\u7B97\u6210\u8BB0\u5FC6\u91CC\u7684\u6570\uFF1B\u591A\u7A7A\u4E00\u89C8\u4E0E"\u91CD\u70B9\u6807\u7684\u3001\u76EE\u6807\u4EF7\u3001\u8BC4\u7EA7"\u4E00\u8282\u5C5E\u4E8E\u63A8\u6F14\u7EC3\u4E60\uFF0C\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u636E\u5B83\u4E0B\u5355\uFF0C\u4E5F\u4E0D\u4F1A\u66FF\u4F60\u6267\u884C\u4EFB\u4F55\u4E00\u7B14\u3002',en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. Industry statistics that do not come back stay a named gap rather than a remembered figure; the long / short list and the \u91CD\u70B9\u6807\u7684\u3001\u76EE\u6807\u4EF7\u3001\u8BC4\u7EA7 section are exercises, and this plugin \u2014 with no broker interface \u2014 places no order on them."}},{key:"chinaCatalystCalendar",name:"china-catalyst-calendar",label:{zh:"A \u80A1\u50AC\u5316\u5242\u65E5\u5386",en:"A-Share Catalyst Calendar"},description:{zh:"\u628A A \u80A1\u7684\u62AB\u9732\u4E0E\u4E8B\u4EF6\u6309\u65F6\u95F4\u6392\u6210\u6CE8\u610F\u529B\u65E5\u5386\uFF1A\u8D22\u62A5\u4E0E\u4E1A\u7EE9\u9884\u544A\u3001\u80A1\u4E1C\u5927\u4F1A\u3001\u89E3\u7981\u4E0E\u5206\u7EA2\u56DE\u8D2D\u3001\u653F\u7B56\u4E0E\u884C\u4E1A\u4F1A\u8BAE\uFF0C\u5E76\u6807\u51FA\u538B\u5728\u540C\u4E00\u4E2A\u4E8B\u4EF6\u94FE\u4E0A\u7684\u516C\u53F8\u3002",en:"Lays A-share disclosures and events out as an attention calendar: earnings and \u4E1A\u7EE9\u9884\u544A, shareholder meetings, lockup expiries, dividends and buybacks, policy and industry events, flagging names hanging on the same event chain."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","monitoring","macro","earnings"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u4E0E\u7F8E\u80A1\u53E3\u5F84\u7684\u300C\u50AC\u5316\u5242\u5730\u56FE\u300D\u540C\u65CF\uFF0C\u4F46\u6362\u6210 A \u80A1\u62AB\u9732\u8282\u594F\uFF1B\u65E5\u671F\u6CA1\u53D6\u56DE\u6765\u5C31\u6807\u6210\u672A\u786E\u8BA4\uFF0C\u4E0D\u7F16\u65E5\u5386\uFF0C\u4E5F\u4E0D\u9884\u6D4B\u4EF7\u683C\u8D70\u5411\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. The same family as the US-market Catalyst Map, retuned to A-share disclosure rhythm; a date that did not come back is marked unconfirmed rather than invented, and the calendar forecasts no price direction."}},{key:"chinaBreakTrace",name:"china-break-trace",label:{zh:"A \u80A1\u8D22\u52A1\u6838\u67E5",en:"A-Share Forensic Review"},description:{zh:"\u5BF9 A \u80A1\u8D22\u62A5\u505A\u53D6\u8BC1\u5F0F\u6838\u67E5\uFF1A\u79D1\u76EE\u52FE\u7A3D\u3001\u5229\u6DA6\u4E0E\u73B0\u91D1\u6D41\u7684\u80CC\u79BB\u3001\u5E94\u6536\u4E0E\u5B58\u8D27\u5F02\u5E38\u3001\u8425\u8FD0\u8D44\u672C\u53E3\u5F84\uFF0C\u518D\u8BFB\u5BA1\u8BA1\u610F\u89C1\u7C7B\u578B\u3001\u4EA4\u6613\u6240\u95EE\u8BE2\u4E0E\u5904\u7F5A\u516C\u544A\u91CC\u7684\u4FE1\u53F7\u3002",en:"Works through A-share statements forensically: line-item tie-outs, the gap between earnings and cash flow, receivable and inventory anomalies, working-capital behaviour, then what auditor opinions, exchange inquiries and penalties signal."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","risk","financial-health","verification"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5B83\u5217\u7684\u662F"\u8BE5\u53BB\u67E5\u4EC0\u4E48"\uFF0C\u4E0D\u662F\u6307\u63A7\uFF0C\u4E5F\u4E0D\u6784\u6210\u4E70\u5356\u5EFA\u8BAE\uFF1B\u4E0E\u300C\u98CE\u9669\u4E0E\u50AC\u5316\u5242\u76D1\u63A7\u300D\u90E8\u5206\u91CD\u53E0\uFF0C\u8FD9\u9897\u6309\u62A5\u8868\u79D1\u76EE\u4E0E\u76D1\u7BA1\u6587\u4E66\u8D70\u3002',en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. It lists what to investigate, not an accusation, and is not investment advice; it overlaps the risk-and-catalyst module but works from statement lines and regulatory documents."}},{key:"chinaVarianceCommentary",name:"china-variance-commentary",label:{zh:"A \u80A1\u4E1A\u7EE9\u5DEE\u5F02\u8868\u8FF0",en:"A-Share Variance Commentary"},description:{zh:'\u628A\u5DEE\u5F02\u5199\u6210\u8BFB\u5F97\u61C2\u7684\u4E2D\u6587\uFF1A\u8D85\u9884\u671F / \u4F4E\u4E8E\u9884\u671F\u600E\u4E48\u5206\u7C7B\u3001\u9A71\u52A8\u56E0\u7D20\u5F52\u56E0\u5230\u54EA\u4E00\u5C42\u3001\u53E3\u5F84\u4E0E\u5355\u4F4D\u4E00\u81F4\u6027\u600E\u4E48\u4EA4\u4EE3\uFF0C\u4EE5\u53CA"\u8FD9\u4E2A\u53D8\u5316\u610F\u5473\u7740\u4EC0\u4E48"\u7684\u53E5\u5B50\u7EA7\u5199\u6CD5\u3002',en:"Turns variances into readable Chinese commentary: how to classify beat / miss / in-line, where to attribute the driver, how to keep \u53E3\u5F84 and units consistent, and how to say what the change actually means."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","earnings","verification"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u5BBF\u4E3B\u53D6\u4E0D\u5230\u4E00\u81F4\u9884\u671F\u65F6\uFF0C\u5DEE\u5F02\u5C31\u5199\u5728\u53BB\u5E74\u540C\u671F\u3001\u5148\u524D\u53E3\u5F84\u4E0E\u62AB\u9732\u533A\u95F4\u4E0A\uFF0C\u5E76\u8BF4\u660E\u90A3\u662F\u54EA\u79CD\u57FA\u7EBF\uFF0C\u4E0D\u5192\u5145\u5E02\u573A\u5171\u8BC6\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. Without a retrievable consensus, variances are stated against prior-year, your own earlier figures and the disclosed range \u2014 labelled as which baseline, never dressed up as market consensus."}},{key:"chinaInitiatingCoverage",name:"china-initiating-coverage",label:{zh:"A \u80A1\u9996\u6B21\u8986\u76D6",en:"A-Share Initiation Report"},description:{zh:"\u6309\u5238\u5546\u7814\u7A76\u6240\u4F53\u4F8B\u642D\u4E00\u4EFD A \u80A1\u9996\u6B21\u8986\u76D6\uFF1A\u516C\u53F8\u4E0E\u884C\u4E1A\u5206\u6790\u3001\u4E09\u8868\u5EFA\u6A21\u3001\u4F30\u503C\u4E0E\u500D\u6570\u533A\u95F4\u3001\u56FE\u8868\u6E05\u5355\u4E0E\u62A5\u544A\u9AA8\u67B6\uFF0C\u4E00\u8DEF\u5199\u5230\u8BC4\u7EA7\u4E0E\u76EE\u6807\u4EF7\u90A3\u4E00\u8282\u3002",en:"Assembles an initiation report in Chinese sell-side form: company and industry analysis, three-statement modelling, valuation and multiple ranges, the exhibit list and the report skeleton, through to the rating and target-price section."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","valuation","business-analysis","filings"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u4E94\u6863\u8BC4\u7EA7\u4E0E\u76EE\u6807\u4EF7\u662F\u628A\u6750\u6599\u5199\u6210\u4E00\u4E2A\u7ED3\u8BBA\u7684\u63A8\u6F14\u7EC3\u4E60\uFF0C\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u636E\u5B83\u4E0B\u5355\uFF0C\u4E5F\u4E0D\u4F1A\u66FF\u4F60\u6267\u884C\u4EFB\u4F55\u4E00\u7B14\uFF1B\u62A5\u544A\u5199\u5728\u6700\u7EC8\u7B54\u590D\u91CC\u3001\u4E0D\u4EA7\u51FA\u6587\u4EF6\uFF0C\u9875\u6570\u53EA\u662F\u4F53\u91CF\u53C2\u8003\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. The five-tier rating and target price are a conclusion exercise: this plugin has no broker interface and places no order on them. The report is written into the final reply rather than a file, and the page counts are only a sense of scale."}},{key:"chinaMorningNote",name:"china-morning-note",label:{zh:"A \u80A1\u6668\u4F1A\u7EAA\u8981",en:"A-Share Morning Note"},description:{zh:"\u6309\u56FD\u5185\u5356\u65B9\u6668\u4F1A\u8282\u594F\uFF08\u5F00\u76D8\u524D 7:00\u20138:30\uFF09\u5199\u4E00\u4EFD\u5F53\u65E5\u7B56\u7565\uFF1A\u9694\u591C\u4E0E\u5916\u76D8\u53D8\u5316\u3001\u76D8\u524D\u60C5\u7EEA\u3001\u5F53\u65E5\u89E3\u7981\u4E0E\u62AB\u9732\u4E8B\u4EF6\u3001\u76EF\u76D8\u8981\u70B9\uFF0C\u6536\u5230 2\u20134 \u6761\u5F53\u65E5\u60F3\u6CD5\u3002",en:"Writes the pre-open desk note on Chinese sell-side timing (07:00\u201308:30): overnight and external markets, pre-market sentiment, today\u2019s unlock and disclosure events, what to watch intraday, distilled into 2\u20134 ideas for the session."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","monitoring","portfolio"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6668\u4F1A\u91CC\u7684\u65B9\u5411\uFF08Long / Short / Watch\uFF09\u3001\u6B62\u635F\u4F4D\u4E0E\u4ED3\u4F4D\u5199\u6CD5\u90FD\u662F\u63A8\u6F14\u7EC3\u4E60\uFF1A\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u636E\u5B83\u4E0B\u5355\uFF0C\u4E5F\u4E0D\u66FF\u4F60\u52A8\u4ED3\u3002\u884C\u60C5\u3001\u516C\u544A\u4E0E\u4E8B\u4EF6\u4E00\u5F8B\u8D70\u5BBF\u4E3B\u53D6\u6570\u901A\u9053\uFF0C\u6CA1\u56DE\u6765\u7684\u5B57\u6BB5\u5199\u6210\u7F3A\u53E3\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. The Long / Short / Watch calls, stop levels and sizing language in the note are a rehearsal exercise: this plugin holds no broker interface, places no order on them and moves no position for you. Quotes, filings and events come through the host retrieval channel, and anything that does not come back is written up as a gap."}},{key:"chinaThesisTracker",name:"china-thesis-tracker",label:{zh:"A \u80A1\u6301\u4ED3\u8BBA\u70B9\u8DDF\u8E2A",en:"A-Share Thesis Tracker"},description:{zh:"\u4E3A\u6301\u4ED3\u4E0E\u81EA\u9009\u9010\u53EA\u7EF4\u62A4\u6295\u8D44\u903B\u8F91\uFF1A\u8BB0\u4E0B\u8BBA\u70B9\u524D\u63D0\u3001\u8DDF\u8E2A\u5173\u952E\u6570\u636E\u70B9\u4E0E\u50AC\u5316\u5242\u3001\u6309\u65B0\u62AB\u9732\u66F4\u65B0\u6709\u6548\u6027\uFF0C\u5E76\u7ED9\u51FA\u7EF4\u6301 / \u52A0\u4ED3 / \u51CF\u4ED3 / \u79BB\u573A\u7684\u5224\u65AD\u4E0E\u76EE\u6807\u4EF7\u3001\u6B62\u635F\u4F4D\u3002",en:"Keeps a live thesis per holding and watchlist name: states the premises, tracks the key data points and catalysts, updates validity as new filings land, and argues maintain / add / reduce / exit with a target price and a stop."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","monitoring","portfolio"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u52A0\u4ED3 / \u51CF\u4ED3 / \u79BB\u573A\u4E0E\u76EE\u6807\u4EF7\u3001\u6B62\u635F\u4F4D\u5C5E\u4E8E\u63A8\u6F14\u7EC3\u4E60\uFF1A\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E0D\u636E\u5B83\u6267\u884C\u4EFB\u4F55\u4E00\u7B14\uFF0C\u4E5F\u4E0D\u638C\u63E1\u4F60\u7684\u5B9E\u9645\u6301\u4ED3\u4E0E\u6210\u672C\u2014\u2014\u90A3\u4E9B\u5F97\u7531\u4F60\u7ED9\uFF0C\u7F3A\u4E86\u5C31\u53EA\u590D\u67E5\u903B\u8F91\u4E0D\u52A8\u4F5C\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. The add / reduce / exit calls with target price and stop are a rehearsal exercise: this plugin holds no broker interface, executes nothing on them and does not know your actual holdings or cost basis \u2014 provide them, and with them missing it reviews the logic without recommending action."}},{key:"chinaIdeaGeneration",name:"china-idea-generation",label:{zh:"A \u80A1\u9009\u80A1\u4E0E\u673A\u4F1A\u751F\u6210",en:"A-Share Idea Screening"},description:{zh:"\u6309\u91CF\u5316\u7B5B\u9009\u3001\u4E3B\u9898\u7EBF\u7D22\u4E0E\u5F62\u6001\u8BC6\u522B\u4E09\u6761\u7EBF\u7CFB\u7EDF\u6027\u5730\u627E A \u80A1\u6807\u7684\uFF1A\u591A\u7A7A\u4E24\u4FA7\u5404\u51FA\u6E05\u5355\uFF0C\u9010\u6761\u5199\u50AC\u5316\u5242\u3001\u4E3A\u4EC0\u4E48\u73B0\u5728\u3001\u4FE1\u5FF5\u6863\u4E0E\u9A8C\u8BC1\u4E0B\u4E00\u6B65\u3002",en:"Surfaces A-share names along three rails \u2014 quantitative screens, thematic leads and pattern recognition \u2014 producing long and short lists with, per name, the catalyst, why now, a conviction tier and the next check."},owner:"jwangkun",repository:"claude-for-financial-services-cn",status:"watchlist",lastCommit:"2026-09-14",reviewBy:"2026-11-08",tags:["a-share","technicals","portfolio"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-09-14\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6E05\u5355\u91CC\u7684 Long / Short \u65B9\u5411\u3001\u4FE1\u5FF5\u6863\u4E0E\u4ED3\u4F4D\u5EFA\u8BAE\u5C5E\u4E8E\u63A8\u6F14\u7EC3\u4E60\uFF0C\u4E0D\u662F\u8BA2\u5355\uFF1A\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E5F\u4E0D\u636E\u5B83\u4EEC\u66FF\u4F60\u4E0B\u4EFB\u4F55\u4E00\u7B14\uFF1B\u7B5B\u9009\u6761\u4EF6\u8981\u7684\u6570\u5B57\u53D6\u4E0D\u5230\u5C31\u70B9\u540D\u7F3A\u53E3\uFF0C\u4E0D\u7528\u8BB0\u5FC6\u91CC\u7684\u6570\u8865\u9F50\u3002",en:"Cold-start experiment; upstream last moved on 2026-09-14, so review the sources before use. The Long / Short directions, conviction tiers and sizing suggestions on the list are a rehearsal exercise, not orders: this plugin holds no broker interface and places nothing for you on them. Numbers a screen needs but retrieval cannot get are named as gaps rather than filled from memory."}},{key:"companyValuation",name:"company-valuation",label:{zh:"\u4F01\u4E1A\u4F30\u503C\u4E0E\u80A1\u6743\u4EF7\u503C\u6865",en:"Company Valuation"},description:{zh:"\u4E09\u6761\u8DEF\u4F30\u4F01\u4E1A\u4EF7\u503C\u4E0E\u80A1\u6743\u4EF7\u503C\uFF1A\u5148\u5265\u79BB\u4E00\u6B21\u6027\u9879\u76EE\u505A DCF\uFF0C\u518D\u7528\u540C\u4E1A\u500D\u6570\u4E0E\u5148\u4F8B\u4EA4\u6613\u4EA4\u53C9\u9A8C\u8BC1\uFF0C\u6700\u540E\u628A\u4F01\u4E1A\u4EF7\u503C\u6362\u6210\u80A1\u6743\u4EF7\u503C\u2014\u2014\u6709\u606F\u8D1F\u503A\u3001\u5C11\u6570\u80A1\u4E1C\u6743\u76CA\u3001\u53C2\u80A1\u516C\u53F8\u3001\u517B\u8001\u91D1\u7F3A\u53E3\u9010\u7B14\u5217\u51FA\u3002",en:"Triangulates enterprise and equity value: a DCF on normalized earnings, cross-checked against peer multiples and precedent deal multiples, then an explicit enterprise-to-equity bridge that itemizes debt-like charges, minority interests, associates and any pension deficit."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["valuation","cash-flow","us-stock"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u8FD9\u9897\u6309 IFRS \u4E0E\u7F8E\u80A1\u4F30\u503C\u60EF\u4F8B\u5199\uFF1A\u5148\u4F8B\u4EA4\u6613\u500D\u6570\u3001\u63A7\u5236\u6743\u6EA2\u4EF7 20\u201335% \u4E0E EV/EBITDA \u90A3\u5957\u500D\u6570\u5728 A \u80A1\u62AB\u9732\u91CC\u5E38\u5E38\u62FF\u4E0D\u5230\u540C\u53E3\u5F84\u6570\u636E\uFF0C\u53D6\u4E0D\u5230\u5C31\u70B9\u540D\u7F3A\u53E3\uFF0C\u4E0D\u7528\u8BB0\u5FC6\u91CC\u7684\u6570\u8865\u9F50\u3002\u5B83\u7ED9\u51FA\u7684\u4F30\u503C\u533A\u95F4\u4E0E"\u54EA\u51E0\u6761\u5047\u8BBE\u771F\u6B63\u51B3\u5B9A\u7B54\u6848"\u5C5E\u4E8E\u65B9\u6CD5\u63A8\u6F14\uFF0C\u4E0D\u662F\u8BA2\u5355\u2014\u2014\u672C\u63D2\u4EF6\u6CA1\u6709\u5238\u5546\u63A5\u53E3\uFF0C\u4E5F\u4E0D\u636E\u5B83\u4E0B\u5355\u3002',en:'Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. The method is written to IFRS and US valuation practice: precedent-transaction multiples, the 20\u201335% control premium and the EV/EBITDA comp set often have no same-basis counterpart in A-share disclosure \u2014 name the gap instead of filling it from memory. The concluded range and the "assumptions that actually move the answer" are a rehearsal exercise, not orders: this plugin holds no broker interface and places nothing for you.'}},{key:"waccComputation",name:"wacc-computation",label:{zh:"WACC \u4E0E\u8D44\u672C\u6210\u672C\u4F30\u7B97",en:"WACC Computation"},description:{zh:"\u628A\u6298\u73B0\u7387\u62C6\u5F00\u4F30\uFF1ACAPM \u5404\u8F93\u5165\uFF08\u65E0\u98CE\u9669\u5229\u7387\u3001\u03B2\u3001\u80A1\u6743\u98CE\u9669\u6EA2\u4EF7\u3001\u89C4\u6A21\u4E0E\u56FD\u5BB6\u98CE\u9669\u6EA2\u4EF7\uFF09\u3001\u53EF\u6BD4 \u03B2 \u7684\u53BB\u6760\u6746\u4E0E\u518D\u6760\u6746\u3001\u6309\u5E02\u503C\u52A0\u6743\u7684\u7A0E\u540E\u503A\u52A1\u6210\u672C\uFF0C\u6700\u540E\u4EA4\u51FA\u4E00\u5F20 \u03B2 \xD7 \u98CE\u9669\u6EA2\u4EF7\u7684\u654F\u611F\u6027\u533A\u95F4\u3002",en:"Builds the discount rate piece by piece \u2014 CAPM inputs (risk-free rate, beta, equity risk premium, size and country premia), unlevering and relevering peer betas on the target's capital structure, market-value weights on the after-tax cost of debt \u2014 and ends on a beta-by-premium sensitivity range."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["valuation","risk","us-stock"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6B63\u6587\u7684\u6570\u5B57\u57FA\u51C6\u662F\u7F8E\u56FD\u7684\uFF1A\u65E0\u98CE\u9669\u5229\u7387\u53D6 10 \u5E74\u671F\u7F8E\u503A\u3001\u98CE\u9669\u6EA2\u4EF7\u7528\u7F8E\u80A1 ERP\u3001\u7A0E\u7387\u6309\u7F8E\u56FD\u8FB9\u9645\u7A0E\u7387\u3002\u7528\u4E8E A \u80A1\u8981\u6362\u6210\u4E2D\u56FD 10 \u5E74\u671F\u56FD\u503A\u3001\u5883\u5185 ERP \u4E0E 15% / 25% \u90A3\u4E00\u6863\u5B9E\u9645\u7A0E\u7387\uFF0C\u8FD9\u4E9B\u66FF\u6362\u503C\u672C\u63D2\u4EF6\u6CA1\u6709\u73B0\u6210\u6765\u6E90\u65F6\u4E00\u5F8B\u7559\u7A7A\u70B9\u540D\uFF0C\u4E0D\u51ED\u8BB0\u5FC6\u586B\u3002\u7B97\u51FA\u7684 WACC \u662F\u63A8\u6F14\u8F93\u5165\uFF0C\u4E0D\u662F\u5BF9\u4EFB\u4F55\u6807\u7684\u7684\u5224\u65AD\u3002",en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. Its numeric anchors are American: a 10-year Treasury as the risk-free rate, US equity risk premium, a US marginal tax rate. Applying it to A-shares means a China 10-year government bond yield, a local ERP and the 15% / 25% statutory rate actually paid \u2014 where this plugin has no source for the replacement value, leave it blank and say so rather than quoting memory. The computed WACC is an input to a rehearsal, not a verdict on anything."}},{key:"threeStatementModeling",name:"three-statement-modeling",label:{zh:"\u4E09\u8868\u52FE\u7A3D\u5EFA\u6A21\u4E0E\u8BCA\u65AD",en:"Three-Statement Modeling"},description:{zh:'\u6309\u56FA\u5B9A\u987A\u5E8F\u642D\u4E00\u5F20\u8054\u52A8\u7684\u4E09\u8868\u6A21\u578B\uFF1A\u9A71\u52A8\u56E0\u5B50\u96C6\u4E2D\u4E00\u5904\u3001\u6536\u5165\u6784\u5EFA\u5229\u6DA6\u8868\u3001\u56FA\u5B9A\u8D44\u4EA7\u4E0E\u8425\u8FD0\u8D44\u672C\u4E0E\u503A\u52A1\u4E09\u5F20\u9644\u8868\u63A8\u52A8\u8D44\u4EA7\u8D1F\u503A\u8868\u3001\u73B0\u91D1\u6D41\u91CF\u8868\u5B8C\u5168\u7531\u524D\u4E24\u8868\u7684\u5DEE\u989D\u5012\u63A8\uFF0C\u6BCF\u4E00\u671F\u90FD\u6446\u4E00\u884C"\u4E0D\u5E73\u5C31\u70B9\u540D"\u7684\u5E73\u8861\u68C0\u67E5\u3002',en:"Assembles a linked three-statement model in a fixed order \u2014 one place for drivers, an income statement built from revenue, PP&E / working-capital / debt schedules driving the balance sheet, a cash flow statement derived entirely from the deltas \u2014 with a balance check on every period that names the ones that do not tie."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["financial-health","cash-flow","business-analysis"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u79D1\u76EE\u8868\u6309 IFRS / US GAAP \u5217\u793A\uFF0CA \u80A1\u62A5\u8868\u53E6\u6709\u4E00\u6279\u9700\u8981\u81EA\u5DF1\u6620\u5C04\u7684\u884C\u6B21\uFF08\u5176\u4ED6\u5E94\u6536\u3001\u5408\u540C\u8D44\u4EA7\u4E0E\u5408\u540C\u8D1F\u503A\u3001\u5C11\u6570\u80A1\u4E1C\u6743\u76CA\u7B49\uFF09\u2014\u2014\u8FD9\u9897\u53EA\u8BB2\u52FE\u7A3D\u5F62\u72B6\uFF0C\u4E0D\u66FF\u4F60\u5224\u65AD\u54EA\u4E00\u7B14\u8BE5\u5F52\u54EA\u4E00\u79D1\u76EE\u3002\u5B83\u5EFA\u7684\u662F\u6A21\u578B\u9AA8\u67B6\uFF0C\u4EA7\u51FA\u7684\u9884\u6D4B\u6570\u5B57\u5C5E\u4E8E\u63A8\u6F14\uFF1B\u9700\u8981\u7684\u5386\u53F2\u62A5\u8868\u6216\u9644\u6CE8\u660E\u7EC6\u53D6\u4E0D\u5230\u5C31\u70B9\u540D\u7F3A\u53E3\u3002",en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. Its chart of accounts is IFRS / US GAAP, so A-share statements need their own mapping for lines such as other receivables, contract assets and liabilities, and minority interests \u2014 this skill teaches the linkage, not where a given item belongs. What it produces is a model skeleton whose projected numbers are a rehearsal; historical statements or note detail it cannot retrieve are named as gaps."}},{key:"creditAnalysis",name:"credit-analysis",label:{zh:"\u507F\u503A\u80FD\u529B\u4E0E\u503A\u52A1\u5BB9\u91CF\u5206\u6790",en:"Credit Analysis"},description:{zh:'\u56DE\u7B54\u4E00\u4EF6\u4E8B\uFF1A\u8FD9\u5BB6\u516C\u53F8\u80FD\u4E0D\u80FD\u7A7F\u8FC7\u5468\u671F\u628A\u94B1\u8FD8\u4E0A\u3002\u6760\u6746\u3001\u5229\u606F\u8986\u76D6\u3001DSCR\u3001\u81EA\u7531\u73B0\u91D1\u6D41\u5BF9\u503A\u52A1\u3001\u6D41\u52A8\u6027\u4E94\u7EC4\u7B97\u5F0F\u5404\u7B97\u6B63\u5E38\u53E3\u5F84\u4E0E\u538B\u529B\u53E3\u5F84\uFF0C\u518D\u770B\u62C5\u4FDD\u6298\u4EF7\u3001\u6E05\u6536\u987A\u5E8F\u3001\u5951\u7EA6\u4F59\u91CF\u4E0E"\u8C01\u66FF\u5B83\u515C\u5E95"\u3002',en:"Answers one question: can this borrower service and repay through the cycle. Five ratio families \u2014 leverage, interest coverage, DSCR, free cash flow to debt, liquidity \u2014 each on a normalized and a stressed basis, then collateral haircuts, recovery ranking, covenant headroom and who actually stands behind it."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["risk","financial-health","us-stock"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u6B63\u6587\u7684"\u8212\u9002\u9608\u503C"\uFF08\u6760\u6746 3.0x\u3001DSCR 1.2x \u4E00\u7C7B\uFF09\u662F\u56FD\u9645\u516C\u53F8\u8D37\u6B3E\u7684\u60EF\u4F8B\u503C\uFF0C\u4E0D\u662F\u4EFB\u4F55\u5E02\u573A\u7684\u76D1\u7BA1\u7EBF\uFF1B\u5883\u5185\u516C\u53F8\u503A\u3001\u53EF\u8F6C\u503A\u4E0E\u94F6\u884C\u6388\u4FE1\u7684\u5951\u7EA6\u6761\u6B3E\u548C\u5B9A\u4E49\u5404\u4E0D\u76F8\u540C\uFF0C\u8981\u6309\u52DF\u96C6\u8BF4\u660E\u4E66\u4E0E\u5E74\u62A5\u539F\u6587\u6838\u5BF9\u3002\u5B83\u5199\u51FA\u7684 approve / decline / \u7ED3\u6784\u5EFA\u8BAE\u5C5E\u4FE1\u7528\u4FA7\u7684\u65B9\u6CD5\u63A8\u6F14\uFF0C\u65E2\u4E0D\u662F\u6388\u4FE1\u610F\u89C1\u4E5F\u4E0D\u662F\u8BA2\u5355\u2014\u2014\u672C\u63D2\u4EF6\u4E0D\u4EE3\u4F60\u4E0B\u5355\u3002',en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. Its comfort thresholds (3.0x leverage, 1.2x DSCR and the rest) are international corporate-lending conventions, not any market's regulatory line; domestic bond, convertible and bank-facility covenants differ in both level and definition, so check them against the offering circular and the annual report as filed. The approve / decline / restructure it writes is a credit-side rehearsal, neither a credit opinion nor an order \u2014 this plugin places nothing for you."}},{key:"eclComputation",name:"ecl-computation",label:{zh:"\u9884\u671F\u4FE1\u7528\u635F\u5931\u4E0E\u4E09\u9636\u6BB5\u51CF\u503C",en:"Expected Credit Loss"},description:{zh:'\u6309 IFRS 9 \u7684\u4E09\u9636\u6BB5\u601D\u8DEF\u628A\u51CF\u503C\u62C6\u5F00\uFF1A\u9636\u6BB5\u5212\u5206\u4E0E\u8FC1\u5F99\u5224\u65AD\u3001PD / LGD / EAD \u4E09\u53C2\u6570\u3001\u5E94\u6536\u8D26\u9F84\u7684\u51C6\u5907\u77E9\u9635\u7B80\u5316\u6CD5\u3001\u5B8F\u89C2\u60C5\u666F\u52A0\u6743\u4E0E\u8986\u76D6\u7387\uFF0C\u518D\u95EE\u4E00\u53E5"\u4E0B\u884C\u60C5\u666F\u6982\u7387\u63D0\u9AD8 10% \u4F1A\u600E\u6837"\u3002',en:"Takes the IFRS 9 impairment logic apart: stage assignment and migration, the PD / LGD / EAD parameters, the simplified provision matrix over aging buckets, macro scenario weighting and coverage ratios, then one more question \u2014 what changes if the downside scenario gains ten points of probability."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["risk","financial-health","filings"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u4E2D\u56FD\u300A\u4F01\u4E1A\u4F1A\u8BA1\u51C6\u5219\u7B2C 22 \u53F7\u300B\u5DF2\u4E0E IFRS 9 \u7684\u4E09\u9636\u6BB5\u6846\u67B6\u5BF9\u9F50\uFF0C\u4F46\u62AB\u9732\u7C92\u5EA6\u4E0D\u540C\uFF1A\u4E0A\u5E02\u516C\u53F8\u5E74\u62A5\u7ED9\u51FA\u9636\u6BB5\u4F59\u989D\u4E0E\u51CF\u503C\u51C6\u5907\uFF0C\u4E0D\u7ED9\u51FA PD / LGD \u53C2\u6570\u3002\u6240\u4EE5\u8FD9\u9897\u66F4\u9002\u5408\u7528\u6765\u5224\u65AD\u522B\u4EBA\u62AB\u9732\u7684\u51CF\u503C\u5408\u4E0D\u5408\u7406\uFF0C\u800C\u4E0D\u662F\u81EA\u5DF1\u7B97\u51FA\u4E00\u4E2A\u51C6\u5907\u6570\uFF1B\u9700\u8981\u800C\u53D6\u4E0D\u5230\u7684\u660E\u7EC6\u4E00\u5F8B\u70B9\u540D\u7F3A\u53E3\uFF0C\u4E0D\u7528\u5408\u8BA1\u5012\u63A8\u3002",en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. China's Accounting Standard for Business Enterprises No. 22 already follows the IFRS 9 three-stage framework, but disclosure granularity differs: listed issuers give stage balances and impairment charges, not PD / LGD parameters. Use this skill to judge whether a disclosed provision is defensible rather than to compute your own; detail that retrieval cannot get is named as a gap, never back-derived from a total."}},{key:"insuranceReserving",name:"insurance-reserving",label:{zh:"\u4FDD\u9669\u51C6\u5907\u91D1\u4E0E\u7EFC\u5408\u6210\u672C\u7387",en:"Insurance Reserving"},description:{zh:'\u4E00\u6761\u51C6\u5907\u91D1\u94FE\u6761\u8D70\u5230\u5E95\uFF1A\u8D54\u6B3E\u53D1\u5C55\u4E09\u89D2\u3001\u5E74\u9F84\u5230\u5E74\u9F84\u56E0\u5B50\u3001\u94FE\u5F0F\u6CD5\u4E0E Bornhuetter-Ferguson\u3001IBNR\uFF0C\u518D\u843D\u5230\u7EFC\u5408\u6210\u672C\u7387\u2014\u2014\u628A"\u672A\u51B3\u8D54\u6B3E\u4F30\u5F97\u51C6\u4E0D\u51C6"\u548C"\u8FD9\u5355\u627F\u4FDD\u4E1A\u52A1\u5230\u5E95\u8D5A\u4E0D\u8D5A\u94B1"\u5206\u6210\u4E24\u4EF6\u4E8B\u3002',en:'Runs the reserve chain end to end: loss development triangles, age-to-age factors, chain ladder and Bornhuetter-Ferguson, IBNR, then the combined ratio \u2014 keeping "are unpaid claims estimated well" and "does this book actually earn" as two separate questions.'},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["risk","financial-health"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u7CBE\u7B97\u5047\u8BBE\u3001\u6298\u73B0\u4E0E\u8D1F\u503A\u8BA1\u91CF\u6309 IFRS 17 \u4E0E\u4E00\u822C\u7CBE\u7B97\u60EF\u4F8B\u5199\uFF0C\u5883\u5185\u4E0A\u5E02\u9669\u4F01\u7684\u6CD5\u5B9A\u51C6\u5907\u91D1\u3001\u6298\u73B0\u7387\u53C2\u8003\u66F2\u7EBF\u4E0E\u4FDD\u6237\u50A8\u91D1\u53E3\u5F84\u53E6\u6709\u89C4\u5B9A\u3002\u53D1\u5C55\u4E09\u89D2\u8981\u6309\u9669\u79CD\u548C\u5E74\u5EA6\u62C6\u5F00\u7684\u8D54\u6B3E\u660E\u7EC6\uFF0C\u8FD9\u7C7B\u7C92\u5EA6\u5728\u516C\u5F00\u62AB\u9732\u91CC\u5E38\u5E38\u53D6\u4E0D\u5230\u2014\u2014\u70B9\u540D\u7F3A\u53E3\uFF0C\u4E0D\u8981\u62FF\u5408\u8BA1\u6570\u644A\u3002",en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. Its actuarial assumptions, discounting and measurement follow IFRS 17 and general actuarial practice; statutory reserves, the reference yield curve and policyholder-deposit treatment for listed Chinese insurers follow separate rules. A development triangle needs claims detail split by line and accident year \u2014 granularity public disclosure often does not give, so name the gap instead of spreading a total across it."}},{key:"bankingCompliance",name:"banking-compliance",label:{zh:"\u94F6\u884C\u8D44\u672C\u4E0E\u6D41\u52A8\u6027\u6307\u6807",en:"Bank Capital Ratios"},description:{zh:'\u94F6\u884C\u80A1\u6700\u786C\u7684\u51E0\u5F20\u8868\uFF1ACET1 / Tier 1 / \u603B\u8D44\u672C\u5145\u8DB3\u7387\u3001\u98CE\u9669\u52A0\u6743\u8D44\u4EA7\u53CA\u5176\u6743\u91CD\u7ED3\u6784\u3001\u6760\u6746\u7387\u4E0E LCR / NSFR\uFF0C\u52A0\u4E00\u5957"\u8FDD\u7EA6\u6253\u8FDB\u6765\u540E\u8D44\u672C\u591F\u4E0D\u591F"\u7684\u538B\u529B\u5F62\u72B6\u3002',en:"The hardest numbers on a bank name: CET1 / Tier 1 / total capital adequacy, risk-weighted assets and their weight structure, the leverage ratio, LCR and NSFR, plus a pass that asks whether capital still holds once defaults arrive."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["risk","financial-health","macro"],riskNote:{zh:"\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u9608\u503C\u6309\u5DF4\u585E\u5C14\u539F\u503C\u5199\uFF084.5% / 6% / 8%\uFF09\uFF1A\u4E2D\u56FD\u5927\u9646\u9002\u7528\u300A\u5546\u4E1A\u94F6\u884C\u8D44\u672C\u7BA1\u7406\u529E\u6CD5\u300B\uFF0C\u6838\u5FC3\u4E00\u7EA7\u6700\u4F4E 5% \u4E4B\u4E0A\u8FD8\u6709\u50A8\u5907\u8D44\u672C\u4E0E\u7CFB\u7EDF\u91CD\u8981\u6027\u9644\u52A0\uFF0C\u8D44\u672C\u5B9A\u4E49\u4E0E\u98CE\u9669\u6743\u91CD\u4E5F\u53E6\u6709\u8868\u2014\u2014\u8FD9\u9897\u7684\u6BD4\u7387\u5F62\u72B6\u53EF\u4EE5\u7528\uFF0C\u6570\u5B57\u53EA\u80FD\u5F53\u5883\u5916\u53C2\u7167\uFF0C\u4E0D\u80FD\u5F53\u5883\u5185\u5408\u89C4\u5224\u65AD\u3002\u98CE\u9669\u6743\u91CD\u660E\u7EC6\u4E0E LCR \u5206\u9879\u5728 A \u80A1\u5E74\u62A5\u91CC\u7684\u62AB\u9732\u7C92\u5EA6\u4E0D\u4E00\uFF0C\u53D6\u4E0D\u5230\u5C31\u70B9\u540D\u7F3A\u53E3\u3002",en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. Its thresholds are Basel originals (4.5% / 6% / 8%): mainland China applies the Capital Rules for Commercial Banks, where the 5% minimum CET1 sits on top of a conservation buffer and system-importance add-ons, and capital definitions and risk-weight tables differ again. Use the ratio shapes, treat the numbers as an overseas reference, and never as a domestic compliance judgement; risk-weight and LCR detail varies by filing, so missing lines are named as gaps."}},{key:"forensicAccounting",name:"forensic-accounting",label:{zh:"\u8D26\u52A1\u5F02\u5E38\u4E0E\u6570\u5B57\u5206\u5E03\u6392\u67E5",en:"Forensic Ledger Screening"},description:{zh:"\u62FF\u8D26\u548C\u6570\u5B57\u505A\u53D6\u8BC1\u5F0F\u6392\u67E5\uFF1A\u9996\u4F4D\u6570\u5B57\u7684 Benford \u5206\u5E03\u68C0\u9A8C\u3001\u6574\u6570\u4E0E\u91CD\u590D\u91D1\u989D\u3001\u8D44\u91D1\u5FAA\u73AF\u8DEF\u5F84\u3001\u4F9B\u5E94\u5546\u4E0E\u5173\u8054\u65B9\u91CD\u5408\uFF0C\u5E76\u628A\u7ED3\u8BBA\u5199\u6210\u4E00\u6761\u7ECF\u5F97\u8D77\u590D\u6838\u4E0E\u8D28\u8BE2\u7684\u8BC1\u636E\u94FE\u3002",en:"Screens a ledger forensically: Benford first-digit tests, round-number and repeated-amount patterns, round-trip flows, vendor and related-party overlaps \u2014 written up as an evidence chain that can survive review and cross-examination."},owner:"GAJETOso",repository:"financeskills",status:"watchlist",lastCommit:"2026-10-01",reviewBy:"2026-11-15",tags:["verification","risk","financial-health"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1B\u4E0A\u6E38\u6700\u8FD1\u4E00\u6B21\u63D0\u4EA4\u662F 2026-10-01\uFF0C\u542F\u7528\u524D\u8BF7\u81EA\u884C\u590D\u6838\u6765\u6E90\u3002\u9664\u9996\u4F4D\u6570\u5B57\u68C0\u9A8C\u53EF\u4EE5\u53EA\u5BF9\u516C\u5F00\u62A5\u8868\u505A\u4EE5\u5916\uFF0C\u8FD9\u9897\u7684\u4E3B\u8981\u8DEF\u5F84\uFF08\u94F6\u884C\u6D41\u6C34\u3001\u5458\u5DE5\u4E0E\u4F9B\u5E94\u5546\u4FE1\u606F\u6BD4\u5BF9\u3001\u4F01\u4E1A\u5185\u90E8\u7CFB\u7EDF\uFF09\u9700\u8981\u4F7F\u7528\u8005\u81EA\u5DF1\u63D0\u4F9B\u8D26\u52A1\u660E\u7EC6\uFF1A\u672C\u63D2\u4EF6\u4E0D\u8FDE\u4F01\u4E1A\u5185\u90E8\u7CFB\u7EDF\uFF0C\u4E5F\u6CA1\u6709\u90A3\u4E9B\u6570\u636E\u6E90\u3002\u5B83\u7ED9\u51FA\u7684"\u7591\u4F3C"\u6E05\u5355\u662F\u6392\u67E5\u7EBF\u7D22\uFF0C\u4E0D\u662F\u821E\u5F0A\u8BA4\u5B9A\uFF0C\u4E5F\u4E0D\u6784\u6210\u5BA1\u8BA1\u6216\u6CD5\u5F8B\u610F\u89C1\uFF1B\u6837\u672C\u91CF\u4E0D\u8DB3\u65F6\u9996\u4F4D\u6570\u5B57\u68C0\u9A8C\u672C\u8EAB\u4E0D\u6210\u7ACB\uFF0C\u6B63\u6587\u7684\u95E8\u69DB\u8981\u7167\u505A\u3002',en:"Cold-start experiment; upstream last moved on 2026-10-01, so review the sources before use. Only the first-digit test can run on published statements; the rest of this skill's paths \u2014 bank statements, employee-versus-vendor matching, internal ERP systems \u2014 require the user to supply the accounting detail, since this plugin connects to no corporate system and holds no such source. What it returns is a list of leads, not a fraud finding, and neither an audit nor a legal opinion; a Benford test on too small a sample is void, and the sample thresholds in the text stand."}},{key:"crossMarketListingChoice",name:"cross-market-listing-choice",label:{zh:"\u8DE8\u5E02\u573A\u9009\u7EBF\uFF08A/H \xB7 ADR/HK\uFF09",en:"Cross-Market Listing Choice"},description:{zh:"\u540C\u4E00\u5BB6\u516C\u53F8\u5728\u591A\u4E2A\u5E02\u573A\u5404\u6709\u4E0A\u5E02\u7EBF\u65F6\uFF0C\u9009\u4E00\u6761\u6765\u6301\u6709\u3001\u52A0\u4ED3\u6216\u89C2\u5BDF\uFF1AA/H \u6EA2\u4EF7\u4E0E\u5E01\u79CD\u80A1\u606F\u7A0E\u3001\u6D41\u52A8\u6027\u4E0E\u901A\u9053\u3001ADR \u6362\u7B97\u6BD4\u4F8B\u4E0E\u62AB\u9732\u6587\u4EF6\u8DEF\u5F84\u3002\u516C\u53F8\u5C42\u9762\u53EA\u7814\u7A76\u4E00\u6B21\u2014\u2014A \u4E0E H \u662F\u540C\u4E00\u5BB6\u516C\u53F8\u7684\u4E24\u6761\u7EBF\uFF0C\u53D8\u7684\u53EA\u6709\u4EF7\u5DEE\u3001\u7A0E\u3001\u5E01\u79CD\u548C\u4F60\u80FD\u4E0D\u80FD\u4E70\u5230\u3002",en:"Picks which listing of a single issuer to hold, add, or watch: A/H premium and currency/dividend withholding, liquidity and channel access, ADR conversion ratios and filing paths. The company is researched once \u2014 A and H are two lines of the same business, so what changes is spread, tax, currency and whether you can reach it."},owner:"Howard-Jerry",repository:"quant-agent-skills",status:"watchlist",lastCommit:"2026-08-05",reviewBy:"2026-11-15",tags:["a-share","us-stock","portfolio","risk"],riskNote:{zh:'\u51B7\u542F\u52A8\u5B9E\u9A8C\uFF1A\u4E0A\u6E38\u4E94\u6B21\u63D0\u4EA4\u5168\u843D\u5728 2026-08-05 \u540C\u4E00\u5929\uFF0C\u4E4B\u540E\u65E0\u7EF4\u62A4\uFF0C\u4F5C\u8005\u58F0\u660E\u6B63\u6587\u6765\u81EA\u5176\u79C1\u6709\u91CF\u5316\u7CFB\u7EDF\uFF08\u6570\u636E\u5C42\u5C1A\u672A\u5F00\u6E90\uFF09\u3002\u8FD9\u9897\u53EA\u505A\u9009\u7EBF\uFF0C\u4E0D\u91CD\u505A\u516C\u53F8\u7814\u7A76\u2014\u2014\u516C\u53F8\u672C\u8EAB\u7684\u7ED3\u8BBA\u4EA4\u7ED9\u65E2\u6709\u7814\u7A76\u8DEF\u5F84\u3002\u672C\u63D2\u4EF6\u6CA1\u6709\u73B0\u6210\u7684 A/H \u6EA2\u4EF7\u6216 ADR \u5E73\u4EF7\u6761\u76EE\uFF1A\u6EA2\u4EF7\u5FC5\u987B\u7531\u4E24\u6761\u7EBF\u540C\u4E00 as-of \u4EA4\u6613\u65E5\u7684\u6536\u76D8\u4EF7\u52A0\u4E0A\u5F53\u65E5\u6C47\u7387\u73B0\u7B97\uFF0C\u8FD9\u4E09\u9879\u4EFB\u4E00\u9879\u53D6\u4E0D\u5230\u5C31\u4E0D\u7ED9\u6EA2\u4EF7\u6570\u5B57\uFF0C\u53EA\u62A5\u544A\u7F3A\u54EA\u4E00\u9879\uFF1B\u6C47\u7387\u6761\u76EE\u6309\u6B21\u6D88\u8017\u4E0A\u6E38\u79EF\u5206\uFF0C\u51ED\u636E\u7F3A\u5931\u3001\u9650\u6D41\u4E0E\u540E\u7AEF\u9519\u8BEF\u4E00\u5F8B\u4E0D\u91CD\u8BD5\uFF0C\u4E5F\u4E0D\u8BB8\u7528\u8BB0\u5FC6\u91CC\u7684\u8FD1\u4F3C\u6C47\u7387\u8865\u6570\u3002\u672C\u63D2\u4EF6\u4E0D\u6301\u6709\u4F7F\u7528\u8005\u7684\u6210\u4EA4\u8D26\u672C\uFF0C\u6301\u4ED3\u4E0E\u6210\u672C\u4EF7\u53EA\u80FD\u6309\u4F60\u5728\u5BF9\u8BDD\u91CC\u5F53\u573A\u7ED9\u51FA\u7684\u4FE1\u606F\u56DE\u7B54\uFF0C\u56DE\u7B54\u5B8C\u5C31\u653E\u4E0B\uFF0C\u4E0D\u6301\u4E45\u5316\u3002\u4EF7\u5DEE\u662F\u5F53\u5929\u7684\u4E8B\u5B9E\uFF0C"\u6298\u4EF7\u7684\u90A3\u6761\u7EBF\u4F1A\u6DA8\u56DE\u6765"\u4E0D\u662F\u8FD9\u9897\u7684\u7ED3\u8BBA\uFF0C\u5386\u53F2\u4EF7\u5DEE\u533A\u95F4\u53EA\u662F\u53C2\u7167\u3001\u4E0D\u662F\u76EE\u6807\u3002\u672C\u63D2\u4EF6\u4E0D\u63D0\u4F9B\u4EA4\u6613\u6267\u884C\u754C\u9762\uFF0C\u4E0D\u6784\u6210\u6295\u8D44\u5EFA\u8BAE\uFF0C\u52A8\u54EA\u6761\u7EBF\u4E0E\u52A8\u591A\u5C11\u7531\u4F7F\u7528\u8005\u81EA\u5DF1\u51B3\u5B9A\u5E76\u81EA\u5DF1\u6267\u884C\u3002',en:`Cold-start experiment: all five upstream commits landed on 2026-08-05 with nothing since, and the author states the text comes from a private quant system whose data layer is not yet open. This skill only picks a listing \u2014 it never re-runs the company research, which stays with the existing paths. This plugin has no ready-made A/H premium or ADR parity entry: the premium must be computed from both lines' closes on the same as-of trading day plus that day's FX, and if any of the three is missing you report which one instead of publishing a premium. FX entries consume upstream quota; missing credentials, throttling and backend errors are never retried, and an approximate rate from memory is not a substitute. This plugin holds no user trade ledger \u2014 position and cost basis can only be answered from what the user states in the conversation, and nothing is persisted. A spread is a same-day fact; "the cheaper line will converge" is not a conclusion of this skill, and a historical range is a reference, not a target. No trading interface is provided and nothing here is investment advice: which line to take, and how much, stays with the user.`}}]),Ke=Object.freeze({market:Object.freeze({zh:"\u5E02\u573A\u53E3\u5F84",en:"Market"}),capability:Object.freeze({zh:"\u5206\u6790\u65B9\u6CD5",en:"Method"}),topic:Object.freeze({zh:"\u573A\u666F\u4E3B\u9898",en:"Topic"})}),G=Object.freeze({"a-share":{zh:"A \u80A1",en:"A-share",axis:"market"},"business-analysis":{zh:"\u4E1A\u52A1\u5206\u6790",en:"Business analysis",axis:"capability"},"capital-allocation":{zh:"\u8D44\u672C\u914D\u7F6E",en:"Capital allocation",axis:"capability"},"cash-flow":{zh:"\u73B0\u91D1\u6D41",en:"Cash flow",axis:"capability"},competition:{zh:"\u7ADE\u4E89\u683C\u5C40",en:"Competition",axis:"topic"},earnings:{zh:"\u4E1A\u7EE9\u4E0E\u7535\u8BDD\u4F1A",en:"Earnings",axis:"capability"},education:{zh:"\u6559\u5B66",en:"Education",axis:"topic"},filings:{zh:"\u62AB\u9732\u6587\u4EF6",en:"Filings",axis:"capability"},"financial-health":{zh:"\u8D22\u52A1\u5065\u5EB7",en:"Financial health",axis:"capability"},instruments:{zh:"\u671F\u6743\u4E0E\u57FA\u91D1",en:"Options & funds",axis:"topic"},macro:{zh:"\u5B8F\u89C2\u4E0E\u884C\u4E1A",en:"Macro & industry",axis:"topic"},monitoring:{zh:"\u76D1\u63A7",en:"Monitoring",axis:"topic"},orders:{zh:"\u8BA2\u5355",en:"Orders",axis:"topic"},perspective:{zh:"\u5206\u6790\u89C6\u89D2",en:"Perspective",axis:"topic"},"peter-lynch":{zh:"\u5F7C\u5F97\xB7\u6797\u5947",en:"Peter Lynch",axis:"topic"},portfolio:{zh:"\u7EC4\u5408\u4E0E\u4ED3\u4F4D",en:"Portfolio",axis:"topic"},risk:{zh:"\u98CE\u9669",en:"Risk",axis:"topic"},strategy:{zh:"\u6218\u7565",en:"Strategy",axis:"topic"},tax:{zh:"\u7A0E\u52A1",en:"Tax",axis:"topic"},technicals:{zh:"\u6280\u672F\u9762",en:"Technicals",axis:"topic"},"trade-discipline":{zh:"\u4EA4\u6613\u7EAA\u5F8B",en:"Trade discipline",axis:"topic"},"us-stock":{zh:"\u7F8E\u80A1",en:"US equity",axis:"market"},valuation:{zh:"\u4F30\u503C",en:"Valuation",axis:"capability"},verification:{zh:"\u8BC1\u636E\u6838\u9A8C",en:"Verification",axis:"capability"}}),He=Object.freeze({zh:Object.freeze({all:"\u5168\u90E8",...Object.fromEntries(Object.entries(G).map(([t,e])=>[t,e.zh]))}),en:Object.freeze({all:"All",...Object.fromEntries(Object.entries(G).map(([t,e])=>[t,e.en]))})})});var he={};H(he,{SELECTED_SKILL_METHODS:()=>Je,SELECTED_SKILL_PRESETS:()=>Ge,SELECTED_SKILL_PRESET_ORDER:()=>J,SELECTED_SKILL_REQUIREMENTS:()=>Qe,SELECTED_SKILL_ROLES:()=>Ve,SELECTED_SKILL_ROLE_ALIASES:()=>L,SELECTED_SKILL_ROUTING:()=>S,SELECTED_SKILL_STAGES:()=>$e,selectedSkillNamesForRole:()=>Xe,selectedSkillRoleKey:()=>ce,selectedSkillRouting:()=>Ye,selectedSkillUseWhen:()=>Ze});function ce(t){return L[t]??t}function Ye(t){return S[t]}function Xe(t,e){let a=ce(t);return e.filter(s=>S[s.name]?.roles.includes(a)).map(s=>s.name)}function Ze(t,e="zh"){let a=S[t];return a?.useWhen[e]??a?.useWhen.zh??""}var Ve,L,Ge,J,$e,Je,Qe,S,Q=K(()=>{"use strict";Ve=Object.freeze({main:Object.freeze({zh:"\u4E3B Agent",en:"Main Agent"}),data_junior:Object.freeze({zh:"\u6570\u636E\u5206\u6790",en:"Data analysis"}),web_retriever:Object.freeze({zh:"\u68C0\u7D22\u4E0E\u53D6\u8BC1",en:"Retrieval & evidence"})}),L=Object.freeze({data_analyst:"data_junior"}),Ge=Object.freeze({main:Object.freeze({zh:"\u81EA\u52A8\u6A21\u5F0F",en:"Auto mode"}),data_collector:Object.freeze({zh:"\u884C\u60C5\u4E13\u5BB6",en:"Market specialist"}),web_retriever:Object.freeze({zh:"\u8D44\u8BAF\u4E13\u5458",en:"News specialist"}),data_junior:Object.freeze({zh:"\u5206\u6790\u5E08",en:"Analyst"}),visualization_specialist:Object.freeze({zh:"\u7ED8\u56FE\u4E13\u5458",en:"Chart specialist"})}),J=Object.freeze(["main","data_collector","web_retriever","data_junior","visualization_specialist"]),$e=Object.freeze({research:Object.freeze({zh:"\u7814\u7A76",en:"Research"}),"pre-event":Object.freeze({zh:"\u4E8B\u4EF6\u524D",en:"Pre-event"}),"post-event":Object.freeze({zh:"\u4E8B\u4EF6\u540E",en:"Post-event"}),monitoring:Object.freeze({zh:"\u6301\u7EED\u76D1\u63A7",en:"Monitoring"}),execution:Object.freeze({zh:"\u6267\u884C",en:"Execution"}),review:Object.freeze({zh:"\u590D\u76D8 / \u6838\u9A8C",en:"Review"}),learning:Object.freeze({zh:"\u6559\u5B66",en:"Learning"})}),Je=Object.freeze({valuation:Object.freeze({zh:"\u4F30\u503C",en:"Valuation"}),"financial-health":Object.freeze({zh:"\u8D22\u52A1\u5065\u5EB7",en:"Financial health"}),accounting:Object.freeze({zh:"\u4F1A\u8BA1\u4E0E\u62A5\u8868",en:"Accounting"}),risk:Object.freeze({zh:"\u98CE\u9669",en:"Risk"}),technical:Object.freeze({zh:"\u6280\u672F\u9762",en:"Technicals"}),portfolio:Object.freeze({zh:"\u7EC4\u5408",en:"Portfolio"}),tax:Object.freeze({zh:"\u7A0E\u52A1",en:"Tax"}),evidence:Object.freeze({zh:"\u8BC1\u636E",en:"Evidence"}),earnings:Object.freeze({zh:"\u4E1A\u7EE9",en:"Earnings"}),macro:Object.freeze({zh:"\u5B8F\u89C2\u4E0E\u884C\u4E1A",en:"Macro & industry"}),ownership:Object.freeze({zh:"\u6301\u4ED3\u4E0E\u5185\u90E8\u4EBA",en:"Ownership"}),screening:Object.freeze({zh:"\u7B5B\u9009",en:"Screening"}),teaching:Object.freeze({zh:"\u6559\u5B66",en:"Teaching"}),trade:Object.freeze({zh:"\u4EA4\u6613\u7EAA\u5F8B",en:"Trade discipline"})}),Qe=Object.freeze({financial_statements:Object.freeze({zh:"\u8D22\u52A1\u62A5\u8868",en:"Financial statements"}),price_history:Object.freeze({zh:"\u884C\u60C5\u5E8F\u5217",en:"Price history"}),filings:Object.freeze({zh:"\u62AB\u9732\u6587\u4EF6",en:"Filings"}),portfolio:Object.freeze({zh:"\u6301\u4ED3\u6570\u636E",en:"Portfolio data"}),options:Object.freeze({zh:"\u671F\u6743\u94FE",en:"Options chain"}),macro:Object.freeze({zh:"\u5B8F\u89C2\u5E8F\u5217",en:"Macro series"}),fx:Object.freeze({zh:"\u6C47\u7387",en:"FX rates"}),peer_data:Object.freeze({zh:"\u540C\u4E1A\u6570\u636E",en:"Peer data"}),user_input:Object.freeze({zh:"\u7528\u6237\u63D0\u4F9B\u7684\u4FE1\u606F",en:"User-provided input"}),transcript:Object.freeze({zh:"\u7535\u8BDD\u4F1A\u7EAA\u8981",en:"Transcript"}),industry_data:Object.freeze({zh:"\u884C\u4E1A\u6570\u636E",en:"Industry data"})}),S=Object.freeze({"buffett-investment-framework":Object.freeze({market:Object.freeze(["global"]),stage:"research",methods:Object.freeze(["valuation","financial-health","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u6309\u5546\u4E1A\u8D28\u91CF\u3001\u8D44\u672C\u914D\u7F6E\u3001\u4F30\u503C\u4E0E\u98CE\u9669\u642D\u5EFA\u57FA\u672C\u9762\u7814\u7A76\u6846\u67B6\uFF0C\u6216\u660E\u786E\u63D0\u5230\u5DF4\u83F2\u7279\u5F0F\u5206\u6790\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5DF4\u83F2\u7279\u3001\u5546\u4E1A\u8D28\u91CF\u3001\u8D44\u672C\u914D\u7F6E\u3001\u62A4\u57CE\u6CB3\u3002",en:"Use when the task matches this method: evidence-led business quality, capital allocation, valuation, and risk analysis. Primarily US-market oriented. Triggers on Buffett Investment Framework, Business analysis, Cash flow, Perspective, Risk, Valuation."}),requires:Object.freeze(["financial_statements","price_history"]),overlaps:Object.freeze(["stock-valuation","company-valuation","china-dcf","china-comps-analysis","valuation-investment-strategy","stock-eval","peter-lynch-skill","china-initiating-coverage","stock-screener"]),canonicalFor:Object.freeze([])}),"financial-health":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["financial-health","accounting"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u68C0\u67E5\u76C8\u5229\u8D28\u91CF\u3001\u73B0\u91D1\u8F6C\u6362\u3001\u8425\u8FD0\u8D44\u672C\u3001\u6760\u6746\u4E0E\u8D44\u4EA7\u8D1F\u503A\u8868\u98CE\u9669\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8D22\u52A1\u5065\u5EB7\u3001\u73B0\u91D1\u6D41\u3001\u5E94\u6536\u8D26\u6B3E\u3001\u51CF\u503C\u3001\u8D1F\u503A\u3002\u53EA\u770B\u4E00\u4E2A\u5B63\u5EA6\u589E\u901F\u65F6\u4E0D\u8981\u7528\u3002",en:'Use when the user asks to check earnings quality, cash conversion, working capital, leverage or balance-sheet risk. Triggers on "financial health", "cash flow", "receivables", "impairment", "leverage". Not for a single quarter growth read.'}),requires:Object.freeze(["financial_statements"]),overlaps:Object.freeze(["financial-report-analyst","china-break-trace","forensic-accounting","result-validator","fact-check","evidence-gap-check"]),canonicalFor:Object.freeze([])}),"risk-warning-catalysts":Object.freeze({market:Object.freeze(["a-share"]),stage:"monitoring",methods:Object.freeze(["risk","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u628A\u7814\u7A76\u7ED3\u8BBA\u8F6C\u6210\u5E26\u6765\u6E90\u3001\u9608\u503C\u548C\u590D\u67E5\u9891\u7387\u7684\u98CE\u9669\u4E0E\u50AC\u5316\u5242\u76D1\u63A7\u9879\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u98CE\u9669\u76D1\u63A7\u3001\u50AC\u5316\u5242\u3001\u9608\u503C\u3001\u590D\u67E5\u9891\u7387\u3002",en:"Use when the task matches this method: turns research into source-backed risk and catalyst monitoring with thresholds and review cadence. Triggers on Risk Warning Catalysts, A-share, Monitoring, Risk."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze(["catalyst-calendar","catalyst-map","china-catalyst-calendar","thesis-tracker","china-thesis-tracker"]),canonicalFor:Object.freeze([])}),"valuation-investment-strategy":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["valuation","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u5728\u4E00\u6B21\u4E8B\u5B9E\u6838\u67E5\u4E4B\u540E\u642D\u5EFA\u5E26\u5047\u8BBE\u3001\u60C5\u666F\u4E0E\u5931\u6548\u6761\u4EF6\u7684\u4F30\u503C\u6846\u67B6\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4F30\u503C\u6846\u67B6\u3001\u60C5\u666F\u5206\u6790\u3001\u5931\u6548\u6761\u4EF6\u3002",en:"Use when the task matches this method: builds valuation scenarios with assumptions and invalidation conditions after the factual base is ready. Triggers on Valuation Investment Strategy, A-share, Risk, Valuation."}),requires:Object.freeze(["financial_statements","price_history","peer_data"]),overlaps:Object.freeze(["stock-valuation","company-valuation","china-dcf","china-comps-analysis","stock-eval","buffett-investment-framework","peter-lynch-skill"]),canonicalFor:Object.freeze([])}),"strategy-business-transition":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["evidence","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u68C0\u9A8C\u516C\u53F8\u6218\u7565\u53D9\u4E8B\u3001\u4E1A\u52A1\u8FC1\u79FB\u3001\u8D44\u672C\u914D\u7F6E\u4E0E\u8F6C\u578B\u91CC\u7A0B\u7891\u662F\u5426\u81EA\u6D3D\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u6218\u7565\u3001\u4E1A\u52A1\u8F6C\u578B\u3001\u8D44\u672C\u914D\u7F6E\u3001\u91CC\u7A0B\u7891\u3002",en:"Use when the task matches this method: tests strategy narratives, business migration, capital allocation, and transition milestones. Triggers on Strategy Business Transition, A-share, Strategy, Risk."}),requires:Object.freeze(["filings","industry_data"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"industry-competition-moat":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["evidence","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5224\u65AD\u884C\u4E1A\u7ED3\u6784\u3001\u7ADE\u4E89\u683C\u5C40\u3001\u4F9B\u9700\u4E0E\u516C\u53F8\u5DEE\u5F02\u5316\u662F\u5426\u53EF\u6301\u7EED\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u884C\u4E1A\u683C\u5C40\u3001\u7ADE\u4E89\u3001\u62A4\u57CE\u6CB3\u3001\u4F9B\u9700\u3002",en:"Use when the task matches this method: analyzes industry structure, competition, supply-demand, and sustainable differentiation. Triggers on Industry Competition Moat, A-share, Business analysis, Competition, Risk."}),requires:Object.freeze(["industry_data","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"business-decomposition-order-quality":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["financial-health","accounting"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u62C6\u89E3\u4EA7\u54C1\u3001\u5BA2\u6237\u3001\u9879\u76EE\u4E0E\u8BA2\u5355\uFF0C\u68C0\u67E5\u589E\u957F\u80FD\u5426\u8F6C\u6210\u6536\u5165\u4E0E\u73B0\u91D1\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4E1A\u52A1\u62C6\u89E3\u3001\u8BA2\u5355\u8D28\u91CF\u3001\u6536\u5165\u8F6C\u5316\u3001\u73B0\u91D1\u6D41\u3002",en:"Use when the task matches this method: breaks down products, customers, projects, and orders to test conversion into revenue and cash. Triggers on Business Decomposition Order Quality, A-share, Business analysis, Cash flow, Orders, Risk."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"10k-digest":Object.freeze({market:Object.freeze(["us-stock"]),stage:"post-event",methods:Object.freeze(["earnings","evidence"]),roles:Object.freeze(["web_retriever","main"]),primaryRole:"web_retriever",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u9010\u8282\u7CBE\u8BFB\u4E00\u4EFD\u7F8E\u80A1 10-K\uFF0C\u4EA7\u51FA\u6458\u8981\u3001\u5206\u8282\u8981\u70B9\u3001\u5173\u952E\u6307\u6807\u4E0E\u53EF\u6838\u5BF9\u51FA\u5904\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A10-K\u3001\u5E74\u62A5\u7CBE\u8BFB\u3001\u5206\u8282\u6458\u8981\u3002",en:"Use when the task matches this method: reads a 10-K section by section into an abstract, section summaries, key metrics and sourced references. Triggers on 10-K Report Digest, US equity, Filings, Business analysis."}),requires:Object.freeze(["filings"]),overlaps:Object.freeze(["earnings-preview","earnings-call-analysis","china-earnings-preview","china-earnings-analysis","china-variance-commentary","financial-report-analyst","china-break-trace"]),canonicalFor:Object.freeze(["us/post-event/10k-digest"])}),"bear-case":Object.freeze({market:Object.freeze(["us-stock"]),stage:"review",methods:Object.freeze(["evidence","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u5BF9\u4E00\u4E2A\u770B\u591A\u8BBA\u70B9\u505A\u6700\u5F3A\u7684\u53CD\u9762\u8BBA\u8BC1\u3001\u9010\u6761\u627E\u53CD\u8BC1\u4E0E\u8106\u5F31\u5047\u8BBE\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7A7A\u5934\u3001\u7EA2\u961F\u3001\u53CD\u65B9\u3001\u770B\u7A7A\u3001bear case\u3002\u5B83\u4E0D\u9884\u6D4B\u8DCC\u5E45\u3002",en:'Use when the user asks for the strongest counter-argument to a bullish thesis with counterevidence and fragile assumptions. Triggers on "bear case", "red team", "short thesis", "counter-argument". It does not forecast downside.'}),requires:Object.freeze(["filings","price_history"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"catalyst-calendar":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["earnings","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u5217\u51FA\u672A\u6765 90 \u5929\u7684\u4E8B\u4EF6\u50AC\u5316\u5242\u3001\u9884\u671F\u5F71\u54CD\u4E0E\u590D\u67E5\u8282\u594F\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u50AC\u5316\u5242\u3001\u65E5\u5386\u3001\u8D22\u62A5\u65E5\u3001\u89E3\u7981\u3001\u4E8B\u4EF6\u3002\u9700\u8981\u628A\u4E8B\u4EF6\u6309\u6CE8\u610F\u529B\u4F18\u5148\u7EA7\u6392\u5E8F\u65F6\u7528 catalyst-map\u3002",en:'Use when the user asks for the next 90 days of event catalysts with expected impact and a review cadence. Triggers on "catalyst", "calendar", "earnings date", "lock-up". Use catalyst-map when the ask is a ranked attention map.'}),requires:Object.freeze(["filings","macro"]),overlaps:Object.freeze(["catalyst-map","china-catalyst-calendar","risk-warning-catalysts","thesis-tracker","china-thesis-tracker"]),canonicalFor:Object.freeze(["us/monitoring/catalysts"])}),"competitor-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["evidence","valuation"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u56F4\u7ED5\u4E00\u5BB6\u516C\u53F8\u4E0E\u5176\u76F4\u63A5\u5BF9\u624B\u6BD4\u8F83\u62A4\u57CE\u6CB3\u3001\u5E02\u573A\u5730\u4F4D\u4E0E\u884C\u4E1A\u683C\u5C40\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7ADE\u4E89\u5BF9\u624B\u3001\u62A4\u57CE\u6CB3\u3001\u5E02\u573A\u5730\u4F4D\u3001\u540C\u4E1A\u3002",en:"Use when the task matches this method: moat, market position and industry dynamics for one company against its direct rivals. Triggers on Competitor Analysis, US equity, Competition, Business analysis, Risk."}),requires:Object.freeze(["peer_data","financial_statements"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"dividend-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["valuation","financial-health"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u5206\u7EA2\u3001\u56DE\u8D2D\u3001\u5E76\u8D2D\u3001\u503A\u52A1\u7BA1\u7406\u4E0E\u81EA\u7531\u73B0\u91D1\u6D41\u53BB\u5411\u5408\u8D77\u6765\u770B\u8D44\u672C\u914D\u7F6E\u7EAA\u5F8B\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5206\u7EA2\u3001\u56DE\u8D2D\u3001\u8D44\u672C\u914D\u7F6E\u3001\u81EA\u7531\u73B0\u91D1\u6D41\u3002",en:"Use when the task matches this method: reviews dividends, buybacks, M&A, debt and FCF deployment as one capital-allocation discipline. Triggers on Dividend & Capital Allocation, US equity, Capital allocation, Cash flow, Valuation."}),requires:Object.freeze(["financial_statements","price_history"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"earnings-call-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"post-event",methods:Object.freeze(["earnings","evidence"]),roles:Object.freeze(["web_retriever","main"]),primaryRole:"web_retriever",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u62FF\u5230\u4E1A\u7EE9\u7535\u8BDD\u4F1A\u7EAA\u8981\uFF0C\u8981\u6C42\u8BFB\u60C5\u7EEA\u3001\u4E3B\u9898\u4E0E\u7BA1\u7406\u5C42\u53E3\u5F84\u53D8\u5316\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7535\u8BDD\u4F1A\u3001\u7EAA\u8981\u3001\u7BA1\u7406\u5C42\u53E3\u5F84\u3001\u60C5\u7EEA\u3002",en:"Use when the task matches this method: reads sentiment, themes and shifts in management tone from earnings call transcripts. Triggers on Earnings Call Analysis, US equity, Earnings, Perspective."}),requires:Object.freeze(["transcript"]),overlaps:Object.freeze(["earnings-preview","china-earnings-preview","china-earnings-analysis","china-variance-commentary","financial-report-analyst","10k-digest","china-break-trace"]),canonicalFor:Object.freeze(["us/post-event/earnings-call"])}),"earnings-preview":Object.freeze({market:Object.freeze(["us-stock"]),stage:"pre-event",methods:Object.freeze(["earnings","risk"]),roles:Object.freeze(["data_junior","main"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5728\u7F8E\u80A1\u8D22\u62A5\u516C\u5E03\u524D\uFF0C\u5BF9\u6BD4\u4E00\u81F4\u9884\u671F\u4E0E\u671F\u6743\u9690\u542B\u6CE2\u52A8\uFF0C\u505A\u8D85\u9884\u671F / \u7B26\u5408 / \u4E0D\u53CA\u4E09\u6863\u60C5\u666F\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8D22\u62A5\u524D\u77BB\u3001\u9690\u542B\u6CE2\u52A8\u3001\u4E00\u81F4\u9884\u671F\u3001\u60C5\u666F\u3002",en:"Use when the task matches this method: compares consensus with the implied move and lays out beat / in-line / miss scenarios with watch KPIs. Triggers on Earnings Preview, US equity, Earnings, Risk, Monitoring."}),requires:Object.freeze(["financial_statements","options","macro"]),overlaps:Object.freeze(["earnings-call-analysis","china-earnings-preview","china-earnings-analysis","china-variance-commentary","financial-report-analyst","10k-digest","china-break-trace"]),canonicalFor:Object.freeze(["us/pre-event/earnings-preview"])}),"economics-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["macro","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u89E3\u8BFB\u7F8E\u56FD\u5B8F\u89C2\u6570\u636E\u4E0E\u5229\u7387\u8DEF\u5F84\uFF0C\u5E76\u4EA4\u4EE3\u5B83\u5982\u4F55\u4F20\u5BFC\u5230\u5E02\u573A\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7F8E\u56FD\u5B8F\u89C2\u3001\u5229\u7387\u8DEF\u5F84\u3001\u4F20\u5BFC\u3001CPI\u3001\u975E\u519C\u3002",en:"Use when the task matches this method: interprets US macro prints and the rate path, and spells out the transmission to markets. Triggers on US Economics Analysis, US equity, Macro & industry, Risk."}),requires:Object.freeze(["macro"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"etf-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["portfolio","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6BD4\u8F83 ETF \u7684\u8D39\u7387\u3001\u8DDF\u8E2A\u8BEF\u5DEE\u3001\u6D41\u52A8\u6027\u3001\u6210\u5206\u96C6\u4E2D\u5EA6\u4E0E\u6301\u4ED3\u91CD\u53E0\uFF0C\u5E76\u7ED9\u51FA\u5951\u5408\u5EA6\u8BC4\u5206\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AETF\u3001\u8D39\u7387\u3001\u8DDF\u8E2A\u8BEF\u5DEE\u3001\u6301\u4ED3\u91CD\u53E0\u3002",en:"Use when the task matches this method: expense ratio, tracking difference, liquidity, concentration and overlap rolled into a fitness score. Triggers on ETF Analysis, US equity, Options & funds, Portfolio, Risk."}),requires:Object.freeze(["price_history","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"fact-check":Object.freeze({market:Object.freeze(["us-stock"]),stage:"review",methods:Object.freeze(["evidence"]),roles:Object.freeze(["web_retriever","main"]),primaryRole:"web_retriever",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u628A\u62A5\u544A\u91CC\u7684\u6570\u5B57\u4E0E\u4E8B\u5B9E\u4E3B\u5F20\u9010\u6761\u5BF9\u7167\u4E00\u624B\u6765\u6E90\u3001\u6807\u6CE8\u5DF2\u6838\u9A8C / \u4E0D\u7B26 / \u65E0\u6CD5\u6838\u9A8C\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u6838\u9A8C\u3001fact check\u3001\u5F15\u7528\u3001\u4E00\u624B\u6765\u6E90\u3002\u5B83\u53EA\u6838\u4E8B\u5B9E\uFF0C\u4E0D\u91CD\u505A\u6295\u8D44\u7ED3\u8BBA\u3002",en:'Use when the user asks to verify every figure and factual claim against primary sources and mark verified / mismatch / unverifiable. Triggers on "fact check", "verify", "citations", "primary source". It verifies facts, not the investment conclusion.'}),requires:Object.freeze(["filings"]),overlaps:Object.freeze(["financial-health","financial-report-analyst","china-break-trace","forensic-accounting","result-validator","evidence-gap-check"]),canonicalFor:Object.freeze(["global/review/claims"])}),"financial-report-analyst":Object.freeze({market:Object.freeze(["us-stock"]),stage:"post-event",methods:Object.freeze(["accounting","financial-health"]),roles:Object.freeze(["data_junior","web_retriever"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u4ECE 10-K / 10-Q \u8BFB\u62A5\u8868\u8D28\u91CF\u3001\u5F02\u5E38\u7EA2\u65D7\u4E0E\u53EF\u4EA4\u4EE3\u51FA\u5904\u7684\u4FE1\u53F7\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A10-Q\u3001\u62A5\u8868\u8D28\u91CF\u3001\u7EA2\u65D7\u3001\u5F02\u5E38\u3002",en:"Use when the task matches this method: reads statement quality, red flags and one sourced signal from 10-K / 10-Q filings. Triggers on Financial Report Analyst, US equity, Filings, Financial health, Risk."}),requires:Object.freeze(["filings","financial_statements"]),overlaps:Object.freeze(["earnings-preview","earnings-call-analysis","china-earnings-preview","china-earnings-analysis","china-variance-commentary","10k-digest","china-break-trace","financial-health","forensic-accounting","result-validator","fact-check","evidence-gap-check"]),canonicalFor:Object.freeze(["us/quality/statement"])}),"industry-map":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["evidence","macro"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u4EA7\u4E1A\u94FE\u4E0A\u4E0B\u6E38\u753B\u6210\u6709\u5411\u56FE\uFF0C\u5B9A\u4F4D\u516C\u53F8\u4F4D\u7F6E\u3001\u4F9B\u9700\u74F6\u9888\u4E0E\u5229\u6DA6\u6C60\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4EA7\u4E1A\u94FE\u3001\u4E0A\u4E0B\u6E38\u3001\u74F6\u9888\u3001\u5229\u6DA6\u6C60\u3002",en:"Use when the task matches this method: maps the value chain as a directed graph to locate the company, find chokepoints and second-order ideas. Triggers on Industry Map, US equity, Macro & industry, Competition, Business analysis."}),requires:Object.freeze(["industry_data","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"insider-trading":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["ownership","evidence"]),roles:Object.freeze(["data_junior","web_retriever"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u4ECE SEC Form 4 \u8FFD\u8E2A\u9AD8\u7BA1\u4E0E\u8463\u4E8B\u589E\u51CF\u6301\u5E76\u505A\u89E3\u8BFB\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5185\u90E8\u4EBA\u3001Form 4\u3001\u589E\u51CF\u6301\u3001\u9AD8\u7BA1\u3002",en:"Use when the task matches this method: tracks executive and director buying and selling from SEC Form 4 filings. Triggers on Insider Trading, US equity, Filings, Monitoring, Perspective."}),requires:Object.freeze(["filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"institutional-ownership":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["ownership","evidence"]),roles:Object.freeze(["data_junior","web_retriever"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u4ECE 13F \u8BFB\u673A\u6784\u6301\u4ED3\u53D8\u5316\u3001\u8BC6\u522B\u8D44\u91D1\u8FC1\u79FB\u65B9\u5411\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A13F\u3001\u673A\u6784\u6301\u4ED3\u3001\u8D44\u91D1\u8FC1\u79FB\u3002",en:"Use when the task matches this method: reads changes in institutional holdings from 13F filings to spot where the money is moving. Triggers on Institutional Ownership, US equity, Filings, Monitoring."}),requires:Object.freeze(["filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"learning-coach":Object.freeze({market:Object.freeze(["global"]),stage:"learning",methods:Object.freeze(["teaching"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u628A\u4E00\u4EFD\u5206\u6790\u7ED3\u679C\u8BB2\u6210\u8BFE\u7A0B\u3001\u9010\u6307\u6807\u89E3\u91CA\u5E76\u53CD\u95EE\u7406\u89E3\u95EE\u9898\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8BB2\u89E3\u3001\u6559\u5B66\u3001\u9010\u6307\u6807\u3001\u7406\u89E3\u68C0\u9A8C\u3002",en:"Use when the task matches this method: explains an analysis metric by metric in plain words, then asks 3\u20135 Socratic questions. Triggers on Learning Coach, Education, Perspective."}),requires:Object.freeze(["user_input"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"options-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["technical","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u770B\u671F\u6743\u5E0C\u814A\u5B57\u6BCD\u3001\u9690\u542B\u6CE2\u52A8\u7387\u4E0E\u7B56\u7565\u9002\u914D\u5EA6\uFF0C\u7406\u89E3\u98CE\u9669\u5F62\u72B6\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u671F\u6743\u3001Greeks\u3001\u9690\u542B\u6CE2\u52A8\u7387\u3001\u7B56\u7565\u3002",en:"Use when the task matches this method: reviews Greeks, implied volatility and strategy fit to characterise an options risk shape. Triggers on Options Analysis, US equity, Options & funds, Risk."}),requires:Object.freeze(["options","price_history"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"portfolio-review":Object.freeze({market:Object.freeze(["us-stock"]),stage:"review",methods:Object.freeze(["portfolio","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u590D\u76D8\u5B9E\u9645\u6301\u4ED3\u6216\u7EC4\u5408\u7684\u6536\u76CA\u6765\u6E90\u3001\u96C6\u4E2D\u5EA6\u3001\u914D\u7F6E\u504F\u79BB\u4E0E\u98CE\u9669\u52A8\u4F5C\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7EC4\u5408\u590D\u76D8\u3001\u6301\u4ED3\u3001\u914D\u7F6E\u504F\u79BB\u3001\u96C6\u4E2D\u5EA6\u3002\u81EA\u9009\u6E05\u5355\u4E0D\u7B49\u4E8E\u6301\u4ED3\u3002",en:'Use when the user asks to review actual holdings or a portfolio for return drivers, concentration, allocation drift and risk actions. Triggers on "portfolio review", "holdings", "allocation drift", "concentration". A watchlist is not a portfolio.'}),requires:Object.freeze(["portfolio","price_history"]),overlaps:Object.freeze(["portfolio-concentration","risk-stress-test","position-sizing","position-ladder","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze(["global/portfolio/review"])}),"position-ladder":Object.freeze({market:Object.freeze(["us-stock"]),stage:"execution",methods:Object.freeze(["portfolio","trade"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u5EFA\u4ED3\u62C6\u6210\u5206\u6279\u80A1\u6570\u4E0A\u4E0B\u9650\u4E0E\u52A0\u51CF\u4ED3\u8282\u594F\uFF0C\u5E76\u68C0\u67E5\u6279\u6B21\u8BB0\u8D26\u4E0E\u6D17\u552E\u7A97\u53E3\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5206\u6279\u5EFA\u4ED3\u3001\u52A0\u51CF\u4ED3\u3001\u6279\u6B21\u3001\u6D17\u552E\u3002",en:"Use when the task matches this method: plans a staged entry with share-count floors and ceilings, trim/re-add cadence, lot and wash-sale checks. Triggers on Position Ladder, US equity, Portfolio, Monitoring."}),requires:Object.freeze(["portfolio","price_history"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze(["global/execution/ladder"])}),"result-validator":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["evidence","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u4ECE\u6570\u636E\u8D28\u91CF\u3001\u65B9\u6CD5\u4E00\u81F4\u6027\u4E0E\u4FE1\u53F7\u51B2\u7A81\u4E09\u4E2A\u7EF4\u5EA6\u7ED9\u4E00\u4EFD\u5206\u6790\u7ED3\u679C\u6253\u7F6E\u4FE1\u5EA6\u5206\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7F6E\u4FE1\u5EA6\u3001\u6570\u636E\u8D28\u91CF\u3001\u65B9\u6CD5\u4E00\u81F4\u6027\u3001\u4FE1\u53F7\u51B2\u7A81\u3002",en:"Use when the task matches this method: scores an analysis's confidence across data quality, methodology and signal consistency. Triggers on Result Validator, Verification, Perspective."}),requires:Object.freeze(["user_input"]),overlaps:Object.freeze(["financial-health","financial-report-analyst","china-break-trace","forensic-accounting","fact-check","evidence-gap-check"]),canonicalFor:Object.freeze([])}),"risk-stress-test":Object.freeze({market:Object.freeze(["us-stock"]),stage:"review",methods:Object.freeze(["risk","portfolio"]),roles:Object.freeze(["data_junior","main"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5BF9\u7EC4\u5408\u505A beta \u52A0\u6743\u655E\u53E3\u3001\u5386\u53F2\u60C5\u666F\u91CD\u653E\u3001VaR / CVaR\u3001\u6700\u5927\u56DE\u64A4\u4E0E\u6D41\u52A8\u6027\u9000\u51FA\u5929\u6570\u6D4B\u7B97\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u538B\u529B\u6D4B\u8BD5\u3001VaR\u3001CVaR\u3001\u56DE\u64A4\u3001\u98CE\u9669\u9884\u7B97\u3002",en:"Use when the task matches this method: beta-weighted exposure, historical scenario replay, VaR / CVaR, drawdown estimates and days to exit. Triggers on Risk Stress Test, US equity, Portfolio, Risk, Macro & industry."}),requires:Object.freeze(["portfolio","price_history","macro"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","position-sizing","position-ladder","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze(["global/portfolio/stress"])}),"sector-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["macro","technical"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u770B\u7F8E\u56FD\u5404\u677F\u5757\u7684\u76F8\u5BF9\u5F3A\u5F31\u4E0E\u8F6E\u52A8\u7EBF\u7D22\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u677F\u5757\u3001\u76F8\u5BF9\u5F3A\u5F31\u3001\u8F6E\u52A8\u3001\u884C\u4E1A\u3002",en:"Use when the task matches this method: reviews US sector positioning and rotation clues, and states what each read rests on. Triggers on Sector Analysis, US equity, Macro & industry, Competition."}),requires:Object.freeze(["price_history","macro"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"short-interest":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["ownership","risk"]),roles:Object.freeze(["data_junior","web_retriever"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u8BFB\u7A7A\u5934\u6BD4\u4F8B\u3001\u56DE\u8865\u6210\u672C\u4E0E\u6324\u538B\u6761\u4EF6\uFF0C\u5E76\u68C0\u67E5\u5229\u7A7A\u5806\u79EF\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7A7A\u5934\u3001short interest\u3001\u6324\u538B\u3001\u56DE\u8865\u3002",en:"Use when the task matches this method: analyses short ratio, cost to cover, squeeze conditions and bearish positioning signals. Triggers on Short Interest, US equity, Filings, Monitoring, Risk."}),requires:Object.freeze(["filings","price_history"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"stock-eval":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["valuation","financial-health","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u8D22\u52A1\u8D28\u91CF\u3001\u6210\u957F\u3001\u4F30\u503C\u4E0E\u98CE\u9669\u5408\u6210\u4E00\u6B21\u7F8E\u80A1\u7EFC\u5408\u8BC4\u4F30\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7EFC\u5408\u8BC4\u4F30\u3001\u57FA\u672C\u9762\u3001\u4F30\u503C\u3001\u98CE\u9669\u3002",en:"Use when the task matches this method: combines quality, growth, valuation and risk into one evaluation with a sourced conclusion. Triggers on Stock Evaluation, US equity, Business analysis, Financial health, Valuation, Risk."}),requires:Object.freeze(["financial_statements","price_history","peer_data"]),overlaps:Object.freeze(["stock-valuation","company-valuation","china-dcf","china-comps-analysis","valuation-investment-strategy","buffett-investment-framework","peter-lynch-skill","china-initiating-coverage","stock-screener"]),canonicalFor:Object.freeze(["us/research/comprehensive"])}),"stock-screener":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["screening","valuation"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309\u4F30\u503C\u3001\u8D28\u91CF\u3001\u52A8\u91CF\u3001\u60C5\u7EEA\u4E0E\u6210\u957F\u4E94\u4E2A\u7EF4\u5EA6\u7ED9\u4E00\u7BEE\u5B50\u7F8E\u80A1\u6253\u5206\u6392\u5E8F\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7B5B\u9009\u3001\u6253\u5206\u3001\u6392\u5E8F\u3001\u591A\u6807\u7684\u3002",en:"Use when the task matches this method: screens and ranks a list of US stocks across valuation, quality, momentum, sentiment and growth. Triggers on Stock Screener, US equity, Valuation, Business analysis, Technicals."}),requires:Object.freeze(["price_history","financial_statements"]),overlaps:Object.freeze(["buffett-investment-framework","peter-lynch-skill","stock-eval","china-initiating-coverage"]),canonicalFor:Object.freeze([])}),"stock-valuation":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["valuation"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u5BF9\u7F8E\u80A1\u6216\u5883\u5916\u4E0A\u5E02\u516C\u53F8\u505A DCF\u3001\u53EF\u6BD4\u516C\u53F8\u3001EV \u500D\u6570\u6216\u5269\u4F59\u6536\u76CA\u4F30\u503C\u533A\u95F4\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4F30\u503C\u3001DCF\u3001\u76EE\u6807\u4EF7\u3001\u5408\u7406\u533A\u95F4\u3002\u5355\u72EC\u7B97 WACC \u6216\u505A EV/\u80A1\u6743\u6865\u65F6\u7528\u66F4\u4E13\u95E8\u7684 skill\u3002",en:'Use when the user asks for a DCF, comparables, EV multiple or residual-income valuation range for a US or offshore listed company. Triggers on "valuation", "DCF", "target price", "fair value range".'}),requires:Object.freeze(["financial_statements","price_history","peer_data"]),overlaps:Object.freeze(["company-valuation","china-dcf","china-comps-analysis","valuation-investment-strategy","stock-eval","buffett-investment-framework","peter-lynch-skill"]),canonicalFor:Object.freeze(["us/valuation/multi-method"])}),"tax-lens":Object.freeze({market:Object.freeze(["us-stock"]),stage:"review",methods:Object.freeze(["tax","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u95EE\u9898\u6D89\u53CA\u7F8E\u56FD\u8D44\u672C\u5229\u5F97\u3001\u6D17\u552E\u7A97\u53E3\u3001\u5408\u683C\u80A1\u606F\u6301\u6709\u671F\u3001\u6279\u6B21\u9009\u62E9\u6216\u5E74\u5EA6\u7A0E\u8D1F\u62D6\u7D2F\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u7A0E\u3001wash sale\u3001\u957F\u671F / \u77ED\u671F\u3001\u7A0E\u8D1F\u3002\u4E2D\u56FD\u5927\u9646\u7A0E\u52A1\u4E0D\u8981\u5957\u7528\u3002",en:'Use when the question involves US capital-gains treatment, the wash-sale window, qualified-dividend holding periods, lot selection or annual tax drag. Triggers on "tax", "wash sale", "long-term / short-term", "tax drag". Not for mainland-China tax.'}),requires:Object.freeze(["portfolio","user_input"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze(["global/tax/us"])}),"technical-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["technical"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u7528\u5747\u7EBF\u3001\u6210\u4EA4\u91CF\u3001RSI / MACD \u8BFB\u8D8B\u52BF\u3001\u5173\u952E\u4EF7\u4F4D\u3001\u652F\u6491\u538B\u529B\u6216\u590D\u67E5\u89E6\u53D1\u6761\u4EF6\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u6280\u672F\u9762\u3001\u8865\u8DCC\u3001\u8D8B\u52BF\u3001\u652F\u6491\u538B\u529B\u3002\u5B83\u662F\u590D\u67E5\u6761\u4EF6\uFF0C\u4E0D\u662F\u65B9\u5411\u9884\u6D4B\u3002",en:'Use when the user asks for trend, key levels, support / resistance or re-check triggers using moving averages, volume, RSI or MACD. Triggers on "\u6280\u672F\u9762", "\u8865\u8DCC", "\u8D8B\u52BF", "\u652F\u6491\u538B\u529B". It gives re-check conditions, not a direction forecast.'}),requires:Object.freeze(["price_history"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"thesis-tracker":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["evidence","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5199\u4E0B\u8BBA\u70B9\u7684 KPI\u3001\u5931\u6548\u6761\u4EF6\u4E0E\u50AC\u5316\u5242\uFF0C\u5E76\u5728\u65B0\u6570\u636E\u5230\u6765\u540E\u590D\u6838\u7EF4\u6301 / \u8D70\u5F31 / \u5931\u6548\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8BBA\u70B9\u8DDF\u8E2A\u3001KPI\u3001\u5931\u6548\u6761\u4EF6\u3001\u50AC\u5316\u5242\u3002",en:"Use when the task matches this method: records KPIs, invalidation triggers and catalysts, then re-checks them as INTACT / WEAKENED / BROKEN. Triggers on Thesis Tracker, US equity, Verification, Monitoring, Perspective."}),requires:Object.freeze(["filings","price_history"]),overlaps:Object.freeze(["catalyst-calendar","catalyst-map","china-catalyst-calendar","risk-warning-catalysts","china-thesis-tracker"]),canonicalFor:Object.freeze([])}),"peter-lynch-skill":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["valuation","evidence","screening"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u6309\u5F7C\u5F97\xB7\u6797\u5947\u5F0F\u5FEB\u7B5B\uFF08SKIP / WATCHLIST / DEEP RESEARCH\uFF09\u6216\u5B8C\u6574\u5C3D\u8C03\u7814\u7A76\u4E00\u53EA\u7F8E\u80A1\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5F7C\u5F97\xB7\u6797\u5947\u3001\u5FEB\u7B5B\u3001\u5C3D\u8C03\u3001\u5206\u7C7B\u3002",en:"Use when the task matches this method: screens a ticker or company fast (SKIP / WATCHLIST / DEEP RESEARCH) or runs full due diligence, with linked sources under every claim. US and overseas-listing conventions. Triggers on Peter Lynch Research, Peter Lynch, US equity, Valuation, Risk, Verification."}),requires:Object.freeze(["financial_statements","price_history","filings"]),overlaps:Object.freeze(["stock-valuation","company-valuation","china-dcf","china-comps-analysis","valuation-investment-strategy","stock-eval","buffett-investment-framework","china-initiating-coverage","stock-screener"]),canonicalFor:Object.freeze([])}),"catalyst-map":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["earnings","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u4E8B\u4EF6\u6309\u5F71\u54CD\u4EC0\u4E48\u3001\u4EC0\u4E48\u65F6\u5019\u5F71\u54CD\u3001\u4F20\u5BFC\u5230\u8C01\u6392\u6210\u6CE8\u610F\u529B\u4F18\u5148\u7EA7\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u50AC\u5316\u5242\u5730\u56FE\u3001\u4E8B\u4EF6\u94FE\u3001\u6CE8\u610F\u529B\u3001\u4F20\u5BFC\u3002",en:"Use when the task matches this method: ranks upcoming events by what they move, when, and how they transmit across related names, and flags positions hanging on the same event chain. US and overseas calendar conventions. Triggers on Catalyst Map, Trade discipline, Macro & industry, Monitoring, US equity."}),requires:Object.freeze(["filings","macro"]),overlaps:Object.freeze(["catalyst-calendar","china-catalyst-calendar","risk-warning-catalysts","thesis-tracker","china-thesis-tracker","macro-event-analysis"]),canonicalFor:Object.freeze([])}),"watchlist-review":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["portfolio","evidence"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5BF9\u81EA\u9009\u6E05\u5355\u505A\u5206\u8BCA\uFF0C\u533A\u5206\u503C\u5F97\u76EF\u3001\u53EA\u4F5C\u80CC\u666F\u4E0E\u7406\u7531\u5DF2\u4E0D\u6210\u7ACB\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u81EA\u9009\u80A1\u3001\u5206\u8BCA\u3001\u6E05\u5355\u3001\u79FB\u9664\u3002",en:"Use when the task matches this method: triages the watchlist the user supplies into active focus, background monitoring, or removal, and says that what comes off is a list entry, not a position. Triggers on Watchlist Review, Trade discipline, Portfolio, Monitoring, US equity."}),requires:Object.freeze(["portfolio","price_history"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-ladder","position-management","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze([])}),"evidence-gap-check":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["evidence"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u4E00\u7B14\u60F3\u6CD5\u8FD8\u7F3A\u7684\u4E8B\u5B9E\u3001\u5047\u8BBE\u4E0E\u672A\u89E3\u95EE\u9898\u6309\u4F1A\u4E0D\u4F1A\u6539\u53D8\u5224\u65AD\u6392\u5E8F\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8BC1\u636E\u7F3A\u53E3\u3001\u5047\u8BBE\u3001\u672A\u89E3\u95EE\u9898\u3001\u7F6E\u4FE1\u5EA6\u3002",en:"Use when the task matches this method: ranks the missing facts, assumptions and open questions behind an idea by whether they change the judgement, and separates blocking gaps from confidence gaps. Triggers on Evidence Gap Check, Trade discipline, Verification, Risk."}),requires:Object.freeze(["user_input"]),overlaps:Object.freeze(["financial-health","financial-report-analyst","china-break-trace","forensic-accounting","result-validator","fact-check"]),canonicalFor:Object.freeze([])}),"thesis-validation":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["evidence","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A\u4E00\u4E2A\u8BF4\u6CD5\u538B\u6210\u53EF\u68C0\u9A8C\u7684\u8BBA\u70B9\u3001\u8BC1\u636E\u3001\u5931\u6548\u6761\u4EF6\u4E0E\u65F6\u95F4\u7A97\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8BBA\u70B9\u538B\u529B\u6D4B\u8BD5\u3001\u53EF\u68C0\u9A8C\u3001\u5931\u6548\u3001\u65F6\u95F4\u7A97\u3002",en:"Use when the task matches this method: turns a claim into something testable \u2014 thesis, evidence, invalidation, timeframe \u2014 then judges whether it is ready to be built on. Triggers on Thesis Validation, Trade discipline, Verification, Risk."}),requires:Object.freeze(["user_input","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"risk-reward-sanity-check":Object.freeze({market:Object.freeze(["us-stock"]),stage:"execution",methods:Object.freeze(["trade","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u7ED9\u51FA\u5165\u573A\u3001\u6B62\u635F\u4E0E\u76EE\u6807\uFF0C\u8981\u6C42\u7B97\u76C8\u4E8F\u6BD4\u5E76\u68C0\u67E5\u76EE\u6807\u662F\u5426\u5728\u566A\u58F0\u91CC\u3001\u6B62\u635F\u662F\u5426\u5728\u6D41\u52A8\u6027\u805A\u96C6\u5904\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u76C8\u4E8F\u6BD4\u3001\u6B62\u635F\u3001\u76EE\u6807\u3001\u7ED3\u6784\u81EA\u6D3D\u3002",en:"Use when the task matches this method: works out the reward-to-risk ratio from entry, stop and target, then tests whether the structure holds \u2014 targets inside noise, stops sitting in obvious liquidity pools. Triggers on Risk-Reward Sanity Check, Trade discipline, Risk, US equity."}),requires:Object.freeze(["price_history","user_input"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-ladder","position-management","watchlist-review","execution-plan-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze([])}),"execution-plan-check":Object.freeze({market:Object.freeze(["us-stock"]),stage:"execution",methods:Object.freeze(["trade","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u68C0\u67E5\u4E00\u4EFD\u4EA4\u6613\u8BA1\u5212\u5728\u64CD\u4F5C\u4E0A\u80FD\u5426\u843D\u5730\uFF1A\u8BA2\u5355\u7C7B\u578B\u3001\u6D41\u52A8\u6027\u3001\u70B9\u5DEE\u3001\u4E8B\u4EF6\u65F6\u70B9\u4E0E\u6B62\u635F\u6210\u4EA4\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u6267\u884C\u8BA1\u5212\u3001\u8BA2\u5355\u7C7B\u578B\u3001\u6D41\u52A8\u6027\u3001\u6B62\u635F\u3002",en:"Use when the task matches this method: checks whether a plan is operationally workable: order type against urgency, liquidity and spread risk, event timing, and whether a stop would actually fill. Triggers on Execution Plan Check, Trade discipline, Risk, Monitoring, US equity."}),requires:Object.freeze(["price_history","user_input"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-ladder","position-management","watchlist-review","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze([])}),"portfolio-concentration":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["portfolio","risk"]),roles:Object.freeze(["data_junior","main"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5224\u65AD\u7EC4\u5408\u662F\u5426\u8FC7\u5EA6\u538B\u5728\u540C\u4E00\u6279\u53D1\u884C\u4EBA\u3001\u884C\u4E1A\u3001\u4E3B\u9898\u6216\u76F8\u5173\u66B4\u9732\u4E0A\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u96C6\u4E2D\u5EA6\u3001\u53D1\u884C\u4E3B\u4F53\u3001\u884C\u4E1A\u3001\u76F8\u5173\u66B4\u9732\u3002",en:"Use when the task matches this method: shows whether a book leans too hard on a few issuers, sectors, themes or correlated exposures, and what holdings data that verdict needs to stand. Triggers on Portfolio Concentration, Trade discipline, Portfolio, Risk."}),requires:Object.freeze(["portfolio"]),overlaps:Object.freeze(["portfolio-review","risk-stress-test","position-sizing","position-ladder","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze(["global/portfolio/concentration"])}),"journal-pattern-analyzer":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["trade","teaching"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u4ECE\u81EA\u5DF1\u7684\u4EA4\u6613\u65E5\u5FD7\u91CC\u627E\u91CD\u590D\u51FA\u73B0\u7684\u4F18\u52BF\u4E0E\u5931\u8BEF\uFF0C\u5E76\u6309\u73AF\u5883\u5206\u7EC4\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4EA4\u6613\u65E5\u5FD7\u3001\u6A21\u5F0F\u3001\u4F18\u52BF\u3001\u5931\u8BEF\u3001\u5C0F\u6837\u672C\u3002",en:"Use when the task matches this method: finds the repeated strengths and mistakes in the user\u2019s own trade journal, groups them by environment, and keeps small samples from hardening into lessons. Triggers on Journal Pattern Analyzer, Trade discipline, Education, Portfolio."}),requires:Object.freeze(["portfolio","user_input"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-ladder","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review"]),canonicalFor:Object.freeze([])}),"post-trade-review":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["trade","teaching"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309\u8BBA\u70B9\u3001setup\u3001\u6267\u884C\u3001\u5B88\u89C4\u4E0E\u7ED3\u679C\u590D\u76D8\u4E00\u7B14\u5DF2\u5E73\u6389\u7684\u4EA4\u6613\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4EA4\u6613\u590D\u76D8\u3001\u540E\u89C6\u955C\u3001\u5B88\u89C4\u3001\u7ED3\u679C\u3002",en:"Use when the task matches this method: reviews a closed trade across thesis, setup, execution, adherence and outcome without rewriting it with hindsight. Triggers on Post-Trade Review, Trade discipline, Education."}),requires:Object.freeze(["user_input"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-ladder","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","journal-pattern-analyzer"]),canonicalFor:Object.freeze(["global/review/post-trade"])}),"position-sizing":Object.freeze({market:Object.freeze(["us-stock"]),stage:"execution",methods:Object.freeze(["trade","portfolio"]),roles:Object.freeze(["data_junior","main"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u7ED9\u51FA\u8D26\u6237\u89C4\u6A21\u3001\u5355\u7B14\u98CE\u9669\u9884\u7B97\u3001\u5165\u573A\u4EF7\u4E0E\u6B62\u635F\u4EF7\uFF0C\u8981\u6C42\u53CD\u63A8\u4E00\u4E2A\u53EF\u8FA9\u62A4\u7684\u4ED3\u4F4D\u5927\u5C0F\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4ED3\u4F4D\u3001\u5934\u5BF8\u3001\u98CE\u9669\u9884\u7B97\u3001\u6B62\u635F\u3002\u5B83\u53EA\u7B97\u5927\u5C0F\uFF0C\u4E0D\u5224\u65AD\u8FD9\u7B14\u8BE5\u4E0D\u8BE5\u505A\u3002",en:'Use when the user supplies account equity, per-trade risk budget, entry and stop, and asks for a defensible position size. Triggers on "position size", "risk budget", "stop". It sizes the trade, not whether to take it.'}),requires:Object.freeze(["portfolio","price_history","user_input"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-ladder","position-management","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze(["global/execution/sizing"])}),"position-management":Object.freeze({market:Object.freeze(["us-stock"]),stage:"review",methods:Object.freeze(["portfolio","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5BF9\u7167\u539F\u59CB\u8BBA\u70B9\u3001\u5931\u6548\u6761\u4EF6\u3001\u50AC\u5316\u5242\u4E0E\u6267\u884C\u7EA6\u675F\u590D\u67E5\u4E00\u7B14\u5728\u624B\u4ED3\u4F4D\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u6301\u4ED3\u590D\u6838\u3001\u7EE7\u7EED\u6301\u6709\u3001\u51CF\u4ED3\u3001\u6B62\u635F\u3001\u79BB\u573A\u3002",en:"Use when the task matches this method: revisits an open position against the original thesis, its invalidation logic, the catalyst calendar and execution constraints, then argues hold, trim, tighten or exit on stated evidence. Triggers on Position Management, Trade discipline, Monitoring, Portfolio, US equity."}),requires:Object.freeze(["portfolio","filings","price_history"]),overlaps:Object.freeze(["portfolio-review","portfolio-concentration","risk-stress-test","position-sizing","position-ladder","watchlist-review","execution-plan-check","risk-reward-sanity-check","post-trade-review","journal-pattern-analyzer"]),canonicalFor:Object.freeze([])}),"macro-event-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"pre-event",methods:Object.freeze(["macro","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5728\u672A\u6765\u4E00\u5230\u4E24\u5468\u7684\u5B8F\u89C2\u4E8B\u4EF6\u91CC\u6311\u51FA\u771F\u6B63\u5F71\u54CD\u51B3\u7B56\u7684\u51E0\u9879\uFF0C\u5E76\u770B\u6E05\u5B83\u4EEC\u901A\u8FC7\u5229\u7387\u3001\u6C47\u7387\u3001\u5546\u54C1\u4E0E\u98CE\u9669\u504F\u597D\u4F20\u5BFC\u5230\u6301\u4ED3\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5B8F\u89C2\u4E8B\u4EF6\u3001\u4E8B\u4EF6\u98CE\u9669\u3001\u4F20\u5BFC\u3001\u65F6\u95F4\u7A97\u3002",en:"Use when the task matches this method: filters the next one to two weeks of macro events down to the decision-relevant few and maps their transmission through rates, FX, commodities and risk appetite. Triggers on Macro Event Analysis, Trade discipline, Macro & industry, Monitoring, US equity."}),requires:Object.freeze(["macro"]),overlaps:Object.freeze(["catalyst-map","market-regime-analysis"]),canonicalFor:Object.freeze(["global/pre-event/macro"])}),"market-regime-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"monitoring",methods:Object.freeze(["technical","risk"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309\u8D8B\u52BF\u3001\u6CE2\u52A8\u7387\u3001\u5E7F\u5EA6\u4E0E\u4E8B\u4EF6\u80CC\u666F\u5224\u5B9A\u5F53\u524D\u5E02\u573A\u73AF\u5883\uFF0C\u5E76\u636E\u6B64\u9009\u62E9\u8D8B\u52BF\u8DDF\u968F\u3001\u5747\u503C\u56DE\u5F52\u8FD8\u662F\u9632\u5FA1\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u5E02\u573A\u73AF\u5883\u3001\u8D8B\u52BF\u3001\u6CE2\u52A8\u7387\u3001\u5E7F\u5EA6\u3002",en:"Use when the task matches this method: classifies the environment across trend, volatility, breadth and event backdrop, then argues whether trend-following, mean reversion or caution is the better default. Triggers on Market Regime Analysis, Trade discipline, Technicals, Risk, US equity."}),requires:Object.freeze(["price_history","macro"]),overlaps:Object.freeze(["macro-event-analysis"]),canonicalFor:Object.freeze(["global/monitoring/regime"])}),"china-earnings-analysis":Object.freeze({market:Object.freeze(["a-share"]),stage:"post-event",methods:Object.freeze(["earnings","financial-health"]),roles:Object.freeze(["main","data_junior"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6C42\u5BF9 A \u80A1\u516C\u53F8\u505A\u5B63\u62A5/\u5E74\u62A5\u70B9\u8BC4\uFF0C\u9700\u8981\u5B9E\u9645 / \u4E00\u81F4\u9884\u671F / \u4E0A\u671F\u5DEE\u5F02\u8868\u3001\u6536\u5165\u4E0E\u5229\u6DA6\u7387\u5206\u89E3\u3001\u8D44\u4EA7\u8D1F\u503A\u8868\u4E0E\u73B0\u91D1\u6D41\u5173\u6CE8\u70B9\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8D22\u62A5\u70B9\u8BC4\u3001\u5B63\u62A5\u70B9\u8BC4\u3001\u5E74\u62A5\u70B9\u8BC4\u3001\u4E1A\u7EE9\u5206\u6790\u3002\u53EA\u67E5\u516C\u544A\u4E8B\u5B9E\u65F6\u4E0D\u8981\u7528\u3002",en:'Use when the user asks for an A-share quarterly or annual post-earnings review and needs an actual / consensus / prior variance table, revenue and margin decomposition, or balance-sheet and cash-flow focus. Triggers on "\u8D22\u62A5\u70B9\u8BC4", "\u5B63\u62A5\u70B9\u8BC4", "\u5E74\u62A5\u70B9\u8BC4", "\u4E1A\u7EE9\u5206\u6790". Not for a single announcement lookup.'}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze(["earnings-preview","earnings-call-analysis","china-earnings-preview","china-variance-commentary","financial-report-analyst","10k-digest","china-break-trace"]),canonicalFor:Object.freeze(["a-share/post-event/earnings-note"])}),"china-earnings-preview":Object.freeze({market:Object.freeze(["a-share"]),stage:"pre-event",methods:Object.freeze(["earnings","risk"]),roles:Object.freeze(["data_junior","main"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u5728\u4E00\u4EFD A \u80A1\u8D22\u62A5\u516C\u5E03\u524D\uFF0C\u8981\u6C42\u5386\u53F2\u57FA\u7EBF\u3001\u8981\u76EF\u7684\u4E09\u5230\u4E94\u4E2A\u6307\u6807\u3001\u4E50\u89C2 / \u57FA\u51C6 / \u60B2\u89C2\u4E09\u6863\u60C5\u666F\u4E0E\u89E6\u53D1\u6761\u4EF6\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8D22\u62A5\u524D\u77BB\u3001\u4E1A\u7EE9\u9884\u544A\u3001\u5FEB\u62A5\u3001\u524D\u77BB\u3002",en:'Use when the user asks for an A-share pre-earnings frame: historical baseline, three to five metrics to watch, and bull / base / bear scenarios with triggers. Triggers on "\u8D22\u62A5\u524D\u77BB", "\u4E1A\u7EE9\u9884\u544A", "\u5FEB\u62A5".'}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze(["earnings-preview","earnings-call-analysis","china-earnings-analysis","china-variance-commentary","financial-report-analyst","10k-digest","china-break-trace"]),canonicalFor:Object.freeze(["a-share/pre-event/earnings-preview"])}),"china-comps-analysis":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["valuation"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309 A \u80A1\u53E3\u5F84\u642D\u540C\u4E1A\u500D\u6570\u8868\uFF0C\u6BD4\u8F83 P/E\u3001P/B\u3001EV/EBITDA \u4E0E\u6EA2\u4EF7\u6298\u4EF7\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u53EF\u6BD4\u516C\u53F8\u3001\u500D\u6570\u3001P/E\u3001EV/EBITDA\u3001A \u80A1\u3002",en:"Use when the task matches this method: builds a peer multiple table on A-share conventions: sector grouping with size, growth and profitability screens, dynamic / static / TTM P/E, P/B and EV/EBITDA, premium and discount explanations, and a resulting valuation range. Triggers on A-Share Comparable Multiples, A-share, Valuation, Competition."}),requires:Object.freeze(["financial_statements","peer_data","price_history"]),overlaps:Object.freeze(["stock-valuation","company-valuation","china-dcf","valuation-investment-strategy","stock-eval","buffett-investment-framework","peter-lynch-skill"]),canonicalFor:Object.freeze(["a-share/valuation/comps"])}),"china-dcf":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["valuation","financial-health"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u7528\u4E2D\u56FD\u8D22\u62A5\u53E3\u5F84\u8DD1 DCF\uFF1A\u5341\u5E74\u671F\u56FD\u503A\u3001A \u80A1\u80A1\u6743\u98CE\u9669\u6EA2\u4EF7\u300125% / 15% \u7A0E\u7387\u4E0E\u672C\u5E01\u7EC8\u503C\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AA \u80A1 DCF\u3001WACC\u3001\u654F\u611F\u6027\u3001\u7EC8\u503C\u3002",en:"Use when the task matches this method: runs a DCF on Chinese conventions: a 10-year government bond yield as the risk-free rate, A-share equity risk premium, 25% tax (15% for \u9AD8\u65B0\u6280\u672F\u4F01\u4E1A), local-currency terminal growth, then WACC and sensitivities. Triggers on A-Share DCF Conventions, A-share, Valuation, Cash flow."}),requires:Object.freeze(["financial_statements","macro"]),overlaps:Object.freeze(["stock-valuation","company-valuation","china-comps-analysis","valuation-investment-strategy","stock-eval","buffett-investment-framework","peter-lynch-skill"]),canonicalFor:Object.freeze(["a-share/valuation/dcf"])}),"china-sector-overview":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["macro","evidence"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u753B A \u80A1\u884C\u4E1A\u5168\u666F\uFF1A\u5E02\u573A\u89C4\u6A21\u3001\u96C6\u4E2D\u5EA6\u3001\u653F\u7B56\u6846\u67B6\u3001\u7ADE\u4E89\u683C\u5C40\u4E0E\u5173\u952E KPI \u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AA \u80A1\u884C\u4E1A\u3001\u5E02\u573A\u89C4\u6A21\u3001\u96C6\u4E2D\u5EA6\u3001\u653F\u7B56\u3001KPI\u3002",en:"Use when the task matches this method: maps an A-share industry: market size and concentration, the policy and regulatory frame, competitive structure with sector-specific KPIs (\u6279\u4EF7, \u88C5\u673A\u91CF, NIM and the like), then themes and valuation context. Triggers on A-Share Sector Landscape, A-share, Macro & industry, Competition, Business analysis."}),requires:Object.freeze(["industry_data","filings","macro"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"china-catalyst-calendar":Object.freeze({market:Object.freeze(["a-share"]),stage:"monitoring",methods:Object.freeze(["earnings","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A A \u80A1\u62AB\u9732\u4E0E\u4E8B\u4EF6\u6309\u65F6\u95F4\u6392\u6210\u6CE8\u610F\u529B\u65E5\u5386\uFF1A\u8D22\u62A5\u3001\u9884\u544A\u3001\u80A1\u4E1C\u5927\u4F1A\u3001\u89E3\u7981\u3001\u5206\u7EA2\u56DE\u8D2D\u4E0E\u653F\u7B56\u4F1A\u8BAE\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AA \u80A1\u50AC\u5316\u5242\u3001\u65E5\u5386\u3001\u89E3\u7981\u3001\u62AB\u9732\u3002",en:"Use when the task matches this method: lays A-share disclosures and events out as an attention calendar: earnings and \u4E1A\u7EE9\u9884\u544A, shareholder meetings, lockup expiries, dividends and buybacks, policy and industry events, flagging names hanging on the same event chain. Triggers on A-Share Catalyst Calendar, A-share, Monitoring, Macro & industry, Earnings."}),requires:Object.freeze(["filings","macro"]),overlaps:Object.freeze(["catalyst-calendar","catalyst-map","risk-warning-catalysts","thesis-tracker","china-thesis-tracker"]),canonicalFor:Object.freeze(["a-share/monitoring/catalysts"])}),"china-break-trace":Object.freeze({market:Object.freeze(["a-share"]),stage:"post-event",methods:Object.freeze(["accounting","evidence","risk"]),roles:Object.freeze(["data_junior","web_retriever"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5BF9 A \u80A1\u8D22\u62A5\u505A\u53D6\u8BC1\u5F0F\u6838\u67E5\uFF1A\u79D1\u76EE\u52FE\u7A3D\u3001\u5229\u6DA6\u4E0E\u73B0\u91D1\u6D41\u80CC\u79BB\u3001\u5E94\u6536\u5B58\u8D27\u5F02\u5E38\u3001\u5BA1\u8BA1\u610F\u89C1\u4E0E\u95EE\u8BE2\u51FD\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u8D22\u52A1\u6838\u67E5\u3001\u52FE\u7A3D\u3001\u73B0\u91D1\u6D41\u80CC\u79BB\u3001\u95EE\u8BE2\u51FD\u3002",en:"Use when the task matches this method: works through A-share statements forensically: line-item tie-outs, the gap between earnings and cash flow, receivable and inventory anomalies, working-capital behaviour, then what auditor opinions, exchange inquiries and penalties signal. Triggers on A-Share Forensic Review, A-share, Risk, Financial health, Verification."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze(["earnings-preview","earnings-call-analysis","china-earnings-preview","china-earnings-analysis","china-variance-commentary","financial-report-analyst","10k-digest","financial-health","forensic-accounting","result-validator","fact-check","evidence-gap-check"]),canonicalFor:Object.freeze(["a-share/quality/forensic"])}),"china-variance-commentary":Object.freeze({market:Object.freeze(["a-share"]),stage:"post-event",methods:Object.freeze(["earnings","evidence"]),roles:Object.freeze(["main","data_junior"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u628A A \u80A1\u4E1A\u7EE9\u5DEE\u5F02\u5199\u6210\u53EF\u8BFB\u7684\u4E2D\u6587\uFF1A\u8D85\u9884\u671F / \u4F4E\u4E8E\u9884\u671F\u5206\u7C7B\u3001\u9A71\u52A8\u5F52\u56E0\u3001\u53E3\u5F84\u4E0E\u5355\u4F4D\u4E00\u81F4\u6027\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4E1A\u7EE9\u5DEE\u5F02\u3001\u8D85\u9884\u671F\u3001\u5F52\u56E0\u3001\u53E3\u5F84\u3002",en:"Use when the task matches this method: turns variances into readable Chinese commentary: how to classify beat / miss / in-line, where to attribute the driver, how to keep \u53E3\u5F84 and units consistent, and how to say what the change actually means. Triggers on A-Share Variance Commentary, A-share, Earnings, Verification."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze(["earnings-preview","earnings-call-analysis","china-earnings-preview","china-earnings-analysis","financial-report-analyst","10k-digest","china-break-trace"]),canonicalFor:Object.freeze(["a-share/post-event/variance-paragraph"])}),"china-initiating-coverage":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["valuation","financial-health","evidence"]),roles:Object.freeze(["main","data_junior"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309\u5238\u5546\u7814\u7A76\u6240\u4F53\u4F8B\u642D\u4E00\u4EFD A \u80A1\u9996\u6B21\u8986\u76D6\uFF1A\u516C\u53F8\u884C\u4E1A\u3001\u4E09\u8868\u3001\u4F30\u503C\u3001\u56FE\u8868\u6E05\u5355\u4E0E\u62A5\u544A\u9AA8\u67B6\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u9996\u6B21\u8986\u76D6\u3001\u6DF1\u5EA6\u62A5\u544A\u3001\u4E09\u8868\u3001\u4F30\u503C\u3001\u76EE\u6807\u4EF7\u3002",en:"Use when the task matches this method: assembles an initiation report in Chinese sell-side form: company and industry analysis, three-statement modelling, valuation and multiple ranges, the exhibit list and the report skeleton, through to the rating and target-price section. Triggers on A-Share Initiation Report, A-share, Valuation, Business analysis, Filings."}),requires:Object.freeze(["financial_statements","filings","peer_data"]),overlaps:Object.freeze(["buffett-investment-framework","peter-lynch-skill","stock-eval","stock-screener"]),canonicalFor:Object.freeze(["a-share/research/initiation"])}),"china-morning-note":Object.freeze({market:Object.freeze(["a-share"]),stage:"monitoring",methods:Object.freeze(["macro","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309 A \u80A1\u5356\u65B9\u6668\u4F1A\u8282\u594F\u5199\u4E00\u4EFD\u5F53\u65E5\u7B56\u7565\uFF1A\u9694\u591C\u5916\u76D8\u3001\u76D8\u524D\u60C5\u7EEA\u3001\u89E3\u7981\u62AB\u9732\u4E8B\u4EF6\u4E0E\u76EF\u76D8\u8981\u70B9\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u6668\u4F1A\u3001\u76D8\u524D\u3001\u9694\u591C\u3001\u76EF\u76D8\u3002",en:"Use when the task matches this method: writes the pre-open desk note on Chinese sell-side timing (07:00\u201308:30): overnight and external markets, pre-market sentiment, today\u2019s unlock and disclosure events, what to watch intraday, distilled into 2\u20134 ideas for the session. Triggers on A-Share Morning Note, A-share, Monitoring, Portfolio."}),requires:Object.freeze(["macro","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"china-thesis-tracker":Object.freeze({market:Object.freeze(["a-share"]),stage:"monitoring",methods:Object.freeze(["evidence","portfolio"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u4E3A A \u80A1\u6301\u4ED3\u4E0E\u81EA\u9009\u9010\u53EA\u7EF4\u62A4\u6295\u8D44\u903B\u8F91\u3001\u8DDF\u8E2A\u6570\u636E\u70B9\u4E0E\u50AC\u5316\u5242\uFF0C\u5E76\u66F4\u65B0\u6709\u6548\u6027\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AA \u80A1\u8BBA\u70B9\u3001\u6301\u4ED3\u8DDF\u8E2A\u3001\u50AC\u5316\u5242\u3001\u6709\u6548\u6027\u3002",en:"Use when the task matches this method: keeps a live thesis per holding and watchlist name: states the premises, tracks the key data points and catalysts, updates validity as new filings land, and argues maintain / add / reduce / exit with a target price and a stop. Triggers on A-Share Thesis Tracker, A-share, Monitoring, Portfolio."}),requires:Object.freeze(["portfolio","filings","price_history"]),overlaps:Object.freeze(["catalyst-calendar","catalyst-map","china-catalyst-calendar","risk-warning-catalysts","thesis-tracker"]),canonicalFor:Object.freeze([])}),"china-idea-generation":Object.freeze({market:Object.freeze(["a-share"]),stage:"research",methods:Object.freeze(["screening","technical"]),roles:Object.freeze(["main"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309\u91CF\u5316\u7B5B\u9009\u3001\u4E3B\u9898\u7EBF\u7D22\u4E0E\u5F62\u6001\u8BC6\u522B\u7CFB\u7EDF\u6027\u5730\u627E A \u80A1\u591A\u7A7A\u6807\u7684\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AA \u80A1\u9009\u80A1\u3001\u7B5B\u9009\u3001\u4E3B\u9898\u3001\u5F62\u6001\u3001\u591A\u7A7A\u3002",en:"Use when the task matches this method: surfaces A-share names along three rails \u2014 quantitative screens, thematic leads and pattern recognition \u2014 producing long and short lists with, per name, the catalyst, why now, a conviction tier and the next check. Triggers on A-Share Idea Screening, A-share, Technicals, Portfolio."}),requires:Object.freeze(["price_history","financial_statements"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"company-valuation":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["valuation","financial-health"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u7528 DCF\u3001\u540C\u4E1A\u500D\u6570\u4E0E\u5148\u4F8B\u4EA4\u6613\u4F30\u4F01\u4E1A\u4EF7\u503C\uFF0C\u5E76\u628A EV \u6865\u5230\u80A1\u6743\u4EF7\u503C\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4F01\u4E1A\u4EF7\u503C\u3001\u80A1\u6743\u4EF7\u503C\u6865\u3001DCF\u3001\u5148\u4F8B\u4EA4\u6613\u3002",en:"Use when the task matches this method: triangulates enterprise and equity value: a DCF on normalized earnings, cross-checked against peer multiples and precedent deal multiples, then an explicit enterprise-to-equity bridge that itemizes debt-like charges, minority interests, associates and any pension deficit. Triggers on Company Valuation, Valuation, Cash flow, US equity."}),requires:Object.freeze(["financial_statements","peer_data","price_history"]),overlaps:Object.freeze(["stock-valuation","china-dcf","china-comps-analysis","valuation-investment-strategy","stock-eval","buffett-investment-framework","peter-lynch-skill"]),canonicalFor:Object.freeze(["us/valuation/dcf"])}),"wacc-computation":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["valuation","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u62C6\u89E3 CAPM \u8F93\u5165\u3001\u53EF\u6BD4 \u03B2 \u53BB\u6760\u6746 / \u518D\u6760\u6746\u4E0E\u7A0E\u540E\u503A\u52A1\u6210\u672C\uFF0C\u7B97 WACC \u4E0E\u654F\u611F\u6027\u533A\u95F4\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AWACC\u3001CAPM\u3001\u03B2\u3001\u80A1\u6743\u98CE\u9669\u6EA2\u4EF7\u3001\u8D44\u672C\u6210\u672C\u3002",en:"Use when the task matches this method: builds the discount rate piece by piece \u2014 CAPM inputs (risk-free rate, beta, equity risk premium, size and country premia), unlevering and relevering peer betas on the target's capital structure, market-value weights on the after-tax cost of debt \u2014 and ends on a beta-by-premium sensitivity range. Triggers on WACC Computation, Valuation, Risk, US equity."}),requires:Object.freeze(["financial_statements","price_history","macro"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze(["us/valuation/wacc"])}),"three-statement-modeling":Object.freeze({market:Object.freeze(["global"]),stage:"research",methods:Object.freeze(["accounting","financial-health"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u642D\u4E00\u5F20\u8054\u52A8\u7684\u4E09\u8868\u6A21\u578B\uFF0C\u5E76\u7528\u6BCF\u671F\u5E73\u8861\u68C0\u67E5\u70B9\u540D\u4E0D\u5E73\u7684\u9879\u76EE\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4E09\u8868\u6A21\u578B\u3001\u52FE\u7A3D\u3001\u8D44\u4EA7\u8D1F\u503A\u8868\u3001\u73B0\u91D1\u6D41\u3001\u5E73\u8861\u68C0\u67E5\u3002",en:"Use when the task matches this method: assembles a linked three-statement model in a fixed order \u2014 one place for drivers, an income statement built from revenue, PP&E / working-capital / debt schedules driving the balance sheet, a cash flow statement derived entirely from the deltas \u2014 with a balance check on every period that names the ones that do not tie. Triggers on Three-Statement Modeling, Financial health, Cash flow, Business analysis."}),requires:Object.freeze(["financial_statements"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"credit-analysis":Object.freeze({market:Object.freeze(["us-stock"]),stage:"research",methods:Object.freeze(["risk","financial-health"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u5224\u65AD\u4E00\u5BB6\u516C\u53F8\u80FD\u5426\u7A7F\u8FC7\u5468\u671F\u8FD8\u503A\uFF0C\u7B97\u6760\u6746\u3001\u5229\u606F\u8986\u76D6\u3001DSCR\u3001FCF / \u503A\u52A1\u4E0E\u6D41\u52A8\u6027\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u507F\u503A\u80FD\u529B\u3001DSCR\u3001\u6760\u6746\u3001\u4FE1\u7528\u5206\u6790\u3002",en:"Use when the task matches this method: answers one question: can this borrower service and repay through the cycle. Five ratio families \u2014 leverage, interest coverage, DSCR, free cash flow to debt, liquidity \u2014 each on a normalized and a stressed basis, then collateral haircuts, recovery ranking, covenant headroom and who actually stands behind it. Triggers on Credit Analysis, Risk, Financial health, US equity."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"ecl-computation":Object.freeze({market:Object.freeze(["global"]),stage:"research",methods:Object.freeze(["accounting","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u6309 IFRS 9 \u4E09\u9636\u6BB5\u62C6\u5206\u9884\u671F\u4FE1\u7528\u635F\u5931\uFF1A\u9636\u6BB5\u8FC1\u5F99\u3001PD / LGD / EAD\u3001\u8D26\u9F84\u77E9\u9635\u4E0E\u60C5\u666F\u52A0\u6743\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u9884\u671F\u4FE1\u7528\u635F\u5931\u3001IFRS 9\u3001PD\u3001LGD\u3001\u51CF\u503C\u3002",en:"Use when the task matches this method: takes the IFRS 9 impairment logic apart: stage assignment and migration, the PD / LGD / EAD parameters, the simplified provision matrix over aging buckets, macro scenario weighting and coverage ratios, then one more question \u2014 what changes if the downside scenario gains ten points of probability. Triggers on Expected Credit Loss, Risk, Financial health, Filings."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"insurance-reserving":Object.freeze({market:Object.freeze(["global"]),stage:"research",methods:Object.freeze(["accounting","risk"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u770B\u4FDD\u9669\u51C6\u5907\u91D1\u94FE\u6761\uFF1A\u8D54\u6B3E\u53D1\u5C55\u4E09\u89D2\u3001\u94FE\u5F0F\u6CD5\u3001Bornhuetter-Ferguson\u3001IBNR \u4E0E\u7EFC\u5408\u6210\u672C\u7387\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u4FDD\u9669\u51C6\u5907\u91D1\u3001IBNR\u3001\u53D1\u5C55\u4E09\u89D2\u3001\u7EFC\u5408\u6210\u672C\u7387\u3002",en:'Use when the task matches this method: runs the reserve chain end to end: loss development triangles, age-to-age factors, chain ladder and Bornhuetter-Ferguson, IBNR, then the combined ratio \u2014 keeping "are unpaid claims estimated well" and "does this book actually earn" as two separate questions. Triggers on Insurance Reserving, Risk, Financial health.'}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"banking-compliance":Object.freeze({market:Object.freeze(["global"]),stage:"research",methods:Object.freeze(["risk","financial-health"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u770B\u94F6\u884C\u8D44\u672C\u4E0E\u6D41\u52A8\u6027\u6307\u6807\uFF1ACET1\u3001RWA\u3001\u6760\u6746\u7387\u3001LCR / NSFR \u4E0E\u538B\u529B\u5F62\u72B6\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u94F6\u884C\u8D44\u672C\u3001CET1\u3001RWA\u3001LCR\u3001NSFR\u3002",en:"Use when the task matches this method: the hardest numbers on a bank name: CET1 / Tier 1 / total capital adequacy, risk-weighted assets and their weight structure, the leverage ratio, LCR and NSFR, plus a pass that asks whether capital still holds once defaults arrive. Triggers on Bank Capital Ratios, Risk, Financial health, Macro & industry."}),requires:Object.freeze(["financial_statements","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])}),"forensic-accounting":Object.freeze({market:Object.freeze(["global"]),stage:"review",methods:Object.freeze(["accounting","evidence"]),roles:Object.freeze(["data_junior"]),primaryRole:"data_junior",useWhen:Object.freeze({zh:"\u5F53\u7528\u6237\u8981\u7528 Benford\u3001\u6574\u6570\u91CD\u590D\u91D1\u989D\u3001\u8D44\u91D1\u5FAA\u73AF\u4E0E\u4F9B\u5E94\u5546\u5173\u8054\u65B9\u91CD\u5408\u4F5C\u53D6\u8BC1\u5F0F\u6392\u67E5\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1A\u53D6\u8BC1\u4F1A\u8BA1\u3001Benford\u3001\u8D44\u91D1\u5FAA\u73AF\u3001\u5173\u8054\u65B9\u3002",en:"Use when the task matches this method: screens a ledger forensically: Benford first-digit tests, round-number and repeated-amount patterns, round-trip flows, vendor and related-party overlaps \u2014 written up as an evidence chain that can survive review and cross-examination. Triggers on Forensic Ledger Screening, Verification, Risk, Financial health."}),requires:Object.freeze(["financial_statements","filings","user_input"]),overlaps:Object.freeze(["financial-health","financial-report-analyst","china-break-trace","result-validator","fact-check","evidence-gap-check"]),canonicalFor:Object.freeze([])}),"cross-market-listing-choice":Object.freeze({market:Object.freeze(["a-share","us-stock"]),stage:"review",methods:Object.freeze(["portfolio","tax","risk"]),roles:Object.freeze(["main","data_junior"]),primaryRole:"main",useWhen:Object.freeze({zh:"\u5F53\u540C\u4E00\u5BB6\u516C\u53F8\u6709 A/H\u3001ADR/\u6E2F\u80A1\u591A\u6761\u4E0A\u5E02\u7EBF\uFF0C\u7528\u6237\u8981\u9009\u4E00\u6761\u6301\u6709\u3001\u52A0\u4ED3\u6216\u89C2\u5BDF\u65F6\u4F7F\u7528\uFF1B\u5173\u952E\u8BCD\uFF1AA/H \u6EA2\u4EF7\u3001ADR\u3001\u9009\u7EBF\u3001\u6C47\u7387\u3001\u80A1\u606F\u7A0E\u3002",en:"Use when the task matches this method: picks which listing of a single issuer to hold, add, or watch: A/H premium and currency/dividend withholding, liquidity and channel access, ADR conversion ratios and filing paths. The company is researched once \u2014 A and H are two lines of the same business, so what changes is spread, tax, currency and whether you can reach it. Triggers on Cross-Market Listing Choice, A-share, US equity, Portfolio, Risk."}),requires:Object.freeze(["price_history","fx","filings"]),overlaps:Object.freeze([]),canonicalFor:Object.freeze([])})})});var pe={};H(pe,{SELECTED_SKILL_FILTER_ALL:()=>u,filterSelectedSkills:()=>at,selectedSkillFacetCounts:()=>it,selectedSkillPresetTotals:()=>tt,selectedSkillRoles:()=>q,selectedSkillTraitOrder:()=>et});function q(t){return(S[t.name]?.roles??[]).map(e=>L[e]??e)}function et(t=O){let e=new Map;for(let s of t)for(let r of s.tags)e.set(r,(e.get(r)??0)+1);let a=[...e.keys()].sort((s,r)=>e.get(r)-e.get(s));return[u,...a]}function tt(t=O){let e=new Map(J.map(a=>[a,0]));for(let a of t)for(let s of new Set(q(a)))e.has(s)&&e.set(s,e.get(s)+1);return e}function at({trait:t=u,preset:e=u,catalog:a=O}={}){return a.filter(s=>de(s,t)&&ue(s,e))}function it({trait:t=u,preset:e=u,catalog:a=O}={}){let s=new Map([[u,0]]);for(let o of a.filter(l=>ue(l,e))){s.set(u,s.get(u)+1);for(let l of o.tags)s.set(l,(s.get(l)??0)+1)}let r=new Map([[u,0]]);for(let o of a.filter(l=>de(l,t))){r.set(u,r.get(u)+1);for(let l of new Set(q(o)))r.set(l,(r.get(l)??0)+1)}return{traits:s,presets:r}}var u,de,ue,me=K(()=>{"use strict";$();Q();u="all";de=(t,e)=>e===u||t.tags.includes(e),ue=(t,e)=>e===u||q(t).includes(e)});var{createElement:i,useEffect:te,useRef:st,useState:w}=require("react"),{createPortal:nt}=require("react-dom"),{SettingsForm:rt,SettingsSecretField:ot,SettingsFormModel:lt,SegmentedControl:ct,Pill:fe,Switch:N,Tag:ge,Modal:ht,IconRightUpOutlineRegular:ze}=require("@deepseek-ai/dsh-client-ui-primitives"),{SELECTED_SKILL_CATALOG:ae,SELECTED_SKILL_TAG_LABELS:je}=($(),V(le)),{SELECTED_SKILL_FILTER_ALL:v,filterSelectedSkills:dt,selectedSkillFacetCounts:ut,selectedSkillPresetTotals:pt,selectedSkillRoles:mt,selectedSkillTraitOrder:ft}=(me(),V(pe)),{SELECTED_SKILL_PRESETS:gt,SELECTED_SKILL_PRESET_ORDER:bt,SELECTED_SKILL_ROUTING:kt}=(Q(),V(he)),Y="capital-config",z="@v587d/capital-generation",X="settings.capital",be="plugins.detail.badge",yt="https://github.com/v587d/capital-generation",vt=`https://www.npmjs.com/package/${z}`,wt="FUYAO_API_KEY",zt="FTSHARE_API_KEY",jt="ANYSEARCH_API_KEY",Ot="WIND_API_KEY",St="PADDLE_OCR_TOKEN",Z="capital-config-tabs",xt="/capital-skills",R={fuyao:"https://fuyao.aicubes.cn/docs/",ftshare:"https://market.ft.tech/gateway/doc/p/pb8eizu3",anysearch:"https://www.anysearch.com/docs/auth",wind:"https://market.windalice.com/",paddleocr:"https://aistudio.baidu.com/paddleocr"},k=["fuyao","ftshare","anysearch","wind","paddleocr"],ke=["tickMs","runTimeoutMinutes","idleTimeoutMinutes","maxSteps","maxToolCalls","inAppNotifications"],ye={tickMs:6e4,runTimeoutMinutes:60,idleTimeoutMinutes:5,maxSteps:300,maxToolCalls:1200,inAppNotifications:!0},Oe={tickMs:{min:3e4,max:36e5,unit:"automationUnitMs"},runTimeoutMinutes:{min:5,max:120,unit:"automationUnitMinutes"},idleTimeoutMinutes:{min:1,max:30,unit:"automationUnitMinutes"},maxSteps:{min:100,max:2e3,unit:"automationUnitSteps"},maxToolCalls:{min:100,max:5e3,unit:"automationUnitCalls"}},ve=ae.map(({key:t})=>t),Ct=ft(),At=pt(),x={fuyao:wt,ftshare:zt,anysearch:jt,wind:Ot,paddleocr:St},Tt=()=>Object.fromEntries(k.map(t=>[t,{ref:x[t],configured:!1,writable:!0}])),Rt={tabsLabel:"\u914D\u7F6E\u5206\u533A",title:"\u6570\u636E\u6E90",titleUnsaved:"\u6570\u636E\u6E90 \u672A\u4FDD\u5B58",componentsTitle:"\u5305\u542B\u7684\u7EC4\u4EF6",componentsHint:"\u7EC4\u4EF6\u6E05\u5355\u7531 DSH \u7ED8\u5236\uFF0C\u663E\u793A\u5728\u4E0B\u65B9\u3002",fuyaoLabel:"Fuyao API Key",fuyaoHint:"\u540C\u82B1\u987A Fuyao \u7ED3\u6784\u5316\u6570\u636E\u63A5\u53E3\u3002\u4FDD\u5B58\u540E\u65B0\u81EA\u52A8\u6A21\u5F0F\u4F1A\u8BDD\u751F\u6548\u3002",ftshareLabel:"FTShare API Key",ftshareHint:"\u975E\u51F8\u79D1\u6280 FTShare \u7ED3\u6784\u5316\u6570\u636E\u63A5\u53E3\uFF08\u514D\u8D39\u6863\uFF09\u3002\u4FDD\u5B58\u540E\u65B0\u81EA\u52A8\u6A21\u5F0F\u4F1A\u8BDD\u751F\u6548\u3002",anysearchLabel:"AnySearch API Key",anysearchHint:"AnySearch \u7F51\u9875\u641C\u7D22 / \u63D0\u53D6\u63A5\u53E3\u3002\u4FDD\u5B58\u540E\u65B0\u81EA\u52A8\u6A21\u5F0F\u4F1A\u8BDD\u751F\u6548\u3002",localFetchLabel:"\u5141\u8BB8\u542F\u52A8\u672C\u5730\u63D0\u53D6\u7F51\u9875\u5185\u5BB9",localFetchHint:"\u5F00\u542F\u540E\u672C\u5730\u6293\u53D6\u515C\u5E95\uFF08\u56DE\u6267\u6765\u6E90 local-http\uFF09\u3002\u4FDD\u5B58\u540E\u65B0\u81EA\u52A8\u6A21\u5F0F\u4F1A\u8BDD\u751F\u6548\u3002",automationTitle:"\u6295\u7814\u81EA\u52A8\u5316",automationScheduleGroup:"\u8C03\u5EA6",automationRunGroup:"\u5355\u6B21\u8FD0\u884C\u4E0A\u9650",automationNotifyGroup:"\u901A\u77E5",automationInAppHint:"\u8FD0\u884C\u7ED3\u675F\u3001\u5931\u8D25\u6216\u8D85\u65F6\u540E\uFF0C\u5728\u5E94\u7528\u5185\u901A\u77E5\u91CC\u7559\u4E00\u6761\u8BB0\u5F55\u3002",automationTick:"\u81EA\u52A8\u68C0\u67E5\u95F4\u9694\uFF08\u6BEB\u79D2\uFF09",automationRunTimeout:"\u6700\u957F\u8FD0\u884C\u65F6\u95F4\uFF08\u5206\u949F\uFF09",automationInvalid:"\u8BF7\u586B\u5199 {min}\u2013{max} {unit}",automationUnitMs:"\u6BEB\u79D2",automationUnitMinutes:"\u5206\u949F",automationUnitSteps:"\u6B65",automationUnitCalls:"\u6B21",automationIdleTimeout:"\u7A7A\u95F2\u8D85\u65F6\uFF08\u5206\u949F\uFF09",automationMaxSteps:"\u6700\u5927\u6B65\u9AA4",automationMaxToolCalls:"\u6700\u5927\u5DE5\u5177\u8C03\u7528",automationInApp:"\u5199\u5165\u5E94\u7528\u5185\u901A\u77E5",windLabel:"Wind Alice API Key",windHint:"Wind \u91D1\u878D\u4FE1\u62AB\u7C7B\u6587\u6863\u68C0\u7D22\u63A5\u53E3\u3002\u4FDD\u5B58\u540E\u65B0\u81EA\u52A8\u6A21\u5F0F\u4F1A\u8BDD\u751F\u6548\u3002",paddleocrLabel:"PaddleOCR \u6587\u6863\u89E3\u6790 Token",paddleocrHint:"\u914D\u7F6E Token \u540E\u81EA\u52A8\u89E3\u6790 PDF\u3001\u56FE\u7247\u3002\u4FDD\u5B58\u540E\u65B0\u81EA\u52A8\u6A21\u5F0F\u4F1A\u8BDD\u751F\u6548\u3002",selectedSkillsTitle:"\u7CBE\u9009 Skills",selectedSkillsModeLabel:"\u667A\u80FD\u88C5\u8F7D Skills",selectedSkillsModeHint:"\u5F00\u542F\u540E\uFF0C\u7531\u5927\u6A21\u578B\u6839\u636E\u7528\u6237\u63D0\u95EE\uFF0C\u667A\u80FD\u88C5\u8F7D\u5408\u9002\u7684\u7CBE\u9009\u300CSkills\u300D\u3002",selectedSkillsFilterLabel:"\u7B5B\u9009\u7CBE\u9009 Skills",selectedSkillsTraitGroup:"Skill \u7279\u70B9",selectedSkillsPresetGroup:"\u9002\u7528\u9884\u8BBE",selectedSkillsAll:"\u5168\u90E8",selectedSkillsEmpty:"\u6CA1\u6709\u7B26\u5408\u5F53\u524D\u7B5B\u9009\u6761\u4EF6\u7684 Skill\u3002",selectedSkillsWhen:"\u4F55\u65F6\u4F7F\u7528",selectedSkillsKeywords:"\u5173\u952E\u8BCD",selectedSkillsOpenDetail:"\u67E5\u770B Skill \u539F\u6587",selectedSkillsPresetUnavailable:"\u8BE5\u9884\u8BBE\u4E0D\u52A0\u8F7D\u7CBE\u9009 Skills",selectedSkillsDetailClose:"\u5173\u95ED",selectedSkillsDocLoading:"\u539F\u6587\u8BFB\u53D6\u4E2D\u2026",selectedSkillsDocFailed:"\u539F\u6587\u8BFB\u4E0D\u5230\uFF1A\u8FD9\u4EFD\u5FEB\u7167\u6CA1\u968F\u5305\u843D\u5730\uFF0C\u6216\u6682\u65F6\u8BFB\u4E0D\u51FA\u6765\u3002",selectedSkillsDocStale:"\u539F\u6587\u8BFB\u4E0D\u5230\uFF1A\u5BBF\u4E3B\u8FDB\u7A0B\u91CC\u8FD8\u6CA1\u6709\u8FD9\u6761\u8BFB\u539F\u6587\u7684\u901A\u9053\u3002\u5347\u7EA7\u63D2\u4EF6\u540E\u8981\u91CD\u542F DSH\uFF0C\u91CD\u542F\u524D\u5237\u65B0\u9875\u9762\u4E5F\u6CA1\u6709\u7528\u3002",selectedSkillsOpenRepo:"\u6253\u5F00\u4E0A\u6E38\u4ED3\u5E93",openDocs:"\u5B98\u65B9\u6587\u6863",configured:"\u5DF2\u914D\u7F6E\u5BC6\u94A5\u3002",notConfigured:"\u672A\u914D\u7F6E\u5BC6\u94A5\u3002",save:"\u4FDD\u5B58",saving:"\u4FDD\u5B58\u4E2D\u2026",readOnly:"\u672C\u90E8\u7F72\u7684\u8BBE\u7F6E\u4E3A\u53EA\u8BFB\u3002",saveFailed:"\u6CA1\u6709\u4FDD\u5B58\u6210\u529F\uFF0C\u8BF7\u518D\u8BD5\u4E00\u6B21\u3002",unavailable:"\u8BE5\u63D2\u4EF6\u5F53\u524D\u672A\u52A0\u8F7D\uFF0C\u6682\u65F6\u65E0\u6CD5\u914D\u7F6E\u3002",githubLabel:"GitHub \u4ED3\u5E93",npmLabel:"npm \u5305\u9875\u9762"},Et={tabsLabel:"Settings sections",title:"Data Sources",titleUnsaved:"Data Sources unsaved",componentsTitle:"Components",componentsHint:"The component list is drawn by DSH and appears below.",fuyaoLabel:"Fuyao API Key",fuyaoHint:"Tonghuashun Fuyao structured-data API. Takes effect in new Auto mode sessions.",ftshareLabel:"FTShare API Key",ftshareHint:"Feikon FTShare structured-data API (free tier). Takes effect in new Auto mode sessions.",anysearchLabel:"AnySearch API Key",anysearchHint:"AnySearch web search / extract interface. Takes effect in new Auto mode sessions.",localFetchLabel:"Allow local web page extraction",localFetchHint:"When on, a failed fetch falls back to local direct fetching (receipt via: local-http). Takes effect in new Auto mode sessions.",automationTitle:"Research automation",automationScheduleGroup:"Scheduling",automationRunGroup:"Per-run limits",automationNotifyGroup:"Notifications",automationInAppHint:"Leave an in-app notification when a run finishes, fails, or times out.",automationTick:"Auto-check interval (ms)",automationRunTimeout:"Max run time (minutes)",automationInvalid:"Enter a whole number from {min} to {max} {unit}",automationUnitMs:"ms",automationUnitMinutes:"minutes",automationUnitSteps:"steps",automationUnitCalls:"calls",automationIdleTimeout:"Idle timeout (minutes)",automationMaxSteps:"Max steps",automationMaxToolCalls:"Max tool calls",automationInApp:"Write in-app notifications",windLabel:"Wind Alice API Key",windHint:"Wind financial disclosure document retrieval interface. Takes effect in new Auto mode sessions.",paddleocrLabel:"PaddleOCR document token",paddleocrHint:"Configure the token to parse PDFs and images automatically. Takes effect in new Auto mode sessions.",selectedSkillsTitle:"Selected Skills",selectedSkillsModeLabel:"Auto-load Skills",selectedSkillsModeHint:"When on, the model picks the relevant selected Skills for each question.",selectedSkillsFilterLabel:"Filter selected Skills",selectedSkillsTraitGroup:"Skill traits",selectedSkillsPresetGroup:"Preset",selectedSkillsAll:"All",selectedSkillsEmpty:"No skills match the current filters.",selectedSkillsWhen:"Use when",selectedSkillsKeywords:"Keywords",selectedSkillsOpenDetail:"Open skill source",selectedSkillsPresetUnavailable:"This preset does not load selected Skills.",selectedSkillsDetailClose:"Close",selectedSkillsDocLoading:"Loading the source\u2026",selectedSkillsDocFailed:"The source could not be read: this snapshot is not in the installed package, or it cannot be opened right now.",selectedSkillsDocStale:"The source could not be read: this host process has no route for it yet. After upgrading the plugin, restart DSH \u2014 reloading the page alone will not help.",selectedSkillsOpenRepo:"Open upstream repository",openDocs:"Official docs",configured:"A key is configured.",notConfigured:"No key is configured.",save:"Save",saving:"Saving\u2026",readOnly:"This deployment stores settings read-only.",saveFailed:"That didn't save. Please try again.",unavailable:"This plugin is not loaded, so it cannot be configured right now.",githubLabel:"GitHub repository",npmLabel:"npm package page"};function E(t,e){return typeof t=="string"&&t.length>0?t:e}function _t(t,e){return e==="fuyao"?E(t.value?.fuyaoCredentialRef,x.fuyao):e==="ftshare"?E(t.value?.ftshareCredentialRef,x.ftshare):e==="wind"?E(t.value?.retriever?.windDocs?.credentialRef,x.wind):e==="paddleocr"?E(t.value?.retriever?.paddleOcr?.credentialRef,x.paddleocr):E(t.value?.retriever?.credentialRef,x.anysearch)}function Ft(){if(typeof document>"u"||document.querySelector("style[data-capital-config]"))return()=>{};let t=document.createElement("style");return t.dataset.capitalConfig="true",t.textContent=`
9
9
  .capital-config-card { display: flex; flex-direction: column; gap: 12px; }
10
10
  /* Declare display only when not hidden, or the hidden attribute loses to author display. */
11
11
  .capital-config-panel { flex-direction: column; gap: 12px; }
12
12
  .capital-config-panel:not([hidden]) { display: flex; }
13
13
  .capital-config-panel[hidden] { display: none; }
14
14
  /* Host rows section: positive :has rules only, so any mismatch leaves it visible. */
15
- [data-plugin-detail="${x}"]:has(.capital-config-card[data-capital-config-tab="sources"]) section[data-plugin-rows] { display: none; }
16
- [data-plugin-detail="${x}"]:has(.capital-config-card[data-capital-config-tab="skills"]) section[data-plugin-rows] { display: none; }
15
+ [data-plugin-detail="${z}"]:has(.capital-config-card[data-capital-config-tab="sources"]) section[data-plugin-rows] { display: none; }
16
+ [data-plugin-detail="${z}"]:has(.capital-config-card[data-capital-config-tab="automation"]) section[data-plugin-rows] { display: none; }
17
+ [data-plugin-detail="${z}"]:has(.capital-config-card[data-capital-config-tab="skills"]) section[data-plugin-rows] { display: none; }
17
18
  /* Internal roles must stay declared for delegation; hide their user-selectable cards in Settings. */
18
19
  [data-agent-preset-id="capital-data-junior"],
19
20
  [data-agent-preset-id="capital-visualization-specialist"] { display: none !important; }
@@ -22,8 +23,14 @@ window.__ModuleLoader__.load({
22
23
  .capital-config-secret-row label { flex: 0 1 auto; }
23
24
  .capital-config-secret-row label ~ span { order: 1; margin-left: auto; }
24
25
  .capital-config-field { display: flex; flex-direction: column; gap: 6px; padding: 12px 0; border-top: 0.5px solid var(--dsw-alias-border-l2); }
26
+ .capital-config-automation { display: flex; flex-direction: column; gap: 16px; padding-top: 12px; }
27
+ .capital-config-automation-group { display: flex; flex-direction: column; gap: 8px; }
28
+ .capital-config-automation-group > .capital-config-group-label { color: var(--dsw-alias-label-secondary); font-size: 12px; font-weight: 500; line-height: 18px; }
29
+ .capital-config-number { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
30
+ .capital-config-number-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; min-width: 0; }
31
+ .capital-config-number-head .capital-config-write-failed { font-size: 11px; line-height: 16px; }
25
32
  .capital-config-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 8px; }
26
- .capital-config-field input[type="number"] { width: 100%; box-sizing: border-box; padding: 6px 8px; border: .5px solid var(--dsw-alias-border-l1); border-radius: 8px; background: var(--dsw-alias-bg-module-platform); color: var(--dsw-alias-label-primary); font: inherit; font-size: 12px; }
33
+ .capital-config-automation input[type="number"] { width: 100%; box-sizing: border-box; padding: 6px 8px; border: .5px solid var(--dsw-alias-border-l1); border-radius: 8px; background: var(--dsw-alias-bg-module-platform); color: var(--dsw-alias-label-primary); font: inherit; font-size: 12px; }
27
34
  .capital-config-selected-mode { padding: 12px 14px; border: 0.5px solid var(--dsw-alias-border-l1); border-radius: 10px; background: var(--dsw-alias-bg-layer-2); }
28
35
  .capital-config-switch-row { align-items: center; gap: 12px; display: flex; }
29
36
  .capital-config-switch-text { min-width: 0; flex: 1; display: flex; flex-direction: column; gap: 4px; }
@@ -77,7 +84,7 @@ window.__ModuleLoader__.load({
77
84
  .capital-config-plugin-link { border-radius: var(--dsw-radius-sm); width: 24px; height: 24px; color: var(--dsw-alias-label-tertiary); justify-content: center; align-items: center; display: inline-flex; text-decoration: none; }
78
85
  .capital-config-plugin-link:hover { background: var(--dsw-alias-interactive-bg-hover); color: var(--dsw-alias-label-primary); }
79
86
  .capital-config-plugin-link:focus-visible { outline: var(--dsw-focus-ring-width, 2px) solid var(--dsw-focus-ring-color, var(--dsw-alias-brand-primary)); outline-offset: 1px; }
80
- `,document.head.appendChild(t),()=>t.remove()}var ee=class{constructor(e,a){this.scope=e,this.ctx=a,this.status=wt(),this.localFetchWriting=!1,this.localFetchFailed=!1,this.selectedSkillWriting=new Set,this.selectedSkillFailed=new Set,this.selectedSkillsModeWriting=!1,this.selectedSkillsModeFailed=!1,this.automationWriting=new Set,this.automationFailed=new Set,this.bundleRows=null,this.rowsRequested=!1,this.rowsInFlight=!1,this.model=new et(e,[],k.map(s=>({field:s,write:r=>this.writeKey(s,r)}))),this.store=this.model.bind(()=>this.projection()),this.unsubscribe=e.subscribe(()=>{this.refreshRefs(),this.store.set(this.projection()),this.readCredentials()}),this.refreshRefs(),this.readCredentials()}dispose(){this.unsubscribe?.(),this.model.dispose()}projection(){let e=this.scope.getSnapshot();return{...this.model.shell(),...Object.fromEntries(k.map(a=>[a,{...this.model.field(a),configured:this.status[a].configured,writable:this.status[a].writable}])),localFetch:{on:e.value?.retriever?.localFetch?.enabled!==!1,writing:this.localFetchWriting,failed:this.localFetchFailed},selectedSkills:Object.fromEntries(me.map(a=>[a,{on:e.value?.selectedSkills?.[a]===!0,writing:this.selectedSkillWriting.has(a),failed:this.selectedSkillFailed.has(a)}])),selectedSkillsMode:{auto:e.value?.selectedSkillsMode==="auto",writing:this.selectedSkillsModeWriting,failed:this.selectedSkillsModeFailed},automation:Object.fromEntries(pe.map(a=>[a,{value:e.value?.automation?.[a]??q[a],on:e.value?.automation?.[a]!==!1,writing:this.automationWriting.has(a),failed:this.automationFailed.has(a)}])),components:{count:this.bundleRows}}}refreshRefs(){let e=this.scope.getSnapshot();for(let a of k){let s=Ot(e,a);this.status[a].ref!==s&&(this.status[a]={ref:s,configured:!1,writable:!0},this.model.edit(a,""))}}async readCredentials(){let e=k.map(a=>this.status[a].ref);try{let a=await this.ctx.remote.credentials.describe(e);if(!a?.ok||k.some((r,l)=>e[l]!==this.status[r].ref))return;let s=a.value??{};for(let r of k){let l=this.status[r],o=s[l.ref];o!==void 0&&(this.status[r]={ref:l.ref,configured:o.configured===!0,writable:o.writable!==!1})}this.store.set(this.projection())}catch{}}refresh(e){k.some(a=>e===this.status[a].ref)&&this.readCredentials()}async writeKey(e,a){try{return await this.ctx.remote.credentials.set(this.status[e].ref,a.trim()),await this.readCredentials(),this.status[e].configured===!0}catch{return!1}}async toggleLocalFetch(e){if(this.localFetchWriting)return;let a=this.scope.getSnapshot();if(a.status!=="ready"||!a.writable)return;this.localFetchWriting=!0,this.localFetchFailed=!1,this.store.set(this.projection());try{await this.scope.mutate([{op:"set",path:["retriever","localFetch","enabled"],value:e}])}catch{}this.localFetchWriting=!1,this.scope.getSnapshot().value?.retriever?.localFetch?.enabled===e||(this.localFetchFailed=!0),this.store.set(this.projection())}async toggleSelectedSkillsMode(e){if(this.selectedSkillsModeWriting)return;let a=this.scope.getSnapshot();if(a.status!=="ready"||!a.writable)return;this.selectedSkillsModeWriting=!0,this.selectedSkillsModeFailed=!1,this.store.set(this.projection());try{await this.scope.mutate([{op:"set",path:["selectedSkillsMode"],value:e?"auto":"manual"}])}catch{}this.selectedSkillsModeWriting=!1,this.scope.getSnapshot().value?.selectedSkillsMode==="auto"===e||(this.selectedSkillsModeFailed=!0),this.store.set(this.projection())}async toggleSelectedSkill(e,a){if(!me.includes(e)||this.selectedSkillWriting.has(e))return;let s=this.scope.getSnapshot();if(s.status!=="ready"||!s.writable)return;this.selectedSkillWriting.add(e),this.selectedSkillFailed.delete(e),this.store.set(this.projection());try{await this.scope.mutate([{op:"set",path:["selectedSkills",e],value:a}])}catch{}this.selectedSkillWriting.delete(e),this.scope.getSnapshot().value?.selectedSkills?.[e]===a||this.selectedSkillFailed.add(e),this.store.set(this.projection())}async writeAutomation(e,a){if(!pe.includes(e)||this.automationWriting.has(e))return;let s=this.scope.getSnapshot();if(s.status!=="ready"||!s.writable)return;let r=e==="inAppNotifications"?a===!0:Number(a);if(e!=="inAppNotifications"&&!Number.isFinite(r))return;this.automationWriting.add(e),this.automationFailed.delete(e),this.store.set(this.projection());try{let o=this.scope.getSnapshot().value?.automation??{...q};await this.scope.mutate([{op:"set",path:["automation"],value:{...q,...o,[e]:r}}])}catch{}this.automationWriting.delete(e),(this.scope.getSnapshot().value?.automation?.[e]??q[e])!==r&&this.automationFailed.add(e),this.store.set(this.projection())}async ensureBundleRows(){this.rowsRequested=!0,this.bundleRows===null&&await this.readBundleRows()}invalidateBundleRows(){this.rowsRequested&&this.readBundleRows()}async readBundleRows(){if(this.rowsInFlight)return;this.rowsInFlight=!0;let e=this.bundleRows;try{let a=await this.ctx.remote.pluginManager.listBundles(),s=a?.ok===!0?(a.value??[]).find(r=>r?.name===x):void 0;Array.isArray(s?.rows)&&(e=s.rows.length)}catch{}this.rowsInFlight=!1,e!==this.bundleRows&&(this.bundleRows=e,this.store.set(this.projection()))}inject(){return{hooks:{capitalCard:this.store},...this.model.actions(),toggleLocalFetch:e=>this.toggleLocalFetch(e),writeAutomation:(e,a)=>this.writeAutomation(e,a),toggleSelectedSkill:(e,a)=>this.toggleSelectedSkill(e,a),toggleSelectedSkillsMode:e=>this.toggleSelectedSkillsMode(e),ensureBundleRows:()=>this.ensureBundleRows()}}};function E({field:t,label:e,hint:a,docsUrl:s,state:r,disabled:l,onEdit:o,t:g}){let m=Qe(null),[y,u]=w(null);Y(()=>{let p=m.current,b=p?p.querySelector("label"):null;b&&b.parentElement&&u(b.parentElement)},[]);let f=i("a",{href:s,target:"_blank",rel:"noopener noreferrer","aria-label":`${e} ${g("openDocs")}`,"data-capital-config-doc":"true",className:"capital-config-doc-link"},g("openDocs"),i(ge,{size:12}));return i("div",{className:"capital-config-secret-row",key:t,ref:m},i(Ze,{id:`capital-config-${t}-key`,label:e,hint:a,text:r.text,configured:r.configured,stateLabel:r.configured?g("configured"):g("notConfigured"),disabled:l,onEdit:o}),y?Ye(f,y):f)}function ke(){let t=typeof document<"u"?document.documentElement?.lang:"";return typeof t=="string"&&t.toLowerCase().startsWith("en")?"en":"zh"}var N=new Map,Q=new Map;function xt(t){return`${kt}/${encodeURIComponent(t)}.md`}function Ct(t){let e=N.get(t);if(e!==void 0)return Promise.resolve(e);let a=Q.get(t);return a===void 0&&(a=fetch(xt(t),{method:"GET",cache:"no-store",credentials:"same-origin"}).then(async s=>{if(!s.ok){let l=await s.json().catch(()=>({})),o=new Error(typeof l?.error=="string"?l.error:`http_${s.status}`);throw o.code=typeof l?.error=="string"?l.error:s.status===401||s.status===403?"unauthorized":"route_missing",o}let r=await s.text();return N.set(t,r),r}).finally(()=>Q.delete(t)),Q.set(t,a)),a}function ye(t,e){return lt[t]?.[e]??t}function At(t,e){let a=e==="en"?"Triggers on ":"\uFF1B\u5173\u952E\u8BCD\uFF1A",s=t.lastIndexOf(a);return s<=0?{when:t,keywords:""}:{when:t.slice(0,s).trim(),keywords:t.slice(s+a.length).trim().replace(e==="en"?/\.$/:/。$/,"")}}function Tt({entry:t,state:e,disabled:a,onChange:s,t:r}){let l=ke(),o=t.label[l],g=`https://github.com/${t.owner}/${t.repository}`,[m,y]=w(!1),[u,f]=w(null),p=()=>{if(!(u?.status==="ready"||u?.status==="loading")){if(N.has(t.name)){f({status:"ready",text:N.get(t.name)});return}f({status:"loading"}),Ct(t.name).then(c=>f({status:"ready",text:c}),c=>{globalThis.console?.warn?.(`capital-config: SKILL.md \u539F\u6587\u8BFB\u53D6\u5931\u8D25 ${t.name}: ${String(c?.code??c?.message??c)}`),f({status:"failed",code:c?.code==="route_missing"?"route_missing":"unreadable"})})}},b=u?.status==="ready"?i("pre",{className:"capital-config-skill-doc"},u.text):u?.status==="failed"?i("p",{className:"capital-config-skill-doc-state"},r(u.code==="route_missing"?"selectedSkillsDocStale":"selectedSkillsDocFailed")):i("p",{className:"capital-config-skill-doc-state"},r("selectedSkillsDocLoading")),{when:_,keywords:z}=At(ht[t.name]?.useWhen?.[l]??"",l),C=t.roles??[];return i("div",{className:"capital-config-skill-item"},i("div",{className:"capital-config-skill-row"},i("div",{className:"capital-config-skill-main"},i("div",{className:"capital-config-skill-heading"},i("button",{type:"button",className:"capital-config-skill-name",title:r("selectedSkillsOpenDetail"),"aria-haspopup":"dialog",onPointerEnter:p,onFocus:p,onClick:()=>{p(),y(!0)}},o),i("div",{className:"capital-config-skill-tags",role:"group","aria-label":r("selectedSkillsTraitGroup")},t.tags.map(c=>i(de,{key:c,tone:"neutral",className:"capital-config-skill-tag"},be[l][c]??c))),C.length>0?i("div",{className:"capital-config-skill-presets",role:"group","aria-label":r("selectedSkillsPresetGroup")},C.map(c=>i(de,{key:c,tone:"info",className:"capital-config-skill-preset"},i("span",{className:"capital-config-sr-only"},`${r("selectedSkillsPresetGroup")}\uFF1A`),ye(c,l)))):null,i(at,{open:m,onClose:()=>y(!1),title:o,description:t.name,closeLabel:r("selectedSkillsDetailClose"),className:"capital-config-skill-modal",contentClassName:"capital-config-skill-modal-content"},b)),i("p",{className:"capital-config-skill-description"},t.description[l]),i("dl",{className:"capital-config-skill-meta"},i("dt",{key:"when-label"},r("selectedSkillsWhen")),i("dd",{key:"when"},_),z?i("dt",{key:"keywords-label"},r("selectedSkillsKeywords")):null,z?i("dd",{key:"keywords"},z):null),i("a",{className:"capital-config-skill-repo",href:g,target:"_blank",rel:"noopener noreferrer",title:r("selectedSkillsOpenRepo")},`${t.owner}/${t.repository}`,i(ge,{size:12}))),i(X,{label:o,checked:e?.on===!0,disabled:a||e?.writing===!0,onChange:s})),e?.failed?i("p",{role:"status",className:"capital-config-write-failed"},r("saveFailed")):null)}function Rt(t){let e=t.t,a=t.useCapitalCard(n=>n),s=!a.writable,r=a.selectedSkillsMode?.auto===!0,l=ke(),[o,g]=w("sources"),[m,y]=w(v),[u,f]=w(v);Y(()=>{t.ensureBundleRows()},[]);let p=()=>new Set(Z.filter(n=>a.selectedSkills?.[n.key]?.on===!0).map(n=>n.key)),[b,_]=w(p);Y(()=>{a.available&&!r&&_(p())},[a.available,r]);let z=st({trait:m,preset:u}),C=it({trait:m,preset:u}).sort((n,h)=>(b.has(n.key)?0:1)-(b.has(h.key)?0:1)),c=i(Xe,{labels:{unavailable:e("unavailable"),readOnly:e("readOnly"),saveFailed:e("saveFailed"),save:e("save"),saving:e("saving")},state:a,onSave:t.save,onDiscard:t.discard},i(E,{field:"fuyao",label:e("fuyaoLabel"),hint:e("fuyaoHint"),docsUrl:T.fuyao,state:a.fuyao,disabled:s||a.saving||!a.fuyao.writable,onEdit:n=>t.edit("fuyao",n),t:e}),i(E,{field:"ftshare",label:e("ftshareLabel"),hint:e("ftshareHint"),docsUrl:T.ftshare,state:a.ftshare,disabled:s||a.saving||!a.ftshare.writable,onEdit:n=>t.edit("ftshare",n),t:e}),i(E,{field:"anysearch",label:e("anysearchLabel"),hint:e("anysearchHint"),docsUrl:T.anysearch,state:a.anysearch,disabled:s||a.saving||!a.anysearch.writable,onEdit:n=>t.edit("anysearch",n),t:e}),i(E,{field:"wind",label:e("windLabel"),hint:e("windHint"),docsUrl:T.wind,state:a.wind,disabled:s||a.saving||!a.wind.writable,onEdit:n=>t.edit("wind",n),t:e}),i(E,{field:"paddleocr",label:e("paddleocrLabel"),hint:e("paddleocrHint"),docsUrl:T.paddleocr,state:a.paddleocr,disabled:s||a.saving||!a.paddleocr.writable,onEdit:n=>t.edit("paddleocr",n),t:e}));if(!a.available)return i("div",{className:"capital-config-card"},c);let ve=i("div",{className:"capital-config-field"},i("div",{className:"capital-config-switch-row"},i("div",{className:"capital-config-switch-text"},i("span",{className:"capital-config-switch-label"},e("localFetchLabel")),i("p",{className:"capital-config-hint"},e("localFetchHint"))),i(X,{label:e("localFetchLabel"),checked:a.localFetch?.on!==!1,disabled:s||a.saving||a.localFetch?.writing===!0,onChange:t.toggleLocalFetch})),a.localFetch?.failed?i("p",{role:"status",className:"capital-config-write-failed"},e("saveFailed")):null),A=(n,h,F,Te)=>i("label",{className:"capital-config-field"},i("span",{className:"capital-config-switch-label"},e(h)),i("input",{type:"number",min:F,max:Te,defaultValue:a.automation?.[n]?.value,disabled:s||a.saving,onBlur:Re=>t.writeAutomation(n,Re.target.value)}),a.automation?.[n]?.failed?i("p",{role:"status",className:"capital-config-write-failed"},e("saveFailed")):null),we=i("div",{className:"capital-config-field"},i("span",{className:"capital-config-switch-label"},e("automationTitle")),i("p",{className:"capital-config-hint"},e("automationHint")),i("div",{className:"capital-config-grid"},A("tickMs","automationTick",3e4,36e5),A("runTimeoutMinutes","automationRunTimeout",5,120),A("idleTimeoutMinutes","automationIdleTimeout",1,30),A("maxSteps","automationMaxSteps",10,2e3),A("maxToolCalls","automationMaxToolCalls",10,6e3)),i("label",{className:"capital-config-switch-row"},i("span",{className:"capital-config-switch-label"},e("automationInApp")),i("input",{type:"checkbox",checked:a.automation?.inAppNotifications?.on!==!1,disabled:s||a.saving,onChange:n=>t.writeAutomation("inAppNotifications",n.target.checked)}))),te=i("div",{className:"capital-config-selected-mode"},i("div",{className:"capital-config-switch-row"},i("div",{className:"capital-config-switch-text"},i("span",{className:"capital-config-switch-label"},e("selectedSkillsModeLabel")),i("p",{className:"capital-config-hint"},e("selectedSkillsModeHint"))),i(X,{label:e("selectedSkillsModeLabel"),checked:r,disabled:s||a.saving||a.selectedSkillsMode?.writing===!0,onChange:t.toggleSelectedSkillsMode})),a.selectedSkillsMode?.failed?i("p",{role:"status",className:"capital-config-write-failed"},e("saveFailed")):null),ze=be[l],ae=(n,h)=>i("div",{className:"capital-config-filter-row"},i("span",{className:"capital-config-filter-label"},n),i("div",{className:"capital-config-filter-options",role:"group","aria-label":n},...h)),je=yt.map(n=>i(he,{key:n,type:"button",className:"capital-config-filter-pill",active:m===n,"aria-pressed":m===n?"true":"false",onClick:()=>y(n)},n===v?e("selectedSkillsAll"):ze[n]??n,i("span",{className:"capital-config-filter-count"},String(z.traits.get(n)??0)))),Oe=[v,...ct].map(n=>{let h=n===v?Z.length:vt.get(n)??0,F=n!==v&&h===0;return i(he,{key:n,type:"button",className:"capital-config-filter-pill",active:u===n,"aria-pressed":u===n?"true":"false",disabled:F,title:F?e("selectedSkillsPresetUnavailable"):void 0,onClick:()=>f(n)},n===v?e("selectedSkillsAll"):ye(n,l),i("span",{className:"capital-config-filter-count"},String(z.presets.get(n)??0)))}),Se=i("div",{className:"capital-config-filters",role:"group","aria-label":e("selectedSkillsFilterLabel")},ae(e("selectedSkillsTraitGroup"),je),ae(e("selectedSkillsPresetGroup"),Oe)),xe=C.length>0?C.map(n=>i(Tt,{key:n.key,entry:{...n,roles:rt(n)},state:a.selectedSkills?.[n.key],disabled:s||a.saving,onChange:h=>t.toggleSelectedSkill(n.key,h),t:e})):[i("p",{key:"empty",className:"capital-config-selected-empty"},e("selectedSkillsEmpty"))],Ce=(n,h)=>Number.isInteger(h)?`${n} ${h}`:n,Ae=[{value:"sources",label:a.dirty?e("titleUnsaved"):e("title")},{value:"skills",label:e("selectedSkillsTitle")},{value:"components",label:Ce(e("componentsTitle"),a.components?.count)}],U=(n,h)=>i("section",{id:`${J}-${n}-panel`,role:"tabpanel","aria-labelledby":`${J}-${n}`,className:"capital-config-panel","data-capital-config-panel":n,hidden:o!==n},...h);return i("div",{className:"capital-config-card","data-capital-config-tab":o},i(tt,{id:J,value:o,options:Ae,label:e("tabsLabel"),disabled:!1,onChange:n=>{g(n),n==="components"&&t.ensureBundleRows(),n==="skills"&&_(p())}}),U("sources",[c,ve,we]),U("skills",r?[te]:[te,i("div",{className:"capital-config-skills-browser"},Se,i("div",{className:"capital-config-selected-list"},...xe))]),U("components",[i("span",{className:"capital-config-sr-only"},e("componentsHint"))]))}var Et={github:"M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12",npm:"M1.763 0C.786 0 0 .786 0 1.763v20.474C0 23.214.786 24 1.763 24h20.474c.977 0 1.763-.786 1.763-1.763V1.763C24 .786 23.214 0 22.237 0zM5.13 5.323l13.837.019-.009 13.836h-3.464l.01-10.382h-3.456L12.04 19.17H5.113z"};function fe({kind:t,href:e,label:a}){return i("a",{className:"capital-config-plugin-link",href:e,target:"_blank",rel:"noopener noreferrer","aria-label":a,title:a,"data-capital-plugin-link":t},i("svg",{viewBox:"0 0 24 24",width:16,height:16,fill:"currentColor","aria-hidden":"true",focusable:"false"},i("path",{d:Et[t]})))}function _t({subject:t,t:e}){return t?.kind!=="bundle"||t.pkg?.name!==x?null:i("span",{className:"capital-config-plugin-links"},i(fe,{kind:"github",href:dt,label:e("githubLabel")}),i(fe,{kind:"npm",href:ut,label:e("npmLabel")}))}function Ft(t){t.effect(St,"capital-config: styles"),t.effect(()=>t.locale.register($,{zh:zt,en:jt}),"capital-config: dictionaries");let e=new ee(t.configForms.get(G),t);t.effect(()=>()=>e.dispose(),"capital-config: form subscription"),t.effect(()=>t.remote.$on("credentials/reference-updated",a=>e.refresh(a)),"capital-config: credential invalidations"),t.effect(()=>{let a=()=>e.invalidateBundleRows(),s=[t.remote.$on("plugin-manager/changed",a),t.on("connection/reset",a)];return()=>{for(let r of s)r()}},"capital-config: bundle row invalidations"),t.effect(()=>t.configForms.whileServed([G],()=>t.slots.inject("plugins.bundle.config",()=>t.slots.register({name:"plugins.bundle.config",key:x,locale:$,inject:()=>e.inject()},Rt))),"capital-config: page"),t.effect(()=>t.slots.inject(ue,()=>t.slots.register({name:ue,id:`${G}-plugin-links`,locale:$},_t)),"capital-config: plugin links"),t.logger?.info?.("capital-config: settings card + \u6807\u9898\u5916\u94FE mounted")}exports.name="capital-config";exports.inject=["slots","locale","remote","remote.credentials","remote.pluginManager","configForms"];exports.apply=Ft;
87
+ `,document.head.appendChild(t),()=>t.remove()}var ie=class{constructor(e,a){this.scope=e,this.ctx=a,this.status=Tt(),this.localFetchWriting=!1,this.localFetchFailed=!1,this.selectedSkillWriting=new Set,this.selectedSkillFailed=new Set,this.selectedSkillsModeWriting=!1,this.selectedSkillsModeFailed=!1,this.automationWriting=new Set,this.automationFailed=new Set,this.automationInvalid=new Set,this.bundleRows=null,this.rowsRequested=!1,this.rowsInFlight=!1,this.model=new lt(e,[],k.map(s=>({field:s,write:r=>this.writeKey(s,r)}))),this.store=this.model.bind(()=>this.projection()),this.unsubscribe=e.subscribe(()=>{this.refreshRefs(),this.store.set(this.projection()),this.readCredentials()}),this.refreshRefs(),this.readCredentials()}dispose(){this.unsubscribe?.(),this.model.dispose()}projection(){let e=this.scope.getSnapshot();return{...this.model.shell(),...Object.fromEntries(k.map(a=>[a,{...this.model.field(a),configured:this.status[a].configured,writable:this.status[a].writable}])),localFetch:{on:e.value?.retriever?.localFetch?.enabled!==!1,writing:this.localFetchWriting,failed:this.localFetchFailed},selectedSkills:Object.fromEntries(ve.map(a=>[a,{on:e.value?.selectedSkills?.[a]===!0,writing:this.selectedSkillWriting.has(a),failed:this.selectedSkillFailed.has(a)}])),selectedSkillsMode:{auto:e.value?.selectedSkillsMode==="auto",writing:this.selectedSkillsModeWriting,failed:this.selectedSkillsModeFailed},automation:Object.fromEntries(ke.map(a=>[a,{value:e.value?.automation?.[a]??ye[a],on:e.value?.automation?.[a]!==!1,writing:this.automationWriting.has(a),failed:this.automationFailed.has(a),invalid:this.automationInvalid.has(a)}])),components:{count:this.bundleRows}}}refreshRefs(){let e=this.scope.getSnapshot();for(let a of k){let s=_t(e,a);this.status[a].ref!==s&&(this.status[a]={ref:s,configured:!1,writable:!0},this.model.edit(a,""))}}async readCredentials(){let e=k.map(a=>this.status[a].ref);try{let a=await this.ctx.remote.credentials.describe(e);if(!a?.ok||k.some((r,o)=>e[o]!==this.status[r].ref))return;let s=a.value??{};for(let r of k){let o=this.status[r],l=s[o.ref];l!==void 0&&(this.status[r]={ref:o.ref,configured:l.configured===!0,writable:l.writable!==!1})}this.store.set(this.projection())}catch{}}refresh(e){k.some(a=>e===this.status[a].ref)&&this.readCredentials()}async writeKey(e,a){try{return await this.ctx.remote.credentials.set(this.status[e].ref,a.trim()),await this.readCredentials(),this.status[e].configured===!0}catch{return!1}}async toggleLocalFetch(e){if(this.localFetchWriting)return;let a=this.scope.getSnapshot();if(a.status!=="ready"||!a.writable)return;this.localFetchWriting=!0,this.localFetchFailed=!1,this.store.set(this.projection());try{await this.scope.mutate([{op:"set",path:["retriever","localFetch","enabled"],value:e}])}catch{}this.localFetchWriting=!1,this.scope.getSnapshot().value?.retriever?.localFetch?.enabled===e||(this.localFetchFailed=!0),this.store.set(this.projection())}async toggleSelectedSkillsMode(e){if(this.selectedSkillsModeWriting)return;let a=this.scope.getSnapshot();if(a.status!=="ready"||!a.writable)return;this.selectedSkillsModeWriting=!0,this.selectedSkillsModeFailed=!1,this.store.set(this.projection());try{await this.scope.mutate([{op:"set",path:["selectedSkillsMode"],value:e?"auto":"manual"}])}catch{}this.selectedSkillsModeWriting=!1,this.scope.getSnapshot().value?.selectedSkillsMode==="auto"===e||(this.selectedSkillsModeFailed=!0),this.store.set(this.projection())}async toggleSelectedSkill(e,a){if(!ve.includes(e)||this.selectedSkillWriting.has(e))return;let s=this.scope.getSnapshot();if(s.status!=="ready"||!s.writable)return;this.selectedSkillWriting.add(e),this.selectedSkillFailed.delete(e),this.store.set(this.projection());try{await this.scope.mutate([{op:"set",path:["selectedSkills",e],value:a}])}catch{}this.selectedSkillWriting.delete(e),this.scope.getSnapshot().value?.selectedSkills?.[e]===a||this.selectedSkillFailed.add(e),this.store.set(this.projection())}async writeAutomation(e,a){if(!ke.includes(e)||this.automationWriting.has(e))return"ignored";let s=this.scope.getSnapshot();if(s.status!=="ready"||!s.writable)return"ignored";let r;if(e==="inAppNotifications")r=a===!0;else{let{min:l,max:m}=Oe[e],d=typeof a=="string"?a.trim():a;if(r=Number(d),d===""||d===null||d===void 0||!Number.isInteger(r)||r<l||r>m)return this.automationInvalid.add(e),this.automationFailed.delete(e),this.store.set(this.projection()),"invalid";this.automationInvalid.delete(e)}this.automationWriting.add(e),this.automationFailed.delete(e),this.store.set(this.projection());try{await this.scope.mutate([{op:"set",path:["automation",e],value:r}])}catch{}this.automationWriting.delete(e);let o=this.scope.getSnapshot().value?.automation?.[e]??ye[e];return o!==r&&this.automationFailed.add(e),this.store.set(this.projection()),o===r?"saved":"failed"}clearAutomationInvalid(e){this.automationInvalid.delete(e)&&this.store.set(this.projection())}async ensureBundleRows(){this.rowsRequested=!0,this.bundleRows===null&&await this.readBundleRows()}invalidateBundleRows(){this.rowsRequested&&this.readBundleRows()}async readBundleRows(){if(this.rowsInFlight)return;this.rowsInFlight=!0;let e=this.bundleRows;try{let a=await this.ctx.remote.pluginManager.listBundles(),s=a?.ok===!0?(a.value??[]).find(r=>r?.name===z):void 0;Array.isArray(s?.rows)&&(e=s.rows.length)}catch{}this.rowsInFlight=!1,e!==this.bundleRows&&(this.bundleRows=e,this.store.set(this.projection()))}inject(){return{hooks:{capitalCard:this.store},...this.model.actions(),toggleLocalFetch:e=>this.toggleLocalFetch(e),writeAutomation:(e,a)=>this.writeAutomation(e,a),clearAutomationInvalid:e=>this.clearAutomationInvalid(e),toggleSelectedSkill:(e,a)=>this.toggleSelectedSkill(e,a),toggleSelectedSkillsMode:e=>this.toggleSelectedSkillsMode(e),ensureBundleRows:()=>this.ensureBundleRows()}}};function _({field:t,label:e,hint:a,docsUrl:s,state:r,disabled:o,onEdit:l,t:m}){let d=st(null),[y,p]=w(null);te(()=>{let f=d.current,b=f?f.querySelector("label"):null;b&&b.parentElement&&p(b.parentElement)},[]);let g=i("a",{href:s,target:"_blank",rel:"noopener noreferrer","aria-label":`${e} ${m("openDocs")}`,"data-capital-config-doc":"true",className:"capital-config-doc-link"},m("openDocs"),i(ze,{size:12}));return i("div",{className:"capital-config-secret-row",key:t,ref:d},i(ot,{id:`capital-config-${t}-key`,label:e,hint:a,text:r.text,configured:r.configured,stateLabel:r.configured?m("configured"):m("notConfigured"),disabled:o,onEdit:l}),y?nt(g,y):g)}function Se(){let t=typeof document<"u"?document.documentElement?.lang:"";return typeof t=="string"&&t.toLowerCase().startsWith("en")?"en":"zh"}var U=new Map,ee=new Map;function It(t){return`${xt}/${encodeURIComponent(t)}.md`}function Lt(t){let e=U.get(t);if(e!==void 0)return Promise.resolve(e);let a=ee.get(t);return a===void 0&&(a=fetch(It(t),{method:"GET",cache:"no-store",credentials:"same-origin"}).then(async s=>{if(!s.ok){let o=await s.json().catch(()=>({})),l=new Error(typeof o?.error=="string"?o.error:`http_${s.status}`);throw l.code=typeof o?.error=="string"?o.error:s.status===401||s.status===403?"unauthorized":"route_missing",l}let r=await s.text();return U.set(t,r),r}).finally(()=>ee.delete(t)),ee.set(t,a)),a}function xe(t,e){return gt[t]?.[e]??t}function qt(t,e){let a=e==="en"?"Triggers on ":"\uFF1B\u5173\u952E\u8BCD\uFF1A",s=t.lastIndexOf(a);return s<=0?{when:t,keywords:""}:{when:t.slice(0,s).trim(),keywords:t.slice(s+a.length).trim().replace(e==="en"?/\.$/:/。$/,"")}}function Nt({entry:t,state:e,disabled:a,onChange:s,t:r}){let o=Se(),l=t.label[o],m=`https://github.com/${t.owner}/${t.repository}`,[d,y]=w(!1),[p,g]=w(null),f=()=>{if(!(p?.status==="ready"||p?.status==="loading")){if(U.has(t.name)){g({status:"ready",text:U.get(t.name)});return}g({status:"loading"}),Lt(t.name).then(c=>g({status:"ready",text:c}),c=>{globalThis.console?.warn?.(`capital-config: SKILL.md \u539F\u6587\u8BFB\u53D6\u5931\u8D25 ${t.name}: ${String(c?.code??c?.message??c)}`),g({status:"failed",code:c?.code==="route_missing"?"route_missing":"unreadable"})})}},b=p?.status==="ready"?i("pre",{className:"capital-config-skill-doc"},p.text):p?.status==="failed"?i("p",{className:"capital-config-skill-doc-state"},r(p.code==="route_missing"?"selectedSkillsDocStale":"selectedSkillsDocFailed")):i("p",{className:"capital-config-skill-doc-state"},r("selectedSkillsDocLoading")),{when:F,keywords:j}=qt(kt[t.name]?.useWhen?.[o]??"",o),C=t.roles??[];return i("div",{className:"capital-config-skill-item"},i("div",{className:"capital-config-skill-row"},i("div",{className:"capital-config-skill-main"},i("div",{className:"capital-config-skill-heading"},i("button",{type:"button",className:"capital-config-skill-name",title:r("selectedSkillsOpenDetail"),"aria-haspopup":"dialog",onPointerEnter:f,onFocus:f,onClick:()=>{f(),y(!0)}},l),i("div",{className:"capital-config-skill-tags",role:"group","aria-label":r("selectedSkillsTraitGroup")},t.tags.map(c=>i(ge,{key:c,tone:"neutral",className:"capital-config-skill-tag"},je[o][c]??c))),C.length>0?i("div",{className:"capital-config-skill-presets",role:"group","aria-label":r("selectedSkillsPresetGroup")},C.map(c=>i(ge,{key:c,tone:"info",className:"capital-config-skill-preset"},i("span",{className:"capital-config-sr-only"},`${r("selectedSkillsPresetGroup")}\uFF1A`),xe(c,o)))):null,i(ht,{open:d,onClose:()=>y(!1),title:l,description:t.name,closeLabel:r("selectedSkillsDetailClose"),className:"capital-config-skill-modal",contentClassName:"capital-config-skill-modal-content"},b)),i("p",{className:"capital-config-skill-description"},t.description[o]),i("dl",{className:"capital-config-skill-meta"},i("dt",{key:"when-label"},r("selectedSkillsWhen")),i("dd",{key:"when"},F),j?i("dt",{key:"keywords-label"},r("selectedSkillsKeywords")):null,j?i("dd",{key:"keywords"},j):null),i("a",{className:"capital-config-skill-repo",href:m,target:"_blank",rel:"noopener noreferrer",title:r("selectedSkillsOpenRepo")},`${t.owner}/${t.repository}`,i(ze,{size:12}))),i(N,{label:l,checked:e?.on===!0,disabled:a||e?.writing===!0,onChange:s})),e?.failed?i("p",{role:"status",className:"capital-config-write-failed"},r("saveFailed")):null)}function Ut(t){let e=t.t,a=t.useCapitalCard(n=>n),s=!a.writable,r=a.selectedSkillsMode?.auto===!0,o=Se(),[l,m]=w("sources"),[d,y]=w(v),[p,g]=w(v);te(()=>{t.ensureBundleRows()},[]);let f=()=>new Set(ae.filter(n=>a.selectedSkills?.[n.key]?.on===!0).map(n=>n.key)),[b,F]=w(f);te(()=>{a.available&&!r&&F(f())},[a.available,r]);let j=ut({trait:d,preset:p}),C=dt({trait:d,preset:p}).sort((n,h)=>(b.has(n.key)?0:1)-(b.has(h.key)?0:1)),c=i(rt,{labels:{unavailable:e("unavailable"),readOnly:e("readOnly"),saveFailed:e("saveFailed"),save:e("save"),saving:e("saving")},state:a,onSave:t.save,onDiscard:t.discard},i(_,{field:"fuyao",label:e("fuyaoLabel"),hint:e("fuyaoHint"),docsUrl:R.fuyao,state:a.fuyao,disabled:s||a.saving||!a.fuyao.writable,onEdit:n=>t.edit("fuyao",n),t:e}),i(_,{field:"ftshare",label:e("ftshareLabel"),hint:e("ftshareHint"),docsUrl:R.ftshare,state:a.ftshare,disabled:s||a.saving||!a.ftshare.writable,onEdit:n=>t.edit("ftshare",n),t:e}),i(_,{field:"anysearch",label:e("anysearchLabel"),hint:e("anysearchHint"),docsUrl:R.anysearch,state:a.anysearch,disabled:s||a.saving||!a.anysearch.writable,onEdit:n=>t.edit("anysearch",n),t:e}),i(_,{field:"wind",label:e("windLabel"),hint:e("windHint"),docsUrl:R.wind,state:a.wind,disabled:s||a.saving||!a.wind.writable,onEdit:n=>t.edit("wind",n),t:e}),i(_,{field:"paddleocr",label:e("paddleocrLabel"),hint:e("paddleocrHint"),docsUrl:R.paddleocr,state:a.paddleocr,disabled:s||a.saving||!a.paddleocr.writable,onEdit:n=>t.edit("paddleocr",n),t:e}));if(!a.available)return i("div",{className:"capital-config-card"},c);let Ce=i("div",{className:"capital-config-field"},i("div",{className:"capital-config-switch-row"},i("div",{className:"capital-config-switch-text"},i("span",{className:"capital-config-switch-label"},e("localFetchLabel")),i("p",{className:"capital-config-hint"},e("localFetchHint"))),i(N,{label:e("localFetchLabel"),checked:a.localFetch?.on!==!1,disabled:s||a.saving||a.localFetch?.writing===!0,onChange:t.toggleLocalFetch})),a.localFetch?.failed?i("p",{role:"status",className:"capital-config-write-failed"},e("saveFailed")):null),A=(n,h)=>{let{min:T,max:re,unit:qe}=Oe[n],M=a.automation?.[n]?.value,P=a.automation?.[n]?.invalid===!0,B=P?e("automationInvalid",{min:T,max:re,unit:e(qe)}):a.automation?.[n]?.failed?e("saveFailed"):null;return i("label",{className:"capital-config-number"},i("span",{className:"capital-config-number-head"},i("span",{className:"capital-config-switch-label"},e(h)),B?i("span",{id:`capital-config-automation-${n}-error`,role:P?"alert":"status",className:"capital-config-write-failed"},B):null),i("input",{type:"number",min:T,max:re,step:1,defaultValue:M,disabled:s||a.saving,"aria-invalid":P?"true":void 0,"aria-describedby":B?`capital-config-automation-${n}-error`:void 0,onFocus:()=>t.clearAutomationInvalid(n),onBlur:Ne=>{let oe=Ne.target;return Promise.resolve(t.writeAutomation(n,oe.value)).then(Ue=>{Ue==="invalid"&&M!==void 0&&(oe.value=String(M))})}}))},D=(n,h)=>i("div",{className:"capital-config-automation-group"},i("span",{className:"capital-config-group-label"},e(n)),...h),Ae=i("div",{className:"capital-config-automation"},D("automationScheduleGroup",[i("div",{className:"capital-config-grid"},A("tickMs","automationTick"))]),D("automationRunGroup",[i("div",{className:"capital-config-grid"},A("runTimeoutMinutes","automationRunTimeout"),A("idleTimeoutMinutes","automationIdleTimeout"),A("maxSteps","automationMaxSteps"),A("maxToolCalls","automationMaxToolCalls"))]),D("automationNotifyGroup",[i("div",{className:"capital-config-switch-row"},i("div",{className:"capital-config-switch-text"},i("span",{className:"capital-config-switch-label"},e("automationInApp")),i("p",{className:"capital-config-hint"},e("automationInAppHint"))),i(N,{label:e("automationInApp"),checked:a.automation?.inAppNotifications?.on!==!1,disabled:s||a.saving||a.automation?.inAppNotifications?.writing===!0,onChange:n=>t.writeAutomation("inAppNotifications",n)})),a.automation?.inAppNotifications?.failed?i("p",{role:"status",className:"capital-config-write-failed"},e("saveFailed")):null])),se=i("div",{className:"capital-config-selected-mode"},i("div",{className:"capital-config-switch-row"},i("div",{className:"capital-config-switch-text"},i("span",{className:"capital-config-switch-label"},e("selectedSkillsModeLabel")),i("p",{className:"capital-config-hint"},e("selectedSkillsModeHint"))),i(N,{label:e("selectedSkillsModeLabel"),checked:r,disabled:s||a.saving||a.selectedSkillsMode?.writing===!0,onChange:t.toggleSelectedSkillsMode})),a.selectedSkillsMode?.failed?i("p",{role:"status",className:"capital-config-write-failed"},e("saveFailed")):null),Te=je[o],ne=(n,h)=>i("div",{className:"capital-config-filter-row"},i("span",{className:"capital-config-filter-label"},n),i("div",{className:"capital-config-filter-options",role:"group","aria-label":n},...h)),Re=Ct.map(n=>i(fe,{key:n,type:"button",className:"capital-config-filter-pill",active:d===n,"aria-pressed":d===n?"true":"false",onClick:()=>y(n)},n===v?e("selectedSkillsAll"):Te[n]??n,i("span",{className:"capital-config-filter-count"},String(j.traits.get(n)??0)))),Ee=[v,...bt].map(n=>{let h=n===v?ae.length:At.get(n)??0,T=n!==v&&h===0;return i(fe,{key:n,type:"button",className:"capital-config-filter-pill",active:p===n,"aria-pressed":p===n?"true":"false",disabled:T,title:T?e("selectedSkillsPresetUnavailable"):void 0,onClick:()=>g(n)},n===v?e("selectedSkillsAll"):xe(n,o),i("span",{className:"capital-config-filter-count"},String(j.presets.get(n)??0)))}),_e=i("div",{className:"capital-config-filters",role:"group","aria-label":e("selectedSkillsFilterLabel")},ne(e("selectedSkillsTraitGroup"),Re),ne(e("selectedSkillsPresetGroup"),Ee)),Fe=C.length>0?C.map(n=>i(Nt,{key:n.key,entry:{...n,roles:mt(n)},state:a.selectedSkills?.[n.key],disabled:s||a.saving,onChange:h=>t.toggleSelectedSkill(n.key,h),t:e})):[i("p",{key:"empty",className:"capital-config-selected-empty"},e("selectedSkillsEmpty"))],Ie=(n,h)=>Number.isInteger(h)?`${n} ${h}`:n,Le=[{value:"sources",label:a.dirty?e("titleUnsaved"):e("title")},{value:"automation",label:e("automationTitle")},{value:"skills",label:e("selectedSkillsTitle")},{value:"components",label:Ie(e("componentsTitle"),a.components?.count)}],I=(n,h)=>i("section",{id:`${Z}-${n}-panel`,role:"tabpanel","aria-labelledby":`${Z}-${n}`,className:"capital-config-panel","data-capital-config-panel":n,hidden:l!==n},...h);return i("div",{className:"capital-config-card","data-capital-config-tab":l},i(ct,{id:Z,value:l,options:Le,label:e("tabsLabel"),disabled:!1,onChange:n=>{m(n),n==="components"&&t.ensureBundleRows(),n==="skills"&&F(f())}}),I("sources",[c,Ce]),I("automation",[Ae]),I("skills",r?[se]:[se,i("div",{className:"capital-config-skills-browser"},_e,i("div",{className:"capital-config-selected-list"},...Fe))]),I("components",[i("span",{className:"capital-config-sr-only"},e("componentsHint"))]))}var Dt={github:"M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12",npm:"M1.763 0C.786 0 0 .786 0 1.763v20.474C0 23.214.786 24 1.763 24h20.474c.977 0 1.763-.786 1.763-1.763V1.763C24 .786 23.214 0 22.237 0zM5.13 5.323l13.837.019-.009 13.836h-3.464l.01-10.382h-3.456L12.04 19.17H5.113z"};function we({kind:t,href:e,label:a}){return i("a",{className:"capital-config-plugin-link",href:e,target:"_blank",rel:"noopener noreferrer","aria-label":a,title:a,"data-capital-plugin-link":t},i("svg",{viewBox:"0 0 24 24",width:16,height:16,fill:"currentColor","aria-hidden":"true",focusable:"false"},i("path",{d:Dt[t]})))}function Mt({subject:t,t:e}){return t?.kind!=="bundle"||t.pkg?.name!==z?null:i("span",{className:"capital-config-plugin-links"},i(we,{kind:"github",href:yt,label:e("githubLabel")}),i(we,{kind:"npm",href:vt,label:e("npmLabel")}))}function Pt(t){t.effect(Ft,"capital-config: styles"),t.effect(()=>t.locale.register(X,{zh:Rt,en:Et}),"capital-config: dictionaries");let e=new ie(t.configForms.get(Y),t);t.effect(()=>()=>e.dispose(),"capital-config: form subscription"),t.effect(()=>t.remote.$on("credentials/reference-updated",a=>e.refresh(a)),"capital-config: credential invalidations"),t.effect(()=>{let a=()=>e.invalidateBundleRows(),s=[t.remote.$on("plugin-manager/changed",a),t.on("connection/reset",a)];return()=>{for(let r of s)r()}},"capital-config: bundle row invalidations"),t.effect(()=>t.configForms.whileServed([Y],()=>t.slots.inject("plugins.bundle.config",()=>t.slots.register({name:"plugins.bundle.config",key:z,locale:X,inject:()=>e.inject()},Ut))),"capital-config: page"),t.effect(()=>t.slots.inject(be,()=>t.slots.register({name:be,id:`${Y}-plugin-links`,locale:X},Mt)),"capital-config: plugin links"),t.logger?.info?.("capital-config: settings card + \u6807\u9898\u5916\u94FE mounted")}exports.name="capital-config";exports.inject=["slots","locale","remote","remote.credentials","remote.pluginManager","configForms"];exports.apply=Pt;
81
88
  return module.exports
82
89
  },
83
90
  })