dsh-doctor
asdf17128
Find what your DeepSeek Harness (dsh) patches silently broke — dead patches, config fields dropped by whole-config repla…
PROJECT TOPICS
PROJECT README
散修,修出你的 Sanity。 积极的信心,谨慎的动作。
一个给散户用的认知管理工具:帮你查证、帮你避坑、帮你记住、帮你复盘。
不是荐股工具,不是行情软件,不是新闻推送。它不下单、不推荐、不承诺收益——它只在你追高之前泼冷水,在你忘记自己判断的时候提醒你,在你亏钱之后告诉你错在哪一环。
市场里不缺信息,缺的是验证过的判断;不缺聪明人,缺的是记得住自己为什么错的聪明人。
两个从模糊问题到真实结果的完整案例(含旧工具三次失败的对照)见 EXAMPLES.md:
小王,上班族,下班刷雪球。 "那天金刚光伏涨停,太空光伏加算力转型,评论区都在喊。我就问了散修一句:这题材是真的吗?它的答案是:太空光伏公司官方口径连'送样'都没确认过,算力合同客户匿名、一年实际收入六百多万。我最后什么都没买。后来我才知道,它管这个叫'题材映射 vs 真实敞口',管那个检查叫'官方口径复核'。"
阿珍,被套怕了的老股民。 "我不需要别人告诉我买什么,我需要有人在我手痒的时候按住我。散修的锚体检会提前三天提醒我:你锚里的验证日到了。到了那天我说'更新锚',它就把结论改了。最大的变化是:我现在知道自己上一次判断错在哪。"
老李,亏了十年,想搞明白自己。 "我最烦那些复盘工具——流水账记了一堆,还是不知道错哪。散修的决策日志就一行:当时信了什么、做了什么、对不对。三个月下来,我发现自己十次里有七次死在同一条陷阱上。知道这件事本身,比抓两个涨停值钱。"
SKILL.md、anchors/、scripts/,可选 tools/ 用于定时提醒;最省事是把整个仓库目录软链接过去)| 环境 | 放哪里 |
|---|---|
| Claude Code / Claude 桌面 | ~/.claude/skills/ |
| Codex(ChatGPT 桌面) | ~/.codex/skills/ |
| Gemini CLI | ~/.gemini/skills/ |
| DeepSeek Harness(dsh) | ~/.dsh/skills/resanity/(~/.agents/skills/ 也可);项目级放 <项目>/.dsh/skills/。软链接可行:ln -s "$(pwd)" ~/.dsh/skills/resanity |
| OpenClaw | workspace 的 skills 目录(ClawHub 支持从 Claude 格式一键导入) |
| Hermes | skills 目录(开放 Agent Skills 标准,互通) |
你:XX 的题材是真的吗?
散修:根结论 → 可能性地图(多头/基准/空头)→ 证据审计(最弱环节、缺口)
→ 定价对照(市场已定价什么/未定价什么)→ 载体比较 → 下一步验证 → 认知锚
每个数字带来源链接和日期;查不到的东西它会明说"查不到",而不是编一个给你。
DeepSeek Harness 用户:会话里输入
/resanity会确定性加载全文;也可以直接问问题,模型按描述自动调用。锚库和决策日志落在会话工作目录(anchors/、journal/),不落在 skill 安装目录——换项目换锚库,换平台可整体带走。
本仓库同时是一个 dsh 插件包(lib/index.js),在"文件目录安装"之上再给四样东西:
SKILL.md 注册进 DSH 的 skill 注册表(rank 600,本地/项目副本可同名覆盖),其他 DSH 用户装上插件即得 skill;ctx.timer 每 6 小时扫一遍所有活跃会话工作区的 anchors/,到期/临近(默认 3 天窗口)弹系统通知——不再需要 LaunchAgent/cron 挂 tools/anchor_check.py;/resanity-check 命令:随时在会话里手动体检,等价于 python3 tools/anchor_check.py --no-notify,输出直接显示在命令面板;/resanity-tushare 命令:set <token> | status | clear | test 管理 Tushare token(价格锚用)。token 存 ~/.dsh/resanity/credentials.json(600 权限),脚本自动回退读取,不用再 export 环境变量;该命令 recordInput: false,token 绝不进命令日志。安装(以 web profile 为例):
# 1. 把插件链进 DSH 的共享依赖层(profiles 共用一个 node_modules,
# loader 按包名从这里解析;web profile 目录本身没有 node_modules)
ln -s "$(pwd)" ~/.dsh/profiles/node_modules/resanity
# 若装了 pnpm,等价命令:dsh plugin add resanity@link:"$(pwd)"
# 2. 在 ~/.dsh/profiles/web/cordis.patch.yml 里插入一个插件块:
# - insert:
# - id: resanity
# name: resanity
# config:
# checkIntervalHours: 6 # 后台体检周期(小时)
# reminderWindowDays: 3 # 提前几天开始提醒
# systemNotifications: true # 系统通知(macOS/Linux)
# anchorsDirs: [] # 额外锚库目录(活跃会话工作区恒被扫描)
# 3. 重启 dsh 生效;用 dsh --profile web --dump-config 确认 resanity 行已进组合。
# 重启后验证:斜杠菜单(输入 /)出现 resanity-check 与 resanity-tushare;
# 启动约 30 秒后插件跑第一次锚体检(有到期/临近锚会弹系统通知)。
体检范围优先级:$RESANITY_ANCHORS(可用 : 分隔多目录)→ 配置 anchorsDirs → 所有活跃会话的 <工作区>/anchors。到期的锚会提醒"说「更新锚」即可"——检查是通知,更新永远是你的一句话。
每次研究结束,它会给你留下 3–5 条认知锚——你能长期持有、能被一个具体事实更新的判断:
| 修仙黑话 | 你的实际资产 | 含义 |
|---|---|---|
| 道基 | 认知锚 | 可证伪的判断命题,写进 anchors/ |
| 修为境界 | 证据等级 | 假设 → 部分支持 → FACT 支持,随证据升档 |
| 渡劫日 | 更新触发器 | 哪个事件出来,这条锚该重新验证 |
| 走火入魔 | [失效] 锚 |
被推翻的判断,连同推翻它的事实一起保留——教训不删 |
证否让你不亏,但只证否不会让你赢——那是保险,不是投资。reSanity 多做了三件事:
"更新锚"。它只查触发器里写好的科目,几分钟升档/失效。认知是资产不是笔记:报告会死,锚会活。
tools/anchor_check.py 是零依赖的确定性触发器检查(不调模型、不联网):到期或临近三天时弹系统提醒。macOS 用 LaunchAgent 挂它,OpenClaw/Hermes 直接用它们的 cron。
DeepSeek Harness 用户不需要这一步:装上面的插件,定时提醒就是 DSH 原生的(见「DeepSeek Harness 插件部署」)。
这套纪律不是拍脑袋:陷阱清单来自六个冻结投资案例的错误共识规律("需求增长≠便宜"、"预披露≠最终法"、"计划产能≠已交付"……),并经过两次同模型盲评验证——主张正确率 100%、价格锚定有效性是裸模型的 3.2 倍、token 成本是裸模型的 0.9 倍。它赢的方式不是"信息更多",是"判断更可验证、认知能累积"。(注:盲评样本小——两个案例、同模型自评,参考价值高于统计意义。)
/resanity-tushare set <你的token>(存 ~/.dsh/resanity/credentials.json,仅脚本读取,不进日志和仓库);其他环境设 TUSHARE_TOKEN 环境变量或 RESANITY_CREDENTIALS 指向凭据文件。token 永远是可选增强。anchors/、journal/)——换平台直接带走,没有任何厂商锁定。test/plugin.test.mjs(真实 Cordis 上下文 + mock 服务,覆盖 provider/命令/定时器/凭据全路径)。本地跑前先把 DSH 的依赖链进仓库:ln -s <dsh 安装目录>/node_modules node_modules,然后 node test/plugin.test.mjs;SKILL.md 即时生效(DSH 每个 step 重新快照目录与正文);改 lib/index.js 插件逻辑需重启 dsh;~/.dsh 或工作区,git status 应始终干净。MIT © 2026 reSanity Contributors
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。