# 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.
