DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Stock Leek — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
S

@shiqyka/dsh-stock-leek

Stock Leek

DSH stock plugin: market index bar in the lower-left corner of the conversation + quote floating window (market/self-selected/holdings), supporting intraday charts, candlestick charts, and P&L for A-shares, the Beijing Stock Exchange, Hong Kong stocks, and US stocks

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:siqyka/dsh-stock-leek#5339d6cdb9c7472cc247dca3fab95eda057d5041
READMECompatibilityVersions

Compatibility and provenance

Stock Leek is published as @shiqyka/dsh-stock-leek and currently resolves to version 0.7.1. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
10/17/2026

Versions

0.7.1stable
10/17/2026

Related plugins

Loading related plugins…

Latest
0.7.1
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
10/17/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in ui-customization.

Whale Widgetdsh-whale-widgetDeepSeek balance whale widget in the bottom-right corner of the DSH Web interface: balance/today’s usage/peak-off-peak pricing, customizable bubble click sequence (text/balance/today/peak-off-peak/image/random phrases and parallel weighted selection), per-line styles and fonts, floating quick editinClient Ui Skill Explorer@linxin666/dsh-client-ui-skill-explorerDSH skill center: browse loaded skills by source (bundled / project / user / custom / runtime), enable or disable, create and delete, in a web GUI panel.Remote Web Ui@linxin666/dsh-remote-web-uiScan-to-pair remote access for the dsh web GUI that shares one official interface: a QR beside the settings button pairs phones and PCs into the same Web GUI (a portrait-touch adaptation layer for phones, full desktop on PCs) through one-time tokens and rClient Ui Task Board@linxin666/dsh-client-ui-task-boardHost-authoritative task board for the DSH Web GUI with real session execution, Host cron scheduling, and optional cross-platform idle-sleep protection; mounted without DSH source changes.

README

dsh-stock-leek header

dsh-stock-leek

npm 包名 @shiqyka/dsh-stock-leek · 把大盘指数、自选股与持仓盈亏,直接嵌进 DSH 对话界面。

对话左下角常驻指数栏 + 可拖动行情悬浮窗:实时行情 · 分时 / K 线 · 持仓盈亏, 不用离开 DSH,也不用再开一个行情软件。


DeepSeek Harness Web 端的股票行情插件:

  • 对话左下角常驻大盘指数栏(上证 / 深证 / 创业板 / 恒生 / 纳斯达克…,自选要显示哪几个)
  • 可拖动行情悬浮窗:大盘 · 自选 · 持仓 · 设置 四页 + 个股分时 / K 线详情
  • 自选股:搜索(代码 / 名称 / 拼音首字母)添加,A 股 · 北交所 · 港股 · 美股 · ETF · 指数全覆盖
  • 持仓股:填成本价 + 股数,并可逐笔记录买卖变动(买入 / 卖出,支持当日多次),实时算市值 / 累计盈亏 / 今日盈亏(按当日变动现金流计算) / 总盈亏汇总

数据源为腾讯财经公开行情接口(qt.gtimg.cn / web.ifzq.gtimg.cn / smartbox),红涨绿跌。

安装

# 本地目录(把 <path> 换成你自己 clone 的位置)
dsh plugin --profile desktop add file:<path>/dsh-stock-leek
# 或发布后按包名(npm scoped 包,DSH 插件管理器自动识别)
dsh plugin add @shiqyka/dsh-stock-leek

安装后刷新页面生效。对话输入框下方出现指数栏,点任意指数胶囊打开悬浮窗,点 ⚙ 直达设置。

功能

位置能力
对话左下角大盘指数胶囊:简称 + 点位 + 涨跌幅,价格变动红/绿闪烁;盘中状态点;点胶囊开悬浮窗、⚙ 直达设置。有持仓时显示 💰收益 胶囊(今日盈亏),鼠标悬停弹出浮层:市值 / 累计收益(额+率)/ 今日收益(额+当日涨幅%)+ 每只持仓的今日盈亏与当日涨幅(累计、成本、市值等明细在行悬浮提示)。非交易时段自动收起——收盘后指数和收益都只是昨天的数字,只留「状态点 + ⚙ 设置」(点状态点可进大盘页);每天 9:00–15:06 自动展开,其余时间只留「状态点 + ⚙ 设置」;点 ● 可手动收起/展开(展开→收起、收起→展开),手动选择持续到下一个交易日自动失效;午休不收起(按整个交易日跨度判断,不会 11:30–13:00 凭空消失)。样式(点位+涨跌 / 仅涨跌)、对齐(左/中/右)、显隐均可配。放置方式二选一:① 悬浮锚定(默认)——自动跟随对话输入区左下角、可拖动,新会话页与已有对话都显示;② 嵌入输入框——作为平台 conversation.composer.dock 槽位内容,排在右侧「上下文占用」指示之后(该槽位与它是同一个 flex 行里的兄弟节点,靠自身 order:1 实现,不需改宿主),仅「已有对话」显示(新会话页该槽位宿主按平台源码不渲染,属平台限制)
悬浮窗·大盘候选指数列表:按住行首 ⠿ 左键拖动排序(实时落点指示线),勾选是否显示到左下角、删除、搜索添加新指数(含港/美/北指数)。超过 10 条时列表内部出现滚动条,表头与搜索框始终可见
悬浮窗·标题彩蛋:标题随今日盈亏「变脸」——无持仓/持平 → 📈 观望中 · 盈利 → 🍗 加鸡腿(≥3% 🚀 起飞了)· 亏损 → 🍜 关灯吃面(≤−3% 🧘 天台吹风)。鼠标悬停标题可查看今日实际盈亏额
悬浮窗·标题栏⏱ 数据新鲜度徽标:显示「距上次成功拿到行情已过 N 秒」,自带 1s 走秒(正计时,越大越旧)。悬停显示更新时长与当前刷新间隔。超过 2 个刷新周期(且至少 12s)未更新即标黄,提示可能休市或推送中断,可点右侧 ⟳ 手动刷新。尚未拿到数据时显示 ⏱—
悬浮窗·自选实时列表(现价 / 涨跌幅 / 涨速 / 成交额 / 换手,价格变动闪烁),⠿ 拖动排序,点击进详情,搜索添加,删除。超过 10 条同样内部滚动
悬浮窗·持仓每只填 成本价 + 股数(⠿ 拖动排序,超 10 只内部滚动)。右键 ⇅ 记一笔交易 展开抽屉只放录入表单(买入/卖出 + 价格 + 股数 + 日期,当日可多笔,卖出自动减持仓);右键 📒 交易记录 进二级页看该股全部成交(方向/日期/价格/股数/金额,最新在前,带买/卖/净股数汇总与「今」标记,可逐笔删除,只显示被右键那只;超 10 笔内部滚动)。实时显示现价/涨跌、累计盈亏(额+率)、今日盈亏;顶部汇总市值 / 今日 / 累计,下方可展开「今日盈亏走势」曲线(把每只持仓的今日盈亏按分钟展开,零轴=不赚不亏,能看出今天几点开始赚/亏;按设置的刷新间隔跟随行情更新(曲线形状按 tick 重取,末端实时价每次推送都接上),与上方今日盈亏始终对得上;收起/展开状态记在配置里,切标签页、切股票、重启浏览器都保持)。今日收益按当日买卖现金流计算:当前持仓×现价 + 今日卖出额 − 今日买入额 − 昨日持仓×昨收(无当日交易时退化为 (现价−昨收)×股数)。清仓不丢收益:卖光后该股仍保留在持仓里,今日已实现盈亏继续计入汇总,累计盈亏按 今日卖出额 − 今日买入额 − 昨仓×成本 接住、在清仓瞬间保持连续(不会跳成 0),悬浮明细里该行标注「已清仓」。下一个交易日自动移除:判据用行情日期而非本地日期,因此周末与节假日不会误删,要等真正进入下一个交易日才清理
悬浮窗·详情分时折线(昨收基准线)/ 日K·周K·月K 蜡烛(MA5/10/20/60 可切,左上角显示对应 MA 数值并跟随选中 K 线变化;MA 选择存于全局配置,跨股票/周期/会话保持(host 回填配置时若丢失该字段会保留本地值,避免选择弹回默认),MA5 用主题色随昼夜切换)/ 关键指标;持仓股额外画出成本线(虚线 + 右侧「成本 x」标签,跌破成本转红,成本价会被纳入价格范围因此远在区间外也可见,详情头部同步显示成本徽标)/ K 线支持滚轮缩放 + 拖动平移 + 底栏复位(以鼠标位置为锚点,底部显示可视区间与根数,换股票/周期自动复位);悬浮预览、点击钉住单根 K 线(带十字光标与右侧价格标签),顶部指标区随之切换:选中时显示该根的日期/开高低收/涨跌/量/振幅,不选中则显示当日行情;双击图表或点空白处取消钉住;钉住后可用 ← / → 逐根切换(到数据边界不越界,切出可视窗口时图表自动跟随,输入框内不抢按键)
悬浮窗·设置指数栏显隐/样式/位置、刷新间隔(3~60s)、涨跌配色、测试数据源、🔔 预警(二级页)、恢复默认;配置损坏告警常驻条(见「配置安全」)
设置 · 预警(二级页)规则管理(8 种条件:现价上/下穿、突破/跌破成本、涨幅/跌幅达标、接近涨跌停、涨速达标;成本类自动取持仓成本价)+ 总开关 + 桌面通知开关。规则按股票代码分组抽屉——同一只票的多条规则收在一组,组头常驻显示「名称 + 代码 + 条数 + 已触发数」并带 ▸/▾ 展开箭头,手风琴单开(展开一组自动收起另一组);新加规则自动展开对应组,不会藏进收起态;超 10 组内部滚动(按组计数,不是按规则条数)。规则没有「停用」一说:存在即评估,删除就是停用(列表里有它就一定会响,不会出现"看得见却永远不响"的规则)。评估在 Host 独立循环——关掉页面也会照常评估。自选/持仓行右键「🔔 设为预警」可预填现价/成本价快速建规则。设计依据与验收见 docs/alerts-plan.md
预警弹窗触发时在对话区顶部居中弹出(与悬浮窗开关无关:关着悬浮窗照样弹)。同一时间最多 3 条,再多则叠加到最早那条并显示 +N;10 秒自动消失,也可点 ✕ / Escape / 「全部关闭(N)」手动关。倒计时只在页面可见时走(隐藏时冻结),避免你不在时悄悄过期。另外不弹 toast(弹窗已足够醒目)、不记录触发历史

预警行为

  • 每交易日每规则只提示一次:触发过就不再重复,即使价格回落再涨回;次日(按行情时间戳的市场本地日判定,美股不会在北京时间 00:00 被误重置)重新生效。
  • 休市/节假日不评估:按 code 逐个判断交易时段,且要求「报价日 == 该市场本地当日」——休市时报价停在上一个交易日,条件可能恒真,必须跳过,否则每逢节假日误报一次。
  • 缺数据宁可不报:无时间戳、成本缺失(持仓已清仓)、港美股用「接近涨跌停」等情形一律跳过。
  • 零成本休眠:没有任何规则 / 总开关关闭 / 全市场休市 → 评估循环退避,一次上游请求都不打。

配置

配置以 Host 文件为准(~/.dsh/dsh-stock-leek/config.json),浏览器 localStorage 仅作首屏缓存。写入前自动备份 .bak;解析失败时保留 .corrupt 现场并回退备份,不会静默吞掉持仓;多标签页通过 BroadcastChannel 同步并用版本号检测冲突。

预警的规则状态(判断「今日是否已提示过」)单独落盘 config.json.alerts(与配置分文件:评估循环高频读写,不该每次都重写配置、搅动 __rev 乐观锁;路径派生自配置路径,因此测试的 pid 隔离自动继承)。该文件只存状态、不存触发历史——历史已按要求去掉,states 必须保留,否则 Host 重启后会重复播报。

字段清单、旧路径搬迁、持仓与预警规则结构、代码归一化规则 → docs/configuration.md

文档

文档内容
docs/architecture.md全局架构、目录职责、SSE 行情通道、client.js 为何无法 import 共享模块、盈亏口径
docs/configuration.md配置字段表、持仓与预警规则结构、配置安全机制、代码归一化
docs/development.md跑测试、套件分工、写测试的硬规矩、加配置字段的检查清单
docs/alerts-plan.md预警功能设计与决策依据:为何评估必须在 Host、穿越状态机与滞回、交易日判据、账本落盘、通知降级、验收对照

架构

浏览器(client.js)
  ├─ conversation.composer.dock → 左下角指数栏(IndexBar)
  ├─ shell.overlay              → 悬浮窗(大盘/自选/持仓/设置 + 预警二级页/详情)
  ├─ 共享 store:配置 + 行情快照 + SSE/轮询双通道(页面隐藏自动暂停)
  ├─ 预警流 /alert-stream:**隐藏时保持连接**(触发稀疏、零上游请求)
  └─ 自绘 SVG 分时 / K线 / 盈亏曲线(零 CDN 依赖)
        │ fetch 同源 /dsh-stock-leek/*
        ▼
Host(index.js,cordis 插件,依赖 webServer)
  ├─ /config  GET/POST  读写配置(含首屏行情快照、版本号、损坏告警)
  ├─ /stream  SSE 行情推送(多标签页共用一次拉取)
  ├─ 预警评估循环:与订阅者无关,无规则/休市自动休眠
  ├─ /alerts  GET  规则状态(客户端重连后对账;不返回触发历史)
  ├─ /alert-stream  SSE 预警推送(独立订阅集合,不参与行情广播开关)
  ├─ /quotes  批量实时行情(qt.gtimg.cn,GBK,1.5s TTL + 单飞去重)
  ├─ /minute  分时   /kline 日/周/月K(前复权)   /search 全市场搜索
  └─ /probe   数据源连通性自检
        ▼
  ~/.dsh/dsh-stock-leek/config.json         ← 自选/持仓/指数栏/预警规则持久化(换浏览器不丢)
  ~/.dsh/dsh-stock-leek/config.json.alerts  ← 预警规则状态(今日是否已提示;只存 states)

lib/shared.js(纯函数,Host 与测试共用)
  格式化(价格/百分比/金额/成交量/时间/代码)+ 盈亏口径(todayPnl 等)

目录

dsh-stock-leek/
├── index.js          # Host:webServer 路由 + 腾讯行情解析 + 配置持久化 + SSE 推送
├── client.js         # Client:__ModuleLoader__,左下角指数栏 + 悬浮窗
├── cordis.patch.yml  # bundle patch(插入 host 插件行)
├── package.json      # dsh.bundle + dsh.client 声明
├── LICENSE           # MIT 协议正文
├── lib/              # 可复用代码
│   └── shared.js     #   纯函数:格式化 + 盈亏口径(Host/测试共用)
├── docs/             # 详细文档
│   ├── architecture.md
│   ├── configuration.md
│   ├── development.md
│   └── alerts-plan.md       # 预警功能设计与决策依据
├── test/             # 集成测试(零外部依赖,直接跑)
│   ├── config-guard.mjs    # 测试配置路径隔离守卫(共用)
│   ├── plugin-contract.mjs # 插件装载契约(package.json ↔ patch ↔ bundle id)
│   ├── config-isolation.mjs# 守卫自身自检(导入顺序写错会当场抛错)
│   ├── shared-drift.mjs    # shared.js ↔ client.js 纯函数对拍
│   ├── config-path.mjs     # 默认配置路径 + 旧路径搬迁(子进程 + 假 HOME)
│   ├── test-routes.mjs     # Host 路由层
│   ├── security.mjs        # 安全回归:URL 注入 / 配置净化 / SSE 事件注入
│   ├── alert-loop-ref.mjs  # 预警循环定时器自触发(独立子进程)
│   └── e2e-render.mjs      # Client 渲染层(mini-React + 真实路由)
└── README.md

index.js 与 client.js 刻意留在根目录:package.json 的 exports 与 dsh.client 声明按路径引用它们,DSH 打包依赖这个约定。

lib/shared.js 在 client.js 里有一份内联副本——平台限制导致 client 侧无法 import 共享模块,由 test/shared-drift.mjs 对拍防漂移,详见 docs/architecture.md。

测试

npm test                      # 八个套件全跑
node test/plugin-contract.mjs # 插件装载契约(package.json ↔ patch ↔ bundle id)
node test/shared-drift.mjs    # 纯函数一致性 + 关键函数性质对拍
node test/config-isolation.mjs# 配置路径隔离守卫自检
node test/config-path.mjs     # 配置路径与旧路径搬迁
node test/test-routes.mjs     # 路由层(备份/损坏/冲突/pnlCurve/SSE/预警清洗与状态机/休眠门控)
node test/security.mjs        # 安全层(URL 注入 / 配置净化 / SSE 注入)
node test/alert-loop-ref.mjs  # 预警循环定时器自触发(独立子进程,防 unref 回归)
node test/e2e-render.mjs      # 渲染层(指数栏/悬浮窗/详情/持仓/成本线/盈亏曲线/时段收展/预警弹窗与通知降级/拖动排序)

八个测试都用 node 直接跑,零 npm 依赖。配置路径由 config-guard 强制隔离(默认写系统临时目录并自动清理;指向真实配置会拒绝启动)。测试会请求腾讯/东财真实行情接口,需联网。详见 docs/development.md。

安全设计

插件的全部外部输入是「股票代码」与「搜索词」,攻击面集中在四处,均已加固并有回归测试锁定:

面威胁防护
URL 拼接code 拼进 qt.gtimg.cn / 东财接口,若含 ?#/&=空格 可逃逸查询参数、追加参数normalizeApiCode 先剥掉所有非 [A-Za-z0-9_.$] 字符,输出绝不含 URL 结构字符(18 组攻击输入对拍)
配置 POST原型污染、超长 code、负成本、颜色/CSS 注入、超大 body白名单式清洗:code≤16、cost/qty 非负钳制、颜色只收 #hex、列表≤300、txns≤200、body≤2MB、__proto__/constructor 无效
XSS股票名来自上游,可能含 HTML全部经 React 渲染(自动转义),无 innerHTML/dangerouslySetInnerHTML/动态 href/style;零硬编码外链
SSE 注入恶意股票名伪造 SSE 帧边界JSON.stringify 把 \n 转为字面量,帧边界只有帧尾一个真实 \n\n,端到端验证首推恰 1 帧

其它:package.json 零依赖(无供应链面);配置落盘 ~/.dsh/dsh-stock-leek/,写入走「备份 + 临时文件 + 原子 rename」,解析失败另存 .corrupt 并尝试回退 .bak,绝不静默用默认值覆盖用户持仓。

说明

  • 仅只读行情 + 本地配置,不接任何交易/账户,不构成投资建议。
  • 分时接口对部分市场(如美股指数)可能无分钟点,会提示"该市场不支持分时",K 线仍可用。
  • 休市时段行情为最近一次收盘快照:⏱ 与底栏更新时间会持续走动,但价格不变(数据本身在刷新,只是市场已收盘)。

License

MIT