dsh-reference-anything 0.2.5 → 0.3.1

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/NOTICE.md CHANGED
@@ -17,38 +17,9 @@ the MIT License. The adapted source paths are:
17
17
  OpenCLI is not redistributed by this package. It is an external runtime
18
18
  dependency licensed under Apache-2.0.
19
19
 
20
- ## dsh-at-file
20
+ ## DeepSeek Harness reference services
21
21
 
22
- Portions of the workspace file/folder autocomplete, path ranking, and
23
- existence-only reference implementation are adapted from `dsh-at-file`:
24
-
25
- - Upstream repository: https://github.com/omdsh-dev/dsh-at-file
26
- - Upstream revision: `898369ece56ae6ec41afd8e014f187bb5b723409`
27
- - Upstream license: MIT
28
-
29
- Copyright (c) 2026 dsh-at-file contributors
30
-
31
- Permission is hereby granted, free of charge, to any person obtaining a copy
32
- of this software and associated documentation files (the "Software"), to deal
33
- in the Software without restriction, including without limitation the rights
34
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
35
- copies of the Software, and to permit persons to whom the Software is
36
- furnished to do so, subject to the following conditions:
37
-
38
- The above copyright notice and this permission notice shall be included in all
39
- copies or substantial portions of the Software.
40
-
41
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
42
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
43
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
44
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
45
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
46
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
47
- SOFTWARE.
48
-
49
- ## DeepSeek Harness session reference
50
-
51
- Cross-session candidate listing, canonical `dsh-session:` references, and
52
- immutable snapshot preparation use the official DeepSeek Harness package
53
- `@deepseek-ai/dsh-session-reference`. That package remains an external/package
54
- dependency and is used under the DeepSeek Harness project's MIT license.
22
+ File candidate formatting and cross-session candidate types use the official
23
+ DeepSeek Harness packages `@deepseek-ai/dsh-file-reference` and
24
+ `@deepseek-ai/dsh-session-reference`. Those packages remain external package
25
+ dependencies and are used under the DeepSeek Harness project's MIT license.
package/README.md CHANGED
@@ -6,19 +6,20 @@
6
6
 
7
7
  <h1>dsh-reference-anything</h1>
8
8
 
9
- One `@` to reference them all.
9
+ One `@` for them all.
10
10
 
11
- **English** · [简体中文](./README_zh-CN.md) · [News](#news) · [Roadmap](#roadmap) · [Installation](#installation) · [Usage](#usage) · [Report Bug][github-issues-link]
11
+ **English** · [简体中文](./README_zh-CN.md) · [📰 News](#-news) · [🧭 Roadmap](#-roadmap) · [📦 Installation](#-installation) · [🚀 Usage](#-usage) · [🐛 Report Bug][github-issues-link]
12
12
 
13
13
  <!-- SHIELD GROUP -->
14
14
 
15
- [![][github-version-shield]][github-releases-link]
15
+ [![][github-version-shield]][github-version-link]
16
16
  [![][typescript-shield]][typescript-link]
17
17
  [![][dsh-plugin-shield]][repository-link]<br/>
18
18
  [![][github-stars-shield]][github-stars-link]
19
19
  [![][github-forks-shield]][github-forks-link]
20
20
  [![][github-issues-shield]][github-issues-link]
21
- [![][github-license-shield]][github-license-link]
21
+ [![][github-license-shield]][github-license-link]<br/>
22
+ ![awesome · DSH plugin](https://awesome-dsh-plugin.com/badge.svg)
22
23
 
23
24
  </div>
24
25
 
@@ -28,30 +29,64 @@ One `@` to reference them all.
28
29
 
29
30
  </div>
30
31
 
31
- Within a unified `@` menu of DeepSeek Harness (DSH), reference commands, Skills, workspace files/folders, DSH sessions, and historical conversations from ChatGPT, Claude, Gemini, DeepSeek, Grok, and Kimi.
32
+ **Reference Anything is an enhancement for the DeepSeek Harness (DSH) `@` menu.** It brings multiple reference sources into one searchable menu, so you can mention the context you need without switching tools or copying content manually.
33
+
34
+ After typing `@`, you can browse and click items in the menu with your mouse, or use the keyboard to enter text, search, and narrow down the results.
35
+
36
+ Use one `@` menu to reference:
37
+
38
+ - DSH commands and Skills
39
+ - Workspace files and folders
40
+ - DSH session history
41
+ - Historical conversations from ChatGPT, Claude, Gemini, DeepSeek, Grok, and Kimi
42
+
43
+ Beyond extending what `@` can reference, Reference Anything also enhances the `@` menu itself:
44
+
45
+ - Customize visible groups: enable or hide `Commands`, `Skills`, files, DSH sessions, and external conversations, then arrange them in any order
46
+ - Customize result counts: set each group's collapsed row count and hard candidate cap independently
47
+ - Choose how to browse: expand or collapse individual groups, or use DSH's native scrolling list
48
+ - Enhanced visual icons: distinguish reference sources with type icons and platform logos, making menu items easier to identify
49
+
50
+ <table>
51
+ <tr>
52
+ <th width="50%">Native DSH display</th>
53
+ <th width="50%">Reference Anything icon enhancements</th>
54
+ </tr>
55
+ <tr>
56
+ <td width="50%"><img src="./images/at-files-native-comparison.png" alt="Native DSH file list" width="100%" /></td>
57
+ <td width="50%"><img src="./images/at-files-enhanced-comparison.png" alt="Reference Anything file-type icon enhancements" width="100%" /></td>
58
+ </tr>
59
+ </table>
60
+
61
+ Type `@`, search across enabled sources, and insert the selected reference into the current task. Each source keeps its own access and loading behavior: files use DSH's permission-constrained tools, DSH sessions use the native session-reference protocol, and external conversation bodies are read on demand.
32
62
 
33
63
  This plugin uses OpenCLI to access historical conversations through AI chat sessions that are already logged in. By default, only conversation titles are stored locally, and the agent fetches remote content on demand. An optional offline-mirror mode stores the latest complete conversation bodies locally.
34
64
 
65
+ > [!IMPORTANT]
66
+ > This version targets DSH `0.1.0-rc.8` or newer. It uses the native `@` trigger menu, official file/session Remotes, and the native Composer reference renderer.
67
+
35
68
  > [!NOTE]
36
69
  > DSH is currently in Beta, so its underlying capabilities and interfaces may change as it evolves. This plugin will adapt alongside those changes. Because of some current DSH limitations, parts of the implementation may not yet be ideal; we will continue to follow DSH updates and improve the plugin over time. See the relevant sections below for specific limitations and usage notes.
37
70
 
38
- ## News
71
+ ## 📰 News
39
72
 
73
+ - **2026-08-20 · v0.3.0** — Completed the native DSH `@` integration: five independently configurable sources, official file/session Remotes, native Composer references with source logos, in-place expand/collapse and sync actions, and a one-click switch between Reference Anything and the official DSH `@` list. The legacy `dsh-file:` protocol and custom Composer interaction layer were removed.
40
74
  - **2026-08-19 · v0.2.4** — Added automatic version checks and in-settings updates, Pill/Raw text input rendering modes, and reusable background browser sessions for more reliable OpenCLI synchronization and input interactions.
41
75
  - **2026-08-18 · v0.2.0** — A redesigned Reference Anything settings page with local session statistics, paginated management, Provider/Profile selection, and sync status checks.
42
76
  - **2026-08-18** — Introduced on-demand read protocol: references default to safe pointers, and the agent reads the body and attachments only after authorization.
43
77
  - **2026-08-17** — Unified ChatGPT, Claude, Gemini, DeepSeek, Grok, and Kimi under the DSH `@` menu.
44
78
 
45
- ## Roadmap
79
+ ## 🧭 Roadmap
46
80
 
47
- - [ ] Support referencing historical conversations from other local agents
81
+ - [ ] Support referencing historical conversations from other local agents (in progress)
82
+ - [ ] Support referencing files from cloud drives and performing operations on them (in progress)
48
83
  - [ ] Support more keyword matching rules, including blacklists and whitelists, especially for file search
49
84
  - [ ] Support more AI conversation platforms
50
85
  - [ ] Provide a quieter AI conversation synchronization mechanism
51
86
  - [ ] Support referencing applications or browser windows currently open on the computer
52
87
  - [ ] More ideas are welcome in Issues
53
88
 
54
- ## Installation
89
+ ## 📦 Installation
55
90
 
56
91
  Prerequisites:
57
92
 
@@ -83,60 +118,57 @@ opencli daemon restart
83
118
 
84
119
  Replace `C:/path/to/dsh-reference-anything` with the repository location. Browser extensions cannot be silently installed from a webpage; confirm the installation in the Chrome Web Store, or download an extension package from [OpenCLI Releases](https://github.com/jackwener/opencli/releases) and use “Load unpacked.” If the browser blocks the store popup, the settings page keeps a normal fallback link. When multiple browser profiles are connected, select and apply one directly in the failed check. Global npm installation remains subject to OS permissions; failures retain their original diagnostic in the settings page.
85
120
 
86
- ## Usage
121
+ ## 🚀 Usage
122
+
123
+ Reference Anything registers five sources in the native DSH `@` menu rather than introducing a separate search interface. Settings let you choose which groups appear, their order, their collapsed row count, their hard candidate cap, and whether groups use plugin-owned collapse actions or the native scrolling list. A separate one-click control switches the visible picker back to DSH's official file/session list without stopping the plugin, synchronization service, local data, or model-facing tools; the same control restores the Reference Anything picker at any time.
87
124
 
88
125
  1. Open `Settings → Reference Anything` in DSH Web.
89
126
  2. Under **Availability check**, confirm that OpenCLI, Browser Bridge, the browser extension, and the conversation adapter are ready.
90
127
  3. Under **External conversation sync settings**, choose a connected browser Profile, history storage mode, and sync mode. Then click **Sync enabled sources now**, or sync an individual Provider from its card.
91
- 4. Type `@` in the input box and choose from the `Files and folders`, `DSH sessions`, or `External conversations` groups.
128
+ 4. Type `@` in the input box and choose from the `Commands`, `Skills`, `Files and folders`, `DSH sessions`, or `External conversations` groups.
92
129
  5. Type a keyword to filter candidates, for example `@cache-design`.
93
130
 
94
- The default **Read bodies on demand** mode stores only the title index locally and uses the browser when an agent reads a reference. Choose **Store full bodies locally** for offline reading and full-text search; this mode keeps only the latest version of each conversation. The settings page also lets you enable or disable each `@` group, reorder groups, set their maximum result counts (six per group by default), and switch between Pill and Raw text input rendering. The plugin checks npm for updates when it loads; restart DSH after installing an update from the settings page.
131
+ The default **Read bodies on demand** mode stores only the title index locally and uses the browser when an agent calls `reference_read`. Choose **Store full bodies locally** for offline reading and full-text search; this mode keeps only the latest version of each conversation. The Composer uses native DSH reference occurrences for files, DSH sessions, and external conversations; Reference Anything adds source-specific logos without replacing native wrapping, caret, selection, deletion, draft, clipboard, or serialization behavior. The plugin checks npm for updates when it loads; restart DSH after installing an update from the settings page.
95
132
 
96
133
  > [!WARNING]
97
- > To protect your account and conversation data, external conversations are imported and synchronized through OpenCLI using your existing logged-in browser session. A browser window may temporarily open during use or synchronization, and it may display OpenCLI debugging information. This is expected—please do not be alarmed or close the window manually; wait for the operation to finish.
134
+ > To protect your account and conversation data, external conversations are imported and synchronized through OpenCLI using your existing logged-in browser session. A browser window may temporarily open during use or synchronization. In most cases, leave it open in the background: the plugin will reuse it without interrupting your work. The window may also display OpenCLI debugging information. This is expected—please do not be alarmed or close it manually; wait for the operation to finish. Due to current OpenCLI limitations, we temporarily use slower serial synchronization to reduce how often browser windows open. Once the upstream OpenCLI repository is updated, we will switch to faster parallel synchronization.
98
135
 
99
- ### Search
136
+ ### 🧩 One `@` menu, multiple sources
100
137
 
101
- The `@` menu contains five groups: `Commands`, `Skills`, `Files and folders`, `DSH sessions`, and `External conversations`. The first two appear only when `@` is at the beginning of the draft. Each group shows up to six results by default. Under `Settings → Reference Anything → General`, you can enable or disable groups, reorder them, and set each limit from 1 to 50.
138
+ The `@` menu contains five groups: `Commands`, `Skills`, `Files and folders`, `DSH sessions`, and `External conversations`. Each group shows six rows before its expand action by default and accepts a separate hard candidate cap from 1 to 50. In collapse mode, each expand action reveals five more rows and updates the mounted menu without jumping back to the top; collapse restores the configured compact count. The external-conversation group keeps its sync action first and updates that row and the visible results in place while synchronization runs and completes. Under `Settings → Reference Anything → General`, you can enable or disable groups, reorder them, and choose **Collapse / expand** or **Native DSH scrolling**.
102
139
 
103
- #### @Commands — DSH native commands
140
+ #### ⌨️ @Commands — DSH native commands
104
141
 
105
- Available only at the start of the draft. To browse all commands, use `@commands` or the native DSH `/` panel.
142
+ To browse commands, use `@commands`; selecting one hands `/command` back to DSH's native slash pipeline.
106
143
 
107
144
  <p align="center"><img src="./images/at-commands.png" alt="Browse DSH commands from the @ menu" width="800" /></p>
108
145
 
109
- #### @Skills — DSH skill library
146
+ #### 🛠️ @Skills — DSH skill library
110
147
 
111
- Available only at the start of the draft. To browse all skills, use `@skills:` or the native DSH `/` panel.
148
+ To browse skills, use `@skills:`; selecting one inserts `/skill` for DSH's native skill handling.
112
149
 
113
150
  <p align="center"><img src="./images/at-skills.png" alt="Browse DSH skills from the @ menu" width="800" /></p>
114
151
 
115
- #### @Files and folders — workspace files and directories
152
+ #### 📁 @Files and folders — workspace files and directories
116
153
 
117
- Type `@files:` in the input box to browse all files and folders in the workspace. Search supports fuzzy matching on titles, so both `@cachedes` and `@cache-design` can match “Cache design notes.”
154
+ Type `@files:` in the input box to browse files and folders through DSH's official file-reference Remote.
118
155
 
119
156
  <p align="center"><img src="./images/at-files.png" alt="Browse workspace files and folders from the @ menu" width="800" /></p>
120
157
 
121
- Features:
122
- - Quick reference to workspace files with automatic workspace-boundary validation
123
- - File references only write a validated path and type marker into the model context; file content is not preloaded
124
- - If the model needs file content, it must use the existing permission-constrained file tools
158
+ **Features:**
159
+ - Uses the official `@path` / `@"path with spaces"` grammar and canonical file candidate service
160
+ - Files become native atomic references; selecting a directory keeps the path editable and continues completion
161
+ - The plugin no longer creates or parses a custom `dsh-file:` scheme
125
162
 
126
- #### @DSH sessions — DSH session history
163
+ #### 💬 @DSH sessions — DSH session history
127
164
 
128
- Type `@sessions:` to browse locally synced DSH sessions. Sessions are ranked by match quality, with recency as fallback ordering.
165
+ Type `@sessions:` to browse DSH sessions through the official session-reference Remote.
129
166
 
130
167
  <p align="center"><img src="./images/at-sessions.png" alt="Browse DSH sessions from the @ menu" width="800" /></p>
131
168
 
132
- Search capabilities:
133
- - **Title match:** fuzzy search on session titles
134
- - **Content search:** when title matches are insufficient, the synced session body is searched; matching excerpts are shown in the candidate row for UI display only and are not injected into model context
135
- - Auto-generated generic titles such as “New chat” can also be found via body keywords
169
+ Selected sessions use DSH's canonical `dsh-session:` mention and native session appearance. Snapshot preparation and resolution remain owned by DSH rather than this plugin.
136
170
 
137
- Full browsing is available on the settings page’s paginated list. Session references follow the official `dsh-session:` protocol and immutable snapshot semantics.
138
-
139
- #### @External conversations — external conversation platforms
171
+ #### 🌐 @External conversations — external conversation platforms
140
172
 
141
173
  Supports historical conversations from ChatGPT, Claude, Gemini, DeepSeek, Grok, and Kimi.
142
174
 
@@ -153,24 +185,21 @@ Supports historical conversations from ChatGPT, Claude, Gemini, DeepSeek, Grok,
153
185
  - **Provider and account isolation:** history is maintained separately by Provider and account scope
154
186
  - `@` search uses the account scope cached by the latest sync and never probes the browser; after a sync observes an account switch, it exposes only that account while older rows remain available in conversation management for cleanup
155
187
 
156
- **Reference display:** after selection, the draft shows a removable reference chip:
188
+ **Reference display:** after selection, the draft shows a native removable DSH reference with the Provider logo. Its stable serialized form is:
157
189
  ```text
158
- @[ChatGPT · Conversation title](dsh-ref:<opaque-base64url>)
190
+ @[ChatGPT·Conversation title](dsh-ref:<opaque-base64url>)
159
191
  ```
160
192
 
161
193
  Opening the source URL happens only in the UI; the URL is never injected into model context. The initial reference contains only a safe pointer; if the model needs the body, it calls `reference_read` on demand.
162
194
 
163
- > [!NOTE]
164
- > Due to DSH's current underlying length limit for References, external-conversation references temporarily use a compatibility layer implemented by this plugin instead of relying entirely on DSH's native reference presentation. As a result, some interactions may behave differently or encounter issues in certain scenarios. We have raised this limitation in DSH Discussions; when a future DSH release provides the necessary support, we will update the plugin promptly and migrate to a more native implementation.
165
-
166
195
  ---
167
196
 
168
197
  **General notes:**
169
198
  - Use `:` or `/` as the separator instead of a space: the `@` candidate token ends at a space, so `@chatgpt keyword` closes the menu as soon as you press the space. For multi-word searches, write `@cachedesign` or `@cache-design`.
170
199
  - Without a type prefix, all groups are searched at once.
171
- - For full browsing across groups: sessions are listed on the settings page, while commands and skills use the native `/` panel.
200
+ - Commands and Skills are handed back to DSH's native slash-command handling after selection; the native `/` panel remains available.
172
201
 
173
- ## How External Conversation References Work
202
+ ## 🔄 How External Conversation References Work
174
203
 
175
204
  ```text
176
205
  DSH Web @Conversations
@@ -184,7 +213,7 @@ ChatGPT / Claude / Gemini / DeepSeek / Grok / Kimi
184
213
 
185
214
  This does not include the legacy standalone DeepSeek CDP / `--remote-debugging-port` collector. All six platforms use the OpenCLI Provider adapter path, avoiding duplicate browser-reading implementations.
186
215
 
187
- ### Model-facing Protocol
216
+ ### 🤖 Model-facing Protocol
188
217
 
189
218
  A reference produces an untrusted-data envelope alongside the current user request. The initial envelope contains only pointers and never the conversation body:
190
219
 
@@ -220,7 +249,7 @@ A reference produces an untrusted-data envelope alongside the current user reque
220
249
  - Sync stores attachment metadata and same-origin locators, not temporary signed URLs. Attachments are classified as `image` or `file`; empty URLs and site-root paths are not marked as available.
221
250
  - Unreadable attachments add a model-facing notice such as `[User attached 1 image; image contents were not included]` without altering the original conversation text.
222
251
 
223
- ### Sync and Storage
252
+ ### 💾 Sync and Storage
224
253
 
225
254
  The `reference_anything` storage domain contains:
226
255
 
@@ -234,12 +263,12 @@ Remote records are marked `remoteMissing` only after a full remote pagination pa
234
263
 
235
264
  In `metadata-only` mode, the current browser account is checked inside the same detail operation that reads a referenced body; reads are rejected when it does not match the account scope cached by sync. Conversation management includes bulk actions for records marked `remoteMissing` and for local chats owned by non-current accounts of providers whose current account is known.
236
265
 
237
- ## Acknowledgements
266
+ ## 🙏 Acknowledgements
238
267
 
239
- - Workspace file/folder autocomplete, path ordering, and existence-only reference handling include portions adapted from [omdsh-dev/dsh-at-file](https://github.com/omdsh-dev/dsh-at-file).
240
- - Cross-session DSH candidates, canonical `dsh-session:` references, and immutable snapshot support use the official `@deepseek-ai/dsh-session-reference` package.
268
+ - File candidates and mention formatting use the official `@deepseek-ai/dsh-file-reference` package and DSH Remote.
269
+ - Cross-session candidates and canonical `dsh-session:` mentions use the official `@deepseek-ai/dsh-session-reference` package and DSH Remote.
241
270
 
242
- ## Sources and License
271
+ ## 📄 Sources and License
243
272
 
244
273
  This project is licensed under the [MIT License](./LICENSE). Third-party copyright notices, license texts, porting sources, and pinned upstream commits are documented in [NOTICE.md](./NOTICE.md). OpenCLI is an external Apache-2.0 dependency and is not bundled with this plugin.
245
274
 
@@ -249,8 +278,8 @@ This project is licensed under the [MIT License](./LICENSE). Third-party copyrig
249
278
  [typescript-link]: https://www.typescriptlang.org/
250
279
  [typescript-shield]: https://img.shields.io/badge/TypeScript-3178C6?labelColor=black&logo=typescript&logoColor=white&style=flat-square
251
280
  [dsh-plugin-shield]: https://img.shields.io/badge/DSH-plugin-ffffff?labelColor=black&style=flat-square
252
- [github-version-shield]: https://img.shields.io/github/package-json/v/Chael-Chael/dsh-reference-anything?color=369eff&label=version&labelColor=black&style=flat-square
253
- [github-releases-link]: https://github.com/Chael-Chael/dsh-reference-anything/releases
281
+ [github-version-shield]: https://img.shields.io/github/package-json/v/Chael-Chael/dsh-reference-anything/main?color=369eff&label=version&labelColor=black&style=flat-square
282
+ [github-version-link]: https://github.com/Chael-Chael/dsh-reference-anything/blob/main/package.json
254
283
  [github-stars-link]: https://github.com/Chael-Chael/dsh-reference-anything/stargazers
255
284
  [github-stars-shield]: https://img.shields.io/github/stars/Chael-Chael/dsh-reference-anything?color=ffcb47&labelColor=black&style=flat-square
256
285
  [github-forks-link]: https://github.com/Chael-Chael/dsh-reference-anything/forks
package/cordis.patch.yml CHANGED
@@ -1,31 +1,29 @@
1
1
  # dsh-reference-anything — the layer this bundle contributes.
2
2
  #
3
3
  # A patch REPLACES a row's whole `config` rather than merging keys, so when you
4
- # override one of these in your profile's cordis.patch.yml, restate every key
5
- # the row needs.
6
- - insert:
7
- # The harness's own cross-session resolver. It ships with dsh but no shipped
8
- # composition mounts it, so `dsh-session:` mentions resolve to nothing until
9
- # something does. Mounting it here is what makes the mention expander below
10
- # able to serve both schemes.
11
- - id: session-reference
12
- name: '@deepseek-ai/dsh-session-reference'
13
-
14
- # The registry every source registers into.
4
+ # override one of these in your profile's cordis.patch.yml, restate every key
5
+ # the row needs.
6
+ - id: ui-reference
7
+ # Reference Anything re-registers Files and DSH sessions as two independent
8
+ # sources over the same official Remotes. Disabling only this Client source
9
+ # keeps the official file/session services and canonical mention semantics.
10
+ disabled: true
11
+
12
+ - insert:
13
+ # The registry every source registers into.
15
14
  - id: references
16
15
  name: 'dsh-reference-anything'
17
16
  config:
18
17
  listLimit: 20
19
18
 
20
- # Expands `@[label](dsh-ref:…)` and `dsh-session:` mentions in a user's
21
- # prompt into untrusted background, on every surface. It grants the agent
22
- # the exact reference URI but does not fetch a transcript; the agent calls
23
- # reference_read only when the current task needs one.
24
- - id: reference-mention
25
- name: 'dsh-reference-anything/reference'
26
- config:
27
- maxReferences: 3
28
- serveSessionScheme: true
19
+ # Expands plugin-owned `@[label](dsh-ref:…)` mentions into untrusted
20
+ # metadata on every surface. Native file and `dsh-session:` references stay
21
+ # with DSH's official services. External transcripts are not prefetched;
22
+ # the agent calls reference_read only when the current task needs one.
23
+ - id: reference-mention
24
+ name: 'dsh-reference-anything/reference'
25
+ config:
26
+ maxReferences: 3
29
27
 
30
28
  # Lets the model go looking on its own, and page backwards through a
31
29
  # conversation it has only seen the end of.