前言¶
在 DeepSeek Harness(DSH)里做占卜或趣味性交互,常见做法是让模型口述牌名,用户很难对照牌阵位置,也缺少可回顾的牌局记录。chen-bi 维护的 dsh-tarot(命运牌桌)把流程固定成:助手在聊天里起局并收数字,浏览器侧边栏与输入框上方同步翻牌,抽满一局后自动写入本地存档。下面按定位、能力、安装与用法说明这只社区插件(目录归类为趣味换装;与 DeepSeek / 幻方无官方从属,见 SkillHub 目录页)。
这是什么¶
dsh-tarot 是 DSH 塔罗牌插件:内置 78 张韦特系牌库、6 种预设牌阵,支持在对话中报 1–78 的数字抽牌,并在 UI 上展示牌名、正逆位与关键词。牌桌数据有两个入口且同源——左侧栏「命运牌桌」常驻图标,以及有进行中牌局时输入框上方可收起的小牌桌;侧边栏显示的是最近一局(最后被起局或抽牌的那张桌子),不绑定单个会话。
源码与说明见 GitHub:chen-bi/dsh-tarot,介绍页为 https://chen-bi.github.io/dsh-tarot/。package.json 版本为 1.0.0,许可证 MIT。
核心功能¶
对话驱动的抽牌流程¶
典型链路在 README 中写得很清楚:
- 向助手提问(例如感情、面试类问题)。
- 助手起局,说明牌阵与各位置含义,请你在 1–78 内报 N 个数字。
- 在聊天里发送数字(可分批,例如
12 34 56)。 - 牌桌当场翻牌,展示牌名、正逆位、关键词。
- 助手在聊天中逐张解读并给出结论。
补充口令:你帮我抽(助手代抽剩余牌)、换个问题(重新起局)、收起来(清掉当前一局)。
牌库与牌阵¶
牌逻辑在 deck.js:78 张牌数据、洗牌与抽牌(纯函数)。预设牌阵如下(助手也可用 positions 自定义,最多 10 张):
| key | 名称 | 张数 |
|---|---|---|
one |
单张指引 | 1 |
three |
时间之流 | 3 |
love |
关系之镜 | 5 |
career |
事业十字 | 5 |
celtic |
凯尔特十字 | 10 |
yesno |
是否之间 | 3 |
各位置名称(如时间之流的过去 / 现在 / 未来)见仓库 README 表格。
界面与只读牌桌¶
- 侧边栏:无牌局时为引导页(牌背示意、牌阵一览、去对话按钮);有牌局时展示大卡片、78 张牌墙与牌义。
- 输入框上方:牌局进行中时出现小牌桌,可收起,也可跳转「整张牌桌」。
- 网页端只读:抽牌由聊天中的助手通过
tarot工具发起,牌桌 UI 不会替用户选号。
牌面为插件自带 SVG/CSS,不依赖外部图片资源。
自动存档¶
当一局所有位置都翻开后,记录自动写入:
~/.dsh/tarot/history.json
内容包括问题、牌阵、各位置牌面、正逆位、关键词;助手写完解读后会调用 note 把解读正文追加到同一条。侧边栏顶部有 牌桌 / 存档 两个页签,存档按时间倒序,最多保留 200 条,插件重载或 DSH 重启后仍在。
注意:进行中的牌局按会话存在内存里,DSH 重启会丢失未完成局;已抽满并落盘的记录不受影响。
Host 工具与 HTTP 接口¶
宿主侧 index.js 提供 tarot 工具,以及供轮询与外部脚本使用的 API(与工具共用 runCommand 逻辑):
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/tarot/state?session=&since= |
牌桌轮询:当前牌局 + 牌阵目录 |
| GET | /api/tarot/history |
存档列表(含解读正文) |
| POST | /api/tarot/control |
start/pick/draw/status/reset/note/history/import 等 |
拿不到 tarot 工具的调用方(如命令行脚本)可走 /api/tarot/control;import 仅在此口开放,用于按牌名与正逆位补录旧牌局。
安装与启用¶
要求 DSH 具备 webServer 与 client bundle 支持;宿主 peer 依赖包含 @deepseek-ai/cordis 与 react。
官方 README 给出的步骤如下。先在本地取得仓库目录,再在 DSH 里安装 bundle:
git clone https://github.com/chen-bi/dsh-tarot.git
然后在 DSH 中让助手执行:plugin_manager → install_bundle,target 指向克隆下来的仓库根目录。装完后刷新页面(客户端包需重新加载)。之后输入框上方小牌桌仅在有牌局时出现,侧边栏入口一直可用。
插件以当前 DSH 进程权限运行,会向用户主目录写入存档;安装前请自行审阅源码与 MIT 许可证。
仓库提供 node smoke.mjs 自检(mock 上下文跑工具、接口与临时存档文件),可在安装前本地验证。
典型用法示例¶
- 打开 DSH 对话,说明你想问的事。
- 按助手提示的牌阵,在聊天中发送若干 1–78 的整数。
- 观察侧边栏或输入框上方牌桌翻牌,再在聊天中阅读解读。
- 需要回顾时,打开侧边栏「命运牌桌」→「存档」,点选历史记录查看大卡片与完整解读。
适用场景与注意¶
适合想在 DSH 工作流里保留「提问—报数—可视化牌局—可存档解读」闭环的开发者或玩家;分类上偏趣味换装,不改变 DSH 核心能力。
使用前请知悉:未完成牌局随进程重启丢失;存档路径固定为用户目录下的 ~/.dsh/tarot/history.json。社区目录 SkillHub 与 GitHub 星标等元数据以站点为准(抓取时星标为 0)。
结尾¶
dsh-tarot 把塔罗从纯文本变成可操作的牌桌与本地历史,适合与 DSH 助手配合做结构化占卜体验。进一步细节以 GitHub 仓库 README 与 介绍页 为准;插件条目见 SkillHub:chen-bi/dsh-tarot。