---
title: Central AI Hub
type: project
status: active
created: "2026-10-10"
updated: "2026-09-26"
tags:
- ai
- project
- architecture
- central
- hub
- showcase
aliases:
- The Hub
- central_ai_llm_master
skills:
- service design
- intent routing
- authorization and approval flows
- event-driven integration
tools:
- OmniRoute
- Home Assistant
- Jervis
- Paperclip
- Artemis
- Apprise
---
# Central AI Hub โ Overview
## ๐ก What is this project?
One small service that every way in reaches every ability through. The phone app,
the house voice (Jervis), chat (dsh), and the admin app all talk to the Hub. The
Hub works out what was asked, checks who asked, sends it to the right place, and
returns a short reply.
It exists to stop the same abilities being built three times. Build once. Every
way in gets it.
The Hub does five steps: **hear โ understand โ check โ route โ answer**.
It is **not** a central brain. It holds no personality and no memory. It is
**not** Paperclip โ it never waits minutes for an answer.
## ๐ Key Highlights (Portfolio & Employment)
- **Concept**: A thin shared router over several AI systems, with one place for
safety and approval. Not a monolith.
- **Tools & Skills Showcase**: service design, intent routing with an LLM,
authorization and tap-to-approve flows, deterministic handling of
high-consequence actions, integration across MQTT, Home Assistant, Paperclip,
and a local model gateway.
- **Practical Value**: One place to add a new ability. One place to control who
may do what. The house, the phone, and chat all behave the same.
## ๐ Architecture & Flow
```mermaid
flowchart LR
subgraph IN["Ways in"]
PHONE["Phone app
wake word + voice"]
ADMIN["Admin app
restricted actions"]
ESP["ESP32 voice
Hey Jervis"]
DSH["dsh chat"]
end
HUB{{"HUB
hear - understand - check - route - answer"}}
subgraph OUT["Destinations"]
HA["Home Assistant"]
SPK["Speakers
Jervis TTS"]
NET["Internet control"]
ART["Artemis
phone screen"]
PC["Paperclip
slow jobs"]
WEB["Web search"]
APP["Apprise / NTFY"]
end
PHONE --> HUB
ESP --> HUB
DSH --> HUB
ADMIN --> HUB
HUB --> HA
HUB --> SPK
HUB --> NET
HUB --> ART
HUB --> PC
HUB --> WEB
HUB --> APP
PC -. result .-> HUB
```
### The dividing line
> Does this need a decision, or does it need to happen?
- **Happen** โ fast and certain. Go straight to the destination. No LLM in the
action path.
- **Decision** โ slow, multi-step, worth recording. Send to Paperclip.
### How it relates to the other projects
Every other project is a **peer**, not a sub-project. Each has its own folder,
repo, port, interface, and build. Each works without the Hub. The Hub is an
**extra** way in.
- The **Hub asks** a project ("what does Harry have on today?") using one small
contract, `/ask`. The project answers about its own data.
- A **project tells** the Hub something ("overdue homework found").
- **n8n triggers** the project (scan the inbox, scan the school).
- **High-consequence control** (cut the kids' internet) does **not** go through
the Hub. The admin app calls the internet control service directly, with
confirmation on the phone.
### Safety
- Voice is shared and has no identity. Anyone in the house can speak.
- The admin app is the only trusted door for restricted actions.
- A spoken keycode is not the lock. Voice may ask; the admin app confirms with
"Did you ask for this?".
## ๐ Related Notes & Links
- Gitea Repo: https://gitea.lab.audasmedia.com.au/sam/central_ai_llm_master
- Interactive Map: [Archify Map](https://maps.lab.audasmedia.com.au/central_ai_llm_master/docs/)
- AI Context (Outline): https://outline.lab.audasmedia.com.au/collection/central-ai-hub-fYfUzsMooS
- Contract: `/ask` โ see `docs/ask-contract.md` in the repo.
- Local path: `/home/sam/paseo/projects/central_ai_llm_master/`
- Related: [[Home Voice Assistant System]] ยท [[Family Home Lab]] ยท [[Artemis on GrapheneOS Pixel Mobile]] ยท [[Front Door Cam]]