1.7 KiB
1.7 KiB
description
| description |
|---|
| 自检:安装是否完整、两个写入目标是否可写、node:sqlite 是否可用(只读) |
用 Bash(Windows 用 git-bash)运行(只读,不改任何东西,不写档位):
THINK_SCRIPT="${ZCODE_THINKING_SCRIPT:-$(find ~/.zcode/plugins -maxdepth 4 -name thinking.mjs -path '*thinking-mode*' 2>/dev/null | head -1)}"
[ -n "$THINK_SCRIPT" ] || THINK_SCRIPT="$(find ~/.zcode -maxdepth 8 -type f -path '*thinking-mode/scripts/thinking.mjs' 2>/dev/null | head -1)"
[ -n "$THINK_SCRIPT" ] || { echo "找不到 thinking.mjs:插件未安装或不在默认位置,可用 ZCODE_THINKING_SCRIPT 指定路径"; exit 1; }
node "$THINK_SCRIPT" doctor $ARGUMENTS
检查项(每项 ✓ ok / ⚠ warn / ✗ fail,失败项附可执行的修复建议):
- Node 版本 / node:sqlite — 热档位那一半依赖
node:sqlite(需 Node ≥22.5); 导入失败时热档位写不了,只能改模型配置 - 模型配置 — 能否读到、JSON 是否合法、有几个模型声明了
reasoning - 热档位库 — 文件在不在、能否打开、有没有
local_setting表(缺表说明不是有效的 session 库) - 当前热档位 — 库里现在的值;没有这行也会如实说明,不假装读到
- 默认值 — 默认档位/默认模型及其来源(环境变量/文件/未设)
- 写入能力 — 模型配置是否可写、能否在配置目录写备份、默认值目录是否存在
退出码:有 fail 时为 1。
用法场景:用户说"切不了/切了没效果/报错"时先跑这个,再把 fail 项与修复建议照实告诉他,
不要自己猜。想知道"怎么回滚"也可以先跑它,备份可写性就在检查项里。
把脚本输出原样展示给用户。
用户附加要求:$ARGUMENTS