Istota:集成 Nextcloud 的自托管个人 AI 操作系统
Istota 是一款与 Nextcloud 深度集成的多用户个人 AI 操作系统,主打本地化部署、五层记忆系统与隐私沙箱…
Istota(波兰语,意为「存在」或「实体」)是一款面向个人用户的多用户自托管 AI 操作系统,主打与私有云 Nextcloud 的深度集成。项目将日常的数字生活——任务、日历、健康、财务、文件、邮件——整合到一套模块化界面中,并通过内置的 AI agent 提供查询与自动化能力。
项目定位与核心模块
Istota 把自己定位为「个人操作系统」:把分散在十几个应用中的琐碎信息汇聚成一套统一可查询、可自动化的体系,而非依赖某一款笔记 App 或智能助手。项目自带一套原生模块:
- 多房间 AI agent 聊天,支持 Nextcloud Talk、邮件与 Web 三种入口。
- RSS / Atom / Tumblr / Are.na 阅读器,抓取、去重、UI 全部内置。
- 位置追踪模块,支持自动地点识别、出行历史与日历联动。
- 健康面板,整合身体数据、血液报告、生物标志趋势、Garmin 每日摘要。
- 财务模块,基于 Beancount 的复式记账、发票、工作记录与报税报表。
- 定制化无头 Chrome 浏览器,通过自有 CLI 驱动,附带 Web VNC。
- Git 工作流,可从聊天消息完成 clone、分支、测试、发起 Merge Request。
记忆与检索设计
Istota 采用五层记忆体系:
- 每用户记忆、每频道记忆,以及夜间从对话中抽取并构建的知识图谱。
- 混合检索:BM25 关键词匹配与向量检索相结合,覆盖 agent 看到的所有内容。
- 夜间「睡眠周期」执行记忆整合任务,把零散信息归并到知识图谱。
安全与隔离
项目把语言模型当作「不可靠的执行者」来对待,所有任务运行在 bubblewrap 沙箱中,限定可访问的挂载点,模型即便被诱导也无法读取凭证或访问未授权服务。API Key、SMTP 密码、OAuth Token 永远不进入 agent 进程,通过 Unix socket 代理按技能注入,密钥在静态时使用 Fernet 加密。AI 只能以 JSON 形式提交修改建议,由调度器在任务结束后校验并应用,所有变更均可回溯。部署后的 Istota 源码对 agent 自身只读,agent 可以构建软件,但不能改写自己。
引擎与调度
模型引擎被抽象为统一的「Brain」协议,多个 brain 可热插拔并按任务类型路由。用户更换模型、下线某个 API Key 或切换到本地小模型,只需修改一行配置,不需要重建系统。每个用户拥有独立的内存、文件、沙箱、密钥与队列;需要协作的房间可以共享,天然多租户隔离。后台任务在前/后台队列中调度:一次长爬取、每晚的记忆整合、批量摘要都在后台运行,下一条消息可以即时得到回复。即便模型离线,CLI 仪表盘、定时任务、数据库依然可用,系统不会变成「砖头」。
Istota 项目代码已在 GitHub 开源,适合希望把个人数据、记忆与 AI agent 全部留在自有服务器上的用户。
