dsh-soul 0.10.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -33,8 +33,12 @@ DeepSeek Harness 个性化设置插件,用于配置 Agent 的昵称、回复
33
33
  - Agent 可调用工具 `set_persona`,让模型在对话中直接调整人设
34
34
  - 人设预设:7 个内置人设(苏格拉底式提问者 / 极简主义者 / 资深架构师 / 教学型讲解者 / 严格代码审阅者 / 头脑风暴伙伴 / 自驱型协作者,随插件提供、不可删除)+ 多套自建人设一键切换(保存 / 使用 / 列表 / 删除,Web UI 与命令双入口);每行摘要显示风格与偏离默认的维度
35
35
  - 预设只管 Agent 的人格:**切换预设不会动「关于你」**(昵称 / 职业 / 介绍是你本人的资料,与「Agent 怎么说话」是两码事)。内置与自建一视同仁——保存预设时只快照风格 / 特质 / 回复长度 / 输出语言 / 自定义指令,不包含身份字段;早期版本存下的完整快照会在读取时自动剥离
36
- - **Soul 人设总览**(侧栏面板,默认开启):一屏看清「全局在用什么人设」,以及每个工作区 / 会话是否覆盖。三段结构:**当前生效**(可就地切换全局人设)·**工作区**(失效绑定就地改绑,展开后列出该工作区的会话)·**预设库**(只读清单,增删改仍在设置页)。会话行可直接点击跳到该会话;别的页面改了人设或绑定,面板自动刷新
36
+ - **Soul 人设总览**(侧栏面板,**默认关闭**,可在设置页「在侧边栏显示人设总览」打开;关闭时侧栏不占位置,仍可从设置页「打开人设总览」按钮进入):一屏看清「全局在用什么人设」,以及每个工作区 / 会话是否覆盖。三段结构:**当前生效**(可就地切换全局人设)·**工作区**(失效绑定就地改绑,展开后列出该工作区的会话)·**预设库**(只读清单,增删改仍在设置页)。会话行可直接点击跳到该会话;别的页面改了人设或绑定,面板自动刷新
37
37
  - 总览的会话口径与左侧栏一致:注册表成员 − 归档 − 子代理会话;「N 个会话」按同一口径统计,不把归档算进去。从未产生对话的**空会话**标为「(空会话 · 未开始对话)」并默认收起,末尾留一行开关可展开
38
+ - **引用作为上下文**(**默认关闭**;DSH 官方 `dsh-message-quotes` 已内置更合适的入口):在回答里选中一段文字 → 点「引用」,它作为**运行时上下文**随下一轮请求送达模型 —— 不进你的消息正文,也不写进对话历史
39
+ - **为什么默认关闭**:官方自带「消息引用」功能,交互入口与本项完全相同,但引用会插入输入框、成为可见可编辑的 Markdown 引用块,形态更符合预期。本项只给「引用不该进正文」的场景用,默认不抢位置
40
+ - 开启后,发送过的消息上方留一枚「N 个已选文本片段」胶囊,hover 显示引用原文;胶囊按**消息唯一 id** 绑定,不随轮次迁移、也不会被后续消息顶掉
41
+ - 排队消息不带引用:队列项减少时引用立即失效 —— 它只属于你按发送的那一条
38
42
  - `set_persona` 确认模式(`requireToolConfirmation`):Agent 的人设修改先在输入框处弹出**宿主原生审批面板**,由你点「允许一次」或「拒绝」(`Enter` 允许 / `Esc` 拒绝)后才会生效;审批通道不可用时(如会话审批策略为 `never`)退化为待确认提议,需 `/soul confirm` 处理
39
43
  - 输入框光轨:Agent 回复中时,输入框边框显示沿边循环流动的光轨(默认颜色 `#679EFE`)
40
44
  - 颜色:预设色板、取色器或十六进制输入(如 `#679EFE`)
package/README_EN.md CHANGED
@@ -33,8 +33,12 @@ A personalization plugin for DeepSeek Harness (DSH). Configure your agent's nick
33
33
  - Agent-callable tool `set_persona` to let the model adjust persona during a conversation
34
34
  - Named personas: 7 built-in personas (Socratic Questioner / Minimalist / Senior Architect / Teaching Explainer / Strict Code Reviewer / Brainstorm Partner / Self-Driven Collaborator — shipped with the plugin, cannot be deleted) plus your own named personas, switched with one click (save / use / list / delete, in both the Web UI and slash commands); each row summarises the style and every dimension that differs from its default
35
35
  - Personas cover the **agent's personality only**: switching a persona never touches **"About you"** (nickname / occupation / bio describe *you*, not how the agent talks). Built-in and self-saved personas behave identically — saving a persona snapshots style / traits / reply length / reply language / custom instructions, never the identity fields; full-config snapshots written by earlier versions are stripped on read
36
- - **Soul persona overview** (sidebar panel, enabled by default): see at a glance which persona is active globally, and whether each workspace / session overrides it. Three blocks: **Current** (switch the global persona in place) · **Workspaces** (rebind a broken binding in place; expand to list that workspace's sessions) · **Presets** (read-only list; add/edit/delete stays in Settings). Click a session row to jump straight to that session; the panel refreshes automatically when persona or bindings change elsewhere
36
+ - **Soul persona overview** (sidebar panel, **off by default** — turn it on in Settings → "Show persona overview in sidebar"; while off it takes no sidebar space, and the "Open persona overview" button still opens it): see at a glance which persona is active globally, and whether each workspace / session overrides it. Three blocks: **Current** (switch the global persona in place) · **Workspaces** (rebind a broken binding in place; expand to list that workspace's sessions) · **Presets** (read-only list; add/edit/delete stays in Settings). Click a session row to jump straight to that session; the panel refreshes automatically when persona or bindings change elsewhere
37
37
  - The overview uses the same session scope as the sidebar: registry members − archived − subagent sessions, and the "N sessions" count follows the same rule (archived ones excluded). Sessions that never had a conversation are labelled "(empty session · no conversation yet)" and collapsed by default, with a toggle to show them
38
+ - **Quote as context** (**off by default**; DSH already ships a better entry point, `dsh-message-quotes`): select text in a reply → **Quote**, and it is delivered to the model as **runtime context** with your next request — it never enters your message body or the chat history
39
+ - **Why off by default**: the official "message quotes" feature has the identical entry point but inserts the quote into the composer as a visible, editable Markdown blockquote, which is the expected shape. This option only serves the "quote must not enter the message" case, so it does not take up the default position
40
+ - When on, a "N quoted passage(s)" pill appears above the message that carried the quotes; hover to read the original text. Pills bind to the **unique message id**, so they never drift to later turns or get replaced
41
+ - Queued messages carry no quotes: the quotes expire as soon as the queue shrinks — they belong only to the message you actually sent
38
42
  - `set_persona` confirmation mode (`requireToolConfirmation`): agent persona changes first raise the **host's native approval panel** above the composer, taking effect only after you click "Allow once" or "Reject" (`Enter` allows, `Esc` rejects); when the approval channel is unavailable (e.g. the session approval policy is `never`) it degrades to a pending proposal handled with `/soul confirm`
39
43
  - Composer light trail: while the agent is replying, a light trail loops around the composer border (default color `#679EFE`)
40
44
  - Color: preset swatches, a color picker, or a hex input (e.g. `#679EFE`)