dsh-obsidian-memo 0.16.3 → 0.16.4

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 CHANGED
@@ -10,7 +10,7 @@ Harness sidebar panel · local Markdown · uses your default model · one-click
10
10
 
11
11
  [What it is](#what-it-is) · [Install](#install) · [Usage](#usage) · [Data & privacy](#data--privacy) · [FAQ](#faq) · [简体中文](README.md)
12
12
 
13
- ![DeepSeek Harness 0.2.x](https://img.shields.io/badge/DeepSeek%20Harness-0.2.x-111?style=flat-square) [![MIT](https://img.shields.io/badge/MIT-open%20source-111?style=flat-square)](LICENSE) ![version 0.16.3](https://img.shields.io/badge/version-0.16.3-111?style=flat-square) [![Star](https://img.shields.io/github/stars/cavenzhong/dsh-obsidian-memo?style=flat-square&color=111&label=Star)](https://github.com/cavenzhong/dsh-obsidian-memo/stargazers)
13
+ ![DeepSeek Harness 0.2.x](https://img.shields.io/badge/DeepSeek%20Harness-0.2.x-111?style=flat-square) [![MIT](https://img.shields.io/badge/MIT-open%20source-111?style=flat-square)](LICENSE) ![version 0.16.4](https://img.shields.io/badge/version-0.16.4-111?style=flat-square) [![Star](https://img.shields.io/github/stars/cavenzhong/dsh-obsidian-memo?style=flat-square&color=111&label=Star)](https://github.com/cavenzhong/dsh-obsidian-memo/stargazers)
14
14
 
15
15
  ## What it is
16
16
 
@@ -63,26 +63,26 @@ The right panel shows the full note, collapsible comments, and checkable tasks.
63
63
  - A local **Obsidian vault**. The plugin reads and writes that folder directly and does not require an Obsidian community plugin.
64
64
  - No build step and no runtime dependencies; you do not need Node, pnpm, or a separate API key.
65
65
 
66
- **1. Get the source**
66
+ **1. Install from npm**
67
67
 
68
- ```bash
69
- git clone https://github.com/cavenzhong/dsh-obsidian-memo.git
70
- ```
68
+ Open the DSH Plugins page, choose Add plugin, and enter `dsh-obsidian-memo`. You can also ask the Harness agent to use `plugin_manager`:
71
69
 
72
- A ZIP download works too. Note the absolute path of the folder.
70
+ ```text
71
+ action: install_bundle
72
+ target: dsh-obsidian-memo
73
+ ```
73
74
 
74
- **2. Install inside DeepSeek Harness**
75
+ Open the notes entry in the Harness sidebar. If you previously installed a local `link:` copy, remove that entry first; the npm package `dsh-sticky-notes` belongs to someone else and is unrelated.
75
76
 
76
- Ask the agent in Harness to call the `plugin_manager` tool, replacing the path with your own:
77
+ **Local development**
77
78
 
78
- ```text
79
- action: install_bundle
80
- target: link:/absolute/path/to/dsh-obsidian-memo
79
+ ```bash
80
+ git clone https://github.com/cavenzhong/dsh-obsidian-memo.git
81
81
  ```
82
82
 
83
- `link:` refers to the local source folder, so keep it in place after installing. Open the notes entry in the Harness sidebar. If you previously installed the old package name (`dsh-sticky-notes`), remove that package first.
83
+ Install with `target: link:/absolute/path/to/dsh-obsidian-memo` for development or preview. A `link:` install uses the local directory and does not provide npm version checks.
84
84
 
85
- **3. Pick folders and start writing**
85
+ **2. Pick folders and start writing**
86
86
 
87
87
  Open the top-right gear or Settings → Plugins → Obsidian MEMO. Settings are grouped into Folders, AI, Images, and Manage & about. Choose the vault once; other folders use one shared dropdown with creation, browsing, search, and recent selections. AI personas use horizontal emoji tabs with an add button.
88
88
 
@@ -102,7 +102,7 @@ Configuration defaults to `~/.config/dsh-obsidian-memo/config.json` (Windows: `%
102
102
 
103
103
  **Update, disable, uninstall**
104
104
 
105
- - **Update:** `git pull`, then run the install command again, or disable and re-enable the plugin.
105
+ - **Update:** npm installs can check and apply updates from the DSH Plugins page. The manager checks the npm package version. For a `link:` install, run `git pull` and repeat the local install command.
106
106
  - **Disable:** switch it off on the Plugins page; notes and settings stay put.
107
107
  - **Uninstall:** remove the plugin on the Plugins page. With a `link:` install the source folder is not deleted, and independent user configuration is also retained; find its location in Manage & about and remove it manually if desired; **notes and attachments in Obsidian are untouched**.
108
108
 
@@ -246,7 +246,7 @@ pnpm test # generated output, architecture checks and regression tests
246
246
  pnpm dev # optional: watch browser sources alongside Harness HMR
247
247
  ```
248
248
 
249
- To release, update the version in `package.json` and the README badges, add its entry to `docs/CHANGELOG.md`, and push to `main`. GitHub Actions tests and packs the plugin, then creates a `v<version>` tag and GitHub Release with a `.tgz` asset. Existing releases are skipped. Pushing a version tag also triggers publication; to publish an existing tag, enter it under Actions → Publish release → Run workflow. Ordinary commits do not create releases.
249
+ To release, update the version in `package.json` and both README badges, add an entry to `docs/CHANGELOG.md`, and push to `main`. GitHub Actions tests and packs one `.tgz`, publishes that exact file to npm, and attaches it to the GitHub Release. The npm package contains runtime files, browser sources and build scripts, locales, the bundle patch, and documentation; tests and internal agent instructions are excluded. If the package name does not exist on npm yet, sign in locally and run `npm publish --access public --tag dsh-bootstrap` from the stable 0.16.3 source, completing initial package creation with your account's 2FA. The temporary `dsh-bootstrap` tag does not take over `latest`; no CI token is needed. Once the package exists, add an npm Trusted Publisher for GitHub Actions, user `cavenzhong`, repository `dsh-obsidian-memo`, workflow filename `release.yml`, and allow `npm publish`. Push 0.16.4 within two days so its first OIDC publish validates the publisher. If the package already exists, configure the publisher and push within two days. GitHub Actions then publishes with OIDC and stores no npm token. The workflow independently skips an npm version or GitHub Release that already exists, so a failed side can be retried. Ordinary commits do not create releases.
250
250
 
251
251
  | Path | Contents |
252
252
  | --- | --- |
@@ -259,7 +259,7 @@ To release, update the version in `package.json` and the README badges, add its
259
259
  | `test/` / `test-support/` | Focused suites and shared test harnesses. |
260
260
  | `docs/` | Guide, implementation contract, changelog, known issues. |
261
261
 
262
- Version 0.16.3 separates Host services, browser interactions and large test suites. Start with the [architecture map](docs/ARCHITECTURE.md) and [AGENTS.md](AGENTS.md) to locate each feature and its tests. The [0.16 performance review](docs/AUDIT-0.16.md) retains the earlier audit findings (Chinese).
262
+ Version 0.16.3 separated Host services, browser interactions and large test suites. Start with the [architecture map](docs/ARCHITECTURE.md) and the [repository development guide](https://github.com/cavenzhong/dsh-obsidian-memo/blob/main/AGENTS.md) to locate each feature and its tests. The [0.16 performance review](docs/AUDIT-0.16.md) retains the earlier audit findings (Chinese).
263
263
 
264
264
  See the [usage and development guide](docs/GUIDE.md) (Chinese) for full behavior and the HMR workflow, and the [implementation contract](docs/CONTRACT.md) for API and UX specifications.
265
265
 
package/README.md CHANGED
@@ -10,7 +10,7 @@ Harness 侧栏入口 · 本地 Markdown · 复用默认模型 · 一键开档
10
10
 
11
11
  [它是什么](#它是什么) · [安装](#安装) · [用法](#用法) · [数据与隐私](#数据与隐私) · [常见问题](#常见问题) · [English](README.en.md)
12
12
 
13
- ![DeepSeek Harness 0.2.x](https://img.shields.io/badge/DeepSeek%20Harness-0.2.x-111?style=flat-square) [![MIT](https://img.shields.io/badge/MIT-%E5%BC%80%E6%BA%90-111?style=flat-square)](LICENSE) ![version 0.16.3](https://img.shields.io/badge/version-0.16.3-111?style=flat-square) [![Star](https://img.shields.io/github/stars/cavenzhong/dsh-obsidian-memo?style=flat-square&color=111&label=Star)](https://github.com/cavenzhong/dsh-obsidian-memo/stargazers)
13
+ ![DeepSeek Harness 0.2.x](https://img.shields.io/badge/DeepSeek%20Harness-0.2.x-111?style=flat-square) [![MIT](https://img.shields.io/badge/MIT-%E5%BC%80%E6%BA%90-111?style=flat-square)](LICENSE) ![version 0.16.4](https://img.shields.io/badge/version-0.16.4-111?style=flat-square) [![Star](https://img.shields.io/github/stars/cavenzhong/dsh-obsidian-memo?style=flat-square&color=111&label=Star)](https://github.com/cavenzhong/dsh-obsidian-memo/stargazers)
14
14
 
15
15
  ## 它是什么
16
16
 
@@ -65,26 +65,26 @@ dsh-obsidian-memo 在 Harness 左侧栏提供便签入口,把 Obsidian 文件
65
65
  - 本机可访问的 **Obsidian 仓库**。插件直接读写这个文件夹,不需要在 Obsidian 里安装任何配套插件。
66
66
  - 插件无需构建,也没有运行时依赖;不需要单独准备 Node、pnpm 或 API Key。
67
67
 
68
- **1. 准备源码**
68
+ **1. 从 npm 安装**
69
69
 
70
- ```bash
71
- git clone https://github.com/cavenzhong/dsh-obsidian-memo.git
72
- ```
70
+ 在 DSH「插件」页点「添加插件」并输入 `dsh-obsidian-memo`。也可以在 Harness 对话中让 agent 调用 `plugin_manager`:
73
71
 
74
- 也可以下载 ZIP 解压。记下这个文件夹的绝对路径。
72
+ ```text
73
+ action: install_bundle
74
+ target: dsh-obsidian-memo
75
+ ```
75
76
 
76
- **2. 在 DeepSeek Harness 中安装**
77
+ 安装后打开 Harness 左侧栏的便签入口。如果之前用 `link:` 装过本地目录版本,先在插件页移除旧条目再安装本包;npm 上的 `dsh-sticky-notes` 是其他人的插件,与本项目无关。
77
78
 
78
- 在 Harness 对话中让 agent 调用 `plugin_manager` 工具,把路径换成你自己的:
79
+ **本地开发**
79
80
 
80
- ```text
81
- action: install_bundle
82
- target: link:/absolute/path/to/dsh-obsidian-memo
81
+ ```bash
82
+ git clone https://github.com/cavenzhong/dsh-obsidian-memo.git
83
83
  ```
84
84
 
85
- `link:` 引用的是本地源码目录,安装后请保留该目录。装好后打开 Harness 左侧栏的便签入口;如果之前装过旧包名的版本(`dsh-sticky-notes`),先移除旧包再安装本包。
85
+ 在 Harness 对话中调用 `plugin_manager` 并使用 `target: link:/absolute/path/to/dsh-obsidian-memo`。`link:` 安装引用本地目录,适合开发和预览,不提供 npm 版本检查。
86
86
 
87
- **3. 选好目录,开始记录**
87
+ **2. 选好目录,开始记录**
88
88
 
89
89
  点右上角齿轮,或到官方「设置 → 插件 → Obsidian MEMO」。先选仓库和便签文件夹;其余文件夹只显示仓库相对路径,共用支持新建、系统选择、搜索和最近记录的下拉菜单。设置分为「文件夹 / AI / 图片 / 管理与关于」,AI 角色通过横向 Emoji 标签切换,末尾加号添加角色。
90
90
 
@@ -104,7 +104,7 @@ target: link:/absolute/path/to/dsh-obsidian-memo
104
104
 
105
105
  配置默认保存在 `~/.config/dsh-obsidian-memo/config.json`(Windows 为 `%APPDATA%/dsh-obsidian-memo/config.json`;支持 `XDG_CONFIG_HOME`)。首次运行自动迁移旧 `data/settings.json` 并保留原文件。「加载配置」直接弹出系统 JSON 文件选择窗,选中即加载,取消则保留当前配置。「打开配置 / 加载配置 / 更多」按钮等宽;「更多」收纳打开文件、重新加载与另存并使用。管理页底部以一行淡色小字显示 GitHub 文字链接与 `by cavenzhong`;外部编辑自动加载,损坏文件不会被覆盖。`DSH_STICKY_NOTES_SETTINGS` 仍可固定配置位置。
106
106
 
107
- - **更新**:`git pull` 后重新执行一次上面的安装命令,或在插件页停用再启用。
107
+ - **更新**:npm 安装的插件可在 DSH「插件」页查看版本并执行更新;管理器根据 npm 包版本检查更新。`link:` 安装请 `git pull` 后重新执行本地安装命令。
108
108
  - **停用**:在插件页关闭开关即可,笔记与设置都不受影响。
109
109
  - **卸载**:在插件页移除插件。`link:` 安装时源码目录不会被删除,独立用户配置仍保留,可从「管理与关于」查看位置并手动清理;**Obsidian 里的笔记和附件不会被删除**。
110
110
 
@@ -248,7 +248,7 @@ pnpm test # 构建一致性 + 架构边界 + 单元与集成回归
248
248
  pnpm dev # 可选:持续构建前端,配合 Harness HMR
249
249
  ```
250
250
 
251
- 发布时更新 `package.json` 的版本号和本页版本标记,并在 `docs/CHANGELOG.md` 添加对应记录,再推送到 `main`。GitHub Actions 会测试、打包并自动创建 `v<版本号>` 标签与 Release,附上插件 `.tgz`;同一版本已发布时跳过。推送版本标签也可触发发布,已有标签可在 Actions → Publish release → Run workflow 中填写后补发。普通提交不新增 Release。
251
+ 发布时更新 `package.json` 的版本号和中英文 README 标记,并在 `docs/CHANGELOG.md` 添加对应记录,再推送到 `main`。GitHub Actions 会测试并打出单一 `.tgz`,将同一文件发布到 npm 并作为 GitHub Release 附件;npm 包包含运行文件、前端源码与构建脚本、locale、bundle patch 和文档,不包含测试或内部指引。若包名尚未在 npm 创建,先从 0.16.3 稳定源码在本机登录 npm 并运行 `npm publish --access public --tag dsh-bootstrap`,按提示使用账号 2FA 完成首次创建;临时 `dsh-bootstrap` 标签不会占用 `latest`,不需要 CI token。包存在后,在 npm 包设置中添加 Trusted Publisher:GitHub Actions、用户 `cavenzhong`、仓库 `dsh-obsidian-memo`、工作流文件 `release.yml`,并允许 `npm publish`。配置后两天内推送 0.16.4,让首次 OIDC 发布完成验证。若包已存在,只需配置 Trusted Publisher 并在两天内推送。之后 GitHub Actions 使用 OIDC 发布,不保存 npm token。若 npm 版本或 GitHub Release 已存在,工作流会分别跳过对应发布,失败后可重跑。普通提交不新增 Release。
252
252
 
253
253
  | 目录 | 内容 |
254
254
  | --- | --- |
@@ -261,7 +261,7 @@ pnpm dev # 可选:持续构建前端,配合 Harness HMR
261
261
  | `test/` / `test-support/` | 按功能拆分的测试与共享运行器。 |
262
262
  | `docs/` | 使用与开发指南、实现契约、版本记录、已知问题。 |
263
263
 
264
- 0.16.3 将 Host 服务、浏览器交互和大型测试按职责拆分。开发或让 AI agent 接手时,先看 [架构导航](docs/ARCHITECTURE.md) 与 [AGENTS.md](AGENTS.md),按功能定位源码和测试;0.16 的性能复核记录保留在 [排查报告](docs/AUDIT-0.16.md)。
264
+ 0.16.3 将 Host 服务、浏览器交互和大型测试按职责拆分。开发或让 AI agent 接手时,先看 [架构导航](docs/ARCHITECTURE.md) 与 [仓库开发指引](https://github.com/cavenzhong/dsh-obsidian-memo/blob/main/AGENTS.md),按功能定位源码和测试;0.16 的性能复核记录保留在 [排查报告](docs/AUDIT-0.16.md)。
265
265
 
266
266
  更完整的操作说明、文件行为与 HMR 开发方式见 [使用与开发指南](docs/GUIDE.md);接口与 UX 规格见 [实现契约](docs/CONTRACT.md)。
267
267
 
@@ -1,4 +1,4 @@
1
- # 代码结构与修改入口(0.16.3)
1
+ # 代码结构与修改入口(0.16.4)
2
2
 
3
3
  先按下表定位功能,再读目标文件的导入、参数和导出。RPC 与用户交互行为以 [CONTRACT.md](CONTRACT.md) 为准;历史修复见 [CHANGELOG.md](CHANGELOG.md),暂缓事项见 [KNOWN_ISSUES.md](KNOWN_ISSUES.md)。
4
4
 
package/docs/CHANGELOG.md CHANGED
@@ -4,6 +4,12 @@
4
4
 
5
5
  以下保留各版本发布时的变更记录,当前功能以 README 与实现契约为准。
6
6
 
7
+ ## 版本 0.16.4 变更摘要(2026-11-12)
8
+
9
+ - 新增 npm 公共分发配置,包版本、README 标记、DSH `dsh.bundle.patch` manifest 与 npm 发布元数据对齐;npm 包保留 DSH 运行文件、浏览器源码与构建脚本、bundle patch、locale、文档和许可文件,不包含测试与内部 agent 指引。
10
+ - GitHub Actions 在测试后只打包一次,将同一 `.tgz` 发布到 npm 并附到 GitHub Release;npm 与 GitHub Release 分别检查版本、支持失败后重跑。工作流使用 npm Trusted Publisher / OIDC,无需保存长期 token;若 npm 包名尚未创建,先由维护者本机交互式 2FA 用 `dsh-bootstrap` dist-tag 创建 0.16.3 包,再在两天验证期内发布 0.16.4。
11
+ - README 更新为从 npm 安装,并说明 DSH 插件页的版本检查与更新;`link:` 安装保留为本地开发方式。
12
+
7
13
  ## 版本 0.16.3 变更摘要(2026-11-12)
8
14
 
9
15
  - 重整浏览器代码:原约 6,200 行单文件拆成 `src/client/` 内按功能组织的 ES 模块;数据、编辑、设置、图片、拖拽、AI、筛选分页、布局、样式与文案各自维护。主面板缩至约 400 行,只组合状态和操作入口。
package/docs/CONTRACT.md CHANGED
@@ -42,7 +42,7 @@ Obsidian 的「进行时」文件夹 → DSH 左侧栏一个便签图标 → 中
42
42
 
43
43
  ## 1. 包结构与运行方式
44
44
 
45
- - 包目录:仓库根目录(本地开发用 `link:` 引用,见 README 的安装说明)
45
+ - 包目录:仓库根目录;npm 使用 `dsh-obsidian-memo` 公共包,本地开发用 `link:` 引用。`package.json` 的 `dsh.bundle.patch` 指向随包发布的 `cordis.patch.yml`,让插件管理器按 npm 包版本检查与更新。
46
46
  - 包名:`dsh-obsidian-memo`,ESM,零运行时依赖,`package.json` 为唯一运行时版本来源。
47
47
  - Host 半:`lib/index.js`(Cordis 组合入口,`export async function apply(ctx, config)`)与 `lib/host/`(配置、扫描、文件操作、任务和 RPC 服务);`lib/files.js`(真实路径校验、内容版本、原子写入);`lib/capture.js`(快速新建便签:模板 meta、附件写入、独占发布);`lib/obsidian.js`(在 Obsidian 打开:URI 构造 + 系统打开器)。
48
48
  - Client 半:`src/client/` 为模块源码,`pnpm build` 生成 `lib/client.js` 单文件浏览器 bundle(`window.__ModuleLoader__.load({ id: 'dsh-obsidian-memo', factory(require) { ... } })`)。
@@ -336,7 +336,7 @@ function apply(ctx) {
336
336
  ### 7.1 布局
337
337
 
338
338
  - 整面板:纵向 flex,`height: 100%`,`min-height: 0`;便签墙占满剩余高度,0.14 起底部浮岛 `CaptureComposer` 绝对定位在墙下方(不占 flex 高度),由 `.SN_wallWrap[data-capture='true']` 给墙/空态补底部 padding,`--sn-capture-height` 由 `ResizeObserver` 按实际高度更新。
339
- - 顶栏(约 56px):左侧「Obsidian MEMO」宋体 18px / 600 + 紧跟在后面的小字 `v0.16.3`(**0.13.4 起显示完整版本(含补丁号,0.13.9.2 起支持四段版本号),由 Host 的 `state.version` 自动派生**;约 11px、透明度 .45)+ 计数(`123 张便签`,**按当前日期筛选后的数量**);右侧从左到右:**日期筛选控件(0.14,操作区第一个;点击切换、悬停弹档位菜单)**、子文件夹开关(0.13)、排序按钮(点击弹排序菜单)、设置齿轮。可加一行极小的当前目录路径(省略号截断)。
339
+ - 顶栏(约 56px):左侧「Obsidian MEMO」宋体 18px / 600 + 紧跟在后面的小字 `v0.16.4`(**0.13.4 起显示完整版本(含补丁号,0.13.9.2 起支持四段版本号),由 Host 的 `state.version` 自动派生**;约 11px、透明度 .45)+ 计数(`123 张便签`,**按当前日期筛选后的数量**);右侧从左到右:**日期筛选控件(0.14,操作区第一个;点击切换、悬停弹档位菜单)**、子文件夹开关(0.13)、排序按钮(点击弹排序菜单)、设置齿轮。可加一行极小的当前目录路径(省略号截断)。
340
340
  - **子文件夹开关(0.13)**:自绘 folder-tree icon 的 30×30 icon 按钮,`aria-pressed` 反映 `settings.includeSubfolders`,开启时用**统一紫色选中样式**标识(见 7.8)。点击 → 乐观更新本地 settings → `saveSettings`(整份 settings 回传)→ 成功后 `refreshNow(true)`;失败回滚并 toast。tooltip:`显示子文件夹` / `仅显示顶层`。
341
341
  - 中间:可滚动便签墙。`display:grid; grid-template-columns: repeat(auto-fill, minmax(248px, 1fr)); gap: 14px; padding: 18px 22px 28px`。卡片统一高度 208px,内容超出裁切。**0.13 明确:卡片有图片时也不加高。**
342
342
  - **动态加载(0.13.8)**:便签墙首屏只渲染前 `WALL_PAGE_SIZE`(50)张;墙底放一个哨兵元素,用 `IntersectionObserver`(root = `.SN_wall`,`rootMargin: 0 0 320px 0`)在接近底部时补下一批 50 张。补批时哨兵变成一行 `.SN_loadMore`:**三点脉冲动画 + 「加载中…」11px 淡字**,高度 44px;空闲时 1px 不可见、`pointer-events:none`。排序 / 日期筛选(含开关)变化时 `visibleLimit` 重置回 50;观察器在每次补批后重建,所以首屏 50 张填不满高面板时会继续补到填满或没有更多。补批前先渲染一帧「加载中」再切下一批(data 已在内存,渲染很快时几乎不可见)。**不做虚拟列表**(不卸载已渲染卡片)。
package/docs/GUIDE.md CHANGED
@@ -9,7 +9,7 @@
9
9
  ## 它长什么样
10
10
 
11
11
  ```
12
- ┌─ DSH 侧栏 ─┐┌─────── Obsidian MEMO v0.16.3 ──────────┐
12
+ ┌─ DSH 侧栏 ─┐┌─────── Obsidian MEMO v0.16.4 ──────────┐
13
13
  │ 会话 ││ 120 张便签 [日期][子文件夹][排序][刷新][⚙] │
14
14
  │ 插件 ││ ┌──────────┐ ┌──────────┐ ┌───────────┐ │
15
15
  │ 📌 便签 ││ │WORKING_NOW│ │ 无 tag │ │🚧长期 │ │
@@ -136,7 +136,7 @@
136
136
  - **目录选择**:统一使用系统选择器 `pickDirectory`,也可手动输入路径;已移除没有界面调用的目录浏览 RPC。
137
137
  - **Client 半**:源码位于 `src/client/`,按功能组织组件、hooks、样式与文案;`pnpm build` 生成单文件 `lib/client.js` 供安装使用。`useNotesData` 管请求与轮询、`useNoteEditor` 管抽屉草稿与保存、`useSettingsDraft` 管设置草稿;主面板组合拖拽、AI、筛选、分页与布局模块。所有 state 请求统一按代次接收,迟到响应不能覆盖新状态,未变化卡片复用对象。
138
138
  - **不注册模型工具、不注入提示词**:除用户主动点评论/开档外,不产生任何模型调用与会话成本。
139
- - **已知问题与暂缓项**:见 [已知问题](KNOWN_ISSUES.md)(v0.16.3 基准,含触发条件与建议修法)。
139
+ - **已知问题与暂缓项**:见 [已知问题](KNOWN_ISSUES.md)(v0.16.4 基准,含触发条件与建议修法)。
140
140
 
141
141
  ## 性能与后台开销
142
142
 
@@ -1,7 +1,7 @@
1
- # 已知问题与暂缓项(0.16.3)
1
+ # 已知问题与暂缓项(0.16.4)
2
2
 
3
3
  > 用途:记录 0.14 审查中确认但**本轮未修**的问题,方便之后快速查阅、按文件定位并批量修复。
4
- > 状态基准:`v0.16.3`。行号会随代码改动漂移,检索时优先搜符号名/关键词。
4
+ > 状态基准:`v0.16.4`。行号会随代码改动漂移,检索时优先搜符号名/关键词。
5
5
  > 原则:每条包含「位置 / 现象与影响 / 建议修法 / 优先级 / 触发条件」,优先级 P1 > P2 > P3。
6
6
  > 0.16 发版前排查、性能对比和修复范围见 [排查报告](AUDIT-0.16.md)。
7
7
 
@@ -0,0 +1,11 @@
1
+ # README 配图
2
+
3
+ 中文 README 与 `README.en.md` 共用这三张图;英文页只改文案,不另存一套截图。
4
+
5
+ 配图基于 v0.14.2 的 `lib/client.js` 实际 React 组件渲染,使用专为文档编写的演示笔记和示例插画,不含真实仓库数据。AI 评论文字为示例。
6
+
7
+ - `cover.png`:产品封面,包含实际便签墙界面。
8
+ - `capture.png`:快速记录输入栏,展示图文草稿与快捷键。
9
+ - `reader.png`:钉住的阅读面板,展示正文、任务清单与评论。
10
+
11
+ 封面外围的排版和装饰用于产品展示;插件界面的布局、控件和字体沿用源码。截图不包含 DSH 外壳。
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-obsidian-memo",
3
- "version": "0.16.3",
3
+ "version": "0.16.4",
4
4
  "type": "module",
5
5
  "description": "dsh-obsidian-memo:DeepSeek Harness 的 Obsidian 便签插件。把 Obsidian 进行时文件夹变成淡色便签墙,支持快速新建、多图与 WebP 压缩、阅读/编辑、AI 评论、归档、开档与在 Obsidian 打开。",
6
6
  "main": "lib/index.js",
@@ -9,6 +9,7 @@
9
9
  ".": "./lib/index.js",
10
10
  "./client": "./lib/client.js",
11
11
  "./locale/*.json": "./locale/*.json",
12
+ "./cordis.patch.yml": "./cordis.patch.yml",
12
13
  "./icon": "./icon.svg",
13
14
  "./package.json": "./package.json"
14
15
  },
@@ -16,9 +17,8 @@
16
17
  "lib",
17
18
  "src",
18
19
  "scripts",
19
- "AGENTS.md",
20
- "docs/*.md",
21
20
  "locale",
21
+ "docs",
22
22
  "cordis.patch.yml",
23
23
  "icon.svg",
24
24
  "README.md",
@@ -40,20 +40,14 @@
40
40
  }
41
41
  },
42
42
  "engines": {
43
+ "node": ">=20",
43
44
  "dsh": ">=0.2.2-rc.1 <0.3.0"
44
45
  },
45
- "scripts": {
46
- "build": "node scripts/build-client.mjs",
47
- "build:check": "node scripts/build-client.mjs --check",
48
- "dev": "node scripts/build-client.mjs --watch",
49
- "test": "pnpm build:check && node --test",
50
- "prepack": "pnpm build",
51
- "bench": "node --expose-gc scripts/benchmark.mjs"
52
- },
53
46
  "keywords": [
54
47
  "dsh",
55
48
  "deepseek-harness",
56
49
  "dsh-plugin",
50
+ "cordis",
57
51
  "obsidian",
58
52
  "markdown",
59
53
  "notes",
@@ -70,7 +64,18 @@
70
64
  "bugs": {
71
65
  "url": "https://github.com/cavenzhong/dsh-obsidian-memo/issues"
72
66
  },
67
+ "publishConfig": {
68
+ "access": "public",
69
+ "registry": "https://registry.npmjs.org/"
70
+ },
73
71
  "devDependencies": {
74
72
  "esbuild": "0.25.12"
73
+ },
74
+ "scripts": {
75
+ "build": "node scripts/build-client.mjs",
76
+ "build:check": "node scripts/build-client.mjs --check",
77
+ "dev": "node scripts/build-client.mjs --watch",
78
+ "test": "pnpm build:check && node --test",
79
+ "bench": "node --expose-gc scripts/benchmark.mjs"
75
80
  }
76
- }
81
+ }