Gateway per orchestrare agenti Claude Code remoti (gateway Python + agent-runner Go). Migrato da GitHub SolteaSrl.
  • Go 50.4%
  • Python 49.3%
  • Shell 0.3%
Find a file
Soltea 8994edd075 fix(waker): deriva channel/to dalla sessionKey per la consegna del wake
Il POST a /hooks/agent non portava alcun target di consegna: il turno
svegliato girava su channel=cron/chatId=unknown e la consegna su Slack
falliva con "Delivering to Slack requires target", perdendo l esito di
fine task (l orchestratrice non veniva mai notificata).

OpenClaw non ricostruisce il target provider da una sessionKey (spesso
minuscola). Deriviamo channel+to dalla chiave d origine (Slack DM ->
user:<ID>, canale -> channel:<ID>, ID ri-maiuscolato) e per i canali
interni (dashboard) sopprimiamo l announce esterno (deliver=false).

Test: 4 unit su delivery_route_from_session_key; suite 23 passed.
2026-07-28 07:57:05 +00:00
agent-runner feat(runner): identita' git isolata per i commit del runner + bump 0.6.7 2026-06-22 14:37:18 +00:00
docs feat(gateway): callback di risveglio sessione OpenClaw a fine task 2026-07-15 08:46:30 +00:00
gateway fix(waker): deriva channel/to dalla sessionKey per la consegna del wake 2026-07-28 07:57:05 +00:00
.gitignore chore: baseline del repo (README, licenza, gitignore) 2026-06-02 00:27:19 +02:00
DESIGN.md feat: scaffold gateway (Python) + agent-runner (Go) + design 2026-06-02 00:28:11 +02:00
LICENSE chore: baseline del repo (README, licenza, gitignore) 2026-06-02 00:27:19 +02:00
README.md chore: baseline del repo (README, licenza, gitignore) 2026-06-02 00:27:19 +02:00

soltea-agent-gateway

Gateway di orchestrazione che mette in comunicazione Claudia (l'orchestratrice AI di Soltea) con una flotta di agenti Claude Code che girano su ambienti di sviluppo remoti (VM Windows), uno per progetto.

Tutti i nodi stanno dietro NAT: il gateway è l'unico punto pubblico e fa da centralino. Sia l'orchestratrice sia gli agent-runner aprono una connessione WebSocket in uscita verso il gateway, che instrada i messaggi e fa da tramite per i file (lo zip del ticket).

 Claudia ──WSS──▶  GATEWAY (pubblico, dietro nginx/443)  ◀──WSS── agent-runner (VM Windows) ─▶ claude.exe ─▶ repo progetto
                   • registry agente↔progetto (in RAM)
                   • routing delle sessioni
                   • blob store per gli zip dei ticket

Componenti

Componente Linguaggio Dove gira Cartella
Gateway Python (FastAPI + uvicorn) Ubuntu, accanto all'MCP ]po[, dietro nginx sul 443 gateway/
Agent-runner Go (singolo .exe, servizio Windows) VM Windows di sviluppo agent-runner/

Documentazione

Stato

Scaffold iniziale: impianto, protocollo e happy-path implementati. I punti che richiedono un ambiente live (integrazione reale con claude.exe su Windows, installazione come servizio, TLS/nginx in produzione) sono marcati TODO(live).