LaunchD Services

Background services that keep the AI platform synchronized
Published

April 17, 2026

All LaunchAgent plists were rewritten on 2026-04-17 to point directly at ~/ai-mac-studio/… paths. No 2026project/ symlinks are used any longer.

Currently Active Services

com.ai-korrespondenz.sync

Status: Active (loaded)

Property Value
Label com.ai-korrespondenz.sync
Schedule Every 60 minutes
Run at Load Yes
Keep Alive No
Priority Low (background)

Purpose: Syncs all correspondence sources (Gmail, Thunderbird, phone calls, WhatsApp, Notes, Voice Memos) to the local index.

Script: /Users/friedrichstr/Scripts/korrespondenz_sync.sh

Logs:

  • stdout: ~/.ai-korrespondenz/logs/sync.log
  • stderr: ~/.ai-korrespondenz/logs/sync-error.log

Installation (canonical path):

ls ~/ai-mac-studio/agents/communication/ai-korrespondenz/scripts/

Installation:

cp ~/ai-mac-studio/agents/communication/ai-korrespondenz/scripts/com.ai-korrespondenz.sync.plist ~/Library/LaunchAgents/
launchctl load ~/Library/LaunchAgents/com.ai-korrespondenz.sync.plist

com.ai-apple.watchdog

Status: Active (loaded, but exit code 2 - needs attention)

Property Value
Label com.ai-apple.watchdog
Schedule Continuous (daemon)
Run at Load Yes
Keep Alive Yes (restarts on crash)

Purpose: Watches for changes in Apple ecosystem (Notes, Reminders, Voice Memos) and triggers processing.

Script: ~/ai-mac-studio/agents/apple/ai-apple/src/ai_apple/watchdog/run_unified_watchdog.py

Logs:

  • Main log: ~/ai-apple-watchdog.log
  • stdout: ~/ai-apple-watchdog-stdout.log
  • stderr: ~/ai-apple-watchdog-stderr.log

Note: Plist points directly to ~/ai-mac-studio/ai-agents/apple/ai-apple/ (no 2026project symlink).


com.ai-voicememo.sync (NEW - Not Yet Installed)

Status: Defined but not installed

Property Value
Label com.ai-voicememo.sync
Schedule Hourly, 8:00-21:00 only
Run at Load No
Keep Alive No

Purpose: Syncs voice memos from Apple Voice Memos to the central archive on /Volumes/PDAI-1/2026projectdata/ai-voicememo/.

Script: ~/ai-mac-studio/agents/management/ai-voicememo/scripts/sync.sh

Logs: ai-voicememo/logs/

Installation:

cd ~/ai-mac-studio/agents/management/ai-voicememo/scripts
./install-launchagent.sh

Available but Not Active

com.info-manager.updater

Location: info-manager/application/com.info-manager.updater.plist Purpose: Updates info-manager data Status: Not installed

com.info-manager.server

Location: info-manager/application/com.info-manager.server.plist Purpose: Runs info-manager server Status: Not installed

com.voice-memo-watchdog

Location: ai-apple/src/ai_apple/application/com.voice-memo-watchdog.plist Purpose: Watches voice memo folder for changes Status: Superseded by ai-voicememo.sync


Service Management Commands

List all AI services

launchctl list | grep -E "ai-|korrespondenz|voicememo"

Check service status

launchctl list com.ai-korrespondenz.sync

Start a service manually

launchctl start com.ai-korrespondenz.sync

Stop a service

launchctl stop com.ai-korrespondenz.sync

Reload a service (after plist changes)

launchctl unload ~/Library/LaunchAgents/com.ai-korrespondenz.sync.plist
launchctl load ~/Library/LaunchAgents/com.ai-korrespondenz.sync.plist

View logs

# Korrespondenz sync
tail -f ~/.ai-korrespondenz/logs/sync.log

# Apple watchdog
tail -f ~/ai-apple-watchdog.log

# Voicememo sync (when installed)
tail -f ~/ai-mac-studio/agents/management/ai-voicememo/logs/sync-*.log

Schedule Overview

Time Services Running
00:00-07:59 ai-korrespondenz (hourly), ai-apple.watchdog (continuous)
08:00-20:59 ai-korrespondenz (hourly), ai-apple.watchdog (continuous), ai-voicememo (hourly)
21:00-23:59 ai-korrespondenz (hourly), ai-apple.watchdog (continuous)

Troubleshooting

Service not running

# Check if loaded
launchctl list | grep service-name

# Check logs for errors
cat ~/Library/Logs/com.service-name.log

Service keeps restarting

# Check exit code
launchctl list com.service-name
# Exit code 0 = success, non-zero = error

# View recent logs
tail -100 /path/to/service.log

Permission issues

Ensure scripts are executable:

chmod +x /path/to/script.sh

Environment issues

LaunchD runs with minimal environment. Ensure PATH includes required binaries:

<key>EnvironmentVariables</key>
<dict>
    <key>PATH</key>
    <string>/usr/local/bin:/usr/bin:/bin:/opt/homebrew/bin</string>
</dict>

Adding New Services

  1. Create plist in package’s scripts/ folder
  2. Create corresponding shell script
  3. Add installation script
  4. Document in this file
  5. Test manually before enabling

Template plist location: ~/ai-mac-studio/platform/templates/launchd-template.plist