This file maps the first migrated runtime modules to their intended services.
substrateowns the conservative working AbyssOS service base:10-storage.yml.workflowsowns optional n8n workflow automation:10-storage.ymlplus20-orchestration.yml.local-workerowns the canonicalllama.cpppluslangchain-apiworker layer and is meant to compose oversubstrate.fallback-gatewayowns retained Ollama plus LiteLLM fallback/control surfaces; it is explicit and not part of the default substrate.coreremains a compatibility bundle for storage andllama.cppbasics; it is not the default substrate law.intel-workerowns the reviewed OVMS embeddings seam over the canonical local worker path.agenticandintelremain runnable compatibility profiles; current named presets composesubstrateplus worker layers directly.workflows, federation, tools, curation, and observability profiles stay explicit runtime choices.rerankingis an explicit add-on for the OpenVINO Qwen3 reranker API; it is not part of the default Intel worker lane until separately promoted.ragis the first RAG orchestration profile. It layers a lightweight localhost API over existing storage, embedding, rerank, route, and text lanes rather than adding another vector DB or making n8n the retrieval brain.- Service selection and optimization rules live in
SERVICE_SELECTION.md. In short,intel-federationis the lean Intel-aware agent shape, whileintel-fullintentionally adds helper tools and observability and should not be mistaken for the minimum resident runtime.
postgres— transactional stateredis— cache, queue, and ephemeral coordinationqdrant— vector storeneo4j— graph store
n8n— optional workflow automationn8n-task-runners— external n8n JavaScript/Python task runner sidecar, version-matched to n8n and connected through the internal broker on5679
ollama— retained local control and rollback serving surface for the fallback gateway lane and fallback embeddings
ovms— current reviewed Intel and OpenVINO oriented serving surface in promoted presets; the current landed use is embeddings- OVMS, OpenVINO, and future OpenVINO GenAI lanes may host other model classes through separate reviewed profile, preset, machine-fit, or rollout changes
- any migration from OVMS/OpenVINO serving to OpenVINO GenAI, or promotion of a non-embedding Intel-served lane, is a separate reviewed stack change
llama-cpp— canonical OpenAI-compatible GGUF serving surface for bounded local-worker flows- reuses a resolved local GGUF model file and backs the canonical local text worker path; the current reviewed default model label remains Qwen, but the model choice is host-fit and env-overridable
litellm— retained model gateway and routing facade for the explicitfallback-gatewayprofile
langchain-api— canonical agent-facing runtime API on5403- resolves its chat target through a generic runtime-chat seam, with the reviewed default still pointing at
llama.cpp - default embeddings path — disabled unless an explicit embeddings backend is layered in
- may consume a public-safe return policy file and emit runtime return events
- now also exposes opt-in
POST /run/federatedfor live advisory consumption ofroute-apiplaybook and memo seams - returns the normal model answer plus a redacted
advisory_tracewhen the federated path is enabled - emits a redacted runtime trace for
/run,/run/federated, andPOST /langgraph/smoke, storing thread/checkpoint/trace inventory under${AOA_STACK_ROOT}/Logs/langgraph-inventoryand best-effort OTLP spans through Alloy/Tempo - exposes bounded read routes for that inventory at
/langgraph/inventory,/threads,/threads/{thread_id}/checkpoints,/traces, and/traces/{trace_id}without storing raw prompt, answer, or advisory payload text - future gateway cache-lane status contract is documented in
mechanics/runtime-lifecycle/parts/status-readouts/docs/GATEWAY_CACHE_POLICY.md; it is a status-only runtime artifact and does not add new HTTP endpoints in this contract surface - future runtime usage and budget readout is documented in
mechanics/runtime-lifecycle/parts/status-readouts/docs/USAGE_BUDGET_POLICY.md; it remains a bounded runtime artifact, not routing, billing, or quality authority
langchain-apioverlay — switches the current reviewed embeddings path to OVMS- adds explicit OVMS runtime dependency for Intel-aware profiles
- does not silently promote an Intel-served text lane, but it can support one when the generic runtime-chat seam is explicitly repointed and separately reviewed
langchain-api-llamacpp— bounded alternatellama.cppAPI surface used for explicit benchmark and promotion work- keeps the current reviewed OVMS embeddings lane in place for the Intel-aware posture while leaving broader Intel-serving work to separate reviewed changes
- keeps
POST /run/federatedenabled on the sidecar path so governed execution can consume advisory playbook and memo seams while remaining fail-closed - joins the shared
abyss_defaultruntime network so the advisoryroute-apiremains reachable by service name even though the sidecar runs in its own compose project
LangGraphis now the adopted bounded execution layer for long-horizon and autonomy-focused local-worker flows- it remains a CLI-side execution surface rather than a long-running network service
- the original
aoa-langgraph-pilotremains useful as the staged-edit comparison and fixture surface aoa-governed-runis the first fail-closed governed mutation lane, gated byaoa-status --autonomy --jsonand scoped toabyss-stack- the same lane now exposes canary request materialization, promotion summaries, and operator triage through
aoa-governed-run status - governed execution still consumes playbook and memo context through advisory seams; it does not turn
route-apiinto an execution service mechanics/diagnostic-spine/parts/doctor-readiness/docs/LOCAL_OPS_DOCTOR_SPLIT.mdpreservesaoa-doctoras readiness-only while future local ops readout stays a separate bounded status surface
route-api— localhost-only federation seam reader for mirroredaoa-agentscontracts,aoa-routing advisory routing surfaces,aoa-memorecall surfaces,aoa-evalseval selection surfaces,aoa-playbooksactivation/composition advisory surfaces,aoa-kagretrieval/regrounding surfaces, and the source-ownedtos-sourcehandoff companion- consumes only runtime-local public-safe mirror data
- exposes thin routing metadata, structured advisory routing, bounded memo inspection, structured eval selection, playbook activation/composition inspection,
/kag/*retrieval/regrounding inspection, and filesystem-first memo/eval export discovery - exposes
GET /observability/datasourcesas a read-only Grafana datasource inventory derived from provisioned datasource YAML, with secrets andsecureJsonDataomitted - remains an advisory facade; it does not execute the route itself, while
langchain-apiis now the first live consumer of those mirrored seams
rerank-api— localhost-only OpenVINO Qwen3 reranker API on5405- wraps the host-validated CausalLM-style Qwen3 reranker scorer through
POST /v3/rerankandPOST /rerank - keeps
GET /healthlightweight and loads the model lazily on the first rerank request - unloads the model after an idle window by default
(
AOA_RERANK_IDLE_UNLOAD_SEC=900) so occasional reranking does not keep a multi-GB OpenVINO model resident forever;POST /admin/unloadis available for explicit localhost memory relief - exits after idle unload by default (
AOA_RERANK_EXIT_AFTER_IDLE_UNLOAD=true) so Podman restarts a clean lightweight API process and returns allocator-held memory to the host - uses
/srv/abyss-machine/cache/aifor the model and OpenVINO cache by default, not the limited system root
rag-api— localhost-only RAG orchestration API on5406- consumes
Configs/rag/sources.json,agentic-graph.v1.json, anddag-jobs.v1.jsonas public-safe runtime manifests - uses Qdrant for source-linked chunk retrieval, OVMS embeddings through
langchain-api, optionalrerank-apiscoring,route-apiadvisory surfaces, andlangchain-apianswer generation - exposes
GET /sources,GET /dag/jobs,GET /agentic-rag/graph,GET /semantic-inventory,POST /ingest/source,POST /retrieve,POST /answer, andPOST /agentic-rag/run GET /semantic-inventoryis a bounded memory-space read route for Postgres schema/freshness, Neo4j label/relationship/freshness, RAG sources, and agentic graph shape; it does not return rows, graph properties, source documents, or credentials- keeps n8n, Dagster, and Temporal out of the resident RAG path; those remain explicit DAG/integration lanes until a later promotion proves they should be always-on
qwen-tts— local speech generationtts-router— speech routing and voice selection facade
docs-api— internal docs helper surfaceaoa-browser— internal browser automation helper
tos-graph— corpus and philosophy graph localhost helper for Tree of Sophia graph curation on5410- reads the ToS-owned whole-corpus index and materialized philosophy graph projection from the mounted
AOA_TOS_ROOT - keeps Neo4j in projection-only posture and does not treat mirrored
tos-sourceadvisory surfaces as canonical edit input - current slice exposes a bundled WebGL localhost workbench, health,
/api/corpus/*,/api/philosophy/*, and corpus/philosophy Neo4j projection sync while writeback remains absent - operator shortcut:
scripts/tos-upstarts the curation profile, waits for the helper, and opens the local workbench when possible;scripts/aoa-tos-graphis the explicit stack command behind it
babelvox-tts— opt-in BabelVox/OpenVINO TTS API on5102- mounts the host-owned TTS Hugging Face cache under
/srv/abyss-machine/cache/ai/ttsso offline model lookup does not spill into the system root - keeps
GET /healthlightweight and loads BabelVox lazily on the first synthesis request - unloads after an idle window by default (
AOA_BABELVOX_TTS_IDLE_UNLOAD_SEC=900) and can exit after unload so Podman returns allocator-held memory to the host - is experimental and must not replace the protected host warm TTS route without separate hot-path latency and memory evidence
prometheus— metrics collectiongrafana— dashboardsalertmanager— alert routingcadvisor— container metricsloki— internal-only log storage and LogQL query surfacetempo— localhost-only Tempo trace backend on3200with internal OTLP ingest from Alloyalloy— Grafana Alloy rootless Podman log ingestion into Loki, journald-first with a file-log fallback, plus localhost-only OTLP trace ingest on4317/4318forwarded to Tempo
Expected localhost-only services may include, depending on selected profiles:
- postgres
- redis
- qdrant
- neo4j
- n8n
- ovms
- llama-cpp
- langchain-api
- langchain-api-llamacpp
- route-api
- rerank-api
- rag-api
- tos-graph
- qwen-tts
- tts-router
- babelvox-tts
- prometheus
- grafana
- alertmanager
- loki
- alloy
Expected internal-only services include:
- docs-api
- aoa-browser
- cadvisor
- loki
- alloy
systemd/user/managed-units.txt is the source-managed allowlist for host-local
user units that can be linked from the deployed Configs mirror with
scripts/aoa-install-systemd --all-user-units.
The allowlist covers the current working user-service surface: the stack compose
runner, warm dictation and TTS services, the TTS keep-warm timer, the
gemma4.spark resident and timers,
nervous capture/index/semantic maintenance, process/storage/topology/doctor
readouts, ydotoold, and the AoA receipt watcher path units.
These units are orchestration adapters. They may call host-owned commands such
as abyss-machine, but their presence here does not transfer host-layer
implementation authority into abyss-stack.
systemd/system/managed-units.txt is the separate privileged support allowlist.
It covers the dictation hotkey listener and lightweight machine refresh,
observability, and power-profile timers. Install it with
pkexec .../aoa-install-systemd --system-units; the install path writes
root-owned unit files and reloads systemd without restarting or enabling
services.