2026 年 7 月 8 日,工业和信息化部 NVDB(网络安全威胁和漏洞信息共享平台)正式发布高危风险提示: Claude Code 2.1.91 ~ 2.1.196 版本内置隐蔽监控后门,未经用户授权静默向境外服务器回传用户地域、设备标识、账号身份、研发代码、项目文档等核心敏感数据。
行业反应:阿里巴巴已于 7 月 10 日起全员禁用 Claude Code 及 Anthropic 全系产品;腾讯早在 2025 年 11 月已将其移出大模型选择池;美团、京东等也已限制外部 AI 模型调用。
本文方案:以下所有涉及 Claude Code 的位置,均已替换为国产合规替代方案(iFlow CLI / Kimi Code CLI / CodeBuddy),功能一致、数据不出境、完全免费。详见第零章·附的方案对比。
| 方案 | iFlow CLI(阿里心流) | Kimi Code CLI(月之暗面) | CodeBuddy Code(腾讯) |
|---|---|---|---|
| 定位 | Claude Code 功能最完整的平替,免费开源 | Moonshot 官方 CLI Agent,中文理解极好 | 已在本文撰写中实际使用,零迁移成本 |
| 支持模型 | Kimi K2、Qwen3 Coder、DeepSeek V3、GLM 等 | Kimi 系列模型 | 混元 + 多模型切换 |
| 安装方式 | npm install -g @iflow/iflow-cli | npm install -g @moonshot-ai/kimi-code | IDE 插件 / CLI / 独立 IDE 三形态 |
| 费用 | 免费(心流开放平台提供 API Key) | 需 Kimi API Key(有免费额度) | 个人版免费 |
| 数据安全 | 推理在国内,代码不出境 | 推理在国内,代码不出境 | 腾讯云部署,数据不出境 |
| Karpathy 工作流兼容 | ✅ 完美兼容(文件读写 + Shell + Skills) | ✅ 完美兼容 | ✅ 完美兼容(本文即用此工具撰写) |
| 推荐场景 | ⭐ 首选推荐:功能最全、免费、开源 | 已在 Kimi 生态中的用户 | 已在腾讯云 / 微信生态中的用户 |
为保持内容简洁,下文将以 iFlow CLI 作为默认 AI 引擎进行演示。所有命令行中的 iflow 均可替换为 kimi(Kimi Code CLI)或直接使用你当前打开的 CodeBuddy(无需额外安装 CLI)。核心原理完全一致。
2026 年 4 月,前 OpenAI 联合创始人、特斯拉 AI 总监 Andrej Karpathy 在 X(Twitter)上公开了他的个人知识库工作流,两天内获得 1900 万次曝光、5000+ GitHub Star。
核心思路极度简单: 不让 AI 每次提问时翻原始资料,而是让 AI 先把所有资料"编译"成一个结构化的 Wiki 。里面有摘要、有交叉引用、有概念连接,也会显式标出互相矛盾的地方。这一切都由 AI 维护,你只管读和提问。
整套系统没有任何花哨组件,没有向量数据库,没有 Embedding,没有 RAG 框架——只有文件夹 + Markdown 文件 + AI。
| 层级 | 目录 | 职责 | 类比 |
|---|---|---|---|
| 输入层 | raw/ | 原始资料(文章、论文、截图、笔记),只进不改,AI 只读 | src/ 源代码 |
| 编译层 | wiki/ | AI 自动维护的结构化知识页,你来读,AI 来写 | build/ 编译产物 |
| 输出层 | outputs/ | AI 生成的报告、分析、问答沉淀 | logs/ 运行日志 |
| 规则层 | AGENT.md | AI 的"工作说明书",定义 Wiki 如何组织、如何更新 | Makefile 构建规则 |
用 Obsidian Web Clipper 一键将网页保存到 raw/,或直接把 PDF/论文/笔记丢进去。然后告诉 AI"帮我消化这篇文章"。
AI 自动读取 raw/ 中的新资料,生成摘要页、概念页、实体页,更新索引和日志,建立所有页面之间的双向链接。
用自然语言提问,AI 先读 index.md 定位相关页面,再综合多篇文章给出带引用来源的答案。高质量的答案可以存回 wiki/ 沉淀。
定期让 AI 做健康检查:找出矛盾结论、过时信息、孤立页面、缺失的交叉引用、数据缺口,输出检查报告并自动修复。
https://nodejs.org ,下载 LTS(长期支持)版本 node --version (应显示 v18.x 或 v20.x) npm --version (应显示 9.x 或 10.x) https://obsidian.md/downloadmy-knowledge-base为什么选 Obsidian?
[[页面名]] 让知识之间自动互相关联raw/articles/iFlow CLI 是阿里心流团队开源的终端 AI Agent,功能完整对标 Claude Code,且永久免费、数据不出境、支持国产顶尖模型。 基准测试(GAIA、SWE-bench、Terminal-Bench)综合表现优于 Claude Code。
npm install -g @iflow/iflow-cliiflow --versionhttps://open.iflow.cn,注册账号后即可获取免费 API Key(支持 Kimi K2、Qwen3 Coder、DeepSeek V3 等模型),无需自备任何付费 Key。 iflow,按提示粘贴 API Key 即可 iflow 进入交互模式 如果你更偏好 Kimi 生态,月之暗面的 Kimi Code CLI 是同样优秀的替代:
npm install -g @moonshot-ai/kimi-code(需 Node.js 24+)platform.kimi.com 获取 API Keykimi 进入交互模式,kimi -p "任务" 执行单次命令Claudian(原来的 Claude Code Obsidian 桥接插件)依赖 Anthropic API,在国内不可用。 以下推荐两个国产兼容的替代方案:
Graphify 在 Obsidian 原生图谱基础上,增加了社区发现、语义关联和知识补全建议功能。
| 工具 | 作用 | 必要性 | 费用 |
|---|---|---|---|
| Obsidian | 知识库容器,Markdown 编辑器 + 图谱浏览 | 必需 | 免费 |
| Obsidian Web Clipper | 网页一键剪藏到 raw/ | 强烈推荐 | 免费 |
| iFlow CLI | AI 引擎,负责编译/查询/维护(首选推荐) | 必需 | 免费 |
| Kimi Code CLI | AI 引擎备选方案 | 备选 | 免费额度 |
| Text Generator | Obsidian 内嵌 AI 面板(接入国内模型) | 推荐 | 免费 + API 费用 |
| Graphify | 知识图谱增强分析 | 可选 | 免费 |
| Git | 版本控制,追踪 Wiki 变化 | 可选 | 免费 |
在你的知识库根目录下,按照以下结构创建文件夹:
mkdir -p my-knowledge-base/raw/{articles,papers,podcasts,assets}mkdir -p my-knowledge-base/wiki/{indexes,concepts,entities,sources,summaries}mkdir -p my-knowledge-base/outputs/{qa,reports,blog}mkdir -p my-knowledge-base/.ai/commandscd my-knowledge-base && touch AGENT.md wiki/indexes/All-Sources.md wiki/indexes/All-Concepts.md wiki/log.md| 路径 | 用途 | 谁来操作 |
|---|---|---|
raw/articles/ | 网页文章(Web Clipper 剪藏) | 你来添加 |
raw/papers/ | 论文、PDF 文档 | 你来添加 |
raw/podcasts/ | 播客转录文本 | 你来添加 |
raw/assets/ | 图片、截图、图表 | 你来添加 |
wiki/concepts/ | 概念条目(一个概念一个文件) | AI 维护 |
wiki/entities/ | 人物/公司/产品等实体页 | AI 维护 |
wiki/sources/ | 每篇原始资料的摘要页 | AI 维护 |
wiki/summaries/ | 主题级别的综合总结 | AI 维护 |
wiki/indexes/ | All-Sources.md(资料索引)、All-Concepts.md(概念索引) | AI 维护 |
wiki/log.md | 按时间顺序的操作日志,仅追加不修改 | AI 维护 |
outputs/qa/ | 高质量的问答沉淀 | AI 输出 |
outputs/reports/ | 综合分析报告 | AI 输出 |
outputs/blog/ | 可发布的博客文章 | AI 输出 |
.ai/commands/ | AI CLI 自定义快捷命令(原 Claude Code 的 .claude/ 目录) | 你来定义 |
AGENT.md | AI 工作说明书(整个系统的灵魂,模型无关) | 你来编写 |
这是整个系统最关键的配置文件。它决定了 AI 是"有纪律的 Wiki 维护者"还是"随便聊天的机器人"。 每次启动 iFlow CLI / Kimi Code CLI / CodeBuddy 时都会自动读取这个文件(不同工具可能用不同文件名,如 AGENT.md、CLAUDE.md 或 CODEX.md,但内容是通用的)。
在知识库根目录创建 AGENT.md(或你所用工具对应的文件名),将以下内容复制进去,再根据自己的领域修改 Focus Areas 部分:
[Source: xxx] 标注依据。 这是最频繁的操作。每次你发现一篇有价值的文章或资料,执行以下流程:
cd ~/my-knowledge-baseiflow当你攒了多篇新资料后,可以批量编译。直接在 iFlow CLI 中输入:
"扫描 raw/ 目录,找出所有尚未编译的资料。按照 AGENT.md 中的 Ingest Workflow,逐篇处理。每完成一篇,告诉我进度。"AI 会:
当知识库积累到一定规模(20+ 篇文章),你可以直接用自然语言提问:
"关于 Ozon 平台的定价策略,综合所有资料,帮我总结最佳实践,并指出不同资料之间的观点差异。""我读过的那篇关于俄罗斯消费者行为分析的论文里,提到了哪些关键洞察?这些洞察在其他资料中有没有佐证或反驳?""帮我对比文章中提到的三种物流方案(FBO / FBS / RFBS),列出每种方案的适用场景、成本和风险。"每月执行一次,防止知识库腐化:
"对我的知识库做一次全面健康检查。按照 AGENT.md 中的 Lint Workflow,检查:页面之间的矛盾、被新资料推翻的旧结论、没有入链的孤立页面、缺失的交叉引用、没有标注来源的断言。输出检查报告到 wiki/lint-report-YYYY-MM-DD.md。"AI 会检查并输出一份结构化报告,标明各项问题的严重级别,你可以据此决定哪些需要修复。
积累了足够多的知识后,你可以让 AI 基于 Wiki 产出可直接使用的内容:
以下插件能显著提升使用体验,按安装顺序排列:
| 插件 | 作用 | 优先级 |
|---|---|---|
| Dataview | 用 SQL 式语法查询页面元数据,生成动态表格。如果你的 Wiki 页面有 YAML frontmatter(如 tags、date、source_count),Dataview 可以自动生成"最近更新"、"待审阅"等列表。 | ⭐⭐⭐ |
| Templater | 高级模板引擎,可创建 Wiki 页面的标准模板(如概念页模板、实体页模板),插入时自动填充日期、标题等元数据。 | ⭐⭐⭐ |
| Calendar | 日历视图,结合每日日志查看哪天做了什么操作(ingest/query/lint),与 wiki/log.md 互补。 | ⭐⭐ |
| Kanban | 看板视图,可以把"待消化文章"、"待深挖概念"、"待验证结论"做成看板卡片管理。 | ⭐⭐ |
| Excalidraw | 在 Obsidian 内手绘流程图、架构图、思维导图,作为知识的可视化补充。 | ⭐⭐ |
| Marp Slides | Markdown 转幻灯片,直接从 Wiki 内容生成演示文稿,适合做技术分享和汇报。 | ⭐ |
| Paste URL into selection | 选中文字后粘贴 URL 自动转为 Markdown 链接格式,建立外部引用更方便。 | ⭐ |
raw/assets/ ,确保所有图片集中存放 wiki/整个知识库就是一堆 Markdown 文件,天然适合 Git 管理:
cd my-knowledge-basegit init.gitignore,排除 .obsidian/workspace.json 等 Obsidian 内部文件 git add . && git commit -m "init knowledge base"git add . && git commit -m "ingest: xxx"好处:可以看到知识库的演变历史、比较不同版本的差异、出问题时可以回滚。还可以推送到 GitHub 做远程备份。
当知识库超过 100 篇文章时,仅靠 index.md 定位内容可能不够快。Karpathy 推荐使用 qmd——一个轻量级的本地 Markdown 搜索引擎:
https://github.com/tobi/qmdcargo install qmd(需要安装 Rust 环境)qmd index wiki/(对 wiki/ 目录建立索引)qmd search "关键词" 快速定位相关页面你可以在 AI CLI 中配置自定义命令(放在 .ai/commands/ 中),实现一键操作:
/ingest-all :自动扫描 raw/ 新文件并全部编译 /lint :一键执行 Lint 检查 /dashboard :生成知识库仪表盘(总文章数、概念数、最新更新、待处理项) 在 Obsidian 中创建一个"仪表盘"页面,插入以下 Dataview 查询块:
下面以我们的实际场景——俄罗斯跨境电商为例,完整演示从零搭建到首次使用的全流程。
D:\Documents\cross-border-wiki\ 创建目录结构(参考第四章)raw/articles/raw/papers/cd D:\Documents\cross-border-wiki && iflow在 iFlow CLI 中输入:
AI 处理过程(约 5-10 分钟/篇):
wiki/sources/ozon-ad-strategy.md 等wiki/concepts/ 下创建 FBO仓储模式、FBS发货模式、RFBS混合模式、DPP盈亏模型、加购率优化等页面wiki/entities/ 下创建 Ozon平台、Wildberries平台、俄罗斯物流公司等页面切换到 Obsidian,你会看到:
日常使用节奏:
| 对比维度 | 传统 RAG(ChatGPT 上传 / NotebookLM) | Karpathy LLM Wiki |
|---|---|---|
| 知识持久性 | 每次从零检索,会话结束知识消失 | 编译一次,永久累积,持续增长 |
| 交叉引用 | 无(仅关键词匹配) | 自动建立双向链接 [[页面名]] |
| 矛盾检测 | 无 | 显式标记 CONTRADICTION |
| 维护成本 | 低(无需维护,但也无法积累) | 零(AI 全权维护) |
| 技术门槛 | 极低(网页上传即可) | 中等(需安装 Node.js + AI CLI) |
| 数据可控性 | 数据上传到云端服务 | 数据 100% 本地,纯 Markdown 文件 |
| 可扩展性 | 受平台限制 | 无限(Git 版本控制、插件生态、自定义脚本) |
| 成本 | 免费(ChatGPT)/ $20/月(Plus) | iFlow CLI / Kimi Code CLI 免费,其余工具全部免费 |
| 规模上限 | 受单次上传限制(通常几十个文件) | Karpathy 实测 100+ 文章、40 万字无压力 |
| 输出能力 | 仅文本回答 | 报告、博客、幻灯片、图表、对比表 |
首选 iFlow CLI(阿里心流),免费开源、功能最完整、支持国产模型、数据不出境。备选 Kimi Code CLI(月之暗面)同样优秀。如果你已经在用 CodeBuddy / WorkBuddy,可以直接用它,无需额外安装 CLI。核心要求不变:能读写本地文件夹中的 Markdown 文件即可。详见第零章·附的方案对比。
检查 AGENT.md 是否写得足够详细。规则越具体,AI 输出越规范。可以在 Focus Areas 里列得更细化(不要只写"跨境电商",而是"Ozon 平台搜索排名算法、俄罗斯消费者价格敏感度、俄语关键词优化技巧")。
两个优化方向:(1) 在 AGENT.md 的 Identity 部分明确说明知识库主要语言是简体中文;(2) 使用 Web Clipper 剪藏前,确认文章是以 Markdown 格式而非纯 HTML 保存,格式越干净 AI 理解越准确。
Karpathy 的实测数据:100 篇文章、约 40 万字的规模下,单纯靠 index.md 导航足够快,不需要向量数据库。如果未来超过 300 篇,可以安装 qmd 本地搜索引擎加速检索。
除 iFlow CLI 外,Kimi Code CLI(月之暗面)、CodeBuddy Code(腾讯)都是优秀的国产替代。如果对数据安全有极高要求,可以本地部署 DeepSeek / Qwen-Coder / GLM-Coder 等开源模型,搭配 OpenCode 或 Cline 等开源 Agent 框架,实现完全离线运行、代码永不出本机。无论选哪个方案,Karpathy 工作流的核心原理完全不变。
LLM 无法在一次读取中同时处理 Markdown 文本和行内图片。解决方法是分两步:(1) 先让 AI 读取 Markdown 文本内容;(2) 再让 AI 单独查看 raw/assets/ 中的图片文件。虽然略微繁琐,但效果足够好。建议在 Obsidian 中开启"自动下载附件"功能。
背景:文章初稿写完后,发现 Claude Code 需要 Anthropic API,而 Anthropic 在国内没有直接服务。更重要的是——
2026 年 7 月 8 日,工信部 NVDB 正式发布了关于 Claude Code 的高危安全风险提示。监测发现其 2.1.91~2.1.196 版本内置隐蔽监控后门,可绕过用户授权静默向境外传输数据。阿里巴巴已于 7 月 10 日起全员禁用,腾讯更早在 2025 年 11 月就已将其移除。
结论:不仅仅是"能用不能用"的问题,而是"用了会不会出事"的问题。对于跨境电商这类涉及供应链数据、客户信息的业务场景,Claude Code 存在不可接受的安全合规风险。
核心认知:Karpathy 工作流本质上只需要一个能读写本地文件、能执行 Shell 命令的 AI Agent。任何支持这些能力的工具都能胜任,不绑定任何特定模型或厂商。
推荐方案:iFlow CLI(阿里心流)是 Claude Code 最完整的平替——免费、开源、支持 Kimi K2 / Qwen3 Coder / DeepSeek V3 等国产模型,基准测试综合表现优于 Claude Code。Kimi Code CLI(月之暗面)和 CodeBuddy Code(腾讯)同样是成熟方案。
本文即为证明:你现在看到的这篇文章,从调研、分析、撰写到代码修改,全程由 CodeBuddy(腾讯 CodeBuddy Code)完成——没有调用一次 Anthropic API。
不变。核心流程(Ingest → Compile → Query → Lint → Output)完全一致。唯一不同的是:
· 启动命令从 claude 变为 iflow(iFlow CLI)或 kimi(Kimi Code CLI)
· 规则文件从 CLAUDE.md 变为 AGENT.md(内容通用)
· 不再需要科学上网,不再需要 $20/月订阅
· API Key 从心流开放平台 / Kimi 平台免费获取
实际使用体验几乎无差异——都是终端交互模式,都是自然语言对话。
三个层面保障:
1. 传输层:国内模型的 API 推理全部在国内服务器完成,数据不出境。
2. 存储层:知识库本身就是本地 Markdown 文件,完全不依赖云端存储(Obsidian 是本地优先的)。
3. 极端方案:如果你对数据安全有极致要求,可以本地部署 DeepSeek / Qwen-Coder / GLM-Coder 等开源模型(Ollama),配合 OpenCode 等开源 Agent——实现完全离线运行,代码永不出本机。
省流版:够用,但方案要选对。
2GB 内存不适合运行重型 Node.js 应用或 Docker + PostgreSQL 全家桶(如 Wiki.js、Outline 需要 2GB 以上), 但跑轻量级 Obsidian Web 浏览器完全没问题:
· Perlite(PHP): 内存占用 < 50MB,Docker 容器整体 < 100MB
· Silmaril(Python FastAPI): 内存占用 ~100MB
· VitePress 静态站点 + Nginx: 内存占用 < 30MB(最省资源)
· Obsidian-web(Go): 内存占用 ~50MB
推荐配置:2核 2GB 完全可跑,如果预算允许升级到 4GB 会更从容,但不升级也不是瓶颈。 详见 十一·附:云服务器部署方案。
完全可以,而且有两种方式:
1. iframe 嵌入(推荐,零代码): 在 vueMaster 中新增一个路由页面,用 <iframe> 嵌入云服务器上的知识库 Web 界面。
2. 自定义 Vue 组件(深度集成): 用 Vue 2 + Element UI 写一个 Markdown 阅读器组件, 通过 API 从服务器拉取 Markdown 文件实时渲染。
无论是哪种方式,你都能在手机、平板、任何有浏览器的设备上访问知识库——而且因为是你自己的服务器,数据完全私密。 详见 十一·附:前端集成方案。
结论先行:2GB 内存完全够用,但方案选择是关键。 云服务器的瓶颈不在 CPU,而在内存。2GB 的场景下,不能用"全家桶"式的重型方案(如 Wiki.js + PostgreSQL + Redis), 但轻量级的 Obsidian Vault Web 浏览器实测内存占用不到 100MB。
| 方案 | 技术栈 | 内存占用 | 部署方式 | 支持功能 | 推荐场景 |
|---|---|---|---|---|---|
| Perlite ⭐ | PHP + Nginx(Docker) | ~80MB | Docker 一行命令 | 搜索、图谱、标签、Mermaid、LaTeX、Obsidian 主题 | 首选推荐,最省心 |
| Silmaril ⭐ | Python FastAPI | ~100MB | pip install + 一行启动 | 搜索、Obsidian 主题、移动端适配、代码高亮 | 不用 Docker 的场景 |
| VitePress 静态 | Vue 3 + Vite | ~20MB | 本地 build + Nginx 静态托管 | 搜索、导航、主题 | 追求极致性能 |
| obsidian-web | Go + Vue 3 | ~50MB | Go 二进制 + 前端 | 搜索、图谱、LLM 集成、多仓库 | 需要 LLM 集成的进阶场景 |
Obsidian 官方有 Publish 服务($8/月),但几个硬伤:
1. 数据在 Obsidian 官方服务器,不是你的云服务器
2. 无法自定义域名和鉴权
3. 月费累积成本:一年 $96,够买一台 2核4G 云服务器了
4. 无法集成到自己的项目网页——Publish 是独立站点
基于以上原因,本文推荐自建方案。
以下是完整步骤(以 Ubuntu 20.04/22.04,2GB 内存为例):
curl -fsSL https://get.docker.com | bashsudo usermod -aG docker $USER ← 免 sudo 运行 Docker (退出 SSH 重新登录后生效)
# 在本地终端执行(替换为你的服务器 IP)scp -r ~/my-knowledge-base root@你的服务器IP:/home/kb/ 注意:不需要上传 .obsidian/ 文件夹(那是 Obsidian 客户端配置,服务器用不上),只上传 Markdown 文件和附件即可。
docker run -d \ --name perlite \ --restart unless-stopped \ -p 8080:80 \ -v /home/kb/my-knowledge-base:/var/www/perlite \ secure77/perlite:latesthttp://你的服务器IP:8080,应该能看到你的知识库 Web 界面 sudo apt install nginx certbot python3-certbot-nginx -ysudo nano /etc/nginx/sites-available/kbserver { server_name kb.your-domain.com; location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; }}sudo ln -s /etc/nginx/sites-available/kb /etc/nginx/sites-enabled/sudo certbot --nginx -d kb.your-domain.comsudo systemctl reload nginx如果你的服务器没装 Docker 或想更轻量:
pip install silmarilsilmaril --vault /home/kb/my-knowledge-base --port 8080 --host 0.0.0.0# 支持 416 个 Obsidian 社区主题,移动端完美适配# 在服务器上添加 crontabcrontab -e# 添加:每 5 分钟 git pull 一次*/5 * * * * cd /home/kb/my-knowledge-base && git pull ⚠️ 注意:在 obsidian-web 或 Perlite 中设置只读模式(readonly: true),避免 Web 端编辑与本地编辑冲突。
有了云服务器上的 Web 版知识库后,下一步就是把它嵌入到"一颗松树"项目里——这样团队成员打开 OA 系统就能直接查知识库,无需记住额外网址。
在 vueMaster 项目中新增一个路由页面,用 iframe 嵌入知识库:
src/views/extranet/KnowledgeBase.vue: <template> <div class="kb-container"> <iframe src="https://kb.your-domain.com" class="kb-iframe" frameborder="0" allow="clipboard-write" /> </div></template><style scoped>.kb-container { width: 100%; height: calc(100vh - 60px); }.kb-iframe { width: 100%; height: 100%; border: none; }</style>router/index.js 中): { path: '/knowledge-base', component: KnowledgeBase, meta: { title: '知识库' } }{ path: '/knowledge-base', title: '知识库', icon: 'el-icon-reading' }如果知识库部署在独立域名(如 kb.your-domain.com),而 OA 在另一域名,需要在服务器的 Nginx 中添加:
add_header X-Frame-Options "ALLOW-FROM https://oa.your-domain.com";或者更简单:知识库和 OA 部署在同一域名下的不同路径(用 Nginx location 转发)。
Perlite 和 Silmaril 都原生支持移动端响应式布局。iframe 在手机上也能正常使用——建议给 kb-container 设置 height: 100dvh 以适配移动端地址栏变化。
如果你不想用 iframe,而是想做成一整套符合项目 UI 风格的知识库界面,可以基于 Vue 2 + Element UI 搭建:
后端 API(Go/Node.js):部署在云服务器上,提供 Markdown 文件的 CRUD + 搜索接口
前端(vueMaster):用 marked + highlight.js 渲染 Markdown, 用 el-tree 展示目录结构,用 el-input 做全局搜索
数据流:Obsidian 本地编辑 → Git 同步 → 服务器 WebDAV/API → vueMaster 读取
核心依赖(在 vueMaster 中安装):
npm install marked highlight.js github-markdown-css关键代码框架:
// API 接口设计(服务器端,Go 示例仅 30 行)GET /api/notes → 返回目录树 JSONGET /api/notes/:path → 返回 Markdown 原文GET /api/search?q=关键词 → 全文搜索// 前端 Markdown 渲染import { marked } from 'marked';import hljs from 'highlight.js';marked.setOptions({ highlight: (code, lang) => hljs.highlightAuto(code, [lang]).value});// 渲染this.renderedHtml = marked.parse(markdownContent);// 加上 [[双向链接]] 的转换逻辑// 加上 Mermaid 图表的实时渲染完整部署后的架构:
📱 手机/平板 ─── 浏览器 ───┐
💻 办公电脑 ─── Obsidian 客户端 ─── Git 同步 ───┐
│
┌──云服务器(2GB)──┐
│ Perlite / Silmaril │
│ Obsidian Vault │
│ Web 界面(:8080) │
└──────────┬─────────┘
│
🌐 vueMaster OA ─── iframe 嵌入 ───┘
→ 团队成员打开 OA → 点击"知识库"菜单 → 直接查、直接搜,一气呵成。