Yanxin Lu
35f048dd83
calendar: add recurring events, event management, and safety rules
...
Add --rrule flag to send with DTSTART/BYDAY validation (RFC 5545).
Add event list (via khal) and event delete (safe single-event removal).
Document safety rules from 2026-03-25 incident: always dry-run recurring
events, never rm .ics files, space out SMTP sends.
2026-03-25 09:32:22 -07:00
Yanxin Lu
810a9923f9
calendar: drop unnecessary --no-interactive flag from todo edit
...
todoman skips interactive mode automatically when changes are provided.
2026-03-24 21:58:52 -07:00
Yanxin Lu
734790a599
calendar: add todo edit command
...
Allow editing todo fields (due date, priority) in place via todoman,
instead of requiring delete + recreate. Updates all docs for consistency.
2026-03-24 21:56:23 -07:00
Yanxin Lu
b2ff8effd4
calendar: fix stale docs and remove unnecessary METHOD from todo add
...
- Remove duplicate email rule in TOOLS.md
- Add todo mutations to sync description in TOOLS.md
- Remove METHOD:REQUEST from todo add ICS (no longer emailed)
- Update todo check description in SKILL.md
2026-03-23 14:48:05 -07:00
Yanxin Lu
ab9f7da592
calendar: remove self-notification emails (CalDAV sync replaces them)
...
Remove three redundant email flows since all devices sync via CalDAV:
- Auto-adding mail@luyx.org as attendee on outgoing invites
- Forwarding invites to mail@luyx.org on accept/tentative
- Emailing todos to mail@luyx.org on todo add
2026-03-23 14:27:28 -07:00
Yanxin Lu
13986aa3ab
cleanup: remove old reminder system and unused crontab files
...
Todo management now lives entirely in skills/calendar/ via VTODO + todoman.
2026-03-23 09:53:49 -07:00
Yanxin Lu
31efcffb19
calendar: fix completed field name from todoman --porcelain output
2026-03-22 16:09:45 -07:00
Yanxin Lu
4ef7b1e05b
calendar: use todoman --yes flag for delete instead of piping stdin
2026-03-22 16:03:12 -07:00
Yanxin Lu
912bcf53bd
calendar: fix _days_until to handle Unix timestamps from todoman --porcelain
2026-03-22 15:50:43 -07:00
Yanxin Lu
cf8158c7cc
calendar: update TESTING.md with todoman verification steps
2026-03-22 15:43:18 -07:00
Yanxin Lu
383b33cc30
calendar: use todoman for VTODO list/complete/delete/check
...
Replaces custom .ics parsing with todoman CLI (--porcelain for JSON).
todo add still uses icalendar directly (needs ICS creation + email).
Updates MIGRATION.md with todoman install/config instructions.
2026-03-22 15:00:20 -07:00
Yanxin Lu
1750a0d921
calendar: add migration guide from reminder_check.py to VTODO
2026-03-22 14:39:59 -07:00
Yanxin Lu
44fbbea29b
VTODO skill
2026-03-22 14:10:54 -07:00
Yanxin Lu
ceb7af543b
VTODO
2026-03-22 14:10:41 -07:00
6bea16d391
Daily backup 2026-03-19 07:00 UTC
2026-03-19 00:00:47 -07:00
Yanxin Lu
4e3c6acab6
calendar-invite: strip METHOD from ICS before CalDAV storage
...
CalDAV servers (Migadu) reject ICS files with METHOD:REQUEST/REPLY
as it's an iTIP email concept, not a storage property. Strip it
when saving to local calendar, for both send and reply flows.
2026-03-18 14:54:33 -07:00
Yanxin Lu
b8ba4adec5
calendar-invite: add VALARM reminder, fix terminology, remove dead code
...
- Add 1-day reminder (VALARM) to all sent invites
- Fix datetime.utcnow() deprecation → datetime.now(timezone.utc)
- Rename "message ID" → "envelope ID" in SKILL.md for consistency
- Remove unused _himalaya() and _himalaya_with_account() helpers
2026-03-18 14:44:08 -07:00
Yanxin Lu
765825a8d1
using MIME instead of MML
2026-03-18 14:36:29 -07:00
Yanxin Lu
de6528335c
calendar invite
2026-03-18 13:36:25 -07:00
edf8ebe9a7
auto: 2026-02-20 - update email processor, add ollama-local skill
2026-02-20 00:00:15 -08:00
0b57216794
sync: update heartbeat, logs, add agent-browser skill, remove gitea skill
2026-02-19 21:51:02 -08:00
e8389b8772
add agent workspace
2026-02-18 22:39:35 -08:00