Skip to content

Changelog

March 2026

  • Added fullscreen Session Console on web – expand the sidebar into a full-page session list with inline AI summaries
  • Added OpenCode daemon (@cmdctrl/opencode) with native session sync in both directions
  • Added session search across active, archived, and externally-started sessions on web, iOS, and Android
  • Added account deletion on web (Settings → Danger Zone)
  • Added server-controlled app version gating – admins can require a minimum version; outdated users see a dismissible update banner or a blocking update screen
  • Added Starter tier ($5/mo) with read-only free tier enforcement across web, iOS, Android, watchOS, and Wear OS
  • Added Android in-app purchases
  • Added daemon offline state to watchOS and Wear OS session detail
  • Fixed Android device list not refreshing without a full app restart
  • Fixed Android search bar hidden after back-navigation
  • Fixed Aider follow-up messages to existing sessions
  • Fixed Cursor IDE PENDING session resolution

February 2026

  • Added Sign in with Apple on web, iOS, and Android
  • Added Gemini CLI daemon (@cmdctrl/gemini-cli-daemon)
  • Added Codex CLI daemon (@cmdctrl/codex-cli-daemon)
  • Added GitHub Copilot CLI daemon (@cmdctrl/vscode-copilot)
  • Rewrote Cursor CLI daemon using daemon SDK
  • Published daemon SDK for third-party agent integrations
  • Rebranded – new ❯ logo and live-text lockup across all platforms and app icons
  • Added Firebase Crashlytics to iOS
  • Added per-token APNs sandbox/production routing
  • Added daemon version tracking and self-update CLI command (cmdctrl-* update)
  • Added 9 MCP tools to match full API surface area
  • Added session ID discovery to Cursor IDE and VS Code Copilot daemons
  • Added auto-restart for daemons after npm package publish
  • Added batch AI summary generation with concurrent processing
  • Added AI session titles to session list on all platforms
  • Added CmdCtrl-queued messages to conversation history
  • Added error state with retry when API is unreachable in session detail
  • Added Android empty states distinguishing no-agents-connected from no-sessions-yet
  • Hashed device tokens with SHA-256 before storage
  • Filtered non-user content (JSON, XML tags) from chat display
  • Filtered system-generated entries from real-time user messages
  • Fixed session conflict broadcast for PENDING session renames
  • Fixed Cursor IDE real-time message updates and daemon stability
  • Fixed user-set session titles being overwritten by AI titles on all platforms
  • Fixed spurious external activity warnings after iOS app relaunch
  • Fixed iOS new session send button tap area expanding with text input height
  • Fixed passive mobile observers missing messages from external clients
  • Fixed mobile message ordering for full loads from API
  • Fixed large JSONL lines (base64 images) corrupting message history at start of file
  • Fixed daemon WebSocket 401 handling and reconnect backoff
  • Fixed Apple web OAuth callback using wrong redirect code
  • Fixed daemon install command using hyphens instead of underscores on verify page
  • Fixed WearOS adaptive icon foreground drawable
  • Fixed PENDING session merge for IDE daemons with pre-discovered sessions
  • Fixed new session streaming preserving optimistic messages and verbose output
  • Fixed first user message missing on new mock agent sessions
  • Fixed concurrent WebSocket write crash on backend
  • Opened developer registration
  • Docs site overhaul – FAQ, help section reorg, nav pill, footer
  • Published blog post: "What Is Cmd+Ctrl?"
  • Published blog post: "Build Your Own Daemon"

January 2026

  • Added iOS app with Google and GitHub OAuth, session list, dashboard, and real-time streaming
  • Added Android app with iOS feature parity
  • Added watchOS app with subscribed, on-my-radar, and recent session sections; dictation input
  • Added Wear OS app with messaging, radar/subscribe toggles, and refresh
  • Added Cursor IDE daemon (@cmdctrl/cursor-ide)
  • Added Aider daemon (@cmdctrl/aider)
  • Added push notifications for iOS (APNs) and Android (FCM) on agent task completion
  • Suppressed push notifications when the session is actively viewed
  • Added "Bring Me Up to Speed" AI narrative dashboard section on web, iOS, and Android
  • Added multi-AI provider support for session summaries and narratives
  • Added session dismiss with slide animation; dismissed sessions hidden from dashboard
  • Added API token management – generate, name, and revoke tokens from Settings
  • Added optimistic message sending with status indicator on iOS and Android
  • Added WebSocket connection status banner with debounce
  • Added typing animation to AI narrative bullet items on all platforms
  • Added pulsing animation to working status indicators on dashboard
  • Added back button navigation history to iOS and Android session detail
  • Added categorized sessions endpoint with 5-day sliding window for dashboard
  • Added centralized agent type icons served from backend
  • Added accordion session list sections with independent section toggling
  • Added radar (on-my-radar) and subscribe session states across all platforms
  • Added orange border/banner for watched sessions with new messages on iOS and web
  • Added iOS notification toast for watched session completions with haptic feedback
  • Added markdown rendering with table support to iOS and Android
  • Added safe area inset handling on iOS
  • Added format messages toggle on iOS and web
  • Added new session creation from UI with working directory selection on all platforms
  • Added E2E test suite with Playwright and Maestro mobile tests
  • Replaced font-based logo with app icon image
  • Unified external session visual treatment across all platforms
  • Unified dashboard UI across web, iOS, and Android
  • Fixed verbose output ordering and duplicate message issues
  • Fixed message ordering race conditions
  • Fixed iOS new session not receiving events after PENDING ID migration
  • Fixed Android duplicate user message bug
  • Fixed Android/iOS message send status not updating
  • Fixed Android new session creation and session list loading
  • Fixed iOS external activity notifications and message sync
  • Fixed session discovery not finding sessions absent from stale index
  • Fixed Cursor IDE daemon session watcher and connection ID persistence

December 2025

  • Initial release – Go backend, PostgreSQL, React web frontend
  • Added Claude Code daemon with session discovery, live output streaming, and task execution
  • Added Claude Code integration – start sessions, stream live output, reply from browser
  • Added real-time WebSocket updates replacing polling
  • Added split-pane multi-session web view
  • Added collapsible sidebar with session dots flyout for collapsed state
  • Added external session discovery – load and watch sessions started outside CmdCtrl
  • Added session conflict detection and warnings for concurrent access
  • Added verbose/live output streaming of agent tool calls in real time
  • Added markdown rendering with Tailwind Typography
  • Added image paste support on web
  • Added audio notifications on agent message arrival with customizable sounds
  • Added AI session title generation from first message
  • Added session title editing
  • Added search modal with Ctrl+K and keyboard navigation
  • Added jump-to-top button for long agent messages
  • Added up-arrow key to recall last sent message
  • Added light mode support across all web UI components
  • Added GCP deployment scripts
  • Added unit tests for adapters and API handlers
  • Added integration tests with local PostgreSQL test database
  • Added Google and GitHub OAuth authentication
  • Added working directory and hostname display in session header