清理堆积的登录Cookie,修复桌面版启动认证失败
30.7/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/30 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add MCshamrock/dsh-cookie-431该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · desktop
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 4 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0⚪ 扫描:无法判定尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0已尝试扫描但取不到可分析的源码:仓库或包不存在、已删除,或为非 JS/TS 实现、未随包发布源码。无法判定,不代表安全。
- · 包内无可扫 JS
- · TS 源码(可能为非 JS 实现或未发布源码),无法判定
扫描于 2026/11/3(0 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
修复 DeepSeek Harness 桌面版启动时报 Web authentication failed 的问题,原因是 cookie 堆积导致 HTTP 431。
README
由 DeepSeek 最新模型翻译生成dsh-cookie-431
DeepSeek Harness 桌面版启动报 Web authentication failed?
不是网络问题,不是账号问题,是本地 cookie 库里堆了 70 多条没用的登录 cookie,把请求头顶爆了(HTTP 431)。
这个仓库给出病因、证据,以及一个只删该删的那部分、会先备份的清理脚本。
30 秒修复
第一步:彻底退出 DSH(连托盘图标一起退,任务管理器里确认 DeepSeek Harness 进程没了)。
第二步:二选一
- 最简单:删掉这两个文件,重开 DSH %APPDATA%\@deepseek-ai\dsh-desktop\Network\Cookies %APPDATA%\@deepseek-ai\dsh-desktop\Network\Cookies-journal
路径里是 @deepseek-ai,带 @。少写 @ 会找不到文件。
副作用:127.0.0.1 上所有站点的登录态一起清空(含内嵌浏览器)。
展开完整文档(README 剩余 1 节)
dsh-cookie-431
DeepSeek Harness 桌面版启动报 Web authentication failed?
不是网络问题,不是账号问题,是本地 cookie 库里堆了 70 多条没用的登录 cookie,把请求头顶爆了(HTTP 431)。
这个仓库给出病因、证据,以及一个只删该删的那部分、会先备份的清理脚本。
30 秒修复
第一步:彻底退出 DSH(连托盘图标一起退,任务管理器里确认 DeepSeek Harness 进程没了)。
第二步:二选一
- 最简单:删掉这两个文件,重开 DSH %APPDATA%\@deepseek-ai\dsh-desktop\Network\Cookies %APPDATA%\@deepseek-ai\dsh-desktop\Network\Cookies-journal
路径里是 @deepseek-ai,带 @。少写 @ 会找不到文件。
副作用:127.0.0.1 上所有站点的登录态一起清空(含内嵌浏览器)。
- 推荐:用本仓库的脚本,只删 dsh-auth-,其他 cookie 一条不动,而且先备份 pwsh -NoProfile -ExecutionPolicy Bypass -File .\scripts\dsh-cookie-fix.ps1 -Restart
或者直接双击 scripts\dsh-cookie-fix.cmd(窗口会停住,报错看得清)。
第三步:正常启动 DSH。聊天记录、工作区、插件都在 .dsh 目录里,一条都不会丢。
病因
一句话:cookie 名字按「主机:端口」生成,而端口每次启动都随机,浏览器又不区分端口。
1. 每次启动都是随机端口
@deepseek-ai/dsh-desktop-host/lib/index.js:
args: ["--no-open", "--host", "127.0.0.1", "--port", "0"]
--port 0 = 交给操作系统随便挑一个空闲端口。所以每次启动 authority 都不一样。
2. cookie 名 = hash(authority)
@deepseek-ai/dsh-client-connection/lib/index.js:
function cookieName(authority) {
return "dsh-auth-" + b64url(sha256(authority)); // authority = "127.0.0.1:7620"
}
端口变了 → 名字变了 → 浏览器认为是另一个 cookie,不会覆盖,只会新增。
3. 但 Cookie 不区分端口
127.0.0.1:7620 和 127.0.0.1:4046 是同一个 cookie 域。于是每个发往 127.0.0.1 的请求,都会把历史上所有 dsh-auth- 一起带上。
4. 寿命 30 天,没人回收
cookieMaxAgeDays 默认 30。旧 cookie 要 30 天才过期,而 Chromium 对「过期」只是不再发送,不保证立刻从库里删除。
5. 16 KB 天花板
Host 是 Node 的 http 服务,默认 maxHeaderSize = 16384。超了直接 431 Request Header Fields Too Large,请求根本进不到业务代码。
实测(对本机正在运行的 Host 故意发加长的 Cookie 头):
16300 字节 → 401 (进到鉴权层了,说明头能过) 16360 字节 → 431 (被 Node 挡在门外)
6. 算一遍
名字:dsh-auth- + base64url(sha256) = 9 + 43 = 52 字节值 :v1.<base64(JSON)>.<base64(sig)> = 3 + 124 + 1 + 43 = 171 字节一条 224 字节,加 "; " 分隔符 → 227 字节 16384 / 227 ≈ 72 条
每次启动 +1 条 → 大约第 72 次启动后就开始永久报错(在 30 天窗口内)。
自查
先退出 DSH(文件被独占锁住,运行时读不了),然后:
$db = "$env:APPDATA\@deepseek-ai\dsh-desktop\Network\Cookies"
python -c "import sqlite3,sys;c=sqlite3.connect(sys.argv[1]);n=c.execute('select count(*) from cookies where name like ?',('dsh-auth-%',)).fetchone()[0];print(n)" $db
| 条数 | 状态 |
| < 30 | 安全 |
| 30 ~ 55 | 开始积累,不急 |
| 55 ~ 65 | 该清了 |
| ≥ 70 | 随时可能 431 |
请求头体积粗估 ≈ 条数 × 224 字节,天花板 16384。
脚本
scripts/dsh-cookie-fix.ps1 做的是外科手术:
占用检测 → 体检 → 备份 → 只删 name like 'dsh-auth-%' → VACUUM → 复核 →(可选)重开 DSH
| 参数 | 作用 |
| -Check | 只体检,不修改 |
| -Force | DSH 还开着时先结束它(会中断正在跑的任务) |
| -Restart | 清理完自动重开 |
| -Path | 指定 cookie 库路径(测试用) |
| 退出码 | 含义 |
| 0 | 成功(或无需清理) |
| 2 | DSH 还在运行,什么都没改 |
| 3 | 找不到 python |
| 4 | cookie 库读不出来 |
| 5 | 删除失败 |
| 99 | 脚本异常 |
- 备份落在同目录 Cookies.bak-<时间戳>,后悔了改回去即可。
- 每次运行都会写 scripts\dsh-cookie-fix.log,红字看不清就翻日志。
- 依赖:Windows + PowerShell 5.1 或 7 + python(自带 sqlite3)。
长期方案(可选)
让 cookie 活不过几天,就永远堆不到 72 条。在 ~/.dsh/profiles/desktop/cordis.patch.yml 末尾追加:
- id: connection
name: "@deepseek-ai/dsh-client-connection"
inject: [webStartup]
config:
trustedHosts: !!js ctx.webStartup.trustedHosts
cookieMaxAgeDays: 3
配置档补丁是整条 config 替换,不是深合并;字段写漏会让 DSH 起不来。改前先备份。
否则就是隔一两个月跑一次脚本。
常见疑问
Q:数据会丢吗? 不会。聊天记录、工作区、配置、插件都在 ~/.dsh 里,跟 cookie 库无关。
Q:重装有用吗? 基本没用,除非顺手把 %APPDATA% 下的数据也清了——那其实就是本页的「方案 A」。
Q:会不会官方已经修了? 可能在更新的版本里已改。先跑一次 -Check:如果条数很低却照样报错,那就不是这个原因,别乱删。
Q:对流传说法逐条核对
| 说法 | 判定 |
| 每次启动多存一条登录 cookie、从不清理 | ✅ |
| 30 天内约 72 次后就会坏 | 🟡 量级对,72 是期望值;端口偶尔被复用会覆盖,实测 65~80 |
| 报 Web authentication failed | ✅ |
| 请求头攒到 16 KB 被退回 431 | ✅ 实测阈值 16.3 KB 附近 |
| 「永久打不开」 | ❌ 夸张,删 cookie 立刻恢复 |
| 路径 %APPDATA%@deepseek-ai\... | ❌ 少了 @ |
免责声明
脚本会修改 Electron 的 cookie 数据库。它只删 name 以 dsh-auth- 开头的记录,并在删除前生成完整备份;但任何数据操作都有风险,请自行确认备份存在后再使用。作者不对使用后果承担责任。
License
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
MCshamrock/dsh-cookie-431
清理堆积的登录Cookie,修复桌面版启动认证失败
相关插件 · 桌面端
Codex 任务面板chuspeeism/dashi-taskboard
现代化可灵活嵌入的任务面板,支持 Codex、DeepSeek Harness
★ 3,409已汉化DSH
71.7
多智能体自进化开发平台Prism-Shadow/penguin-harness
统一、稳定的 Agent 自进化框架全自动优化:任意模型 · 任意算法 · 任意 Benchmark
★ 3,111已汉化DSH
71.1
桌面宠物PC2005-cloud/dsh-pet
DSH 桌面宠物:一行命令装好即用的透明动画小桌宠,支持多开、大小位置随心配置;还内置 DIY 素材链,能用 AI…
★ 5,341已汉化DSH
71
多端 Agent 工作台GCWing/OpenBitFun
OpenBitFun 是一个高度可定制的开源 Agent 工作台,让任务按你的方式持续推进。
★ 3,449已汉化DSH
70.8
DSH Desktopanywhere-labs/dsh-desktop
为 DeepSeek Harness DSH 插件生态打造的现代化桌面端解决方案。万物皆「插件」,桌面本身也是「插件」。
★ 34,532已汉化DSH
70.7
桌面宠物伴侣OpenPetsHQ/openpets
桌面伴侣平台,带宠物、插件,还能选配本地智能体集成。
★ 1,353已汉化DSH
70.2