diff --git a/docs/archify/hub.architecture.json b/docs/archify/hub.architecture.json index e9f8a40..7993223 100644 --- a/docs/archify/hub.architecture.json +++ b/docs/archify/hub.architecture.json @@ -4,7 +4,7 @@ "meta": { "title": "Central AI Hub", "output": "docs/hub-architecture-map.html", - "quality_profile": "showcase", + "quality_profile": "standard", "views": [ { "id": "fast-command", @@ -38,11 +38,12 @@ { "id": "art", "type": "backend", "label": "Artemis", "sublabel": "phone screen", "pos": [790, 370], "size": [160, 64] }, { "id": "pc", "type": "backend", "label": "Paperclip", "sublabel": "slow jobs", "pos": [790, 480], "size": [160, 64] }, { "id": "web", "type": "cloud", "label": "Web search", "sublabel": "Tavily", "pos": [790, 590], "size": [160, 64] }, - { "id": "app", "type": "backend", "label": "Apprise / NTFY", "sublabel": "notify + email", "pos": [790, 700], "size": [160, 64] } + { "id": "app", "type": "backend", "label": "Apprise / NTFY", "sublabel": "notify + email", "pos": [790, 700], "size": [160, 64] }, + { "id": "email", "type": "backend", "label": "Email Agent", "sublabel": "inbox triage :8790", "pos": [790, 810], "size": [160, 64], "tag": "live" } ], "boundaries": [ { "kind": "region", "label": "Ways in", "wraps": ["phone", "admin", "esp32", "dsh"], "pad": 26 }, - { "kind": "region", "label": "Peers and services", "wraps": ["ha", "spk", "net", "art", "pc", "web", "app"], "pad": 26 } + { "kind": "region", "label": "Peers and services", "wraps": ["ha", "spk", "net", "art", "pc", "web", "app", "email"], "pad": 26 } ], "connections": [ { "id": "phone-in", "from": "phone", "to": "hub", "label": "voice or text" }, @@ -56,6 +57,7 @@ { "id": "to-pc", "from": "hub", "to": "pc", "label": "file job" }, { "id": "to-web", "from": "hub", "to": "web", "label": "search" }, { "id": "to-app", "from": "hub", "to": "app", "label": "notify" }, + { "id": "to-email", "from": "hub", "to": "email", "label": "ask + notify" }, { "id": "pc-back", "from": "pc", "to": "hub", "label": "result", "variant": "dashed" } ] } diff --git a/docs/diagrams/hub-architecture.png b/docs/diagrams/hub-architecture.png index 6d314bb..e054c27 100644 Binary files a/docs/diagrams/hub-architecture.png and b/docs/diagrams/hub-architecture.png differ diff --git a/docs/hub-architecture-map.html b/docs/hub-architecture-map.html index 6acc408..4f1814d 100644 --- a/docs/hub-architecture-map.html +++ b/docs/hub-architecture-map.html @@ -4883,7 +4883,7 @@
- + Central AI Hub A architecture diagram generated by Archify. @@ -4912,7 +4912,7 @@ Ways in - + Peers and services @@ -4921,13 +4921,14 @@ - - - - - - - + + + + + + + + @@ -5073,6 +5074,18 @@ notify + email + + Email Agent · inbox triage :8790 · Peers and services · live + + + + Email Agent + inbox triage :8790 + live + + @@ -5095,56 +5108,60 @@ do it - - speak + + speak - - confirm + + confirm - - screen control + + screen control - - file job + + file job - - search + + search - - notify + + notify - - - result + + + ask + notify + + + + result - Legend - - - Frontend + Legend + + + Frontend - - - Backend + + + Backend - - - Cloud + + + Cloud - - - Security + + + Security - - - External + + + External diff --git a/docs/hub-architecture.mmd b/docs/hub-architecture.mmd index 48c771d..a814685 100644 --- a/docs/hub-architecture.mmd +++ b/docs/hub-architecture.mmd @@ -17,6 +17,7 @@ flowchart LR PC["Paperclip
work bench"] WEB["Web search"] APP["Apprise / NTFY"] + EMAIL["Email Agent
inbox triage"] end PHONE --> HUB @@ -30,6 +31,7 @@ flowchart LR HUB --> WEB HUB --> APP HUB -- "ask only (query)" --> NET + HUB -- "ask only (query)" --> EMAIL HUB -- "slow job (approved)" --> PC ADMIN -- "control + tap to approve" --> NET PC -. result .-> HUB diff --git a/routing.md b/routing.md index 31fc6c5..9095b56 100644 --- a/routing.md +++ b/routing.md @@ -46,7 +46,7 @@ short. Add a topic only when a project really answers it. | Topic (what the user says) | Project | Kind | Status | |---|---|---|---| -| email, inbox, mail, message, unread | `email_agent` | query `/ask` | placeholder — not built | +| email, inbox, mail, message, unread | `email_agent` | query `/ask` | active service | | school, Compass, homework, timetable, class, NHS appointment | `compass_nhs` | query `/ask` | placeholder — not built | | screen time, internet use, time limits, what did the kids do online | `internet_control` | query `/ask` | placeholder — not built | | lights, lamp, switch, plug, timer, reminder, calendar event, device, thermostat | `home_assistant` | command (direct) | active service | @@ -76,7 +76,6 @@ so the file is ready. Replace the placeholder when the project declares its | Project | Expected topics (placeholder) | First build step | |---|---|---| -| `email_agent` | email, inbox, mail | brief build order step 5 | | `compass_nhs` | school, homework, timetable | brief build order step 5 | | `internet_control` | screen time, internet use, limits | brief build order step 6 | | `artemis` | phone screen control | brief build order step 7 |