# AgroMatrix Plant Intel Contract (Skeleton) ## Purpose `agromatrix_plant_intel` is an internal CrewAI profile for Stepan (AgroMatrix orchestrator). It is used for plant/crop identification and normalization when confidence matters. ## Call Path 1. User asks Stepan. 2. Stepan remains final speaker. 3. When query matches plant-intel intent, CrewAI profile `plant_intel` is selected. 4. Subteam runs: - `plant_identifier` - `taxonomy_validator` - `agrovoc_normalizer` 5. Synthesis returns compact evidence package to Stepan. ## Tool Adapters - `nature_id_identify` - input: `image_url`, `top_k?` - output: local/open-source candidates - note: requires self-hosted endpoint `NATURE_ID_URL` - `plantnet_lookup` - input: `query?`, `image_url?`, `organ?`, `top_k?` - output: candidate taxa + score - note: if `PLANTNET_API_KEY` missing, fallback chain is `nature_id_identify` -> `gbif_species_lookup` - `gbif_species_lookup` - input: `query`, `limit?` - output: accepted taxa/rank/status - `agrovoc_lookup` - input: `query`, `lang?`, `limit?` - output: canonical AGROVOC concepts ## Response Contract (to Stepan) - `probable_taxon` - `confidence` (`low|medium|high` + reason) - `alternatives` (up to 3) - `sources` (actual tools used) - `next_photos_required` (1-3 concrete instructions) ## Safety - No categorical claim with weak evidence. - If sources conflict, confidence is downgraded. - Final user answer remains concise by default.