Skip to content

Daemons

Autonomous AI agents running locally on macOS — no cloud, no frameworks, no orchestration.

Each daemon does one thing, runs on schedule via LaunchAgent, and writes to an Obsidian vault. A preflight validator (brain-pulse) checks health and circuit breakers before they run.

This is not a multi-agent system. These are independent autonomous daemons with minimal coordination.

DaemonRoleSchedule
pulsepulsePreflight validator — health check, circuit breaker, sequencing06:55 daily
m365m365Collects Outlook, Teams, Calendar metadataVia pulse
clickupclickupCollects tasks, projects, activityVia pulse
gworkspacegworkspaceCollects Gmail, Google CalendarVia pulse
secretarysecretaryGenerates daily briefing from collector windowsVia pulse (after collectors)
auditorauditorWeekly self-learning review across all daemonsSunday 21:30
curatorcuratorProcesses Claude Code sessions into vault notes12:45 + 22:45
cleanupcleanupCache management, disk space recovery12:00 + 22:00
nagnagReminders, accountability, overdue trackingContinuous
brain-pulse (06:55)
├── health check (LiteLLM, OpenClaw, bins)
├── circuit breaker (max 3 consecutive failures)
├── collectors (parallel)
│ ├── agent-m365
│ ├── agent-clickup
│ └── agent-gworkspace
└── synthesizers (sequential)
└── agent-secretary → daily briefing

Each daemon is a bash script (~100-200 lines) in ~/.local/bin/. Each writes a daily “window” (markdown snapshot) to the vault. The secretary reads all windows and generates a consolidated briefing.