dsh-reference-anything 0.3.3 → 0.4.0-alpha.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/README.md CHANGED
@@ -101,19 +101,19 @@ Prerequisites:
101
101
  - `dsh` is installed and running; automatic OpenCLI installation requires the `npm` bundled with Node.js.
102
102
  - The target platforms are already logged in under the selected Chrome Profile.
103
103
 
104
- Install the stable `0.3.x` line for the current stable DSH SDK:
104
+ Install the stable `0.3.x` line for the current stable DSH SDK:
105
105
 
106
106
  ```powershell
107
- dsh plugin --profile web add dsh-reference-anything@latest
108
- ```
109
-
110
- Starting with `v0.4.0-alpha.1`, users on DSH `v0.1.2-alpha.1` can install the development line separately:
111
-
112
- ```powershell
113
- dsh plugin --profile web add dsh-reference-anything@alpha
114
- ```
115
-
116
- After the DSH alpha API stabilizes and the migration is verified, the `alpha` line will be promoted to `latest` and become the default installation.
107
+ dsh plugin --profile web add dsh-reference-anything@latest
108
+ ```
109
+
110
+ Starting with `v0.4.0-alpha.1`, users on DSH `v0.1.2-alpha.1` can install the development line separately:
111
+
112
+ ```powershell
113
+ dsh plugin --profile web add dsh-reference-anything@alpha
114
+ ```
115
+
116
+ After the DSH alpha API stabilizes and the migration is verified, the `alpha` line will be promoted to `latest` and become the default installation.
117
117
 
118
118
  For development, install the published DSH rc.8 SDK dependencies, run the verification gate, then install the repository from a local path:
119
119
 
@@ -1,3 +1,3 @@
1
- import { type ClientContext } from '@deepseek-ai/dsh-client-runtime/client';
1
+ import type { Context as ClientContext } from '@deepseek-ai/cordis';
2
2
  export declare const inject: string[];
3
3
  export declare function apply(ctx: ClientContext): void;
package/lib/client.js CHANGED
@@ -367,7 +367,7 @@ __export(index_exports, {
367
367
  inject: () => inject
368
368
  });
369
369
  module.exports = __toCommonJS(index_exports);
370
- var import_client = require("@deepseek-ai/dsh-client-runtime/client");
370
+ var import_dsh_client_store = require("@deepseek-ai/dsh-client-store");
371
371
 
372
372
  // node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/external.js
373
373
  var external_exports = {};
@@ -15236,7 +15236,7 @@ var REFERENCE_ANYTHING_REMOTE = {
15236
15236
  descriptors: REFERENCE_ANYTHING_INVOCATIONS
15237
15237
  };
15238
15238
 
15239
- // node_modules/.pnpm/@deepseek-ai+dsh-file-refer_f59b412bd8388a57b4f4b22ce89f765e/node_modules/@deepseek-ai/dsh-file-reference/lib/types/grammar.js
15239
+ // C:/Users/27923/AppData/Local/Temp/deepseek-harness-e31103e4de9c4ca398a9185a0bcb651d/packages/context/file-reference/lib/types/grammar.js
15240
15240
  function formatFileMention(candidate, preserveQuote) {
15241
15241
  const path = candidate.kind === "directory" ? `${candidate.path}/` : candidate.path;
15242
15242
  if (/[\u0000-\u001f\u007f-\u009f"]/u.test(path))
@@ -17068,6 +17068,8 @@ var AGENT_SOURCE = "Local agent conversations";
17068
17068
  var DRIVE_SOURCE = "Cloud drive files";
17069
17069
  var COMMAND_SOURCE = "Commands";
17070
17070
  var SKILL_SOURCE = "Skills";
17071
+ var driveMenuKinds = /* @__PURE__ */ new Map();
17072
+ var driveMenuIconKind = (description) => driveMenuKinds.get(description);
17071
17073
  var WORKSPACE_EXTENSION_KIND = Object.freeze({
17072
17074
  png: "image",
17073
17075
  jpg: "image",
@@ -17567,6 +17569,7 @@ function createCloudDriveSource(search2, t = fallback, options = { ...DEFAULT_SO
17567
17569
  name: DRIVE_SOURCE,
17568
17570
  order: options.order,
17569
17571
  async candidates(_session, { query, quoted, signal }) {
17572
+ driveMenuKinds.clear();
17570
17573
  const scoped = scopedQuery(query, "drives");
17571
17574
  if (scoped === void 0) return [];
17572
17575
  if (quoted === true && scoped === query.trim()) return [];
@@ -17579,15 +17582,17 @@ function createCloudDriveSource(search2, t = fallback, options = { ...DEFAULT_SO
17579
17582
  }];
17580
17583
  const candidates = disambiguate(rows.map((row) => {
17581
17584
  const name2 = row.label.trim() || "Untitled";
17585
+ const description = row.isDirectory === true ? row.origin ?? t("source.drives") : describeDriveRow(row, t);
17586
+ driveMenuKinds.set(description, workspacePathIconKind(name2, row.isDirectory === true ? "directory" : "file"));
17582
17587
  if (row.isDirectory === true) return {
17583
17588
  name: name2,
17584
- description: row.origin ?? t("source.drives"),
17589
+ description,
17585
17590
  icon: driveIcon(row),
17586
17591
  value: encodeCandidate({ kind: "drive-folder", path: row.origin ?? "/" })
17587
17592
  };
17588
17593
  return {
17589
17594
  name: name2,
17590
- description: describeDriveRow(row, t),
17595
+ description,
17591
17596
  icon: driveIcon(row),
17592
17597
  value: encodeCandidate({
17593
17598
  kind: "drive",
@@ -17775,7 +17780,8 @@ function withDisplayPolicy(source, options, t, refreshPinned = (candidate) => ca
17775
17780
  const cache = cacheCandidates(session, {
17776
17781
  query: request.query,
17777
17782
  quoted: request.quoted,
17778
- position: request.position
17783
+ position: request.position,
17784
+ drilled: request.drilled
17779
17785
  }, all2, (previous2?.revision ?? 0) + 1);
17780
17786
  if (!request.signal.aborted) caches.set(session.sessionId, cache);
17781
17787
  options.guardMenuActions?.(session.sessionId, source.name);
@@ -29609,9 +29615,9 @@ var css = `
29609
29615
  /* Reference Anything customizes the public @ menu and only the visual glyph
29610
29616
  inside matching Composer reference chips. Native text continues to own all
29611
29617
  caret, selection, wrapping, and message geometry. */
29612
- [data-composer-card] [role="listbox"]:has([role="presentation"][data-source]){box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;border-radius:22px!important}
29613
- [data-composer-card] [role="listbox"] [role="presentation"][data-source]{position:sticky;top:0;z-index:2;box-sizing:border-box;padding-top:6px!important;background:var(--dsw-alias-background-primary,var(--dsw-alias-bg-layer-1,#fff))}
29614
- body[data-ds-dark-theme] [data-composer-card] [role="listbox"] [role="presentation"][data-source]{background:#343438}
29618
+ [data-composer-card] [role="listbox"]:has([role="presentation"][data-source]){box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important}
29619
+ [data-trigger-menu]:has(> [role="listbox"] [role="presentation"][data-source]){border-radius:22px}
29620
+ [data-composer-card] [role="listbox"] [role="presentation"][data-source]{position:sticky;top:0;z-index:2;box-sizing:border-box;padding-top:6px!important;background:var(--dsw-specific-menu,var(--dsw-alias-background-primary,var(--dsw-alias-bg-layer-1,#fff)))}
29615
29621
  [data-composer-card] [role="listbox"] [role="presentation"][data-source]:not(:first-child){margin-top:8px}
29616
29622
  [data-composer-card] [role="listbox"] [role="option"]{scroll-margin-block-start:30px;scroll-margin-block-end:4px}
29617
29623
  [data-composer-card] [role="listbox"]>[data-dsh-ref-menu-settling]{overflow-anchor:none!important}
@@ -29623,6 +29629,8 @@ body[data-ds-dark-theme] [data-composer-card] [role="listbox"] [role="presentati
29623
29629
  [data-composer-card] [role="listbox"] :is(.dsh_ref_projected_icon,.dsh_ref_picker_icon)>svg{display:block;width:16px;height:16px;overflow:visible}
29624
29630
  [data-composer-card] [data-decoration="chip"][data-dsh-ref-chip-icon]>:first-child>svg{visibility:hidden!important}
29625
29631
  [data-composer-card] [data-decoration="chip"][data-dsh-ref-chip-icon]>:first-child:after{content:"";position:absolute;top:50%;left:50%;display:block;width:16px;height:16px;transform:translate(-50%,-50%);background:currentColor;-webkit-mask:var(--dsh-ref-chip-icon-mask) center/contain no-repeat;mask:var(--dsh-ref-chip-icon-mask) center/contain no-repeat;pointer-events:none}
29632
+ [data-composer-card] [data-composer-chip][data-dsh-ref-chip-icon]>:first-child>svg{background:currentColor;-webkit-mask:var(--dsh-ref-chip-icon-mask) center/contain no-repeat;mask:var(--dsh-ref-chip-icon-mask) center/contain no-repeat}
29633
+ [data-composer-card] [data-composer-chip][data-dsh-ref-chip-icon]>:first-child>svg>*{display:none!important}
29626
29634
  .dsh_ref_settings{display:flex;flex-direction:column;gap:18px;width:min(100%,1060px);padding:0 0 36px;color:var(--dsw-alias-label-primary);font-family:Geist,"Segoe UI",sans-serif}.dsh_ref_settings *{box-sizing:border-box}.dsh_ref_header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:0 0 10px}.dsh_ref_header h2{margin:0 0 7px;font-size:28px;line-height:1.1;letter-spacing:-.035em}.dsh_ref_header p{margin:0;max-width:620px;color:var(--dsw-alias-label-primary);font-size:13px;line-height:1.5}.dsh_ref_settings button{min-height:34px;padding:0 13px;border:1px solid var(--dsw-alias-label-primary);border-radius:5px;background:transparent;color:var(--dsw-alias-label-primary);font:inherit;font-size:12px;font-weight:650;cursor:pointer}.dsh_ref_settings button:hover:not(:disabled){background:var(--dsw-alias-label-primary);color:var(--dsw-alias-bg-layer-1)}.dsh_ref_settings button:active:not(:disabled){transform:translateY(1px)}.dsh_ref_settings button:disabled{cursor:not-allowed;opacity:.42}
29627
29635
  .dsh_ref_workspace{display:flex;flex-direction:column;border:1px solid var(--dsw-alias-label-primary);border-radius:0;background:transparent;overflow:hidden}.dsh_ref_workspace>.dsh_ref_panel,.dsh_ref_workspace>.dsh_ref_sources{margin:0;padding:24px;border:0;border-bottom:1px solid var(--dsw-alias-label-primary);border-radius:0;background:transparent}.dsh_ref_workspace>.dsh_ref_panel:last-child{border-bottom:0}.dsh_ref_workspace>.dsh_ref_error{margin:20px 24px 0}.dsh_ref_section_head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.dsh_ref_section_head h3{margin:0 0 4px;font-size:17px;letter-spacing:-.02em}.dsh_ref_section_head p{margin:0;color:var(--dsw-alias-label-primary);font-size:12px;line-height:1.45}.dsh_ref_health,.dsh_ref_syncing{display:inline-flex;align-items:center;min-height:25px;padding:0 9px;border:1px solid var(--dsw-alias-label-primary);border-radius:4px;background:transparent;color:var(--dsw-alias-label-primary);font-size:10px;font-weight:700}
29628
29636
  .dsh_ref_checklist{display:grid;gap:14px;margin-top:20px}.dsh_ref_check{display:flex;align-items:flex-start;gap:11px;min-height:40px}.dsh_ref_check>span{display:grid;place-items:center;flex:none;width:22px;height:22px;margin-top:2px;border:1px solid var(--dsw-alias-label-primary);border-radius:50%;background:transparent;color:var(--dsw-alias-label-primary);font-size:11px;font-weight:800}.dsh_ref_check div{display:grid;min-width:0;gap:2px}.dsh_ref_check strong{font-size:13px}.dsh_ref_check small{overflow-wrap:anywhere;color:var(--dsw-alias-label-primary);font-size:11px;opacity:.7}.dsh_ref_install{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding:14px;border:1px solid var(--dsw-alias-label-primary);background:transparent}.dsh_ref_install>div{display:grid;gap:3px}.dsh_ref_install strong{font-size:12px}.dsh_ref_install span{color:var(--dsw-alias-label-primary);font-size:11px;opacity:.7}.dsh_ref_service_actions{display:flex!important;flex:none;gap:8px}.dsh_ref_error{display:grid;gap:4px;padding:13px;border:1px solid var(--dsw-alias-label-primary);background:transparent;color:var(--dsw-alias-label-primary);font-size:11px}.dsh_ref_skeleton{display:grid;gap:12px;margin-top:20px}.dsh_ref_skeleton i{height:40px;border:1px solid var(--dsw-alias-label-primary);opacity:.25}
@@ -29959,6 +29967,49 @@ function adoptReferenceIconProjection() {
29959
29967
  const providerMasks = Object.fromEntries(providers.map((provider) => [provider, providerIconMask(PROVIDER_ICON_PATH[provider])]));
29960
29968
  const pickerMasks = Object.fromEntries(pickerKinds.map((kind) => [kind, pickerIconMask(kind)]));
29961
29969
  const agentMasks = Object.fromEntries(agentKinds.map((agent) => [agent, reactIconMask(agentLogoElement(agent))]));
29970
+ const paintPicker = (node2, kind, secondary) => {
29971
+ node2.replaceChildren(createPickerIcon(kind), ...secondary === void 0 ? [] : [createPickerIcon(secondary)]);
29972
+ node2.classList.remove("dsh_ref_projected_icon");
29973
+ node2.classList.add("dsh_ref_picker_icon");
29974
+ node2.classList.toggle("dsh_ref_dual_icon", secondary !== void 0);
29975
+ node2.dataset.dshRefMenuIcon = kind;
29976
+ };
29977
+ const paintProvider = (node2, provider) => {
29978
+ node2.replaceChildren(createProviderIcon(PROVIDER_ICON_PATH[provider]));
29979
+ node2.classList.remove("dsh_ref_picker_icon", "dsh_ref_dual_icon");
29980
+ node2.classList.add("dsh_ref_projected_icon");
29981
+ node2.dataset.dshRefMenuIcon = provider;
29982
+ };
29983
+ const paintAgent = (node2, agent) => {
29984
+ const logo = agentLogoElement(agent);
29985
+ if (logo === void 0) return paintPicker(node2, "agent");
29986
+ node2.replaceChildren(createReactIcon(logo));
29987
+ node2.classList.remove("dsh_ref_picker_icon", "dsh_ref_dual_icon");
29988
+ node2.classList.add("dsh_ref_projected_icon");
29989
+ node2.dataset.dshRefMenuIcon = agent;
29990
+ };
29991
+ const projectAlphaOption = (option) => {
29992
+ const icon = option.firstElementChild;
29993
+ if (!(icon instanceof HTMLElement) || icon.childElementCount > 0 || (icon.textContent ?? "") !== "") return;
29994
+ let heading2 = option.previousElementSibling;
29995
+ while (heading2 !== null && !(heading2.getAttribute("role") === "presentation" && heading2.hasAttribute("data-source"))) heading2 = heading2.previousElementSibling;
29996
+ const source = heading2?.getAttribute("data-source");
29997
+ const name2 = option.children.item(1)?.textContent?.trim() ?? "";
29998
+ const description = option.children.item(2)?.textContent?.trim() ?? "";
29999
+ if (source === "Commands") return paintPicker(icon, "command");
30000
+ if (source === "Skills") return paintPicker(icon, "skill");
30001
+ if (source === "Files and folders") return paintPicker(icon, workspacePathIconKind(name2, name2.endsWith("/") ? "directory" : "file"));
30002
+ if (source === "DSH sessions") return paintPicker(icon, "session");
30003
+ if (source === "Local agent conversations") {
30004
+ const agent = Object.keys(LOCAL_AGENT_CHIP_LABEL).find((item) => description.startsWith(`${LOCAL_AGENT_CHIP_LABEL[item]} \xB7`));
30005
+ return agent === void 0 ? paintPicker(icon, "agent") : paintAgent(icon, agent);
30006
+ }
30007
+ if (source === "External conversations") {
30008
+ const provider = providers.find((item) => description.startsWith(`${CHIP_PROVIDER_LABEL[item]} \xB7`));
30009
+ return provider === void 0 ? paintPicker(icon, "refresh") : paintProvider(icon, provider);
30010
+ }
30011
+ if (source === "Cloud drive files") paintPicker(icon, "drive", driveMenuIconKind(description) ?? workspacePathIconKind(name2, name2.endsWith("/") ? "directory" : "file"));
30012
+ };
29962
30013
  const project = (root3) => {
29963
30014
  const selector = '[data-composer-card] [role="listbox"]';
29964
30015
  const menus = /* @__PURE__ */ new Set();
@@ -29969,6 +30020,7 @@ function adoptReferenceIconProjection() {
29969
30020
  }
29970
30021
  for (const menu of Array.from(root3.querySelectorAll(selector))) menus.add(menu);
29971
30022
  for (const menu of menus) {
30023
+ for (const option of Array.from(menu.querySelectorAll('[role="option"]'))) projectAlphaOption(option);
29972
30024
  const walker = document.createTreeWalker(menu, NodeFilter.SHOW_ELEMENT);
29973
30025
  let node2 = walker.nextNode();
29974
30026
  while (node2 !== null) {
@@ -30058,7 +30110,7 @@ var LOCAL_AGENT_CHIP_LABEL = {
30058
30110
  zcode: "zcode"
30059
30111
  };
30060
30112
  function projectComposerChips(root3, providerMasks, pickerMasks, agentMasks) {
30061
- const selector = '[data-composer-card] [data-decoration="chip"][data-reference-appearance]';
30113
+ const selector = '[data-composer-card] :is([data-decoration="chip"][data-reference-appearance],[data-composer-chip])';
30062
30114
  const chips = /* @__PURE__ */ new Set();
30063
30115
  if (root3 instanceof Element) {
30064
30116
  const chip = root3.matches(selector) ? root3 : root3.closest(selector);
@@ -30067,9 +30119,9 @@ function projectComposerChips(root3, providerMasks, pickerMasks, agentMasks) {
30067
30119
  for (const chip of Array.from(root3.querySelectorAll(selector))) if (chip instanceof HTMLElement) chips.add(chip);
30068
30120
  for (const chip of chips) {
30069
30121
  const label = (chip.textContent ?? "").trim().replace(/^@/u, "");
30070
- const appearance = chip.dataset.referenceAppearance;
30122
+ const referenceSource = chip.dataset.referenceSource ?? chip.dataset.composerChip;
30123
+ const appearance = chip.dataset.referenceAppearance ?? (referenceSource === "Cloud drive files" || referenceSource === "Files and folders" ? "file" : "session");
30071
30124
  if (appearance === "session") {
30072
- const referenceSource = chip.dataset.referenceSource;
30073
30125
  const agent = Object.keys(LOCAL_AGENT_CHIP_LABEL).find((item) => label.startsWith(`${LOCAL_AGENT_CHIP_LABEL[item]}\xB7`));
30074
30126
  if (agent !== void 0) {
30075
30127
  applyChipIcon(chip, agent, agentMasks[agent] ?? pickerMasks.agent);
@@ -30178,12 +30230,17 @@ function createPickerMenuUpdater(inputTriggers, sessions, schedule = mutateActiv
30178
30230
  const base = matches(current, update) ? current : update.reopen && !current.open && current.generation === before.generation ? before : void 0;
30179
30231
  if (base === void 0) return;
30180
30232
  const groups = base.groups.map((group) => group.source === update.source ? { ...group, status: "ready", items: update.candidates } : group);
30181
- const highlight = update.reopen || !validHighlight(base, update.candidates, update.source) ? null : base.highlight;
30233
+ const highlight = update.reopen ? retainedHighlight(before, update.candidates, update.source) : validHighlight(base, update.candidates, update.source) ? base.highlight : null;
30182
30234
  controller.menu.set({ ...base, open: true, groups, highlight });
30183
30235
  });
30184
30236
  return true;
30185
30237
  };
30186
30238
  }
30239
+ function retainedHighlight(state, candidates, source) {
30240
+ if (state.highlight?.source !== source) return state.highlight;
30241
+ if (candidates.length === 0) return null;
30242
+ return { source, index: Math.min(state.highlight.index, candidates.length - 1) };
30243
+ }
30187
30244
  function createPickerMenuActionGuard(inputTriggers, sessions) {
30188
30245
  const patched = /* @__PURE__ */ new WeakMap();
30189
30246
  return (sessionId, source) => {
@@ -30292,14 +30349,14 @@ var inject = [
30292
30349
  "connection",
30293
30350
  "locale",
30294
30351
  "sessions",
30295
- "workspaces"
30352
+ "uiWorkspace"
30296
30353
  ];
30297
30354
  function apply(ctx) {
30298
30355
  adoptStyles();
30299
30356
  ctx.effect(() => adoptMenuViewportTracking(), "reference-anything.client.menu-viewport-tracking");
30300
30357
  ctx.effect(() => adoptReferenceIconProjection(), "reference-anything.client.icon-projection");
30301
30358
  let remote;
30302
- const scope = (0, import_client.createSnapshotStore)({
30359
+ const scope = (0, import_dsh_client_store.createSnapshotStore)({
30303
30360
  settings: { opencliPath: "opencli", profile: "", detailConcurrency: 8, autoSync: false, syncOnStartup: false, autoSyncMinutes: 60, historyMode: "metadata-only", syncHistoryDays: null, enabledProviders: [...ALL_PROVIDERS], enabledAgents: [...ALL_LOCAL_AGENTS], maxReadTurns: 10, inputRenderMode: "pill", cloudDriveDownloadDirectory: "" },
30304
30361
  loading: true
30305
30362
  });
@@ -30716,14 +30773,14 @@ function apply(ctx) {
30716
30773
  refreshStats,
30717
30774
  refreshOpenList,
30718
30775
  pickAgentDirectory: async (agent) => {
30719
- const path = await pickDirectoryWithError(ctx.workspaces, (error51) => {
30776
+ const path = await pickDirectoryWithError(ctx.uiWorkspace, (error51) => {
30720
30777
  scope.set({ ...scope.getSnapshot(), error: message(error51), notice: void 0 });
30721
30778
  });
30722
30779
  if (!path) return;
30723
30780
  const settings = scope.getSnapshot().settings;
30724
30781
  if (await save({ ...settings, agentDirectories: { ...settings.agentDirectories ?? {}, [agent]: path } })) await refreshAgentStats();
30725
30782
  },
30726
- pickCloudDriveDownloadDirectory: () => pickDirectoryWithError(ctx.workspaces, (error51) => {
30783
+ pickCloudDriveDownloadDirectory: () => pickDirectoryWithError(ctx.uiWorkspace, (error51) => {
30727
30784
  scope.set({ ...scope.getSnapshot(), error: message(error51), notice: void 0 });
30728
30785
  }),
30729
30786
  openCloudDriveDownloadDirectory: async () => {
package/package.json CHANGED
@@ -1,200 +1,218 @@
1
- {
2
- "name": "dsh-reference-anything",
3
- "version": "0.3.3",
4
- "description": "Reference commands, skills, workspace files, DSH sessions, local agent transcripts, cloud-drive files, and mirrored web-chat conversations from one DeepSeek Harness @ menu",
5
- "license": "MIT",
6
- "publishConfig": {
7
- "access": "public"
8
- },
9
- "type": "module",
10
- "repository": {
11
- "type": "git",
12
- "url": "git+https://github.com/Chael-Chael/dsh-reference-anything.git"
13
- },
14
- "main": "lib/index.js",
15
- "types": "lib/index.d.ts",
16
- "exports": {
17
- ".": {
18
- "types": "./lib/index.d.ts",
19
- "default": "./lib/index.js"
20
- },
21
- "./reference": {
22
- "types": "./lib/reference.d.ts",
23
- "default": "./lib/reference.js"
24
- },
25
- "./tool": {
26
- "types": "./lib/tool.d.ts",
27
- "default": "./lib/tool.js"
28
- },
29
- "./file": {
30
- "types": "./lib/sources/file.d.ts",
31
- "default": "./lib/sources/file.js"
32
- },
33
- "./local-agent": {
34
- "types": "./lib/sources/local-agent/index.d.ts",
35
- "default": "./lib/sources/local-agent/index.js"
36
- },
37
- "./cloud-drive": {
38
- "types": "./lib/sources/cloud-drive/index.d.ts",
39
- "default": "./lib/sources/cloud-drive/index.js"
40
- },
41
- "./openlist": {
42
- "types": "./lib/openlist/index.d.ts",
43
- "default": "./lib/openlist/index.js"
44
- },
45
- "./web-chat": {
46
- "types": "./lib/sources/web-chat/index.d.ts",
47
- "default": "./lib/sources/web-chat/index.js"
48
- },
49
- "./web": {
50
- "types": "./lib/web.d.ts",
51
- "default": "./lib/web.js"
52
- },
53
- "./sync": {
54
- "types": "./lib/sync/index.d.ts",
55
- "default": "./lib/sync/index.js"
56
- },
57
- "./client": {
58
- "types": "./lib/client/index.d.ts",
59
- "default": "./lib/client.js"
60
- },
61
- "./package.json": "./package.json"
62
- },
63
- "files": [
64
- "lib",
65
- "opencli-plugin/*.js",
66
- "opencli-plugin/opencli-plugin.json",
67
- "opencli-plugin/package.json",
68
- "cordis.patch.yml",
69
- "images/logo.png",
70
- "NOTICE.md",
71
- "README.md"
72
- ],
73
- "dsh": {
74
- "bundle": {
75
- "patch": "./cordis.patch.yml"
76
- },
77
- "client": {
78
- "platform": "web",
79
- "inject": [
80
- "@deepseek-ai/dsh-client-runtime",
81
- "@deepseek-ai/dsh-api-remotes",
82
- "@deepseek-ai/dsh-client-ui-input-trigger",
83
- "@deepseek-ai/dsh-client-ui-conversation",
84
- "@deepseek-ai/dsh-client-ui-settings",
85
- "@deepseek-ai/dsh-client-locale"
86
- ]
87
- }
88
- },
89
- "scripts": {
90
- "build": "node build.mjs",
91
- "typecheck": "tsc -p tsconfig.json --noEmit",
92
- "test": "vitest run",
93
- "check": "pnpm run typecheck && pnpm run test && pnpm run build",
94
- "prepublishOnly": "pnpm run check",
95
- "prepare": "node build.mjs"
96
- },
97
- "peerDependencies": {
98
- "@deepseek-ai/cordis": ">=4.0.1",
99
- "@deepseek-ai/dsh-agent": ">=0.1.0-rc.6",
100
- "@deepseek-ai/dsh-api-remotes": ">=0.1.0-rc.8",
101
- "@deepseek-ai/dsh-attachment": ">=0.1.0-rc.6",
102
- "@deepseek-ai/dsh-client-connection": ">=0.1.0-rc.8",
103
- "@deepseek-ai/dsh-client-locale": ">=0.1.0-rc.8",
104
- "@deepseek-ai/dsh-client-runtime": ">=0.1.0-rc.8",
105
- "@deepseek-ai/dsh-client-ui-conversation": ">=0.1.0-rc.8",
106
- "@deepseek-ai/dsh-client-ui-input-trigger": ">=0.1.0-rc.8",
107
- "@deepseek-ai/dsh-client-ui-settings": ">=0.1.0-rc.8",
108
- "@deepseek-ai/dsh-client-ui-slots": ">=0.1.0-rc.8",
109
- "@deepseek-ai/dsh-file-reference": ">=0.1.0-rc.8",
110
- "@deepseek-ai/dsh-llm": ">=0.1.0-rc.6",
111
- "@deepseek-ai/dsh-output-retention": ">=0.1.0-rc.6",
112
- "@deepseek-ai/dsh-session": ">=0.1.0-rc.6",
113
- "@deepseek-ai/dsh-session-reference": ">=0.1.0-rc.6",
114
- "@deepseek-ai/dsh-settings": ">=0.1.0-rc.8",
115
- "@deepseek-ai/dsh-storage-domain": ">=0.1.0-rc.8",
116
- "@deepseek-ai/dsh-tools": ">=0.1.0-rc.6",
117
- "@deepseek-ai/dsh-typert-protocol": ">=0.1.0-rc.6",
118
- "@deepseek-ai/dsh-typert-registry": ">=0.1.0-rc.8",
119
- "react": "^18.2.0"
120
- },
121
- "peerDependenciesMeta": {
122
- "@deepseek-ai/dsh-session-reference": {
123
- "optional": true
124
- },
125
- "@deepseek-ai/dsh-file-reference": {
126
- "optional": true
127
- },
128
- "@deepseek-ai/dsh-client-runtime": {
129
- "optional": true
130
- },
131
- "@deepseek-ai/dsh-api-remotes": {
132
- "optional": true
133
- },
134
- "@deepseek-ai/dsh-client-ui-input-trigger": {
135
- "optional": true
136
- },
137
- "@deepseek-ai/dsh-client-ui-slots": {
138
- "optional": true
139
- },
140
- "@deepseek-ai/dsh-client-ui-conversation": {
141
- "optional": true
142
- },
143
- "@deepseek-ai/dsh-client-locale": {
144
- "optional": true
145
- },
146
- "@deepseek-ai/dsh-client-connection": {
147
- "optional": true
148
- },
149
- "@deepseek-ai/dsh-client-ui-settings": {
150
- "optional": true
151
- },
152
- "@deepseek-ai/dsh-settings": {
153
- "optional": true
154
- },
155
- "react": {
156
- "optional": true
157
- }
158
- },
159
- "dependencies": {
160
- "@deepseek-ai/schemastery": "^3.18.1",
161
- "@lobehub/icons": "^5.16.0",
162
- "react-markdown": "^10.1.0",
163
- "zod": "^4.4.3"
164
- },
165
- "devDependencies": {
166
- "@deepseek-ai/cordis": "^4.0.1",
167
- "@deepseek-ai/dsh-agent": "^0.1.0-rc.8",
168
- "@deepseek-ai/dsh-api-remotes": "^0.1.0-rc.8",
169
- "@deepseek-ai/dsh-attachment": "^0.1.0-rc.8",
170
- "@deepseek-ai/dsh-client-connection": "^0.1.0-rc.8",
171
- "@deepseek-ai/dsh-client-locale": "^0.1.0-rc.8",
172
- "@deepseek-ai/dsh-client-runtime": "^0.1.0-rc.8",
173
- "@deepseek-ai/dsh-client-ui-conversation": "^0.1.0-rc.8",
174
- "@deepseek-ai/dsh-client-ui-input-trigger": "^0.1.0-rc.8",
175
- "@deepseek-ai/dsh-client-ui-settings": "^0.1.0-rc.8",
176
- "@deepseek-ai/dsh-client-ui-slots": "^0.1.0-rc.8",
177
- "@deepseek-ai/dsh-file-reference": "^0.1.0-rc.8",
178
- "@deepseek-ai/dsh-llm": "^0.1.0-rc.8",
179
- "@deepseek-ai/dsh-output-retention": "^0.1.0-rc.8",
180
- "@deepseek-ai/dsh-session": "^0.1.0-rc.8",
181
- "@deepseek-ai/dsh-session-reference": "^0.1.0-rc.8",
182
- "@deepseek-ai/dsh-settings": "^0.1.0-rc.8",
183
- "@deepseek-ai/dsh-storage": "^0.1.0-rc.8",
184
- "@deepseek-ai/dsh-storage-domain": "^0.1.0-rc.8",
185
- "@deepseek-ai/dsh-system-prompt": "^0.1.0-rc.8",
186
- "@deepseek-ai/dsh-tools": "^0.1.0-rc.8",
187
- "@deepseek-ai/dsh-typert-protocol": "^0.1.0-rc.8",
188
- "@deepseek-ai/dsh-typert-registry": "^0.1.0-rc.8",
189
- "@jackwener/opencli": "1.8.6",
190
- "@types/node": "^22.20.1",
191
- "@types/react": "^18.2.0",
192
- "@types/react-dom": "^18.3.7",
193
- "esbuild": "^0.25.0",
194
- "jsdom": "^26.1.0",
195
- "react": "^18.2.0",
196
- "react-dom": "^18.2.0",
197
- "typescript": "^5.7.0",
198
- "vitest": "^3.0.0"
199
- }
200
- }
1
+ {
2
+ "name": "dsh-reference-anything",
3
+ "version": "0.4.0-alpha.1",
4
+ "description": "Reference commands, skills, workspace files, DSH sessions, local agent transcripts, cloud-drive files, and mirrored web-chat conversations from one DeepSeek Harness @ menu",
5
+ "license": "MIT",
6
+ "publishConfig": {
7
+ "access": "public"
8
+ },
9
+ "type": "module",
10
+ "repository": {
11
+ "type": "git",
12
+ "url": "git+https://github.com/Chael-Chael/dsh-reference-anything.git"
13
+ },
14
+ "main": "lib/index.js",
15
+ "types": "lib/index.d.ts",
16
+ "exports": {
17
+ ".": {
18
+ "types": "./lib/index.d.ts",
19
+ "default": "./lib/index.js"
20
+ },
21
+ "./reference": {
22
+ "types": "./lib/reference.d.ts",
23
+ "default": "./lib/reference.js"
24
+ },
25
+ "./tool": {
26
+ "types": "./lib/tool.d.ts",
27
+ "default": "./lib/tool.js"
28
+ },
29
+ "./file": {
30
+ "types": "./lib/sources/file.d.ts",
31
+ "default": "./lib/sources/file.js"
32
+ },
33
+ "./local-agent": {
34
+ "types": "./lib/sources/local-agent/index.d.ts",
35
+ "default": "./lib/sources/local-agent/index.js"
36
+ },
37
+ "./cloud-drive": {
38
+ "types": "./lib/sources/cloud-drive/index.d.ts",
39
+ "default": "./lib/sources/cloud-drive/index.js"
40
+ },
41
+ "./openlist": {
42
+ "types": "./lib/openlist/index.d.ts",
43
+ "default": "./lib/openlist/index.js"
44
+ },
45
+ "./web-chat": {
46
+ "types": "./lib/sources/web-chat/index.d.ts",
47
+ "default": "./lib/sources/web-chat/index.js"
48
+ },
49
+ "./web": {
50
+ "types": "./lib/web.d.ts",
51
+ "default": "./lib/web.js"
52
+ },
53
+ "./sync": {
54
+ "types": "./lib/sync/index.d.ts",
55
+ "default": "./lib/sync/index.js"
56
+ },
57
+ "./client": {
58
+ "types": "./lib/client/index.d.ts",
59
+ "default": "./lib/client.js"
60
+ },
61
+ "./package.json": "./package.json"
62
+ },
63
+ "files": [
64
+ "lib",
65
+ "opencli-plugin/*.js",
66
+ "opencli-plugin/opencli-plugin.json",
67
+ "opencli-plugin/package.json",
68
+ "cordis.patch.yml",
69
+ "images/logo.png",
70
+ "NOTICE.md",
71
+ "README.md"
72
+ ],
73
+ "dsh": {
74
+ "bundle": {
75
+ "patch": "./cordis.patch.yml"
76
+ },
77
+ "client": {
78
+ "platform": "web",
79
+ "inject": [
80
+ "@deepseek-ai/dsh-api-session-controller",
81
+ "@deepseek-ai/dsh-client-store",
82
+ "@deepseek-ai/dsh-api-remotes",
83
+ "@deepseek-ai/dsh-client-ui-input-trigger",
84
+ "@deepseek-ai/dsh-client-ui-conversation",
85
+ "@deepseek-ai/dsh-client-ui-renderer",
86
+ "@deepseek-ai/dsh-client-ui-settings",
87
+ "@deepseek-ai/dsh-client-ui-workspace",
88
+ "@deepseek-ai/dsh-client-locale"
89
+ ]
90
+ }
91
+ },
92
+ "scripts": {
93
+ "build": "node build.mjs",
94
+ "typecheck": "tsc -p tsconfig.json --noEmit",
95
+ "test": "vitest run",
96
+ "check": "npm run typecheck && npm run test && npm run build",
97
+ "prepublishOnly": "npm run check",
98
+ "prepare": "node build.mjs"
99
+ },
100
+ "peerDependencies": {
101
+ "@deepseek-ai/cordis": ">=4.0.1",
102
+ "@deepseek-ai/dsh-agent": ">=0.1.2-alpha.1",
103
+ "@deepseek-ai/dsh-api-remotes": ">=0.1.2-alpha.1",
104
+ "@deepseek-ai/dsh-attachment": ">=0.1.2-alpha.1",
105
+ "@deepseek-ai/dsh-client-connection": ">=0.1.2-alpha.1",
106
+ "@deepseek-ai/dsh-client-locale": ">=0.1.2-alpha.1",
107
+ "@deepseek-ai/dsh-api-session-controller": ">=0.1.2-alpha.1",
108
+ "@deepseek-ai/dsh-client-store": ">=0.1.2-alpha.1",
109
+ "@deepseek-ai/dsh-client-ui-conversation": ">=0.1.2-alpha.1",
110
+ "@deepseek-ai/dsh-client-ui-input-trigger": ">=0.1.2-alpha.1",
111
+ "@deepseek-ai/dsh-client-ui-renderer": ">=0.1.2-alpha.1",
112
+ "@deepseek-ai/dsh-client-ui-settings": ">=0.1.2-alpha.1",
113
+ "@deepseek-ai/dsh-client-ui-slots": ">=0.1.2-alpha.1",
114
+ "@deepseek-ai/dsh-client-ui-workspace": ">=0.1.2-alpha.1",
115
+ "@deepseek-ai/dsh-file-reference": ">=0.1.2-alpha.1",
116
+ "@deepseek-ai/dsh-llm": ">=0.1.2-alpha.1",
117
+ "@deepseek-ai/dsh-output-retention": ">=0.1.2-alpha.1",
118
+ "@deepseek-ai/dsh-session": ">=0.1.2-alpha.1",
119
+ "@deepseek-ai/dsh-session-reference": ">=0.1.2-alpha.1",
120
+ "@deepseek-ai/dsh-settings": ">=0.1.2-alpha.1",
121
+ "@deepseek-ai/dsh-storage-domain": ">=0.1.2-alpha.1",
122
+ "@deepseek-ai/dsh-tools": ">=0.1.2-alpha.1",
123
+ "@deepseek-ai/dsh-typert-protocol": ">=0.1.2-alpha.1",
124
+ "@deepseek-ai/dsh-typert-registry": ">=0.1.2-alpha.1",
125
+ "react": "^18.2.0"
126
+ },
127
+ "peerDependenciesMeta": {
128
+ "@deepseek-ai/dsh-session-reference": {
129
+ "optional": true
130
+ },
131
+ "@deepseek-ai/dsh-file-reference": {
132
+ "optional": true
133
+ },
134
+ "@deepseek-ai/dsh-api-session-controller": {
135
+ "optional": true
136
+ },
137
+ "@deepseek-ai/dsh-client-store": {
138
+ "optional": true
139
+ },
140
+ "@deepseek-ai/dsh-api-remotes": {
141
+ "optional": true
142
+ },
143
+ "@deepseek-ai/dsh-client-ui-input-trigger": {
144
+ "optional": true
145
+ },
146
+ "@deepseek-ai/dsh-client-ui-slots": {
147
+ "optional": true
148
+ },
149
+ "@deepseek-ai/dsh-client-ui-renderer": {
150
+ "optional": true
151
+ },
152
+ "@deepseek-ai/dsh-client-ui-workspace": {
153
+ "optional": true
154
+ },
155
+ "@deepseek-ai/dsh-client-ui-conversation": {
156
+ "optional": true
157
+ },
158
+ "@deepseek-ai/dsh-client-locale": {
159
+ "optional": true
160
+ },
161
+ "@deepseek-ai/dsh-client-connection": {
162
+ "optional": true
163
+ },
164
+ "@deepseek-ai/dsh-client-ui-settings": {
165
+ "optional": true
166
+ },
167
+ "@deepseek-ai/dsh-settings": {
168
+ "optional": true
169
+ },
170
+ "react": {
171
+ "optional": true
172
+ }
173
+ },
174
+ "dependencies": {
175
+ "@deepseek-ai/schemastery": "^3.18.1",
176
+ "@lobehub/icons": "^5.16.0",
177
+ "react-markdown": "^10.1.0",
178
+ "zod": "^4.4.3"
179
+ },
180
+ "devDependencies": {
181
+ "@deepseek-ai/cordis": "^4.0.1",
182
+ "@deepseek-ai/dsh-agent": "^0.1.2-alpha.1",
183
+ "@deepseek-ai/dsh-api-remotes": "^0.1.2-alpha.1",
184
+ "@deepseek-ai/dsh-attachment": "^0.1.2-alpha.1",
185
+ "@deepseek-ai/dsh-client-connection": "^0.1.2-alpha.1",
186
+ "@deepseek-ai/dsh-client-locale": "^0.1.2-alpha.1",
187
+ "@deepseek-ai/dsh-api-session-controller": "^0.1.2-alpha.1",
188
+ "@deepseek-ai/dsh-client-store": "^0.1.2-alpha.1",
189
+ "@deepseek-ai/dsh-client-ui-conversation": "^0.1.2-alpha.1",
190
+ "@deepseek-ai/dsh-client-ui-input-trigger": "^0.1.2-alpha.1",
191
+ "@deepseek-ai/dsh-client-ui-renderer": "^0.1.2-alpha.1",
192
+ "@deepseek-ai/dsh-client-ui-settings": "^0.1.2-alpha.1",
193
+ "@deepseek-ai/dsh-client-ui-slots": "^0.1.2-alpha.1",
194
+ "@deepseek-ai/dsh-client-ui-workspace": "^0.1.2-alpha.1",
195
+ "@deepseek-ai/dsh-file-reference": "^0.1.2-alpha.1",
196
+ "@deepseek-ai/dsh-llm": "^0.1.2-alpha.1",
197
+ "@deepseek-ai/dsh-output-retention": "^0.1.2-alpha.1",
198
+ "@deepseek-ai/dsh-session": "^0.1.2-alpha.1",
199
+ "@deepseek-ai/dsh-session-reference": "^0.1.2-alpha.1",
200
+ "@deepseek-ai/dsh-settings": "^0.1.2-alpha.1",
201
+ "@deepseek-ai/dsh-storage": "^0.1.2-alpha.1",
202
+ "@deepseek-ai/dsh-storage-domain": "^0.1.2-alpha.1",
203
+ "@deepseek-ai/dsh-system-prompt": "^0.1.2-alpha.1",
204
+ "@deepseek-ai/dsh-tools": "^0.1.2-alpha.1",
205
+ "@deepseek-ai/dsh-typert-protocol": "^0.1.2-alpha.1",
206
+ "@deepseek-ai/dsh-typert-registry": "^0.1.2-alpha.1",
207
+ "@jackwener/opencli": "1.8.6",
208
+ "@types/node": "^22.20.1",
209
+ "@types/react": "^18.2.0",
210
+ "@types/react-dom": "^18.3.7",
211
+ "esbuild": "^0.25.0",
212
+ "jsdom": "^26.1.0",
213
+ "react": "^18.2.0",
214
+ "react-dom": "^18.2.0",
215
+ "typescript": "^5.7.0",
216
+ "vitest": "^3.0.0"
217
+ }
218
+ }