binhong87_obsidian-note-agent/README-cn.md
Bin-Home 4262120030 docs: add vault access and clipboard disclosures, fix provider tables
- Add "Vault access" disclosure: enumerate, read, and write behaviours
- Add "Clipboard access" disclosure: write-only, code copy button only
- Split Zhipu and Z.ai into separate rows in network and provider tables
- Add LM Studio to supported providers and network tables

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
2026-05-16 22:51:08 +08:00

128 lines
6.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Smart Note Agent
一款为 [Obsidian](https://obsidian.md) 设计的智能体 AI 助手插件,能够读取并(在您批准后)修改笔记库中的笔记,支持多种 LLM 服务提供商。
[English](README.md)
## 功能特性
- **智能对话** — 多轮对话,支持自主工具调用循环
- **笔记库工具** — 全文搜索、读取笔记、列出文件夹、跟随反链与出链、获取当前笔记和选中文本
- **编辑模式** — 创建、编辑(全量替换或统一补丁)、删除、移动笔记;所有修改以差异对比形式展示,需您审批后方可写入
- **多服务提供商** — OpenAI、Anthropic、DeepSeek、通义千问阿里云、Kimi月之暗面、智谱GLM、MiniMax、OpenRouter、Ollama本地及任意 OpenAI 或 Anthropic 兼容的自定义端点
- **三种模式**
- **问答模式** — 只读,适合问答和研究,不修改笔记库
- **编辑模式** — 完整写入权限,所有修改通过差异对比界面审批后生效
- **定时模式** — 自动后台运行(每日摘要、每周回顾),写入权限受限
- **定时任务** — 自动生成每日摘要和每周回顾,写入到可配置的文件夹
- **自动压缩** — 当对话历史接近模型上下文限制时,自动透明地进行压缩
- **分提供商配置** — 每个提供商独立保存 API Key、基础 URL 和模型名称
- **用户画像** — 可选的个人描述,注入到每次系统提示词中
- **国际化** — 支持英文和简体中文 UI自动跟随 Obsidian 的语言设置
## 安装
### 社区插件(推荐)
1. 打开**设置 → 第三方插件**,如有提示请关闭安全模式
2. 点击**浏览**,搜索 `Smart Note Agent`
3. 点击**安装**,然后点击**启用**
### 手动安装
1. 从[最新发布页面](../../releases/latest)下载 `main.js`、`manifest.json` 和 `styles.css`
2. 创建文件夹 `<您的笔记库>/.obsidian/plugins/smart-note-agent/`
3. 将三个文件复制到该文件夹
4. 重启 Obsidian在**设置 → 第三方插件**中启用该插件
## 配置
1. 打开**设置 → Smart Note Agent**
2. 选择 LLM 服务提供商并输入 API Key
3. 可选:设置自定义基础 URL用于自托管或代理端点及模型名称
4. 选择模式:**问答模式**(只读)或**编辑模式**(可写入)
## 使用方法
- 点击左侧工具栏中的**机器人图标**,或在命令面板中运行 `Open Note Agent`
- 输入消息后按 Enter 发送Shift+Enter 换行)
- 在**编辑模式**下,智能体会以统一差异格式展示笔记修改建议,逐项审批或拒绝后方可写入磁盘
- 使用**新建对话**开始全新会话;历史对话已保存,可通过历史面板随时访问
## 支持的服务提供商
| 提供商 | 说明 |
|---|---|
| OpenAI | GPT-4o、GPT-4o-mini、o1、o3 等 |
| Anthropic | Claude 3.5 / 4 系列 |
| DeepSeek | deepseek-v3、deepseek-r1 |
| 通义千问 | 阿里云 Dashscopeqwen-plus、qwen-max 等) |
| Kimi | 月之暗面moonshot-v1 系列) |
| 智谱 | GLM-4 系列 |
| Z.ai | GLM-4 系列Z.ai 平台) |
| MiniMax | MiniMax-Text 系列 |
| OpenRouter | 通过 openrouter.ai 访问任意模型 |
| Ollama | 本地模型Llama、Mistral、Qwen 等) |
| LM Studio | 通过 LM Studio 运行本地模型 |
| 自定义 | 任意 OpenAI 兼容或 Anthropic 兼容端点 |
## 披露说明
### 需要账号
使用远程 LLM 服务提供商OpenAI、Anthropic、DeepSeek、通义千问、Kimi、智谱、Z.ai、MiniMax、OpenRouter需要在该提供商处注册账号并获取有效的 API Key。本地服务提供商Ollama、LM Studio及自定义自托管端点无需账号。
### 可能需要付费
远程 LLM 服务提供商按 API 用量收费费用由您直接向所选提供商支付——本插件本身不设订阅费或应用内购买。本地服务提供商Ollama、LM Studio免费使用。
### 网络请求
当您发送消息时,插件会将您的消息文本及相关笔记库内容发送至您所配置的 LLM 服务提供商。在您提供 API Key 并发送消息之前,插件不会向任何服务发送任何数据。根据您选择的服务提供商,可能会访问以下远程服务:
| 服务提供商 | 接口地址 |
|---|---|
| OpenAI | `https://api.openai.com` |
| Anthropic | `https://api.anthropic.com` |
| DeepSeek | `https://api.deepseek.com` |
| 通义千问(阿里云) | `https://dashscope.aliyuncs.com` |
| Kimi月之暗面 | `https://api.moonshot.cn` |
| 智谱 | `https://open.bigmodel.cn` |
| Z.ai | `https://open.z.ai` |
| MiniMax | `https://api.minimax.chat` |
| OpenRouter | `https://openrouter.ai` |
Ollama 和 LM Studio 仅与 `localhost` 通信,数据不会离开您的设备。自定义服务提供商会连接到您所配置的任意端点。
### 笔记库访问
本插件需要读取、写入和枚举笔记库文件以完成功能:
- **读取** — 读取笔记内容以回答问题、为 LLM 提供上下文,以及在编辑前计算差异。
- **枚举** — `list_folder``search_vault` 工具会扫描笔记库中的所有文件(或所有 Markdown 文件)以查找匹配项。仅将与查询相关的文件路径和内容发送给 LLM。
- **写入** — 在编辑模式和定时模式下,智能体可创建、修改、删除和移动笔记。所有写入操作均以统一差异格式呈现供您审阅,需经过您的明确批准后方可写入磁盘。
### 剪贴板访问
当您点击对话视图中代码块上的**复制**按钮时,插件会通过浏览器 Clipboard API 将该代码块的文本写入您的剪贴板。插件不会读取您的剪贴板内容。
## 开发
```bash
npm install
npm run dev # esbuild 监听模式,保存即重新构建
npm run build # tsc 类型检查 + 生产构建
npm test # 单元测试Vitest
```
本地测试时,将 `dist/` 文件夹软链接或复制到您的笔记库:
```
<笔记库>/.obsidian/plugins/smart-note-agent/
```
插件产物(`main.js`、`manifest.json`、`styles.css`)在每次构建后输出到 `dist/` 目录。
## 许可证
[MIT](LICENSE)