本项目基于 LangChain AI 的 DeepAgents 框架,并进行了扩展和定制。
deepagents/
├── deepagents_official/ # DeepAgents 核心框架(带扩展)
├── obsidian_assistant/ # Obsidian 笔记助手(Python 后端)
├── obsidian-ai-assistant/ # Obsidian 插件(TypeScript)
├── examples/ # 示例与演示
│ └── notebooks/ # Jupyter Notebook 演示
├── docs/ # 项目文档
│ ├── obsidian/ # Obsidian 助手相关文档
│ ├── reports/ # 报告和总结
│ └── development/ # 开发文档
├── .github/ # GitHub 配置
│ └── copilot-instructions.md # Copilot 工作区说明
├── flowchart.mmd # 流程图
└── README.md # 本文件
我们为 DeepAgents 添加了通义千问(Qwen)模型的支持:
- 📁
deepagents_official/examples/qwen/qwen_example.py- Qwen 模型使用示例 - 🔧
deepagents_official/examples/research/research_agent.py- 研究 Agent 支持 Qwen - 🌐 通过
langchain-community的ChatTongyi集成
使用方法:
# 安装依赖
pip install dashscope langchain-community
# 设置环境变量
export DASHSCOPE_API_KEY="your-api-key"
# 运行示例
python deepagents_official/examples/qwen/qwen_example.py智能 Obsidian 笔记管理工具,具备:
- 📝 自动笔记整理与分类
- 🔍 智能笔记搜索(本地 + 网页)
- 🎯 Token 使用优化
- 💡 上下文感知的笔记建议
- 🔄 V2.1 优化功能(智能路由、缓存、模型适配器)
查看详细文档:
TypeScript 实现的 Obsidian 插件,提供:
- 🤖 聊天界面 - 直接在 Obsidian 中与 AI 对话
- 🔗 无缝集成 - 自动生成 Obsidian 内部链接
[[path|name]] - 📊 实时监控 - Token 使用统计和成本追踪
- ⚙️ 灵活配置 - 支持多种模型和搜索策略
- 🎨 原生体验 - 完全融入 Obsidian 界面
查看详细文档:
cd deepagents_official
pip install -e libs/deepagents
pip install -e libs/deepagents-cli# 确保已设置 DASHSCOPE_API_KEY
cd deepagents_official/examples/qwen
python qwen_example.pycd obsidian_assistant
python obsidian_assistant.py-
构建插件:
cd obsidian-ai-assistant npm install npm run build -
复制到 Obsidian 插件目录:
# macOS/Linux cp -r . ~/path/to/your/vault/.obsidian/plugins/obsidian-ai-assistant/ # Windows xcopy /E /I . "C:\path\to\your\vault\.obsidian\plugins\obsidian-ai-assistant\"
-
启动 Python 后端:
# 在另一个终端 cd obsidian_assistant python api_server.py # 需要创建此文件
-
在 Obsidian 中启用:
- 打开 Settings → Community plugins
- 关闭 "Restricted mode"
- 启用 "AI Assistant (DeepAgents)"
将在 Obsidian Community Plugins 商店发布。
- DeepAgents 官方文档: https://github.com/langchain-ai/deepagents
- Qwen/通义千问: https://help.aliyun.com/zh/dashscope/
- Obsidian API: https://docs.obsidian.md/
- 后端指南: obsidian_assistant/README.md
- V2.0 对比报告: docs/obsidian/obsidian-comparison-v2.0-vs-copilot.md
- V2.1 优化计划: docs/obsidian/obsidian-optimization-plan-v2.1.md
- 价格管理指南: docs/obsidian/pricing-guide.md
- 插件指南: obsidian-ai-assistant/README.md
- 测试日志: obsidian-ai-assistant/docs/TEST_LOG.md
- 优化计划: obsidian-ai-assistant/docs/OPTIMIZATION_PLAN.md
- 集成测试清单: obsidian-ai-assistant/docs/INTEGRATION_TEST_CHECKLIST.md
- 开发工作区: .github/copilot-instructions.md
- Jupyter Notebooks: examples/notebooks/
- 性能测试: examples/notebooks/obsidian_V2.0_test_with_tokens.ipynb
- V2.1 验证: examples/notebooks/v21_validation.ipynb
- 命名规范: docs/NAMING_CONVENTION.md
- 快速参考: docs/NAMING_QUICK_REFERENCE.md
- 实施总结: docs/reports/NAMING_IMPLEMENTATION_SUMMARY.md
git clone <your-repo-url>
cd deepagents# 安装 DeepAgents
pip install -e deepagents_official/libs/deepagents
pip install -e deepagents_official/libs/deepagents-cli
# 安装 Qwen 支持
pip install dashscope langchain-community
# 安装其他依赖
pip install python-dotenv创建 .env 文件(已在 .gitignore 中忽略):
# Qwen/通义千问 API Key
DASHSCOPE_API_KEY=your-dashscope-api-key
# Tavily 搜索 API(用于研究 Agent)
TAVILY_API_KEY=your-tavily-api-key
# 其他 API Keys...obsidian-ai-assistant/
├── manifest.json # 插件元数据
├── package.json # npm 依赖
├── tsconfig.json # TypeScript 配置
├── esbuild.config.mjs # 构建配置
├── styles.css # 插件样式
└── src/
├── main.ts # 插件入口
├── settings.ts # 设置接口
├── api/
│ └── client.ts # API 客户端
└── ui/
└── chat-view.ts # 聊天界面
# 开发模式(热重载)
npm run dev
# 生产构建
npm run build
# 代码检查
npm run lint
# 代码格式化
npm run format插件通过 HTTP REST API 与 Python 后端通信:
| 端点 | 方法 | 说明 |
|---|---|---|
/health |
GET | 健康检查 |
/query |
POST | 发送查询请求 |
/models |
GET | 获取可用模型列表 |
详见:插件 README
本项目是 DeepAgents 的扩展版本,主要特性:
- ✅ 支持国内大语言模型(Qwen 系列)
- ✅ Obsidian 笔记管理集成(Python 后端 + TypeScript 插件)
- ✅ Token 计数器 v2.0(10 个主流模型)
- ✅ 智能路由系统(V2.1)
- ✅ 缓存与压缩(V2.1)
- ✅ 完整的文档体系
- 📊 性能优化: 本地搜索 ~4s,成本 ¥0.0003/次
- 🔧 开发友好: 完整的 TypeScript + Python 架构
- 📚 文档完善: 对比报告、优化计划、演示 Notebook
- 🎯 生产就绪: 可直接部署到 Obsidian
欢迎提交 Issue 和 Pull Request!
- V2.0: 基础功能 + Token 计数器
- Obsidian 插件初版(TypeScript)
- Python API 服务器(FastAPI)✅ 2025-11-14 完成
- API 端点测试全部通过 (3/3) ✅
- Obsidian 插件集成测试通过 ✅
- P0 修复: 内部链接跳转功能 ✅ 2025-11-14 18:00 完成
- 日志增强: 工具调用 + 路由策略可视化 ✅ 2025-11-14 18:15 完成
- V2.1: 智能路由 + 缓存 + 模型适配器
- 插件可选优化(复制/插入、多语言)🔄 进行中
- 插件 Beta 测试(5-10 用户)📅 下周启动
- 插件发布到 Obsidian Community
- 向量索引 + 语义搜索
- deepagents_official: 遵循原项目 MIT License
- obsidian_assistant: MIT License
- obsidian-ai-assistant: MIT License
- 其他扩展代码: MIT License
- LangChain AI - 提供 DeepAgents 框架
- Alibaba Cloud - 提供通义千问(Qwen)模型
- Obsidian - 提供优秀的笔记软件
- 社区贡献者 - 感谢所有反馈和建议
| 指标 | 数值 |
|---|---|
| 支持模型 | 10+ |
| 本地搜索响应时间 | ~4s |
| 本地搜索成本 | ¥0.0003/次 |
| 月度成本(100次/天) | ¥0.9-2.7 |
| 指标 | 数值 |
|---|---|
| 代码行数 | ~800 |
| 依赖包 | 149 |
| 构建时间 | <5s |
| 插件大小 | ~100KB |
当前版本:
- Python 后端: V2.0 (日志增强版) ⬆️
- TypeScript 插件: V0.1.1 (核心功能完整,Beta 就绪)
项目状态:
- ✅ 核心功能已完整(对话 + 搜索 + 链接跳转)
- ✅ 运行日志完善(工具调用 + 路由策略 + 覆盖率)⬆️
- 🔄 可选优化进行中(复制/插入、多语言)
- 📅 Beta 测试下周启动
最后更新: 2025-11-14 18:15
维护者: YF
仓库: https://github.com/YFOOOO/deepagents-obsidian
-
API 服务器测试 - 3/3 端点全部通过
/health- 健康检查 ✅/models- 模型列表(10个模型)✅/query- 查询处理(1.9秒响应)✅
-
Obsidian 插件集成测试 - 核心功能验证通过
- 插件加载和启用 ✅
- 聊天界面显示 ✅
- 基本对话功能 ✅
- 本地笔记搜索 ✅(找到5个相关笔记)
- 连接状态指示 ✅
-
🎉 P0 核心问题修复 - 内部链接跳转 ✅ 已完成并验证!
- 问题:内部链接点击无法跳转
- 原因:
MarkdownRenderer的sourcePath参数为空字符串 - 解决:修改为
"/"(vault 根目录) - 工作量:仅 15 分钟(修改 1 个参数)
- 状态:✅ 用户验证通过
-
📊 日志增强 - 运行时信息可视化 ✅ 刚刚完成!
- ✅ 查询开始/完成分隔符
- ✅ 工具调用详情(已有)
- ✅ 路由策略显示(local_only/hybrid/web_first)
- ✅ 覆盖率百分比(如 100.0%)
- ✅ 时效性标记
- ✅ 缓存命中状态
- ✅ 参考来源计数
⚠️ Token 使用统计(待后端返回数据)
最新测试日志示例:
============================================================
📝 查询请求: obsidian
============================================================
🔍 [search_obsidian_docs_v2] 工具被调用
查询: 'obsidian'
最大结果数: 5
搜索目录: /Users/yf/Documents/obsidian agent
目录存在: True
📄 .md 文件总数: 671
🔎 搜索关键词: 'obsidian'
✅ 搜索完成: 检查了 7 个文件,找到 5 个结果
============================================================
✅ 查询完成
------------------------------------------------------------
🧭 路由策略: local_only
📊 覆盖率: 100.0%
📚 参考来源: 7 个
============================================================
- 测试评分:70/100 → 85/100 ⬆️ +15 分
- 发布状态:内部测试 → Beta 测试就绪 ⬆️ 升级
- 核心功能:可用 → 完整 ⬆️ 达标
- 可观测性:基础 → 增强 ⬆️ 新增日志
本周:修复 P0 问题✅ 已完成本周:增强日志输出✅ 已完成- 本周:(可选) 实现复制/插入功能
- 下周:Beta 测试(5-10 用户) ⬆️ 提前启动
- 三周后:根据反馈快速迭代
- 一个月后:公开发布 v1.0 ⬆️ 提前 2 周
详见:
注意: 本项目基于 langchain-ai/deepagents 的开源代码进行扩展和定制,保留了原项目的所有功能,并添加了对中文模型、Obsidian 笔记系统和 TypeScript 插件的支持。