added venv, created and documented setup's procedure, added agents.md

This commit is contained in:
Luca Sacchi Ricciardi
2026-04-02 15:25:52 +02:00
parent e1fc873700
commit df75e51478
4 changed files with 137 additions and 0 deletions

View File

@@ -0,0 +1,51 @@
LogWhisperer AI - Agent Rules
Metodologia di Lavoro
Spec-Driven: Prima di ogni modifica, l'agente deve aggiornare o confermare le specifiche in docs/.
TDD (Test-Driven Development): Non scrivere logica senza un test fallimentare preventivo. Usa pytest.
Sacchi Method: Applica sempre "Safety first, little often, double check". Verifica i permessi prima di eseguire comandi bash distruttivi.
Git Workflow:
Usa Conventional Commits (es. feat:, fix:, docs:, test:).
Ogni commit deve essere atomico.
Aggiorna CHANGELOG.md seguendo lo standard Common Changelog.
Definizione dei Ruoli (Sub-agents)
@tech-lead: Responsabile dell'architettura e della validazione delle specifiche (PRD).
@developer: Scrive il codice Python e lo script Bash seguendo i test.
@qa-engineer: Scrive ed esegue i test, garantendo la copertura delle feature critiche.
### 3. Configurazione Tecnica (`opencode.json`)
Per gestire il progetto con Python e attivare le potenzialità agentiche, configura il file di impostazioni di OpenCode (solitamente in `~/.config/opencode/opencode.json` o localmente se supportato):
Assicurati che i **Tools** siano abilitati per permettere all'agente di usare il terminale nel tuo `venv`.
### 4. Uso delle Skills (Il potenziamento)
Per un risultato eccellente, useremo le **Skills**. Le skills sono playbook che OpenCode carica on-demand. Crea una cartella `.opencode/skills/` e aggiungi questi file:
- **python_expert.md**: Istruzioni su come gestire il venv, installare dipendenze con `pip` e seguire il PEP8.
- **tdd_workflow.md**: Una guida passo-passo che obbliga l'agente a:
1. Creare il test.
2. Eseguire il test (deve fallire).
3. Scrivere il codice minimo.
4. Rieseguire il test (deve passare).
- **git_standard.md**: Istruzioni rigide su come scrivere i messaggi di commit e aggiornare il changelog.
### 5. Avvio e Operatività
Ora sei pronto. Avvia OpenCode nella root del progetto:
```bash
opencode
```

View File

@@ -0,0 +1,35 @@
Ottimo progetto. Per trasformare **LogWhisperer AI** in un prodotto reale in 4 giorni usando **OpenCode.ai**, dobbiamo configurare l'ambiente in modo che l'agente non si limiti a scrivere codice, ma agisca come un vero team di sviluppo (Tech Lead + Developer + QA).
Ecco come configurare OpenCode.ai seguendo la tua metodologia **Spec-Driven**, **TDD** e il **Metodo Sacchi**.
### 1. Preparazione dell'Ambiente (Python & Git)
Prima di lanciare OpenCode, prepara il terreno nel tuo terminale:
```bash
# Crea e attiva il venv
python3 -m venv venv
source venv/bin/activate
# Inizializza Git se non lo hai già fatto
git init
# Crea la struttura iniziale per i test (TDD)
mkdir tests
touch tests/__init__.py
```
### 2. Configurazione dell'Intelligenza Collettiva (AGENTS.md)
OpenCode leggerà questo file per capire "chi deve essere" e "come deve lavorare". Crea un file `AGENTS.md` nella root del progetto:
http://googleusercontent.com/immersive_entry_chip/0
#### Primo comando suggerito (Sprint 1):
Digita questo prompt per attivare il flusso di lavoro che hai descritto:
> "@tech-lead, analizza `docs/prd.md` e `docs/prompt.project.manager.md`. Inizia lo **Sprint 1** definendo la specifica tecnica per lo script Bash di Log Ingestion (Feature 1). Segui il workflow: definisci la specifica in `docs/specs/ingestion_script.md`, poi passa la palla a @qa-engineer per il primo test in Python (usando `subprocess` per testare lo script bash) e infine a @developer per l'implementazione. Usa il venv attivo e segui i Conventional Commits."
### Cosa fare se OpenCode non risponde come previsto?
Se noti che l'agente salta la fase di test o dimentica i commit convenzionali, resetta il contesto con `/undo` o forza la rilettura delle regole con `/init`.
**Se hai bisogno di una configurazione specifica per un provider (es. collegare un modello locale come LLaMA 3 per risparmiare sui token della fase di test), chiedimi pure.** In caso contrario, procedi con l'inizializzazione del file `AGENTS.md` come mostrato sopra.