This repository has been archived on 2026-06-07. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
master-ai/architecture.md

14 KiB

Vibn Architecture

Overview

Every project gets a persistent AI brain (the Master Orchestrator) that runs 24/7 on shared infrastructure. It manages specialist agents that handle Coding, Marketing, Support, Monitoring, and Debugging autonomously. Users interact through three channels: mobile app, browser dashboard, or the full Theia IDE.


System Layers

┌─────────────────────────────────────────────────────────────────┐
│                        User Interfaces                          │
│                                                                 │
│   Mobile App          Browser Dashboard        Theia IDE        │
│   (chat + status)     (chat + dashboards)      (full IDE +      │
│                                                 vibe coding)    │
│   REST/WebSocket      REST/WebSocket           WebSocket        │
└────────┬───────────────────┬───────────────────────┬────────────┘
         │                   │                       │
         └───────────────────┼───────────────────────┘
                             │
┌────────────────────────────┴────────────────────────────────────┐
│                      API Gateway                                │
│              api.vibnai.com                                     │
│   Auth, routing, WebSocket upgrade, rate limiting               │
└────────────────────────────┬────────────────────────────────────┘
                             │
┌────────────────────────────┴────────────────────────────────────┐
│                   Master Orchestrator                            │
│                   (Hot Tier — always running)                    │
│                                                                 │
│   - Full project context (code, docs, marketing, support)       │
│   - Routes work to specialist agents                            │
│   - Receives webhooks (Gitea push, Coolify deploy, support tix) │
│   - Manages task queue across all agents                        │
│   - Calls Gemini API                                            │
│   - Persists conversation history per project                   │
│                                                                 │
│   Specialist Agents (run as needed):                            │
│   ┌──────────┬───────────┬──────────┬────────────┬───────────┐  │
│   │  Coder   │ Marketing │ Support  │ Monitor    │ Debugger  │  │
│   │          │           │          │            │           │  │
│   │ Writes   │ Updates   │ Answers  │ Watches    │ Reads     │  │
│   │ code,    │ landing   │ user     │ logs,      │ errors,   │  │
│   │ tests,   │ pages,    │ tickets, │ uptime,    │ traces    │  │
│   │ deploys  │ docs,     │ FAQ,     │ alerts on  │ stack,    │  │
│   │ via      │ release   │ drafts   │ failures   │ proposes  │  │
│   │ Gitea +  │ notes     │ replies  │            │ fixes     │  │
│   │ Coolify  │           │          │            │           │  │
│   └──────────┴───────────┴──────────┴────────────┴───────────┘  │
└────────────────────────────┬────────────────────────────────────┘
                             │
┌────────────────────────────┴────────────────────────────────────┐
│                   Shared Infrastructure                         │
│                                                                 │
│   Gitea (git.vibnai.com)     — code, docs, marketing content   │
│   Coolify (coolify.vibnai.com) — deploys, hosting, logs        │
│   Database (Postgres)         — conversations, tasks, user data │
│   Object Storage              — assets, screenshots, artifacts  │
└─────────────────────────────────────────────────────────────────┘

                             │
┌────────────────────────────┴────────────────────────────────────┐
│                   User Workspaces (Cold Tier)                   │
│                                                                 │
│   Per-user Theia IDE containers                                 │
│   - Hibernate when not in use (storage persists)                │
│   - Wake in 2-5 seconds when user opens browser                 │
│   - Mount project workspace volume                              │
│   - Full code editor, terminal, AI chat                         │
│   - For manual vibe coding sessions                             │
└─────────────────────────────────────────────────────────────────┘

Master Orchestrator

The central AI brain for each project. Always running on shared infrastructure.

What it knows

  • Full codebase (via Gitea API)
  • Deployment state (via Coolify API)
  • Task/ticket history (database)
  • Conversation history with the user across all channels
  • What each specialist agent is doing

How it receives work

  1. User message — from mobile app, browser, or Theia IDE chat
  2. Gitea webhook — code pushed, PR opened, issue created
  3. Coolify webhook — deploy completed, service crashed
  4. Scheduled checks — cron-based monitoring, report generation
  5. Support ticket — customer question routed in

How it dispatches

  • Analyzes the event/message
  • Decides which specialist agent(s) should act
  • Dispatches to one or more agents simultaneously
  • Tracks completion, reports results back to user
  • Queues follow-up work if needed

Specialist Agents

Coder

  • Trigger: User request, Orchestrator dispatch
  • Tools: Gitea API (read/write code), Coolify API (deploy), shell execute
  • Output: Code commits, PRs, deployments
  • Autonomy: Can commit to feature branches, needs approval for main

Marketing

  • Trigger: New feature deployed, Orchestrator dispatch
  • Tools: Gitea API (update marketing repo), content templates
  • Output: Updated landing pages, release notes, feature announcements
  • Autonomy: Drafts content, queues for user review

Support

  • Trigger: Support ticket/question received, Orchestrator dispatch
  • Tools: Codebase search, docs search, conversation history
  • Output: Draft replies, FAQ updates, escalation to Coder if it's a bug
  • Autonomy: Can draft responses, user approves before sending

Monitor

  • Trigger: Scheduled (every N minutes), Coolify webhook on failure
  • Tools: Coolify API (logs, status), health check endpoints
  • Output: Status reports, alerts, escalation to Debugger on failures
  • Autonomy: Fully autonomous — monitors and alerts without user input

Debugger

  • Trigger: Monitor detects failure, user reports bug, error logs
  • Tools: Coolify logs, Gitea code search, stack trace analysis
  • Output: Root cause analysis, proposed fix, delegates to Coder if approved
  • Autonomy: Analyzes and proposes, needs approval to fix

User Interfaces

Mobile App (chat-first)

  • Simple chat interface to the Master Orchestrator
  • Push notifications for alerts, completed tasks, questions needing approval
  • Quick actions: approve deploy, review draft, check status
  • No code editing — just conversation and oversight

Browser Dashboard (command center)

  • Chat with the Master Orchestrator
  • Dashboard panels: deploy status, agent activity, recent changes
  • Review queues: marketing drafts, support replies, code PRs
  • Project timeline and task tracking
  • No code editing — management and oversight

Theia IDE (full workspace)

  • Full code editor, terminal, file tree
  • AI chat with Coder agent for hands-on vibe coding
  • Design panel for visual preview
  • For when the user wants to write code themselves
  • Connects to the same project workspace as the Orchestrator

Communication Flow

User chats from mobile

User (mobile): "How's the launch looking?"
  → API Gateway → Master Orchestrator
  → Orchestrator checks: Coder status, Marketing status, Monitor status
  → Response: "Code is deployed. Marketing page updated. 
     99.8% uptime last 24h. Two support tickets pending your review."

User assigns work from mobile

User (mobile): "Add a pricing page with three tiers"
  → Master Orchestrator dispatches:
    1. Coder: build /pricing route with tier components
    2. Marketing: draft copy for three pricing tiers
  → User closes app
  → Coder commits code, deploys to staging
  → Marketing drafts copy, queues for review
  → User gets push notification: "Pricing page ready for review"

Automated monitoring

Monitor agent (scheduled): checks Coolify every 5 min
  → Detects: API response time > 2s
  → Escalates to Debugger
  → Debugger: reads recent commits, checks logs
  → Debugger: "Memory leak in auth middleware introduced in commit abc123"
  → Orchestrator: notifies user via push notification
  → User (mobile): "Fix it"
  → Orchestrator → Coder: revert/fix the commit, deploy

Infrastructure

Hot Tier (shared, always running)

  • 2-4 servers on Hetzner/Coolify
  • Runs Master Orchestrator + specialist agents for ALL projects
  • Stateless compute — reads/writes to Gitea and database
  • Scales horizontally with demand
  • Estimated cost: $60-200/mo for the first 1,000 projects

Cold Tier (per-user, on-demand)

  • Theia IDE containers, one per user workspace
  • Hibernate after idle timeout
  • Wake on browser access
  • Storage persists (workspace volumes)
  • Estimated cost: $1-2/mo per user (mostly storage)

Shared Services

  • Gitea: code, docs, marketing content (self-hosted on Coolify)
  • Coolify: container orchestration, deploys, logs
  • Postgres: conversations, tasks, user accounts, agent state
  • Redis (optional): task queue, real-time pub/sub for agent coordination

Data Flow

All code/content → Gitea repos (source of truth)
All deploys      → Coolify (hosting + logs)
All conversations → Postgres (history + context)
All agent state   → Postgres (what's running, what's queued)

Every specialist agent reads from and writes to these shared services. No agent has local state that would be lost on restart. The Master Orchestrator coordinates but doesn't store — it queries.


Agent Tool Registry

The agent runner uses a modular tool registry (src/tools/). Each domain file registers its tools on import — agents declare which subset they use.

Tool file Tools Used by
file.ts file read/write/list Orchestrator, Coder
shell.ts shell execute Orchestrator, Coder
git.ts git operations Orchestrator, Coder
gitea.ts Gitea API (repos, issues, PRs) Orchestrator, Coder
coolify.ts Coolify API (deploy, logs, status) Orchestrator, Monitor
agent.ts spawn sub-agents Orchestrator
memory.ts knowledge base read/write All agents
skills.ts reusable markdown skill lookup All agents
prd.ts finalize_prd — save completed PRD Atlas
search.ts web_search — internet search via Jina AI Atlas

Web Search (web_search tool)

Atlas has access to real-time web search via Jina AI's search endpoint — completely free, no API key required.

How it works:

  • Atlas calls web_search with a plain-language query
  • The tool fetches https://s.jina.ai/<query> which returns clean markdown-formatted results
  • Results are truncated to ~6,000 characters to keep context window usage reasonable
  • Atlas uses this to ground discovery conversations in real-world context

What Atlas uses it for:

  • Researching competitors and existing solutions
  • Understanding market pricing and business models
  • Looking up relevant technologies, frameworks, or integrations the user mentions
  • Validating assumptions ("is this a solved problem? what do incumbents miss?")

No configuration needed — Jina AI's free tier requires no credentials. If stricter control or higher volume is needed in future, swap the endpoint for Tavily, Brave Search, or Google Custom Search by updating src/tools/search.ts.


What to build (in order)

Phase 1: Foundation

  • Move AI agents to Theia backend (server-side execution)
  • Master Orchestrator service with multi-agent dispatch
  • Postgres schema for conversations, tasks, agent state
  • API Gateway with auth and WebSocket support

Phase 2: Agents

  • Coder agent (already exists — extract from Theia frontend)
  • Monitor agent (Coolify log watcher + health checks)
  • Marketing agent (content generation + Gitea commits)
  • Support agent (ticket intake + draft responses)
  • Debugger agent (log analysis + fix proposals)

Phase 3: Interfaces

  • Browser dashboard (React app, chat + status panels)
  • Mobile app (React Native or Flutter, chat + push notifications)
  • Theia IDE integration (connect to Master Orchestrator)

Phase 4: Scale

  • Workspace hibernation and wake-on-access
  • Multi-project support per user
  • Hot tier horizontal scaling
  • Usage-based billing