@kirkchinese/dsh-citeciter 0.4.0 → 0.4.2
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 +52 -34
- package/README.zh.md +52 -34
- package/lib/client.js +646 -151
- package/lib/index.js +492 -110
- package/lib/{topic-DByv84H6.js → topic-BVNCaVbJ.js} +1 -0
- package/lib/{typert-common-Bvx1k2cq.js → typert-common-4_cbghYz.js} +3 -2
- package/lib/typert.host.js +2 -2
- package/lib/typert.remote-client.js +1 -1
- package/lib/types/client/companion-controller.d.ts +6 -4
- package/lib/types/client/components/CiteCiterSettings.d.ts +3 -1
- package/lib/types/client/components/CitePanel.d.ts +1 -1
- package/lib/types/client/conversation-dom.d.ts +72 -0
- package/lib/types/client/prompt.d.ts +7 -2
- package/lib/types/client/request-guard.d.ts +26 -0
- package/lib/types/client/selection.d.ts +8 -0
- package/lib/types/client/settings-document.d.ts +21 -0
- package/lib/types/index.d.ts +1 -1
- package/lib/types/topic-runtime.d.ts +39 -2
- package/lib/types/topic.d.ts +1 -0
- package/lib/types/typert-common.d.ts +5 -1
- package/lib/types/typert.host.d.ts +6 -1
- package/lib/types/typert.remote-client.d.ts +1 -1
- package/package.json +27 -24
- package/lib/types/client/citation.d.ts +0 -10
package/README.md
CHANGED
|
@@ -1,50 +1,41 @@
|
|
|
1
1
|
# `@kirkchinese/dsh-citeciter`
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Investigate any line in a DSH response—without stopping the Agent or changing the source Session. CiteCiter provides verifiable, source-bound, read-only side investigations for interactive DSH.
|
|
4
4
|
|
|
5
|
-

|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
## Compatibility
|
|
10
|
-
|
|
11
|
-
| Host | CiteCiter version | Status |
|
|
12
|
-
|---|---|---|
|
|
13
|
-
| DSH Web `0.1.1-rc.2` | `0.4.x` | Fully verified |
|
|
14
|
-
| [dataelement DSH Desktop](https://github.com/dataelement/dsh-desktop) development shell with DSH `0.1.1-rc.1` | `0.4.x` | Linux source-shell verified; not a macOS/Windows installer claim |
|
|
15
|
-
| DSH Web `0.1.0-rc.7` | `0.3.2` | Previous stable line |
|
|
16
|
-
| DSH TUI | — | Not supported yet |
|
|
17
|
-
|
|
18
|
-
## Install
|
|
7
|
+
*Select, right-click, and investigate beside the source while the main Agent keeps working.*
|
|
19
8
|
|
|
20
|
-
|
|
9
|
+
[简体中文](README.zh.md) · [GitHub](https://github.com/kirkchinese/CiteCiter) · [Issues](https://github.com/kirkchinese/CiteCiter/issues)
|
|
21
10
|
|
|
22
|
-
|
|
23
|
-
dsh plugin --profile web add @kirkchinese/dsh-citeciter@0.4.0
|
|
24
|
-
```
|
|
11
|
+
## Highlights
|
|
25
12
|
|
|
26
|
-
|
|
13
|
+
- **Exact source binding.** CiteCiter rechecks the visible selection against the committed response before creating a Topic.
|
|
14
|
+
- **No need to wait.** A committed model response can be investigated while the surrounding Agent turn continues.
|
|
15
|
+
- **Durable investigations.** Private Topics support natural follow-up questions and reopen after a refresh or restart.
|
|
16
|
+
- **Evidence with no write access.** CiteCiter can inspect committed source events and search or read project files, but cannot change the source Session or workspace.
|
|
17
|
+
- **Inspectable work.** Questions, answers, source reads, and project-file checks remain together in the investigation panel.
|
|
18
|
+
- **Side-by-side workflow.** The conversation concedes space whenever the panel and a usable conversation fit; tighter layouts fall back to an overlay.
|
|
27
19
|
|
|
28
20
|
## Use
|
|
29
21
|
|
|
30
22
|
1. Select text inside a committed assistant model call. The surrounding Agent turn may still be running.
|
|
31
23
|
2. Right-click the selection, enter your first question, and choose `Citer!`.
|
|
32
|
-
3. CiteCiter creates a new Topic in the
|
|
24
|
+
3. CiteCiter creates a new Topic in the investigation panel.
|
|
33
25
|
4. Continue asking questions there, or reopen an earlier Topic from CiteCiter's Topic rail.
|
|
34
|
-
5. Change the Topic model, reasoning effort, title, archive state, or
|
|
26
|
+
5. Change the Topic model, reasoning effort, title, archive state, or panel width without changing the source Session.
|
|
35
27
|
|
|
36
|
-
##
|
|
28
|
+
## Install v0.4.2
|
|
29
|
+
|
|
30
|
+
CiteCiter 0.4.2 requires Node.js `^22.19.0 || >=24.0.0` and DSH `>=0.1.1-rc.1 <0.1.1-rc.3`.
|
|
31
|
+
|
|
32
|
+
For DSH Web:
|
|
37
33
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
- **Open-ended investigation.** The standard read-only `glob` and `grep` tools discover project files and search their contents before `read` opens a known path.
|
|
44
|
-
- **Read-only operation.** CiteCiter cannot write to the source Session or source workspace.
|
|
45
|
-
- **Inspectable workflow.** Live reasoning, prompt injections, tool calls, results, and user questions use compact expandable rows inside the learning dock.
|
|
46
|
-
- **Natural follow-ups.** After the first answer, the model may emit three strictly formatted next questions; malformed output creates no shortcuts and is logged silently.
|
|
47
|
-
- **Native workflow.** The selection popover, resizable learning dock, active/archive Topic navigation, and settings remain inside the DSH programming interface.
|
|
34
|
+
```sh
|
|
35
|
+
dsh plugin --profile web add @kirkchinese/dsh-citeciter@0.4.2
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Restart DSH Web and refresh the page. Packaged Desktop adaptation is deferred; CiteCiter 0.4.2 does not provide a supported Desktop installation path.
|
|
48
39
|
|
|
49
40
|
## Context modes
|
|
50
41
|
|
|
@@ -52,13 +43,29 @@ Observer is the default. It creates an independent Topic and reads committed sou
|
|
|
52
43
|
|
|
53
44
|
Exact Fork is an advanced mode for a source turn that has already ended. `exact-when-available` uses Exact Fork when a stable boundary exists and otherwise falls back to Observer.
|
|
54
45
|
|
|
46
|
+
## Compatibility and verification
|
|
47
|
+
|
|
48
|
+
| Host | CiteCiter version | Status |
|
|
49
|
+
|---|---|---|
|
|
50
|
+
| DSH Web `0.1.1-rc.2` | `0.4.2` | Linux package, regression tests, and real-browser selection checks passed; real-provider acceptance was not run |
|
|
51
|
+
| [DSH Desktop 2.0.2](https://github.com/anywhere-labs/deepseek-harness-desktop) with bundled DSH `0.1.1-rc.2` | Future target | Adaptation and native acceptance are deferred; no packaged-Desktop compatibility claim |
|
|
52
|
+
| [dataelement DSH Desktop](https://github.com/dataelement/dsh-desktop) development shell with DSH `0.1.1-rc.1` | `0.4.0` only | Historical conditional Linux source-shell evidence |
|
|
53
|
+
| DSH Web `0.1.0-rc.7` | `0.3.2` | Previous stable line |
|
|
54
|
+
| DSH TUI | — | Not supported yet |
|
|
55
|
+
|
|
56
|
+
The demo uses a deterministic fixture to show the workflow; it is not real-provider or packaged-Desktop acceptance evidence.
|
|
57
|
+
|
|
55
58
|
## Upgrade from an earlier version
|
|
56
59
|
|
|
60
|
+
To install or upgrade v0.4.2 in Web:
|
|
61
|
+
|
|
57
62
|
```sh
|
|
58
|
-
dsh plugin --profile web add @kirkchinese/dsh-citeciter@0.4.
|
|
63
|
+
dsh plugin --profile web add @kirkchinese/dsh-citeciter@0.4.2
|
|
59
64
|
dsh plugin --profile web list --depth 0
|
|
60
65
|
```
|
|
61
66
|
|
|
67
|
+
Packaged Desktop adaptation is deferred and is not part of the supported 0.4.2 upgrade path.
|
|
68
|
+
|
|
62
69
|
Upgrading from v0.3 does not migrate or rewrite existing Topics, settings, or source Sessions. Users remaining on DSH `0.1.0-rc.7` should keep CiteCiter 0.3.2.
|
|
63
70
|
|
|
64
71
|
## Limitations
|
|
@@ -67,10 +74,21 @@ Upgrading from v0.3 does not migrate or rewrite existing Topics, settings, or so
|
|
|
67
74
|
- Renderer-generated KaTeX layout and footnote numbers cannot be cited directly because they lack stable source coordinates.
|
|
68
75
|
- Exact Fork cannot start from an open source turn.
|
|
69
76
|
- Source-file access depends on the running DSH filesystem service and remains read-only.
|
|
70
|
-
-
|
|
77
|
+
- Read Frog translated selections are a best-effort compatibility path on DSH rc.1/rc.2 and activate only when its complete private marker set is present; ordinary DSH selection does not depend on Read Frog.
|
|
78
|
+
- DSH does not yet expose a public additive right-dock contribution point. CiteCiter therefore uses a reversible private AppFrame grid adapter whenever the panel and conversation fit; it preserves the layout's details preference but temporarily hides that column while the investigation panel is open, and it must be retested for every supported DSH release.
|
|
79
|
+
- Topics are Host-durable. When Desktop restarts on a different loopback port, CiteCiter falls back to the most recently updated Topic because browser local storage is origin-scoped; configure a fixed Desktop port to restore the exact last-viewed Topic.
|
|
80
|
+
- CiteCiter 0.4.2 makes no packaged-Desktop compatibility claim; native Windows and macOS adaptation continues separately.
|
|
71
81
|
- There is currently no TUI interaction adapter.
|
|
72
82
|
- DSH is prerelease software; later DSH API versions may require a CiteCiter update.
|
|
73
83
|
|
|
84
|
+
## Community
|
|
85
|
+
|
|
86
|
+
Questions, workflow ideas, and compatibility reports are welcome in the DSH-Citeciter QQ group (`1108040435`).
|
|
87
|
+
|
|
88
|
+
<p align="center">
|
|
89
|
+
<img src="https://raw.githubusercontent.com/kirkchinese/CiteCiter/main/assets/community/qq-group.jpg" width="360" alt="QR code for the DSH-Citeciter QQ group 1108040435">
|
|
90
|
+
</p>
|
|
91
|
+
|
|
74
92
|
## Contributing
|
|
75
93
|
|
|
76
94
|
Issues and pull requests are welcome. Before submitting code, read the [contribution guide](https://github.com/kirkchinese/CiteCiter/blob/main/CONTRIBUTING.md).
|
package/README.zh.md
CHANGED
|
@@ -1,50 +1,41 @@
|
|
|
1
1
|
# `@kirkchinese/dsh-citeciter`
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
对 DSH 回复里的某一句追到底,不打断主 Agent,也不改变来源 Session。CiteCiter 为交互式 DSH 提供可核查、与来源精确绑定、只读的旁路调查。
|
|
4
4
|
|
|
5
|
-

|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
## 兼容性
|
|
10
|
-
|
|
11
|
-
| 宿主 | CiteCiter 版本 | 状态 |
|
|
12
|
-
|---|---|---|
|
|
13
|
-
| DSH Web `0.1.1-rc.2` | `0.4.x` | 完整验证 |
|
|
14
|
-
| [dataelement DSH Desktop](https://github.com/dataelement/dsh-desktop) 源码开发壳(内置 DSH `0.1.1-rc.1`) | `0.4.x` | Linux 源码壳验证;不代表 macOS/Windows 安装器实测 |
|
|
15
|
-
| DSH Web `0.1.0-rc.7` | `0.3.2` | 旧版稳定线 |
|
|
16
|
-
| DSH TUI | — | 暂不支持 |
|
|
17
|
-
|
|
18
|
-
## 安装
|
|
7
|
+
*划选、右键、就地调查;主 Agent 继续工作。*
|
|
19
8
|
|
|
20
|
-
|
|
9
|
+
[English](README.md) · [GitHub](https://github.com/kirkchinese/CiteCiter) · [问题反馈](https://github.com/kirkchinese/CiteCiter/issues)
|
|
21
10
|
|
|
22
|
-
|
|
23
|
-
dsh plugin --profile web add @kirkchinese/dsh-citeciter@0.4.0
|
|
24
|
-
```
|
|
11
|
+
## 核心能力
|
|
25
12
|
|
|
26
|
-
|
|
13
|
+
- **精确绑定来源。** 创建 Topic 前,CiteCiter 会把可见选区与已经提交的回答重新核对。
|
|
14
|
+
- **不用等待主任务。** 一次模型回答提交后即可开始调查,外层 Agent 轮次可以继续运行。
|
|
15
|
+
- **调查可以持续。** 私有 Topic 支持自然续问,刷新或重启后仍能重新打开。
|
|
16
|
+
- **有证据、无写权限。** CiteCiter 能检查来源中已提交的事件,也能搜索和阅读项目文件,但不能改变来源 Session 或工作区。
|
|
17
|
+
- **过程可检查。** 问题、回答、来源读取和项目文件核查都留在调查面板中。
|
|
18
|
+
- **并排工作流。** 面板和可用主对话能同时容纳时,主对话会自动让出空间;更紧的布局才回退为覆盖模式。
|
|
27
19
|
|
|
28
20
|
## 使用
|
|
29
21
|
|
|
30
22
|
1. 在一次已经提交的助手模型调用中选择文字;外层 Agent 轮次可以仍在运行。
|
|
31
23
|
2. 右键选区,输入第一个问题,然后点击 `Citer!`。
|
|
32
|
-
3. CiteCiter
|
|
24
|
+
3. CiteCiter 在调查面板中创建一个新 Topic。
|
|
33
25
|
4. 在 Topic 中继续追问,或从 CiteCiter 的 Topic 栏恢复旧讨论。
|
|
34
|
-
5.
|
|
26
|
+
5. 独立调整模型、思考强度、标题、归档状态和面板宽度,不改变来源 Session。
|
|
35
27
|
|
|
36
|
-
##
|
|
28
|
+
## 安装 v0.4.2
|
|
29
|
+
|
|
30
|
+
CiteCiter 0.4.2 需要 Node.js `^22.19.0 || >=24.0.0` 与 DSH `>=0.1.1-rc.1 <0.1.1-rc.3`。
|
|
31
|
+
|
|
32
|
+
DSH Web 使用:
|
|
37
33
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
- **开放式项目调查。** 标准只读 `glob` 与 `grep` 先发现项目文件并搜索内容,再由 `read` 打开已知路径。
|
|
44
|
-
- **只读运行。** CiteCiter 不能写入来源 Session 或来源工作区。
|
|
45
|
-
- **可检查的对话流程。** 实时思考、提示词注入、工具调用、结果和用户提问都在学习栏中以紧凑可展开行显示。
|
|
46
|
-
- **自然续问。** 第一轮回答完成后,模型可按严格格式给出三个后续问题;格式无效时前端不创建快捷入口,只记录日志。
|
|
47
|
-
- **原生工作流。** 选区浮层、可调宽学习栏、活动/归档 Topic 导航和设置都保留在 DSH 编程界面内。
|
|
34
|
+
```sh
|
|
35
|
+
dsh plugin --profile web add @kirkchinese/dsh-citeciter@0.4.2
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
安装后重启 DSH Web 并刷新页面。正式 Desktop 适配已经暂缓;CiteCiter 0.4.2 不提供受支持的 Desktop 安装路径。
|
|
48
39
|
|
|
49
40
|
## 上下文模式
|
|
50
41
|
|
|
@@ -52,13 +43,29 @@ Observer 是默认模式。它创建独立 Topic,并按需读取已经提交
|
|
|
52
43
|
|
|
53
44
|
Exact Fork 是面向已结束来源轮次的高级模式。`exact-when-available` 在存在稳定边界时使用 Exact Fork,否则回退到 Observer。
|
|
54
45
|
|
|
46
|
+
## 兼容性与验证
|
|
47
|
+
|
|
48
|
+
| 宿主 | CiteCiter 版本 | 状态 |
|
|
49
|
+
|---|---|---|
|
|
50
|
+
| DSH Web `0.1.1-rc.2` | `0.4.2` | Linux 包、回归测试与真实浏览器选区检查通过;真实提供方验收未运行 |
|
|
51
|
+
| [DSH Desktop 2.0.2](https://github.com/anywhere-labs/deepseek-harness-desktop)(内置 DSH `0.1.1-rc.2`) | 后续目标 | 适配与原生验收暂缓;不声明正式 Desktop 安装包兼容性 |
|
|
52
|
+
| [dataelement DSH Desktop](https://github.com/dataelement/dsh-desktop) 源码开发壳(内置 DSH `0.1.1-rc.1`) | 仅 `0.4.0` | 历史上的有条件 Linux 源码壳证据 |
|
|
53
|
+
| DSH Web `0.1.0-rc.7` | `0.3.2` | 旧版稳定线 |
|
|
54
|
+
| DSH TUI | — | 暂不支持 |
|
|
55
|
+
|
|
56
|
+
动图使用确定性测试场景展示交互,不作为真实提供方或正式 Desktop 安装包验收证据。
|
|
57
|
+
|
|
55
58
|
## 从旧版本升级
|
|
56
59
|
|
|
60
|
+
在 Web 安装或升级 v0.4.2:
|
|
61
|
+
|
|
57
62
|
```sh
|
|
58
|
-
dsh plugin --profile web add @kirkchinese/dsh-citeciter@0.4.
|
|
63
|
+
dsh plugin --profile web add @kirkchinese/dsh-citeciter@0.4.2
|
|
59
64
|
dsh plugin --profile web list --depth 0
|
|
60
65
|
```
|
|
61
66
|
|
|
67
|
+
正式 Desktop 适配已经暂缓,不属于 0.4.2 的受支持升级路径。
|
|
68
|
+
|
|
62
69
|
从 v0.3 升级不会迁移或重写现有 Topic、设置或来源 Session。仍在 DSH `0.1.0-rc.7` 上运行的用户应继续使用 CiteCiter 0.3.2。
|
|
63
70
|
|
|
64
71
|
## 已知限制
|
|
@@ -67,10 +74,21 @@ dsh plugin --profile web list --depth 0
|
|
|
67
74
|
- 渲染器生成的 KaTeX 排版和脚注编号没有稳定原文坐标,不能直接引用。
|
|
68
75
|
- Exact Fork 不能从仍在运行的来源轮次开始。
|
|
69
76
|
- 来源文件访问依赖当前 DSH 文件系统服务,并始终保持只读。
|
|
70
|
-
-
|
|
77
|
+
- Read Frog 翻译选区是 DSH rc.1/rc.2 上的 best-effort 兼容路径,仅在其完整私有标记同时存在时启用;普通 DSH 选区不依赖 Read Frog。
|
|
78
|
+
- DSH 尚未提供公开的增量右侧 dock 布局扩展点。CiteCiter 因此在面板与主对话能够同时容纳时使用可逆的私有 AppFrame grid 适配器;它保留布局的 details 偏好,但在调查面板打开期间临时隐藏该列,并且每个受支持的 DSH 版本都必须重新验证。
|
|
79
|
+
- Topic 由 Host 持久保存。Desktop 重启到不同 loopback 端口时,浏览器 localStorage 会因 origin 改变而失去精确指针,CiteCiter 将回退到最近更新的 Topic;需要精确恢复“上次查看”时应配置固定 Desktop 端口。
|
|
80
|
+
- CiteCiter 0.4.2 不声明正式 Desktop 安装包兼容性;Windows 与 macOS 原生适配将另行继续。
|
|
71
81
|
- 当前没有 TUI 交互适配器。
|
|
72
82
|
- DSH 仍处于预发布阶段,后续 API 版本可能要求同步更新 CiteCiter。
|
|
73
83
|
|
|
84
|
+
## 交流与反馈
|
|
85
|
+
|
|
86
|
+
欢迎加入 DSH-Citeciter QQ 群(群号 `1108040435`),交流使用方式、功能想法和兼容性问题。
|
|
87
|
+
|
|
88
|
+
<p align="center">
|
|
89
|
+
<img src="https://raw.githubusercontent.com/kirkchinese/CiteCiter/main/assets/community/qq-group.jpg" width="360" alt="DSH-Citeciter QQ 群 1108040435 二维码">
|
|
90
|
+
</p>
|
|
91
|
+
|
|
74
92
|
## 参与贡献
|
|
75
93
|
|
|
76
94
|
欢迎提交 Issue 和 Pull Request。提交代码前请阅读[贡献文档](https://github.com/kirkchinese/CiteCiter/blob/main/CONTRIBUTING.zh.md)。
|