本地优先的 AI 科研工作台,把选题、检索、阅读、实验、写作与投稿串成一条可追溯的工作流。
产品亮点 · 快速开始 · 技术架构 · 参与贡献 · 更新日志
当前版本:v0.5.0。小妍仍处于快速迭代阶段,升级前建议备份重要数据。
- 完整科研链路:研究规划、文献综述、论文精读、知识沉淀、实验记录、LaTeX 写作和投稿管理集中在一个工作台。
- 本地优先:核心业务由 Tauri/Rust 与本地 SQLite 承载,研究资产默认保存在你的设备上。
- 可观测的多 Agent 协作:复杂任务先规划再执行,可查看节点、过程、来源与中间产物,而不是只得到一个黑盒答案。
- 证据可追溯:论文、笔记、实验、知识主张与投稿相互关联,Graph RAG 会沿证据关系召回上下文。
- 模型可选择:支持 OpenAI、Anthropic 及 OpenAI 兼容接口,可按快速分析、深度研究、写作和视觉任务分配模型。
Important
“本地优先”不等于“完全离线”。当你启用云端模型、联网搜索、WebDAV 或其他第三方服务时,相关请求内容会发送给你配置的服务商。请在提交敏感、未公开或受约束的研究材料前核对服务商条款。
| 模块 | 能力 |
|---|---|
| 工作台 | 聚合研究主题、论文、笔记、实验、投稿、风险提醒与下一步行动 |
| 研究规划 | 多 Agent 生成学习路线、代表论文、开放问题与领域动态 |
| 文献与精读 | PDF 管理、全文提取、语义检索、图表识别、翻译与复现指南 |
| 小妍协同 | 直接对话、任务拆解、技能模板、附件、来源引用与任务中止 |
| 知识库 | Markdown 笔记、小妍内部自动 LLM Wiki、知识图谱、证据关系与混合 Graph RAG |
| 实验与代码 | 结构化实验记录、代码工作区、Git 审查、快照与差异对比 |
| 学术写作 | 多文件 LaTeX、预览、诊断、统计、润色、续写与学术翻译 |
| 投稿管理 | 刊会追踪、投稿看板、版本快照、角色化预审与审稿意见跟踪 |
| 数据与同步 | 本地数据库、加密配置导出、备份恢复及可选的加密同步 |
查看 v0.5.0 主要更新
- 实验代码助手与实验快照对比
- 研究领域动态与历史洞察
- PDF 全文搜索、命中高亮和阅读位置恢复
- 多文件 LaTeX 与流式学术翻译
- 方法、实验、写作、相关工作等角色化投稿预审
前往 Releases 下载对应平台的安装包。
macOS 如果提示应用“已损坏”,确认安装包来自本仓库 Release 后执行:
xattr -cr /Applications/小妍.app环境要求:Node.js 18+、pnpm 9+、Rust 工具链 以及 Tauri v2 对应平台依赖。
git clone https://github.com/Yurken/xiaoyan.git
cd xiaoyan
pnpm install
pnpm dev:desktop常用命令:
pnpm type-check # 全工作区类型检查
pnpm lint # 全工作区 lint
pnpm test # 单元与组件测试
pnpm test:e2e # 桌面端端到端测试
pnpm build:desktop # 构建桌面应用首次启动后在“设置”中添加模型服务:
- 配置主模型;仅这一项即可使用主要 AI 功能。
- 按需为快速分析、深度研究、写作、代码和视觉任务配置独立模型。
- 需要联网检索时,再配置 Tavily 等搜索服务。
配置优先级为:Agent 覆盖 → 任务分工 → 默认执行模型 → 主模型。API Key 不应写入仓库文件或提交到 Issue;请只通过应用设置或本机环境变量提供。
React + Vite
↕ Tauri invoke / event
Rust 本地内核
├── commands 参数校验与命令边界
├── services 设置、论文、知识、投稿、同步等领域服务
├── agent runtime 多 Agent 编排、工具注册与事件流
├── RAG / Wiki 小妍后台自动编译、语义与关键词混合召回
├── Graph 引用图与证据图谱
└── SQLite 本地持久化
apps/
├── desktop/ # Tauri v2 桌面端(旗舰端)
├── web/ # Next.js 展示 / 远程协作端
└── mobile/ # Expo 轻量陪伴端
packages/
├── api-sdk/ # API SDK
├── config/ # 共享配置
├── types/ # 跨端领域类型
└── ui/ # 共享 UI 组件
桌面端是核心产品,新能力默认先在桌面端实现。详细设计见 桌面端系统介绍 与 开发原则。
小妍内部 LLM Wiki 的自动整理流程、数据模型和检索边界见 LLM Wiki 与混合检索。
- 桌面端业务数据默认存入本地 SQLite,PDF 原文件保留在用户选择的位置。
- 模型密钥通过应用设置管理;界面中的
***代表已保存但不回显明文。 - 启用云模型、搜索或同步服务会产生对外网络请求,数据处理规则由对应服务商决定。
- 发布日志、Issue、截图与诊断文件可能包含路径、论文标题或其他研究信息,分享前请先脱敏。
欢迎提交 Issue 和 Pull Request。开始前请先阅读 参与贡献、社区行为准则 与 开发原则:页面只负责组合,功能进入 features/<domain>/,副作用与状态机逻辑进入 hook。
提交信息使用 type: 中文描述,例如:
feat: 支持批量导入论文
fix: 修复切换论文后阅读位置丢失
docs: 补充本地开发说明
提交 PR 前至少运行与改动范围相符的检查;跨工作区修改需运行 pnpm type-check 和 pnpm lint。一般使用问题请查看 获取帮助;安全漏洞请不要创建公开 Issue,按照 安全政策 私下报告。
如果小妍对你有帮助,欢迎点一个 Star。它会帮助更多研究者发现项目。
项目代码与文档采用 Apache License 2.0。vendor/opencode/ 保留其原始 MIT License。
“XiaoYan / 小妍”名称、Logo、海报、应用图标和角色形象不包含在代码许可证的品牌授权中;分发修改版时请使用不同的名称与视觉标识。详见 商标政策、素材授权说明 和 NOTICE。第三方图标、字体及其他素材仍受各自权利人的条款约束。
🏆 哈尔滨工业大学首届AI智能创新大赛 · 学习科研赛道 · 冠军
