daymon
让你的 Claude 订阅 24 小时自动工作的开源工具,定时调度 + 持久记忆 + 文件监控,让
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
让你的 Claude 订阅 24 小时自动工作的开源工具,定时调度 + 持久记忆 + 文件监控,让
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。

图1:Daymon 运行界面 Banner
清晨 8 点,你喝着咖啡打开电脑,发现 Claude 已经在凌晨 3 点帮你写完了 API 文档,还顺便 Review 了三个 Pull Request。这不是科幻——这是 Daymon 正在发生的故事。
Daymon 是一个开源的 AI 自动驾驶框架,它让你已有的 Claude 订阅(Pro/Max/Team)变成一个 24 小时不眠不休的虚拟员工。不用 API Key,不用付 Token 费用,不用把数据交给任何云服务。它跑在你自己的 Mac、Windows 或 Linux 机器上,完全本地化。
这是一个把"玩具 AI 助手"变成"真实团队成员"的工具。对于已经订阅了 Claude 的开发者来说,Daymon 可能是 2024-2025 年最具性价比的生产力工具之一。
Claude Code 发布之后,开发者们很快发现了一个痛点:Claude Code 本身是个出色的 CLI 工具,但它本质上是个"会话式"的助手——你打开终端,它工作;你关闭终端,它就消失了。它无法在后台运行,无法定时执行任务,无法在你离开时继续工作。
daymonio 团队(一个独立开发者或小团队)敏锐地捕捉到了这个需求。他们在 GitHub 的描述中写道:"Daymon puts your favorite AI to work 24/7"——让 AI 真正投入工作,而不只是"问答玩具"。这个项目的核心哲学是:利用你已经付费的东西(Claude 订阅),让它像员工一样持续工作。
Daymon 的架构设计非常精妙,体现了"桌面 AI 助手"这一品类的典型模式。
Daymon 由三个核心层组成:
1. Electron 主应用层(src/main/)
主进程负责管理 Claude Desktop/Claude Code 的生命周期。它通过 IPC(进程间通信)与 Claude Desktop 进行交互,处理通知(系统托盘通知)、自动更新(electron-updater)、以及与应用托盘(tray.ts)的交互。这是一个标准的 Electron 应用架构,主进程持有系统级权限。
2. MCP Server 层(src/mcp/)
这是 Daymon 最核心的创新点。它使用 Model Context Protocol (MCP) SDK(@modelcontextprotocol/sdk)实现了一个标准化的 MCP Server。这意味着:
StdioServerTransport)通信,这是 MCP 的标准本地通信方式3. 数据持久化层(src/shared/)
Daymon 使用 SQLite(better-sqlite3) 作为主数据库,并通过 sqlite-vec 插件支持向量检索。这意味着:
@huggingface/transformers 在本地运行嵌入模型,实现记忆的语义索引,无需调用外部 APIDaymon 通过 MCP 暴露了 5 大类工具,这使得它成为一个"AI 记忆与任务管理平台":
Memory(记忆管理)
memory_add_entity:向记忆中新增实体(事实、事件、概念)memory_search:在记忆中搜索相关实体memory_learn:让 Claude 从对话中学习并存储信息Scheduler(任务调度)
scheduler_cron:基于 Cron 表达式定时触发任务scheduler_once:一次性定时任务scheduler_list:列出所有调度任务node-cron 实现 Cron 调度Watcher(文件监控)
watcher_add_path:监控指定目录/文件的变更watcher_remove_path:停止监控watcher_list:列出当前监控路径chokidar(跨平台文件监控库)实现Workers(任务执行)
workers_list:列出当前运行/等待的 Workerworkers_run:手动触发一个 Worker 执行workers_cancel:取消正在运行的任务Settings(设置管理)
Daymon 的记忆系统(src/shared/schema.ts)设计得相当完善,采用"实体-观察-关系"三元组模型:
CREATE TABLE entities (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
type TEXT NOT NULL DEFAULT 'fact',
category TEXT,
embedded_at DATETIME
);
CREATE TABLE observations (
id INTEGER PRIMARY KEY,
entity_id INTEGER REFERENCES entities(id),
content TEXT NOT NULL,
source TEXT,
created_at DATETIME
);
CREATE TABLE relations (
id INTEGER PRIMARY KEY,
from_entity_id INTEGER REFERENCES entities(id),
relation_type TEXT,
to_entity_id INTEGER REFERENCES entities(id),
metadata TEXT
);
这是一个典型的知识图谱式记忆模型,支持关系查询。同时通过 sqlite-vec 支持向量相似度搜索,可以实现"语义记忆检索"——比如搜索"上周我设置的那个定时任务",系统可以理解语义而不仅仅是关键词匹配。
src/shared/auto-nudge.ts 实现了一个有趣的"自动 Nudge"机制。这个机制定期(可能是每小时)检查任务执行情况,如果发现某些任务长时间没有完成,会自动触发 Claude Code 执行相关任务。这解决了"设置了就忘记"的常见问题,让任务调度真正变成自动化执行。
src/shared/learned-context.ts 中的 shouldDistill 和 distillLearnedContext 函数实现了"记忆蒸馏"功能。当记忆实体过多时,系统会自动提炼压缩信息,保持记忆的质量和可用性,防止数据库无限膨胀。这对于长期使用、积累大量记忆的场景尤为重要。
Daymon 的部署体验非常接地气。它本质上是一个桌面应用,通过 electron-builder 打包成 macOS App/Windows EXE/Linux AppImage。
安装方式:
brew install --cask daymon 一键安装(项目自带 Casks/daymon.rb Homebrew Cask 配置).exe 安装包使用前提:
无服务器部署:Daymon 没有提供 Dockerfile,无法在 Docker 容器或服务器上运行。它专为个人桌面使用场景设计。
Daymon 还支持作为 MCP Server 被其他工具集成。配置方式如下:
{
"mcpServers": {
"daymon": {
"command": "node",
"args": ["<path-to-daymon>/out/mcp/server.js"],
"env": {
"DAYMON_DB_PATH": "<path-to-daymon-data>/daymon.db",
"DAYMON_SOURCE": "claude-code"
}
}
}
}
这意味着你可以在 Cursor、Windsurf 等 MCP Client 中调用 Daymon 的记忆和调度工具,实现更强大的 AI 辅助开发体验。
Daymon 代表了一种新兴的 AI 工具方向:不是开发新的 AI 模型,而是让现有的 AI 订阅变得更有价值。在 Claude Pro 每月 $20、Claude Max 每月 $200 的定价下,用户已经为 AI 付费了,但通常只在工作时间使用它。Daymon 将这个利用率从每天 2-4 小时提升到 24 小时。
它的增长曲线值得关注:372 个 GitHub Stars,在没有刻意营销的情况下,主要靠 Claude 开发者社区的口碑传播。这个模式验证了一个假设:AI 工具的价值不在于"能回答问题",而在于"能自动完成任务"。
第一步:安装
# macOS
brew install --cask daymon
# 或下载 release 包
# https://github.com/daymonio/daymon/releases
第二步:配置 Claude 确保系统上已安装 Claude Desktop 或 Claude Code,并已登录账号。
第三步:启动 Daymon 安装后,Daymon 会在菜单栏(macOS)/系统托盘(Windows)创建图标。点击图标即可打开主界面。
第四步:设置定时任务 在 Daymon 界面中,使用 Cron 表达式设置定时任务:
# 设置每日早晨 9 点执行
# Cron: 0 9 * * 1-5 (工作日早9点)
# 或每4小时: 0 */4 * * *
第五步:添加记忆 让 Claude 记住项目背景、代码规范、团队约定,Daymon 会自动索引并在后续任务中引用。

图2:Daymon 应用图标
项目基本信息