dsh-webui-stock-ticker
已验证dsh-webui-stock-ticker · v0.1.1 · MIT · Web 界面
A 股实时行情小插件 —— DeepSeek Harness Web 客户端插件。设置页「插件」分区新增「行情」标签页:现价 / 涨跌幅 / 分时迷你走势图,每 5 秒自动刷新。Realtime A-share quotes as a DSH Web settings tab (iframe-embedded zero-dependency widget).
安装
dsh plugin add dsh-webui-stock-ticker 用 dsh --profile default --dump-config 确认 layer 已生效 —— 参见安装指南。
源码
发布到 npm 但没有公开仓库。安装前请检查包内容。
标签
作者
说明文档
dsh-webui-stock-ticker
A 股实时行情小插件 —— DeepSeek Harness Web 客户端插件。
在 Web 界面 设置 → 插件 分区新增一个「行情」标签页:内嵌零依赖单文件小部件,展示 现价、涨跌额/涨跌幅、分时迷你走势图与核心指标,每 5 秒自动刷新(红涨绿跌,A 股惯例)。
- 数据源:腾讯财经(
qt.gtimg.cn,CORS 开放,浏览器直连,无需代理) - 默认股票:
sz002636(金安国纪)/sz000506(招金黄金) - 小部件本体:单文件 HTML(本仓库
../stock-ticker/index.html),构建时自动内嵌
安装(1 步)
dsh plugin --profile web add dsh-webui-stock-ticker
包声明了 dsh.bundle:dsh plugin add 会把它自动加入 profile 的 bundle 层并启用
(无需手改任何 YAML)。重启 dsh web,打开 设置 → 插件,即可看到「行情」标签页。
备选:npm / pnpm 直装后手动启用
若不用 dsh plugin,也可以 pnpm add dsh-webui-stock-ticker 后,在 profile 的
用户补丁层追加($DSH_HOME/profiles/web/cordis.patch.yml,$DSH_HOME 默认 ~/.dsh):
- insert:
- id: ui-stock-ticker
name: dsh-webui-stock-ticker
本地验证
dsh plugin --profile web add ./dsh-webui-stock-ticker # 本地目录
# 或
npm pack && dsh plugin --profile web add dsh-webui-stock-ticker-0.1.1.tgz
发布到 npm
npm login --registry=https://registry.npmjs.org/ # 需要 bypass-2FA 的细粒度令牌
npm version patch # 每次改版先升版本号(npm 不允许覆盖已发布版本)
npm publish # 构建由 prepublishOnly 自动执行
包名需全局唯一;发布令牌写在项目
.npmrc(已被.gitignore忽略,勿提交)。
收录进社区(让更多人找到)
市场 dsh-market 与官网 https://awesome-dsh-plugin.com 的
插件目录都来自精选列表 awesome-dsh-plugin/awesome-dsh-plugin。
提交方式:去该仓库提 PR,新增一个文件 data/plugins/<owner>__<repo>.yml(详见
docs/dsh-market-submission.md 与仓库的 contributing.md)。
提交前提(CI 自动检查):
- 插件 GitHub 仓库创建满 1 天、≥ 10 个提交、添加
dsh-plugintopic - npm 包
repository字段指回同一仓库(市场防冒名校验) - 包声明
dsh.bundlemanifest(本包已满足)
开发
零依赖构建(纯 Node,无需 tsdown / node_modules):
node scripts/build.mjs # 一次性构建 → lib/client.js + lib/index.js
node scripts/build.mjs --watch # 监听小部件与 src 变更自动重建
- 小部件唯一事实来源:
../stock-ticker/index.html(构建时内嵌并打一个window.__STOCK_TICKER_CODES__补丁,允许父页面注入股票代码;原文件不受影响) - 浏览器侧插件主体:
src/client.js - Host 侧入口:
src/host.js(空 apply,仅让 Loader 能加载本条目) - bundle 补丁:
cordis.patch.yml(dsh plugin add自动启用本插件)
工作原理(DSH 客户端插件契约)
- 包通过
dsh.bundle.patch(cordis.patch.yml)把自己的 Loader 条目插入 profile 配置树,dsh plugin add后自动生效; - 浏览器半侧经
exports["./client"]+dsh.client声明被宿主扫描进window.__DSH_BOOT__模块图,经window.__ModuleLoader__.load({id, factory})注册; - 插件
inject: ["slots", "locale"],apply(ctx)里用ctx.slots.inject("settings.plugins.tab", …)等dsh-client-ui-settings-plugins声明该 slot 后,再ctx.slots.register(definition, Component)把「行情」标签页挂上去; - 标签页组件用
<iframe sandbox="allow-scripts" srcdoc>内嵌小部件——小部件保持零依赖,主题/样式完全隔离。
自定义股票
默认 sz002636,sz000506。改 src/client.js 顶部的 DEFAULT_CODES 后重新构建;组件也接受 codes prop。小部件本身仍支持 URL 参数(?codes=)在浏览器里独立使用。
更多文档
- 给别人用的安装说明:docs/USAGE.md
- 社区收录提交文案:docs/dsh-market-submission.md
数据与免责声明
行情接口为第三方免费接口(腾讯财经),可能限流或变动;数据仅供个人参考,不构成投资建议。
License
MIT