dsh-skills-stock 1.3.0

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.
Files changed (412) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +198 -0
  3. package/cordis.patch.yml +15 -0
  4. package/lib/client.js +1297 -0
  5. package/lib/client.js.map +7 -0
  6. package/lib/index.js +1187 -0
  7. package/package.json +103 -0
  8. package/skills/a-stock-screener/CHANGELOG.md +19 -0
  9. package/skills/a-stock-screener/SKILL.md +96 -0
  10. package/skills/a-stock-screener/install.sh +22 -0
  11. package/skills/a-stock-screener/references/intent-parser.md +357 -0
  12. package/skills/a-stock-screener/references/output-template.md +351 -0
  13. package/skills/a-stock-screener/references/strategy-catalog.md +611 -0
  14. package/skills/a-stock-screener/references/workflow.md +499 -0
  15. package/skills/a-stock-screener/scripts/cli.py +124 -0
  16. package/skills/a-stock-screener/scripts/data_adapter.py +555 -0
  17. package/skills/a-stock-screener/scripts/intent_parser.py +258 -0
  18. package/skills/a-stock-screener/scripts/ranking.py +114 -0
  19. package/skills/a-stock-screener/scripts/strategy_registry.py +363 -0
  20. package/skills/a-stock-screener/scripts/workflow_engine.py +341 -0
  21. package/skills/a-stock-screener/uninstall.sh +12 -0
  22. package/skills/announcement-search/CHANGELOG.md +6 -0
  23. package/skills/announcement-search/README.md +252 -0
  24. package/skills/announcement-search/SKILL.md +248 -0
  25. package/skills/announcement-search/install.sh +55 -0
  26. package/skills/announcement-search/references/api.md +178 -0
  27. package/skills/announcement-search/scripts/__main__.py +264 -0
  28. package/skills/announcement-search/scripts/announcement_search.py +327 -0
  29. package/skills/announcement-search/scripts/config.example.json +39 -0
  30. package/skills/announcement-search/scripts/config.py +138 -0
  31. package/skills/announcement-search/scripts/example_usage.py +255 -0
  32. package/skills/announcement-search/scripts/package.sh +89 -0
  33. package/skills/announcement-search/scripts/requirements.txt +3 -0
  34. package/skills/announcement-search/scripts/test_queries.txt +52 -0
  35. package/skills/announcement-search/scripts/utils.py +207 -0
  36. package/skills/announcement-search/setup.py +68 -0
  37. package/skills/announcement-search/uninstall.sh +12 -0
  38. package/skills/backtrader-strategies/CHANGELOG.md +7 -0
  39. package/skills/backtrader-strategies/SKILL.md +41 -0
  40. package/skills/backtrader-strategies/__init__.py +1 -0
  41. package/skills/backtrader-strategies/install.sh +22 -0
  42. package/skills/backtrader-strategies/strategy_adapters/__init__.py +126 -0
  43. package/skills/backtrader-strategies/strategy_adapters/fund_flow_tracking_adapter.py +340 -0
  44. package/skills/backtrader-strategies/strategy_adapters/growth_stock_adapter.py +542 -0
  45. package/skills/backtrader-strategies/strategy_adapters/high_dividend_adapter.py +485 -0
  46. package/skills/backtrader-strategies/strategy_adapters/limit_up_leader_adapter_simple.py +254 -0
  47. package/skills/backtrader-strategies/strategy_adapters/momentum_breakthrough_adapter.py +437 -0
  48. package/skills/backtrader-strategies/strategy_adapters/oversold_rebound_adapter_simple.py +395 -0
  49. package/skills/backtrader-strategies/strategy_adapters/technical_breakthrough_adapter.py +524 -0
  50. package/skills/backtrader-strategies/strategy_adapters/value_investment_adapter.py +518 -0
  51. package/skills/backtrader-strategies/uninstall.sh +12 -0
  52. package/skills/business-query/CHANGELOG.md +6 -0
  53. package/skills/business-query/LICENSE.txt +21 -0
  54. package/skills/business-query/SKILL.md +370 -0
  55. package/skills/business-query/install.sh +22 -0
  56. package/skills/business-query/scripts/cli.py +346 -0
  57. package/skills/business-query/uninstall.sh +12 -0
  58. package/skills/cb-analysis/CHANGELOG.md +43 -0
  59. package/skills/cb-analysis/README.md +47 -0
  60. package/skills/cb-analysis/SKILL.md +158 -0
  61. package/skills/cb-analysis/install.sh +22 -0
  62. package/skills/cb-analysis/scripts/analysis-engine/analyze_weekly_cb.py +662 -0
  63. package/skills/cb-analysis/scripts/analyzer.py +602 -0
  64. package/skills/cb-analysis/scripts/cb_data.py +925 -0
  65. package/skills/cb-analysis/scripts/cli.py +207 -0
  66. package/skills/cb-analysis/scripts/dashboard.py +1240 -0
  67. package/skills/cb-analysis/scripts/requirements.txt +1 -0
  68. package/skills/cb-analysis/scripts/selector.py +345 -0
  69. package/skills/cb-analysis/uninstall.sh +12 -0
  70. package/skills/cb-panorama/SKILL.md +128 -0
  71. package/skills/chan-stock-theme/SKILL.md +109 -0
  72. package/skills/chart-visualization/CHANGELOG.md +6 -0
  73. package/skills/chart-visualization/SKILL.md +82 -0
  74. package/skills/chart-visualization/install.sh +40 -0
  75. package/skills/chart-visualization/references/generate_area_chart.md +27 -0
  76. package/skills/chart-visualization/references/generate_bar_chart.md +27 -0
  77. package/skills/chart-visualization/references/generate_boxplot_chart.md +25 -0
  78. package/skills/chart-visualization/references/generate_column_chart.md +27 -0
  79. package/skills/chart-visualization/references/generate_district_map.md +28 -0
  80. package/skills/chart-visualization/references/generate_dual_axes_chart.md +25 -0
  81. package/skills/chart-visualization/references/generate_fishbone_diagram.md +20 -0
  82. package/skills/chart-visualization/references/generate_flow_diagram.md +22 -0
  83. package/skills/chart-visualization/references/generate_funnel_chart.md +23 -0
  84. package/skills/chart-visualization/references/generate_histogram_chart.md +26 -0
  85. package/skills/chart-visualization/references/generate_line_chart.md +26 -0
  86. package/skills/chart-visualization/references/generate_liquid_chart.md +24 -0
  87. package/skills/chart-visualization/references/generate_mind_map.md +20 -0
  88. package/skills/chart-visualization/references/generate_network_graph.md +22 -0
  89. package/skills/chart-visualization/references/generate_organization_chart.md +21 -0
  90. package/skills/chart-visualization/references/generate_path_map.md +20 -0
  91. package/skills/chart-visualization/references/generate_pie_chart.md +24 -0
  92. package/skills/chart-visualization/references/generate_pin_map.md +23 -0
  93. package/skills/chart-visualization/references/generate_radar_chart.md +24 -0
  94. package/skills/chart-visualization/references/generate_sankey_chart.md +24 -0
  95. package/skills/chart-visualization/references/generate_scatter_chart.md +25 -0
  96. package/skills/chart-visualization/references/generate_spreadsheet.md +24 -0
  97. package/skills/chart-visualization/references/generate_treemap_chart.md +23 -0
  98. package/skills/chart-visualization/references/generate_venn_chart.md +23 -0
  99. package/skills/chart-visualization/references/generate_violin_chart.md +25 -0
  100. package/skills/chart-visualization/references/generate_word_cloud_chart.md +23 -0
  101. package/skills/chart-visualization/scripts/generate.js +275 -0
  102. package/skills/chart-visualization/scripts/package.sh +89 -0
  103. package/skills/chart-visualization/uninstall.sh +12 -0
  104. package/skills/common/CHANGELOG.md +40 -0
  105. package/skills/common/README.md +72 -0
  106. package/skills/common/SKILL.md +69 -0
  107. package/skills/common/pyproject.toml +18 -0
  108. package/skills/common/src/kk_common/__init__.py +87 -0
  109. package/skills/common/src/kk_common/finance_data_gateway.py +295 -0
  110. package/skills/common/src/kk_common/formatters.py +143 -0
  111. package/skills/common/src/kk_common/iwencai_client.py +260 -0
  112. package/skills/common/src/kk_common/market_data_cache.py +370 -0
  113. package/skills/common/src/kk_common/tushare_client.py +1079 -0
  114. package/skills/dcf/CHANGELOG.md +15 -0
  115. package/skills/dcf/SKILL.md +1274 -0
  116. package/skills/dcf/TROUBLESHOOTING.md +40 -0
  117. package/skills/dcf/install.sh +22 -0
  118. package/skills/dcf/requirements.txt +8 -0
  119. package/skills/dcf/scripts/recalc.py +97 -0
  120. package/skills/dcf/scripts/validate_dcf.py +292 -0
  121. package/skills/dcf/uninstall.sh +12 -0
  122. package/skills/earnings-forecast/CHANGELOG.md +6 -0
  123. package/skills/earnings-forecast/SKILL.md +209 -0
  124. package/skills/earnings-revision/CHANGELOG.md +6 -0
  125. package/skills/earnings-revision/SKILL.md +243 -0
  126. package/skills/etf-analysis/CHANGELOG.md +6 -0
  127. package/skills/etf-analysis/README.md +103 -0
  128. package/skills/etf-analysis/SKILL.md +43 -0
  129. package/skills/etf-analysis/install.sh +22 -0
  130. package/skills/etf-analysis/scripts/cli.py +108 -0
  131. package/skills/etf-analysis/scripts/etf_analyzer.py +571 -0
  132. package/skills/etf-analysis/scripts/etf_selector.py +345 -0
  133. package/skills/etf-analysis/scripts/requirements.txt +3 -0
  134. package/skills/etf-analysis/uninstall.sh +12 -0
  135. package/skills/event-query/CHANGELOG.md +6 -0
  136. package/skills/event-query/LICENSE.txt +21 -0
  137. package/skills/event-query/SKILL.md +41 -0
  138. package/skills/event-query/install.sh +22 -0
  139. package/skills/event-query/scripts/cli.py +346 -0
  140. package/skills/event-query/uninstall.sh +12 -0
  141. package/skills/factor-analysis-theme/SKILL.md +107 -0
  142. package/skills/factor-research/CHANGELOG.md +25 -0
  143. package/skills/factor-research/README.md +71 -0
  144. package/skills/factor-research/SKILL.md +185 -0
  145. package/skills/factor-research/install.sh +22 -0
  146. package/skills/factor-research/references/factor-methodology.md +222 -0
  147. package/skills/factor-research/references/multifactor-output-template.md +149 -0
  148. package/skills/factor-research/references/small-cap-screening-criteria.md +176 -0
  149. package/skills/factor-research/references/smallcap-output-template.md +101 -0
  150. package/skills/factor-research/scripts/analysis/__init__.py +0 -0
  151. package/skills/factor-research/scripts/analysis/builder.py +131 -0
  152. package/skills/factor-research/scripts/analysis/factor_engine.py +203 -0
  153. package/skills/factor-research/scripts/analysis/factor_timing.py +184 -0
  154. package/skills/factor-research/scripts/analysis/fundamental_filter.py +127 -0
  155. package/skills/factor-research/scripts/analysis/multifactor.py +250 -0
  156. package/skills/factor-research/scripts/analysis/small_cap_growth.py +190 -0
  157. package/skills/factor-research/scripts/cli.py +408 -0
  158. package/skills/factor-research/scripts/requirements.txt +3 -0
  159. package/skills/factor-research/scripts/tests/test_factor_research.py +387 -0
  160. package/skills/factor-research/uninstall.sh +12 -0
  161. package/skills/financial-statement/CHANGELOG.md +6 -0
  162. package/skills/financial-statement/SKILL.md +309 -0
  163. package/skills/financial-statement/install.sh +22 -0
  164. package/skills/financial-statement/scripts/financial_cli.py +235 -0
  165. package/skills/financial-statement/uninstall.sh +12 -0
  166. package/skills/futures-analysis/CHANGELOG.md +6 -0
  167. package/skills/futures-analysis/README.md +77 -0
  168. package/skills/futures-analysis/SKILL.md +41 -0
  169. package/skills/futures-analysis/install.sh +22 -0
  170. package/skills/futures-analysis/scripts/analysis-engine/analysis/__init__.py +0 -0
  171. package/skills/futures-analysis/scripts/analysis-engine/analysis/futures_analyzer.py +760 -0
  172. package/skills/futures-analysis/scripts/analysis-engine/analyze_futures.py +900 -0
  173. package/skills/futures-analysis/scripts/analysis-engine/analyze_weekly_futures.py +756 -0
  174. package/skills/futures-analysis/scripts/requirements.txt +4 -0
  175. package/skills/futures-analysis/uninstall.sh +12 -0
  176. package/skills/hithink-futures/CHANGELOG.md +6 -0
  177. package/skills/hithink-futures/README.md +75 -0
  178. package/skills/hithink-futures/SKILL.md +41 -0
  179. package/skills/hithink-futures/install.sh +22 -0
  180. package/skills/hithink-futures/scripts/cli.py +346 -0
  181. package/skills/hithink-futures/scripts/requirements.txt +1 -0
  182. package/skills/hithink-futures/uninstall.sh +12 -0
  183. package/skills/html-report/SKILL.md +72 -0
  184. package/skills/html-report/references/report-schema.md +147 -0
  185. package/skills/html-report/scripts/render_report.py +568 -0
  186. package/skills/index-futures-theme/SKILL.md +116 -0
  187. package/skills/industry-analysis/CHANGELOG.md +29 -0
  188. package/skills/industry-analysis/README.md +82 -0
  189. package/skills/industry-analysis/SKILL.md +203 -0
  190. package/skills/industry-analysis/install.sh +22 -0
  191. package/skills/industry-analysis/models/industry_models.py +83 -0
  192. package/skills/industry-analysis/references/analysis-framework.md +1003 -0
  193. package/skills/industry-analysis/references/chart-specs.md +73 -0
  194. package/skills/industry-analysis/references/data-sources.md +568 -0
  195. package/skills/industry-analysis/references/global-macro.md +156 -0
  196. package/skills/industry-analysis/references/industry-chain-framework.md +238 -0
  197. package/skills/industry-analysis/references/output-template.md +1039 -0
  198. package/skills/industry-analysis/scripts/analyze_industry.py +548 -0
  199. package/skills/industry-analysis/scripts/industry-query-cli.py +346 -0
  200. package/skills/industry-analysis/scripts/requirements.txt +3 -0
  201. package/skills/industry-analysis/uninstall.sh +12 -0
  202. package/skills/macro-query/CHANGELOG.md +6 -0
  203. package/skills/macro-query/LICENSE.txt +21 -0
  204. package/skills/macro-query/SKILL.md +381 -0
  205. package/skills/macro-query/install.sh +22 -0
  206. package/skills/macro-query/scripts/cli.py +346 -0
  207. package/skills/macro-query/uninstall.sh +12 -0
  208. package/skills/manifest.json +384 -0
  209. package/skills/market-linkage/SKILL.md +100 -0
  210. package/skills/market-linkage-engine/CHANGELOG.md +28 -0
  211. package/skills/market-linkage-engine/README.md +114 -0
  212. package/skills/market-linkage-engine/SKILL.md +95 -0
  213. package/skills/market-linkage-engine/market_linkage_engine/__init__.py +26 -0
  214. package/skills/market-linkage-engine/market_linkage_engine/__main__.py +93 -0
  215. package/skills/market-linkage-engine/market_linkage_engine/analyzers/__init__.py +20 -0
  216. package/skills/market-linkage-engine/market_linkage_engine/analyzers/base.py +46 -0
  217. package/skills/market-linkage-engine/market_linkage_engine/analyzers/broad_etf_share.py +152 -0
  218. package/skills/market-linkage-engine/market_linkage_engine/analyzers/dragon_tiger.py +118 -0
  219. package/skills/market-linkage-engine/market_linkage_engine/analyzers/futures_basis.py +176 -0
  220. package/skills/market-linkage-engine/market_linkage_engine/analyzers/main_capital.py +173 -0
  221. package/skills/market-linkage-engine/market_linkage_engine/analyzers/margin.py +130 -0
  222. package/skills/market-linkage-engine/market_linkage_engine/analyzers/northbound.py +194 -0
  223. package/skills/market-linkage-engine/market_linkage_engine/analyzers/options_vol.py +303 -0
  224. package/skills/market-linkage-engine/market_linkage_engine/analyzers/shibor.py +134 -0
  225. package/skills/market-linkage-engine/market_linkage_engine/config.py +102 -0
  226. package/skills/market-linkage-engine/market_linkage_engine/data/__init__.py +4 -0
  227. package/skills/market-linkage-engine/market_linkage_engine/data/fetcher.py +309 -0
  228. package/skills/market-linkage-engine/market_linkage_engine/engine.py +246 -0
  229. package/skills/market-linkage-engine/market_linkage_engine/utils.py +125 -0
  230. package/skills/market-linkage-engine/pyproject.toml +30 -0
  231. package/skills/news-search/CHANGELOG.md +6 -0
  232. package/skills/news-search/README.md +290 -0
  233. package/skills/news-search/SKILL.md +379 -0
  234. package/skills/news-search/install.sh +22 -0
  235. package/skills/news-search/references/api.md +112 -0
  236. package/skills/news-search/scripts/__main__.py +16 -0
  237. package/skills/news-search/scripts/config.example.json +25 -0
  238. package/skills/news-search/scripts/config.py +271 -0
  239. package/skills/news-search/scripts/example_usage.py +272 -0
  240. package/skills/news-search/scripts/news_search.py +797 -0
  241. package/skills/news-search/scripts/requirements.txt +2 -0
  242. package/skills/news-search/scripts/setup.py +41 -0
  243. package/skills/news-search/scripts/test_basic.py +223 -0
  244. package/skills/news-search/scripts/test_queries.txt +549 -0
  245. package/skills/news-search/uninstall.sh +12 -0
  246. package/skills/option-etf-theme/SKILL.md +117 -0
  247. package/skills/option-futures-linkage/CHANGELOG.md +30 -0
  248. package/skills/option-futures-linkage/SKILL.md +100 -0
  249. package/skills/option-futures-linkage/install.sh +22 -0
  250. package/skills/option-futures-linkage/scripts/analysis-engine/analysis/__init__.py +0 -0
  251. package/skills/option-futures-linkage/scripts/analysis-engine/analysis/option_futures_analyzer.py +941 -0
  252. package/skills/option-futures-linkage/scripts/analysis-engine/analyze_option_futures.py +439 -0
  253. package/skills/option-futures-linkage/scripts/analysis-engine/analyze_weekly_option_futures.py +438 -0
  254. package/skills/option-futures-linkage/scripts/requirements.txt +5 -0
  255. package/skills/option-futures-linkage/uninstall.sh +12 -0
  256. package/skills/option-futures-linkage-theme/SKILL.md +125 -0
  257. package/skills/options-payoff/CHANGELOG.md +6 -0
  258. package/skills/options-payoff/README.md +89 -0
  259. package/skills/options-payoff/SKILL.md +213 -0
  260. package/skills/options-payoff/install.sh +22 -0
  261. package/skills/options-payoff/scripts/analysis-engine/__init__.py +1 -0
  262. package/skills/options-payoff/scripts/analysis-engine/analyze_option_payoff.py +298 -0
  263. package/skills/options-payoff/scripts/analysis-engine/bs_model.py +237 -0
  264. package/skills/options-payoff/scripts/analysis-engine/payoff_engine.py +441 -0
  265. package/skills/options-payoff/scripts/requirements.txt +2 -0
  266. package/skills/options-payoff/uninstall.sh +12 -0
  267. package/skills/options-volatility/CHANGELOG.md +6 -0
  268. package/skills/options-volatility/README.md +83 -0
  269. package/skills/options-volatility/SKILL.md +125 -0
  270. package/skills/options-volatility/install.sh +22 -0
  271. package/skills/options-volatility/scripts/analysis-engine/__init__.py +1 -0
  272. package/skills/options-volatility/scripts/analysis-engine/analyze_option_volatility.py +280 -0
  273. package/skills/options-volatility/scripts/analysis-engine/realized_vol.py +302 -0
  274. package/skills/options-volatility/scripts/analysis-engine/vol_engine.py +234 -0
  275. package/skills/options-volatility/scripts/requirements.txt +3 -0
  276. package/skills/options-volatility/uninstall.sh +12 -0
  277. package/skills/report-search/CHANGELOG.md +6 -0
  278. package/skills/report-search/README.md +306 -0
  279. package/skills/report-search/SKILL.md +366 -0
  280. package/skills/report-search/install.sh +22 -0
  281. package/skills/report-search/references/api.md +236 -0
  282. package/skills/report-search/scripts/__main__.py +16 -0
  283. package/skills/report-search/scripts/api_client.py +262 -0
  284. package/skills/report-search/scripts/cli.py +636 -0
  285. package/skills/report-search/scripts/config.example.json +27 -0
  286. package/skills/report-search/scripts/config.py +207 -0
  287. package/skills/report-search/scripts/data_processor.py +601 -0
  288. package/skills/report-search/scripts/example_usage.py +343 -0
  289. package/skills/report-search/scripts/requirements.txt +3 -0
  290. package/skills/report-search/scripts/research_report_search.py +16 -0
  291. package/skills/report-search/scripts/setup.py +138 -0
  292. package/skills/report-search/scripts/test_basic.py +434 -0
  293. package/skills/report-search/scripts/test_queries.txt +43 -0
  294. package/skills/report-search/uninstall.sh +12 -0
  295. package/skills/selection-strategies/CHANGELOG.md +18 -0
  296. package/skills/selection-strategies/SKILL.md +41 -0
  297. package/skills/selection-strategies/install.sh +26 -0
  298. package/skills/selection-strategies/requirements.txt +5 -0
  299. package/skills/selection-strategies/run_chan_stock_selector.py +87 -0
  300. package/skills/selection-strategies/run_fund_flow_tracking.py +148 -0
  301. package/skills/selection-strategies/run_growth_stock.py +138 -0
  302. package/skills/selection-strategies/run_high_dividend.py +137 -0
  303. package/skills/selection-strategies/run_limit_up_leader.py +150 -0
  304. package/skills/selection-strategies/run_momentum_breakthrough.py +140 -0
  305. package/skills/selection-strategies/run_multi_factor.py +626 -0
  306. package/skills/selection-strategies/run_oversold_rebound.py +152 -0
  307. package/skills/selection-strategies/run_technical_breakthrough.py +140 -0
  308. package/skills/selection-strategies/run_value_investment.py +142 -0
  309. package/skills/selection-strategies/uninstall.sh +8 -0
  310. package/skills/stock-analysis/CHANGELOG.md +20 -0
  311. package/skills/stock-analysis/README.md +202 -0
  312. package/skills/stock-analysis/SKILL.md +308 -0
  313. package/skills/stock-analysis/chan_theory_v2/__init__.py +32 -0
  314. package/skills/stock-analysis/chan_theory_v2/config/__init__.py +9 -0
  315. package/skills/stock-analysis/chan_theory_v2/config/chan_config.py +283 -0
  316. package/skills/stock-analysis/chan_theory_v2/core/__init__.py +37 -0
  317. package/skills/stock-analysis/chan_theory_v2/core/chan_engine.py +714 -0
  318. package/skills/stock-analysis/chan_theory_v2/core/chan_enhanced.py +950 -0
  319. package/skills/stock-analysis/chan_theory_v2/core/gap_processor.py +382 -0
  320. package/skills/stock-analysis/chan_theory_v2/core/kline_processor.py +1193 -0
  321. package/skills/stock-analysis/chan_theory_v2/core/multi_level_consistency.py +388 -0
  322. package/skills/stock-analysis/chan_theory_v2/core/signal_scorer.py +823 -0
  323. package/skills/stock-analysis/chan_theory_v2/core/trading_calendar.py +240 -0
  324. package/skills/stock-analysis/chan_theory_v2/models/__init__.py +24 -0
  325. package/skills/stock-analysis/chan_theory_v2/models/bi.py +1164 -0
  326. package/skills/stock-analysis/chan_theory_v2/models/chan_buy_sell_points.py +380 -0
  327. package/skills/stock-analysis/chan_theory_v2/models/dynamics.py +683 -0
  328. package/skills/stock-analysis/chan_theory_v2/models/enums.py +306 -0
  329. package/skills/stock-analysis/chan_theory_v2/models/fenxing.py +444 -0
  330. package/skills/stock-analysis/chan_theory_v2/models/kline.py +430 -0
  331. package/skills/stock-analysis/chan_theory_v2/models/seg.py +1221 -0
  332. package/skills/stock-analysis/chan_theory_v2/models/simple_backchi.py +280 -0
  333. package/skills/stock-analysis/chan_theory_v2/models/trend_type.py +360 -0
  334. package/skills/stock-analysis/chan_theory_v2/models/zhongshu.py +1071 -0
  335. package/skills/stock-analysis/chan_theory_v2/signals/__init__.py +204 -0
  336. package/skills/stock-analysis/chan_theory_v2/signals/bar.py +751 -0
  337. package/skills/stock-analysis/chan_theory_v2/signals/cxt.py +1525 -0
  338. package/skills/stock-analysis/chan_theory_v2/signals/jcc.py +646 -0
  339. package/skills/stock-analysis/chan_theory_v2/signals/pos.py +802 -0
  340. package/skills/stock-analysis/chan_theory_v2/signals/sta.py +609 -0
  341. package/skills/stock-analysis/chan_theory_v2/signals/tas.py +1671 -0
  342. package/skills/stock-analysis/chan_theory_v2/signals/vol.py +671 -0
  343. package/skills/stock-analysis/chan_theory_v2/strategies/backchi_stock_selector.py +787 -0
  344. package/skills/stock-analysis/chan_theory_v2/strategies/signal_strategies.py +469 -0
  345. package/skills/stock-analysis/install.sh +22 -0
  346. package/skills/stock-analysis/references/business-query.md +336 -0
  347. package/skills/stock-analysis/references/chart-specs.md +73 -0
  348. package/skills/stock-analysis/references/management-query.md +342 -0
  349. package/skills/stock-analysis/references/news-search.md +328 -0
  350. package/skills/stock-analysis/requirements.txt +9 -0
  351. package/skills/stock-analysis/scripts/analysis-engine/__init__.py +0 -0
  352. package/skills/stock-analysis/scripts/analysis-engine/analyze_elliott_wave.py +415 -0
  353. package/skills/stock-analysis/scripts/analysis-engine/analyze_financial_deep.py +1155 -0
  354. package/skills/stock-analysis/scripts/analysis-engine/analyze_financial_report.py +982 -0
  355. package/skills/stock-analysis/scripts/analysis-engine/analyze_harmonic_pattern.py +343 -0
  356. package/skills/stock-analysis/scripts/analysis-engine/analyze_social_media.py +867 -0
  357. package/skills/stock-analysis/scripts/analysis-engine/analyze_stock_chan.py +83 -0
  358. package/skills/stock-analysis/scripts/analysis-engine/analyze_stock_chips.py +368 -0
  359. package/skills/stock-analysis/scripts/analysis-engine/analyze_stock_company_info.py +185 -0
  360. package/skills/stock-analysis/scripts/analysis-engine/analyze_stock_earnings_forecast.py +331 -0
  361. package/skills/stock-analysis/scripts/analysis-engine/analyze_stock_institute_research.py +242 -0
  362. package/skills/stock-analysis/scripts/analysis-engine/analyze_stock_margin.py +431 -0
  363. package/skills/stock-analysis/scripts/analysis-engine/analyze_stock_news.py +253 -0
  364. package/skills/stock-analysis/scripts/analysis-engine/analyze_stock_shareholder.py +703 -0
  365. package/skills/stock-analysis/scripts/analysis-engine/analyze_stock_valuation.py +686 -0
  366. package/skills/stock-analysis/scripts/analysis-engine/analyze_technical.py +773 -0
  367. package/skills/stock-analysis/scripts/analysis-engine/analyze_valuation_models.py +1068 -0
  368. package/skills/stock-analysis/scripts/analysis-engine/financial_analyzer.py +558 -0
  369. package/skills/stock-analysis/scripts/analysis-engine/technical_analyzer.py +1235 -0
  370. package/skills/stock-analysis/scripts/analyze_stock_chan.py +1689 -0
  371. package/skills/stock-analysis/scripts/business-query-cli.py +346 -0
  372. package/skills/stock-analysis/scripts/management-query-cli.py +346 -0
  373. package/skills/stock-analysis/scripts/market-query-cli.py +346 -0
  374. package/skills/stock-analysis/scripts/run_chan_stock_selector.py +742 -0
  375. package/skills/stock-analysis/uninstall.sh +12 -0
  376. package/skills/stock-due-diligence/SKILL.md +86 -0
  377. package/skills/stock-screening-theme/SKILL.md +95 -0
  378. package/skills/strategy-backtest-theme/SKILL.md +111 -0
  379. package/skills/strategy-research/CHANGELOG.md +6 -0
  380. package/skills/strategy-research/README.md +57 -0
  381. package/skills/strategy-research/SKILL.md +41 -0
  382. package/skills/strategy-research/install.sh +22 -0
  383. package/skills/strategy-research/references/strategy-examples.md +49 -0
  384. package/skills/strategy-research/scripts/analysis/__init__.py +0 -0
  385. package/skills/strategy-research/scripts/analysis/backtest_engine.py +408 -0
  386. package/skills/strategy-research/scripts/analysis/param_sweep.py +165 -0
  387. package/skills/strategy-research/scripts/analysis/strategy_templates.py +99 -0
  388. package/skills/strategy-research/scripts/analysis/walk_forward.py +186 -0
  389. package/skills/strategy-research/scripts/cli.py +192 -0
  390. package/skills/strategy-research/scripts/requirements.txt +2 -0
  391. package/skills/strategy-research/scripts/templates/signal_engine_template.py +44 -0
  392. package/skills/strategy-research/uninstall.sh +12 -0
  393. package/skills/tushare-data/CHANGELOG.md +6 -0
  394. package/skills/tushare-data/SKILL.md +41 -0
  395. package/skills/tushare-data/SOURCE.md +12 -0
  396. package/skills/tushare-data/UPSTREAM_SKILL.md +823 -0
  397. package/skills/tushare-data/install.sh +22 -0
  398. package/skills/tushare-data/references//346/225/260/346/215/256/346/216/245/345/217/243.md +248 -0
  399. package/skills/tushare-data/scripts/fund_data_demo.py +82 -0
  400. package/skills/tushare-data/scripts/stock_data_demo.py +83 -0
  401. package/skills/tushare-data/uninstall.sh +12 -0
  402. package/skills/valuation-model/CHANGELOG.md +6 -0
  403. package/skills/valuation-model/SKILL.md +307 -0
  404. package/skills/valuation-model/install.sh +22 -0
  405. package/skills/valuation-model/scripts/pe_band_cli.py +186 -0
  406. package/skills/valuation-model/uninstall.sh +12 -0
  407. package/skills/zhishu-query/CHANGELOG.md +6 -0
  408. package/skills/zhishu-query/LICENSE.txt +21 -0
  409. package/skills/zhishu-query/SKILL.md +41 -0
  410. package/skills/zhishu-query/install.sh +22 -0
  411. package/skills/zhishu-query/scripts/cli.py +346 -0
  412. package/skills/zhishu-query/uninstall.sh +12 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Unclecheng
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,198 @@
1
+ # dsh-skills-stock
2
+
3
+ DSH 原生 **A 股量化投研技能包**:把本地桌面产品 [KStock](../KStock)(2.0+)
4
+ 的核心产品能力适配为 dsh(deepseek-harness)插件 —— 41 个 runtime skill
5
+ (个股研究 / 选股与策略 / 场景编排 / 品种专项 / 市场全景 / 数据查询 / 图表
6
+ 呈现)、**策略库 / 因子库 / 选股库 / 报告库**四库工作区(18 个 agent 工具 +
7
+ 侧边栏工作台 UI)、设置页**数据源**凭据配置。
8
+
9
+ 形态对齐家族插件(dsh-super-ppts / dsh-kylin-automation):**不用**插件自造
10
+ Agent 预设(DSH 0.1.16 起 agent-presets 按 agent.cordis.yml 组合挂载,插件
11
+ 自造预设已失效),人设路由经 systemPrompt 能力通告承载;激活时幂等清理
12
+ 历史版本写入的预设目录。
13
+
14
+ ## 插件清单
15
+
16
+ | 类别 | 技能 |
17
+ |---|---|
18
+ | 个股研究(6) | stock-analysis(十四维分析引擎 + 缠论 v2 动力学)、financial-statement(三表勾稽/造假红旗/杜邦)、earnings-forecast(盈利预测/SUE)、earnings-revision(盈利修正)、valuation-model(PE-Band/PB-ROE/估值陷阱)、dcf(DCF 建模 + Excel) |
19
+ | 选股与策略(5) | a-stock-screener(自然语言选股编排)、selection-strategies(十大策略)、factor-research(IC/IR/分层回测/六因子)、strategy-research(策略设计/参数扫描/walk-forward)、backtrader-strategies(8 策略适配器库) |
20
+ | 场景编排(10,KStock 2.0 新增) | stock-due-diligence(个股尽调全景)、stock-screening-theme(选股流水线)、strategy-backtest-theme(策略回测)、factor-analysis-theme(因子研究流程)、chan-stock-theme(缠论个股与选股)、cb-panorama(可转债全景)、market-linkage(市场联动看板)、index-futures-theme(期指专题)、option-etf-theme(期权 ETF)、option-futures-linkage-theme(期指期权联动交叉验证)——多引擎并行 + html-report 看板 + 四库归档 |
21
+ | 品种专项(6) | cb-analysis(可转债全链路)、etf-analysis(13 维)、futures-analysis(股指期货四维)、option-futures-linkage(期指期权联动)、options-payoff(BS 定价/Greeks/多腿盈亏)、options-volatility(波动率曲面) |
22
+ | 市场全景(2) | market-linkage-engine(8 维市场联动)、industry-analysis(行业六维画像/产业链) |
23
+ | 数据查询(9) | tushare-data(Tushare 官方适配层)+ 问财八件套:zhishu-query / announcement-search / news-search / report-search / business-query / macro-query / event-query / hithink-futures |
24
+ | 呈现与基建(3) | html-report(报告 JSON → 纯标准库渲染器 → 单文件自包含 HTML 看板 + report_archive 归档)、chart-visualization(26 种 ECharts 图表,Node.js)、common(kk_common 公共数据网关库,被其他技能自动引用) |
25
+
26
+ ## 安装
27
+
28
+ ```sh
29
+ # npm registry(推荐:版本可被插件管理检测,用户手动更新)
30
+ dsh plugin --profile web add dsh-skills-stock
31
+
32
+ # GitHub 直装 / install straight from GitHub
33
+ dsh plugin --profile web add github:kkutysllb/dsh-skills-stock
34
+
35
+ # 本地路径安装 / install from a local checkout
36
+ git clone git@github.com:kkutysllb/dsh-skills-stock.git
37
+ dsh plugin --profile web add ./dsh-skills-stock
38
+ ```
39
+
40
+ 安装后重启 dsh 生效:
41
+
42
+ - 41 个技能注册为 runtime skill(rank 250,项目级 `.dsh/skills` 同名技能可
43
+ 覆盖),所有 agent 会话可见,`/技能名` 可显式激活;
44
+ - 18 个四库工具(`strategy_*` / `factor_*` / `selection_*` 各 5 件套 +
45
+ `report_archive` / `report_list` / `report_get`)注册为 agent 原生工具,
46
+ 宿主全局可用(`registerTools: false` 可关闭);
47
+ - workspace 侧边栏出现「**投研工作台**」独立面板(四库 tab);
48
+ - 设置页出现「**数据源**」菜单项(凭据配置);
49
+ - systemPrompt 注入一段有界能力通告(需求路由 + 四库纪律 + 跨技能约定,
50
+ `announceToAgent: false` 可关闭)。
51
+
52
+ ## QiLin(麒麟)双通道适配(v1.2.2 起)
53
+
54
+ manifest 同时声明 `qilin` 与 `dsh` 两个通道的 `bundle.patch` / `client`:
55
+ QiLin(dsh 0.1.6-alpha.2 合并后)的插件管理器只认原生键
56
+ `qilin.bundle.patch`(缺失会报「没有声明组合包」),DSH 宿主仍读
57
+ `dsh.*`;两通道指向同一份 `cordis.patch.yml` 与 client 交付物,
58
+ 行为完全一致。
59
+
60
+ ## 麒麟(QiLin)引擎安装
61
+
62
+ ```bash
63
+ # npm registry(推荐:版本可被插件管理检测,用户手动更新)
64
+ qilin plugin --profile qilin add dsh-skills-stock
65
+
66
+ # GitHub 直装 / install straight from GitHub
67
+ qilin plugin --profile qilin add github:kkutysllb/dsh-skills-stock
68
+ ```
69
+
70
+ 装完在 QiLin 设置 → 插件里可见、可启停;数据目录(库/凭据/缓存,stock/library/secrets)
71
+ 数据根按 `$QILIN_HOME → $DSH_HOME → ~/.dsh` 解析,与 QiLin/KStock
72
+ 语义映射表(本仓已有)一致。
73
+
74
+ ### 注意事项(QiLin)
75
+
76
+ - **必须经 `qilin plugin add` 装进 profile**:包会落到 profile 私有的
77
+ `~/.qilin/profiles/<name>/node_modules`——裸包名原生解析的第一跳。
78
+ **不要**手工把包目录放进共享的 `~/.qilin/profiles/node_modules`:
79
+ dsh alpha.2 合并后的 runtime+enforce 解析把该目录划为安装保留区,
80
+ 放那里的 bundle 层包激活时直接 `failed to import`。
81
+ - **引擎版本**:运行需要带 dsh 兼容层的 QiLin 3.0.0+;插件**管理**
82
+ (设置页展示/启停)要求 3.0.2+(alpha.2 合并后只认
83
+ `qilin.bundle.patch` 原生键)。
84
+ - **运行时解析**:dsh alpha.2 起依赖解析默认运行时模式(PR #4471),
85
+ 插件运行期导入由 profile 安装图经进程内 generation 解析;引擎包按
86
+ 框架契约声明于 peerDependencies,由宿主安装副本统一解析。
87
+
88
+ ## 投研工作台(侧边栏面板)
89
+
90
+ 工作台是 dsh agent 能力的作业界面,沿用 KStock 产品闭环——**库内容由 agent
91
+ 入库,面板只读 + 驱动**:
92
+
93
+ - **四个 tab:策略库 / 因子库 / 选股库 / 报告库**(报告库为 KStock 2.0
94
+ quant-reports 同构:无版本链、同 report_id 覆盖更新、内嵌 HTML 看板预览 +
95
+ 新窗口打开;单份上限 8MB)。三库列表显示名称、状态徽章、当前版本
96
+ 与最近运行核心指标(收益/夏普、IC/IR、命中数);详情含身份卡(投资假设 /
97
+ 选股口径)、**版本时间线**(逐版本 change_note + 最新标记)、**运行归档表**
98
+ (勾选 2-4 个做指标并排对比 + 曲线叠加:策略库叠加**净值曲线**——各运行
99
+ 归一到同起点 1,因子库叠加**累计 IC 曲线**——逐期累加,KStock 桌面端
100
+ EquityOverlay/IcOverlay 同款几何与配色;曲线负载不随详情常驻传输,勾选后
101
+ 经 `library_runs` 端点按需拉取)。
102
+ - **新建研究任务 / 重跑本版本**:把预填好的任务 prompt 经会话桥
103
+ (setDraft → submit,super-ppts v3 同款,剪贴板降级)投递到 dsh 会话,
104
+ agent 读技能 → 跑回测/检验/选股 → 用工具登记入库 → 用户在面板看结果,
105
+ 再一键重跑迭代。
106
+ - 存储在数据根 `<宿主 home>/dsh-skills-stock/product/{strategies,factors,selections,reports}/`
107
+ (object.json 身份 + versions/ 版本链 + runs/ 运行归档;报告库为 report.json
108
+ meta + content.html,同 id 覆盖。纯 JSON/HTML、agent 的文件工具可直接读取),
109
+ 容量上限与乐观锁纪律同 KStock。
110
+ - **数据根跟随宿主 home**:`$QILIN_HOME → $DSH_HOME → ~/.dsh`(super-ppts
111
+ 同款解析,不写死用户 home 字面量;KCoder 桌面端 `DSH_HOME=~/.kcoder` 时
112
+ 数据即在 `~/.kcoder/dsh-skills-stock/`)。v1.0–1.1 的 `~/.dsh-stock` 旧数据
113
+ 在插件加载时自动迁移(整项搬移、绝不覆盖目标既有文件)。
114
+
115
+ ## 四库 agent 工具(18 个,注册名与 KStock 对齐)
116
+
117
+ | 库 | 工具 |
118
+ |---|---|
119
+ | 策略库 | strategy_list / strategy_create / strategy_get_latest / strategy_save_version / strategy_record_backtest |
120
+ | 因子库 | factor_list / factor_create / factor_get_latest / factor_save_version / factor_record_run |
121
+ | 选股库 | selection_list / selection_create / selection_get_latest / selection_save_version / selection_record_run |
122
+ | 报告库(2.0 新增) | report_archive(HTML 看板归档,同 report_id 覆盖更新,≤8MB)/ report_list / report_get(全文按需拉取) |
123
+
124
+ 版本纪律(沿袭 KStock lead_soul):代码/口径必须经 `*_save_version` 入库
125
+ (禁止只留在会话工作区),运行后必须 `*_record_*` 归档(rules/config 原样
126
+ 抄录,跨版本对比口径才成立;rules 可带 `report_id` 与报告库建看板链);
127
+ 新版本劣于旧版本如实呈现并在 change_note 写「证伪」。选股库
128
+ `criteria_json.summary` 必填,create 自动落 v1。报告库无版本链——研究交付
129
+ 即归档,同 id 幂等覆盖。
130
+
131
+ ## 设置页「数据源」
132
+
133
+ `TUSHARE_TOKEN` / `IWENCAI_API_KEY` 的配置状态徽章 + 受控保存表单。密钥只
134
+ 写入本机数据根 `<宿主 home>/dsh-skills-stock/secrets.env`(权限 0600,原子覆写、合并语义、不回显
135
+ 不上传),走 `/dsh-skills-stock` RPC 通道(与 `/api` 同一套 Host/Origin +
136
+ 浏览器认证围栏,POST-only JSON)。
137
+
138
+ dsh 宿主会把名字含 TOKEN/KEY/SECRET/PASSWORD 的进程环境变量从 bash 子进程
139
+ 剥离,因此技能脚本统一走凭据文件约定:Agent 运行脚本前在同一条 bash 命令里
140
+ `set -a; source <数据根>/secrets.env; set +a` 再执行(各技能 SKILL.md 的
141
+ 「凭据配置」节已写明)。无密钥也能用的技能:options-payoff / options-volatility
142
+ / chart-visualization 及全部纯方法论章节;akshare 兜底无需密钥。Python 依赖
143
+ (pandas / numpy / scipy / tushare / akshare 等)按脚本报错提示 `pip install`;
144
+ `common` 公共库由技能脚本自动 `pip install -e` 安装。
145
+
146
+ ## 能力通告(原「股票分析专家」预设的替代)
147
+
148
+ systemPrompt 通告按**需求形态**路由到技能线,并固化:数据纪律(Tushare >
149
+ 问财 > 免费源兜底,缺失如实标注禁止编造)、交付形态(研究报告 = 单文件离线
150
+ HTML 落当前工作目录)、四库入库纪律与合规边界(仅供研究参考,不构成投资建议)。
151
+
152
+ ## 与 KStock 的适配关系
153
+
154
+ 真源:KStock 仓 `vendor/skills/public/`(上游 KSkills 精选子集 + 本地补丁,
155
+ QiLin 沙箱语义)与四库产品模型(strategies/factors/selections/reports)。本仓由
156
+ `scripts/adapt-kstock-skills.mjs` 单向适配物化技能层,四库为同构重建
157
+ (SQLite → JSON 文件):
158
+
159
+ | QiLin/KStock 语义 | dsh 适配 |
160
+ |---|---|
161
+ | 技能挂载于 `/mnt/skills/public/<name>` 沙箱路径 | 相对路径以 resourceBase(技能包根)解析;cd 命令用 `<本技能包根>` 占位符 |
162
+ | 密钥由 required-secrets 声明、沙箱激活时注入环境 | `<数据根>/secrets.env` 凭据文件 + 运行前 source(dsh 剥离敏感进程环境变量) |
163
+ | `render_html_report` 内置看板工具(1.x)/ html-report 技能自带渲染器(2.0) | html-report 渲染器为纯标准库 Python,直用;curl 归档步骤改写为 `report_archive` 工具 |
164
+ | 场景手册 curl POST `127.0.0.1:18001/kstock-api/*` 三步入库 | 同名 agent 工具调用(`*_create` / `*_save_version` / `*_record_*`) |
165
+ | 报告库 SQLite(report_library 表)+ reports/{Y}/{M}/{D} 落盘 | `<数据根>/product/reports/<id>/`(report.json meta + content.html),同构语义(白名单/覆盖/sha256/8MB 上限) |
166
+ | 三库 SQLite 索引(kstock.db)+ /mnt 挂载 | `<数据根>/product/` 纯 JSON 文件(agent fs 工具可直接读),语义同构(乐观锁/版本链/运行归档/容量上限) |
167
+ | 桌面端策略库/因子库/选股库/报告库视图 | 侧边栏投研工作台四 tab(列表/版本时间线/运行对比/报告看板/会话桥重跑) |
168
+ | `*_store` LangChain 工具(引擎侧) | 同名 agent 工具(dsh 原生 tool 定义,全局注册) |
169
+ | 沙箱路径规范技能 sandbox-path-guide | 不适配(dsh 无此语义),引用处改写为内联产物分区纪律 |
170
+ | market-scan-workflow(QiLin `workflow` 编排工具) | 不适配(dsh 无此编排原语),待 dsh 提供后再评估 |
171
+
172
+ 脚本级修补仅 5 处硬编码路径(两个 `*_cli.py` 的 common 候选路径改为按脚本
173
+ 位置解析、strategy-research 两个 analysis 模块的 docstring 示例、common 的
174
+ 行情缓存持久候选改为 `<数据根>/cache/market-data`);适配规则与技能清单
175
+ (SPEC)都集中在 adapt 脚本内,KStock 上游更新后重跑即可再生成。
176
+
177
+ ## 开发
178
+
179
+ ```sh
180
+ pnpm install
181
+ npm run adapt # 从 KStock 重新适配技能(KSTOCK_REPO 可指定仓路径)
182
+ npm run check # tsc 类型检查 + esbuild 构建(lib/ 随仓提交)
183
+ npm run smoke # 冒烟:清单 / 适配纯度 / host apply / RPC / 四库 / 工具 / 通告 / client
184
+ npm run sync:mirror # 镜像到 dsh-plugins 仓(--check 对账)
185
+ ```
186
+
187
+ 发版约定(同家族插件):本仓为开发真源,改动推送前先 `sync:mirror` 同步到
188
+ dsh-plugins 仓并提交,保证两个安装入口一致。
189
+
190
+ ## 免责声明
191
+
192
+ 本插件全部技能输出仅供研究与教育参考,不构成任何投资建议;数据来源为第三方
193
+ 接口(Tushare / 同花顺问财 / akshare),准确性与时效性不作保证;投资决策及
194
+ 其风险由使用者自行承担。
195
+
196
+ ## License
197
+
198
+ MIT
@@ -0,0 +1,15 @@
1
+ # dsh-skills-stock bundle 层(KStock A 股量化投研技能包)。
2
+ #
3
+ # 声明于 package.json 的 dsh.bundle.patch,由 dsh plugin add 注册进
4
+ # profile 的 dsh.profile.bundles(或 KCoder 桌面端物化到 web profile),
5
+ # 启动时按层序合成。本层只挂一个 Host 服务行:激活时清理历史版本写入的
6
+ # 插件预设目录(DSH 0.1.16 起 agent-presets 按 agent.cordis.yml 组合挂载,
7
+ # 插件自造预设已失效),把 skills/manifest.json 清单里的 41 个技能注册为
8
+ # runtime skill(rank 250,项目级 .dsh/skills 同名技能可覆盖),向
9
+ # systemPrompt 通告技能路由与跨技能约定,并注册 /dsh-skills-stock RPC
10
+ # 通道供 Web 侧边栏「投研工作台」(数据源凭据配置 + 四库工作区)使用。
11
+ # 后续层(profile 自身 cordis.patch.yml、--patch 覆盖)可按行 id 覆写或禁用本行。
12
+
13
+ - insert:
14
+ - id: dsh-skills-stock
15
+ name: 'dsh-skills-stock'