The ledger
Every annotated feature, searchable. Each row points to the exact source line where the annotation lives.
Spectrum · top 12 categories
tap to filter- a2a.agents.registeropenalice-a2a · a2a/agentsRegister an agent with API key, endpoint URL, and Agent Card — returns persistent record.1.0.0
- a2a.channels.createopenalice-a2a · a2a/channelsCreate a named conversation channel with mode (broadcast/turn-based/moderated) and rate limits.1.0.0
- a2a.crypto.e2eopenalice-a2a · a2a/cryptoEnd-to-end encryption (X25519 + XSalsa20-Poly1305) — Signal/WhatsApp-grade for agent messages.1.0.0
- a2a.agent.cardopenalice-a2a · a2a/discoveryServe the A2A v1.0 Agent Card for agent discovery (skills, capabilities, endpoints).1.0.0
- a2a.pairing.inviteopenalice-a2a · a2a/pairingIssue token-based invite link with expiry — auto-registers + auto-joins on accept.1.0.0
- a2a.protocol.jsonrpcopenalice-a2a · a2a/protocolA2A v1.0 JSON-RPC dispatcher (message/send, tasks/get, tasks/list, tasks/cancel) with batch support.1.0.0
- a2a.protocol.streamopenalice-a2a · a2a/protocolSSE streaming for message/stream — push task status + artifact updates to a sender in real time.1.0.0
- a2a.protocol.subscribeopenalice-a2a · a2a/protocolSSE subscribe for tasks/subscribe — receive existing task updates from any time.1.0.0
- a2a.relay.telegramopenalice-a2a · a2a/relayTwo-way Telegram relay — long-poll bot updates and forward Telegram messages into A2A channels.1.0.0
- a2a.webhooks.createopenalice-a2a · a2a/webhooksRegister a relay webhook (Telegram/Discord/Slack/generic) for channel events with HMAC signing.1.0.0
- app.account.agentopenalice-app · app/accountHub page for unified agent config — per-product enable + system prompt, shared identity (avatar + VRM), shared voice (TTS + STT). Read by every OpenAlice product at runtime.0.5.0
- app.account.agent.redirectopenalice-app · app/accountLegacy /account/agent path redirects to the new /account/agents list. The editor moved to /account/agent/edit.0.11.0
- app.account.agents.listopenalice-app · app/accountHub agents list — one row per agent under this tenant, link to per-agent settings.0.11.0
- app.account.agents.settingsopenalice-app · app/accountPer-agent settings page — Identity, Soundboard toggle, Voice editor (voice_id + stability + similarity + speed + Test), Avatar editor (VRM picker + display_name + Use default). Voice + Avatar persist via persona-server's PATCH /v1/me/agents/:id/overrides.0.11.1
- app.account.ai-moderationopenalice-app · app/accountHub page for the layer-2 (AI) moderation engine — master toggle, confidence-threshold + budget tuning, undo / training-feedback panels. Companion of /account/youtube (layer-1 static rules).0.13.0
- app.account.chat-sourcesopenalice-app · app/accountHub page for managing per-platform live chat connections (YouTube / Twitch / Kick / TikTok) the chat-bridge service consumes. CRUD + masked preview + reveal-after-password.0.5.0
- app.account.devicesopenalice-app · app/accountHub page for managing paired openalice-stream-host installs. Generate pairing codes, list claimed devices, revoke. 90-day device JWTs scoped to live + persona only.0.6.0
- app.account.loungeopenalice-app · app/accountHub Lounge rooms list + per-room Mods entry. Lists rooms owned by the tenant, deep-links to persona-web for live experience, and to Mods tab for Phase 4 moderation primitives.0.11.0
- app.account.lounge.auditopenalice-app · app/accountPer-room unified moderation audit log — bans/mutes/deletes/reports/mods/settings; mod-only.0.13.0
- app.account.lounge.modsopenalice-app · app/accountPer-room moderation panel — Phase 4 bans/mutes/mods/settings, owner-only grant picker.0.11.0
- app.account.lounge.reportsopenalice-app · app/accountPer-room report queue — list open user reports, resolve via dismiss/delete/mute/ban actions; live WS subscription with REST fallback; mod-only.0.12.0
- app.account.radioopenalice-app · app/accountHub Radio page — lists shared + private radio channels, shows what's playing now, lets the streamer create a private channel and set any channel as the agent's BGM source.0.11.0
- app.account.redemption-triggersopenalice-app · app/accountHub page for binding viewer redemptions (Twitch channel-points / YouTube SuperChat / Kick / TikTok) to live actions (play_sound / scene_change / gesture / tts_shout / expression). The Neuro-sama-tier audience-engagement loop.0.11.0
- app.account.securityopenalice-app · app/accountTOTP setup + disable surface for the authenticated user. Renders an otpauth QR + 6-digit verify input + password-gated disable form.0.5.0
- app.account.sessionsopenalice-app · app/accountHub page listing the user's active refresh-token sessions with revoke buttons. Powered by /auth/sessions + /auth/sessions/:id.0.5.0
- app.account.soundboardopenalice-app · app/accountHub Soundboard page — upload, tag, bind, test-fire SFX clips for the agent's `play_sound` tool. Powers the Neuro-sama-style soundboard.0.10.0
- app.account.streamsopenalice-app · app/accountHub page for managing per-platform stream destinations the broadcaster service pushes to. CRUD + masked-list + reveal-after-password.0.5.0
- app.account.streams-chat-modopenalice-app · app/accountMod-only live view of YouTube chat for one broadcast. Per-message delete + timeout (10m/1h/24h) + ban actions. Polls chat-bridge's ring buffer via persona. Show-only-mod-flagged filter + pin-message toggle. Empty state when the streamer isn't live.0.12.0
- app.account.streams.chat-pageopenalice-app · app/accountStudio Chat Tab page mounting StudioChatTab. Polls /live/status to discover the active broadcast and renders a "go live first" idle state otherwise.0.13.0
- app.account.streams.engagement-pickeropenalice-app · app/accountHub Studio picker that surfaces the @openalicelabs/presets engagement catalogue (qa-host / battle-chat / cozy-hangout / coding-stream / lecture-moderator / talk-show-panel). Writes the chosen id into agent_config.products.live.preset_id; the next /live/start defaults to it.0.11.0
- app.account.streams.engagement-preset-fetchopenalice-app · app/accountRead the streamer's saved engagement-preset id (qa-host / battle-chat / cozy-hangout / coding-stream / lecture-moderator / talk-show-panel) from agent_config.products.live.preset_id. Persists across sessions; the next /live/start picks it up automatically.0.11.0
- app.account.streams.engagement-preset-saveopenalice-app · app/accountPersist the streamer's preferred engagement preset (qa-host / etc) into agent_config.products.live.preset_id via the SDK's putAgentConfig. Forward-compat unknown-keys ride-through means the field rides on top of the typed ProductAgentConfig shape without a backend migration.0.11.0
- app.account.streams.engagement-presetsopenalice-app · app/accountHub-side typed mirror of the @openalicelabs/presets engagement catalogue (qa-host / battle-chat / cozy-hangout / coding-stream / lecture-moderator / talk-show-panel). Drives the Studio preset picker; the streamer's selected id rides on agent_config.products.live.preset_id and is forwarded to live-control's /live/start request.0.11.0
- app.account.streams.host-healthopenalice-app · app/accountPer-broadcast Host Health card on /account/streams. Polls /api/streamhost/heartbeat every 15s and renders a RSS / disk / ffmpeg / RTMP / interruptions / last-frame summary plus a Reset host button.0.13.1
- app.account.streams.poll-manageropenalice-app · app/accountHub poll management surface — Create modal, active poll panel with countdown + Close-early, history list. Mounts under /account/streams when a broadcast is live.0.12.0
- app.account.streams.scene-previewopenalice-app · app/accountTwo buttons in the Hub's stream-destinations page that open the live renderer scene URL (with agents) and a no-agent demo room for previewing without going on-air.0.6.0
- app.account.streams.theme-pickeropenalice-app · app/accountStudio-side picker for the per-stream visual theme. 7-preset gallery + custom-override editor (colors / fonts / texture / corners / shadow / motion) + live iframe preview. Persists to agent_config.products.live.branding.theme — the same JSONB the live page reads.0.6.0
- app.account.streams.theme-picker.contractopenalice-app · app/accountHub-side mirror of openalice-live's StreamTheme contract — types + presets duplicated so the Studio theme picker can render the catalogue and persist `branding.theme` without pulling in the entire live-renderer package.0.6.0
- app.account.streams.theme-picker.sfxopenalice-app · app/accountHub-side picker section for the per-stream sound-effect engine. Master toggle + volume + 5-preset gallery (silent / subtle-warm / arcade / sci-fi / nature) + per-event URL & volume overrides. Persists into branding.theme.sfx — the same JSONB the live page's SfxPlayer reads.0.9.0
- app.account.streams.theme-quick-swapopenalice-app · app/accountMid-stream theme flip UI — compact preset chips that fire a transient `branding.theme` payload onto the live-control bus so the streamer can change the look mid-broadcast without editing the persistent agent_config. Shows a banner when the live theme differs from the saved one.0.6.0
- app.account.streams.theme-saveopenalice-app · app/accountPersist the per-stream theme into agent_config.products.live.branding.theme via the SDK's putAgentConfig — preserves every other live-product field on the same object.0.6.0
- app.account.youtubeopenalice-app · app/accountHub page for connecting a YouTube channel (OAuth youtube.readonly + youtube.force-ssl), inspecting granted scopes, and toggling per-tenant mod policies. Companion of /account/streams/[id]/chat-mod. Drives the YT Tier 1 wave Hub UI surface.0.12.0
- app.account.youtube.audit-feedopenalice-app · app/accountHub card surfacing the persona oauth_audit_log feed for the calling tenant on /account/youtube. Renders op + status + ts + truncated IP. Powered by GET /v1/me/youtube/audit.0.13.0
- app.account.youtube.auto-modopenalice-app · app/accountHub page for the static auto-moderation rule set + shared mod-action audit log. Companion of /account/youtube + /account/ai-moderation.0.13.0
- app.account.youtube.helpersopenalice-app · app/accountTime / IP formatters used by the YouTube settings page (expires-in countdown, "last refreshed" indicator, audit-feed IP truncator).0.13.0
- app.studio.chat-tabopenalice-app · app/accountStudio Hub chat tab — subscribes to /auth/ws for cross-platform chat (Twitch/YouTube/Kick/TikTok) and writes back via live-control /live/chat-out so streamers monitor + reply without leaving the Hub.0.13.0
- app.studio.chat.sendopenalice-app · app/accountHub-side wrapper around live-control `/live/chat-out`. POSTs a JWT-authed chat reply to the per-broadcast chat-bridge fan-out so the streamer can reply to Twitch/YouTube/Kick chat from inside the Studio Chat tab.0.13.0
- app.api.internal.streamhost.heartbeatopenalice-app · app/apiInternal-secret-gated POST receiver for the openalice-stream-host daemon's 30s heartbeat. Stashes the latest payload per (user_id, host_id) so /account/streams can render a Host Health card.0.13.1
- app.api.persona-bffopenalice-app · app/apiCatch-all reverse proxy from openalice-app to internal persona-server. Forwards Authorization + streams multipart bodies; passthrough for status + headers. Same-origin to the Hub so CORS is moot.0.7.0
- app.api.radio-bffopenalice-app · app/apiCatch-all reverse proxy from openalice-app to internal openalice-radio. Forwards Authorization + passes JSON bodies through. Same-origin to the Hub so CORS is moot.0.11.0
- app.api.streamhost.heartbeat-readopenalice-app · app/apiBrowser-facing JWT-gated read for the stream-host heartbeat snapshot. Returns hosts for the calling user (sub claim) by reading the same in-memory store the internal POST receiver writes to.0.13.2
- app.api.youtube-oauth-callbackopenalice-app · app/apiCompletes the YouTube OAuth round-trip server-side — state check, code exchange, channel snapshot, signed handoff cookie, redirect to /account/youtube?just_connected=1. Client-side /complete finishes the persona POST.0.12.1
- app.api.youtube-oauth-completeopenalice-app · app/apiClient-side completion of the YT OAuth round-trip — reads the handoff cookie set by /callback, verifies its signature, forwards to persona /v1/me/youtube/oauth-tokens with the user's Bearer JWT.0.12.1
- app.api.youtube-oauth-startopenalice-app · app/apiBuilds Google OAuth URL with youtube.readonly + youtube.force-ssl + youtube scopes, stashes CSRF state cookie, redirects to Google. Companion of /api/youtube/oauth/callback. Drives /account/youtube Connect button + the stream-key auto-fetch flow.0.12.0
- app.auth.forgot-passwordopenalice-app · app/authPublic form that requests a password-reset link by email.0.1.0
- app.auth.loginopenalice-app · app/authPublic login + signup form with two-leg MFA prompt. Honors0.1.0
- app.auth.reset-passwordopenalice-app · app/authSet a new password using a single-use reset token.0.1.0
- app.auth.safe-return-urlopenalice-app · app/authValidate `?return=<url>` query params for post-login redirects.0.2.0
- app.auth.verify-emailopenalice-app · app/authVerify the email-verification token and bounce to /account.0.1.0
- app.component.font-pickeropenalice-app · app/componentCustom-font gallery — list, upload (drag-drop + file picker), rename, delete with confirm, "Use as display/body/mono" hooks for the Theme picker.0.6.0
- app.components.confirm-dialogopenalice-app · app/componentsShared async confirm() dialog + useConfirm() hook. Replaces native window.confirm() across the Hub.0.14.0
- app.hub.launcheropenalice-app · app/hubTop-level OpenAlice ecosystem launcher tiling Alice, Social, World, Persona, Live, wrapped in the shared EcosystemShell.0.1.0
- app.hub.online-usersopenalice-app · app/hubHub home widget listing users currently online across the ecosystem (last_seen ≤ 2 min, status ≠ invisible). Polls every 30s.0.5.0
- app.lib.access-tokenopenalice-app · app/libVerify openalice-auth-issued access JWTs on the Hub. Used by routes that need a local user_id from the bearer without forwarding to persona.0.13.2
- app.lib.agents-apiopenalice-app · app/libTyped client for /v1/me/agents on persona-server. Powers the AgentPicker dropdown and the per-agent settings page.0.11.0
- app.lib.ai-mod-apiopenalice-app · app/libTyped client for the AI moderation REST surfaces on persona-server. Powers `/account/ai-moderation` settings + pending-review + training-feedback panels.0.13.0
- app.lib.api-clientopenalice-app · app/libShared apiFetch() helper — Bearer header + JSON parse + error normalization. Backs every src/lib/*Api.ts client.0.12.0
- app.lib.audio-apiopenalice-app · app/libTyped client for /v1/me/audio CRUD on persona-server — Bearer JWT, multipart upload, JSON rename, public URL decoration. Powers the Hub Music & Audio picker.0.10.0
- app.lib.fonts-apiopenalice-app · app/libTyped client for /v1/me/fonts CRUD on persona-server — Bearer JWT, multipart upload, JSON rename, public URL decoration.0.6.0
- app.lib.forwarded-originopenalice-app · app/libReconstructs the public origin (proto://host) from a NextRequest by honouring NEXT_PUBLIC_HUB_BASE_URL + X-Forwarded-Host/Proto, falling back to nextUrl.origin. Fixes 0.0.0.0:3203 leaking into OAuth redirects.0.12.1
- app.lib.idle-config-apiopenalice-app · app/libTyped client for /v1/me/agents/:id/idle-config — backs the Hub's Idle behaviour section.0.11.2
- app.lib.live-scenesopenalice-app · app/libCanonical scene-mode catalog for the Hub. Mirrors openalice-live/SCENE_REGISTRY. Drives "Allowed scenes" config + channel-point trigger validation.0.14.0
- app.lib.lounge-apiopenalice-app · app/libHub-side typed client for Discord-Style Lounge — listing rooms + Phase-4 moderation primitives (bans, mutes, mods, settings).0.11.0
- app.lib.lounge-reports-wsopenalice-app · app/libLive WS subscription client for the Hub Reports tab — opens the chat WS, sends subscribe_mods after joined, surfaces report_received/report_resolved, reconnects with exponential backoff, signals fallback after 3 failures/60s, 30s heartbeat ping.0.13.0
- app.lib.music-gen-apiopenalice-app · app/libTyped client for /v1/me/audio/generate (AI music generation via Lyria 3). Same Bearer JWT + same-origin BFF transport as audioApi. Powers the Hub generate page.0.11.0
- app.lib.polls-apiopenalice-app · app/libTyped client for /v1/me/polls (engagement polls). Powers the Hub Create-poll modal + active poll panel + history list.0.12.0
- app.lib.redemption-triggers-apiopenalice-app · app/libTyped client for /v1/me/redemption-triggers CRUD on persona-server. Powers the Hub Channel-Point Triggers page where streamers bind viewer redemptions to live actions.0.11.0
- app.lib.soundboard-settings-apiopenalice-app · app/libTyped client for the per-agent soundboard kill switch on persona-server. Powers the Hub agent-settings toggle.0.10.1
- app.lib.sounds-apiopenalice-app · app/libTyped client for /v1/me/sounds CRUD + play on persona-server. Powers the Hub Soundboard page where streamers upload + tag SFX for the agent's `play_sound` tool.0.10.0
- app.lib.static-mod-apiopenalice-app · app/libTyped client for the static-mod REST surface on persona-server. Powers `/account/youtube/auto-mod` Static rules tab + Action log tab.0.13.0
- app.lib.use-auto-dismiss-erroropenalice-app · app/libReact hook that auto-dismisses an error string after a configurable timeout. Single source of truth for the Hub's auto-fading error banners.0.14.0
- app.lib.use-redirect-on-401openalice-app · app/libReact hook that redirects to /login?return=<path> when a page's error state indicates an expired session.0.14.0
- app.lib.voices-apiopenalice-app · app/libCurated voice catalogue + browser-native TTS preview for the per-agent Voice editor. Lists ElevenLabs handles + the Default sentinel; preview uses SpeechSynthesisUtterance locally so sliders demo without burning ElevenLabs quota.0.11.1
- app.lib.vrms-apiopenalice-app · app/libTyped client for the per-tenant VRM library on persona-server. Powers the Hub's per-agent Avatar picker.0.11.1
- app.lib.youtube-apiopenalice-app · app/libTyped client for YT OAuth + mod-page surfaces on persona-server. Powers `/account/youtube` settings page + `/account/streams/[id]/chat-mod` mod view.0.12.0
- app.lib.yt-handoffopenalice-app · app/libHS256 JWT helpers (sign + verify) for the YouTube OAuth callback handoff cookie. Uses SHARED_JWT_SECRET + aud="oa-yt-handoff".0.12.1
- hub.account.audio.generateopenalice-app · hub/accountAI music generation page. Lyria 3 via OpenRouter, $0.08/song, $10/month default cap. Async job lifecycle with 5s polling, inline player + add-to-BGM hand-off, recent generations history.0.11.0
- hub.account.editopenalice-app · hub/accountEdit display_name, bio, avatar_url, banner_url, pronouns. One profile across all 6 OpenAlice products.0.3.0
- atlas.api.serveropenalice-atlas · atlas/apiHTTP server for openalice-atlas — REST endpoints, /mcp JSON-RPC for agents, /health, /metrics, internal rescan hook. Auth via openalice-axum-common + ATLAS_INTERNAL_SECRET.0.1.0
- atlas.ingestor.crateopenalice-atlas · atlas/ingestorOrg-wide indexer — walks every git repo under ATLAS_ORG_ROOT, parses @feature blocks, reads manifests, writes to Postgres. Delta-driven via content-hash cache.0.1.0
- atlas.web.dashboardopenalice-atlas · atlas/webAtlas dashboard — hero constellation, stats readout, full repo grid sorted by last activity. Server-rendered against atlas-api with 60s revalidate.0.1.0
- atlas.web.features-indexopenalice-atlas · atlas/webAtlas feature ledger — searchable / filterable index of every @feature in the org. Filters serialize to query params; server-rendered.0.1.0
- atlas.web.graph-3dopenalice-atlas · atlas/webAtlas 3D module-graph viewer — force-directed React Three Fiber rendering of repos as nodes, deps as edges. Hover surfaces detail card; click navigates to /repos/[name].0.1.0
- atlas.web.layoutopenalice-atlas · atlas/webAtlas root layout — loads Fraunces + IBM Plex Mono, mounts the persistent observatory frame (starfield, grain, top eyebrow, compass nav), applies security headers via next.config.0.1.0
- atlas.web.repo-detailopenalice-atlas · atlas/webAtlas repo-detail page — magnification of a single repo with magnitude, status, README excerpt, full feature ledger grouped by category, source-file pointers.0.1.0
- atlas.web.repos-indexopenalice-atlas · atlas/webAtlas repos-index — alphabetical chart-style table of every observed repo. Counterpart to the dashboard's by-activity grid.0.1.0
- auth.agent_config.getopenalice-auth · auth/agentRead the user's unified agent config — shared identity (avatar + VRM), voice settings (TTS+STT provider/voice/language/emotion/pace), and per-product enable+system-prompt for live/social/persona/world. Returns a built-in default when no row exists yet.0.1.0
- auth.agent_config.putopenalice-auth · auth/agentUpsert the user's agent config. Validates tts/stt providers against the known-good allowlist and per-product JSON shape. Partial updates supported — fields the request omits keep their current values.0.1.0
- auth.broadcast_config.getopenalice-auth · auth/broadcastRead the user's current studio broadcast config (preset_id + per-stream overrides). Defaults to {preset_id="qa-host", overrides={}} when no row has been saved yet — first-time streamers don't have to click anything before going live.0.1.0
- auth.broadcast_config.putopenalice-auth · auth/broadcastUpsert the user's studio broadcast config. Validates preset_id against the @openalicelabs/presets allowlist; rejects unknown ids with 400. Returns the persisted row so the client can mirror updated_at.0.1.0
- auth.chat_sources.createopenalice-auth · auth/chatPersist a chat-read source (YouTube / Twitch / Kick) — the config blob is encrypted at rest by the same crypto pipeline as stream_destinations. Returns the masked public shape.0.1.0
- auth.password.hashopenalice-auth · auth/cryptoHash a password with Argon2id using a per-call random salt.0.1.0
- auth.devices.listopenalice-auth · auth/devicesList the user's paired devices — Hub /account/devices renders this.0.6.0
- auth.devices.pair_claimopenalice-auth · auth/devicesExchange a pairing code for a 90-day device-scoped JWT (audience = live + persona). Unauthenticated by design — the code itself is the credential.0.6.0
- auth.devices.pair_startopenalice-auth · auth/devicesGenerate a short-lived pairing code (8 chars, 10 min TTL) the user types into openalice-stream-host. Code is single-use; claiming it issues a 90-day device-scoped JWT.0.6.0
- auth.devices.revokeopenalice-auth · auth/devicesRevoke a paired device — sets revoked_at, the issued JWT's jti goes into the revocation set so subsequent calls from that token are rejected.0.6.0
- auth.email.verifyopenalice-auth · auth/emailConsume an email-verification token (looked up by SHA-256 hash). Marks the user verified and the token used. Idempotent — already-verified users get 200 with the same payload.0.1.0
- auth.email.verify_sendopenalice-auth · auth/emailIssue a new email-verification token for the authenticated user, hash it, persist with 24h expiry, and "send" the verification link via the email stub.0.1.0
- auth.mfa.disableopenalice-auth · auth/mfaDisable MFA after re-confirming the user's password (defense against a session-stealing attacker silently turning MFA off). Clears mfa_secret + mfa_enabled.0.1.0
- auth.mfa.setupopenalice-auth · auth/mfaBegin MFA enrollment — generates a fresh TOTP secret, stores it on the user (NOT yet enabled), and returns the secret + otpauth URL so the client can render a QR. Re-running before /auth/mfa/verify rotates the secret. Idempotent against an already-enabled user — returns 409 so the client tells the user to disable first.0.1.0
- auth.mfa.verifyopenalice-auth · auth/mfaConfirm enrollment by submitting a code derived from the secret stored at /auth/mfa/setup. On success, mfa_enabled flips to true and subsequent /auth/login flows require a second factor.0.1.0
- auth.oauth.youtube_startopenalice-auth · auth/oauthBegin a YouTube (Google) OAuth flow — generates a state nonce, persists it server-side, returns the Google authorize URL the client should redirect to. The callback will create a `chat_sources` row with the user's refresh + access tokens.0.1.0
- auth.password.forgotopenalice-auth · auth/passwordIssue a password-reset token for the given email and send the reset link via the email stub. Always returns 204 — never reveals whether the email is registered (timing attacks aside, this stops trivial account-enumeration).0.1.0
- auth.password.resetopenalice-auth · auth/passwordConsume a password-reset token (looked up by SHA-256 hash) and rewrite the user's password. Marks the token used and revokes ALL outstanding refresh tokens for the user (forces re-login on every device).0.1.0
- auth.presence.onlineopenalice-auth · auth/presenceList users with last_seen ≤ 2 minutes ago who haven't set their status to invisible. Powers the Hub "who's online" widget and any cross-product presence indicator.0.1.0
- auth.realtime.broadcastopenalice-auth · auth/realtimeService-to-service entry point — POST a notification (optionally targeted at a specific user) and the auth WS hub fans it out to every connected client. Authenticated by a shared secret in the `X-Internal-Secret` header (env `INTERNAL_BROADCAST_SECRET`). Producers: social-api on DM, persona on session events, billing on plan changes.0.1.0
- auth.realtime.chat_eventopenalice-auth · auth/realtimeService-to-service entry — POST a normalized chat message from any platform connector (openalice-chat-bridge for YouTube/Twitch/Kick/TikTok) and the broadcast owner's connected agent receives it as a `chat_message` event over /auth/ws. Bypasses the notification cooldown (chat is a stream). Authenticated by X-Internal-Secret.0.1.0
- auth.realtime.chat_feedopenalice-auth · auth/realtimeService-to-service entry — POST a mechanical chat aggregation tick (n-gram topics + mood + highlight quotes over a fixed window) from the chat-bridge feed-aggregator. The broadcast owner's connected agent receives it as a `chat_feed` event over /auth/ws — a cheap "what is the room doing?" heartbeat that costs zero LLM tokens to produce. Authenticated by X-Internal-Secret.0.5.0
- auth.realtime.wsopenalice-auth · auth/realtimeWebSocket fan-out — clients open with ?token=ACCESS_JWT and receive cross-product real-time events (presence_changed today, notifications + DM events later). Server-push only; messages from the client are currently ignored.0.1.0
- auth.sessions.listopenalice-auth · auth/sessionsList the authenticated user's active refresh-token sessions (one per browser/device login). Each row carries user_agent, created_at, last_used_at, and a `current` flag marking the device this request came from.0.1.0
- auth.sessions.revokeopenalice-auth · auth/sessionsRevoke a specific refresh-token session by id. Marks the row revoked and blacklists its current jti so the next /auth/refresh from that device fails. Existing access tokens on that device survive until natural expiry (≤1h).0.1.0
- auth.streams.createopenalice-auth · auth/streamsPersist a per-platform stream destination — label, platform, optional RTMP URL override, encrypted stream key. Returns the masked public shape.0.1.0
- auth.streams.deleteopenalice-auth · auth/streamsPermanently delete a stream destination.0.1.0
- auth.streams.internal_lookupopenalice-auth · auth/streamsService-to-service endpoint for the broadcaster — given a user_id (path) and optional destination ids (query), returns enabled destinations with PLAINTEXT stream keys. Authenticated via X-Internal-Secret. The broadcaster is the only caller.0.1.0
- auth.streams.listopenalice-auth · auth/streamsList the user's stream destinations with masked stream keys ("live_••••wxyz" preview).0.1.0
- auth.streams.revealopenalice-auth · auth/streamsReveal the plaintext stream key after re-confirming the user's password. Stream keys aren't returned by the list endpoint by design — this is the dedicated unmask path.0.1.0
- auth.streams.updateopenalice-auth · auth/streamsUpdate a destination's label or enabled flag. Stream-key rotation is a delete + create operation by design.0.1.0
- auth.token.refreshopenalice-auth · auth/tokensExchange a refresh token for a fresh access+refresh JWT pair (rotation).0.1.0
- auth.account.deleteopenalice-auth · auth/usersPermanently delete the authenticated user's account and revoke all tokens.0.1.0
- auth.profile.updateopenalice-auth · auth/usersUpdate authenticated user's profile fields (display name, avatar, bio).0.1.0
- auth.user.loginopenalice-auth · auth/usersVerify email+password and issue access+refresh JWT pair.0.1.0
- auth.user.login_mfaopenalice-auth · auth/usersExchange a pre-MFA token + TOTP code for a full session. Issued only when /auth/login responds with mfa_required=true. Pre-MFA token is audience-restricted so it can't be used against any downstream service if leaked.0.1.0
- auth.user.meopenalice-auth · auth/usersReturn current authenticated user's profile (id, email, username, status). Side effect — bumps users.last_seen so the user surfaces in the online-users feed.0.1.0
- auth.user.registeropenalice-auth · auth/usersRegister a new user with email + username + password (Argon2id), returns access+refresh JWT pair.0.1.0
- forge.batch.mockopenalice-forge · forge/batchRun every registered asset through the mock generator pipeline (planning + dry-run).0.1.0
- forge.characters.generate-allopenalice-forge · forge/charactersProcedurally generate all VRM character texture sets (free, no external APIs).0.1.0
- forge.dashboard.mesh-previewopenalice-forge · forge/dashboardStandalone Three.js GLB viewer for inspecting a single forge mesh in the dashboard.0.1.0
- forge.dashboard.scene-previewopenalice-forge · forge/dashboardThree.js viewer that instances meshes per InstanceGroup transforms to render a forge scene.0.1.0
- forge.meshes.generate-allopenalice-forge · forge/meshesProcedurally generate all GLB meshes (trees, props, terrain) free of external API cost.0.1.0
- forge.registry.list-assetsopenalice-forge · forge/registryList asset definitions for a registry category (terrain, character, prop, scene...).0.1.0
- forge.registry.searchopenalice-forge · forge/registryFree-text search across registered asset definitions.0.1.0
- forge.scenes.generate-allopenalice-forge · forge/scenesBuild six demo scenes — JSON specs composing mesh GLBs into playable showcase environments.0.1.0
- forge.texture.planopenalice-forge · forge/textureDry-run a texture generation — return prompt, settings, and cost estimate (no API call).0.1.0
- gateway.auth.middlewareopenalice-gateway · gateway/authAuthenticate via JWT > session > API key, fall through to anonymous; exempt paths bypass.0.1.0
- gateway.proxy.forwardopenalice-gateway · gateway/proxyHTTP reverse proxy with auth, rate-limit, circuit breaker, and prefix-stripped backend forward.0.1.0
- gateway.proxy.wsopenalice-gateway · gateway/proxyBidirectional WebSocket proxies for /ws/rt, /ws/voice, /ws/persona — bridge browser to internal services.0.1.0
- gateway.ratelimit.token-bucketopenalice-gateway · gateway/ratelimitPer-user token-bucket rate limiter (separate user/anon caps) using DashMap.0.1.0
- gateway.circuit.breakeropenalice-gateway · gateway/resiliencePer-backend circuit breaker (Closed/Open/HalfOpen) — short-circuit failing services with 503.0.1.0
- labs-site.page.homeopenalice-labs-site · labs-site/pagesOpenAlice Labs research site home — mission, project highlights, hero.0.1.0
- labs-site.page.projectsopenalice-labs-site · labs-site/pagesList of OpenAlice Labs projects with descriptions, tech stacks, and links.0.1.0
- labs-site.page.researchopenalice-labs-site · labs-site/pagesResearch-area landing page listing topics under active investigation.0.1.0
- labs-site.page.teamopenalice-labs-site · labs-site/pagesTeam page showing OpenAlice Labs members and roles.0.1.0
- landing.page.agentopenalice-landing · landing/pagesMarketing page for the Alice agent — capabilities, memory, tools, integrations.0.1.0
- landing.page.homeopenalice-landing · landing/pagesOpenAlice marketing home page — product overview, key features grid, hero, CTA.0.1.0
- landing.page.personaopenalice-landing · landing/pagesMarketing page for Persona — VRM avatars, voice, AI character creation.0.1.0
- landing.page.pricingopenalice-landing · landing/pagesPublic pricing page — tiers, plans, FAQ for OpenAlice products.0.1.0
- landing.page.socialopenalice-landing · landing/pagesMarketing page for Social — Discord-like rooms with humans + agents, voice, video.0.1.0
- live.os.standalone-desktopopenalice-live · live/agent-desktopStandalone Agent Desktop OS — fullscreen virtual desktop the agent drives via the same scene-control WS as the OBS scene mode. Persists window layout in localStorage so the surface survives reloads. Foundational v0 of the "fake OS in the browser" track.0.4.0
- live.api.browse-sessionopenalice-live · live/apiServer-side proxy that mints openalice-browse sessions for the OS BrowserApp. Keeps the internal secret on the server.0.2.0
- live.api.healthopenalice-live · live/apiLiveness probe — returns 200 with timestamp for monitoring + Traefik healthchecks.0.1.0
- live.api.pty-sessionopenalice-live · live/apiServer-side proxy that mints openalice-pty sessions for the OS TerminalApp. Keeps the internal secret on the server and hands the browser a fully-formed ws_url with a one-shot token query param.0.3.0
- live.scene.bgm-playeropenalice-live · live/audioPer-stream background-music engine. Hidden <audio> element loops the streamer's chosen BGM track (preset OR custom upload). Drives volume / loop / fade-in / fade-out / cross-fade-on-track-change / auto-ducking-when-TTS-speaks. Decoupled from voice + SFX surfaces; ducking listens to oa-voice-chunk + oa-voice-finished postMessages.0.10.0
- live.scene.bgm-rotatoropenalice-live · live/audioWires the bgmRotation policy + persona-server SSE rotation events into the live scene BGM pipeline. Subscribes to idle.bgm_change, falls back to a client-side max-loops trigger, and applies a 2s crossfade via the underlying BgmPlayer.0.12.0
- live.scene.bgm.presetsopenalice-live · live/audioBundled background-music preset library — five royalty-free vibes (lofi-amber, synthwave-cyan, jazz-cafe, ambient-spacy, silence). Hub picker uses these as starting points; tenant-uploaded tracks plug into the same dropdown via the persona /v1/me/audio CRUD.0.10.0
- live.scene.radio-playeropenalice-live · live/audioLive-page radio channel subscriber. Resolves a radio:<slug> bgm_source into a WebSocket subscription against openalice-radio; each now_playing frame updates the underlying BgmPlayer config so the live page picks up new tracks with the same cross-fade / duck-during-tts plumbing as static BGM.0.11.0
- live.scene.sfx-engineopenalice-live · live/audioSound-effects audio engine for the live stream player. Listens to chat append / mood transition / gesture / subscribe / caption events and plays a short clip per channel, debounced per event type. Master / per-event volume + per-event URL overrides via `branding.theme.sfx`. Mounts only when `theme.sfx.enabled === true` so SFX-disabled streams pay zero cost.0.9.0
- live.scene.sfx.presetsopenalice-live · live/audioFive bundled sound-effect preset vibes (silent / subtle-warm / arcade / sci-fi / nature) — each a coordinated set of audio clips for the stream player's chat, mood, gesture, subscribe, and caption events. Hub picker uses these as starting points; per-event URL overrides land on top via `branding.theme.sfx.sfx_<event>_url`.0.9.0
- live.auth.forgot-passwordopenalice-live · live/authPublic form that asks tenants to email a password-reset link. Always returns generic copy to avoid account-enumeration leaks.0.3.0
- live.auth.loginopenalice-live · live/authPublic login form — email + password, two-leg MFA prompt for accounts with TOTP/email-MFA.0.3.0
- live.auth.password-strengthopenalice-live · live/authHeuristic password-strength meter (close-enough to zxcvbn) plus visual bars. Stays local until v0.7 promotes a shared meter.0.3.0
- live.auth.reset-passwordopenalice-live · live/authLands here from the password-reset email link. Form: new password + confirm. POSTs to /tenants/reset-password.0.3.0
- live.auth.session-bridgeopenalice-live · live/authStash tenants-issued JWT into the shared SSO localStorage slot.0.3.0
- live.auth.signupopenalice-live · live/authPublic signup form — email, username, display name, password (with strength meter), ToS opt-in.0.3.0
- live.auth.verify-emailopenalice-live · live/authConfirms the verification token from the welcome email. Auto-POSTs on mount; surfaces a re-send button on failure when the user is logged in.0.3.0
- live.scene.global-preloaderopenalice-live · live/loadingGame-style up-front asset preloader — fetches every URL the active theme references (VRM via persona, HDR env, BGM, scene background video/image, parallax layers, custom fonts, SFX bundle) before the scene fades in. Branded progress UI with X/Y count and percentage. 30 s safety timeout, soft per-asset failures don't block the scene. Eliminates the late-load "model loads on first scene with avatar" hiccup.0.11.0
- live.landing.heroopenalice-live · live/marketingMarketing landing for OpenAlice Live — stream with Alice as AI co-host.0.1.0
- live.os.terminal-appopenalice-live · live/osReal xterm.js terminal in the Agent Desktop OS — connects to openalice-pty over WebSocket and renders any TUI (claude, vim, btop, htop, neovim, tmux) pixel-perfect with full ANSI escape support.0.3.0
- live.scene.be-right-backopenalice-live · live/scenesAFK placard with a tasteful sleeping-moon SVG animation, breathing BRB title, and desaturated gradient mesh that signals "paused". Atelier-only, prefers-reduced-motion respected.0.7.0
- live.scene.event-celebrationopenalice-live · live/scenesSubscribe / follow / donation celebration-overlay layer for the live broadcast page. Listens for `oa-event-celebrate` window events and slides a branded animated card into the scene with platform-coloured chrome, a confetti burst, optional TTS read-out, and per-platform SFX. Queues up to 16 events; honours reduced-motion. Mount-time gated by `theme.event_celebration.enabled`. Closes the polish gap to Streamlabs / StreamElements / Neuro-sama-grade event handling.0.10.0
- live.scene.intermissionopenalice-live · live/scenesEditorial chapter card for between-segments transitions ("1 / 3 — Coding session"). Twin-band gradient mesh, oversized chapter index, slow horizontal wipe transition. Calm, intentional, premium.0.7.0
- live.scene.mode-registryopenalice-live · live/scenesCatalog of Live broadcast scene modes — VRM fullscreen + static placards (starting-soon / be-right-back / outro). Each scene declares its voice + render cost so the page knows whether to attach the SFU and the admin can warn on GPU-less hosts.0.2.0
- live.scene.moderation-overlayopenalice-live · live/scenesAdministrative toast for AI-driven mod actions on the live scene. Listens for `oa-mod-action` window events and paints a muted lower-left card with an inline Undo button. Separate from the celebratory overlays — visually neutral on purpose.0.13.0
- live.scene.outroopenalice-live · live/scenesPolished farewell placard with social-handle pills, optional next-stream timestamp, Solar Amber Subscribe CTA, and Plasma Cyan gradient mesh distinct from the warm starting-soon family.0.7.0
- live.scene.placard-atelieropenalice-live · live/scenesShared placard primitives — Atelier-themed gradient mesh, brand watermark, social pills, BGM "now playing" pill, countdown clock. Used by starting-soon / be-right-back / outro / intermission.0.7.0
- live.scene.poll-overlayopenalice-live · live/scenesEngagement poll overlay for the live scene page. Listens for oa-poll-opened / oa-poll-vote / oa-poll-closed window events and paints a Q+A card with growing option bars + linear countdown + winning-option highlight on close. Optional per-platform colour theme.0.11.0
- live.scene.redemption-overlayopenalice-live · live/scenesChannel-point / SuperChat redemption toast for the live scene page. Listens for `oa-redemption-triggered` window events and paints a per-platform branded card ("🎁 ViewerName redeemed «Evil Laugh»"). Separate from the EventCelebrationOverlay (which handles sub/follow/cheer); this one is the dedicated viewer-trigger surface.0.11.0
- live.scene.scene-backgroundopenalice-live · live/scenesAnimated 2D backdrop renderer for vtuber scenes — color / image / video / preset modes plus parallax layers, atmospheric particles (snow / cherry-blossoms / embers / dust / rain / stars), and drift (slow-pan / Ken-Burns). Pure CSS keyframes, no canvas, no WebGL — runs at ~0% GPU on the no-GPU broadcaster host. Reduced-motion strips every animation.0.9.0
- live.scene.starting-soonopenalice-live · live/scenesPolished pre-roll placard with Atelier gradient mesh, animated countdown to start_at_ms, brand block, and "now playing" pill. Atelier-only colours, calm motion, prefers-reduced-motion respected.0.7.0
- live.scene.demo-pickeropenalice-live · live/streamingFloating reviewer-navigation overlay on the live demo page (?demo=1&picker=1) — six tabs (Scene / Render / Avatar / Theme / Background / Audio) let a reviewer hop between any combination of scene modes, avatar render modes/presets, theme presets, background presets, BGM and SFX presets in two clicks each. Pauses the auto-cycling demo timeline so selections stick. URL state syncs via history.replaceState so refreshes keep the reviewer's working selection.0.11.0
- live.scene.demo-timelineopenalice-live · live/streamingCanned timeline of scene/mood/chat/gesture/window/splitscreen events the demo room replays on a loop so we exercise every renderer mode without requiring live agents or a WS connection.0.6.0
- live.scene.error-boundaryopenalice-live · live/streamingRoute-segment ErrorBoundary for /scene/[user]. Any unhandled error in the OBS Browser Source page renders a "Reconnecting…" card on a dark background instead of a blank surface, then auto-reloads after 3s so transient failures (WS drop, iframe race, persona crash) recover without operator intervention.0.4.3
- live.scene.obs-sourceopenalice-live · live/streamingOBS Browser Source endpoint — multi-mode renderer (VRM fullscreen + static placards) driven by ?scene= query param and a live-control WebSocket so the agent's ChangeScene ToolCall flips scenes mid-stream without restarting the broadcaster Chromium.0.2.0
- live.studio.agents.marketplaceopenalice-live · live/studioAgent Marketplace browse + pair UI — capability-scoped grants against openalice-tenants.0.2.0
- live.studio.audio-mixeropenalice-live · live/studioPer-channel volume mixer + BGM picker for the active broadcast. Sliders for mic / desktop / TTS / BGM (linear UI, log-mapped on send), default royalty-free BGM presets, custom URL field, play/pause/skip transport, persisted per-broadcast in localStorage, debounced 200 ms before POST to live-control.0.3.18
- live.studio.chatopenalice-live · live/studioMulti-platform live chat reader + reply box for the streamer. Subscribes to the live-control scene WS for inbound, posts to chat-bridge for outbound. Lets the streamer talk to viewers without leaving studio.1.1.0
- live.studio.dashboardopenalice-live · live/studioStreamer-facing studio — shows the OBS browser-source URL with copy-to-clipboard. Login required.0.1.0
- live.studio.onboardingopenalice-live · live/studioFirst-run checklist for Live — avatar, voice, stream destination, desktop pairing, branding. Each step deeplinks to the editor that fixes it.1.0.0
- live.studio.settingsopenalice-live · live/studioPer-user TTS / STT / avatar / system-prompt editor for the Live product. Saves to agent_config; takes effect on the next /live/start.1.0.0
- live.studio.settings.privacyopenalice-live · live/studioPrivacy & Data settings — consent flags, GDPR export, audit log, paired agents, account deletion.0.2.0
- live.tenants.clientopenalice-live · live/tenantsBrowser HTTP client for openalice-tenants — consent flags, audit log, GDPR export, account deletion, paired-agent grants.0.2.0
- live.scene.stream-themeopenalice-live · live/themingPer-stream visual theme for the broadcast player. Decouples streamer-facing scene look from the Atelier platform tokens — themes are CSS variables (bg / fg / accent / fonts / texture / motion) scoped to the player's <main> element. Streamers pick from a preset library (vtuber-warm, vtuber-neon-cyan, minimal-mono, glass-dark, vintage-sepia, pastel-bubblegum, editorial-print) or pass a fully-custom override. Atelier values are the fallback so existing broadcasts paint identically.0.8.0
- ml-gateway.keys.createopenalice-ml-gateway · ml-gateway/adminAdmin endpoint — issue an API key with per-day request limit and per-month token cap.0.1.0
- ml-gateway.embed.proxyopenalice-ml-gateway · ml-gateway/embedAuthenticated, rate-limited proxy to the embedding backend (/v1/embed).0.1.0
- ml-gateway.ner.proxyopenalice-ml-gateway · ml-gateway/nerAuthenticated, rate-limited proxy to the NER backend (/v1/ner).0.1.0
- ml-gateway.rerank.proxyopenalice-ml-gateway · ml-gateway/rerankAuthenticated, rate-limited proxy to the reranker backend (/v1/rerank).0.1.0
- ml-gateway.usage.reportopenalice-ml-gateway · ml-gateway/usagePer-key usage report — requests today + tokens this month vs configured caps.0.1.0
- persona-web.component.vrm-pickeropenalice-persona · persona-web/componentVRM gallery — list, upload (drag-drop + file picker), select active, delete with confirm. Uses Atelier primitives.0.6.0
- persona-web.lib.lounge-apiopenalice-persona · persona-web/libTyped client for Discord-Style Lounge Phase 2 — room CRUD + participant management.0.7.0
- persona-web.lib.vrms-apiopenalice-persona · persona-web/libTyped client for /v1/me/vrms GET/POST/DELETE — bearer JWT, multipart upload, public URL decoration.0.6.0
- persona.agent.connectoropenalice-persona · persona/agentPluggable agent transport (REST, WebSocket, MCP) for sending messages and streaming replies to a Persona.0.1.0
- persona.agent.protocol_connectoropenalice-persona · persona/agentPersona-side adapter that drives the OpenAlice agent contract (ConnectorEvent in / ToolCall out) so any AgentRuntime — Alice, Hermes, custom — can power a Persona without code changes in the embed.0.5.0
- persona.agent.rest_runtimeopenalice-persona · persona/agentREST-backed AgentRuntime adapter for Persona — wraps a "POST text → get text" backend so the AgentRuntime contract works today without server-side contract changes. Re-export of the protocol package's canonical impl.0.5.0
- persona.web.protocol_agent_hookopenalice-persona · persona/agentReact hook wiring ProtocolAgentConnector + RestAgentRuntime + agent_config fetching for the Persona embed. Drop-in replacement for raw /api/chat fetch — once Alice ships a contract endpoint, only this hook's runtime changes.0.5.0
- persona.agent_idle_config.patchopenalice-persona · persona/agentsPATCH /v1/me/agents/:agent_id/idle-config — per-agent idle behaviour thresholds + kind toggles. Backs the Hub's Idle behaviour section on /account/agents/[id]/settings.0.11.2
- persona.agent_overrides.patchopenalice-persona · persona/agentsPer-agent voice + avatar override PATCH endpoint. Lets the Hub edit voice_id / stability / similarity_boost / speed / vrm_id / display_name without rolling an openalice-auth migration. Tenant-scoped via the bearer JWT.0.11.1
- persona.agents.detailopenalice-persona · persona/agentsReturn the full per-agent settings (soundboard, voice stub, persona stub) for one agent_id. 404 when the id doesn't belong to the caller's tenant.0.11.0
- persona.avatar.vrmopenalice-persona · persona/avatarLoad and drive VRM avatars — expressions, mouth lipsync, tick updates via three-vrm + GLTFLoader.0.1.0
- persona.web.avatar-render-modesopenalice-persona · persona/renderScreen-space post-processing render modes for the VRM avatar (3d / 2d-toon / 2d-flat). Applies a custom EffectComposer chain — toon posterize, sobel outline, chromatic aberration, scan lines, bloom-tinted hologram, CRT flicker — over the rendered scene WITHOUT touching the VRM's materials. The 3D path collapses to a null composer (zero cost).0.9.0
- persona.room.world-syncopenalice-persona · persona/roomMultiplayer presence — direct WebSocket to RT service, broadcasts position at 10fps, returns remote players.0.1.0
- persona.voice.chatopenalice-persona · persona/voiceWebRTC voice chat for Persona rooms — push-to-talk, mute/deafen, screen share, webcam, VAD.0.1.0
- persona.voice.spatialopenalice-persona · persona/voiceDistance-based 3D audio for remote users — Web Audio PannerNodes follow player positions in scene. Singleton AudioContext shared across hook callers.0.2.0
- persona.pose-streamopenalice-persona · persona/vrmWebSocket client for openalice-anim — receives synthesized pose + blendshape frames at 60 Hz and applies them to the AvatarAnimator. When connected, suppresses the procedural idle path so the two don't fight for bones.0.3.0
- realtime.use_realtime_hookopenalice-realtime · realtime/reactReact hook that wraps RealtimeManager — manages mount/unmount lifecycle, exposes status for UI badges, returns the manager for subscribe/send/etc.0.1.0
- relay.a2a.telegramopenalice-relay · relay/telegramPoll A2A messages and forward each new one as an HTML-formatted Telegram message.0.1.0
- rt.hlc.clockopenalice-rt · rt/clockHybrid Logical Clock (48-bit ms + 16-bit counter), lock-free via AtomicU64.0.1.0
- rt.ivm.planopenalice-rt · rt/ivmCompiled subscription plan for incremental view maintenance, evaluates deltas without full re-scan.0.1.0
- rt.snapshot.manageropenalice-rt · rt/persistencePeriodic snapshots with Blake3 content hashing for fast WAL-replay recovery.0.1.0
- rt.messages.searchopenalice-rt · rt/searchCase-insensitive substring search over message text fields, room-scoped, capped limit.0.1.0
- rt.session.subscribeopenalice-rt · rt/sessionWebSocket gateway with subscribe/unsubscribe/mutate, JSON or MessagePack frames, JWT auth.0.1.0
- rt.entity.mutateopenalice-rt · rt/stateUpsert or delete an entity (Room/Persona/Message/Presence) with WAL persistence.0.1.0
- rt.state.snapshotopenalice-rt · rt/stateReturn the current state snapshot with the highest committed sequence number.0.1.0
- rt.store.mvccopenalice-rt · rt/storeIn-memory MVCC store with atomic batch commits and bounded delta-log broadcast.0.1.0
- social.realtime.platform-wsopenalice-social · social/realtimeRealtime WebSocket bridging messages, typing, presence, pins, reactions, calls into the social store.0.1.0
- social.voice.channelopenalice-social · social/voiceP2P-mesh WebRTC voice channel with mute/deafen, screen share, webcam, noise suppression.0.2.0
- social.friends.requestopenalice-social-api · social/friendsSend a friend request to another user — they accept or decline.0.1.0
- social.dms.createopenalice-social-api · social/messagingCreate a 1:1 or group DM channel between two or more users.0.1.0
- social.messages.searchopenalice-social-api · social/messagingCase-insensitive content search within a channel, paged by limit.0.1.0
- social.messages.sendopenalice-social-api · social/messagingSend a message into a server channel — broadcast over WebSocket to channel subscribers.0.1.0
- social.realtime.wsopenalice-social-api · social/realtimeWebSocket gateway pushing channel events (message, edit, delete, presence) with JWT auth.0.1.0
- social.channels.createopenalice-social-api · social/serversCreate a text/voice/announcement channel inside a server.0.1.0
- social.servers.createopenalice-social-api · social/serversCreate a new server (Discord-like) — owner becomes first member with admin role.0.1.0
- social.upload.fileopenalice-social-api · social/uploadsUpload an attachment with MIME validation via magic bytes; S3 (MinIO) primary, local-disk fallback.0.1.0
- spatial.generate.objectopenalice-spatial · spatial/generateShortcut endpoint to generate a single 3D object (mode=object) with prompt or image.0.1.0
- spatial.generate.worldopenalice-spatial · spatial/generateSubmit text or image prompt to generate a 3D world via NANO-PATH (multi-view → Gaussian Splat).0.1.0
- spatial.jobs.statusopenalice-spatial · spatial/jobsPoll a generation job's status (Queued/Generating/Fitting/Completed/Failed) with progress.0.1.0
- spatial.worker.pullopenalice-spatial · spatial/workerGPU worker long-polls the queue (≤30s) for a pending DiffSplat/MV3D task.0.1.0
- spatial.world.downloadopenalice-spatial · spatial/worldDownload a generated 3D world (PLY/GLTF) for client-side WebGPU rendering.0.1.0
- spatial.world.save-stateopenalice-spatial · spatial/worldPersist a composed world state (objects, camera presets, lighting) to disk by world_id.0.1.0
- ui.api-hooks.errorsopenalice-ui · ui/api-hooksShared error message helpers for API hooks — extracts user-facing message from ApiRequestError, generic Error, or unknown, and strips bearer tokens / auth credentials before display.0.5.0
- ui.api-hooks.useAsyncStateopenalice-ui · ui/api-hooksTiny generic helper that owns {data, loading, error} for an async fetch — collapses three useStates into one.0.5.0
- ui.api-hooks.useAuthGuardopenalice-ui · ui/api-hooksVerify the current session against /auth/me on mount. On 401 or missing token, clear auth + redirect to /login. Returns the authenticated user once verified.0.5.0
- ui.api-hooks.useBillingopenalice-ui · ui/api-hooksFetch billing status + plans, expose changePlan against the active OpenAliceClient.0.5.0
- ui.api-hooks.useKeysopenalice-ui · ui/api-hooksList/create/delete API keys against the active OpenAliceClient. Exposes newKey + clearNewKey for one-shot reveal.0.5.0
- ui.api-hooks.useLoginActionopenalice-ui · ui/api-hooksReturns an async (email, password) → AuthActionResult that drives AuthProvider.login + sets the SSO sessionStorage flag. Translates RateLimitError into a UI-friendly message with retryAfter seconds.0.5.0
- ui.api-hooks.useLogoutActionopenalice-ui · ui/api-hooksReturns an async () → void that drives AuthProvider.logout, then clears the SSO sessionStorage flag. Errors during logout are swallowed — local state is cleared regardless.0.5.0
- ui.api-hooks.useMeopenalice-ui · ui/api-hooksFetch the currently authenticated PublicUser from the active OpenAliceClient and expose loading/error/refetch.0.5.0
- ui.api-hooks.useRegisterActionopenalice-ui · ui/api-hooksReturns an async (name, email, password, _confirm?) → AuthActionResult that drives AuthProvider.register + sets the SSO sessionStorage flag. Translates RateLimitError into a UI-friendly message.0.5.0
- ui.api-hooks.useUsageopenalice-ui · ui/api-hooksFetch usage rollup for the last N days from the active OpenAliceClient.0.5.0
- ui.api-hooks.useUseropenalice-ui · ui/api-hooksLegacy adapter — fetch the current User (legacy shape) from the active OpenAliceClient. Prefer useMe() for new code.0.5.0
- ui.auth.gateopenalice-ui · ui/authClient-side route guard — renders skeleton until auth resolves, redirects to /login if unauthenticated.0.4.0
- ui.auth.provideropenalice-ui · ui/authShared React context for cross-domain SSO — JWT in localStorage, HttpOnly cookie probe, cross-tab sync.0.4.0
- ui.auth.realtime-wsopenalice-ui · ui/authHook that opens a WebSocket to /auth/ws while the user is signed in, dispatches each incoming event envelope to a handler, and reconnects with exponential backoff on disconnect.0.5.0
- ui.composite.auth-shellopenalice-ui · ui/compositeCentered auth-page layout — atmospheric grain + halo, brand mark, card, footer.0.6.0
- ui.composite.brand-markopenalice-ui · ui/compositeOpenAlice wordmark / monogram — SVG, crisp at any size.0.6.0
- ui.composite.dashboard-gridopenalice-ui · ui/compositeResponsive auto-fit grid for stat / card lists.0.6.0
- ui.composite.live-indicatoropenalice-ui · ui/compositePulsing chip for live/recording state. Plasma cyan or warm red tone.0.6.0
- ui.composite.page-headeropenalice-ui · ui/compositeStandard page title + description + actions row.0.6.0
- ui.composite.section-headeropenalice-ui · ui/compositeSub-section title row (h2-weight) inside a page.0.6.0
- ui.composite.settings-shellopenalice-ui · ui/compositeLeft-nav + main-content layout for settings/account pages.0.6.0
- ui.composite.theme-provideropenalice-ui · ui/compositeSets data-theme on document root, persists to localStorage, optional system mode.0.6.0
- ui.primitive.avataropenalice-ui · ui/primitiveCircular avatar with image fallback to initials and optional ring.0.1.0
- ui.primitive.badgeopenalice-ui · ui/primitiveChip / tag — 2px radius, hairline ring, semantic + brand variants.0.1.0
- ui.primitive.banneropenalice-ui · ui/primitiveFull-width persistent message with left-edge accent and optional dismiss.0.6.0
- ui.primitive.breadcrumbsopenalice-ui · ui/primitiveChevron-separated path navigation. Last item is current page.0.6.0
- ui.primitive.buttonopenalice-ui · ui/primitiveTactile button primitive — five variants, three sizes, loading state, spring press.0.1.0
- ui.primitive.cardopenalice-ui · ui/primitiveSurface card with hairline border. Optional hover-lift via `interactive`.0.1.0
- ui.primitive.checkboxopenalice-ui · ui/primitiveSquare checkbox with smooth check animation, native semantics, validators.0.6.0
- ui.primitive.comboboxopenalice-ui · ui/primitiveSearchable typeahead select. Custom filter, keyboard nav, validators.0.6.0
- ui.primitive.copy-buttonopenalice-ui · ui/primitiveClipboard copy with success-state animation.0.6.0
- ui.primitive.dialogopenalice-ui · ui/primitiveCompositional dialog API on top of Modal — header, title, description, footer slots.0.4.0
- ui.primitive.dropdownopenalice-ui · ui/primitiveCompound dropdown menu — trigger / content / item / separator / label, click-outside + ESC close.0.1.0
- ui.primitive.empty-stateopenalice-ui · ui/primitiveCentered empty-state panel — icon/illustration slot, title, body, optional CTA.0.6.0
- ui.primitive.form-fieldopenalice-ui · ui/primitiveComposes Label + control + helper/error + optional validators. Universal form row.0.6.0
- ui.primitive.inputopenalice-ui · ui/primitiveHairline text input — supports validators, helper text, icon slots, monospace mode.0.1.0
- ui.primitive.kbd-keyopenalice-ui · ui/primitiveKeyboard-shortcut chip. Multi-key combos via `combo` (string) or `keys` (array).0.6.0
- ui.primitive.labelopenalice-ui · ui/primitiveSemantic form label with required-star slot.0.6.0
- ui.primitive.modalopenalice-ui · ui/primitiveCentered dialog primitive — focus trap, ESC, scroll-lock, glass backdrop with grain.0.1.0
- ui.primitive.paginationopenalice-ui · ui/primitivePage-number navigator with prev/next + ellipsis.0.6.0
- ui.primitive.progressopenalice-ui · ui/primitiveBar progress — determinate (0-100) or indeterminate sliding bar.0.6.0
- ui.primitive.radio-groupopenalice-ui · ui/primitiveRadio button group with native semantics + Atelier styling + validators.0.6.0
- ui.primitive.scroll-areaopenalice-ui · ui/primitiveScrollable container with Atelier scrollbar styling.0.1.0
- ui.primitive.selectopenalice-ui · ui/primitiveHeadless select with keyboard nav, click-outside close, and validators.0.6.0
- ui.primitive.separatoropenalice-ui · ui/primitiveHairline horizontal/vertical divider with optional decorative gradient variant.0.1.0
- ui.primitive.skeletonopenalice-ui · ui/primitiveLoading placeholder with warm shimmer.0.1.0
- ui.primitive.slideropenalice-ui · ui/primitiveRange slider — native input semantics, brand-500 fill, focus ring.0.6.0
- ui.primitive.spinneropenalice-ui · ui/primitiveIndeterminate circular loader. Matches button sizes for inline use.0.6.0
- ui.primitive.switchopenalice-ui · ui/primitivePill toggle. Solar amber active state, hairline ring, native checkbox semantics.0.1.0
- ui.primitive.tabsopenalice-ui · ui/primitiveHairline-underline tabs with keyboard arrow nav.0.6.0
- ui.primitive.textareaopenalice-ui · ui/primitiveMulti-line text input with auto-resize, char count, and validators.0.1.0
- ui.primitive.tooltipopenalice-ui · ui/primitiveHover hint with 4-position support, configurable delay, hairline border.0.1.0
- ui.command-paletteopenalice-ui · ui/shellCmd+K / Ctrl+K command palette — modal overlay with fuzzy filter over a flat list of commands. Mounted by EcosystemShell so every product gets the same shortcut surface.0.5.0
- ui.ecosystem.shellopenalice-ui · ui/shellPersistent cross-product chrome — left sidebar with product switcher, top bar with account chip. Wraps each product's layout so the 5 products feel like one app.0.4.0
- voice.alice.toolsopenalice-voice · voice/agentsVoice tool schemas (voice_join, voice_leave, voice_speak, voice_status) for AI agents to participate in rooms.0.1.0
- voice.speaker.detectopenalice-voice · voice/audioActive speaker detection using LiveKit 2-gate + EMA over RFC 6464 audio levels.0.1.0
- voice.auth.tokenopenalice-voice · voice/authIssue a signed JWT (HS256) for joining a room with publish/subscribe scopes.0.1.0
- voice.cluster.select-nodeopenalice-voice · voice/clusterPick the best node for a new room using strategy (Any, LowestSysload, TwoChoice, RegionAware).0.1.0
- voice.quality.mosopenalice-voice · voice/qualityPer-participant connection quality MOS score using LiveKit E-model with asymmetric smoothing.0.1.0
- voice.rooms.createopenalice-voice · voice/roomsCreate a new voice room with a name and participant cap.0.1.0
- voice.rooms.listopenalice-voice · voice/roomsList active voice rooms with participant counts.0.1.0
- voice.signal.websocketopenalice-voice · voice/signalWebSocket signalling channel for join/leave/mute/offer/answer/ICE.0.1.0
- voice.transport.udp-muxopenalice-voice · voice/transportSingle-port UDP mux with RFC 5764 packet classification (STUN/DTLS/RTP/RTCP).0.1.0
- voice-client.coreopenalice-voice-client · voice/clientShared protocol-level WebRTC client for the openalice-voice SFU. Powers Live (recvonly), World (full duplex), and future Social/Persona consumers.0.1.0
- voice-client.packageopenalice-voice-client · voice/clientShared WebRTC voice client package — kills duplication between Live's listener and World's full-duplex voice chat. Future home of Social DM calls and Persona voice embed.0.1.0
- voice-client.reactopenalice-voice-client · voice/clientuseVoiceClient — React hook wrapping VoiceClient with audio elements, VAD, deafen, PTT.0.1.0
- world.agent.runneropenalice-world · world/agentWorld-side adapter that wires room presence + spatial chat + voice utterances into the OpenAlice agent contract. Same AgentRuntime works in Live, Social, Persona, World — World just adds proximity filtering and exposes change_scene tool calls back to the host renderer.0.5.0
- world.web.protocol_agent_hookopenalice-world · world/agentReact hook wiring WorldAgent + RestAgentRuntime + agent_config fetching for 3D rooms. Drop-in for legacy chat — once a contract-native runtime ships, only this hook's runtime ctor changes.0.5.0
- world.flora.biome-layeropenalice-world · world/floraBiome-aware Forge flora — Poisson-spaced canopy/detail/ground meshes per biome with wind-reactive shader.0.4.0
- world.scene.islandopenalice-world · world/renderFull island scene — terrain, ocean, sky, weather, flora, portals, multiplayer avatars, post-processing.0.1.0
- world.terrain.generateopenalice-world · world/terrainProcedural island terrain via FBM simplex noise — heightmap, biome map, vertex colours, normals, indices.0.1.0
- world.terrain.vegetation-scatteropenalice-world · world/terrainPoisson-disc vegetation placement on a terrain biome — deterministic, min-spaced, optional underwater.0.1.0
- world.voice.chatopenalice-world · world/voiceWebRTC voice chat in 3D world rooms via openalice-voice SFU. Now powered by @openalicelabs/voice-client.0.4.0
- world.weather.engineopenalice-world · world/weather24h day/night cycle with 8 phases, 6 weather types, lightning, rainbow, wind, server-authoritative sync.0.1.0