OPEN-SOURCE · SELF-HOSTED · FARM AGENT RUNTIME

A farm that thinks.

Eywa connects the sensors and valves you already own to an AI agronomist your farm can actually talk to — over WhatsApp or Telegram, in Malayalam, Hindi or English. One Go binary. Runs on your own hardware. Keeps thinking offline.

Open the dashboard $ eywa sim
pre-pilot · engineering complete through v0.4 · Kerala first
e
Eywa · Demo Farm
online · edge box, plot 3
ഇന്ന് കുരുമുളകിന് നനയ്ക്കണോ?
Should I irrigate the pepper today?
No — Plot 3 soil moisture is 41% and rain is likely Thursday. Skipping today saves ~1,800 L. I'll re-check at 6 am.
You asked me to flush valve-2 for 10 minutes. Reply YES to confirm.
hard limit: 15 min · logged
YES
✓ valve-2 open · 10 min · audit #a41f
THE PROBLEM

The technology isn't the barrier. The interface is.

Every sensor vendor ships its own closed app. Every irrigation controller wants its own login. A working farm ends up with seven dashboards nobody opens — because farmers don't open dashboards. They open WhatsApp. Eywa is the missing layer: one open runtime that speaks every device's protocol on one side, and the farmer's own language on the other.

HOW IT WORKS

Four layers, one nervous system.

Signals travel up from the soil; language travels back down to the farmer. Everything in between is open — and everything below is running code, not roadmap.

SOIL GATEWAY FARM TWIN REASONING CHANNELS FARMER
01 — GATEWAY

Speaks to your hardware

MQTT today — credentialed, TLS-ready, with a YAML topic-mapping DSL. A full simulated Kerala pepper farm ships in the binary (eywa sim), so the whole loop runs with zero hardware.

02 — FARM TWIN

Remembers your farm

A persistent SQLite memory of devices, readings, events, conversations, grants and the audit chain. The agent never starts a conversation from zero — and never loses history to a reboot.

03 — REASONING

Any model, anywhere

Anthropic, or any OpenAI-compatible endpoint including local Ollama — stdlib HTTP, no SDKs. Hard per-farm daily token budgets are enforced in code, not policy.

04 — CHANNELS

Talks like a person

Telegram and WhatsApp Business, in Malayalam, Hindi or English. Farmer identity is platform-verified and bound at pairing — it's what action confirmations check against.

Advise freely.
Act cautiously.

The founding principle, and the load-bearing design (ADR 0009): an agent that will tell you anything, instantly — and only touches the physical farm through a deterministic rule engine, with your explicit permission, inside limits you set.

ADVISE FREELY

Ask anything, any hour

Disease risk at 2 am, irrigation math mid-harvest, a market question in Malayalam. Advisory is unlimited within the farm's own token budget — no gatekeeping between a farmer and an answer.

"Why are the pepper leaves yellowing on the east slope?"
"എത്ര വെള്ളം ബാക്കി ഉണ്ട്?"
ACT CAUTIOUSLY

Default-deny. Confirm-by-default. Always logged.

No action runs without a live, operator-issued grant. Every actuation asks the bound farmer identity first, runs inside hard limits (duration, per-day, time-of-day), and lands in a hash-chained audit log that is never pruned. The permit type has no public constructor — possession is proof the engine approved it.

06:00 advisory · skip irrigation (rain 78%)
10:02 valve-2 OPEN 10 min · confirmed by owner · #a41f
10:12 valve-2 CLOSED · auto · #a41f
limits: valve ≤ 15 min · advisory-only until v1.0
CROP SKILLS

Agronomy you can install.

Open, versioned playbooks in a SKILL.md format with a deterministic trigger evaluator — no LLM in the decision path. Written to be reviewed by agronomists, not just engineers.

pepper-foot-rot-watch
v0.1 · shipped

Early warning for Phytophthora foot rot from soil moisture and humidity patterns. Ships in the repo today, marked PROVISIONAL until an agronomist signs off on the thresholds — the caveat is part of the advisory.

deterministic triggers · en + ml advisory
your-crop-here

A skill is one SKILL.md file: crops, required sensors, trigger thresholds, and the advisory text in each language. Fork the pepper skill and adapt it — the evaluator does the rest.

$ cp -r skills/pepper-foot-rot-watch skills/my-skill
MILESTONES

What's built, what's next.

Done — running code

v0.1Advisory runtime: farm twin, MQTT ingest, Telegram, LLM agent with per-farm budgets, crop skills, morning briefing, full farm simulator — and the safety engine: default-deny grants, confirm-by-default, hash-chained audit.
v0.2Pilot readiness: WhatsApp Business channel, Malayalam translations (draft), MQTT auth + TLS, systemd/Caddy deployment, backup/restore, sensor staleness watchdog.
v0.3Admin dashboard: authenticated web UI — farm overview, analytics, deployment health, config with secret redaction, live audit-chain verification.
v0.4Dashboard write phase: grants, config editing (comments preserved), dashboard-triggered actions through the same safety engine, sandbox agent chat, device pairing.

Next

pilotFirst real Kerala farm: WhatsApp business verification, native review of the Malayalam drafts, VPS deployment, sensors in the ground, agronomist sign-off on the pepper skill.
v1.0Real actuation — physical device drivers behind the already-built safety engine. Advisory-only until then, deliberately: autonomy is earned, never assumed.
CURRENT STATUS

Pre-pilot. Engineering is complete through v0.4 — the repo is green end to end (race-tested, linted, safety-fuzzed) and every feature above is demoable today with eywa sim, no hardware needed. Field work is what stands between here and a real farm.