按规范格式命名当前对话或重命名历史会话
29.7/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/21 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add HH12-web/dsh-tool-set-session-title该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · chat
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 17 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
README
由 DeepSeek 最新模型翻译生成对话标题工具 · DSH 插件
插件类型:DeepSeek Harness(DSH)插件。
给 DeepSeek Harness 的模型侧工具:把对话命名成 MMDD|类型|主题。
| 工具 | 作用 | 底层路径 |
| set_session_title(title, force?) | 命名当前对话 | ctx.sessionTitle.rename(session, title),直接写日志 |
| rename_conversation(session_id, title, force?) | 重命名任意已有对话(含已关闭的历史对话) | ctx.sessionController.rename,即 Web 侧栏改名同一条路径(会解析/恢复目标会话) |
两者的共同规则:
- 写入的是 user 来源的 session/title 事件,因此标题被「钉住」:harness 的自动标题(first-prompt provider)被取代,之后的用户消息也不会再自动改名。
- 格式校验 ^\d{4}\|(功能|设计|修复|优化|发布|探索|文档|研究)\|[^|]+$,报错时附上规范说明。
- 字节上限预检:上限从部署里挂载的标题服务读取(ctx.get("sessionTitle").config.maxTitleBytes)。
展开完整文档(README 剩余 1 节)
对话标题工具 · DSH 插件
插件类型:DeepSeek Harness(DSH)插件。
给 DeepSeek Harness 的模型侧工具:把对话命名成 MMDD|类型|主题。
| 工具 | 作用 | 底层路径 |
| set_session_title(title, force?) | 命名当前对话 | ctx.sessionTitle.rename(session, title),直接写日志 |
| rename_conversation(session_id, title, force?) | 重命名任意已有对话(含已关闭的历史对话) | ctx.sessionController.rename,即 Web 侧栏改名同一条路径(会解析/恢复目标会话) |
两者的共同规则:
- 写入的是 user 来源的 session/title 事件,因此标题被「钉住」:harness 的自动标题(first-prompt provider)被取代,之后的用户消息也不会再自动改名。
- 格式校验 ^\d{4}\|(功能|设计|修复|优化|发布|探索|文档|研究)\|[^|]+$,报错时附上规范说明。
- 字节上限预检:上限从部署里挂载的标题服务读取(ctx.get("sessionTitle").config.maxTitleBytes)。超限会直接报错并给出实际字节数,避免被服务静默截断;force: true 表示"照写不误",此时接受服务的安全截断。
- force: true 同时绕过格式与长度校验,只在用户明确要求非规范标题时使用。
- 子代理调用 set_session_title 时,若能取到存活 agent 注册表(ctx.get("agents"),惰性),会沿会话血缘上溯到仍然存活的父会话,改的是人在看的那个对话。
测试
node --import ./test/setup-stub.mjs --test ./test/title-tools.test.mjs # 或 pnpm test
15 条用例覆盖:注册、当前会话改名、任意会话改名、格式拒绝、force 旁路、空标题、无 agent、子代理上溯、无存活父会话、字节上限(取自服务 / 回退默认)、控制器缺失、以及规则函数本身。测试通过 test/setup-stub.mjs 把 @deepseek-ai/dsh-tools 指向桩模块,因此不需要 harness 安装即可运行。
桩只透传定义对象;真实 defineTool 的 schema 转换由"启动验证"覆盖(见下)。
实现要点(踩过的坑)
- inject 只能列 profile 根作用域 存在的服务。本插件用 ["tools", "sessionTitle"]。
早期版本把 agents 也写进 inject,而该服务在 preset 作用域里才组装,profile 层插件永远等不到它、apply 从不执行,工具也就永远不注册。agent 注册表改为在 execute 里惰性取用。
- 安装形态必须是 真实包目录:link:(软链到工作区)在运行中的进程里不会成为包解析拦截层;用 tarball 安装进 profile 的 node_modules 才可靠(与 dshmarket 等一致)。
- 替换已安装的包后热更 不会 换掉进程里已缓存的模块代:必须重启 Harness 才会加载新代码。
运行时已知边界
- 热更不 import 新模块:profile 配置重载只重新应用 patch,不会 import 新插入行的模块(新文件的新 URL 也不行)——新工具一律等一次重启。
- rename_conversation 对正被另一个进程持有的活跃会话会被拒绝(already owned by an active write handle):这种对话在 Web 侧栏改名,或让那个对话自己的 agent 调 set_session_title(同进程即可)。
- 子代理会话(parentSession 血缘、侧栏隐藏)被服务层拒绝(owned by subagent routing),属设计内行为。
- 跨进程只追加标题事件时,磁盘投影缓存(storages/session_projcache/sessions/<id>.json)不一定刷新;同进程改名会自动刷新。
安装 / 升级
1. 在包目录打包
cd <repo>/dsh-tool-set-session-title
mkdir -p ~/.dsh/profiles/desktop/vendor
pnpm pack --pack-destination ~/.dsh/profiles/desktop/vendor # 产出 <name>-<version>.tgz
2. 在 profile 目录安装(相对路径,保持 profile 自包含)
cd ~/.dsh/profiles/desktop
pnpm add ./vendor/dsh-tool-set-session-title-<version>.tgz
3. 首次安装还要把包名追加进 package.json 的 dsh.profile.bundles
4. 重启 Harness 让新模块代生效
说明:dsh plugin --profile desktop ... 被 CLI 显式拒绝(desktop profile 由 Electron 应用独占管理),所以走 pnpm;Web 侧栏 插件 → 添加插件 也接受本地绝对路径/压缩包,但要注意 link: 形态的坑(见上)。
自包含校验:pnpm install --frozen-lockfile 在 profile 目录应当直接 Already up to date(已验证)。
验证
- 会话里让模型调用两个工具,标题应立刻变成新值,且此后不再被自动标题覆盖。
- 侧栏 插件 页能看到组合包 dsh-tool-set-session-title。
- 启动验证(schema 转换等只有真实运行才能覆盖):复制 profile 到隔离的 DSH_HOME,用 --profile <副本> --no-open --port 0 起一次性实例,确认工具注册且行为正确,再销毁。
卸载
cd ~/.dsh/profiles/desktop
pnpm remove dsh-tool-set-session-title
并从 package.json 的 dsh.profile.bundles 移除该名字
然后重启。
结构
| 文件 | 作用 |
| package.json | 组合包清单,声明 dsh.bundle.patch、version 与 scripts.test |
| cordis.patch.yml | 配置档层两行插入(全局工具层) |
| index.js | set_session_title |
| rename.js | rename_conversation |
| title-rule.js | 纯规则:格式、字节上限、错误文案(不依赖 harness,便于单测) |
| test/ | 单测与 @deepseek-ai/dsh-tools 桩(不随包发布) |
| locale/{en,zh}.json | 插件页展示用的标题与描述 |
| dsh-tool-set-session-title-0.1.4.tgz | 构建产物(已装进配置档 vendor/) |预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
HH12-web/dsh-tool-set-session-title
按规范格式命名当前对话或重命名历史会话
相关插件 · 对话 / 记忆
上下文中枢oceanbase/powercontext
上下文跟着工作走 —— 跨会话、跨智能体、跨人。
★ 1,489已汉化DSH
73.1
智能体记忆库plastic-labs/honcho
Honcho 是记忆基础设施,用来构建有状态的智能体。这些智能体能理解不断变化的人、智能体、群组、项目和想法。
★ 7,918已汉化DSH
71.7
长程智能体控制面loopx-project/loopx
给 Agent 一个目标,让工作持续向前。
★ 6,358已汉化DSH
71.3
智能体上下文数据库volcengine/OpenViking
给 AI 智能体用的上下文数据库
★ 41,453已汉化DSH
71.3
长效机器人团队Fei2411/DS-Bot
Download DS Bot for Windows 10/11 64-bit / 下载 Windows…
★ 5,293已汉化DSH
71.2
可携带记忆层EverMind-AI/EverOS
为什么选择 EverOS
★ 13,797已汉化DSH
71.1
这是你的仓库?认领条目