4.5 KiB
title, type, status, created, updated, tags, aliases, skills, tools
| title | type | status | created | updated | tags | aliases | skills | tools | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Central AI Hub | project | active | 2026-10-10 | 2026-09-26 |
|
|
|
|
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
flowchart LR
subgraph IN["Ways in"]
PHONE["Phone app<br/>wake word + voice"]
ADMIN["Admin app<br/>restricted actions"]
ESP["ESP32 voice<br/>Hey Jervis"]
DSH["dsh chat"]
end
HUB{{"HUB<br/>hear - understand - check - route - answer"}}
subgraph OUT["Destinations"]
HA["Home Assistant"]
SPK["Speakers<br/>Jervis TTS"]
NET["Internet control"]
ART["Artemis<br/>phone screen"]
PC["Paperclip<br/>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
- AI Context (Outline): https://outline.lab.audasmedia.com.au/collection/central-ai-hub-fYfUzsMooS
- Contract:
/ask— seedocs/ask-contract.mdin 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