🌱 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.
This commit is contained in:
commit
08a6ffe058
39 changed files with 8634 additions and 0 deletions
285
SKILL_DEVELOPMENT_PLAN.md
Normal file
285
SKILL_DEVELOPMENT_PLAN.md
Normal file
|
|
@ -0,0 +1,285 @@
|
|||
# Orto Skills Development Plan
|
||||
|
||||
**Start Date:** 2026-03-06
|
||||
**Status:** Fase 1 in Progress
|
||||
**Target:** 9 skill packaggiati, testati, ready to distribution
|
||||
|
||||
---
|
||||
|
||||
## Skill Development Queue
|
||||
|
||||
### Sprint 1: Foundation Skills (Giorni 1-2)
|
||||
|
||||
#### [1] orto-init ⏱️ Starting
|
||||
**Purpose:** Initialize new garden project
|
||||
**Source:** Workflow 00 + init_new_orto.py script
|
||||
**Status:** Reading sources
|
||||
**Complexity:** Medium (scaffolding + registration)
|
||||
|
||||
**Deliverables:**
|
||||
- [ ] SKILL.md drafted
|
||||
- [ ] References collected
|
||||
- [ ] Scripts bundled
|
||||
- [ ] Test case: init test garden
|
||||
|
||||
---
|
||||
|
||||
#### [2] orto-onboarding ⏱️ Queued
|
||||
**Purpose:** Collect garden profile via 5 questionnaire blocks
|
||||
**Source:** Workflow 01 + allegati/A_questionario_utente.md
|
||||
**Complexity:** Medium (validation + guidance)
|
||||
|
||||
**Deliverables:**
|
||||
- [ ] SKILL.md with 5-block flow
|
||||
- [ ] References: blocco templates + validation rules
|
||||
- [ ] Test case: complete onboarding flow
|
||||
|
||||
---
|
||||
|
||||
### Sprint 2: Decision Logic Skills (Giorni 2-3)
|
||||
|
||||
#### [3] orto-agronomo ⏱️ Queued
|
||||
**Purpose:** Plan crop selection + rotations
|
||||
**Source:** Agent 02 spec + knowledge base
|
||||
**Complexity:** High (decision tree + consociations)
|
||||
|
||||
**Deliverables:**
|
||||
- [ ] SKILL.md with selection logic
|
||||
- [ ] References: colture_it.md (varieties, parameters, consociations)
|
||||
- [ ] References: rotazione_regole.md
|
||||
- [ ] Test case: select crops for 3 scenarios
|
||||
|
||||
---
|
||||
|
||||
#### [4] orto-calendario ⏱️ Queued
|
||||
**Purpose:** Generate seasonal calendar (IT-regional)
|
||||
**Source:** Agent 03 spec + clima zones
|
||||
**Complexity:** High (frost dates, succession, meteo-sensitivity)
|
||||
|
||||
**Deliverables:**
|
||||
- [ ] SKILL.md with calendar logic
|
||||
- [ ] References: calendario_it.md (frost dates per region, planting windows)
|
||||
- [ ] References: task_templates.md (metadata, meteo-tags)
|
||||
- [ ] Test case: calendar for Nord/Centro/Sud region
|
||||
|
||||
---
|
||||
|
||||
#### [5] orto-irrigazione ⏱️ Queued
|
||||
**Purpose:** Design irrigation zones + automation
|
||||
**Source:** Agent 05 spec + Workflow 05
|
||||
**Complexity:** High (multi-zone, sensors, meteo-aware)
|
||||
|
||||
**Deliverables:**
|
||||
- [ ] SKILL.md with zoning + baseline logic
|
||||
- [ ] References: irrigazione_parametri.md (ET, Kc, thresholds)
|
||||
- [ ] References: sensori_configurazione.md
|
||||
- [ ] Test case: design 3-zone system
|
||||
|
||||
---
|
||||
|
||||
### Sprint 3: Analysis & Integration Skills (Giorni 3-4)
|
||||
|
||||
#### [6] orto-meteo-decisioni ⏱️ Queued
|
||||
**Purpose:** Weather → operational decisions
|
||||
**Source:** Agent 11 spec + Weather decision logic
|
||||
**Complexity:** Medium (API integration + thresholds)
|
||||
|
||||
**Deliverables:**
|
||||
- [ ] SKILL.md with decision tree
|
||||
- [ ] References: meteo_soglie.md (wind, rain, frost, heat thresholds)
|
||||
- [ ] Test case: apply meteo decisions to calendar
|
||||
|
||||
---
|
||||
|
||||
#### [7] orto-fitopatologo ⏱️ Queued
|
||||
**Purpose:** Diagnose diseases + recommend treatments
|
||||
**Source:** Agent 04 spec + treatment library
|
||||
**Complexity:** High (diagnostic tree + safety checks)
|
||||
|
||||
**Deliverables:**
|
||||
- [ ] SKILL.md with diagnostic flow
|
||||
- [ ] References: malattie_sintomi.md (symptoms → pathogen)
|
||||
- [ ] References: trattamenti_biologici.md (treatments, DPI, timing, efficacy)
|
||||
- [ ] Test case: diagnose 3 common problems
|
||||
|
||||
---
|
||||
|
||||
#### [8] orto-layout ⏱️ Queued
|
||||
**Purpose:** Design beds + consociations
|
||||
**Source:** Agent 06 spec
|
||||
**Complexity:** Medium-High (geometric + agronomic)
|
||||
|
||||
**Deliverables:**
|
||||
- [ ] SKILL.md with bed layout logic
|
||||
- [ ] References: layout_consociazioni.md (consociation matrix, bed sizing)
|
||||
- [ ] References: accessibilita_guidelines.md
|
||||
- [ ] Test case: design 2 different layouts
|
||||
|
||||
---
|
||||
|
||||
### Sprint 4: Orchestration (Giorno 4)
|
||||
|
||||
#### [9] orto-orchestratore ⏱️ Queued
|
||||
**Purpose:** Coordinate all skills + resolve conflicts
|
||||
**Source:** Agent 01 spec + Orchestration rules
|
||||
**Complexity:** Very High (conflict resolution + validation)
|
||||
|
||||
**Deliverables:**
|
||||
- [ ] SKILL.md with orchestration flow
|
||||
- [ ] References: conflitti_risoluzione.md (conflict matrix + policies)
|
||||
- [ ] References: qa_checklist.md (validation rules)
|
||||
- [ ] Test case: full planning pipeline init → onboarding → skills → merge
|
||||
|
||||
---
|
||||
|
||||
## Shared References Library
|
||||
|
||||
**Location:** `/home/noe/.openclaw/workspace/orto-skills/references/`
|
||||
|
||||
These are shared across multiple skills. Extract once, reuse everywhere.
|
||||
|
||||
### Knowledge Base Files (To Extract)
|
||||
|
||||
- [ ] **colture_it.md** (500+ lines)
|
||||
- Varietà coltivabili in IT
|
||||
- Cicli colturali, esigenze idriche, nutrienti, spaziatura
|
||||
- Famiglie botaniche (per rotazione)
|
||||
- Rese indicative (min/typ/max)
|
||||
- Esempi consociazioni
|
||||
|
||||
- [ ] **calendario_it.md** (200+ lines)
|
||||
- Frost dates per region (Nord: 25 aprile, Centro: 15 aprile, Sud: 1 aprile)
|
||||
- Seasonal windows per coltura
|
||||
- Length of season per macro-zone
|
||||
- Succession windows (es: lattuga primavera, successiva estate se semenzaio agostano)
|
||||
|
||||
- [ ] **malattie_trattamenti.md** (300+ lines)
|
||||
- Symptom → pathogen mapping
|
||||
- Biological treatments (neem oil, sulfur, copper, beneficial insects, etc.)
|
||||
- DPI required, timing, efficacy %
|
||||
- Safety interlocks (wind, rain, harvest carency)
|
||||
|
||||
- [ ] **irrigazione_parametri.md** (200+ lines)
|
||||
- ET0 formulas / lookup tables
|
||||
- Kc per coltura e fase
|
||||
- Water need classes (basso, medio, alto)
|
||||
- Sensor thresholds (umidità suolo min/max %)
|
||||
- Baseline watering schedules per metodo (goccia, spruzzatore, sommersione)
|
||||
|
||||
- [ ] **consociazioni_layout.md** (200+ lines)
|
||||
- Companion planting matrix (positive/negative combinations)
|
||||
- Bed sizing recommendations (larghezza, lunghezza, profondità)
|
||||
- Row spacing, plant spacing per coltura
|
||||
- Pathway width (accessibilità)
|
||||
- Sun exposure requirements (full sun, partial, shade)
|
||||
|
||||
- [ ] **meteo_soglie.md** (100+ lines)
|
||||
- Wind speed thresholds (no spray if > 5kn, transplant risky > 8kn)
|
||||
- Rain thresholds (skip watering if rain > 10mm in 24h forecast)
|
||||
- Frost alerts (temperature < 0°C for frost-sensitive crops)
|
||||
- Heat stress (temperature > 35°C, increase irrigation)
|
||||
|
||||
- [ ] **conflitti_risoluzione.md** (150+ lines)
|
||||
- Irrigation zone vs. consociations → prioritize water stress avoidance
|
||||
- Calendar task vs. weather → defer if risky conditions
|
||||
- Layout vs. irrigation zone → regrid if mismatch
|
||||
- etc. (conflict resolution policies)
|
||||
|
||||
- [ ] **qa_checklist.md** (100+ lines)
|
||||
- Validation rules for PlanBundle
|
||||
- Min crop diversity (% of nutritional groups)
|
||||
- Water adequacy (total availability vs. plan demand)
|
||||
- Nutrient balance (NPK coverage)
|
||||
- Crop rotation conflicts
|
||||
- etc.
|
||||
|
||||
---
|
||||
|
||||
## Development Environment Setup
|
||||
|
||||
### Directory Structure
|
||||
|
||||
```
|
||||
orto-skills/
|
||||
├── SKILL_DEVELOPMENT_PLAN.md # This file
|
||||
├── references/ # Shared knowledge base
|
||||
│ ├── colture_it.md
|
||||
│ ├── calendario_it.md
|
||||
│ ├── malattie_trattamenti.md
|
||||
│ ├── irrigazione_parametri.md
|
||||
│ ├── consociazioni_layout.md
|
||||
│ ├── meteo_soglie.md
|
||||
│ ├── conflitti_risoluzione.md
|
||||
│ └── qa_checklist.md
|
||||
├── scripts/
|
||||
│ ├── init_new_orto_bundled.sh # Bundled from framework
|
||||
│ └── test_framework_extraction.py
|
||||
├── build/
|
||||
│ ├── orto-init/ # Skill folder (will be packaged)
|
||||
│ │ ├── SKILL.md
|
||||
│ │ ├── references/
|
||||
│ │ ├── scripts/
|
||||
│ │ └── assets/
|
||||
│ ├── orto-onboarding/
|
||||
│ ├── ...
|
||||
│ └── orto-orchestratore/
|
||||
└── test/
|
||||
└── integration_tests.md
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Extraction & Normalization Tasks
|
||||
|
||||
**Fase 1 (TODAY):** Extract knowledge base from framework
|
||||
|
||||
- [ ] Parse `docs/agents/02_agronomo_colture.md` → colture_it.md
|
||||
- [ ] Parse `docs/agents/03_stagionalita_calendario.md` → calendario_it.md
|
||||
- [ ] Parse `docs/agents/04_fitopatologo_trattamenti.md` → malattie_trattamenti.md
|
||||
- [ ] Parse `docs/agents/05_irrigazione_automazione.md` → irrigazione_parametri.md
|
||||
- [ ] Parse `docs/agents/06_layout_zoning.md` → consociazioni_layout.md
|
||||
- [ ] Parse `docs/agents/11_weather_intelligence_agent.md` → meteo_soglie.md
|
||||
- [ ] Parse `docs/agents/01_orchestratore_planner.md` + `docs/workflows/` → conflitti_risoluzione.md
|
||||
- [ ] Parse `docs/agents/10_qa_safety_agent.md` → qa_checklist.md
|
||||
|
||||
---
|
||||
|
||||
## Testing Strategy
|
||||
|
||||
### Unit Tests (Per Skill)
|
||||
- Input examples from framework docs
|
||||
- Validate output schema matches spec
|
||||
- Check edge cases & fallbacks
|
||||
|
||||
### Integration Test
|
||||
- Full pipeline: init → onboarding → {agronomo, calendario, irrigazione} → orchestratore → merge
|
||||
- Validate conflicts resolved correctly
|
||||
- Check PlanBundle completeness
|
||||
|
||||
### Smoke Test (One Garden)
|
||||
- Real initialization of test garden
|
||||
- Verify markdown files created and readable
|
||||
- Confirm no blocking errors
|
||||
|
||||
---
|
||||
|
||||
## Milestones & Timeline
|
||||
|
||||
| Milestone | Target | Status |
|
||||
|-----------|--------|--------|
|
||||
| Fase 1 Complete (Prep + Refs) | EOD Today | ⏱️ In Progress |
|
||||
| Skill #1-2 Drafted | EOD Tomorrow | ⏱️ Queued |
|
||||
| Skill #3-5 Drafted | Day 3 | ⏱️ Queued |
|
||||
| Skill #6-9 Drafted | Day 4 | ⏱️ Queued |
|
||||
| All Skills Tested | Day 5 | ⏱️ Queued |
|
||||
| Packaging + Distribution | Day 6 | ⏱️ Queued |
|
||||
|
||||
---
|
||||
|
||||
## Notes
|
||||
|
||||
- Maintain Italian language throughout (domain-local, as decided)
|
||||
- Each skill SKILL.md < 500 lines (enforce progressive disclosure)
|
||||
- References are shared; extract once, link many times
|
||||
- Scripts bundled in skill, not external
|
||||
- All outputs are markdown (readable, editable, versionable)
|
||||
Loading…
Add table
Add a link
Reference in a new issue