m5/org/openalice-selfhosted

openalice-selfhosted

Run the **whole OpenAlice stack on your own box** with a single `docker compose up`. Designed for integrators who want the platform without renting it from us.

Features
3
Status
·unknown
Last activity
1mo ago
Branch
mvp

Architecture rating

D1mo ago
consistencyB-

Strong substrate adoption: manifest 100/100, drift 100/100, uniform Traefik subdomain routing (api/auth/alice/persona) and compose profiles matching org conventions; deviates only in lacking deeper feature coverage (44/100).

docsB-

Valid manifest (100/100) with clear summary, integrator-focused README, and an AGENTS.md, but @feature annotations are weak (features 44/100, only 3 features) — solid orientation docs, thin in-code/feature-level annotation.

reliabilityD

docker-compose profiles (core/ai/full) plus a smoke-test.sh give basic deploy structure, but no verified healthchecks, restart policies, timeouts, graceful-shutdown, or idempotency signals; reliability is implicit in compose defaults rather than declared.

securityD

TLS terminated by Traefik with Let's Encrypt across all subdomain routes, but no visible rate-limiting, security headers, or verified secret handling at the compose layer; authn/SSRF/injection defense is delegated entirely to the bundled services (auth, social-api), unverified here.

testingD

A single smoke-test.sh is the only test artifact; inspector found no analyzable source (expected for an infra repo) and there are no unit/integration tests covering critical deploy paths — coverage of the bring-up flow is minimal.

data layerD

Only a single init-db.sql bootstrap; manifest owns_tables is empty, with no migration framework, FK/constraint definitions, or RLS/tenant isolation at this layer — schema concerns are pushed down to individual services and absent from this repo.

observabilityD

Atlas health probe is down (builder error on unresolved ${DOMAIN}, uptime_24h 0%); no metrics, tracing, structured-log, or health-probe wiring at the compose layer beyond smoke-test.sh — observability essentially absent at this level.

source · auto-grader-2026-06-16

Ecosystem manifest

.atlas-deps.yml

One-box self-hosted deployment — docker-compose stack with profiles core/ai/full bundling every OpenAlice service.

Runtime deps
  • via SHARED_JWT_SECRET
    Bundled auth service; issues and verifies JWTs for all co-located services
  • via OPENALICE_ML_URL
    Bundled ML gateway; alice routes embedding + NER requests through it
  • via NER_SERVICE_URL
    Bundled NER service; ml-gateway fans out entity-recognition requests
  • via DATABASE_URL
    Bundled platform API serving /api routes behind Traefik
  • via VOICE_SFU_URL
    Bundled SFU; social-api delegates audio/video sessions to it
  • openalice-personahttpoptional
    via PERSONA_JWT_SECRET
    Bundled persona server (profile=persona/full); serves avatar state to rt
Consumed env
  • DOMAIN
  • ACME_EMAIL
  • SHARED_JWT_SECRET
  • DB_PASSWORD
  • MINIO_USER
  • MINIO_PASSWORD
  • ML_KEY
  • ML_ADMIN_KEY
  • A2A_KEY
Exposes
  • docker_compose_stack: openalice-selfhosted (profiles: core / ai / full)
  • http_endpoint: https://${DOMAIN}/api (social-api via Traefik)
  • http_endpoint: https://${DOMAIN}/auth (auth via Traefik)
  • http_endpoint: https://alice.${DOMAIN} (alice agent via Traefik)
  • http_endpoint: https://persona.${DOMAIN} (persona-web via Traefik, profile=full)

Roadmap · what's planned next

1% avg4 goals

Code composition

tokei · loc
398loc
  • YAML75.1%
  • Shell24.1%
  • SQL0.8%
  • YAML75.1%· 299
  • Shell24.1%· 96
  • SQL0.8%· 3
Language% codecodecommentsblanksfiles
YAML75.1%29926201
Shell24.1%9620242
SQL0.8%3101
Markdown0.0%069282

Telemetry ribbon · last 90 days

1 event
MAYJUNJUL2026-05-21 · commit · new commit 54d358e → b1fc5fcNOW
commitmanifestlifecyclekind

selfhosted/deploy

1 feature
  • selfhosted.compose.full-stack
    docker-compose.yml:8
    docker-compose.yml — one-box deployment with profiles core/ai/full. Traefik (LE) + Postgres + social-api + voice + (opt) NER + ml-gateway + Persona.
    file:docker-compose.yml
    since 0.1.0

selfhosted/scripts

2 features
  • selfhosted.scripts.setup
    setup.sh:2
    setup.sh — idempotent bootstrap. Generates .env with random JWT + DB secrets, prompts for DOMAIN + ACME_EMAIL. Never clobbers an existing .env.
    script:setup.sh
    since 0.1.0
  • selfhosted.scripts.smoke-test
    smoke-test.sh:2
    smoke-test.sh — post-deploy gate, walks platform-api + SFU health routes. Non-zero exit on any failure → wire into CI for a deploy gate.
    script:smoke-test.sh
    since 0.1.0