deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:longhao666666/dsh-session-delete
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
零依赖:常规 Cordis 插件,纯 JS 源码直接加载——无需编译、无需 Token / API Key、无需额外服务。
删除的是会话的完整记录(含磁盘日志),且不可恢复——不想这么彻底的话,请继续用官方的「归档」。
| 能力 | 说明 |
|---|---|
| 两个入口 | 会话行悬停时的垃圾桶按钮;会话行菜单里的红色「删除会话…」项(排在「归档」之后) |
| 确认弹窗 | 明确提示「将永久删除「xxx」的完整对话记录(含磁盘日志),此操作不可恢复」,防止误触 |
| 安全围栏 | 先走官方归档流程;运行中的会话(live session)直接拒绝删除,防止撕裂日志产生残影;删除前校验目录形状(<root>/<project>/<session-id> 两级),只删目标会话自己的目录 |
| 精确定位 | 使用持久化层提供的 locate() 位置,绝不自行拼接路径 |
| 即时反馈 | 删除成功后 toast 提示「已删除会话「xxx」」,会话列表立即刷新 |
一键脚本(自动检测 DSH、建立 node_modules/@local 链接、写入 profile 配置):
git clone https://github.com/longhao666666/dsh-session-delete.git
cd dsh-session-delete
powershell -ExecutionPolicy Bypass -File .\install.ps1
$profile = "$env:USERPROFILE\.dsh\profiles\desktop"
$repo = "<你的克隆路径>" # 例如 "$HOME\code\dsh-session-delete"
New-Item -ItemType Directory -Force "$profile\node_modules\@local" | Out-Null
New-Item -ItemType Junction -Path "$profile\node_modules\@local\dsh-session-delete" -Target $repo
然后编辑 $profile\package.json,合并以下字段(已存在的字段里追加即可):
{
"dependencies": {
"@local/dsh-session-delete": "link:C:/Users/you/code/dsh-session-delete"
},
"dsh": {
"profile": {
"bundles": ["@local/dsh-session-delete"]
}
}
}
两种方式完成后都需重启 DeepSeek Harness,并在「插件管理」页确认 @local/dsh-session-delete 已启用。
powershell -ExecutionPolicy Bypass -File .\install.ps1 -Uninstall
重启 DSH 后生效;克隆下来的仓库文件不会被删除。
host.js(Node 侧):归档 → 通过持久化层定位日志目录 → 校验目录形状 → 删除 → 从工作区脱离 → 发出 api-session/removed 事件让客户端刷新列表;所有安全围栏都在这一侧。client.js(浏览器侧):向 sidebar.workspaces.session.menu.item(行菜单)、sidebar.workspaces.session.row.action(悬停按钮)、shell.overlay(确认弹窗 + toast)三个扩展槽注入 UI,只负责发起请求与展示。CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。