一款开源、本地优先的 AI 日记。不是让你坐下来写长篇日记,而是随手记录生活碎片,让 AI 自动整理。
官网 · App Store · Google Play · Discord
Memex 是一款开源、本地优先的 AI 日记应用,支持 iOS 和 Android。它和传统日记应用的思路完全不同 — 不要求你坐下来写长篇日记,而是让你随手记录生活碎片(文字、照片、语音),通过多 Agent 协作的 AI 系统自动整理为结构化卡片,构建知识库,发现洞察,并通过 AI 角色提供陪伴。
这里说的"本地优先"是指: 你的记录、卡片和知识都保存在你的设备上。没有 Memex 服务器存储你的日记。你自带大模型服务商(OpenAI、Claude、Gemini、DeepSeek 等),你的请求直接从手机发送到那个服务商 — 我们永远看不到你的数据。可选的 Memex AI 服务仅用于代理模型请求,不用于存储日记。
- Memex Agent 编排:一个对话 Agent 协调专门的 Skill 和子 Agent,分别处理时间线卡片、PKM 入库、日程更新、知识洞察、诊断、评论、记忆整理、媒体处理和陪伴聊天。
- 自动识别记录内容,生成最匹配的卡片形式:
- 生活与效率(任务、习惯、事件、时长、进度)— 记录待办、习惯打卡、日程与目标
- 知识与媒体(文章、片段、引用、链接、对话)— 记录笔记、参考资料与对话内容
- 人物与地点(联系人、地点)— 记录人际关系与位置信息,支持地图预览
- 数据与指标(指标、评分、交易、规格表)— 记录测量数据、评价与消费
- 视觉(图集)— 用图片留存珍贵时刻
Readme-Zh-Scene02-CardShowcase.mp4
- 自动打标签、实体提取、关联关系链接
- AI 对话助手,可针对任意卡片或主题展开讨论
- 基于 P.A.R.A 方法论的知识组织(项目、领域、资源、归档)
- 洞察卡片,跨记录发现关联模式:
- 图表类(趋势、柱状、雷达、气泡、构成比例、进度环)— 可视化数据规律、分布与目标进展
- 叙事类(高亮、对比、总结)— 提炼关键结论、呈现前后变化、生成周期性回顾
- 时空类(地图、路线、时间线)— 还原事件发生的地点与时间脉络
- 图集 — 以照片形式唤起视觉记忆
Readme-Zh-Scene03-InsightShowcase.mp4
- 创建拥有独特个性的 AI 角色,陪伴你的日记生活
- 自动评论:角色会对你的新时间线卡片做出反应 — 像一个一直关注你的朋友
- 1v1 聊天:和角色进行真实对话,它能从你的卡片和知识库中了解你的生活
- 持久记忆:角色在评论和聊天两个场景中维护长期记忆 — 它会和你一起成长
- 兼容 SillyTavern:支持导入角色卡(V2 JSON + PNG),包含人设、世界书和示例对话
- 一键文档入库:AI 自动整理后,所有的记录都会形成一系列相互关联的 Markdown 文件,自动帮你一键完成日记与文档的入库操作。
- 伴随 AI 共同进化:为什么坚持用 Markdown?因为 AI 的能力在不断飞跃,唯有最纯粹的原始文本记录,才能跨越时空,真正跟上它进化的脚步。未来随着大模型的进一步提升,基于你沉淀的这些记录,系统能够源源不断地为你挖掘出全新的体验与深层洞察。
- 绝对的去留自由:拒绝平台锁定,我们将选择权完全还给你。如果你将来觉得我们的产品不够好用,随时可以一键导出所有的记录为 Markdown 文件,零成本、无缝迁移到任何一款笔记产品中去。
- 所有数据存储在本地(文件系统 + SQLite)
- 应用锁(生物识别认证)
- 无云端依赖,数据不会离开你的设备
- 支持 iCloud Drive、设备存储(自定义文件夹)与应用存储
- 一键完整备份 / 恢复
| 提供商 | API 类型 | 备注 |
|---|---|---|
| Google Gemini | Gemini API | gemini-3.5-flash、gemini-3.1-pro-preview 等 |
| Google Gemini | OAuth(无需 API Key) | 使用 Google 账号登录,非官方支持,风险自负 |
| OpenAI | Chat Completions / Responses API | gpt-5.5、gpt-5.4 等 |
| ChatGPT | OAuth(无需 API Key) | 使用 OpenAI 账号登录,非官方支持,风险自负 |
| Anthropic Claude | Claude API | 直接 API 访问 |
| AWS Bedrock | Bedrock Claude | 适合 AWS 用户 |
| Memex AI | 托管模型访问 | 可选账号制模型访问;日记数据仍保存在本地 |
| Kimi(月之暗面) | OpenAI 兼容 | kimi-k2.5、kimi-k2 等 |
| 阿里云(通义千问) | OpenAI 兼容 | qwen3.5-plus、qwen3-coder 等 |
| 火山引擎(豆包) | OpenAI / Responses 兼容 | doubao-seed-2-0-pro-260215、doubao-seed-1-8-251228 等 |
| 智谱 GLM | OpenAI 兼容 | glm-5v-turbo、glm-4.6v |
| DeepSeek | OpenAI 兼容 | deepseek-v4-flash、deepseek-v4-pro |
| MiniMax | Anthropic 兼容 | MiniMax-M2.5、MiniMax-M1 |
| 小米 MIMO | Anthropic 兼容 | mimo-v2.5、mimo-v2-omni 等 |
| OpenRouter | OpenAI 兼容 | 通过一个 API 访问多个提供商 |
| Ollama | OpenAI 兼容(本地) | 在本地设备上运行模型 |
- iOS: 在 App Store 下载
- iOS(中国大陆): 在 App Store 下载
- Android: 在 Google Play 下载
- Android APK: 也可直接从 GitHub Releases 下载最新 APK。
- 从源码编译: 本地编译安装。
Memex 需要配置一个模型服务来驱动 AI 功能。首次启动后:
- 点击头像 → 模型配置
- 选择 API 类型(Gemini / OpenAI / Claude / DeepSeek / Memex AI / Ollama 等)
- 根据服务商要求填入 API Key 和 Base URL、使用 OAuth 登录,或连接可选的 Memex AI 服务
- 不同 Agent 可以独立配置不同的模型
Memex 可以选择性地把当前城市、区县和街区上下文附加给 Agent 对话。该能力只使用设备 GPS,不使用 IP 定位。
- 打开「个人中心」→「设置」→「定位」。
- 开启「为对话附加当前位置」。
- 选择逆地理编码服务商:
- OpenStreetMap / Nominatim 不需要 API Key。
- 高德地图需要 API Key。
- 如需使用高德地图,请在高德开放平台创建应用,开通 Web 服务 API,复制 Key,并填写到「高德地图 API Key」中。
- 按需选择上下文粒度和位置新鲜度。
本地运行高德逆地理编码 live test 时,请通过环境变量传入 Key,不要提交到仓库:
AMAP_GEOCODING_TEST_KEY=your_key flutter test test/data/services/geocoding_service_test.dartMemex 不只是一个记录应用 — 它是一个让你能够在手机上构建自己 AI Agent 的平台。
Memex 内部工作流使用的 skill host 基础设施也开放给自定义 Agent。你可以把 Agent 接入本地事件,给它配置 skill 和工具,并决定它以内联方式执行,还是作为后台任务运行。
- 🎯 自由创建 Agent — 取个名字,选择宿主类型(Pure 纯净模式),一个新 Agent 即刻就绪。
- ⚡ 事件驱动触发 — 选择 Agent 何时激活:新时间线卡片保存后、卡片评论发布后、卡片 UI 配置更新后,或本地数据变更时。
- 🧠 独立 LLM 配置 — 每个 Agent 可以使用不同的模型。
- 📝 自定义系统提示词 — 通过自定义 System Prompt 塑造 Agent 的人格、专业领域和输出格式。
- 📂 Skill — Memex 采用开放的 Agent Skills 标准。每个 Agent 从
SKILL.md文件读取行为定义 — 一个包含指令、脚本和资源的文件夹,Agent 按需发现和使用。 - 🗂️ 工作目录 — 每个 Agent 能够单独配置工作区。文件读写和目录列表都限定在该目录内。
- 🚀 JavaScript 脚本执行 — Skill 可以运行 JavaScript 代码,包括
fetch()发起 HTTP 请求。调用外部 API、转换数据、抓取网页内容 — 一切都在你的设备上本地运行。 - 🔗 Agent 间依赖链 — 通过
dependsOn定义执行顺序,构建复杂工作流。Agent B 等待 Agent A 完成后再启动。 - 🔄 同步 & 异步执行模式 — 根据工作流需要,选择同步执行(内联阻塞)或异步执行(排队为后台任务)。
- 🔁 自动重试与可配置上限 — 异步 Agent 在失败时自动重试,重试次数可配置。
你创建的每一个 Agent 都是一等公民 — 它接入同一个事件总线,使用同一套工具系统,拥有与内置 Agent 完全相同的能力。唯一的限制是你的想象力。
💡 了解更多 Skill 格式: Agent Skills 是由 Anthropic 最初开发的开放标准,用于封装 Agent 能力。访问该网站了解如何编写 SKILL.md 文件和设计 Agent 行为。
欢迎提交 Bug、产品建议、文档改进、本地化、模型提供商适配和聚焦的小型代码贡献。发起大型 PR 前,请先阅读 CONTRIBUTING.md 并通过 Issue 讨论方向。
Issue 会帮助我们判断社区需求,但不代表功能一定会实现。
- 更完整的视频和文件附件工作流
- 定期刷新洞察 — 周期性重新分析记录,发现新关联
- Agent Soul — 自定义 Agent 的行为风格与个性
- 个性化定制 — 自由选择知识管理方法论(不限于 P.A.R.A)、标签规则、对话角色人设与卡片样式
- 可扩展输入源与触发时机 — 自由扩展输入源与触发条件
- 扩展市场 & 插件架构 — Agent、卡片模板、角色配置的云端市场,一键安装,热重载生效
从源码构建
- Flutter SDK ≥ 3.6.0
- Xcode(iOS 开发)
- Android Studio(Android 开发)
git clone https://github.com/memex-lab/memex.git
cd memex
flutter pub getiOS 额外步骤:
cd ios && pod install && cd ..flutter run --flavor globalDevAndroid 本地开发优先使用 globalDev / cnDev,它们有独立包名和应用数据。global / cn 是 Stable 构建,globalEarly / cnEarly 是 Android Early 构建。
架构
| 层级 | 技术 |
|---|---|
| 框架 | Flutter (Dart ≥ 3.6) |
| 平台 | iOS、Android |
| 数据库 | Drift (SQLite) |
| 状态管理 | Provider + MVVM |
| LLM | Gemini、OpenAI、Claude、Bedrock、Memex AI、Kimi、通义千问、豆包、智谱 GLM、DeepSeek、MiniMax、MIMO、OpenRouter、Ollama |
| Agent 框架 | dart_agent_core |
lib/
├── agent/ # 多 Agent 系统
│ ├── super_agent/ # 对话编排 Agent 与子 Agent
│ ├── skills/ # 时间线卡片、PKM、洞察、日程、记忆技能
│ ├── comment_agent/ # 角色评论
│ ├── companion_agent/ # 1v1 陪伴聊天
│ ├── memory/ # 长期记忆服务
│ ├── pure_skill_host_agent/ # 自定义 Pure skill host
│ └── memex_skill_host_agent/ # 自定义 Memex-aware skill host
├── data/ # 数据仓库与服务
├── db/ # Drift 数据库定义
├── domain/ # 领域模型
├── l10n/ # 国际化(中文/英文)
├── llm_client/ # LLM 客户端抽象层
├── ui/ # 展示层 (MVVM)
└── utils/ # 工具类
用户输入(文字/图片/语音/分享文件)
↓
资源准备(语音转写、文档文本抽取、图片编码、元数据)
↓
Memex Agent 编排
↓
按需使用特定 Skill 或子 Agent:
- timeline_card → Cards YAML + UI 配置
- pkm → P.A.R.A Markdown 知识库
- schedule → 日程状态
- knowledge_insight → 跨记录洞察卡片
↓
后台任务:
- 角色评论
- 长期记忆整理
- 事件驱动的自定义 Agent
↓
本地存储(文件系统 + SQLite)
欢迎贡献代码。请先开 Issue 讨论你想要的改动。
- Fork 本仓库
- 创建特性分支 (
git checkout -b feature/amazing-feature) - 提交更改 (
git commit -m 'Add amazing feature') - 推送分支 (
git push origin feature/amazing-feature) - 发起 Pull Request
本项目基于 GPL-3.0 许可证开源 — 详见 LICENSE 文件。




