@v587d/capital-generation 2.7.3 → 2.7.4
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/CHANGELOG.md +72 -0
- package/README.md +6 -6
- package/THIRD_PARTY_NOTICES.md +65 -18
- package/capital-config/client.js +4 -4
- package/capital-config/package.json +1 -1
- package/capital-watchlist/package.json +1 -1
- package/chart-ui/package.json +1 -1
- package/lib/web-retriever/local-fetch.d.ts +1 -1
- package/lib/web-retriever/local-fetch.js +1 -1
- package/lib/web-retriever/sources.d.ts +1 -1
- package/lib/web-retriever/sources.js +1 -1
- package/lib/web-retriever/wind-client.d.ts +1 -1
- package/lib/web-retriever/wind-client.js +1 -1
- package/package.json +2 -1
- package/selected-skills/README.md +6 -1
- package/selected-skills/catalog.js +176 -0
- package/selected-skills/claude-for-financial-services-cn/LICENSE +201 -0
- package/selected-skills/claude-for-financial-services-cn/UPSTREAM.md +173 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-3-statement-model/SKILL.md +287 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-accrual-schedule/SKILL.md +182 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-audit-xls/SKILL.md +231 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-break-trace/SKILL.md +217 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-catalyst-calendar/SKILL.md +258 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-clean-data-xls/SKILL.md +237 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-comps/SKILL.md +104 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-comps-analysis/SKILL.md +196 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-dcf/SKILL.md +81 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-dcf-model/SKILL.md +68 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-deal-screening/SKILL.md +212 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-deck-refresh/SKILL.md +221 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-earnings-analysis/SKILL.md +237 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-earnings-preview/SKILL.md +239 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-gl-recon/SKILL.md +232 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-ib-check-deck/SKILL.md +252 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-idea-generation/SKILL.md +277 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-initiating-coverage/SKILL.md +271 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-lbo-model/SKILL.md +273 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-market-data/SKILL.md +229 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-model-update/SKILL.md +219 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-morning-note/SKILL.md +227 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-ppt-template-creator/SKILL.md +231 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-pptx-author/SKILL.md +240 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-roll-forward/SKILL.md +189 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-sector-overview/SKILL.md +257 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-skill-creator/SKILL.md +304 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-tax-loss-harvesting/SKILL.md +200 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-thesis-tracker/SKILL.md +237 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-variance-commentary/SKILL.md +262 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/china-finance/skills/china-xlsx-author/SKILL.md +256 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/fund-admin/skills/china-accrual-schedule/SKILL.md +190 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/fund-admin/skills/china-break-trace/SKILL.md +182 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/fund-admin/skills/china-gl-recon/SKILL.md +200 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/fund-admin/skills/china-nav-tieout/SKILL.md +233 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/fund-admin/skills/china-roll-forward/SKILL.md +178 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/fund-admin/skills/china-variance-commentary/SKILL.md +190 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/investment-banking/skills/china-buyer-list/SKILL.md +198 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/investment-banking/skills/china-cim-builder/SKILL.md +223 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/investment-banking/skills/china-competitive-analysis/SKILL.md +233 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/investment-banking/skills/china-datapack-builder/SKILL.md +232 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/investment-banking/skills/china-deal-tracker/SKILL.md +151 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/investment-banking/skills/china-merger-model/SKILL.md +226 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/investment-banking/skills/china-pitch-deck/SKILL.md +231 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/investment-banking/skills/china-process-letter/SKILL.md +249 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/investment-banking/skills/china-strip-profile/SKILL.md +196 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/investment-banking/skills/china-teaser/SKILL.md +235 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/operations/skills/china-kyc-doc-parse/SKILL.md +252 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/operations/skills/china-kyc-rules/SKILL.md +223 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/private-equity/skills/china-ai-readiness/SKILL.md +184 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/private-equity/skills/china-dd-checklist/SKILL.md +217 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/private-equity/skills/china-dd-meeting-prep/SKILL.md +290 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/private-equity/skills/china-deal-sourcing/SKILL.md +224 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/private-equity/skills/china-ic-memo/SKILL.md +230 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/private-equity/skills/china-portfolio-monitoring/SKILL.md +214 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/private-equity/skills/china-returns-analysis/SKILL.md +176 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/private-equity/skills/china-unit-economics/SKILL.md +192 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/private-equity/skills/china-value-creation-plan/SKILL.md +193 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/wealth-management/skills/china-client-report/SKILL.md +205 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/wealth-management/skills/china-client-review/SKILL.md +218 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/wealth-management/skills/china-financial-plan/SKILL.md +259 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/wealth-management/skills/china-investment-proposal/SKILL.md +271 -0
- package/selected-skills/claude-for-financial-services-cn/vertical-plugins/wealth-management/skills/china-portfolio-rebalance/SKILL.md +191 -0
|
@@ -12,6 +12,11 @@ export const SELECTED_SKILL_SKILL_DIRS = Object.freeze({
|
|
|
12
12
|
// 指上去等于发现 0 颗:快照因此平铺掉 <domain>/ 这一层(每颗的 references/、assets/ 跟着走,
|
|
13
13
|
// 正文链接都在自己目录内,不破)。理由与逐颗原分组记在该快照的 UPSTREAM.md。
|
|
14
14
|
'trading-skills': 'skills',
|
|
15
|
+
// 上游有六个 skills 根(vertical-plugins/<条线>/skills/),并且 agent-plugins/<角色>/skills/ 是它自己
|
|
16
|
+
// vendored 的副本(上游 CLAUDE.md 规定"不许直接改 bundled copies")。provider 只扫一个根,
|
|
17
|
+
// 因此只登记规范根那一条线:vertical-plugins/china-finance/skills —— 上游自己写明 skill 正文就 authored 在这里。
|
|
18
|
+
// 另外五条线(投行 / PE / 基金运营 / 财富 / 账户)与副本留在快照里当材料,不进可选清单。
|
|
19
|
+
'claude-for-financial-services-cn': 'vertical-plugins/china-finance/skills',
|
|
15
20
|
})
|
|
16
21
|
|
|
17
22
|
// Selected-skill metadata owned by Capital Generation. Upstream snapshots remain unchanged.
|
|
@@ -873,6 +878,177 @@ export const SELECTED_SKILL_CATALOG = Object.freeze([
|
|
|
873
878
|
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.',
|
|
874
879
|
},
|
|
875
880
|
},
|
|
881
|
+
{
|
|
882
|
+
key: 'chinaEarningsAnalysis',
|
|
883
|
+
name: 'china-earnings-analysis',
|
|
884
|
+
label: { zh: 'A 股业绩点评', en: 'A-Share Earnings Review' },
|
|
885
|
+
description: {
|
|
886
|
+
zh: '把已覆盖公司的季报或年报写成 A 股卖方体例的点评:实际 / 一致预期 / 上期的差异表、收入与利润率分解、资产负债表与现金流关注点,再落到估值与风险。',
|
|
887
|
+
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.',
|
|
888
|
+
},
|
|
889
|
+
owner: 'jwangkun',
|
|
890
|
+
repository: 'claude-for-financial-services-cn',
|
|
891
|
+
status: 'watchlist',
|
|
892
|
+
lastCommit: '2026-09-14',
|
|
893
|
+
reviewBy: '2026-11-08',
|
|
894
|
+
tags: ['a-share', 'earnings', 'filings', 'financial-health'],
|
|
895
|
+
riskNote: {
|
|
896
|
+
zh: '冷启动实验;上游最近一次提交是 2026-09-14,启用前请自行复核来源。本插件没有一致预期的结构化取数面:那一列取不到就留空并点名缺失,不用记忆补。报告里的评级与目标价段落属于推演练习,不构成买卖建议。',
|
|
897
|
+
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.',
|
|
898
|
+
},
|
|
899
|
+
},
|
|
900
|
+
{
|
|
901
|
+
key: 'chinaEarningsPreview',
|
|
902
|
+
name: 'china-earnings-preview',
|
|
903
|
+
label: { zh: 'A 股财报前瞻', en: 'A-Share Earnings Preview' },
|
|
904
|
+
description: {
|
|
905
|
+
zh: '公布前把关注点排好:历史基线、要盯的三到五个指标、乐观 / 基准 / 悲观三档情景与触发条件,按 A 股披露节奏(业绩预告、快报、正式报告)写前瞻。',
|
|
906
|
+
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 预告, 快报 and the full report.',
|
|
907
|
+
},
|
|
908
|
+
owner: 'jwangkun',
|
|
909
|
+
repository: 'claude-for-financial-services-cn',
|
|
910
|
+
status: 'watchlist',
|
|
911
|
+
lastCommit: '2026-09-14',
|
|
912
|
+
reviewBy: '2026-11-08',
|
|
913
|
+
tags: ['a-share', 'earnings', 'monitoring'],
|
|
914
|
+
riskNote: {
|
|
915
|
+
zh: '冷启动实验;上游最近一次提交是 2026-09-14,启用前请自行复核来源。宿主取不到一致预期时,情景对比写在历史与自家披露口径上,并标明那是你自己的基线;文中的仓位与交易策略设想属于推演练习。',
|
|
916
|
+
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’s own disclosed range, labelled as your baseline; the sizing and trade ideas it sketches are exercises.',
|
|
917
|
+
},
|
|
918
|
+
},
|
|
919
|
+
{
|
|
920
|
+
key: 'chinaCompsAnalysis',
|
|
921
|
+
name: 'china-comps-analysis',
|
|
922
|
+
label: { zh: 'A 股可比公司倍数', en: 'A-Share Comparable Multiples' },
|
|
923
|
+
description: {
|
|
924
|
+
zh: '按 A 股口径搭同业倍数表:板块分组与市值 / 增速 / 盈利性筛选,P/E(动态·静态·TTM)、P/B、EV/EBITDA 与溢价折价的解释,最后收敛成一个估值区间。',
|
|
925
|
+
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.',
|
|
926
|
+
},
|
|
927
|
+
owner: 'jwangkun',
|
|
928
|
+
repository: 'claude-for-financial-services-cn',
|
|
929
|
+
status: 'watchlist',
|
|
930
|
+
lastCommit: '2026-09-14',
|
|
931
|
+
reviewBy: '2026-11-08',
|
|
932
|
+
tags: ['a-share', 'valuation', 'competition'],
|
|
933
|
+
riskNote: {
|
|
934
|
+
zh: '冷启动实验;上游最近一次提交是 2026-09-14,启用前请自行复核来源。区间随倍数假设大幅移动,末尾的目标价与投资建议属于推演练习,本插件不据它下单,也不给仓位数字。',
|
|
935
|
+
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 places no orders and derives no position size from them.',
|
|
936
|
+
},
|
|
937
|
+
},
|
|
938
|
+
{
|
|
939
|
+
key: 'chinaDcf',
|
|
940
|
+
name: 'china-dcf',
|
|
941
|
+
label: { zh: 'A 股 DCF 口径', en: 'A-Share DCF Conventions' },
|
|
942
|
+
description: {
|
|
943
|
+
zh: '用中国财报口径跑 DCF:无风险利率取十年期国债收益率、A 股股权风险溢价、25% 税率(高新技术企业 15%)、本币终值增长,再把 WACC 与敏感性摊开。',
|
|
944
|
+
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 高新技术企业), local-currency terminal growth, then WACC and sensitivities.',
|
|
945
|
+
},
|
|
946
|
+
owner: 'jwangkun',
|
|
947
|
+
repository: 'claude-for-financial-services-cn',
|
|
948
|
+
status: 'watchlist',
|
|
949
|
+
lastCommit: '2026-09-14',
|
|
950
|
+
reviewBy: '2026-11-08',
|
|
951
|
+
tags: ['a-share', 'valuation', 'cash-flow'],
|
|
952
|
+
riskNote: {
|
|
953
|
+
zh: '冷启动实验;上游最近一次提交是 2026-09-14,启用前请自行复核来源。国债收益率或 β 取不到时按假设区间做敏感性并写明假设,不假设一个点位;行业利润率的默认值是这个模型的输入,不是对公司的预测。',
|
|
954
|
+
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.',
|
|
955
|
+
},
|
|
956
|
+
},
|
|
957
|
+
{
|
|
958
|
+
key: 'chinaSectorOverview',
|
|
959
|
+
name: 'china-sector-overview',
|
|
960
|
+
label: { zh: 'A 股行业全景', en: 'A-Share Sector Landscape' },
|
|
961
|
+
description: {
|
|
962
|
+
zh: '画一张 A 股行业地图:市场规模与集中度、政策与监管框架、竞争格局与按板块的关键 KPI(批价、装机量、NIM 一类),再落到主题与估值对照。',
|
|
963
|
+
en: 'Maps an A-share industry: market size and concentration, the policy and regulatory frame, competitive structure with sector-specific KPIs (批价, 装机量, NIM and the like), then themes and valuation context.',
|
|
964
|
+
},
|
|
965
|
+
owner: 'jwangkun',
|
|
966
|
+
repository: 'claude-for-financial-services-cn',
|
|
967
|
+
status: 'watchlist',
|
|
968
|
+
lastCommit: '2026-09-14',
|
|
969
|
+
reviewBy: '2026-11-08',
|
|
970
|
+
tags: ['a-share', 'macro', 'competition', 'business-analysis'],
|
|
971
|
+
riskNote: {
|
|
972
|
+
zh: '冷启动实验;上游最近一次提交是 2026-09-14,启用前请自行复核来源。行业口径的统计取不到就写成缺口,不折算成记忆里的数;多空一览与"重点标的、目标价、评级"一节属于推演练习,本插件不据它下单,也不给仓位。',
|
|
973
|
+
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 重点标的、目标价、评级 section are exercises — no orders and no position size come from them.',
|
|
974
|
+
},
|
|
975
|
+
},
|
|
976
|
+
{
|
|
977
|
+
key: 'chinaCatalystCalendar',
|
|
978
|
+
name: 'china-catalyst-calendar',
|
|
979
|
+
label: { zh: 'A 股催化剂日历', en: 'A-Share Catalyst Calendar' },
|
|
980
|
+
description: {
|
|
981
|
+
zh: '把 A 股的披露与事件按时间排成注意力日历:财报与业绩预告、股东大会、解禁与分红回购、政策与行业会议,并标出压在同一个事件链上的公司。',
|
|
982
|
+
en: 'Lays A-share disclosures and events out as an attention calendar: earnings and 业绩预告, shareholder meetings, lockup expiries, dividends and buybacks, policy and industry events, flagging names hanging on the same event chain.',
|
|
983
|
+
},
|
|
984
|
+
owner: 'jwangkun',
|
|
985
|
+
repository: 'claude-for-financial-services-cn',
|
|
986
|
+
status: 'watchlist',
|
|
987
|
+
lastCommit: '2026-09-14',
|
|
988
|
+
reviewBy: '2026-11-08',
|
|
989
|
+
tags: ['a-share', 'monitoring', 'macro', 'earnings'],
|
|
990
|
+
riskNote: {
|
|
991
|
+
zh: '冷启动实验;上游最近一次提交是 2026-09-14,启用前请自行复核来源。与美股口径的「催化剂地图」同族,但换成 A 股披露节奏;日期没取回来就标成未确认,不编日历,也不预测价格走向。',
|
|
992
|
+
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.',
|
|
993
|
+
},
|
|
994
|
+
},
|
|
995
|
+
{
|
|
996
|
+
key: 'chinaBreakTrace',
|
|
997
|
+
name: 'china-break-trace',
|
|
998
|
+
label: { zh: 'A 股财务核查', en: 'A-Share Forensic Review' },
|
|
999
|
+
description: {
|
|
1000
|
+
zh: '对 A 股财报做取证式核查:科目勾稽、利润与现金流的背离、应收与存货异常、营运资本口径,再读审计意见类型、交易所问询与处罚公告里的信号。',
|
|
1001
|
+
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.',
|
|
1002
|
+
},
|
|
1003
|
+
owner: 'jwangkun',
|
|
1004
|
+
repository: 'claude-for-financial-services-cn',
|
|
1005
|
+
status: 'watchlist',
|
|
1006
|
+
lastCommit: '2026-09-14',
|
|
1007
|
+
reviewBy: '2026-11-08',
|
|
1008
|
+
tags: ['a-share', 'risk', 'financial-health', 'verification'],
|
|
1009
|
+
riskNote: {
|
|
1010
|
+
zh: '冷启动实验;上游最近一次提交是 2026-09-14,启用前请自行复核来源。它列的是"该去查什么",不是指控,也不构成买卖建议;与「风险与催化剂监控」部分重叠,这颗按报表科目与监管文书走。',
|
|
1011
|
+
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.',
|
|
1012
|
+
},
|
|
1013
|
+
},
|
|
1014
|
+
{
|
|
1015
|
+
key: 'chinaVarianceCommentary',
|
|
1016
|
+
name: 'china-variance-commentary',
|
|
1017
|
+
label: { zh: 'A 股业绩差异表述', en: 'A-Share Variance Commentary' },
|
|
1018
|
+
description: {
|
|
1019
|
+
zh: '把差异写成读得懂的中文:超预期 / 低于预期怎么分类、驱动因素归因到哪一层、口径与单位一致性怎么交代,以及"这个变化意味着什么"的句子级写法。',
|
|
1020
|
+
en: 'Turns variances into readable Chinese commentary: how to classify beat / miss / in-line, where to attribute the driver, how to keep 口径 and units consistent, and how to say what the change actually means.',
|
|
1021
|
+
},
|
|
1022
|
+
owner: 'jwangkun',
|
|
1023
|
+
repository: 'claude-for-financial-services-cn',
|
|
1024
|
+
status: 'watchlist',
|
|
1025
|
+
lastCommit: '2026-09-14',
|
|
1026
|
+
reviewBy: '2026-11-08',
|
|
1027
|
+
tags: ['a-share', 'earnings', 'verification'],
|
|
1028
|
+
riskNote: {
|
|
1029
|
+
zh: '冷启动实验;上游最近一次提交是 2026-09-14,启用前请自行复核来源。宿主取不到一致预期时,差异就写在去年同期、先前口径与披露区间上,并说明那是哪种基线,不冒充市场共识。',
|
|
1030
|
+
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 — labelled as which baseline, never dressed up as market consensus.',
|
|
1031
|
+
},
|
|
1032
|
+
},
|
|
1033
|
+
{
|
|
1034
|
+
key: 'chinaInitiatingCoverage',
|
|
1035
|
+
name: 'china-initiating-coverage',
|
|
1036
|
+
label: { zh: 'A 股首次覆盖', en: 'A-Share Initiation Report' },
|
|
1037
|
+
description: {
|
|
1038
|
+
zh: '按券商研究所体例搭一份 A 股首次覆盖:公司与行业分析、三表建模、估值与倍数区间、图表清单与报告骨架,一路写到评级与目标价那一节。',
|
|
1039
|
+
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.',
|
|
1040
|
+
},
|
|
1041
|
+
owner: 'jwangkun',
|
|
1042
|
+
repository: 'claude-for-financial-services-cn',
|
|
1043
|
+
status: 'watchlist',
|
|
1044
|
+
lastCommit: '2026-09-14',
|
|
1045
|
+
reviewBy: '2026-11-08',
|
|
1046
|
+
tags: ['a-share', 'valuation', 'business-analysis', 'filings'],
|
|
1047
|
+
riskNote: {
|
|
1048
|
+
zh: '冷启动实验;上游最近一次提交是 2026-09-14,启用前请自行复核来源。五档评级与目标价是把材料写成一个结论的推演练习,本插件不据它下单,也不给仓位数字;报告写在最终答复里、不产出文件,页数只是体量参考。',
|
|
1049
|
+
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 places no orders and gives no position size on them. The report is written into the final reply rather than a file, and the page counts are only a sense of scale.',
|
|
1050
|
+
},
|
|
1051
|
+
},
|
|
876
1052
|
])
|
|
877
1053
|
|
|
878
1054
|
export const SELECTED_SKILL_TAG_LABELS = Object.freeze({
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
Apache License
|
|
2
|
+
Version 2.0, January 2004
|
|
3
|
+
http://www.apache.org/licenses/
|
|
4
|
+
|
|
5
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
6
|
+
|
|
7
|
+
1. Definitions.
|
|
8
|
+
|
|
9
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
|
10
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
|
11
|
+
|
|
12
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
|
13
|
+
the copyright owner that is granting the License.
|
|
14
|
+
|
|
15
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
|
16
|
+
other entities that control, are controlled by, or are under common
|
|
17
|
+
control with that entity. For the purposes of this definition,
|
|
18
|
+
"control" means (i) the power, direct or indirect, to cause the
|
|
19
|
+
direction or management of such entity, whether by contract or
|
|
20
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
21
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
22
|
+
|
|
23
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
|
24
|
+
exercising permissions granted by this License.
|
|
25
|
+
|
|
26
|
+
"Source" form shall mean the preferred form for making modifications,
|
|
27
|
+
including but not limited to software source code, documentation
|
|
28
|
+
source, and configuration files.
|
|
29
|
+
|
|
30
|
+
"Object" form shall mean any form resulting from mechanical
|
|
31
|
+
transformation or translation of a Source form, including but
|
|
32
|
+
not limited to compiled object code, generated documentation,
|
|
33
|
+
and conversions to other media types.
|
|
34
|
+
|
|
35
|
+
"Work" shall mean the work of authorship, whether in Source or
|
|
36
|
+
Object form, made available under the License, as indicated by a
|
|
37
|
+
copyright notice that is included in or attached to the work
|
|
38
|
+
(an example is provided in the Appendix below).
|
|
39
|
+
|
|
40
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
|
41
|
+
form, that is based on (or derived from) the Work and for which the
|
|
42
|
+
editorial revisions, annotations, elaborations, or other modifications
|
|
43
|
+
represent, as a whole, an original work of authorship. For the purposes
|
|
44
|
+
of this License, Derivative Works shall not include works that remain
|
|
45
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
|
46
|
+
the Work and Derivative Works thereof.
|
|
47
|
+
|
|
48
|
+
"Contribution" shall mean any work of authorship, including
|
|
49
|
+
the original version of the Work and any modifications or additions
|
|
50
|
+
to that Work or Derivative Works thereof, that is intentionally
|
|
51
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
|
52
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
|
53
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
|
54
|
+
means any form of electronic, verbal, or written communication sent
|
|
55
|
+
to the Licensor or its representatives, including but not limited to
|
|
56
|
+
communication on electronic mailing lists, source code control systems,
|
|
57
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
|
58
|
+
Licensor for the purpose of discussing and improving the Work, but
|
|
59
|
+
excluding communication that is conspicuously marked or otherwise
|
|
60
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
|
61
|
+
|
|
62
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
63
|
+
on behalf of whom a Contribution has been received by Licensor and
|
|
64
|
+
subsequently incorporated within the Work.
|
|
65
|
+
|
|
66
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
67
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
68
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
69
|
+
copyright license to reproduce, prepare Derivative Works of,
|
|
70
|
+
publicly display, publicly perform, sublicense, and distribute the
|
|
71
|
+
Work and such Derivative Works in Source or Object form.
|
|
72
|
+
|
|
73
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
|
74
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
75
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
76
|
+
(except as stated in this section) patent license to make, have made,
|
|
77
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
78
|
+
where such license applies only to those patent claims licensable
|
|
79
|
+
by such Contributor that are necessarily infringed by their
|
|
80
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
|
81
|
+
with the Work to which such Contribution(s) was submitted. If You
|
|
82
|
+
institute patent litigation against any entity (including a
|
|
83
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
84
|
+
or a Contribution incorporated within the Work constitutes direct
|
|
85
|
+
or contributory patent infringement, then any patent licenses
|
|
86
|
+
granted to You under this License for that Work shall terminate
|
|
87
|
+
as of the date such litigation is filed.
|
|
88
|
+
|
|
89
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
|
90
|
+
Work or Derivative Works thereof in any medium, with or without
|
|
91
|
+
modifications, and in Source or Object form, provided that You
|
|
92
|
+
meet the following conditions:
|
|
93
|
+
|
|
94
|
+
(a) You must give any other recipients of the Work or
|
|
95
|
+
Derivative Works a copy of this License; and
|
|
96
|
+
|
|
97
|
+
(b) You must cause any modified files to carry prominent notices
|
|
98
|
+
stating that You changed the files; and
|
|
99
|
+
|
|
100
|
+
(c) You must retain, in the Source form of any Derivative Works
|
|
101
|
+
that You distribute, all copyright, patent, trademark, and
|
|
102
|
+
attribution notices from the Source form of the Work,
|
|
103
|
+
excluding those notices that do not pertain to any part of
|
|
104
|
+
the Derivative Works; and
|
|
105
|
+
|
|
106
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
|
107
|
+
distribution, then any Derivative Works that You distribute must
|
|
108
|
+
include a readable copy of the attribution notices contained
|
|
109
|
+
within such NOTICE file, excluding those notices that do not
|
|
110
|
+
pertain to any part of the Derivative Works, in at least one
|
|
111
|
+
of the following places: within a NOTICE text file distributed
|
|
112
|
+
as part of the Derivative Works; within the Source form or
|
|
113
|
+
documentation, if provided along with the Derivative Works; or,
|
|
114
|
+
within a display generated by the Derivative Works, if and
|
|
115
|
+
wherever such third-party notices normally appear. The contents
|
|
116
|
+
of the NOTICE file are for informational purposes only and
|
|
117
|
+
do not modify the License. You may add Your own attribution
|
|
118
|
+
notices within Derivative Works that You distribute, alongside
|
|
119
|
+
or as an addendum to the NOTICE text from the Work, provided
|
|
120
|
+
that such additional attribution notices cannot be construed
|
|
121
|
+
as modifying the License.
|
|
122
|
+
|
|
123
|
+
You may add Your own copyright statement to Your modifications and
|
|
124
|
+
may provide additional or different license terms and conditions
|
|
125
|
+
for use, reproduction, or distribution of Your modifications, or
|
|
126
|
+
for any such Derivative Works as a whole, provided Your use,
|
|
127
|
+
reproduction, and distribution of the Work otherwise complies with
|
|
128
|
+
the conditions stated in this License.
|
|
129
|
+
|
|
130
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
131
|
+
any Contribution intentionally submitted for inclusion in the Work
|
|
132
|
+
by You to the Licensor shall be under the terms and conditions of
|
|
133
|
+
this License, without any additional terms or conditions.
|
|
134
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
|
135
|
+
the terms of any separate license agreement you may have executed
|
|
136
|
+
with Licensor regarding such Contributions.
|
|
137
|
+
|
|
138
|
+
6. Trademarks. This License does not grant permission to use the trade
|
|
139
|
+
names, trademarks, service marks, or product names of the Licensor,
|
|
140
|
+
except as required for reasonable and customary use in describing the
|
|
141
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
|
142
|
+
|
|
143
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
144
|
+
agreed to in writing, Licensor provides the Work (and each
|
|
145
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
146
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
147
|
+
implied, including, without limitation, any warranties or conditions
|
|
148
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
149
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
150
|
+
appropriateness of using or redistributing the Work and assume any
|
|
151
|
+
risks associated with Your exercise of permissions under this License.
|
|
152
|
+
|
|
153
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
|
154
|
+
whether in tort (including negligence), contract, or otherwise,
|
|
155
|
+
unless required by applicable law (such as deliberate and grossly
|
|
156
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
|
157
|
+
liable to You for damages, including any direct, indirect, special,
|
|
158
|
+
incidental, or consequential damages of any character arising as a
|
|
159
|
+
result of this License or out of the use or inability to use the
|
|
160
|
+
Work (including but not limited to damages for loss of goodwill,
|
|
161
|
+
work stoppage, computer failure or malfunction, or any and all
|
|
162
|
+
other commercial damages or losses), even if such Contributor
|
|
163
|
+
has been advised of the possibility of such damages.
|
|
164
|
+
|
|
165
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
|
166
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
|
167
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
168
|
+
or other liability obligations and/or rights consistent with this
|
|
169
|
+
License. However, in accepting such obligations, You may act only
|
|
170
|
+
on Your own behalf and on Your sole responsibility, not on behalf of
|
|
171
|
+
any other Contributor, and only if You agree to indemnify,
|
|
172
|
+
defend, and hold each Contributor harmless for any liability
|
|
173
|
+
incurred by, or claims asserted against, such Contributor by reason
|
|
174
|
+
of your accepting any such warranty or additional liability.
|
|
175
|
+
|
|
176
|
+
END OF TERMS AND CONDITIONS
|
|
177
|
+
|
|
178
|
+
APPENDIX: How to apply the Apache License to your work.
|
|
179
|
+
|
|
180
|
+
To apply the Apache License to your work, attach the following
|
|
181
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
|
182
|
+
replaced with your own identifying information. (Don't include
|
|
183
|
+
the brackets!) The text should be enclosed in the appropriate
|
|
184
|
+
comment syntax for the file format in the same way that other
|
|
185
|
+
comments are applied in the codebase. For more details, see:
|
|
186
|
+
|
|
187
|
+
https://www.apache.org/licenses/license-howto.html
|
|
188
|
+
|
|
189
|
+
Copyright [2025] [jwangkun]
|
|
190
|
+
|
|
191
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
192
|
+
you may not use this file except in compliance with the License.
|
|
193
|
+
You may obtain a copy of the License at
|
|
194
|
+
|
|
195
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
196
|
+
|
|
197
|
+
Unless required by applicable law or agreed to in writing, software
|
|
198
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
199
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
200
|
+
See the License for the specific language governing permissions and
|
|
201
|
+
limitations under the License.
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
# Upstream Record
|
|
2
|
+
|
|
3
|
+
- Project: Claude for Financial Services(中文版)—— 63 颗面向 A 股的金融工作流 skill,按六条业务线组织:
|
|
4
|
+
证券研究(`china-finance`,31 颗)、投行(10)、私募(9)、基金运营(6)、财富管理(5)、账户与合规(2)。
|
|
5
|
+
同一套正文还被上游打包成四个"角色 Agent"(`agent-plugins/*`)再抄了一遍,所以仓库里 `SKILL.md` 有 188 个路径、
|
|
6
|
+
唯一 `name` 只有 58 个。
|
|
7
|
+
- Repository: https://github.com/jwangkun/claude-for-financial-services-cn
|
|
8
|
+
- Upstream commit: `d7585ca0033d0624e14e8c5a031b373c1216dd74`(main,2026-09-14,
|
|
9
|
+
"fix(akshare-mcp): get_financials always returned [] due to wrong THS indicator and stale annual filter (#4)")
|
|
10
|
+
- 全仓 15 次提交(`jwangkun` 14、`fintech-python-java` 1):2026-06-07 建仓,06-08 与 06-09 两天集中 10 次,
|
|
11
|
+
之后沉寂三个月到本 commit。831 stars、3 个 open issue,无 release、无 tag。
|
|
12
|
+
- License: **Apache-2.0** —— 本仓六份快照里第一份非 MIT。`LICENSE` 为上游原件、未改写。署名有三处互不一致,
|
|
13
|
+
按现状记录,不做取舍:
|
|
14
|
+
- `LICENSE:189` 附录写 `Copyright [2025] [jwangkun]` —— Apache 自己的说明要求填好后**去掉方括号**,上游没去;
|
|
15
|
+
- 六个 `vertical-plugins/*/.claude-plugin/plugin.json` 的 `author.name` 都是 `Anthropic FSI China`;
|
|
16
|
+
- `README.md:5` 自称"基于 Anthropic 官方 [claude-for-financial-services](https://github.com/anthropics/claude-for-financial-services)
|
|
17
|
+
深度适配国内市场",其对照表(`README.md:439`)称两者同为 Apache 2.0。
|
|
18
|
+
上游**没有 `NOTICE` 文件**,因此再分发只需保留 `LICENSE` 与本条记录。catalog 的 `owner` 用仓库 owner `jwangkun`。
|
|
19
|
+
- Imported content: 该 commit 的完整文件树,267 个文件 / 约 3.1 MB(`vertical-plugins/` 六条线 63 颗 +
|
|
20
|
+
`agent-plugins/` 四个角色包的副本 + `managed-agent-cookbooks/` + `mcp-servers/` 四份 python 取数服务 +
|
|
21
|
+
`scripts/` + 根级 README / CLAUDE.md / IFIND-INTEGRATION-PLAN.md)。
|
|
22
|
+
|
|
23
|
+
- Local modifications(四类,逐条可复核;口径与理由见 `docs/dev/selected-skills.md` §8.6 的接入必查清单):
|
|
24
|
+
|
|
25
|
+
1. **删除上游的 `.gitignore`。** 它排的是 `mcp-servers/*/mcp_config.json`、`*.key`、`secrets/`、`__pycache__/`、
|
|
26
|
+
`*.xlsx` / `*.pptx` / `*.docx` 与 `.claude/settings.local.json`——这些规则会在本仓继续生效,
|
|
27
|
+
把"按 commit 重导"的快照与所钉 commit 弄成两种样子。实测该 commit 的 267 个已提交文件与盘上文件数一一对上
|
|
28
|
+
(被它挡的都在 `__pycache__/` 一类未提交路径里),所以删除不丢任何文件,但规则本身不能带进宿主仓库。
|
|
29
|
+
2. **不改布局。** 前五颗里出现过三种布局问题(上游没写 `name`、SKILL.md 住在仓库根、分组深一层),本颗都不是:
|
|
30
|
+
每颗 `SKILL.md` 的 frontmatter 都齐 `name` + `description`,`name` 与目录名一致。唯一的新形态是
|
|
31
|
+
**上游有六个 skills 根**(`vertical-plugins/<条线>/skills/`),而 provider 与五处反查只认一个根映射。
|
|
32
|
+
处理方式是**只登记规范根那一条线**:`SELECTED_SKILL_SKILL_DIRS` 填
|
|
33
|
+
`'claude-for-financial-services-cn': 'vertical-plugins/china-finance/skills'`,另五条线与 `agent-plugins/`
|
|
34
|
+
副本不进 provider 视野,`src/` 一行不动。这样也避开了上游内部的同名冲突——`fund-admin` 有五颗与
|
|
35
|
+
`china-finance` 同名但内容更薄(`china-accrual-schedule` 5799 vs 6563 字节一类),
|
|
36
|
+
两条根同时登记就会撞车(provider 的启用集合只按 `name` 认)。
|
|
37
|
+
上游 `CLAUDE.md` 自己写明 "Skills are authored in `vertical-plugins/china-finance/skills/`" 且
|
|
38
|
+
"Agent plugins bundle vendored copies of their skills. **Never edit bundled copies directly.**"——
|
|
39
|
+
登记规范根与上游的作者口径一致,那些副本因此在 diff 里与上游逐字节相同。
|
|
40
|
+
3. **取数面改写:9 份 `SKILL.md`,28 处段落级改动(+152 / −200 行)。** 分析结论、判定档位、阈值表、
|
|
41
|
+
报告骨架与输出模板一字未改。可核对的两个总数:这九颗里的 ```python 伪调用围栏 **14 处 → 0**;
|
|
42
|
+
`IFIND_DATA_SOURCE_MODE` 开关块在这九颗里 **全部删除**(规范根其余 21 颗与另五条款线照旧带着原文开关——
|
|
43
|
+
不进可选清单的正文不改也不扫,§8.6 第一段那条口径;所以整颗快照里仍有 176 个文件出现这个变量名,
|
|
44
|
+
`grep` 到它不代表改写漏了,运行时那些颗一律被 catalog 闭集挡在读取之外)。
|
|
45
|
+
本颗的 hazard 与前五颗不同族:**63 颗正文每一颗都把取数层写死进正文**——`## Data Sources (Multi-Tier)`
|
|
46
|
+
三档服务商(Tier-0 万得 Wind,带 `WIND_API_KEY`、`ak_` 前缀与密钥申请 URL;Tier-1 同花顺 iFind,
|
|
47
|
+
带 `IFIND_AUTH_TOKEN`;Tier-2 AkShare),python 围栏里的伪工具调用(`get_financials(ticker, …)`、
|
|
48
|
+
`ifind_get_stock_events(query)`、`ak.bond_zh_us_rate()`),尾部统一的 `IFIND_DATA_SOURCE_MODE`
|
|
49
|
+
环境变量开关块,以及把服务商名写进引用格式的 `Source: AkShare, [date]` 与"所有数字都应来自 …"检查项。
|
|
50
|
+
改动分六类:
|
|
51
|
+
- **TIER(9 份)**:服务商阶梯 → "这一节要的是哪些字段、as-of 哪天"的委派 brief 清单;
|
|
52
|
+
保留上游的字段词汇(三表、最新价 / PE / PB、板块成分股、指数基准、新闻与公告),
|
|
53
|
+
删掉的是"谁家有数据、密钥去哪申请"。
|
|
54
|
+
- **CALL(9 份、14 处围栏)**:```python 伪调用围栏与 workflow 步骤里的内联调用 → 散文式取数请求。
|
|
55
|
+
本插件没有 shell(§1.6),这些工具名指向的是快照里那四个 MCP 服务端,运行时不存在。
|
|
56
|
+
- **MODE(9 份)**:`IFIND_DATA_SOURCE_MODE` 开关尾块整段删除,换成一句"取数档位由宿主的凭据域决定,
|
|
57
|
+
这份产出既不配置它,也不向使用者索取凭据"(§5:密钥只进 credentials 域)。
|
|
58
|
+
- **CITE(5 份)**:引用格式与检查项里的服务商名 → 回到取数通道真正给出的东西(数据集引用、披露文件名与页码)。
|
|
59
|
+
`巨潮资讯` / 交易所 / 监管机构作为**出处**保留(那是披露场所,也是宿主检索通道本就在用的来源),
|
|
60
|
+
作为**取数指令**的部分删掉。
|
|
61
|
+
- **GAP(4 份,§8.6 第 2 条,本颗最要紧的一类)**:`china-earnings-preview` 原句
|
|
62
|
+
"**If consensus unavailable**, derive from: Historical growth rates / Management guidance /
|
|
63
|
+
Industry benchmarks"、`china-earnings-analysis` 的 `[UNSOURCED] — estimate based on [rationale]`、
|
|
64
|
+
`china-dcf` 的 "use … or web search for latest"、`china-earnings-analysis` 的
|
|
65
|
+
"Consensus sources: Wind / Choice / 慧博 / iFinD" 阶梯 → 统一改成**点名缺哪个字段、该列留空并停下**。
|
|
66
|
+
这里必须如实说明一件事:**本插件没有一致预期的结构化取数面**(同花顺能力清单里没有盈利预测/一致预期条目,
|
|
67
|
+
唯一带预测形状字段的是东财研报条目上的本年 / 次年 EPS 预测)。所以改写后的正文把这四档写成
|
|
68
|
+
"卖方单家口径 ≠ 市场共识",情景与差异要么写在去年、自家先前口径或公司披露区间上并**标明是哪种基线**,
|
|
69
|
+
要么写成缺口——"用记忆里的增速估一个预期"没有任何工具会拦,只能改在正文里。
|
|
70
|
+
- **ROUTE(1 处)**:`china-catalyst-calendar` 的 `## Integration with Other Skills` 表原句保留,
|
|
71
|
+
加第五颗同一句前置条件(点名的 skill 只有使用者显式开启才存在于会话里,本插件明确不提供的那两类永远不存在)。
|
|
72
|
+
另有两处按同一族处理:**DESC(1 处)**`china-dcf` 的 frontmatter `description` 自己写着
|
|
73
|
+
"Uses AkShare MCP for financial statements",那半句换成口径描述,方法论部分不动;
|
|
74
|
+
**CHART(1 处)**`china-initiating-coverage` 的 `**Chart standards:**` 块原文要求
|
|
75
|
+
"Dark theme or light theme (consistent with firm template)" 与 `Source: AkShare historical data` →
|
|
76
|
+
改成"这四张图说的是首次覆盖该有什么图表,图由宿主的出图通道渲染(出图只走 `render_chart`,§6.1),
|
|
77
|
+
主题与标签排版是出图角色的决定",图表清单本身(收入与利润历史、倍数区间带、增长 vs 倍数散点、两年价格线)未改。
|
|
78
|
+
**一处就地标注(3 份)**:`china-comps-analysis`、`china-sector-overview`、`china-initiating-coverage`
|
|
79
|
+
的模板以目标价 / 投资建议 / 多空方向收尾,且改动正好落在那份文件的尾块上,因此除了 `riskNote` 之外,
|
|
80
|
+
尾块里另写了一句"属于推演练习、本插件不据它下单也不给仓位"。`china-earnings-analysis` 与
|
|
81
|
+
`china-variance-commentary` 的评级只出现在报告骨架的某一节里(没有落到被改写的尾块),正文不动,
|
|
82
|
+
完全由 catalog 的 `riskNote` 承担——两份都改或都不改都不是诚实的做法,这里是按"改写是否正好落在同一处"划线,
|
|
83
|
+
线画在这里是为了让下一个人看得见。**评级五档表、`Long / Short` 一览与 `投资建议: [Buy / Hold / Sell]`
|
|
84
|
+
这些上游判定档位与模板全部原样保留**(§8.6:不为口味改结论)。
|
|
85
|
+
4. **Apache-2.0 §4(b) 的改动声明:上面那 9 份文件各加一行。** 前五份快照是 MIT,再分发不要求在**被改的文件上**
|
|
86
|
+
留痕,改动口径只住在本文件里;Apache-2.0 第 4(b) 条要求"修改过的文件带上显著的声明",所以这九份在一级标题
|
|
87
|
+
下面各有一句可见中文声明(点名所钉 commit `d7585ca`、改的是取数与凭据口径、逐条见本文件、方法论未改)。
|
|
88
|
+
其余 54 颗与上游逐字节相同,因此不带这一行。它是许可要求而不是编辑:不改语义、不改结论,
|
|
89
|
+
`test/selected-skills-content.test.mjs` 有一条正向断言钉住"这九份必须各带一行",漏一颗就点名那一颗。
|
|
90
|
+
|
|
91
|
+
- 收录判断(规范根 31 颗里 9 颗进 catalog,22 颗留在快照里当可审查材料;另五条款线 32 颗整条不进):
|
|
92
|
+
- **进(9)**:`china-earnings-analysis`、`china-earnings-preview`、`china-comps-analysis`、`china-dcf`、
|
|
93
|
+
`china-sector-overview`、`china-catalyst-calendar`、`china-break-trace`、`china-variance-commentary`、
|
|
94
|
+
`china-initiating-coverage`。补的是既有 45 条里没有的形状:A 股卖方体例的业绩点评与超预期分解、
|
|
95
|
+
财报前情景框架、A 股口径的可比倍数与 DCF 参数(10Y 国债、A 股 ERP、25%/15% 税率)、
|
|
96
|
+
A 股披露节奏的催化剂日历、按报表科目与监管文书走的财务核查、差异表述的句子级写法、首次覆盖的报告骨架。
|
|
97
|
+
市场口径是 **A 股**(`tags` 全部带 `a-share`),与美股那 30 多颗互为对照,不通用。
|
|
98
|
+
- **不进 · 它本身就是取数目录**:`china-market-data`。整颗是四个服务商 MCP 的工具清单
|
|
99
|
+
(`mcp__ifind__*` / `mcp__akshare__*` 之类工具名表 + 28 个"要什么数据用哪个工具"的配方 +
|
|
100
|
+
`export IFIND_DATA_SOURCE_MODE=…`),自己不产出任何分析。收录它等于在本插件既有的取数协议之外
|
|
101
|
+
再造一条取数路由(§8.6 第 1 条与第 6 条同时撞上),因此整颗留原文不改、也不进清单。
|
|
102
|
+
- **不进 · 元技能 + 执行面**:`china-skill-creator`。它教 Agent 按上游模板新写 `china-*` skill,
|
|
103
|
+
模板里硬编码那份三档服务商的 `## Data Sources` 块,并要求跑 `python3 scripts/check-china.py` 与
|
|
104
|
+
`sync-china-skills.py` 来校验和同步。本插件没有 shell(§1.6),也不需要第二条 skill 生产线。
|
|
105
|
+
- **不进 · 上游自标的 alias**:`china-dcf-model`。`description` 自己写 "This alias skill redirects to
|
|
106
|
+
`china-dcf`",与 InvestSkill 那轮的 `fundamental-analysis` / `dcf-valuation` 同一条理由(§8.6 第 6 条)。
|
|
107
|
+
- **不进 · 同题材的薄一份且结构坏**:`china-comps`(105 行 vs `china-comps-analysis` 207 行)。
|
|
108
|
+
它带着**两份 frontmatter**(`L1-4` 与 `L37-40` 各一份 `name` / `description`),
|
|
109
|
+
正文是同一题材的早版;收哪一颗都让"目录名 ↔ frontmatter name ↔ catalog name"的三处一致变复杂。
|
|
110
|
+
- **不进 · 给买卖动作与仓位数字**(与 `docs/reference/external-skill-scan-2026-10.md` 既定口径、
|
|
111
|
+
以及第五颗排除 `position-sizing` / `position-management` 同一条线):
|
|
112
|
+
`china-morning-note`(晨会纪要的"2-4 条可执行 idea"、`方向: Long / Short / Watch`、止损位与仓位建议)、
|
|
113
|
+
`china-thesis-tracker`(`[Maintain / Add / Reduce / Exit]` 与止损位、目标价)、
|
|
114
|
+
`china-idea-generation`(选股清单给 `Long` 方向,`Position sizing recommendations` 一节)、
|
|
115
|
+
`china-tax-loss-harvesting`(`Full exit: Sell and replace` / `Reduce position` 与执行买卖的清单,
|
|
116
|
+
且税损收割本身是美股应税账户语境的产物)。这四颗**不改写后收进来**,按第五颗的决定整颗不收。
|
|
117
|
+
- **不进 · 要求产出或读取本地文件(§8.6 第 4、5 条)**:`china-xlsx-author`、`china-pptx-author`
|
|
118
|
+
(后者的 `Usage` 直接是 `python3 scripts/generate_a_share_ppt.py`)、`china-ppt-template-creator`、
|
|
119
|
+
`china-deck-refresh`、`china-audit-xls`、`china-ib-check-deck`、`china-clean-data-xls`、
|
|
120
|
+
`china-3-statement-model`(带 `## Excel Formatting (OpenPyXL / Office JS)` 与
|
|
121
|
+
`File named: …_3StatementModel_….xlsx` 的产出清单)、`china-lbo-model`(同一族的 Excel 结构)、
|
|
122
|
+
`china-model-update`、`china-roll-forward`。这十一颗的对象是一份工作簿或一份 deck:本插件的产出写在
|
|
123
|
+
最终答复里(§7 报告链路已删除),图表只走 `render_chart`(§6.1),没有 shell 能生成文件(§1.6)。
|
|
124
|
+
- **不进 · 不是本插件使用者的场景**:`china-gl-recon`、`china-accrual-schedule`(总账对账与计提计划,
|
|
125
|
+
会计作业口径)、`china-deal-screening`(一级市场标的筛选)。它们没有明显违规,留原文不改、不进清单。
|
|
126
|
+
- **整条线不进(另五条,共 32 颗)**:`investment-banking`(10:teaser / CIM / buyer list / datapack /
|
|
127
|
+
merger model / pitch deck …,交付物是并购文件)、`private-equity`(9:尽调清单、IC 备忘录、
|
|
128
|
+
回报与单元经济、投后监控)、`fund-admin`(6:净值对账、GL 对账、roll-forward)、
|
|
129
|
+
`wealth-management`(5:客户报告、理财规划、投顾建议书、组合再平衡——直接给配置动作与建议)、
|
|
130
|
+
`operations`(2:KYC 材料解析与规则)。理由合起来是三条:它们与规范根不在同一个 skills 根里、
|
|
131
|
+
交付物多是机构流程文件,以及财富管理那条线给的是配置建议。
|
|
132
|
+
- **`agent-plugins/*` 与 `mcp-servers/*` 更不是可选面**:前者是上游自己 vendored 的角色包副本
|
|
133
|
+
(上游规定不许直接编辑),后者是四份可运行的取数服务端(`server.py` + `requirements.txt` +
|
|
134
|
+
密钥配置形态)。本插件从不执行快照里的脚本(§8.6 第 4 条的口径:管的是正文,不是文件在不在盘上)。
|
|
135
|
+
- `test/selected-skills-provider.test.mjs` 用「skills 根目录 − 排除清单」派生本颗的可选清单,
|
|
136
|
+
`test/persona.test.mjs` 另把 `china-market-data` / `china-skill-creator` / `china-dcf-model` /
|
|
137
|
+
`china-idea-generation` 明确断为不进 catalog。
|
|
138
|
+
- 复核方法:`git clone` 所钉 commit 后,只对**规范根**逐颗 `diff -r`:
|
|
139
|
+
`diff -r /tmp/upstream/vertical-plugins/china-finance/skills <快照>/vertical-plugins/china-finance/skills`
|
|
140
|
+
—— 差异只应是上面那 9 份 `SKILL.md`(28 段),其余 22 颗与另五条款线、`agent-plugins/`、`mcp-servers/`、
|
|
141
|
+
`LICENSE` 逐字节相同。注意 `agent-plugins/<角色>/skills/` 里有**同名副本**,对整个仓库跑 `diff -r`
|
|
142
|
+
会把它们一起列出来(本颗没动它们,列出来也不代表漂移);`fund-admin` 那五颗同名 skill 内容更薄,
|
|
143
|
+
比对时按路径而不是按名字认。
|
|
144
|
+
- Packaging: 这颗带 `.npmignore`,挡的是非运行内容:`agent-plugins/`(角色包里的 skill 副本)、
|
|
145
|
+
`managed-agent-cookbooks/` 与 `.codebuddy/`(它给别的宿主编排用的 agent 定义与团队材料)、
|
|
146
|
+
`scripts/`(上游的生成、校验与同步 python / shell)、`.claude-plugin/` 与 `.mcp.json`
|
|
147
|
+
(每条款线的 plugin manifest 与 MCP 接线)、根级 `README.md` / `CLAUDE.md` / `IFIND-INTEGRATION-PLAN.md`。
|
|
148
|
+
另有一条合规口径,不只是体积:**`mcp-servers/` 连发布包都不进**——四份能连付费数据接口的 python 服务端
|
|
149
|
+
与本仓排除券商执行面(`trading-skills` 的 `etoro`)是同一条线,凭据只进 credentials 域(§5)。
|
|
150
|
+
不进可选清单的正文(规范根的 22 颗、另五条款线的 32 颗)**随包保留**作为可审查材料,
|
|
151
|
+
照 InvestSkill 与 trading-skills 先例:provider 的 `list()` / `get()` 与 `/capital-skills/<name>.md`
|
|
152
|
+
旁路都按 catalog 闭集过滤,运行时读不到它们。
|
|
153
|
+
规则**只写裸名**:`test/packaging.test.mjs` 丢掉以 `/` 开头的规则、也不检查带内部斜杠的规则,
|
|
154
|
+
而目录规则按**任意路径段**匹配——所以这里绝不能出现 `skills/`(一条就会把六十三份正文全挡掉,
|
|
155
|
+
而 catalog 反查只会说"包里找不到 SKILL.md")。
|
|
156
|
+
`package.json` 的 `files` 已登记 `selected-skills/claude-for-financial-services-cn`;随包的是 63 份
|
|
157
|
+
`SKILL.md`(规范根 31 + 另五条线 32)+ `LICENSE` + 本文件,净增 65 个文件,整包未压缩 3.49 → 3.98 MiB。
|
|
158
|
+
- Maintenance snapshot (checked 2026-10-11): 15 次提交里 10 次落在 2026-06-08 与 06-09 两天,
|
|
159
|
+
此后三个月无动作,直到 2026-09-14 那一次修 AkShare 服务端返回空数组的 bug(也就是本 commit)。
|
|
160
|
+
831 stars、3 open issue,无 release / tag。因此标 `watchlist`:内容成体系、维护靠一次性的集中搬运,
|
|
161
|
+
与 `china-stock-research-skills`、`trading-skills` 同一口径,不是内容缺陷。
|
|
162
|
+
See [GitHub commit history](https://github.com/jwangkun/claude-for-financial-services-cn/commits/main/)。
|
|
163
|
+
- Runtime status: `watchlist` / 默认关闭的显式实验。只有使用者在「插件」→ Capital Generation →「精选 Skills」
|
|
164
|
+
里逐格打开,它们才对**之后新建**的 Capital 根 Agent 可见;子 Agent 不继承,上游的 MCP 服务端与脚本从不执行。
|
|
165
|
+
能力标签全部复用既有词表(`a-share` 加各颗自己的 `earnings` / `valuation` / `risk` / `monitoring` /
|
|
166
|
+
`macro` / `competition` / `verification` / `business-analysis` / `filings` / `financial-health` / `cash-flow`),
|
|
167
|
+
本颗**没有新增标签**;`riskNote` 逐条写明两件事:评级、目标价与多空方向属于推演练习,
|
|
168
|
+
以及本插件取不到一致预期那一类字段。
|
|
169
|
+
- Review status: 2026-11-08 复查上游、许可证与维护状态。这九颗按中国大陆卖方与机构研究惯例写
|
|
170
|
+
(中金 / 中信 / 华泰体例、申万与中信行业分类、CAS 科目、涨跌停与北向资金口径、A 股披露节奏),
|
|
171
|
+
与美股那三十多颗互为对照而**不通用**;五档评级与目标价那一套是本插件明确不提供的东西,
|
|
172
|
+
收录它们只为让使用者看见卖方流程长什么样,**不构成投资建议**,也不得反向当作监管或会计规则。
|
|
173
|
+
本文件与本仓的收录判断不构成对上游观点、也不构成对 `anthropics/claude-for-financial-services` 观点的背书。
|