Vai al contenuto

Agent Workspace

Agent Workspace e' il registro centrale per passare stato operativo tra agenti, shell e macchine diverse.

Regola principale

Ogni agente deve fare due azioni:

  1. leggere context <slug> prima di lavorare;
  2. scrivere event <slug> prima di chiudere.

Se manca una di queste due azioni, il passaggio tra agenti non e' affidabile.

Uso operativo

  1. Apri Agent Workspace da Controllo Accessi oppure da /moduli-accessi/agent-workspace/.
  2. Crea una scheda lavoro con obiettivo, stato corrente e prossimi passi.
  3. Ogni agente, prima di lavorare, apre Contesto agente della scheda.
  4. A fine lavoro aggiorna stato, file toccati, validazioni e aggiunge un evento.

Perche' serve

La chat o la shell possono chiudersi. La scheda resta nel database SafeOps e diventa il punto unico da leggere prima di continuare.

Regola per gli agenti

Ogni agente deve lasciare:

  • cosa ha cambiato;
  • file principali toccati;
  • validazioni eseguite;
  • problemi o blocchi;
  • prossimi passi concreti.

Comunicazione tra agenti

Non e' una chat libera. Serve come registro strutturato: un agente lascia decisioni e stato, l'altro legge e prosegue senza ripartire da zero.

Accesso da shell Codex

Per agenti senza browser usa l'API token. Il token non va mai scritto in chat o nei prompt: deve arrivare da .env locale o da un canale sicuro.

Macchina SafeOps

Prompt iniziale per un agente che lavora direttamente sulla macchina SafeOps:

Sei nel progetto SafeOps.

Prima di lavorare devi leggere Agent Workspace, il registro centrale condiviso tra agenti.

Regole:
- non ripartire da zero;
- non modificare file prima di aver letto il contesto;
- non cancellare file;
- non usare comandi distruttivi;
- non riavviare servizi senza autorizzazione esplicita;
- non stampare token o segreti;
- a fine lavoro devi aggiornare Agent Workspace con un evento.

Comandi iniziali:

cd /home/safeops/safeops

export SAFEOPS_AGENT_WORKSPACE_URL="http://127.0.0.1:18081/moduli-accessi/agent-workspace/shell"
export SAFEOPS_AGENT_WORKSPACE_TOKEN="$(grep '^SAFEOPS_AGENT_WORKSPACE_TOKEN=' .env | tail -1 | cut -d= -f2-)"

python scripts/agent_workspace_client.py list
python scripts/agent_workspace_client.py context <SLUG_LAVORO>

Dopo aver letto il contesto, dimmi in breve:
- che lavoro stai continuando;
- qual e' lo stato attuale;
- quali sono i prossimi passi;
- quali file non devi toccare.

Macchina esterna

Prompt iniziale per un agente su una macchina diversa:

Sei nel progetto SafeOps.

Prima di lavorare devi leggere Agent Workspace, il registro centrale condiviso tra agenti.

Regole:
- non ripartire da zero;
- non modificare file prima di aver letto il contesto;
- non cancellare file;
- non usare comandi distruttivi;
- non riavviare servizi senza autorizzazione esplicita;
- non stampare token o segreti;
- a fine lavoro devi aggiornare Agent Workspace con un evento.

Configura l'accesso:

export SAFEOPS_AGENT_WORKSPACE_URL="https://safeops.nxt-sense.eu/moduli-accessi/agent-workspace/shell"
export SAFEOPS_AGENT_WORKSPACE_TOKEN="<TOKEN_RICEVUTO_DA_CANALE_SICURO>"

Poi esegui:

python scripts/agent_workspace_client.py list
python scripts/agent_workspace_client.py context <SLUG_LAVORO>

Dopo aver letto il contesto, dimmi in breve:
- che lavoro stai continuando;
- qual e' lo stato attuale;
- quali sono i prossimi passi;
- quali file non devi toccare.

Aggiornamento a fine lavoro

python scripts/agent_workspace_client.py event <SLUG_LAVORO> \
  --actor "<NOME_AGENTE>" \
  --summary "Sintesi breve di cosa hai fatto" \
  --details "Dettaglio: file toccati, test eseguiti, esito, problemi, prossimi passi"

Esempio:

python scripts/agent_workspace_client.py event easy-builder-compila-v3 \
  --actor "codex-shell-01" \
  --summary "Verificata preview Easy Builder template 14" \
  --details "Controllato lookup cliente. Nessun 500. Da verificare semantica answer_semantics su nc_when/ok_when/pending_when."

Endpoint disponibili:

  • GET /moduli-accessi/agent-workspace/shell/work-items
  • GET /moduli-accessi/agent-workspace/shell/work-items/<slug>
  • GET /moduli-accessi/agent-workspace/shell/work-items/<slug>/context.txt
  • POST /moduli-accessi/agent-workspace/shell/work-items
  • POST /moduli-accessi/agent-workspace/shell/work-items/<slug>/events

Il token viene letto da SAFEOPS_AGENT_WORKSPACE_TOKEN o AGENT_WORKSPACE_TOKEN.

Slug iniziali

  • agent-workspace: protocollo e registro agenti.
  • moduli-accessi: view IAM Moduli e Accessi.
  • easy-builder-compila-v3: Easy Builder, preview e semantica Compila v3.

Cose vietate agli agenti

  • Non cancellare file.
  • Non usare git reset --hard.
  • Non usare git checkout -- ..
  • Non usare rm -rf.
  • Non fare DROP TABLE, TRUNCATE o delete massivi.
  • Non riavviare servizi senza autorizzazione esplicita.
  • Non incollare token o segreti in chat.

Prova sicura

Per testare un nuovo agente senza rischi:

python scripts/agent_workspace_client.py list
python scripts/agent_workspace_client.py context agent-workspace
python scripts/agent_workspace_client.py event agent-workspace \
  --actor "test-codex-shell" \
  --summary "Prova lettura e scrittura Agent Workspace" \
  --details "Ho letto lista e contesto. Non ho modificato file, non ho riavviato servizi e non ho usato git."