AI-powered livestock management assistant for Spanish-speaking farmers. Provides expert advice on herd management, animal health, reproduction, genetics, nutrition, and breed selection for bovine, ovine, caprine, porcine, equine, and poultry. Includes a Node.js REST API for persistent herd record-keeping (animal registration, health records, reproduction events). Use when the user asks about livestock, cattle, ganadería, herd management, animal health, veterinary advice, breeds, reproduction, nutrition, forage, or any livestock-related topic.
Expert livestock management assistant for Spanish-speaking farmers. Responds always in Spanish. Combines AI chat with a REST API for herd record-keeping.
http://localhost:3000Before using any REST API endpoint, start the server:
bash scripts/start.sh
The server exposes /health, /api/animals, and /api/assistant — see
references/api.md for the full endpoint reference.
The assistant supports OpenAI, Anthropic (Claude), and Google (Gemini). Set at least one API key; the assistant auto-selects the provider.
| Provider | API key env var | Default model |
|---|---|---|
| OpenAI | OPENAI_API_KEY | gpt-5 |
| Anthropic | ANTHROPIC_API_KEY | claude-opus-4-6 |
GOOGLE_GENERATIVE_AI_API_KEY | gemini-2.5-pro |
Override explicitly via:
AI_PROVIDER=openai|anthropic|google — force a specific providerAI_MODEL=<model-id> — override the model ID for the chosen providerEvery interaction should be in Spanish. Use the system prompt embedded in
src/assistant/systemPrompt.ts as the agent's knowledge baseline.
Create a session before sending messages:
curl -X POST http://localhost:3000/api/assistant/sessions
# → { "sessionId": "...", "welcome": "¡Hola! Soy el Asistente de Ganadería..." }
curl -X POST http://localhost:3000/api/assistant/sessions/<sessionId>/messages \
-H "Content-Type: application/json" \
-d '{"message": "¿Cómo prevenir la mastitis en vacas lecheras?"}'
Load these files when you need detailed reference data:
| Reference | When to read |
|---|---|
| references/breeds.md | User asks about breeds, selection, or characteristics |
| references/diseases.md | User reports symptoms, asks about prevention or treatment |
| references/nutrition.md | User asks about feeding, rations, forages, or supplementation |
| references/api.md | User wants to register animals or retrieve herd data |
| Field | Allowed values |
|---|---|
species | bovine ovine caprine porcine equine poultry |
sex | male female |
status | active sold dead quarantine |
healthStatus | healthy sick in_treatment recovered |
reproductiveStatus | open pregnant lactating in_heat served not_applicable |
low → medium → high → emergency. Escalate accordingly.