Security-driven AI automation
A security-first, self-hosted AI automation platform for your home, the open web, and your finances — powered by Claude. One console over home automation, open-source intelligence, live system telemetry, a confirm-first finance desk, and a permanent event archive — running on hardware you own and reachable only over a private mesh.
Modules
Every tab is a real dashboard wired to real hardware, real feeds, and real money. The tab bar itself is data — reorder it, disable modules, add custom tabs, drag widgets between them. Select a tab chip to walk each surface.
The main viewscreen: live system vitals beside the Computer Core — a streaming Claude chat wearing the ship's-computer persona, driven by your local Claude subscription instead of the billed API. A real PTY terminal, Home Assistant tiles, open trades, and animated holo tiles complete the console.

Streaming Claude chat over the Agent SDK, authenticated with your Claude subscription — no API billing. Three transcript roles: COMMAND, COMPUTER, and amber CORE ALERT bubbles pushed by the server's proactive watchers.
Status sweepHome state reportGoodnight routineAway modeEXECPer-core load with SVG sparklines, RAM + SWAP meters, CPU temperature with amber max flags, and a live top-processes table.
CPU CORES C0–C7RAM / SWAPTEMP · MAXTOP PROCESSESA real shell — xterm.js in the panel, a genuine PTY on the server, streamed over WebSocket with resize and kill control. Not an emulation.
XTERM.JSNODE-PTY1000-LINE SCROLLBACKHome Assistant climate cards with five interchangeable thermostat controls (radial, dual-handle range, overlay, inline, sheet), laundry, litter robot, cat colony, ambient weather, and read-only open trades with bracket phases.
THERMOSTAT ×5 VARIANTSLAUNDRYLITTER ROBOTCOLONYOPEN TRADES⌘K Uplink
The headline AI surface: press ⌘K anywhere on the HOME tab and state an intent in plain language. Homunculus Core compiles the sentence into a numbered operation plan against a manifest of your actual devices — and shows you the plan before anything moves.
▸ "movie mode, but keep the reading lamp on and lock up"
Operation plan · 4 ops · compiled against manifest v12
scene.turn_onscene.movie_modeOKlight.turn_onlight.reading_lamp · {"brightness_pct": 40}OKlock.locklock.front_doorOKcover.close_covercover.garage_doorHELD — CONFIRM 04: CLOSE GARAGEState only. Any agent may look at anything, any time. Looking is always free.
Routine and reversible — lights, scenes, media, climate. The agent may act alone; every act is logged to the archive and the audit chain.
Unlocking doors, moving covers and garage doors — anything that can't be undone from a dashboard comes back HELD with a per-op confirm button. A human approves that specific operation, or it never runs.
The same endpoint serves autonomous agents — the palette is a window onto the exact interface the agents use, and execution re-validates every plan against the manifest rather than trusting a round-tripped one. Omission is the primary defence: a domain with no manifest entry has no actions at all, however the request is phrased.
Intelligence
One model, many stations — every AI surface in Homunculus Core runs on your local Claude subscription through the Agent SDK. No per-token API billing, and a kill switch over every live session.
goodnight, awaydata-agent-id on every controlArchitecture
A hybrid client–server system — one Node backend, thin UIs everywhere. Desktop, phone, watch, and browser all render the same live state over WebSocket.
Every tab body is a widget on a data-driven layout that persists server-side, so the desktop shell and the phone agree. Drag a widget's header to move it, its corner to resize, or drop it on another tab's chip to relocate it. 1,368 TypeScript tests and 174 Python engine tests keep it honest.
Security posture
The bridge lives in the house, not the cloud. The Computer Core drives a logged-in subscription instead of a billed API, and the private data never touches an external service.
HOMUNCULUS_TOKEN127.0.0.1 only by defaultSetup
A first-run wizard configures only what you'll use — nothing is mandatory, and SKIP SETUP is always on the table.
Toggle the tabs you want — each card says needs n keys or no keys required. Tabs you turn off disappear from the bar; nothing is deleted.
Only the credentials your chosen modules need, as write-only fields with docs deep-links. Stored in your OS keychain, encrypted — Homunculus Core never shows a key again after you save it. Leave any blank and the module runs in reduced mode.
Star your default tab and ENTER HOMUNCULUS. A companion Home Assistant wizard (bash + PowerShell) detects your environment — Docker, HA OS, Pi, or an existing install — wires up HA_URL / HA_TOKEN, and never echoes the token.