研究 RAG 的时候受不了来回切 Tab,于是做了个分栏对话的 AI 助手

2025 年 12 月 28 日
 yushaw

事情是这样的:

我在研究 RAG ,想边看概念边写代码实现。开了两个 ChatGPT 标签页,一个问原理,一个写代码。然后就开始了无尽的 Tab 切换、复制粘贴上下文...

想了想:为什么不能左右分栏,两个对话同时进行?

于是做了「三千」 sanqian.io ,一个桌面端 AI 助手( macOS & Windows )。分栏对话是起点,后来又加了很多我觉得其他 AI 应用该有但没有的功能。


分栏对话 Cmd+\

按 Cmd+\,窗口一分为二。两个独立对话,同时运行。

左边:"解释一下 RAG 的架构" 右边:"用 LangChain 写一个 RAG 实现"

两边同时思考,同时输出。不用切换,不用复制粘贴。


图片生成 + 迭代

大多数 AI 应用把图片生成放在单独页面。这里直接在对话中完成。

"画一个东京猫咖,日落时分,动漫风格"

生成图片

"不错!改成清晨,阳光从窗户照进来"

基于上下文重新生成

目前支持模型:即梦、Gemini 。


Skills 技能系统

上传 PDF 、Excel 、Word 、PPT ,AI 自动激活对应技能处理。

内置技能:

还不够?上传自定义技能(.md 或 .zip 格式),让 AI 学会新技能。


Snippets 快捷指令

用 / 触发预设 prompt 模板,这不稀奇。

稀奇的是:snippet 可以嵌套其他 snippet ,还能 @引用工具和 Agent。

比如创建一个 /review 指令:

/expert

First use @Code Explorer to check the code, then provide:
1. Security issues
2. Performance suggestions
3. Refactoring ideas

/analyze

这里 /expert 展开成另一个 snippet ,@Code Explorer 调用一个子 Agent ,/analyze 又是另一个 snippet 。

可组合的 prompt 。


多 Provider 支持

一个应用,所有模型:

配置一次 API Key ,随时切换。每个 Provider 显示支持的能力( LLM 、图片、视觉、长上下文等)。


Web 搜索带来源

AI 搜索网页时,你能看到信息的确切来源。

不是"根据网上资料",而是可点击的引用链接。下图中有 24 个来源。


能力菜单

快速访问 AI 的所有能力。本地文件夹、技能、工具、子 Agent ,一个菜单全搞定。


技术栈

层级 技术
前端 Electron + React + TypeScript + Tailwind
后端 Python + FastAPI + LangGraph
数据库 SQLite + sqlite-vec (向量)+ FTS5 (全文搜索)
执行环境 沙箱隔离( macOS Seatbelt )

本地优先:所有数据存在本地,不上传。


当前状态

这是一个 Vibe Coding 项目,自己用着顺手,分享出来。可能有 bug ,但核心功能已经稳定。

另外,三千还开放了类似 Ollama 的本地 Agent API ,可以基于它开发自己的应用。我用这个 API 做了两个 Demo 应用:Notes 和 TodoList,都可以在 sanqian.io 下载体验。


链接

官网:sanqian.io

欢迎试用,随时反馈!

2417 次点击
所在节点    分享创造
4 条回复
honkew
2025 年 12 月 29 日
chrome 可以分栏啊
vodmaker
2025 年 12 月 29 日
好强!搜索工具是用的免费接口吗?
yushaw
2025 年 12 月 30 日
@vodmaker electron 自带的浏览器
yushaw
2025 年 12 月 30 日
@honkew yep ,不过是我做这个小玩意之后才出的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1181665

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX