Ops Copilot
A role-aware assistant over live system state, plus the deterministic rule engine that grounds it. This surface hosts all agent modes for the demo; in production each role gets the copilot inside its own surface.
Rule engine
Needs attention
Dispatch queue
- NowBelltower Loft: Washing machine leaked during last stay — needs an assigneeSuggested: Garonne Services (0.3 km away (~1 min))
- TodayBelltower Loft: Cleaning blocked: Washing machine leaked — floor needs drying and machine check before guest arrival tomorrow. — needs an assigneeNo staff or provider attached yet
- TodayLarch Ridge Chalet: Smart lock battery at 18% — needs an assigneeSuggested: Léa Fabre (159.2 km away (~249 min))
- TodayLarch Ridge Chalet: Install a bean-to-cup coffee machine before the 10 July group — needs an assigneeSuggested: Lumina Studio (57.3 km away (~90 min))
- TodayTidewater Villa: Critical stock: Bath towels — needs an assigneeNo staff or provider attached yet
In the field today
- TodaySame-day turn at Larch Ridge Chalet — ready by 16:00Departure and arrival on 2026-07-02
- NowBlocked clean at Belltower Loft: Washing machine leaked — floor needs drying and machine check before guest arrival tomorrow.Cleaner reported a blocker
- FYIMarketplace offer out: Mid-stay refresh — Meadowbrook Farmhouse (Annecy)Expires 2026-07-02 18:00
- FYIMarketplace offer out: Pre-season deep clean — Larch Ridge Chalet (Chamonix)Expires 2026-07-03 12:00
- FYIMarketplace offer out: Turnover clean — Tidewater Villa (Cassis)Expires 2026-07-04 18:00
Inventory
Cleaning on 2026-07-02 is blocked — Washing machine leaked — floor needs drying and machine check before guest arrival tomorrow.. Next guests arrive 2026-07-03.
Suggested: Contact the cleaner, resolve the blocker or dispatch a backup.
Keypad 2 (mock) (NK-MOCK-1105) is unreachable. A cleaning or arrival depends on this lock soon.
Suggested: Verify the bridge/wifi at the property; provide the manual key fallback to whoever enters next.
Smart Lock 4 Pro (mock) (NK-MOCK-1103) is at 18% battery. A cleaning or arrival depends on this lock soon.
Suggested: Schedule a battery swap on the next visit and confirm the key-box fallback code.
On hand 0, par 12, reorder point 6.
Suggested: Approve the open restock task before the next turnover.
Belltower Loft — Departing guest reported water under the machine. Floor dried; machine must be checked before next use. (status: reported).
Suggested: Schedule an intervention before the next arrival.
Haruto Tanaka arrives 2026-07-03 but every covering cleaning job is blocked or unassigned.
Suggested: Unblock or re-dispatch the turnover before the guest arrives.
Owner invoice due 2026-06-15 remains unpaid.
Suggested: Send a payment reminder.
On hand 2, par 8, reorder point 3.
Suggested: Approve the open restock task before the next turnover.
On hand 10, par 40, reorder point 12.
Suggested: Approve the open restock task before the next turnover.
vrbo feed for Tidewater Villa — HTTP 403 — feed token expired. Turnovers from this channel may be missing.
Suggested: Re-authorize the feed; reconcile the channel calendar manually meanwhile.
Checkout 10:00, next arrival from 16:00. On plan (10:00–13:55, Karim Haddad).
Suggested: No action needed — monitored.
Contact the cleaner, resolve the blocker or dispatch a backup.
Verify the bridge/wifi at the property; provide the manual key fallback to whoever enters next.
Schedule a battery swap on the next visit and confirm the key-box fallback code.
Approve the open restock task before the next turnover.
Schedule an intervention before the next arrival.
Unblock or re-dispatch the turnover before the guest arrives.
Send a payment reminder.
Approve the open restock task before the next turnover.
Approve the open restock task before the next turnover.
Re-authorize the feed; reconcile the channel calendar manually meanwhile.
GET /api/ops/sweep Authorization: Bearer $OPS_SWEEP_TOKEN # e.g. every 30 min: curl -fsS -H "Authorization: Bearer $OPS_SWEEP_TOKEN" \ https://<host>/api/ops/sweep
Pure function of system state — re-runs return byte-identical output until reservations, stock or invoices change. LLM extension points: insight summarization, brief rewriting, reply polishing (see the implementation report for the exact seams).
Good morning Nadia — no cleans scheduled for 2026-07-02. Enjoy the day off; stay reachable for same-day changes.
Good morning Karim — your route for 2026-07-02 (1 stop): 1. 10:00–13:55 · Larch Ridge Chalet (Chamonix) — SAME-DAY TURN, ready by 16:00 Drive: ~91 min from previous stop Access: Key box behind the ski-room shutter, right side. Snow chains for the access road are in the boot room (winter). Note: Sauna: switch off at the fuse panel after cleaning, never mid-cycle Note: Check firewood rack — restock from the woodshed if below half Flag any blocker in the app the moment you hit one. Merci !
Good morning Paula — your route for 2026-07-02 (1 stop): 1. 11:00–12:30 · Tidewater Villa (Cassis) Drive: ~26 min from previous stop Access: Nuki smart lock on main gate + front door; codes auto-issued per job. Manual override key in lockbox by the pool shed. Note: Pool heating panel is in the pump room — do not change setpoints Note: Close all shutters on the sea side when leaving Flag any blocker in the app the moment you hit one. Merci !
Good morning Inès — your route for 2026-07-02 (1 stop): 1. 10:00–11:35 · Belltower Loft (Bordeaux) Drive: ~1 min from previous stop Access: Street door: badge in key box (code on job sheet). Loft door is a classic key — two turns. Note: Mezzanine ladder: check the locking pin after cleaning Note: Courtyard is shared with the florist — keep the passage clear Flag any blocker in the app the moment you hit one. Merci !
Dear Chidi Okafor, Thank you for asking ahead. We can offer a late checkout until 13:00 at Tidewater Villa — our housekeeping route has been adjusted accordingly. Please leave the keys as described in your arrival notes. Safe travels, The conciergerie team
Dear Haruto Tanaka, A quick heads-up: housekeeping at Belltower Loft is running slightly behind today. The apartment will be ready from 17:30. We are sorry for the inconvenience — a small welcome attention will be waiting for you. Thank you for your patience, The conciergerie team