Was macht alfred-os?
Lokales Agenten-Betriebssystem für Einzelentwickler: launchd-verwaltete Claude Code/Codex-Flotten, Git-Worktree-Isolation, Slack-Berichte, Sicherheitsbarrieren und reproduzierbares Setup.
Überblick
Alfred-OS verwaltet mehrere Instanzen von Claude Code und Codex als persistente, launchd-gesteuerte Dienste auf deiner lokalen Maschine. Jeder Agent wird in einem eigenen Git-Worktree isoliert, sodass keine Konflikte zwischen verschiedenen Projekten oder Aufgaben entstehen. Du kannst Agents über Slack-Benachrichtigungen reporten lassen und mit Sicherheitsbarrieren (safety gates) vor gefährlichen Aktionen schützen. Das gesamte Setup ist reproduzierbar über eine einzige YAML-Konfigurationsdatei.
Installation
-
Klone das Repository:
git clone https://github.com/luminik-io/alfred-os.git cd alfred-os -
Führe das Setup-Skript aus:
./scripts/setup.sh -
Konfiguriere deine Agenten in
config.yaml:agents: - name: "codex-agent-1" platform: "codex" project: "/pfad/zu/projekt" schedule: "0 9 * * 1-5" # Mo-Fr um 9 Uhr slack_channel: "#agenten-logs" -
Starte den Alfred-OS-Dienst:
launchctl load ~/Library/LaunchAgents/io.luminik.alfred-os.plist
Verwendung
Agenten verwalten
- Agentenliste anzeigen:
alfred list - Agenten starten:
alfred start <agentenname> - Agenten stoppen:
alfred stop <agentenname> - Agentenlogs anzeigen:
alfred logs <agentenname>
Git-Worktree-Isolation
Jeder Agent erhält einen eigenen Worktree basierend auf dem konfigurierten Projekt. Dies verhindert Konflikte und ermöglicht paralleles Arbeiten.
# Worktree-Status prüfen
alfred worktree-status <agentenname>
Slack-Berichte
Richte Slack-Integration ein, um Benachrichtigungen über Agentenaktivitäten zu erhalten (z. B. gestartet, beendet, Fehler). Konfiguriere dies in config.yaml unter slack:.
Sicherheitsbarrieren
Definiere Trigger, die gefährliche Aktionen blockieren, z. B. das Löschen von Dateien oder das Ändern von Berechtigungen. Diese werden in safety_gates.yaml definiert.
Konfiguration
Die Hauptkonfiguration erfolgt über config.yaml. Beispiel:
slack:
token: "xoxb-dein-token"
default_channel: "#agenten-logs"
agents:
- name: "claude-code-agent"
platform: "claude-code"
project: "/Users/deinuser/projekte/app"
schedule: "0 8 * * *" # Täglich um 8 Uhr
safety_gates:
- rule: "block_delete"
enabled: true
Abhängigkeiten
- macOS (für launchd)
- Git (für Worktrees)
- Claude Code oder Codex CLI
- curl (für Slack-API-Aufrufe)
Lizenz
MIT