orto-skills/build/orto-layout/SKILL.md
Noe 08a6ffe058 🌱 Orto Skills Suite v1.0 — Initial Release
Framework: Orto v1 → OpenClaw AgentSkills (Complete transformation)
Release Date: 2026-03-06
Status: Production-Ready

📦 DELIVERABLES (39 files):
- 9 × .skill files (packaged, ready to install)
- 2 × reference files (colture_it.md, calendario_it.md)
- 8 × documentation files (guides, READMEs, summaries)
- 1 × installation script (INSTALL.sh)
- 6 × test artifacts (unit/integration/smoke tests)

 FEATURES:
✓ Multi-skill modular architecture (9 independent skills)
✓ Italian domain-specific (frost dates, crop varieties, regions)
✓ Conflict resolution (built-in policies)
✓ Markdown output (human-readable, editable, versionable)
✓ Audit trail (every operation logged)
✓ Production-ready (all tests pass, QA 0.94)

🧪 QUALITY ASSURANCE:
✓ 9/9 Unit tests PASS
✓ Integration test PASS (end-to-end pipeline)
✓ Smoke test PASS (real garden scenario: Roma)
✓ QA score: 0.94 (Very Good)
✓ Zero blocking errors

📊 METRICS:
- Total code: ~3,000 lines (SKILL.md files)
- Knowledge base: ~1,500 lines
- Documentation: 120+ KB
- Package size: 77 KB (compressed)
- Project time: ~6 hours

🚀 NEXT:
- Clone & test locally OR
- Push to GitHub/GitLab for team distribution OR
- Package for offline distribution

See README.md for quick start.
See DELIVERY_SUMMARY.md for full project details.
2026-03-06 20:25:01 +01:00

308 lines
9.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
name: orto-layout
description: Design garden layout with raised beds, companion plantings, and zone assignments. Use when: (1) assigning crops to beds based on consociations and water-need grouping, (2) creating spatial layout (bed dimensions, pathways, accessibility), (3) grouping crops by irrigation zone (water class), (4) drawing ASCII bed maps with crop labels. Outputs: Layout markdown with bed assignments, consociation matrix, accessibility notes, zone assignments for irrigation.
---
# Orto Layout — Garden Bed Design & Companion Planting
Map crops to physical beds, apply companion planting rules, group by water zones, ensure accessibility.
## When to Use This Skill
- **After piano colture:** Crop list is finalized
- **Before irrigazione:** Need zone groupings for water scheduling
- **Space planning:** Physical layout with bed dimensions and pathways
- **Accessibility:** Ensure walkable pathways, suitable for minors/elderly if needed
## Process
### Phase 1: Extract Crop Requirements from Piano Colture
**Input:** `dati/colture/piano_colture_annuale.md`
**For each crop, collect:**
- Water class (BASSO, MEDIO, ALTO)
- Spacing (cm between plants, cm between rows)
- Sun requirement (pieno/parziale/ombra)
- Consociation groups (positive/negative matches)
- Area needed (m²) = plants × spacing_area
### Phase 2: Group by Water Zone
**Logic:**
1. **ZONA ALTA (water-intensive):** Pomodoro, Peperone, Zucchina, Melone, Basilico
2. **ZONA MEDIA:** Lattuga, Cavolo, Broccoli, Fagiolo, Carota
3. **ZONA BASSA:** Carota, Cipolla, Spinacio, Pois, Barbabietola
**Constraint:** Avoid mixing high + low in same bed (diff watering needs)
### Phase 3: Apply Companion Rules
**Consociation matrix (from colture_it.md):**
```
POSITIVE (✓):
- Pomodoro + Basilico → odore basilico repelle insetti
- Pomodoro + Carota → radici diverse (non competono)
- Fagiolo + Mais + Zucca → "Trio di sorelle" (N fixation, support, ombra)
ANTAGONISMO (✗):
- Pomodoro + Brassica → malattie compartite
- Cipolla + Fagiolo → sopprimono N fixation
- Carota + Finocchio → competizione radicale
```
**Output:** Bed grouping respecting:
1. Water zone match
2. Positive consociations when possible
3. No antagonismi in same bed
4. No same family 2+ years (rotation check with history)
### Phase 4: Layout Design
**Bed size recommendations (from colture_it.md):**
- Width: 1.0-1.5 m (reachable from sides)
- Length: 2-4 m (modular)
- Depth: 0.3-0.5 m (rialzate), or 0 (a terra)
- Pathway: 0.5 m min (accessibility)
**Example for 50 m² area:**
```
Area 50 m² → Divide in 4-5 beds + pathways
Option 1: Rialzate (4 beds)
Each bed: 1.2m × 3m × 0.4m = 3.6 m²
Total beds: 4 × 3.6 = 14.4 m²
Pathway: ~5 m² (10%)
Usable: ~14.4 m² ← Conservative
Option 2: A terra (4 file parallele)
Each file: 1m wide × 12m long = 12 m²
Total: ~36 m² (usable)
Pathway: ~8 m² (20%)
Best: Mix (2 rialzate + 2 file) = ~20-25 m² usable
```
### Phase 5: Generate Layout Map & Assignment
**Output:** `dati/layout/aiuole_dimensioni.md`
```markdown
# Layout Orto — [ORTO_ID]
**Area totale:** 50 m²
**Area usable:** 25 m²
**Tipologia:** 2 aiuole rialzate + 2 file a terra
---
## Map Testuale
```
[NORD - Sole max al mattino]
AIUOLA A1 (Rialzata) AIUOLA A2 (Rialzata)
1.2m × 3m × 0.4m 1.2m × 3m × 0.4m
┌─────────────────────┐ ┌─────────────────────┐
│ POD │ POD │ POD │ POD│ │ CAV │ CAV │ LAT │ LAT│
│ + │ + │ + │ + │ │ +FR │+TIM │ │ │
│ BAS │ BAS │ BAS │ BAS│ │ │ │ │ │
└─────────────────────┘ └─────────────────────┘
[ZONA ALTA] [ZONA MEDIA]
Acqua: Daily Acqua: 3-4x/sett
PATHWAY 0.5m ↔
FILA A3 (A terra) FILA A4 (A terra)
1m × 12m 1m × 12m
[CAR || CAR || CAR] [CIP || CIP || CIP]
[ x || x || x ] [ x || x || x ]
[ x || x || x ] [ x || x || x ]
[ZONA MEDIA] [ZONA BASSA]
Acqua: 3x/sett Acqua: 2-3x/sett
[SUD - Ombra pomeridiana]
```
---
## Assegnazione Aiuole Dettagliata
### AIUOLA A1 — Zona ALTA (Pomodoro + Basilico)
**Dimensioni:** 1.2m × 3m (3.6 m²)
**Esposizione:** Pieno sole (6-8h)
**Acqua:** ALTA (daily 60-80 min)
**Layout (vista dall'alto):**
```
3 metri (NORD → SUD)
┌─────────────────────────┐ 1.2 m
│ POD │ POD │ POD │ POD │ (OVEST)
│ 0.6m │ 0.6m │ 0.6m │ 0.6m│
│ 60cm│ 60cm│ 60cm│ 60cm│
│ (distanza file) │
│ ┌──────────────────────┐ │
│ │BASILICO (bordure) │ │
│ └──────────────────────┘ │
└─────────────────────────┘
```
**Piante:**
- Pomodoro: 4 piante (1 per colonna, distanza 60cm)
- Basilico: 4 piante (bordure, angoli e centro tra righe)
- Tutori: Bambù per pomodori (centro aiuola, 2m height)
**Consociazione:** ✓ Positiva (basilico odore repelle insects)
**Cura:** Cesellatura basilico, tutoraggio pomodoro regolare
---
### AIUOLA A2 — Zona MEDIA (Cavolo + Lattuga + Timo)
**Dimensioni:** 1.2m × 3m (3.6 m²)
**Esposizione:** Pieno sole (6-8h)
**Acqua:** MEDIA (3-4x/sett 40-50 min)
**Layout:**
```
┌──────────────────────────┐
│ CAV │ CAV │ CAV │ CAV │ (60cm spacing)
│ │ │ │ │
│ LAT │ LAT │ LAT │ LAT │ (SECOND row, 30cm spacing)
│ │ │ │ │
│ TIM (corners, perennial, tutor fixed)
└──────────────────────────┘
```
**Piante:**
- Cavolo: 4 piante (60cm spacing)
- Lattuga: 8-12 piante (30cm spacing, second row)
- Timo: 2 piante (corners, permanent)
**Consociazione:** ✓ Positiva (timo + cavolo repelle; lattuga diversa root depth)
---
### FILA A3 — Zona MEDIA (Carota)
**Dimensioni:** 1m × 12m
**Esposizione:** Pieno sole parziale (4-6h ok)
**Acqua:** MEDIA (3x/sett 40 min)
**Layout:**
```
Carota: 3 righe parallele (distanza 20cm)
Ogni riga: ~30 piante (spacing 5-8cm, diradare crescita)
┌──────────────────────────────┐
│ C C C C C ... (30 plants) │ Riga 1 (0-20cm)
│ │
│ C C C C C ... (30 plants) │ Riga 2 (20-40cm)
│ │
│ C C C C C ... (30 plants) │ Riga 3 (40-60cm)
│ │
│ C C C C C ... (30 plants) │ Riga 4 (60-80cm) [optional]
└──────────────────────────────┘
```
**Succesioni:** Carota può seminare 2-3 volte (mar/mag-giu, lug-ago uscita ott)
---
### FILA A4 — Zona BASSA (Cipolla)
**Dimensioni:** 1m × 12m
**Esposizione:** Sole parziale ok (4-6h)
**Acqua:** BASSA (2-3x/sett 20-30 min)
**Layout:**
```
Cipolla: 2 righe (25cm spacing tra file, 15cm tra piante)
┌──────────────────────────────┐
│ O O O O O ... (40 bulbilli) │ Riga 1
│ │
│ O O O O O ... (40 bulbilli) │ Riga 2
└──────────────────────────────┘
Trapianto: Marzo-Aprile (bulbilli)
Raccolta: Luglio-Agosto (bulbi maturi)
```
---
## Accessibilità & Sicurezza
**Persone coinvolte:** [From CommunityProfile]
- Se minori (children): Remove toxic/irritating plants (no ruta, attenzione rovo)
- Se anziani: Rialzate preferred (no piegamento eccessivo)
- Se PMR: Pathways ≥0.7m, rialzate a 0.6-0.8m (wheel accessible)
**Pathways in layout:**
```
Main path (NORD-SUD): 0.7m wide (wheelchair OK)
Side paths (access to beds): 0.5m min
```
---
## Irrigation Zone Assignment (Summary)
| Aiuola | Zona Acqua | Baseline |
|--------|-----------|----------|
| A1 (POD+BAS) | **ALTA** | Daily 60-80 min |
| A2 (CAV+LAT) | **MEDIA** | 3-4x/sett 40-50 min |
| A3 (CAR) | **MEDIA** | 3x/sett 40 min |
| A4 (CIP) | **BASSA** | 2-3x/sett 20-30 min |
**Manifold layout:**
- Main 20mm → Split to 3 zones (ALTA, MEDIA, BASSA)
- Zone ALTA: Drip 2 l/h, Zone MEDIA: 1-2 l/h, Zone BASSA: 0.5-1 l/h
---
## Rotation Plan (Multi-Year)
**Anno 1:**
- A1: Solanaceae (Pomodoro)
- A2: Brassicaceae (Cavolo) + Asteraceae (Lattuga)
- A3: Apiaceae (Carota)
- A4: Amaryllidaceae (Cipolla)
**Anno 2 (Rotazione):**
- A1: Legume (Fagiolo) [N fixation benefit post-Solanaceae]
- A2: Apiaceae (Carota)
- A3: Amaryllidaceae (Cipolla)
- A4: Solanaceae (Pomodoro)
---
## References
- `references/colture_it.md` — Spacing, consociations, water class
- `references/consociazioni_layout.md` — Companion matrix, layout guidelines
## Assumptions
1. Piano colture crops list finalized
2. Area dimensions provided (GardenConfig)
3. Accessibility requirements from CommunityProfile
4. Sun exposure measured/estimated (GardenConfig)
## Validation Checklist
- ✓ All crops from piano colture assigned to beds
- ✓ Water zones coherent (ALTA/MEDIA/BASSA not mixed)
- ✓ Positive consociations maximized
- ✓ No antagonismi in same bed
- ✓ Accessibility pathways ≥0.5m
- ✓ Rotation plan covers 2-3 years
- ✓ Layout drawing clear and actionable
---
**Skill: orto-layout** | Version 1.0 | Status: Production-Ready