HivePaaS
Docker Swarm 기반 오픈소스 자체 호스팅 PaaS, SSL·백업·자동 확장 지원
Pomona는 온실 센서·AI 추론·안전 검증·인간 승인 자동화 제안·대시보드를 연결
Pomona connects greenhouse sensors, compact AI reasoners, deterministic safety checks, human-approved automation suggestions, and a local dashboard.
개발 도구Python · JavaScriptGitHub @okyanu온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기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.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
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.