Eine App, die AI-Agenten auch bei geschlossenem MacBook im Clamshell-Modus weiterlaufen lässt — Electronic Clam
(github.com/jadhvank)Hallo. Ich möchte eine macOS-Menüleisten-App vorstellen, die dafür sorgt, dass AI-Agenten auch dann nicht anhalten und weiterlaufen, wenn das MacBook geschlossen wird (Clamshell-Modus).
Kürzlich gab es Meldungen über „Entwickler, die wegen des AI-Coding-Booms ihre Laptops nicht zuklappen können und damit unterwegs sind“ – das sogenannte
Meme vom „mit offenem Laptop herumlaufen“.
(https://www.donga.com/news/Economy/article/all/20260513/133913987/3)
Das traf genau auf mich zu. Es gibt Situationen, in denen ich einem Agenten unterwegs noch Aufgaben überlasse und dann meinen Platz verlassen muss,
aber sobald ich das MacBook zuklappe, schläft es ein und die Arbeit wird unterbrochen.
In dem Artikel hieß es auch: „Reicht es nicht, einfach caffeinate zu verwenden?“
In der Praxis schläft das Gerät aber im Clamshell-Modus trotzdem ein, wenn man den Deckel ohne externen Monitor schließt – selbst mit caffeinate.
Und es einfach dauerhaft wach zu halten, ist auch keine gute Lösung: Dann sieht man nur, ob noch ein Prozess läuft, und selbst wenn die Arbeit längst beendet ist, bleibt das Gerät weiter wach, was Hitzeentwicklung und Entladung verursacht. Die bisherigen „Kaffee-artigen(?)“ Apps konnten das entweder nicht verhindern oder fühlten sich selbst dann noch unvollständig an.
Also habe ich es selbst gebaut.
- Nicht in den Ruhezustand gehen, auch wenn der Deckel geschlossen ist — ein einziger Schalter. Keine Terminal-Befehle, keine erneute Authentifizierung.
- Schutz vor Überhitzung und Entladung — Akku und Temperatur werden überwacht; überschreiten sie die eingestellten Werte, wird die Arbeit pausiert, damit das MacBook im Rucksack weder überhitzt noch leerläuft. Wenn der Deckel ohne externen Monitor geschlossen ist, gelten strengere Grenzwerte; im Desktop-Modus sind sie lockerer – die Kriterien ändern sich je nach Zustand.
- Erkennt Arbeit statt nur Prozesse — Wenn die Agentenarbeit längst beendet ist, das Gerät aber weiter im Clamshell-Modus bleibt, verschwendet das Akku und erzeugt Wärme. Es wird erkannt, ob tatsächlich noch gearbeitet wird; ist die Aufgabe abgeschlossen, wechselt die App automatisch in den Idle-Zustand (Strict). Es gibt auch einen Lax-Modus, der das System wach hält, solange der Prozess noch lebt.
- Erkennt standardmäßig 5 Agenten — Claude Code · Codex · Cursor · opencode · Antigravity.
Andere Agenten lassen sich per Glob-Muster oder mit einer einzelnen Deklarationsdatei selbst hinzufügen. - Erkennt Remote-Arbeit — Wenn eine Verbindung über SSH, Bildschirmfreigabe oder Tailscale besteht, schläft das System nicht ein, damit Remote-Arbeit nicht unterbrochen wird.
- Sicherheit — Für die Erkennung wird nur der Änderungszeitpunkt der Transcript-Datei gelesen. Der Inhalt wird nicht gelesen.
Außerdem gibt es eine CLI, benannte Sessions, Telegram-Benachrichtigungen (optional) sowie einen dreifachen Sicherheitsmechanismus zur Wiederherstellung des Sleep-Verhaltens beim Beenden.
Der Technik-Stack ist Swift + AppKit ohne externe Abhängigkeiten; für die Stromsteuerung wird IOKit SPI
(IOPMSetSystemPowerSetting) verwendet, und für Berechtigungen kommt ein einzelner Helper über einen SMAppService-Daemon zum Einsatz.
Die App ist mit einer Developer ID signiert. Nur für Apple Silicon · macOS 13+ (Ventura).
Sie befindet sich noch in der Entwicklung, daher gibt es noch einige raue Kanten.
Sie ist kostenlos und Open Source; wenn ihr sie ausprobiert und Feedback gebt, würde ich mich wirklich sehr freuen 🙏
Wenn es Agenten gibt, bei denen ihr denkt: „Der sollte auch erkannt werden“, sagt mir gern Bescheid.
Noch keine Kommentare.