DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

buaafish /

buaafish/dsh-ai-session-rename

Verified

DSH plugin: right-click a session to rename it from its own conversation content.

★ 1 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@d2a46aca

dsh-ai-session-rename

给 DeepSeek Harness 用的插件:右键会话 → 根据对话内容重新命名。

读取这个会话里你自己发过的消息,用这个会话当前使用的模型生成一个简短标题,写回成会话标题。名字比内置的自动标题更长、更具体(中文约 8–14 字)。

装

三种方式,任选其一。

从 npm(推荐)——已发布到 npm:

plugin_manager → install_bundle → dsh-ai-session-rename

从 GitHub 预构建包——不用克隆、不用装依赖:

plugin_manager → install_bundle → https://github.com/buaafish/dsh-ai-session-rename/releases/latest/download/dsh-ai-session-rename.tgz

从本地目录——改代码调试时用:

plugin_manager → install_bundle → <本仓库绝对路径>

装完刷新页面菜单项就出现;index.js 那部分要重启一次应用才加载。

卸载走 plugin_manager → remove_bundle,别手动删目录。

用

两种方式,同一份实现:

  1. 侧边栏右键:在会话列表里右键某个会话 → 「根据对话重新命名」(排在「重命名」下面)。 顶部先出现「正在根据对话生成标题…」,成功显示「已重命名为「…」」,失败给出具体原因。

  2. 对话里直接说:让 agent 调工具 session_rename_ai。它只能改当前会话,传别的会话 id 会被拒绝,避免 agent 悄悄改掉你没在看的会话。

标题长什么样

  • 中文 / 日文 / 韩文约 8–14 字,其它语言约 3–6 个词。
  • 一行纯文本:不带引号、编号、Markdown、emoji、句尾标点。
  • 描述具体话题或任务,不写「聊天」「对话」这类空词。
  • 只用真人输入(source.kind === 'user'),注入的上下文和目标续轮不算;最多取最近 40 条,每条截断到 2000 字符。

用哪个模型

优先用这个会话自己最后一次请求的路由,也就是你在会话里选了什么模型就用什么。会话还没发过请求时退回全局默认模型。

生成是一次独立调用(maxTokens: 96、温度 0.2、45 秒超时),不会混进会话历史。

一个取舍:标题会被锁定

DSH 里显式改标题的事件源是 user,而 user 源会让自动标题生成不再调度这个会话。本插件复用了内置的重命名通路,因此:

  • 好处:侧边栏和标签页会像手动重命名一样立刻更新,行为和官方「重命名」一致。
  • 代价:这个会话之后不会再有自动标题,直到你再次显式改标题。

「不锁定」只能自己 append 一条 source: { kind: 'provider', … } 的标题事件绕过 rename(),但那样标题会在下次 refresh() 时被 provider 覆盖,反而更不可控,所以没这么做。

可调参数

都在 index.js 顶部:

常量 默认 作用
MAX_MESSAGES 40 最多取几条用户消息
MAX_MESSAGE_CHARS 2000 单条消息截断长度
MAX_INPUT_BYTES 24000 拼好的 prompt 上限
MAX_OUTPUT_TOKENS 96 生成上限
TIMEOUT_MS 45000 单次调用超时
MAX_TITLE_CHARS 24 标题硬截断
SYSTEM_PROMPT — 改风格/长度要求改这里

结构

index.js          Host 端:POST /api/ai-session-rename 生成标题 + session_rename_ai 工具
client.js         Client 端:右键菜单项、自有图标、生成中/失败提示
cordis.patch.yml  把插件插进 Loader
locale/*.json     插件列表里的名称与描述(en / zh)
docs/DETAIL.md    插件详情页文档
icon.svg          插件图标

两个入口共用 generateTitle(),标题逻辑不重复实现。写入交给内置 remote.session.rename(会恢复冷会话、校验标题、更新投影),自己再写一遍只会多一条不一致的路径。

已知限制

  • 生成失败时不会自动重试。
  • 会话里一条用户消息都没有时无法命名。
  • 会话没记录模型路由、也没配置默认模型时会明确报错。

License

MIT

—/ 5

No ratings yet

Verified DSH bundle

Commit d2a46aca193a

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout