@kirkchinese/dsh-citeciter 0.9.0-beta.2 → 0.9.0-beta.3

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.
Files changed (37) hide show
  1. package/README.md +11 -8
  2. package/README.zh.md +11 -8
  3. package/lib/client.js +2175 -2344
  4. package/lib/index.js +1546 -307
  5. package/lib/{typert-common-g1lnIG8u.js → typert-common-B3cX-hWj.js} +1 -1
  6. package/lib/typert.host.js +2 -2
  7. package/lib/typert.remote-client.js +1 -1
  8. package/lib/types/actions.d.ts +7 -0
  9. package/lib/types/blackboard-tool.d.ts +6 -0
  10. package/lib/types/board-animation.d.ts +278 -0
  11. package/lib/types/board-capture-protocol.d.ts +61 -1
  12. package/lib/types/board-capture.d.ts +2 -0
  13. package/lib/types/board.d.ts +62 -3
  14. package/lib/types/client/board-timeline.d.ts +30 -0
  15. package/lib/types/client/companion-controller.d.ts +1 -1
  16. package/lib/types/client/components/BoardCaptureSurface.d.ts +3 -1
  17. package/lib/types/client/components/BoardView.d.ts +3 -1
  18. package/lib/types/client/components/PermissionControl.d.ts +1 -1
  19. package/lib/types/client/components/TopicActions.d.ts +1 -1
  20. package/lib/types/client/components/TopicModelControls.d.ts +1 -1
  21. package/lib/types/host-agent-modules.d.ts +4 -1
  22. package/lib/types/line-diff.d.ts +12 -0
  23. package/lib/types/message-projection.d.ts +1 -0
  24. package/lib/types/observer.d.ts +0 -30
  25. package/lib/types/source-read-tool.d.ts +3 -3
  26. package/lib/types/source-session.d.ts +3 -0
  27. package/lib/types/source-transcript.d.ts +58 -0
  28. package/lib/types/topic-context.d.ts +74 -0
  29. package/lib/types/topic-log.d.ts +2 -0
  30. package/lib/types/topic-runtime.d.ts +4 -0
  31. package/lib/types/topic.d.ts +198 -14
  32. package/lib/types/typert-common.d.ts +124 -5
  33. package/lib/types/typert.host.d.ts +311 -14
  34. package/lib/types/workspace-changes.d.ts +90 -0
  35. package/lib/{update-B_0nN1_f.js → update-CGteMuNJ.js} +651 -4
  36. package/package.json +62 -64
  37. package/lib/types/client/components/ChoicePopover.d.ts +0 -8
package/README.md CHANGED
@@ -1,14 +1,14 @@
1
1
  # CiteCiter
2
2
 
3
- [简体中文](README.zh.md) · [npm](https://www.npmjs.com/package/@kirkchinese/dsh-citeciter) · [Changelog](https://github.com/kirkchinese/CiteCiter/blob/v0.9.0-beta.2/CHANGELOG.md) · [Issues](https://github.com/kirkchinese/CiteCiter/issues)
3
+ [简体中文](README.zh.md) · [npm](https://www.npmjs.com/package/@kirkchinese/dsh-citeciter) · [Changelog](https://github.com/kirkchinese/CiteCiter/blob/v0.9.0-beta.3/CHANGELOG.md) · [Issues](https://github.com/kirkchinese/CiteCiter/issues)
4
4
 
5
- ![CiteCiter](https://raw.githubusercontent.com/kirkchinese/CiteCiter/v0.9.0-beta.2/assets/hero/citeciter-hero.png)
5
+ ![CiteCiter](https://raw.githubusercontent.com/kirkchinese/CiteCiter/v0.9.0-beta.3/assets/hero/citeciter-hero.png)
6
6
 
7
7
  **The AI finished the task. I still want to understand how it did it.**
8
8
 
9
9
  CiteCiter is a [DeepSeek Harness (DSH)](https://github.com/deepseek-ai/deepseek-harness) plugin that helps you learn from your agent's real work. Select part of a conversation, a tool result or a document, ask about it in a separate Topic that keeps its source, use a blackboard to see how the pieces relate, then return to your work. The main conversation is never modified.
10
10
 
11
- [![CiteCiter demo](https://raw.githubusercontent.com/kirkchinese/CiteCiter/v0.9.0-beta.2/assets/docs/video-cover.png)](https://www.bilibili.com/video/BV1tqeA65EJ8/)
11
+ [![CiteCiter demo](https://raw.githubusercontent.com/kirkchinese/CiteCiter/v0.9.0-beta.3/assets/docs/video-cover.png)](https://www.bilibili.com/video/BV1tqeA65EJ8/)
12
12
 
13
13
  [Watch the demo on Bilibili](https://www.bilibili.com/video/BV1tqeA65EJ8/) (recorded with an earlier version; the interface has changed slightly).
14
14
 
@@ -18,7 +18,7 @@ CiteCiter needs DSH and a working model. The plugin declares exact host versions
18
18
 
19
19
  | DSH version | CiteCiter version |
20
20
  | --- | --- |
21
- | `0.2.0-rc.2` (including the official Desktop), `0.2.1-alpha.1`, `0.2.1-alpha.2` | `0.9.0-beta.2` |
21
+ | `0.2.0-rc.2` (including the official Desktop), `0.2.1-alpha.1` through `0.2.1-alpha.5`, `0.2.1-rc.1`, `0.2.1-rc.2` | `0.9.0-beta.3` |
22
22
  | `0.1.7-rc.2` | `0.9.0-alpha.3` |
23
23
  | `0.1.5-rc.1` | `0.8.2` |
24
24
  | `0.1.2-rc.1` | `0.6.0` |
@@ -28,13 +28,13 @@ CiteCiter needs DSH and a working model. The plugin declares exact host versions
28
28
  **CLI and Web:**
29
29
 
30
30
  ```sh
31
- dsh plugin --profile web add @kirkchinese/dsh-citeciter@0.9.0-beta.2
31
+ dsh plugin --profile web add @kirkchinese/dsh-citeciter@0.9.0-beta.3
32
32
  ```
33
33
 
34
34
  You can also install a release tag straight from the repository, which contains the built plugin, so nothing is built at install time:
35
35
 
36
36
  ```sh
37
- dsh plugin --profile web add "git+https://github.com/kirkchinese/CiteCiter.git#v0.9.0-beta.2"
37
+ dsh plugin --profile web add "git+https://github.com/kirkchinese/CiteCiter.git#v0.9.0-beta.3"
38
38
  ```
39
39
 
40
40
  Restart DSH and refresh the page after installing or upgrading. Do not use `dsh plugin allow-version` to force a plugin that does not match your host version. Do not run two host processes on the same DSH home.
@@ -55,7 +55,7 @@ Creating a Topic or choosing 提问 only prepares a draft; preset actions such a
55
55
  | You want to | CiteCiter provides |
56
56
  | --- | --- |
57
57
  | Understand an answer, code or tool result | A separate Topic with a source citation; follow-ups never touch the main conversation |
58
- | See relationships and processes | A blackboard with Markdown, formulas, tables, SVG, images and sandboxed HTML; vision models can inspect the rendered board and fix it |
58
+ | See relationships and processes | A blackboard with Markdown, formulas, tables, SVG, images and sandboxed HTML; vision models can inspect the rendered board and fix it; board elements can be animated with keyframes, paths or formulas, and you can play, pause, scrub and step through the animation |
59
59
  | Keep what you learned | Learning cards you can export and revise, with prose and code examples shown separately |
60
60
  | Discuss real files | File and image attachments, a `.txt` / `.md` document reader, and a "CiteCiter 学习" entry in native file previews |
61
61
  | Act on what you understood | DSH models, tools, approvals, permissions, queueing and steering; new Topics are read-only by default |
@@ -71,6 +71,8 @@ Creating a Topic or choosing 提问 only prepares a draft; preset actions such a
71
71
 
72
72
  **Drafts.** Drafts save silently in the background. Edits to the same Topic from several windows merge automatically; where they overlap, the window you are typing in wins. After a successful send, only what was sent is cleared, and anything written meanwhile is kept.
73
73
 
74
+ **Source and codebase.** Citer reads the source conversation when it needs to, as a transcript of user and assistant messages, tool calls and results, each marked with its position; long tool output is shortened first and read in full only when needed. Turn on 自动附上来源摘录 (automatic source excerpt) in Settings to add the source's newest records at the start of each turn after the source attachment has been sent; it is off by default. 代码库变化感知 (codebase change awareness) lists, at the start of each turn, the files that changed in the git working tree since Citer's previous turn, uncommitted changes included; Citer reads line-level diffs with a tool when they matter. Settings can attach the diffs directly or turn the notice off. Both are recorded in the Topic log, and your repository is never written.
75
+
74
76
  **Learning route and cards.** The learning route is off by default and can be turned on in the Topic menu (⋯); when on, the model plans its explanation with DSH todos. You can ask for learning cards at any time; the model checks conclusions, conditions and calculations first, but self-checking does not guarantee correctness. Active recall is off by default; when on, cards show their self-test question first.
75
77
 
76
78
  **Codex Connect.** CiteCiter is adapted to the community plugin [Codex Connect](https://github.com/franksong2702/dsh-codex-connect) (`dsh-codex-connect`). With it installed and enabled in the same profile, Topics can use its ChatGPT / Codex models and GPT Image tools, and generated images appear under the tool card. Its image tools are enabled separately in Codex Connect's settings; see its documentation for installation, sign-in and supported DSH versions.
@@ -92,6 +94,7 @@ CiteCiter stores its data in each source session's directory:
92
94
  │ ├── topic.json Topic information
93
95
  │ ├── draft/ unsent text, references and attachments
94
96
  │ ├── question-drafts/ unsubmitted question answers
97
+ │ ├── workspace/ codebase snapshots for change awareness (separate git objects)
95
98
  │ └── sessions/ the Topic's own session log
96
99
  └── deleted/ deletion records (identity only, no content)
97
100
  ```
@@ -115,6 +118,6 @@ CiteCiter turns real AI work into material you can cite, question and check. Sta
115
118
 
116
119
  Bring a task where "the agent finished, but I still can't explain it" to the [issue tracker](https://github.com/kirkchinese/CiteCiter/issues). Include your DSH and plugin versions and whether you got stuck installing, citing and asking, or understanding the answer. Remove keys and private content before pasting material.
117
120
 
118
- See [CONTRIBUTING.md](https://github.com/kirkchinese/CiteCiter/blob/v0.9.0-beta.2/CONTRIBUTING.md) for development and [docs/product.zh.md](https://github.com/kirkchinese/CiteCiter/blob/v0.9.0-beta.2/docs/product.zh.md) (Chinese) for the product rules. [Claude2DSH](https://github.com/kirkchinese/claude2dsh), by the same author, migrates sessions and assets between Claude Code and DSH.
121
+ See [CONTRIBUTING.md](https://github.com/kirkchinese/CiteCiter/blob/v0.9.0-beta.3/CONTRIBUTING.md) for development and [docs/product.zh.md](https://github.com/kirkchinese/CiteCiter/blob/v0.9.0-beta.3/docs/product.zh.md) (Chinese) for the product rules. [Claude2DSH](https://github.com/kirkchinese/claude2dsh), by the same author, migrates sessions and assets between Claude Code and DSH.
119
122
 
120
123
  MIT License.
package/README.zh.md CHANGED
@@ -1,14 +1,14 @@
1
1
  # CiteCiter
2
2
 
3
- [English](README.md) · [npm](https://www.npmjs.com/package/@kirkchinese/dsh-citeciter) · [更新记录](https://github.com/kirkchinese/CiteCiter/blob/v0.9.0-beta.2/CHANGELOG.md) · [问题反馈](https://github.com/kirkchinese/CiteCiter/issues)
3
+ [English](README.md) · [npm](https://www.npmjs.com/package/@kirkchinese/dsh-citeciter) · [更新记录](https://github.com/kirkchinese/CiteCiter/blob/v0.9.0-beta.3/CHANGELOG.md) · [问题反馈](https://github.com/kirkchinese/CiteCiter/issues)
4
4
 
5
- ![CiteCiter](https://raw.githubusercontent.com/kirkchinese/CiteCiter/v0.9.0-beta.2/assets/hero/citeciter-hero.png)
5
+ ![CiteCiter](https://raw.githubusercontent.com/kirkchinese/CiteCiter/v0.9.0-beta.3/assets/hero/citeciter-hero.png)
6
6
 
7
7
  **AI 已经完成了任务,我还想弄明白它是怎么做的。**
8
8
 
9
9
  CiteCiter 是 [DeepSeek Harness(DSH)](https://github.com/deepseek-ai/deepseek-harness) 的插件,帮助你从 Agent 的真实工作中学习。选中对话、工具结果或文档中的一段内容,在保留来源的独立 Topic 里追问,用小黑板理解关键关系,再回到原来的工作。主对话不会被改动。
10
10
 
11
- [![CiteCiter 演示](https://raw.githubusercontent.com/kirkchinese/CiteCiter/v0.9.0-beta.2/assets/docs/video-cover.png)](https://www.bilibili.com/video/BV1tqeA65EJ8/)
11
+ [![CiteCiter 演示](https://raw.githubusercontent.com/kirkchinese/CiteCiter/v0.9.0-beta.3/assets/docs/video-cover.png)](https://www.bilibili.com/video/BV1tqeA65EJ8/)
12
12
 
13
13
  [在 B 站观看演示](https://www.bilibili.com/video/BV1tqeA65EJ8/)(早期版本录制,界面与当前版本略有不同)。
14
14
 
@@ -18,7 +18,7 @@ CiteCiter 需要 DSH 和一个可用的模型。插件声明了精确的宿主
18
18
 
19
19
  | DSH 版本 | CiteCiter 版本 |
20
20
  | --- | --- |
21
- | `0.2.0-rc.2`(含官方桌面版)、`0.2.1-alpha.1`、`0.2.1-alpha.2` | `0.9.0-beta.2` |
21
+ | `0.2.0-rc.2`(含官方桌面版)、`0.2.1-alpha.1` 至 `0.2.1-alpha.5`、`0.2.1-rc.1`、`0.2.1-rc.2` | `0.9.0-beta.3` |
22
22
  | `0.1.7-rc.2` | `0.9.0-alpha.3` |
23
23
  | `0.1.5-rc.1` | `0.8.2` |
24
24
  | `0.1.2-rc.1` | `0.6.0` |
@@ -28,13 +28,13 @@ CiteCiter 需要 DSH 和一个可用的模型。插件声明了精确的宿主
28
28
  **命令行与 Web:**
29
29
 
30
30
  ```sh
31
- dsh plugin --profile web add @kirkchinese/dsh-citeciter@0.9.0-beta.2
31
+ dsh plugin --profile web add @kirkchinese/dsh-citeciter@0.9.0-beta.3
32
32
  ```
33
33
 
34
34
  也可以从仓库安装某个发布标签,仓库内已包含构建好的插件,安装时无需构建:
35
35
 
36
36
  ```sh
37
- dsh plugin --profile web add "git+https://github.com/kirkchinese/CiteCiter.git#v0.9.0-beta.2"
37
+ dsh plugin --profile web add "git+https://github.com/kirkchinese/CiteCiter.git#v0.9.0-beta.3"
38
38
  ```
39
39
 
40
40
  安装或升级后重启 DSH 并刷新页面。不要用 `dsh plugin allow-version` 强行加载与宿主版本不匹配的插件。同一个 DSH 主目录不要同时运行两个宿主进程。
@@ -55,7 +55,7 @@ dsh plugin --profile web add "git+https://github.com/kirkchinese/CiteCiter.git#v
55
55
  | 你想做什么 | CiteCiter 提供什么 |
56
56
  | --- | --- |
57
57
  | 理解一段回答、代码或工具结果 | 带来源引用的独立 Topic,追问不会写入主对话 |
58
- | 看懂关系与过程 | 支持 Markdown、公式、表格、SVG、图片和隔离 HTML 的小黑板;支持视觉的模型可以查看渲染后的板书并自行修正 |
58
+ | 看懂关系与过程 | 支持 Markdown、公式、表格、SVG、图片和隔离 HTML 的小黑板;支持视觉的模型可以查看渲染后的板书并自行修正;板书还能编排动画,元素按关键帧、路径或公式运动,可以播放、暂停、拖动进度和按步骤跳转 |
59
59
  | 留下可回看的理解 | 可导出、可修订的学习卡,文字与代码示例分开展示 |
60
60
  | 围绕真实文件讨论 | 文件与图片附件、`.txt` / `.md` 文档阅读器、原生文件预览中的"CiteCiter 学习"入口 |
61
61
  | 从理解继续动手 | 复用 DSH 的模型、工具、审批、权限、排队和插话;新 Topic 默认只读 |
@@ -71,6 +71,8 @@ dsh plugin --profile web add "git+https://github.com/kirkchinese/CiteCiter.git#v
71
71
 
72
72
  **草稿。** 草稿在后台静默保存。多个窗口编辑同一个 Topic 时,各自的修改会自动合并;同一处有冲突时,以正在输入的窗口为准。发送成功后只清除已发送的部分,发送期间新写的内容会保留。
73
73
 
74
+ **来源与代码库。** Citer 在需要时读取来源对话,看到的是带位置标记的对话记录:用户与助手的消息、工具调用和结果;过长的工具输出先缩短,需要时再读全文。在设置中开启"自动附上来源摘录"后,来源附件发送之后每轮开头会附上来源最近的新内容,默认关闭。"代码库变化感知"在每轮开头列出上一轮以来 git 工作区(含未提交的改动)改了哪些文件,Citer 需要时再用工具读取逐行改动;也可以在设置中改为直接附上 diff,或者关闭。这些内容都记录在 Topic 里,不会写入你的仓库。
75
+
74
76
  **学习路线与学习卡。** 学习路线默认关闭,可以在 Topic 菜单(⋯)中开启;开启后,模型会根据问题用 DSH 待办安排讲解步骤。学习卡可以随时单独请求,生成前模型会核对结论、条件和计算,但自查不能保证正确。主动回忆默认关闭,开启后学习卡先显示自测问题。
75
77
 
76
78
  **Codex Connect。** CiteCiter 适配了社区插件 [Codex Connect](https://github.com/franksong2702/dsh-codex-connect)(`dsh-codex-connect`)。在同一个 Profile 中安装并开启它之后,Topic 可以使用它接入的 ChatGPT / Codex 模型和 GPT Image 图片工具,生成的图片直接显示在工具卡下方。图片工具需要在 Codex Connect 的设置中单独开启;它的安装、登录和支持的 DSH 版本请见该插件的说明。
@@ -92,6 +94,7 @@ CiteCiter 的数据保存在每个来源会话的目录中:
92
94
  │ ├── topic.json Topic 信息
93
95
  │ ├── draft/ 未发送的文字、引用和附件
94
96
  │ ├── question-drafts/ 未提交的问答
97
+ │ ├── workspace/ 代码库变化感知的快照(独立的 git 对象)
95
98
  │ └── sessions/ Topic 自己的会话日志
96
99
  └── deleted/ 删除记录(只含身份,不含内容)
97
100
  ```
@@ -115,6 +118,6 @@ CiteCiter 尝试把真实的 AI 工作过程变成可引用、可追问、可检
115
118
 
116
119
  欢迎带着"Agent 已经完成了,但我还讲不清"的任务来[反馈](https://github.com/kirkchinese/CiteCiter/issues)。请写明 DSH 和插件版本,以及卡在安装、引用追问还是理解回答。贴材料前请移除密钥和私人内容。
117
120
 
118
- 开发说明见 [CONTRIBUTING.zh.md](https://github.com/kirkchinese/CiteCiter/blob/v0.9.0-beta.2/CONTRIBUTING.zh.md),产品规则见 [docs/product.zh.md](https://github.com/kirkchinese/CiteCiter/blob/v0.9.0-beta.2/docs/product.zh.md)。同作者的 [Claude2DSH](https://github.com/kirkchinese/claude2dsh) 用于在 Claude Code 与 DSH 之间迁移会话和资产。
121
+ 开发说明见 [CONTRIBUTING.zh.md](https://github.com/kirkchinese/CiteCiter/blob/v0.9.0-beta.3/CONTRIBUTING.zh.md),产品规则见 [docs/product.zh.md](https://github.com/kirkchinese/CiteCiter/blob/v0.9.0-beta.3/docs/product.zh.md)。同作者的 [Claude2DSH](https://github.com/kirkchinese/claude2dsh) 用于在 Claude Code 与 DSH 之间迁移会话和资产。
119
122
 
120
123
  MIT License.