Přejít na obsah
Všechny projekty
ExperimentInfrastruktura pro AI agenty · 2026

Nightshift

Task runner, který spouští Claude Code na mých serverech: úkol zadáš z mobilu a ráno máš ověřenou větev a shrnutí.

🔒 Soukromý repozitář

01 Problém

Ruční spouštění coding agentů neškáluje: jeden terminál, jeden úkol a musíš sedět u počítače. Chtěl jsem, aby agenti bezpečně zpracovávali frontu na více serverech, když nejsem u počítače, a předávali mi jen výsledky, které prošly kontrolami.

02 Co aplikace dělá

  • Fronta v Postgresu s atomickým převzetím (FOR UPDATE SKIP LOCKED), takže dva workery nikdy nevezmou stejný úkol.
  • Každý běh dostane vlastní git worktree, spustí agenta a pak ověřovací příkaz; když ověření selže, proběhne jeden opravný průchod, jinak úkol skončí jako partial, ne done.
  • Rizikové úkoly projdou plánovací bránou: běh jen pro čtení, schválení v aplikaci a teprve pak ostrý běh.
  • Android klient pro zadávání úkolů, schvalování plánů a rušení běhů, s push notifikacemi a OTA aktualizacemi.

03 Architektura

  1. 01 ClientNativní Android aplikace (Kotlin) + CLI `ns`
  2. 02 Control planeFastify REST API, autentizace, outbox notifikací, FCM
  3. 03 QueueStavový automat úkolů v PostgreSQL s leasy a heartbeaty
  4. 04 WorkersNode worker bez závislostí na každém serveru: worktree → claude -p → verify → PR

04 Technologie

TypeScriptNode.jsFastifyPostgreSQLClaude CodeKotlinAndroidFCMDockersystemd

05 Jak jsem pracoval s AI

Projekt je o tom, aby agenti byli dost důvěryhodní na práci bez dozoru: nikdy sami nemergují, selhání se poctivě označí, navazující nápady se jen navrhnou a nespustí automaticky a každý běh je izolovaný ve vlastní větvi.

06 Co je ověřené

  • Server, worker, migrace i Android klient jsou v repozitáři.
  • 16 testovacích souborů; Dockerfile a Compose pro control plane.

07 Upřímné poznámky

  • Osobní infrastruktura, experimentální. CI pipeline zatím chybí.

08 Screenshoty

Screenshoty s anonymizovanými daty se připravují. Skutečná data klientů zveřejněna nebudou.

Další projektFileAction