Brand & Business

Summary

Project Telemy (originally codenamed “Project Aegis”) is an OBS-focused streaming reliability system that went through a multi-agent deliberation process spanning 11 revisions across three AI agents (Claude, Codex, Gemini) to lock its architecture, business model, and product roadmap. The deliberation resolved critical decisions including the Go backend pivot (replacing direct AWS SDK calls from the Rust client), the three-credential auth model (pair_token, cp_access_jwt, relay_ws_token), Time Bank pricing tiers, hosted-only infrastructure (BYOA dropped), and a phased build sequence targeting 15-19 weeks to full product. The product competes primarily with NOALBS (free, open-source) and Easy IRL Stream (free OBS plugin with DuckDNS + SRTLA).

The rebrand from “Aegis” to “Telemy” was executed as a comprehensive codebase-wide rename touching Go module paths, C++ namespaces, CMake targets, JS/JSX dock components, environment variables, Docker containers, database names, metric prefixes, and all documentation. The rebrand was sequenced last in a five-workstream plan (approved 2026-03-27) that also included dashboard accessibility polish, session cookie binding (H2 security fix), a public health/status page, and documentation pages for telemyapp.com. The web presence runs on Cloudflare Pages (zero fixed cost) with the control plane deployed on the Advin server (208.84.101.84) running Docker Compose with PostgreSQL.

Future product differentiation includes a deferred real-time video stabilization feature — a Rust + wgpu compute shader pipeline that would process incoming SRT/SRTLA frames on the receiving PC’s GPU before OBS encoding. This was evaluated against LiveVisionKit (archived April 2024) and cloud-hosted alternatives (rejected due to 55-135ms latency, 6-15 MB/s bandwidth, and $0.30-1.20/hr cost). The stabilizer would be local-only, opt-in, gated behind GPU hardware checks (minimum RTX 2060 / RX 5000), and completely decoupled from core failover logic.

Timeline

  • 2026-02-28: Telemy web and monetisation plan approved. Stack decided: Cloudflare Pages (landing), Stripe (payments), Vercel (webhook + license validation), Resend (transactional email). Total fixed monthly cost: $0.
  • 2026-02-28: Landing page design decisions locked: dark theme (#0a0e1a), interactive dock mockup hero, OBS theme switcher, Oxanium headings + Inter body. Grafana demoted from headline feature.
  • ~2026-03 (Rev 1-6): Multi-agent deliberation begins. Tauri-in-dock rejected in favor of OBS Plugin with CEF Browser Dock (Rev 3). Go backend pivot proposed (Rev 5), ChatBridge restored after veto (Rev 6).
  • ~2026-03 (Rev 7): Claude concedes Go backend is necessary, confirms JWT for control plane auth (not just 8-char tokens), formalizes latency SLA (<500ms cloud, <550ms local), and publishes revised 4-phase build sequence.
  • ~2026-03 (Rev 8): Codex locks engineering contracts C1-C4 (relay survival, credential separation, SLA wording, idempotent lifecycle) and hardening items H1-H3 (reconnect semantics, ChatBridge abuse controls, relay runtime in Go).
  • ~2026-03 (Rev 10): Claude confirms unanimous consensus on all contracts and product decisions. Architecture locked. Time Bank pricing proposed (Starter 10/40hr, Pro 0.30/hr). Two launch regions confirmed (us-east-1, eu-west-1).
  • ~2026-03 (Rev 11): Codex prepares independent briefing packet for Kimi K 2.5 cross-agent validation. All contracts and scope decisions summarized for external review.
  • 2026-03-18: Video stabilization future exploration document added. Deferred to Phase 3+.
  • 2026-03-27: Five remaining workstreams approved in priority order: (1) Dashboard accessibility L-1 to L-7, (2) H2 session cookie binding, (3) W3 health page, (4) W4 docs pages, (5) Aegis-to-Telemy full codebase rebrand.
  • 2026-03-27: Full rebrand plan created — 9 tasks covering Go module paths, C++ namespaces/defines, CMake targets, JS/JSX dock files, .gitignore, documentation, and build artifact cleanup.

Current State

The architecture is locked and the codebase has been (or is being) rebranded from Aegis to Telemy. Five workstreams were approved on 2026-03-27, ordered by risk: dashboard accessibility fixes (CF Pages only), H2 session cookie security (CF Pages functions only), W3 health page (Go API + CF Pages), W4 docs pages (6 static HTML pages), and the Aegis-to-Telemy rebrand (coordinated deploy with downtime). The rebrand touches environment variables (TELEMY_ prefix), binary names (telemy-api, telemy-jobs), Docker containers, the PostgreSQL database name, metric prefixes (telemy_*), and all code/documentation references.

The web stack is live on telemyapp.com via Cloudflare Pages. The control plane runs on the Advin server with Docker Compose (telemy-postgres, telemy-api, telemy-jobs). The monetization model moved from the original Vercel + license key approach (Feb 2026) to a Go backend with Stripe integration and Time Bank pricing tiers, reflecting the architectural pivot to a managed hosted service.

Phase 1 (Studio Mode + ChatBridge, no cloud) is the immediate build target. IRL Mode with cloud relays enters in Phase 2+. The product is Windows 10/11 only for v2.0.

Key Decisions

  • 2026-02-28: Cloudflare Pages for hosting, Stripe for payments, zero fixed monthly cost. — Maximizes trust (Stripe brand visible), minimizes infrastructure burden for a solo developer.
  • ~2026-03 (Rev 3): OBS Plugin with CEF Browser Dock chosen over Tauri-in-dock. — CEF dock is native to OBS, avoids shipping a second browser runtime, and enables tight OBS Frontend API integration.
  • ~2026-03 (Rev 3): Child process supervision (Rust core as separate .exe) over FFI. — Crash isolation: if the Rust core crashes, OBS stays alive and the plugin can attempt one restart.
  • ~2026-03 (Rev 5): Go backend replaces direct AWS SDK calls from Rust client. — Cannot ship AWS IAM keys in a distributed binary; need server-side authority for relay lifecycle, billing, and zombie relay cleanup.
  • ~2026-03 (Rev 5-7): Grace window reduced from 30 minutes to 10 minutes. — At 0.0028 per idle event. Covers phone reboot (90s), dead zones (2-5min), battery swaps (3-5min) while preventing abandoned session cost leakage.
  • ~2026-03 (Rev 6-7): ChatBridge retained as non-negotiable feature. — IRL streamers in the field have no interface except chat. Removing it would make Telemy inferior to NOALBS (free). Stays in Rust core as local tokio task, not routed through Go backend.
  • ~2026-03 (Rev 7): Token = SRT streamid for mobile ingest only. Token != control plane auth. — 8-char token serves Larix/IRL Pro streamid field. Separate JWT handles Rust-to-backend auth. Separate relay_ws_token handles Rust-to-relay WebSocket auth.
  • ~2026-03 (Rev 8): Idempotent relay lifecycle with UUIDv4 Idempotency-Key header. — Prevents double-billing from network retries. Same key within 5 min returns existing session, not new provisioning.
  • ~2026-03 (Rev 8): Relay does not self-destruct while ingest is active (C1). — Requires BOTH no backend heartbeat for 15min AND no ingest traffic for 10min before teardown. Prevents backend outage from killing active streams.
  • ~2026-03 (Rev 10): BYOA (Bring Your Own AWS) dropped entirely. — Simplifies Rust core (no AWS SDK), simplifies support (one environment), protects margins. Enterprise BYOA deferred to hypothetical v3.0.
  • ~2026-03 (Rev 10): Time Bank pricing model adopted. — Balances predictable cost for users against margin protection. Avoids flat-rate unlimited (attracts heavy users who erode margins) and pure per-minute billing (creates anxiety).
  • ~2026-03 (Rev 10): Two AWS regions at launch: us-east-1 (Virginia) + eu-west-1 (Ireland). — Covers 80% of English-speaking IRL streaming market. ap-northeast-1 (Tokyo) planned for Phase 2 expansion.
  • 2026-03-18: Video stabilization deferred to Phase 3+. Local-only, Rust + wgpu, not cloud. — Cloud stabilization rejected (55-135ms latency, 6-15 MB/s bandwidth, $0.30-1.20/hr cost). Relay-side rejected (breaks ARM64 EC2 architecture).
  • 2026-03-27: Rebrand sequenced last in workstream plan (highest risk). — Coordinated deploy with downtime across Go code, Docker, database, and CF Pages. Lower-risk accessibility and security fixes ship first.

Experiments & Results

ExperimentStatusFindingSource
Tauri-in-dock for dashboard UIRejected (Rev 3)Shipping a second browser runtime inside OBS is unnecessary; CEF dock is native and lighteraegis-deliberation Rev 3-7
AWS SDK in Rust client (BYOA)Rejected (Rev 5)Cannot ship IAM keys in distributed binary; cannot trust client for billing; zombie relay risk on hard crashaegis-deliberation Rev 5-7
30-minute grace windowRevised to 10min (Rev 5)30 min too expensive across 1000+ users with frequent phone reboots; 10 min covers all reasonable reconnect scenarios at $0.0028/eventaegis-deliberation Rev 5-7
Cloud-hosted video stabilizationRejected55-135ms round-trip latency per frame unacceptable for real-time; 6-15 MB/s bandwidth impossible for IRL streamers on mobile; $0.30-1.20/hr per session exceeds pricing marginsvideo-stabilization.md
Relay-side video stabilizationRejectedRequires GPU-equipped instances, breaks ARM64 EC2 ephemeral architecture, multiplies infrastructure costsvideo-stabilization.md
LiveVisionKit (LVK) as fork baseRejectedOpenCV + OpenCL dependency too large; OpenCL driver compatibility issues; different design conventions; use as algorithm reference onlyvideo-stabilization.md
Vercel + license key validationSupersededOriginal Feb 2026 plan used Vercel serverless + KV for license keys; replaced by Go backend with JWT auth and Stripe subscription management as architecture maturedtelemyapp-web-plan.md
All-Rust backendRejected (Rev 7)Rust async + lifetimes = pain for CRUD endpoints; Go’s simplicity is a productivity multiplier for HTTP/DB/Stripe workaegis-deliberation Rev 7
All-Go local engineRejected (Rev 7)GC pauses unacceptable for state machine that must switch scenes within 50ms of failure detectionaegis-deliberation Rev 7

Gotchas & Known Issues

  • The Aegis-to-Telemy rebrand requires coordinated downtime: database rename, directory move, Docker container recreation, binary upload, and .env update must happen in sequence on the Advin production server.
  • The rebrand plan document contains apparent no-op lines (e.g., mv control-plane control-plane) suggesting some renames had already been partially completed when the plan was written. Verify actual state before executing remaining tasks.
  • Environment variables use the TELEMY_ prefix (not AEGIS_), indicating some renaming may have occurred incrementally before the formal rebrand plan.
  • The original web monetization plan (Feb 2026) used Vercel for webhook/license API. The current architecture uses a Go backend directly. The Vercel approach is superseded but the document still exists in docs/archive/.
  • Video stabilization audio sync is an unsolved UX problem: frame buffering introduces delay that must be compensated. LVK required manual audio delay adjustment. Automatic compensation in Rust core is an open research question.
  • LiveVisionKit license must be reviewed before any algorithm reference. The project is archived (read-only since April 2024) but developer expressed openness to collaboration/forking.
  • The Go backend’s health endpoint is at /health (root level), not under /api/v1/. CORS must be configured to allow the CF Pages status page to fetch it directly.
  • ChatBridge !irl on triggers a backend API call from within chat context, creating a cross-concern dependency between the local ChatBridge tokio task and the Go control plane.

Open Questions

  • Exact pricing numbers for Time Bank tiers are proposed but not finalized by the founder. Starter 10/40hr, Pro 0.30/hr overage are recommendations, not commitments.
  • Video stabilization motion estimation algorithm not chosen: optical flow (ORB/AKAZE) vs. phase correlation vs. block matching — tradeoffs TBD at implementation time.
  • Can the Rust core automatically detect and compensate for frame buffer delay (audio sync) or will users need manual adjustment?
  • Should video stabilization register as an OBS filter (per-source) or be handled entirely within telemy-core before frames reach OBS?
  • Can gyroscope metadata from phones be leveraged for hybrid stabilization via SRT feed?
  • When/if to add ap-northeast-1 (Tokyo) as third AWS region — demand-driven decision deferred to post-launch.
  • Kimi K 2.5 cross-agent validation (Rev 11) outcome not captured in the source files — unclear if external review was completed.
  • Web remote control feature mentioned as “not teased on landing page” (Feb 2026) — no further design or timeline exists.

Sources

  • 2026-03-27-aegis-to-telemy-full-rebrand.md
  • 2026-03-27-remaining-workstreams-design.md
  • 2026-03-27-remaining-workstreams-plan.md
  • video-stabilization.md
  • Project_Aegis_Deliberation_Claude_Rev7.md
  • Project_Aegis_Deliberation_Codex_Rev8.md
  • Project_Aegis_Deliberation_Claude_Rev10.md
  • Project_Aegis_Deliberation_Codex_Rev11.md
  • 2026-02-28-telemyapp-web-plan.md