An autonomous AI agent that learns, remembers, and acts.
Your home already generates thousands of data points every hour — temperature sensors, motion detectors, door states, power draws. Thane is an AI agent that actually understands them. It knows an open garage door for two hours is unusual, that someone in the kitchen at 2am doesn't want bright lights, and that the dryer finishing three hours ago but still drawing power is worth mentioning. It learns your home, your preferences, and your routines through conversation — and it remembers.
Everything runs on your hardware, behind your firewall. Thane works with any model runner that speaks a standard inference API — local or cloud, your choice. Written in Go. Single binary first, with an optional container image. No Python, no accounts to create.
Autonomous, not subjected. Home Assistant's Assist can only see entities you pre-select. Thane has full API access — it discovers devices, understands context, and acts on its own.
Memory that persists. Tell it once that you like the lights dim after 10pm and it just knows. Facts, preferences, routines — all learned through natural conversation and remembered across restarts.
Private by architecture. Every conversation, every fact, every contact lives in SQLite on your machine. Cloud models are available but nothing requires them. Privacy is structural, not a policy promise.
Smart about cost. The frontier model thinks; a small free local model does the work. Delegation keeps 90%+ of tool calls at zero API cost.
Single binary. go build and you're done. One command: thane.
git clone https://github.com/nugget/thane-ai-agent.git
cd thane-ai-agent
just build && just init
# Edit ~/Thane/config.yaml with your HA token, Ollama URL, and MQTT broker
just servePoint Home Assistant's Ollama integration at http://thane-host:11434, select model thane:latest, and start talking.
Your First Thane — Complete onboarding guide with hardware, models, and deployment.
Tagged releases publish locally prepared release artifacts on GitHub plus a
multi-arch container image on ghcr.io/nugget/thane-ai-agent. The intended
release path is to build, sign, notarize, staple, and upload the macOS
installer product archives alongside the Linux tarballs from a local release
workstation via just. Those macOS artifacts install thane into
~/Thane/bin, carry first-party installer metadata for inspection, avoid a
machine-wide admin prompt, and can be stapled cleanly after notarization.
GitHub Actions publishes the tagged container image and its provenance
attestation. The preferred operator workflows are:
just release-github 0.9.0just release-github 0.9.0 prereleasejust deploy-macos-pkg user@host
See Release Engineering for the full workflow and credential requirements.
- Philosophy — Why Thane exists and why Home Assistant is foundational
- Architecture — System design and component overview
- Trust Architecture — Safety through structure, not prompts
- Getting Started — Build, configure, run
- Home Assistant — HA integration setup
- Configuration — Config guide by concern
- Deployment — macOS and Linux service installation
- Release Engineering — GitHub release and pkg-based live-host deployment workflows
- Delegation & MCP — Orchestrator/delegate pattern and MCP tool servers
- Tools Reference — All 80+ native tools
- Full Documentation — Guided tour of all docs
Thane — A Scottish term for a landholder who managed an estate on behalf of the crown. Your home automation estate deserves a capable steward. (Project History)
Contributions welcome. See CONTRIBUTING.md.
Apache 2.0 — aligned with Home Assistant.