HomeOps
Inspiration
A service date in a calendar, a warranty in a drawer, and a plumber's quote in a message are hard to use together. HomeOps brings household records into one assistant that can turn a maintenance reminder or a leaking sink into a decision you can review.
What it does
HomeOps remembers appliances, service history, warranties, preferences, and confirmed expenses. Its household view connects each appliance to its records and conversation. A demo clock triggers proactive reminders through the same evaluator used by scheduled work.
The assistant compares providers and asks before committing. In the sink demonstration, the preferred plumber declines, a ₹3,000 alternative exceeds the budget, and a ₹500 inspection requires explicit approval. That approval binds the provider, amount, appointment, and quote revision. Changed terms require fresh consent. The inspection fee does not establish the final repair cost.
A reservation, a completed service, and a confirmed charge are separate records. HomeOps recalls spending with its sources and keeps an inspection distinct from a repaired leak. Its scenarios cover AC maintenance, purifier replacement, warranty expiry, gardening, missed confirmation, and urgent leakage.
Fresh workspaces explicitly choose a synthetic demo, personal setup, or validated data import. Personal mode uses manually sourced quotes and creates a local service plan awaiting contact. A real MCP client can query and continue agent work against the same household records as native chat.
How we built it
TanStack Start, React, Tailwind CSS, and shadcn provide the interface. Eve owns model conversations, household tools, schedules, persistent preferences, and durable approval waits. SQLite holds the authoritative records. A signed local gateway connects separate frontend and agent services.
A real model runs through a local Codex app-server planner. It proposes structured actions that Eve validates and executes. The model cannot bypass the household approval commands. Streamable HTTP MCP exposes the agent workflow to another client.
Local Whisper transcription produces an editable draft before Send. Local speech synthesis can read actual assistant responses. Typed input and a separately labeled recorded-audio fallback remain available. Speech never grants approval.
Challenges
Self-hosting required explicit forwarding of Eve routes and workflow callbacks. Durable approval required database checks, saved invocation identifiers, and safe retries. We also had to distinguish confirmed spending from quotes and separate inspection completion from repair completion.
Direct Sign in with ChatGPT consent timed out, so that alternate route remains inactive. The local Codex adapter works with separately authorized access. Free evaluator inference through November 20 remains unresolved. The in-app browser's live microphone permission handoff also remains unresolved.
What we are proud of
The working sink journey preserves pending approval across a service restart and creates one simulated reservation after explicit consent. A separate inspection report and invoice update the ledger. Native chat and the actual MCP client recall the same totals and sources. The application also supports ordinary household setup without inserting demo records on startup.
What is next
Finish evaluator access and the live microphone handoff. Real provider connections, payments, and cloud multi-user hosting remain future work.
Demonstration disclosures
This entry uses the Alexa+ simulated-experience route. It does not connect to an Alexa device. Household data and provider interactions in the film are synthetic. No real provider contact or payment occurs. The model, household tools, records, approvals, and MCP exchanges are real.
The 116.4-second film contains edited actual application footage, a labeled explanatory diagram, and synthetic documentary narration. Its speech input is a labeled prerecorded computer-spoken test processed through actual transcription and correction. It does not demonstrate a fresh live microphone or human speech.
Music: "Cylinder Eight" by Chris Zabriskie, from Cylinders, licensed under CC BY 4.0. Music source and usage terms. The excerpt begins 24 seconds in, with edited gain and fades. No endorsement is implied.
Log in or sign up for Devpost to join the conversation.