Back to corpus
research notebacklog referencescore 18

IMPLEMENTATION GUIDE — Unified Agent OS

| Decision Type | Signals Required | Who Decides | |---------------|------------------|-------------| | Micro (naming, formatting) | 1 signal | Agent autonomy | | Meso (module design, API shape) | 2 signals | Agent + existing pattern | | Macro (architecture, schema, external contracts) | 3+ signals | Human approval required |

Full HTML reader

Read the full artifact

Open in new tab

Extracted abstract or opening context

| Decision Type | Signals Required | Who Decides | |---------------|------------------|-------------| | Micro (naming, formatting) | 1 signal | Agent autonomy | | Meso (module design, API shape) | 2 signals | Agent + existing pattern | | Macro (architecture, schema, external contracts) | 3+ signals | Human approval required | ### Conflict Resolution 1. Invariants always win 2. Charter direction constraints override implementation preference 3. Existing working code > proposed redesign (unless invariant violated) 4. Simplicity > cleverness | Layer | Technology | Rationale | |-------|-----------|-----------| | **Language** | TypeScript | Existing Pulse v3 is TS; Clawdbot ecosystem is Node; type safety for API contracts | | **Runtime** | Node.js / Bun | Compatible with existing skills; Bun for performance-critical paths | | **API Framework** | Hono | Lightweight, edge-compatible, TypeScript-native | | **Database** | PostgreSQL (Supabase) | Existing infrastructure; Row-Level Security for tenant isolation; real-time subscriptions | | **Cache / PubSub** | Redis (Upstash) | Event bus, session state, rate limiting; serverless-compatible | | **Auth** | Supabase Auth + API Keys | Supabase for dashboard SSO; API keys for programmatic access | | **Object Storage** | Supabase Storage / S3 | Workspace files, skill packages, checkpoints | | **Deployment** | Fly.io / Railway | Container-based; supports long-running processes (agent sessions) | | **Queue** | BullMQ (Redis-backed) | Session scheduling, chain execution, retry logic | | Layer | Technology | Rationale | |-------|-----------|-----------| | **Dashboard** | Next.js 14+ | React ecosystem; SSR for initial load; API routes co-located | | **Real-time** | WebSocket (Hono upgrade) + Supabase Realtime | Dual: WS for custom events, Supabase for DB changes | | **Observability** | OpenTelemetry → Grafana Cloud | Standard tracing; affordable managed option | | **Billing** | Stripe | Usage-based billing; metered subscriptions | ### Atomic Unit One checklist item = one of: - A single file/module created with clear interface - A single API endpoint (route + handler + test) - A single database migration - A single integration between two modules

Promotion decision

What has to happen next

Keep in the searchable backlog until it intersects a live paper or system.

Why this is not always a full paper yet

Corpus pages are public-safe readers for discovered workspace artifacts. They are not automatically final papers. A corpus item becomes a polished paper only after the editable source, evidence checkpoints, references, figures, render path, and release status are attached through the paper schema.