dsh-zotero 0.4.0 → 0.4.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.en.md +9 -0
- package/README.md +9 -0
- package/lib/client.js +5 -5
- package/lib/client.js.map +2 -2
- package/package.json +41 -1
package/README.en.md
CHANGED
|
@@ -65,6 +65,7 @@ The plugin provides a settings card under **Settings → Plugins** where you can
|
|
|
65
65
|
|
|
66
66
|
- Zotero ≥ 7 with local API enabled: **Settings → Advanced → "Allow other applications on this computer to communicate with Zotero"**
|
|
67
67
|
- Node.js ≥ 22.19 (or ≥ 24)
|
|
68
|
+
- dsh 0.1.0-rc.7 series host (all `@deepseek-ai/dsh-*` peer dependencies are `^0.1.0-rc.7`)
|
|
68
69
|
- Local API at `http://127.0.0.1:23119/api`, unauthenticated, read-only
|
|
69
70
|
|
|
70
71
|
## Usage example
|
|
@@ -100,6 +101,14 @@ More examples in [Features](docs/features.md).
|
|
|
100
101
|
- **Full-text evidence depends on Zotero's index**: unindexed PDFs yield no full-text passages
|
|
101
102
|
- **Attachment depth depends on the harness**: `zotero_attachment` returns the file location; reading the PDF further needs a matching host capability
|
|
102
103
|
|
|
104
|
+
## Permissions and external side effects
|
|
105
|
+
|
|
106
|
+
- **Network**: HTTP requests go only to `http://127.0.0.1:23119/api` (redirects are not followed); `resolveConfig` enforces a loopback address
|
|
107
|
+
- **Filesystem**: read-only — `zotero_attachment` verifies attachment paths with `existsSync`; no file writes
|
|
108
|
+
- **Persistence**: the only write comes from the settings card under Settings → Plugins, saved to the `zotero:` user layer of `$DSH_HOME/settings.yaml`
|
|
109
|
+
- **No shell / native / background tasks**: the plugin runs no shell commands, loads no native modules, and starts no daemon
|
|
110
|
+
- **Restart**: after installing or removing the plugin, restart dsh and start a new session; configuration changes hot-reload on save without a restart
|
|
111
|
+
|
|
103
112
|
## Documentation
|
|
104
113
|
|
|
105
114
|
| Doc | Covers |
|
package/README.md
CHANGED
|
@@ -65,6 +65,7 @@ dsh plugin --profile <name> add ./dsh-zotero-*.tgz
|
|
|
65
65
|
|
|
66
66
|
- Zotero ≥ 7 桌面版,启用本地 API:**设置 → 高级 → "允许其他应用程序与 Zotero 通信"**
|
|
67
67
|
- Node.js ≥ 22.19(或 ≥ 24)
|
|
68
|
+
- 宿主 dsh 0.1.0-rc.7 系列(`@deepseek-ai/dsh-*` peer 依赖均为 `^0.1.0-rc.7`)
|
|
68
69
|
- 本地 API 地址 `http://127.0.0.1:23119/api`,无认证,只读
|
|
69
70
|
|
|
70
71
|
## 使用示例
|
|
@@ -100,6 +101,14 @@ Agent → zotero_export(refs: [1,2,3], format: "bibtex")
|
|
|
100
101
|
- **全文证据依赖 Zotero 索引**:未索引的 PDF 无法提供全文段落
|
|
101
102
|
- **附件深度取决于宿主**:`zotero_attachment` 返回文件位置,继续阅读 PDF 需要宿主具备对应能力
|
|
102
103
|
|
|
104
|
+
## 权限与外部副作用
|
|
105
|
+
|
|
106
|
+
- **网络**:只向 `http://127.0.0.1:23119/api` 发起 HTTP 请求(不跟随重定向),`resolveConfig` 强制 loopback 地址
|
|
107
|
+
- **文件**:只读——`zotero_attachment` 用 `existsSync` 校验 Zotero 返回的附件路径,不写文件系统
|
|
108
|
+
- **持久化**:唯一写入来自 Settings → Plugins 中的配置卡片,保存到 `$DSH_HOME/settings.yaml` 的 `zotero:` 用户层
|
|
109
|
+
- **无 Shell / native / 后台任务**:插件不执行 shell 命令、不加载 native 模块、不启动常驻进程
|
|
110
|
+
- **重启**:安装或卸载插件后需要重启 dsh 并新建会话;配置修改保存即热更新,无需重启
|
|
111
|
+
|
|
103
112
|
## 文档
|
|
104
113
|
|
|
105
114
|
| 文档 | 内容 |
|
package/lib/client.js
CHANGED
|
@@ -1510,10 +1510,10 @@ var import_dsh_client_ui_primitives3 = require("@deepseek-ai/dsh-client-ui-primi
|
|
|
1510
1510
|
|
|
1511
1511
|
// src/client/build-info.ts
|
|
1512
1512
|
function buildVersion() {
|
|
1513
|
-
return true ? "0.4.
|
|
1513
|
+
return true ? "0.4.1" : "unknown";
|
|
1514
1514
|
}
|
|
1515
1515
|
function buildCommit() {
|
|
1516
|
-
return true ? "
|
|
1516
|
+
return true ? "a0f5e3f" : "unknown";
|
|
1517
1517
|
}
|
|
1518
1518
|
function buildInfoOf() {
|
|
1519
1519
|
return `${buildVersion()} \xB7 ${buildCommit()}`;
|
|
@@ -1537,7 +1537,7 @@ if (typeof document !== "undefined" && !document.querySelector('style[data-plugi
|
|
|
1537
1537
|
tag.textContent = style;
|
|
1538
1538
|
document.head.appendChild(tag);
|
|
1539
1539
|
}
|
|
1540
|
-
var workspace_default = { "
|
|
1540
|
+
var workspace_default = { "emptyIcon": "Tz8rAq_emptyIcon", "emptyText": "Tz8rAq_emptyText", "inspector": "Tz8rAq_inspector", "filterArrowLeft": "Tz8rAq_filterArrowLeft", "panel": "Tz8rAq_panel", "section": "Tz8rAq_section", "diagnosis": "Tz8rAq_diagnosis", "refresh": "Tz8rAq_refresh", "starterRow": "Tz8rAq_starterRow", "filterBar": "Tz8rAq_filterBar", "listItemTitle": "Tz8rAq_listItemTitle", "sectionLabel": "Tz8rAq_sectionLabel", "passage": "Tz8rAq_passage", "detailTabActive": "Tz8rAq_detailTabActive", "lensTabActive": "Tz8rAq_lensTabActive", "filterClear": "Tz8rAq_filterClear", "emptyNote": "Tz8rAq_emptyNote", "lensBar": "Tz8rAq_lensBar", "actionRow": "Tz8rAq_actionRow", "inspectorTitle": "Tz8rAq_inspectorTitle", "empty": "Tz8rAq_empty", "detailTab": "Tz8rAq_detailTab", "exportsPage": "Tz8rAq_exportsPage", "action": "Tz8rAq_action", "inspectorHead": "Tz8rAq_inspectorHead", "summaryLine": "Tz8rAq_summaryLine", "menuButton": "Tz8rAq_menuButton", "passageHead": "Tz8rAq_passageHead", "detailToggle": "Tz8rAq_detailToggle", "toolbar": "Tz8rAq_toolbar", "backAction": "Tz8rAq_backAction", "note": "Tz8rAq_note", "warning": "Tz8rAq_warning", "detailTabCount": "Tz8rAq_detailTabCount", "sidebar": "Tz8rAq_sidebar", "cardStack": "Tz8rAq_cardStack", "inspectorMeta": "Tz8rAq_inspectorMeta", "sourceTag": "Tz8rAq_sourceTag", "inspectorTabs": "Tz8rAq_inspectorTabs", "badge": "Tz8rAq_badge", "inspectorBody": "Tz8rAq_inspectorBody", "listbox": "Tz8rAq_listbox", "evidencePage": "Tz8rAq_evidencePage", "exportStack": "Tz8rAq_exportStack", "lensTabCount": "Tz8rAq_lensTabCount", "passages": "Tz8rAq_passages", "emptyWrap": "Tz8rAq_emptyWrap", "workspace": "Tz8rAq_workspace", "spacer": "Tz8rAq_spacer", "listItem": "Tz8rAq_listItem", "listItemSelected": "Tz8rAq_listItemSelected", "filterArrowRight": "Tz8rAq_filterArrowRight", "line": "Tz8rAq_line", "evidenceEntry": "Tz8rAq_evidenceEntry", "lensTab": "Tz8rAq_lensTab", "listItemMeta": "Tz8rAq_listItemMeta", "inspectorTitleWrap": "Tz8rAq_inspectorTitleWrap", "view": "Tz8rAq_view", "filterArrow": "Tz8rAq_filterArrow", "badges": "Tz8rAq_badges", "statusText": "Tz8rAq_statusText", "availability": "Tz8rAq_availability" };
|
|
1541
1541
|
|
|
1542
1542
|
// src/client/components/workspace/WorkspaceToolbar.tsx
|
|
1543
1543
|
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
@@ -1869,7 +1869,7 @@ if (typeof document !== "undefined" && !document.querySelector('style[data-plugi
|
|
|
1869
1869
|
tag.textContent = style2;
|
|
1870
1870
|
document.head.appendChild(tag);
|
|
1871
1871
|
}
|
|
1872
|
-
var open_default = { "note": "jGTtSG_note", "
|
|
1872
|
+
var open_default = { "note": "jGTtSG_note", "button": "jGTtSG_button", "blocked": "jGTtSG_blocked", "link": "jGTtSG_link", "linkWrap": "jGTtSG_linkWrap", "srOnly": "jGTtSG_srOnly" };
|
|
1873
1873
|
|
|
1874
1874
|
// src/client/components/open/BlockedOpenAction.tsx
|
|
1875
1875
|
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
@@ -2038,7 +2038,7 @@ if (typeof document !== "undefined" && !document.querySelector('style[data-plugi
|
|
|
2038
2038
|
tag.textContent = style3;
|
|
2039
2039
|
document.head.appendChild(tag);
|
|
2040
2040
|
}
|
|
2041
|
-
var SourcesList_default = { "
|
|
2041
|
+
var SourcesList_default = { "link": "-IqP-a_link", "exportSectionActions": "-IqP-a_exportSectionActions", "lineAction": "-IqP-a_lineAction", "exportRow": "-IqP-a_exportRow", "exportSectionHead": "-IqP-a_exportSectionHead", "exportTitle": "-IqP-a_exportTitle", "chevronOpen": "-IqP-a_chevronOpen", "line": "-IqP-a_line", "card": "-IqP-a_card", "exportKeys": "-IqP-a_exportKeys", "unresolvedItems": "-IqP-a_unresolvedItems", "cardTitle": "-IqP-a_cardTitle", "note": "-IqP-a_note", "passage": "-IqP-a_passage", "exportCode": "-IqP-a_exportCode", "chevron": "-IqP-a_chevron", "sourceTag": "-IqP-a_sourceTag", "unresolvedItemsText": "-IqP-a_unresolvedItemsText", "cardHead": "-IqP-a_cardHead", "exportToggle": "-IqP-a_exportToggle", "exportSection": "-IqP-a_exportSection", "exportSectionCount": "-IqP-a_exportSectionCount", "lineActions": "-IqP-a_lineActions", "exportCodeHead": "-IqP-a_exportCodeHead", "exportSectionTitle": "-IqP-a_exportSectionTitle", "documentTitle": "-IqP-a_documentTitle", "availability": "-IqP-a_availability", "exportHead": "-IqP-a_exportHead", "exportFacts": "-IqP-a_exportFacts", "exportPre": "-IqP-a_exportPre", "passages": "-IqP-a_passages", "exportCodeLabel": "-IqP-a_exportCodeLabel", "exportBody": "-IqP-a_exportBody", "passageHead": "-IqP-a_passageHead", "documentKey": "-IqP-a_documentKey", "exportKeysText": "-IqP-a_exportKeysText" };
|
|
2042
2042
|
|
|
2043
2043
|
// src/client/components/CopyButton.tsx
|
|
2044
2044
|
var import_jsx_runtime10 = require("react/jsx-runtime");
|