Edi Life OS – 支持 AI 的 MCP 服务器的自托管个人仪表板

TL;DR

Edi Life OS 提供了一个用于管理习惯、目标、财务、看板和专注力的单一自托管仪表板,并附带一个可选的 Model Context Protocol (MCP) 服务器,允许 Claude 等 AI 助手通过受令牌保护的 HTTP API 与您的数据进行交互。


一个仪表板,十个工作区——一切尽在掌握

Edi Life OS 将大多数人使用的碎片化工具(待办事项列表、习惯追踪器、预算电子表格、番茄钟、笔记)整合为十个共享单一登录和数据库的协作工作区:

工作区 核心功能
概览 实时生产力评分、习惯趋势、目标进度、财务状况、天气预报
成长 与长期和 SMART 目标挂钩的六个生活维度,包含周/月/季度回顾
专注 番茄钟、休息时间安排、专注背景音、会话历史记录
财务 以 Toman 为单位的收入、支出、预算、债务/信贷,分类账视图
习惯 每日习惯清单、连续打卡追踪、7 天一致性图表
看板 拖放式卡片、标签、优先级、截止日期、清单、评论、附件
日历 卡片截止日期和财务到期日的统一视图
目标 带有衡量标准、截止日期、优先级的 SMART 目标,可选习惯驱动的进度
记事本 支持实时预览和导出的 Markdown 笔记
笔记 带有颜色、字体和连接功能的便签

所有数据均存储在您自己的 MySQL 数据库中;没有第三方 SaaS,没有追踪,且您保留完全的所有权。


支持 AI 的 MCP 服务器扩展了仪表板的覆盖范围

可选的 MCP 服务器(需要 Node.js 22.9+)公开了 26 个工具,这些工具直接映射到仪表板操作。AI 客户端可以使用自然语言发出指令,例如:

"Show me my LifeOS dashboard."

"Create a SMART goal called Build a home studio, due in three months, and add Buy acoustic panels as a task."

"Mark Reading complete for today."

"Log a 450,000 Toman food expense and show my balance."

MCP 服务器仅通过受 bearer 令牌保护的 HTTP API 与 PHP 应用程序通信;它从不访问原始数据库或凭据。这种设计在保持 AI 集成轻量化的同时,保护了数据隐私。


部署选项 – Docker、共享主机或本地 PHP

Edi Life OS 可以通过三种简单的方式安装:

  1. Docker(推荐) – 克隆仓库,将 .env.example 复制到 .env,然后运行 docker compose up -d。每个组件(MySQL、应用程序、附件)都位于其自己的 Docker 卷中,从而可以通过 docker compose up -d --build 实现轻松升级。
  2. 共享主机 – 下载最新的 zip 发行版,解压到 public_html/,使用 MySQL 凭据配置 config.php,并按照 Apache 重写的部署指南进行操作。
  3. 本地 PHP 服务器 – 使用 PHP 8.1+ (pdo_mysql, mbstring) 和 MySQL 8+ (或 MariaDB 10.4+),运行 php -S localhost:8000 -t public_html server.php。数据库架构将在首次启动时创建。

这三种方法都将凭据排除在版本控制之外(.env 和 config.php 已被 git 忽略)。


HTTP API – 对每个领域的程序化访问

私有的 /api/v1 端点镜像了 UI 功能。身份验证使用在 config.php (api_token) 中设置的随机 256 位 bearer 令牌,或通过 LIFEOS_API_TOKEN 环境变量设置。curl 请求示例:

curl -H "Authorization: Bearer $LIFEOS_API_TOKEN" https://your-host/api/v1/dashboard

该 API 支持对仪表板、目标、任务、习惯、财务和便签进行 CRUD 操作,并具有基于事务的写入和行级锁定功能,以避免竞态条件。


安全模型 – 单用户所有者焦点

Edi Life OS 假设为单用户。API 令牌授予完全的读/写访问权限;没有细粒度的作用域或内置的速率限制。部署者应强制执行 HTTPS,将令牌排除在 URL 和日志之外,并依靠主机层防火墙进行请求限流。秘密笔记默认对 API 读取隐藏,但不会在静态存储时加密。


来自 Hacker News 的社区反馈

该项目引起了适度的讨论(15 条评论,39 个赞)。主要观点:

@hmyn 质疑为什么这个解决方案不是一个 Notion 模板,强调了自定义自托管堆栈与灵活的 SaaS 工作区之间的权衡。 — @hmyn

@ceejayoz 警告称代码表现出“设计反模式”,并建议使用 Claude 对其进行批评,这表明代码库可能受益于现代架构审查。 — @ceejayoz

@GaiusCoffee 称赞了这个想法,但认为执行“还有很多不足之处”,呼应了对完善度和可用性的担忧。 — @GaiusCoffee

@onaclov2000 提到为个人健康数据构建了一个类似的系统,建议该平台的可扩展性可以服务于利基领域。 — @onaclov2000

总的来说,社区认为这个概念很扎实,但期待进一步的改进,或许需要更现代的代码结构。


何时考虑使用 Edi Life OS

  • 您想要一个单一的、自托管的地方来存放所有个人生产力数据。
  • 您重视数据所有权,并且乐于管理 MySQL 数据库。
  • 您计划集成一个可以通过 MCP 读取/写入仪表板的AI 助手。
  • 您更喜欢以 PHP 为中心的堆栈,而不需要繁重的 JavaScript 框架或构建管道。

如果其中任何一点符合您的工作流程,Edi Life OS 提供了一个现成的、MIT 许可的基础,您可以对其进行分叉和扩展。


入门指南

# 克隆并使用 Docker 启动(最快路径)
git clone https://github.com/edrisranjbar/lifeos.git && cd lifeos
cp .env.example .env   # 编辑凭据
docker compose up -d

访问 http://localhost:8080,创建您的第一个帐户,并探索十个工作区。启用 MCP 服务器 (cd mcp && npm ci && cp .env.example .env && npm start) 以连接 Claude 或任何兼容 MCP 的客户端。


许可证

Edi Life OS 在 MIT 许可证下发布(© 2026 Edris Ranjbar)。您可以自由使用、修改和重新分发它。

Sources

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目