cchenbin042/yuque-notes-plugin ↗★ 0
yuque-notes-plugin
Save messy notes (text + images) to a Yuque knowledge base, classified by the model.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:cchenbin042/yuque-notes-plugin说明文档
阅读完整 README ↗yuque-notes-plugin
dsh 工具插件:把零散的笔记(文本 + 图片)保存到语雀知识库,由模型根据笔记内容自动分类。
功能
插件向 agent 暴露三个工具:
| 工具 | 作用 |
|---|---|
yuque_list_toc | 列出笔记知识库的目录树(含文档),模型据此决定新笔记归到哪个分类 |
yuque_create_dir | 在知识库中创建目录(分类)节点;同名同父已存在时直接返回既有节点,不重复创建 |
yuque_create_doc | 把一条笔记保存为语雀文档:Markdown 正文,图片引用自动读取、上传并替换,返回文档 URL |
保存链路:
yuque_list_toc(看现有分类)
├─ 已有合适目录 → yuque_create_doc(title + Markdown + dirUuid)
└─ 没有合适目录 → yuque_create_dir(新建分类)→ yuque_create_doc
每次保存只需 2–3 次工具调用;图片上传在 yuque_create_doc 内部完成,模型只需在正文里写图片引用。
其他行为:
- 知识库不存在时自动创建(使用配置的
bookName) - 错误归一化并 fail-loud:401/403 为鉴权错误、404 为资源缺失;429/5xx 自动退避重试(最多 3 次)
- 请求可取消:所有网络请求都随 agent 的
signal中止
安装
三种方式:
1. 安装到 profile(推荐,持久生效)
dsh plugin --profile add .
(在插件仓库根目录执行)插件包的 dsh.bundle.patch 声明会让 profile 自动把本插件的 cordis.patch.yml 加入 bundle 层。
注意:本地目录安装(
dsh plugin add .)不触发prepare,需先构建:pnpm build。
2. 从 GitHub 安装(社区用户)
dsh plugin --profile add github:cchenbin042/yuque-notes-plugin
git 安装拉取的是源码而非构建产物,pnpm 会在安装时自动运行本插件的 prepare 脚本(tsc 构建出 lib/,故 prepare 脚本不可删)。pnpm ≥ 10 默认拒绝执行 git 依赖的构建脚本:首次 add 失败时,把 pnpm 打印的包键加入该 profile 的 pnpm-workspace.yaml 的 allowBuilds,再重新执行 add。该授权允许包代码在安装时于本机执行,建议锁定 commit(github:cchenbin042/yuque-notes-plugin#)后再授权。
不想做构建授权时:可等 npm 发布后用 dsh plugin --profile add yuque-notes-plugin,或 pnpm pack 后 dsh plugin --profile add ./yuque-notes-plugin-0.1.0.tgz。
3. 临时 overlay(仓库内调试,不安装)
pnpm dsh --profile headless --patch ./cordis.patch.yml ""
配置
插件随附的 cordis.patch.yml 已默认接入配置:
- insert:
- id: yuque-notes
name: yuque-notes-plugin
config:
bookName: 我的笔记
token: !!js process.env.YUQUE_TOKEN
imageHosting:
provider: github
repo: / # 图片图床仓库(建议独立公开仓库)
token: !!js process.env.GITHUB_TOKEN