How octane0411/open-vibe-island works
Open Island is a local-first macOS control surface for AI coding-agent sessions, with companion iPhone and Apple Watch clients. The primary flow is agent hook events → local IPC → session state → notch/top-bar overlay → user action to return to the relevant terminal or IDE. Agent-specific integrations, session discovery, hook setup, and permission/completion notifications are distinct supporting capabilities. The README documents the bridge flow; sampled excerpts confirm terminal jumping and mobile/watch event handling. Some subsystem wiring is therefore shown only where documentation supports it.
Main entry points: ConnectionManager.swift Mac connection · BridgeServer.swift Local bridge · WatchConnectivityManager.swift Watch connectivity · WatchSessionManager.swift Apple Watch
Components 22
Agent integrations
- Agent hooks
Sources/OpenIslandCore/ClaudeHooks.swift - Hook installation
Sources/OpenIslandApp/HookInstallationCoordinator.swift - Hooks CLI
Sources/OpenIslandHooks/OpenIslandHooksCLI.swift
Mac runtime
- Local bridge
Sources/OpenIslandCore/BridgeServer.swift - Agent events
Sources/OpenIslandCore/AgentEvent.swift - Session state
Sources/OpenIslandCore/SessionState.swift - Session discovery
Sources/OpenIslandApp/SessionDiscoveryCoordinator.swift - App model
Sources/OpenIslandApp/AppModel.swift - Process monitoring
Sources/OpenIslandApp/ProcessMonitoringCoordinator.swift
User surface
- Overlay controller
Sources/OpenIslandApp/OverlayPanelController.swift - Island panel
Sources/OpenIslandApp/Views/IslandPanelView.swift - Settings
Sources/OpenIslandApp/Views/SettingsView.swift - Terminal jump
Sources/OpenIslandApp/TerminalJumpService.swift
Mobile companions
- iPhone app
ios/OpenIslandMobile/App.swift - Mac connection
ios/OpenIslandMobile/Network/ConnectionManager.swift - Watch connectivity
ios/OpenIslandMobile/Network/WatchConnectivityManager.swift - Notifications
ios/OpenIslandMobile/Notifications/NotificationManager.swift - Apple Watch
ios/OpenIslandWatch/WatchSessionManager.swift
Other components
- Coding agents
- Terminal or IDE
- macOS app
Sources/OpenIslandApp/OpenIslandApp.swift - Watch user
Connections 23
- Coding agents → Agent hooks: emits hooks
- Settings → Hook installation: manages hooks
- Agent hooks → Hooks CLI: invokes CLI
- Hooks CLI → Local bridge: sends IPC
- Local bridge → Agent events: decodes events
- Local bridge → Session state: updates state
- Session discovery → Session state: discovers sessions
- Process monitoring → App model: reports activity
- Session state → App model: supplies state
- macOS app → App model: starts runtime
- App model → Overlay controller: drives overlay
- Overlay controller → Island panel: hosts view
- Island panel → Terminal jump: requests jump
- Terminal jump → Terminal or IDE: activates target
- iPhone app → Mac connection: starts connection
- Mac connection → Notifications: delivers alerts
- Mac connection → Watch connectivity: forwards events
- Watch connectivity → Apple Watch: sends messages
- Apple Watch → Watch user: presents events
- Watch user → Apple Watch: resolves request
- Apple Watch → Watch connectivity: returns decision
- Watch connectivity → Mac connection: relays resolution
- Mac connection → Local bridge: connects SSE