diff --git a/test-orto_v1/skills/orto-agronomo/SKILL.md b/test-orto_v1/skills/orto-agronomo/SKILL.md new file mode 100644 index 0000000..60a3b5e --- /dev/null +++ b/test-orto_v1/skills/orto-agronomo/SKILL.md @@ -0,0 +1,470 @@ +--- +name: orto-agronomo +description: Selezionare e pianificare colture per calendario annuale dell'orto basato su dieta, spazio, clima e principi agronomici. Usare quando: (1) generare selezione colture corrispondente a preferenze dieta comunitaria e bilancio nutrizionale, (2) applicare regole consociazione e rotazione colture, (3) stimare rese e pianificare tempi successioni, (4) considerare clima regionale e finestre stagionali. Output: Piano colture annuale (markdown) con varietà, date semina, spaziature, classe acqua, consociazioni, rese attese. +--- + +# Orto Agronomo — Selezione e Pianificazione Colture + +Selezionare colture e generare piano colture annuale basato su preferenze comunitarie, clima, spazio e best practice agronomiche. + +## Quando Usare Questa Skill + +- **Dopo onboarding:** Profilo utente (GardenConfig + CommunityProfile) è completo +- **Selezione colture:** Scegliere verdure corrispondenti a dieta, spazio, livello esperienza +- **Pianificazione stagionale:** Mappare colture a finestre di semina (date gelate, requisiti temperatura) +- **Pianificazione rotazione:** Assicurare rotazione famiglia negli anni per prevenire accumulo parassiti/malattie + +## Input + +| Input | Tipo | Obbligatorio | Esempio | Note | +|-------|------|--------------|---------|------| +| `orto_id` | String | Sì | `orto_roma_testaccio_001` | ID progetto esistente | +| `garden_config` | Object | Sì | Vedi sotto | Configurazione orto | +| `community_profile` | Object | Sì | Vedi sotto | Profilo comunità | +| `season` | Enum | No | `primavera` | Stagione target (default: corrente) | +| `anno_rotazione` | Int | No | `1` | Anno di rotazione (1-4, default: 1) | + +### Struttura `garden_config` + +```json +{ + "zona_climatica": "centro", + "ultima_gelata": "2026-04-15", + "prima_gelata": "2026-10-25", + "area_disponibile_mq": 50, + "esposizione": "pieno_sole", + "acqua_disponibile": "media", + "suolo": "misto" +} +``` + +### Struttura `community_profile` + +```json +{ + "numero_persone": 4, + "dieta": "onnivoro", + "preferenze": ["pomodoro", "insalata", "zucchina", "basilico"], + "da_evitare": ["melanzane"], + "allergie": [], + "esperienza": "dilettante", + "tempo_settimanale_ore": 5 +} +``` + +### Validazione Input + +- `orto_id`: deve esistere come directory in `Orti/` +- `zona_climatica`: solo `nord`, `centro`, `sud` +- `esposizione`: solo `pieno_sole`, `mezz_ombra`, `ombra` +- `acqua_disponibile`: solo `bassa`, `media`, `alta` +- `esperienza`: solo `nessuna`, `dilettante`, `esperto` + +## Processo + +### Fase 1: Filtra Colture per Vincoli + +**Obiettivo:** Ridurre colture candidate applicando filtri sequenziali. + +**Azioni:** + +1. Carica `colture_it.md` da references +2. Applica filtri in sequenza: + +**Filtro 1: Zona climatica** + +``` +SE garden_config.zona_climatica == "nord": + → Mantieni colture compatibili con nord (date gelate: 25 apr - 15 ott) + → Escludi colture ciclo lungo (>100 gg) a meno che varietà precoci + +SE garden_config.zona_climatica == "centro": + → Mantieni colture compatibili con centro (date gelate: 15 apr - 25 ott) + → Tutte le colture standard compatibili + +SE garden_config.zona_climatica == "sud": + → Mantieni colture compatibili con sud (date gelate: 1 apr - 5 nov) + → Attenzione a colture sensibili a caldo estivo (>35°C) +``` + +**Filtro 2: Esposizione solare** + +``` +SE garden_config.esposizione == "pieno_sole" (6-8h): + → Mantieni tutte le colture + +SE garden_config.esposizione == "mezz_ombra" (4-6h): + → Mantieni: Lattuga, Spinacio, Carota, Cavolo, Broccolo + → Escludi: Pomodoro, Peperone, Zucchina, Melone, Cocomero + +SE garden_config.esposizione == "ombra" (<4h): + → Mantieni solo: Lattuga, Spinacio, Rucola (resa ridotta) + → Segnala: "Esposizione insufficiente per la maggior parte delle colture" +``` + +**Filtro 3: Spazio disponibile** + +``` +SE garden_config.area_disponibile_mq < 20: + → Priorità a colture piccole + ciclo rapido + → Mantieni: Lattuga, Spinacio, Rucola, Ravanello, Erbe aromatiche + → Escludi: Zucchina, Cocomero, Melone (richiedono >5 m²/pianta) + +SE garden_config.area_disponibile_mq >= 20 AND < 50: + → Mantieni colture medie + → Aggiungi: Pomodoro (2-3 piante), Peperone (2 piante), Fagiolo + +SE garden_config.area_disponibile_mq >= 50: + → Mantieni tutte le colture + → Includi anche: Zucchina, Cocomero, Melone, Mais +``` + +**Filtro 4: Disponibilità acqua** + +``` +SE garden_config.acqua_disponibile == "bassa": + → Priorità a colture tolleranti siccità + → Mantieni: Cipolla, Aglio, Porro, Spinacio, Pisello, Fagiolo, Carota + → Evita: Sedano, Cocomero, Melone (esigenti acqua) + +SE garden_config.acqua_disponibile == "media": + → Mantieni colture medio-esigenti + → Aggiungi: Lattuga, Basilico, Cavolo, Broccolo + +SE garden_config.acqua_disponibile == "alta": + → Mantieni tutte le colture + → Includi: Pomodoro, Peperone, Zucchina, Cocomero, Melone, Sedano +``` + +**Filtro 5: Preferenze dieta** + +``` +INCLUDI tutte le colture in community_profile.preferenze + +ESCLUDI tutte le colture in community_profile.da_evitare + +SE community_profile.dieta == "vegano": + → Bias verso legumi (Fagiolo, Pisello, Fava) per proteine + +SE community_profile.dieta == "vegetariano": + → Bias verso colture proteiche e ferro (Spinacio, Legumi) +``` + +**Filtro 6: Esperienza utente** + +``` +SE community_profile.esperienza == "nessuna": + → Mantieni solo colture robuste e indulgenti + → Mantieni: Lattuga, Carota, Zucchina, Basilico, Cipolla, Ravanello + → Escludi: Melanzana, Melone, Sedano, Cavolfiore (esigenti) + +SE community_profile.esperienza == "dilettante": + → Mantieni colture standard + → Escludi solo colture molto esigenti + +SE community_profile.esperienza == "esperto": + → Mantieni tutte le colture + → Includi anche: Melanzana, Melone, Sedano, Cavolfiore, Carciofo +``` + +**Output intermedio:** Lista colture candidate (15-25 colture) + +--- + +### Fase 2: Lista Colture Candidate + +**Obiettivo:** Ordinare colture per probabilità di successo e utilità. + +**Azioni:** + +1. Per ogni coltura candidata, calcola score: + +``` +score = ( + preferenza_utente * 0.4 + + facilita_coltivazione * 0.2 + + resa_per_m2 * 0.2 + + valore_nutrizionale * 0.1 + + compatibilita_stagione * 0.1 +) +``` + +2. Ordina per score decrescente + +**Output:** + +```markdown +## Colture Candidate (Ordinate per Probabilità) + +| # | Coltura | Varietà Suggerite | Ciclo (gg) | Acqua | Spazio | Score | Note | +|---|---------|-----------------|-----------|-------|--------|-------|------| +| 1 | Pomodoro | San Marzano, Ciliegino | 80 | ALTO | Medio | 0.92 | Preferenza esplicita | +| 2 | Basilico | Genovese | 60 | MEDIO | Piccolo | 0.88 | Consociazione pomodoro | +| 3 | Lattuga | Romana, Canasta | 45 | MEDIO | Piccolo | 0.85 | Successioni, facile | +| 4 | Zucchina | Nero di Milano | 50 | ALTO | Grande | 0.82 | Alta resa | +| 5 | Fagiolo | Borlotto, Nano | 55 | MEDIO | Medio | 0.80 | Fissa azoto | +| ... | ... | ... | ... | ... | ... | ... | ... | +``` + +--- + +### Fase 3: Costruisci Piano Colture Annuale + +**Obiettivo:** Mappare colture a finestre di semina e aiuole. + +**Azioni:** + +Per ogni coltura candidata (top 10-15): + +**Step 1: Mappa a finestre di semina** + +Carica `stagionalita_it.md` da references. + +``` +Per zona_climatica = garden_config.zona_climatica: + → Trova finestra semina per coltura + → Trova finestra trapianto (se applicabile) + → Trova finestra raccolta prevista + +Esempio per Pomodoro (zona centro): + - Semina in semenzaio: Febbraio-Marzo + - Trapianto: Aprile-Maggio (post-gelo) + - Raccolta: Luglio-Settembre +``` + +**Step 2: Assegna gruppo rotazione** + +``` +Per coltura: + → Trova famiglia botanica (da colture_it.md) + → Assegna a gruppo rotazione + +Famiglie: +- Solanaceae: Pomodoro, Peperone, Melanzana, Patata +- Cucurbitaceae: Zucchina, Cetriolo, Cocomero, Melone +- Brassicaceae: Cavolo, Broccolo, Cavolfiore, Ravanello +- Fabaceae: Fagiolo, Pisello, Fava +- Liliaceae: Cipolla, Aglio, Porro +- Asteraceae: Lattuga, Cicoria, Carciofo +- Apiaceae: Carota, Sedano, Finocchio +- Chenopodiaceae: Spinacio, Bietola +``` + +**Step 3: Stima rese** + +``` +Per coltura: + → Trova resa tipica (kg/m²) da colture_it.md + → Calcola resa totale = resa_m2 × area_assegnata + +Esempio: +- Pomodoro: 5 kg/m² × 4 m² = 20 kg totali +- Lattuga: 1.5 kg/m² × 3 m² = 4.5 kg totali +``` + +**Step 4: Pianifica consociazioni** + +``` +Per ogni aiuola: + → Identifica coltura principale + → Trova consociazioni positive (da colture_it.md) + → Aggiungi colture companion + +Esempio aiuola 1: +- Principale: Pomodoro (4 m²) +- Companion: Basilico (0.5 m² tra piante) +- Companion: Lattuga (1 m² bordi) + +Benefici: +- Basilico: respinge mosca bianca +- Lattuga: copre suolo, riduce infestanti +``` + +**Output intermedio:** Piano colture bozza + +--- + +### Fase 4: Output Piano Colture Annuale + +**Obiettivo:** Generare documento markdown finale. + +**File:** `dati/colture/piano_colture_annuale.md` + +**Struttura:** + +```markdown +# Piano Colture Annuale — + +**Zona Climatica:** +**Area disponibile:** m² +**Comunità:** persone | +**Esperienza:** +**Anno rotazione:** <1-4> + +--- + +## Riepilogo Stagionale + +### Primavera (Mar-Mag) + +**Colture principali:** +- Pomodoro (trapianto aprile) +- Zucchina (trapianto maggio) +- Fagiolo (semina aprile) +- Lattuga (semine successioni) + +**Area occupata:** XX m² +**Stima rese:** XX kg + +### Estate (Giu-Ago) + +**Colture principali:** +- Pomodoro (raccolta continua) +- Zucchina (raccolta continua) +- Fagiolo (raccolta + successioni) +- Basilico (raccolta foglie) + +### Autunno (Set-Nov) + +**Colture principali:** +- Lattuga (successioni) +- Spinacio (semina settembre) +- Cavolo (trapianto agosto) +- Ravanello (ciclo rapido) + +### Inverno (Dic-Feb) + +**Colture:** +- Riposo vegetativo +- Preparazione terreno +- Semine protette (febbraio) + +--- + +## Dettagli Aiuole + +### Aiuola 1 (4 m²) — Solanaceae + +| Coltura | Varietà | Piante | Spaziatura | Semina | Raccolta | Resa stimata | +|---------|---------|--------|------------|--------|----------|--------------| +| Pomodoro | San Marzano | 4 | 50cm | Apr | Lug-Set | 20 kg | +| Basilico | Genovese | 6 | 20cm | Mag | Giu-Ott | 2 kg | +| Lattuga | Romana | 8 | 25cm | Apr-Giu | Mag-Lug | 3 kg | + +**Consociazioni:** Pomodoro + Basilico (respinge parassiti) + Lattuga (copertura suolo) + +**Rotazione prossima anno:** Brassicaceae (Cavolo, Broccolo) + +--- + +### Aiuola 2 (3 m²) — Cucurbitaceae + +| Coltura | Varietà | Piante | Spaziatura | Semina | Raccolta | Resa stimata | +|---------|---------|--------|------------|--------|----------|--------------| +| Zucchina | Nero di Milano | 3 | 100cm | Mag | Giu-Ago | 12 kg | +| Fagiolo | Borlotto | 20 | 30cm | Apr-Giu | Mag-Set | 5 kg | + +**Consociazioni:** Zucchina + Fagiolo (fissa azoto) + +--- + +[Continua per tutte le aiuole...] + +--- + +## Riepilogo Rese Attese + +| Coltura | Area (m²) | Resa (kg/m²) | Resa Totale (kg) | Mesi Raccolta | +|---------|-----------|--------------|------------------|---------------| +| Pomodoro | 4 | 5.0 | 20 | Lug, Ago, Set | +| Zucchina | 3 | 4.0 | 12 | Giu, Lug, Ago | +| Lattuga | 3 | 1.5 | 4.5 | Mag, Giu, Lug, Set, Ott | +| Fagiolo | 2 | 2.5 | 5 | Mag, Giu, Lug, Ago, Set | +| Basilico | 1 | 2.0 | 2 | Giu, Lug, Ago, Set, Ott | +| ... | ... | ... | ... | ... | + +**Totale stimato:** XX kg/stagione + +**Copertura fabbisogno:** XX% (basato su 4 persone, 2 kg/settimana × 26 settimane = 208 kg) + +--- + +## Note Agronomiche + +### Rotazione Colture + +**Anno corrente:** 1 (Solanaceae + Cucurbitaceae) +**Prossimo anno (2):** Brassicaceae + Fabaceae +**Anno 3:** Liliaceae + Apiaceae +**Anno 4:** Asteraceae + Chenopodiaceae + +### Irrigazione + +**Fabbisogno totale stimato:** XX litri/settimana +**Zone irrigazione:** 2 (ALTO: Pomodoro/Zucchina, MEDIO: Lattuga/Fagiolo) + +### Monitoraggio + +**Task settimanali:** +- Controllo umidità suolo (giornaliero estate) +- Ispezione parassiti (2× settimana) +- Raccolta (2-3× settimana) +- Pacciamatura/rincalzo (settimanale) + +--- + +_Generato da: orto-agronomo_ +_Data: YYYY-MM-DD_ +``` + +--- + +## Output + +**File generato:** `dati/colture/piano_colture_annuale.md` + +**Formato:** Markdown strutturato + +**Contenuto:** +- Riepilogo stagionale (4 stagioni) +- Dettagli aiuole (colture, varietà, date, rese) +- Consociazioni e rotazioni +- Riepilogo rese attese +- Note agronomiche + +### Esempio Output + +Vedi struttura sopra. + +--- + +## References + +- [`colture_it.md`](../references/colture_it.md) — Catalogo colture, varietà, parametri +- [`stagionalita_it.md`](../references/stagionalita_it.md) — Finestre semina/trapianto/raccolta +- [`consociazioni_layout.md`](../references/consociazioni_layout.md) — Matrice consociazioni +- [`fabbisogni_it.md`](../references/fabbisogni_it.md) — Fabbisogni alimentari comunità + +--- + +## Note + +**Edge cases gestiti:** + +- **Area molto piccola (<10 m²):** Priorità a colture alta resa/m² (Lattuga, Ravanello, Fagiolo) +- **Acqua limitata:** Priorità a colture tolleranti siccità (Cipolla, Aglio, Fagiolo) +- **Esperienza nulla:** Solo colture robuste (Lattuga, Carota, Zucchina, Basilico) + +**Limitazioni:** + +- Non considera microclima specifico (adatta date in base a esperienza locale) +- Rese sono stime (variabili in base a cura, meteo, suolo) + +**Avvertenze:** + +- ⚠️ **Date gelate:** Sono stime macro-zona; verifica microclima locale +- ⚠️ **Rotazione:** Rispetta rotazione 3-4 anni per prevenire malattie + +--- + +_Aggiornato: 2026-03-07 | Versione: 1.0_