daytrace

agent
Guvenlik Denetimi
Basarisiz
Health Uyari
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 5 GitHub stars
Code Basarisiz
  • child_process — Shell command execution capability in electron/local-server.js
  • process.env — Environment variable access in electron/local-server.js
  • fs module — File system access in electron/local-server.js
  • network request — Outbound network request in electron/local-server.js
  • fs.rmSync — Destructive file system operation in electron/main.js
  • fs module — File system access in electron/main.js
  • network request — Outbound network request in electron/main.js
  • child_process — Shell command execution capability in electron/scripts/build-server.js
  • spawnSync — Synchronous process spawning in electron/scripts/build-server.js
  • fs.rmSync — Destructive file system operation in electron/scripts/build-server.js
  • process.env — Environment variable access in electron/scripts/build-server.js
  • fs module — File system access in electron/scripts/build-server.js
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

A local-first AI desktop planning assistant that turns goals into executable time.

README.md

日迹 Daytrace

不只是记录日程,而是理解你的目标、安排你的时间,并在计划变化后陪你继续走下去。

Daytrace 是一款面向学生与知识工作者的本地优先 AI 桌面时间规划助手。

当用户说“我三天后有产品面试”“12 月底要考研”“今晚想跑步”,Daytrace 不会只创建一个日历事件。它会结合已有日程、长期目标、个人节奏与执行反馈,给出真正可执行的安排;对于涉及取舍的复杂规划,会先生成方案并在写入前进行冲突校验。

当前为 macOS(Apple Silicon)版。AI 功能使用用户自行配置的 OpenAI 兼容模型服务,日程与个人数据保存在本机。

Daytrace 主看板:连接近期日程、长期计划与 AI 助理

在同一个桌面看板中查看周历、今日安排、长期计划进度与 AI 对话。

为什么做 Daytrace

许多日程 App 依赖用户手动填写:任务是什么、几点开始、持续多久、是否提醒,都需要自己决定。更难的是,计划往往会被临时会议、拖延或任务延期打断,传统日历只能记录变化,无法帮助用户重新安排,使用户在计划被打乱时无力完成。

Daytrace 想解决的不是“如何记下一件事”,而是:

  • 面对模糊目标,如何拆成可以开始执行的下一步;
  • 面对真实日程,如何找到合适的时间;
  • 面对临时变化和未完成任务,如何持续调整计划;
  • 面对长期目标,如何从阶段路线逐步落到每周、每天。

Daytrace 的三个核心亮点

1. 自然交互:像和桌面小精灵聊天一样记录

用户无需填写复杂表单,可以直接表达:

“今天下午三点有面试,提前半小时提醒我。”

Daytrace 会识别日程、时间和提醒要求,并记录到日历中。若用户只说“今晚想跑步”,系统会先读取当天空闲时间,生成合适的安排建议,而不是随意占用时间。

小精灵规划:通过对话理解今天的安排

用户只需表达目标,小精灵会结合已有日程给出当天的安排。

2. 动态规划:从“目标”到“时间”,而不只是从“输入”到“日历”

对于考研、求职、面试准备和项目截止这类任务,Daytrace 会先进行必要摸底:截止时间、当前进度、可投入时间、主要难点与已有安排。

随后,它会先给出阶段路线,再逐步拆分为当前阶段任务、近期专注块和日历安排。例如,考研不会被一次排满数月日历,而是先确认基础、强化、真题与冲刺的阶段目标,再按真实执行情况推进,打造成能够陪伴用户前进的助理。

3. 执行闭环:让计划在执行中继续有效

Daytrace 不把计划当作一次性输出:

目标与日程输入
        ↓
AI 理解任务、读取空闲时间与个人节奏
        ↓
生成近期可执行安排
        ↓
提醒执行、每日复盘与进度更新
        ↓
发现冲突、延期或截止风险后动态调整

用户可以通过“已完成、完成一部分、今天没做”等反馈告诉系统实际进度,系统据此更新长期计划并提示截止风险。

每日复盘:把执行反馈带回后续计划

复盘只聚焦专注块与关联目标,让真实执行情况重新进入规划。

它和普通日程 App 有什么不同

普通日历 / Todo 工具 Daytrace
用户自己拆任务、找时间、排优先级 AI 结合目标、日程与偏好生成安排
日程是孤立记录 专注块关联长期目标、阶段与子任务
临时变化后需要手动调整 根据冲突、进度和截止风险动态规划
计划写入后少有后续跟进 通过提醒与复盘持续维护执行节奏
无法记录用户偏好 从使用与反馈中逐步理解用户,并允许控制偏好

核心能力

  • Daily Routine:通过自然语言查询、创建、修改和删除日程。
  • 短期冲刺规划:围绕面试、项目截止等近期目标安排无冲突专注块。
  • 长期目标管理:建立目标、阶段、子任务与关联日程,展示进度和截止风险。
  • 规划可靠性:明确指令可直接执行;复杂规划在写入前会进行冲突校验,避免覆盖已有安排。
  • 动态重排:面对新增冲突、未完成任务或个人节奏变化,重新安排剩余计划。
  • 提醒与每日复盘:小精灵提醒、专注块完成反馈、风险提示与计划更新。
  • 记忆偏好:逐步学习用户节奏,但用户始终可以查看、确认、修改、暂停或删除偏好。

本地优先与用户控制

  • 日程、会话、长期计划、偏好和复盘数据均保存在本机 SQLite。
  • 用户自行配置 OpenAI 兼容模型服务。
  • API Key 由 macOS 系统钥匙串加密保存,不写入数据库、日志、仓库或安装包。
  • AI 负责理解与提出方案;本地程序负责冲突校验、提醒和可靠写入。
  • 即使 AI 服务不可用,用户仍可查看本地日程并手动创建日程。

技术实现

Electron 桌面端
  ├─ 主看板 · 悬浮小精灵 · 快速对话
  ▼
本机 Flask 服务
  ├─ Function Calling Agent Loop
  ├─ 日程 / 长期计划 / 复盘 / 记忆领域服务
  └─ 随机本地端口与访问令牌
  ├───────────────────────┬───────────────────────┐
  ▼                       ▼                       ▼
SQLite                 macOS 钥匙串        OpenAI 兼容模型 API
本地用户数据            加密保存 API Key       用户自行配置

技术栈:Electron、Flask、SQLite、PyInstaller、OpenAI-compatible Function Calling。

验证方式

项目围绕日常记录、提醒、冲突处理、长期目标拆解、复盘重排和用户确认建立了黄金案例与自动化测试,验证 Agent 是否走对工具和数据链路,而不只检查回复文案是否“看起来合理”。

本地运行

环境:macOS、Python 3.10+、Node.js 18+。

git clone https://github.com/wl18705440898-cyber/daytrace.git
cd daytrace

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

cd electron
npm ci
npm start

Electron 会自动启动本机 Flask 服务,正常使用时不需要手动运行 server.py。首次启动后,在右上角 填写模型配置;在 ◉ 我的节奏 中设置可安排时段、默认提醒和每日复盘时间。

自动化验收

PYTHONPYCACHEPREFIX=/private/tmp/daytrace-pycache \
  ./venv/bin/python -m unittest discover -s tests -v

测试使用临时 SQLite 与模拟模型调用,不读取个人日程,也不消耗 API 额度。

构建 macOS DMG

cd electron
npm run dist

产物位于 electron/dist/。构建不会包含 API Key 或本地数据库。当前未签名 DMG 仅用于内测;面向普通用户公开分发前,需要完成 Apple Developer 签名与公证。

深入了解

License

MIT

Yorumlar (0)

Sonuc bulunamadi