Status: Current reference. For active product truth and operational boundaries, start with
docs/current-source-of-truth.md.
Date: 2026-03-04 (America/Los_Angeles)
- CLI entry:
src/cli/friday-cli.ts- Parses CLI args and dispatches to hub/runtime operations.
- Hub composition root:
src/hub/friday-hub-bootstrap.ts- Wires state, API runtime, agent runtime, channels, jobs, browser/desktop capabilities.
- HTTP server:
src/api/http/friday-http-server.ts- Owns request lifecycle, auth/error mapping, route dispatch, SSE/WS handling.
- Discord channel adapter:
src/channels/discord/friday-discord-channel.ts- Inbound Discord messages -> hub handler; outbound delivery back to Discord.
- UI app entry:
ui/src/main.tsx- React bootstrap for frontend panel.
acceptance: acceptance-test engine and API contracts.agent: LLM orchestration runtime, tool registry, run lifecycle, subagents.api: auth/realtime/http route runtime and external API contracts.browser: browser manager/session targeting/artifact handling.channels: multi-channel adapters and channel registry (Discord/Slack/etc.).cli: command-line command parsing and runtime loop.config: config IO, backup, migration/rotation helpers.converter: source-to-skill conversion pipeline and diagnostics.cross-program: cross-runtime typed protocol/model layer.daemon: daemonized runtime process management.desktop: desktop automation adapters, permissions, recording/session manager.errors: shared domain error model and code taxonomy.heartbeat: periodic health/maintenance execution runner.hub: top-level runtime composition and service wiring.jobs: scheduler and background jobs (sessions/workflows/learning/satellites).learning: self-learning runtime, auto-fix, preference extraction services.ledger: persistent run/event storage.lib: shared low-level constants and utility primitives.link-understanding: URL/content understanding pipeline.marketplace: marketplace model/engine/persistence/routes.media: media utilities and handling.media-understanding: image/media understanding primitives.memory: memory services, sync, repositories.node-runner: execution for pipeline/workflow nodes.nodes: node definitions and execution contracts.observability: event/audit/trace model and engine.packaging: package build/sign/publish APIs.playbook: playbook model/runtime/persistence.plugins: plugin lifecycle, registry, signature/marketplace integration.providers: model provider auth/catalog/routing/fallback.retry: retry engine/classifier/orchestrator APIs.routing: reply routing and destination policy.rules: rule engine and policy evaluation.satellites: distributed node sync/pairing/services.security: tenant isolation, safe paths, audit log, authz boundaries.sessions: session lifecycle and extraction services.skills: skill registry/generator/import/marketplace sync.state: SQLite state runtime and migrations.tui: terminal UI flows.uix: guided UX workflow/runtime models and APIs.utilities: shared filesystem/network/string helpers.workflows: workflow compile/runtime/execution services.xhs: XHS-specific browser interaction/session tooling.
test/: unit/integration/e2e suites and helpers.scripts/: CI/ops/quality gates and local automation scripts.ui/: web frontend code and styles.docs/: architecture, operations, runbooks, test plans, review packages..github/workflows/: CI pipelines and release gates.
- Ingress:
- CLI (
src/cli) or channel adapters (src/channels) or HTTP (src/api/http).
- CLI (
- Composition:
- Hub (
src/hub) resolves capabilities and wires services.
- Hub (
- Execution:
- Agent runtime (
src/agent) + workflows (src/workflows) + tools (src/agent/tools+ domain modules).
- Agent runtime (
- Persistence/State:
- State/session/memory/ledger (
src/state,src/sessions,src/memory,src/ledger).
- State/session/memory/ledger (
- Egress:
- API responses (
src/api/http), channel outbound messages (src/channels), artifacts (reports/or configured paths).
- API responses (