yan-istart869 downloadsGenerate structured knowledge notes from questions and selected text using DeepSeek AI, with automatic concept pages, bidirectional links, and a question graph.
把 Obsidian 变成你的个人知识系统与写作工作台。
English · 功能清单 · 快速开始 · 入口聚合规划 · 隐私说明 · 当前限制
IStart-Note-AI 是一个面向 Obsidian 的 AI 插件,围绕三大业务场景:知识(读进来)、写作(写出去)、辅助(跨设备支撑)。
IStart-Note-AI is an Obsidian plugin built around three business scenarios: Knowledge (read in), Writing (write out), and Auxiliary (cross-device support).
For the full English documentation see README.en.md.
本文按当前源码实现整理。
package.json与manifest.json标注版本为 2.6.0,最低支持 Obsidian 1.7.2。
以下按能力分类列出已实现功能。AI 能力统一通过助手的 Agent 工具执行,可使用任务快捷入口、已有命令或自然语言发起。
@ 选择笔记,或捕获当前原文、选区与光标位置。[[来源]] 引用。.md、.txt 文件或目录,保留原稿。SKILL.md 正文作为写作规则。_作品.md 识别作品目录、名称和体裁。==高亮==、行内批注或脚注批注。点击左侧「IStart 工作台」图标进入「AI 助手」,或运行「AI 助手」命令,通过顶部 + 新建会话。AI 助手中的模式下拉框可选择问答、Agent 或小说演绎;Agent 共用助手入口。输入 @ 选择笔记,或点击选区图标引用最近打开的笔记与光标;切换笔记不会自动替换引用。Ctrl/Cmd+Enter 发送,生成期间点击停止按钮取消本轮。会话菜单支持置顶、重命名、归档、删除、分支和导出。
问答模式读取并回答;Agent 模式可调用工具并生成修改草稿。展开「查看修改」后点击「应用修改」写入,原文变化时会要求重新生成。辅助设置可启用流式输出、调整工具步数和资料预算,或主动开启共享历史。
任务中断后可点击「继续任务」沿用已完成步骤;「重新生成」会重新开始。未保存的草稿可连续调整,旧版本会标为已替代。阅读项目支持逐章补齐问题并更新进度,模板可同时生成今日记录,长笔记可分页续读。详见 任务继续与重新生成。
助手任务快捷入口、已有命令、编辑器菜单、悬浮工具栏和写作状态栏中的 AI 功能,共用助手的会话、工具执行、进度与修改预览:
明确点击的任务直接执行工具,不额外请求模型选择流程。完成后可以继续说「缩短一些」「保持原文风格」来修改尚未保存的草稿,再点击「应用修改」。重新生成沿用原任务参数和捕获的位置,失效选区或光标不会重定向写入。任务卡参数随会话保存,切换页面或重启后可继续填写。
独立「全部功能」面板已移除,原面板及两个 AI 快捷弹窗命令转入助手。数据同步与普通批注编辑保留专用界面。详见 Agent 任务快捷入口。
type: chapter 的章节额外带入完整作品大纲、角色和设定。生成下一章要求打开章节笔记。新建作品生成的是章节模板,不是完整正文。_作品.md、_大纲.md、_角色/、_设定/ 查找。显式选择「光标附近」时才使用长度截取、名称匹配及 3 个角色/2 个设定的限制。<mark> 的颜色。全库模式首次扫描会读取所有 Markdown 笔记,笔记很多时需要等待;列表最多显示前 300 条,可用搜索和筛选缩小范围。跨空行、标题/列表块或代码块的选区需要分段处理。SKILL.md 正文;references/ 与 scripts/ 不会由插件自动读取或执行。Codex/OpenCode 的自动调用依赖 description,不能保证每次触发。.agents 为隐藏目录,当前插件的 Git 同步默认不同步隐藏路径,建议把 Skills/ 作为可见主目录。Skills/ 下创建 SKILL.md,再到设置 → Skill 点击「重新扫描」。若在设置 → 第三方插件 → 浏览中可以搜索到 IStart-Note-AI,可直接安装并启用;否则使用手动安装或源码构建。
从 GitHub Release 下载 main.js、manifest.json、styles.css,放入 <Vault>/.obsidian/plugins/istart-note-ai/。
克隆源码后需自行构建;可使用 Release 资产,或复制源码构建生成的
dist/文件。
npm ci && npm run build
# → dist/main.js, dist/manifest.json, dist/styles.css
AI 默认值:Base URL 为 https://api.deepseek.com,模型为 deepseek-v4-flash,输出风格为 knowledge-base。Base URL 填根地址,不加末尾斜杠或 /v1/chat/completions,客户端会追加该后缀。
模型下拉框提供 deepseek-v4-flash 和 deepseek-v4-pro;其他兼容端点需接受所选模型名称。当前没有自定义模型输入或服务商管理器。
设置页按七个标签组织:
| 标签 | 主要设置 |
|---|---|
| 知识 | Q&A 目录、问题索引目录、概念页目录、知识索引状态与重建 |
| 写作 | 作品目录(Writing)、默认完整当前文档及作品资料;附近模式每侧 2,000 字符、续写目标(800 中文字)、插写目标(200 中文字) |
| Skill | 启用自动附带、写作场景限制、Skill 根目录、最大注入字符、已发现 Skill 列表 |
| 批注 | 默认行内/脚注批注、移动端跳转后收起侧栏、打开批注侧边栏 |
| 界面 | 悬浮工具栏开关、选中时显示、光标空闲入口、移动端启用 |
| 数据同步 | IStart 数据同步开关、同步方式、同步规则、百度网盘配置、跨设备配置同步 |
| 辅助 | API Key、Base URL、模型、输出风格、隐私说明 |
「IStart 数据同步」是统一的同步功能名称;百度网盘是当前支持的存储服务。设置 → 数据同步中分别管理:
Git / 文件模式决定如何同步,存储服务决定数据保存在哪里。当前仅实现百度网盘,其他存储服务仍待扩展。已有同步配置、授权、命令快捷键和保存的同步侧栏布局继续沿用。
写作 Skill 使用标准 Agent Skills SKILL.md,按三层自动匹配:
| 作用域 | 适用内容 | 自动附带条件 |
|---|---|---|
global |
公共写作技巧、修改检查表、通用规范 | 写作类 AI 请求 |
genre |
网文、论文、长文的体裁规范 | 当前作品体裁匹配 |
project |
某个作品的文风、禁忌、节奏与连续性检查 | 当前文件属于该作品 |
推荐目录:
Skills/
writing-craft/SKILL.md # 公共写作技巧
writing-webnovel/SKILL.md # 体裁规范
work-<作品>/SKILL.md # 作品规范
.agents/skills/ # Codex/OpenCode 桥接目录
作品 Skill 的 frontmatter 示例:
---
name: 示例作品 · 写作规范
description: Use only when writing or editing the work "示例作品".
metadata:
istart/scope: project
istart/project: 示例作品
istart/project-path: Writing/Novels/示例作品
istart/genre: novel
istart/priority: 30
---
插件会从章节文件向上查找 _作品.md,自动识别作品、目录和体裁。注入顺序为:通用 Skill → 体裁 Skill → 作品 Skill;作品级规则优先。人物、剧情和世界观事实仍以 _作品.md、_大纲.md、_角色/、_设定/ 为准,不要重复写入 Skill。Skill 文件本身会从知识库问答索引中排除。
Codex/OpenCode 使用同一份文件:
cd <vault>
mkdir -p .agents/skills
ln -s ../../Skills/writing-craft .agents/skills/writing-craft
ln -s ../../Skills/work-example .agents/skills/work-example
OpenCode 也可以直接配置 "skills": ["./Skills"]。启用后,在设置 → Skill 中点击「重新扫描」即可查看和单独开关。完整说明与示例见 写作 Skill。
再接再励 → 再接再厉,下方显示原文行列位置。点击条目会打开原笔记并选中对应文字;如果原笔记已切换为阅读模式,会先切回编辑模式。同一个词出现多次时,建议按原文行号与出现次数定位,无法核对原文的建议会被忽略并提示。修改正文或移动文件后,旧条目会禁用;回到目标笔记,点击侧边栏「检查当前笔记全文」重新检查。若仍只想检查选区,请重新选中文字并运行命令。
校对重点为中文错字、别字、同音误用与明显漏字、多字,不做文风润色。元数据、代码、注释、URL、Markdown 链接目标及双链会被遮盖后再发送;只把选区或当前笔记正文发送到已配置的 AI 服务,不附带其他笔记或写作 Skill。结果仅供人工核对,点击条目只定位,不会替换原文。
以下为默认布局。Q&A、Questions、Concepts 与 Writing 路径可配置;Reading 和 Artifacts 当前使用固定路径:
Knowledge/ # 知识域(输入/沉淀)
Q&A/ # 问答笔记
Questions/ # 问题索引与图谱
Concepts/ # 概念页
Reading/ # 阅读项目(每本书一个目录)
Artifacts/ # 实用模板
Writing/ # 写作域(输出/生产)
Novels/<作品>/ # 网文小说
_作品.md # type: writing-project
_大纲.md # type: outline(逐章梗概)
_角色/ # type: character
_设定/ # type: setting(世界观)
_资料/ # 导入的大纲与参考资料,type: reference
01-章节.md # type: chapter
Papers/<论文>/ # 论文
Articles/<长文>/ # 通用长文
Skills/ # 写作 Skill(可见主目录,可同步)
writing-craft/SKILL.md # 公共写作技巧
work-<作品>/SKILL.md # 作品规范
.agents/skills/ # 可选:Codex/OpenCode 桥接目录
Frontmatter 类型:concept / question / reading-project / reading-note / writing-project / chapter / outline / character / setting / reference;实用模板使用 execution-artifact-* 类型。
写作项目存放在可配置的 Writing/ 根目录。知识库问答按 frontmatter 类型排除 chapter、writing-project、character、setting、outline、snippet。当前没有设置开关,也不按整个目录排除;无类型笔记和导入的 reference 资料仍可能被检索。
批注不创建独立目录或索引文件,直接写入原笔记:高亮、行内批注、脚注与 Obsidian 注释都由侧边栏实时解析。移除批注会删除标记和批注文字,但保留被批注的正文。
src/
core/
llm/ LLM 客户端 + JSON 解析
knowledge/ 元数据知识索引
artifact/ 实用模板(检查表/SOP/复盘)类型、校验、渲染
sync/ JavaScript Git 内核、版本包交换、合并与恢复
annotations/ 批注解析、删除范围与跳转定位
skills/ Agent Skills 解析、发现、作用域选择和 prompt 注入
schema.ts SCHEMA_VERSION + 工具函数
ai/ AI 能力模块(助手、批注草拟、错别字甄别、分类器、阅读规划、写作规划、续写...)
features/
agent/ 多会话 Agent 侧边栏与会话控制
assistant/ 共用结果组件(兼容)
annotation/ 添加批注、删除确认与侧边栏视图
proofreading/ Agent 校对结果的原文定位
writing/ 新建作品、规划预览、续写、原稿导入、项目/上下文管理
reading/ 阅读项目管理
concept/ 概念补全
question/ 问题分类与图谱
artifact/ 实用模板生成
dashboard/ 旧看板组件(入口已转入 Agent)
sync/ IStart 数据同步(当前存储服务为百度网盘)
command-panel/ 旧组件(入口已转入助手)
toolbar/ 编辑器悬浮工具栏(CodeMirror 6 ViewPlugin)
vault/ Q&A 与概念页写入
settings/ 设置页(知识/写作/Skill/批注/界面/辅助)
actions/ 动作注册与面板定义
main.ts
AI 功能会把你选中的内容和部分笔记上下文发送到所配置的 API 端点。AI 批注只在你主动点击「AI 草拟」「AI 重写」、运行「AI 批注」或「获取 AI 建议」时联网;普通高亮、批注编辑和侧边栏解析完全在本地完成。同步功能只上传到你自己的百度网盘。Git 笔记同步排除隐藏路径、Obsidian 配置目录、凭证及 Git 元数据;历史会保留已删除笔记的旧内容,未提供额外加密。独立配置同步不含 API Key 与百度凭证,文件模式启用「备份插件本身」时会上传插件 data.json(含凭证)及部分 Obsidian 配置。无遥测、无插件方服务器。详见 PRIVACY.md / PRIVACY.zh-CN.md。
Git 模式:在设置 → 数据同步中启用「IStart 数据同步」,在「百度网盘配置」中填写百度 App ID、App Secret 并完成授权,选择「Git 版本同步」,再点击「打开同步」或侧边栏「手动同步」。自动同步与启动时自动拉取配置默认关闭。电脑与手机使用同一套同步内核;应用在前台时才支持可选自动同步。
同步默认关闭;新安装默认选择 Git 模式,未记录同步方式的已有配置保留原有文件模式,需要手动切换到 Git。各设备需使用相同远端路径与 Git 模式,旧备份不会被删除。首次 Git 同步从当前本地笔记创建历史;若需要旧云端备份,请先用原有模式恢复。详见 Git 同步说明。
文件模式保留备份、恢复、状态扫描、双向同步、逐文件冲突选择与可选插件备份。「自动备份」设置仍保留,但当前笔记生成流程没有触发该操作,请使用手动备份。
Git 模式同步符合规则的普通 Vault 文件,包含附件与删除,使用忽略正则与大小限制(默认单文件 100 MB)。它保存提交、交换增量 Git bundle、合并文本、处理冲突,支持单文件恢复和预览后恢复整个笔记库,无需系统 Git。自动同步默认关闭,开启后在启动时和应用可见时每分钟执行。
配置推送/拉取传递 Base URL、模型、三个知识路径、自动打开图谱、远端路径、忽略规则与大小限制。写作设置、输出风格、Skill 设置、批注设置、凭证、同步方式和自动行为保持本地设置;启动时拉取配置默认关闭。迁移步骤、本地历史位置与恢复细节见 Git 同步说明。
启用「IStart 数据同步」并选择「Git 版本同步」后,可从以下位置查看改动:
| 入口 | 功能 |
|---|---|
| 文件列表 | 文件名旁显示「新增」「修改」标记,编辑、新建、删除或重命名后停止操作约一秒触发刷新 |
| 文件右键 / 命令面板 | 选择「查看本地 Git 差异」,或运行「查看当前文件的本地 Git 差异」,查看带行号、颜色和增删符号的逐行比较 |
| 同步侧栏「本地文件改动」 | 汇总新增、修改、删除数量,按路径或类型筛选,点击文件路径查看差异;已删除文件也可查看旧内容 |
| 桌面状态栏 | 当前文件有改动时显示 Git 状态,点击打开差异 |
比较基准为最近本地 Git 提交。扫描与查看差异不联网、不创建提交,有本地历史时可离线使用;首次扫描可能初始化空的本地 Git 仓库。同步失败时本地提交可能已保存,因此「本地无改动」不代表已经上传或与云端一致,需要执行同步确认。
重命名暂显示为删除旧路径、新增新路径。二进制附件显示字节大小;过大的文本不展开,行数较多时使用双栏原文比较。忽略规则与大小限制和同步保持一致。更多说明见 查看本地文件改动。
欢迎提 Issue / PR。请先阅读 CONTRIBUTING.md。安全问题见 SECURITY.md。
MIT。详见 LICENSE。