How kpubaq/apogee works
Apogee is remote mission control for AntiGravity IDE/CLI: users issue commands through chat, the REST bridge, or a terminal CLI; Apogee dispatches prompts and control actions to the active AntiGravity target, then returns responses or screenshots. The central runtime is ApogeeCore, with CDP-backed task, model, workspace, capture, and auto-accept capabilities. The CLI also has direct CDP workflows. Several README capabilities are represented as documented branches where excerpts do not show their complete implementation; no persistent application database is evident.
Components 19
User Entry Points
- Telegram Adapter
src/adapters/TelegramAdapter.ts - Discord Adapter
src/adapters/DiscordAdapter.ts - REST Bridge
src/index.ts - CLI Dashboard
bin/apogee.ts
Mission Control
- Core Orchestrator
src/core/ApogeeCore.ts - Access Sessions
src/core/SessionManager.ts - Event Bus
src/core/EventBus.ts
AntiGravity Control
- CDP Client
src/cdp/CDPClient.ts - Task Dispatch & Watch
src/cdp/TaskWatcher.ts - Auto-Accept Observer
src/cdp/DOMObserver.ts - Model Selector
src/cdp/ModelSelector.ts - Screenshot Capture
src/cdp/ScreenCapture.ts - Workspace Manager
src/cdp/WorkspaceManager.ts
Runtime Support
- Runtime Config
src/config/index.ts - Logger
src/utils/logger.ts - Terminal Branding
src/utils/banner.ts
Other components
- Remote User
- Terminal User
- AntiGravity
Connections 28
- Remote User → Telegram Adapter: sends commands
README.md - Remote User → Discord Adapter: sends commands
README.md - Terminal User → CLI Dashboard: runs commands
README.md - Telegram Adapter → Core Orchestrator: dispatches messages
README.md - Discord Adapter → Core Orchestrator: dispatches messages
src/adapters/DiscordAdapter.ts - REST Bridge → Core Orchestrator: forwards commands
src/index.ts - Core Orchestrator → Access Sessions: checks access
src/core/ApogeeCore.ts - Core Orchestrator → Task Dispatch & Watch: dispatches prompts
src/core/ApogeeCore.ts - Core Orchestrator → Auto-Accept Observer: starts observer
src/core/ApogeeCore.ts - Core Orchestrator → Model Selector: sets model
src/core/ApogeeCore.ts - Core Orchestrator → Screenshot Capture: requests capture
src/core/ApogeeCore.ts - Core Orchestrator → Workspace Manager: manages projects
src/core/ApogeeCore.ts - Core Orchestrator → CDP Client: selects target
src/core/ApogeeCore.ts - Task Dispatch & Watch → CDP Client: evaluates UI
src/cdp/TaskWatcher.ts - Auto-Accept Observer → CDP Client: observes DOM
src/cdp/DOMObserver.ts - Model Selector → CDP Client: switches model
src/cdp/ModelSelector.ts - Screenshot Capture → CDP Client: captures viewport
src/cdp/ScreenCapture.ts - Workspace Manager → Task Dispatch & Watch: sends setup prompt
src/cdp/WorkspaceManager.ts - CDP Client → AntiGravity: controls via CDP
src/cdp/CDPClient.ts - CDP Client → Event Bus: emits mutations
src/cdp/CDPClient.ts - Telegram Adapter → Event Bus: subscribes responses
src/adapters/TelegramAdapter.ts - Discord Adapter → Event Bus: subscribes responses
src/adapters/DiscordAdapter.ts - REST Bridge → Runtime Config: loads settings
src/index.ts - Core Orchestrator → Runtime Config: uses settings
src/core/ApogeeCore.ts - CLI Dashboard → CDP Client: queries target
bin/apogee.ts - CLI Dashboard → Task Dispatch & Watch: dispatches prompt
bin/apogee.ts - CLI Dashboard → Workspace Manager: manages projects
bin/apogee.ts - CLI Dashboard → Terminal Branding: renders dashboard
bin/apogee.ts