HivePaaS
An open-source, self-hosted PaaS on Docker Swarm. Deploy apps, databases and functions from one VPS to a whole cluster, with SSL, backups and autoscaling built in.
Pomona connects greenhouse sensors, compact AI reasoners, deterministic safety checks, human-approved automation suggestions, and a local dashboard.
Translation pending
Developer toolsPython · JavaScriptGitHub @okyanuOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Open edge-AI platform for greenhouse and hydroponic agriculture: MQTT sensor ingest, SQLite, compact reasoners (tomato, irrigation, nutrient/pH-EC), deterministic safety checks, and a read-only dashboard.
Taken from the repository README
Loading the full README.
Read the full README ↗Open edge AI platform for agriculture — MQTT ingest, reasoning, deterministic safety checks, and dashboards for greenhouse and hydroponic systems.
Anyone can clone, use, fork, and contribute — free under Apache-2.0.
Website · GitHub · Hugging Face · Automation API · Quickstart · Contribute
🌱 Try the guarded greenhouse & hydroponic demo in your browser — no install, no login.
🎯 Try to fool Pomona — break a sensor in a pretend greenhouse and see if Pomona catches it. No install, no login.
Early MVP. Simulated sensors → SQLite-backed API → guarded reasoner pipeline → monitoring dashboard with manual suggestion decisions. No actuator execution. Docker remains the recommended deployment path; local validation also works without Docker. What to expect →
git clone https://github.com/okyanu/pomona.git
cd pomona
cp .env.example .env
./scripts/setup.sh # optional first-time check
./scripts/up.sh
./scripts/sim.sh # new terminal
curl http://localhost:8080/health
python3 examples/tomato_risk_quickstart.py # real sensor JSON -> risk labels
Requirements: Docker Desktop Optional: Python 3.9+ for simulator/tests
| Service | URL |
|---|---|
| Core API | http://localhost:8080 |
| Model router | http://localhost:8081 |
| MQTT | localhost:1883 (login from .env, see SECURITY.md) |
Full guide: docs/INSTALL.md Target: one-command full stack (UI + DB in Docker) — docs/PLUG_AND_PLAY.md Local validation details: docs/LOCAL_VALIDATION.md
When Docker Desktop is unavailable, run the four-service smoke test with the local Python environments:
./scripts/run_local_validation.sh
# or
make local-validation
Run the complete local service test suite with:
make test-local
Run tests and the full local service smoke test together with:
make local-check
It uses temporary SQLite and audit state, verifies both high-risk and routine paths, checks the dedicated Safety Checker, and removes temporary processes and files when it finishes.
Sensor / Simulator → MQTT → pomona-core → DB → model-router
→ reasoner / advisor LLM → safety-checker → automation-engine → dashboard
Hard rule: the LLM advises — it never directly controls actuators. Deterministic rules make every decision, and there is no actuator execution path: automation only raises suggestions for a person to approve or reject. The rules are tested but not field-calibrated.
More detail: docs/architecture.md
| License | Apache-2.0 — free to use and modify |
| Contributing | CONTRIBUTING.md — PRs welcome |
| Code of conduct | CODE_OF_CONDUCT.md |
| Current work | docs/PROJECT_STATUS.md |
| Roadmap | docs/ROADMAP.md |
| Website | Project documentation → |
Good first contributions: tests, docs, simulators, crop templates, dashboard polish.
Fork → branch → make test → open PR.
| Repo | Purpose |
|---|---|
| Pomona website | Main documentation, architecture, roadmap, and guides |
| pomona (this) | Platform — run with Docker |
| Automation API | Live suggestion-only automation service and API documentation |
| Okyanus on Hugging Face | Models, datasets, collection, and browser demo |
pomona-agronomist-llm (not yet published) | Agronomist ML training |
| HF Collection | All published models + dataset in one place |
| HF agronomist | Advisor LoRA weights |
| HF tomato reasoner | Tomato risk-label LoRA (v0.1.7) |
| HF water/irrigation reasoner | Moisture-risk LoRA release candidate (v0.1.8) |
| HF actuator command gate | Advisory research preview; deterministic gate remains final |
| HF greenhouse sensor dataset | Published greenhouse sensor dataset |
Model catalog and release status: docs/MODEL_CATALOG.md
Pomona keeps platform code, routing, deterministic safety logic, and metadata in GitHub. Model weights and published datasets live on Hugging Face.
| Model | Current status | Use now? |
|---|---|---|
Tomato risk reasoner v0.1.7 | Published on Hugging Face, experimental: learned a training shortcut and answers [] on 146 of 153 varied benchmark cases (details) | ⚠️ Research only; the guarded route uses deterministic rules |
Water/irrigation reasoner v0.1.8 | Published release candidate; evaluated only on synthetic, rule-derived cases | ⚠️ Advisory only, behind deterministic validation |
Sensor quality reasoner v0.1.1-boundary | Local candidate, not published | ⚠️ Owner's local integration tests only; not available publicly |
Safety triage reasoner v0.1 | Local candidate, not published | ⚠️ Owner's local integration tests only; not available publicly |
Actuator command gate v0.1 | Published research preview, below standalone release gate | ⚠️ Advisory only; deterministic checker required |
Actuator command gate v0.1.1-hardcases | Regression in local eval | ❌ Do not use |
Actuator command gate v0.1.2-correction | Regression on a held-out (mostly generated) eval | ❌ Do not use |
Nutrient / pH-EC reasoner v0.1.1-correction | LoRA, GGUF, and MLX published; evaluated only on synthetic, rule-generated cases | ⚠️ Only through the deterministic guarded route; the rules make the decision |
Near-term integration chain:
sensor-quality
-> tomato-risk
-> safety-triage
-> deterministic actuator-command gate
-> dashboard / human approval
Future model families are tracked in docs/ROADMAP.md and docs/SMALL_MODEL_FACTORY.md.
Platform v0.1.0-alpha.1 · 11 phases · 2 completed · 8 active/partial · Phase 2 is the primary product focus
| Phase | Name | Status |
|---|---|---|
| 0 | Project setup & open source | ✅ |
| 1 | Local MVP (Docker, core, simulator) | ✅ |
| 2 | Dashboard + database | ⏳ partial — local SQLite, dashboard, audit, Docker, simulation, and backup validation complete; optional sensor-ingestion auth added; broader hardening remains |
| 3 | Tomato reasoner | ⏳ partial — published adapter + guarded API route |
| 4 | Safety checker | ⏳ partial — deterministic tomato/actuator gates |
| 5 | LLM advisor | ⏳ partial — published adapter + router contract |
| 6 | Automation engine | ⏳ partial — YAML rules, dashboard evaluate/approve/reject, bounded SQLite history in local Compose; public API demo remains ephemeral |
| 7 | Public demo | ⏳ partial — static guarded demo and Try to fool Pomona game live |
| 8 | ESP32 devices | ⬜ — logger firmware compiles; not yet bench-tested, no field data |
| 9 | Model registry | ⏳ partial — public YAML registry + lifecycle metadata |
| 10 | Fine-tune pipeline | ⏳ partial — builders, validators, Colab, clean eval |
Details & update rules: docs/PHASES.md · PROJECT_STATUS.md · VERSIONING.md
Copyright 2026 Pomona Contributors. Licensed under Apache-2.0.