How celldock/celldock-for-mac works
CellDock is a native macOS menu-bar application for using supported USB cellular modules for data, messaging, calls, and SIM management. A user works through the app’s menu-bar or communication windows; AppState coordinates module services and feature actions, while cellular networking and optional VoWiFi involve a privileged helper and separate runtime. The README also documents contacts, eSIM, call recording, SMS forwarding, and per-module SOCKS5 proxies. Some subsystem links are documented capabilities rather than inspected call sites; those are marked dashed where implementation wiring is uncertain.
Main entry points: AppState.swift App state · main.swift Network helper · NetworkHelperClient.swift Privileged helper client · MenuBarPanelController.swift Menu bar and windows
Components 19
App interface
- Menu bar and windows
Sources/CellDock/MenuBarPanelController.swift - App state
Sources/CellDock/AppState.swift
Module communications
- Module discovery
Sources/CellDock/ModemInventoryService.swift - Modem service
Sources/CellDock/ModemService.swift - USB modem bridge
Sources/CModemBridge/ModemBridge.c
Network services
- Cellular network control
Sources/CellDock/NetworkServiceController.swift - Privileged helper client
Sources/CellDock/NetworkHelperClient.swift - Network helper
Sources/CellDockNetworkHelper/main.swift - Network configuration
Sources/CellDockNetworkHelper/RootNetworkMutator.swift - SOCKS5 proxies
Sources/CellDock/SOCKSProxyController.swift - VoWiFi control
Sources/CellDock/VoWiFiController.swift - VoWiFi host
Sources/CellDockNetworkHelper/VoWiFiHostManager.swift - VoWiFi runtime
ThirdParty/vowifi-go/cmd/celldock-vowifi-runtime/main.go
Calls and messaging
- SMS and forwarding
Sources/CellDock/MessageStore.swift - Calls and recording
Sources/CellDock/CallHistoryStore.swift - Recording library
Sources/CellDock/CallRecordingStore.swift
SIM and contacts
- eSIM management
Sources/CellDock/EUICCService.swift - Contacts
Sources/CellDock/SystemContactStore.swift
Other components
- Mac user
Connections 19
- Mac user → Menu bar and windows: uses
README.md - Menu bar and windows → App state: presents actions
Sources/CellDock/MenuBarPanelController.swift - App state → Module discovery: starts discovery
Sources/CellDock/AppState.swift - App state → Modem service: starts services
Sources/CellDock/AppState.swift - Modem service → USB modem bridge: uses USB transport
- App state → Cellular network control: coordinates cellular
Sources/CellDock/AppState.swift - Cellular network control → Privileged helper client: requests changes
Sources/CellDock/NetworkServiceController.swift - Privileged helper client → Network helper: sends IPC
- Network helper → Network configuration: applies configuration
Sources/CellDockNetworkHelper/main.swift - App state → SOCKS5 proxies: starts proxies
Sources/CellDock/AppState.swift - App state → VoWiFi control: starts control
Sources/CellDock/AppState.swift - VoWiFi control → Privileged helper client: requests host
Sources/CellDock/VoWiFiController.swift - Network helper → VoWiFi host: dispatches requests
Sources/CellDockNetworkHelper/main.swift - VoWiFi host → VoWiFi runtime: launches process
- App state → SMS and forwarding: manages messages
Sources/CellDock/AppState.swift - App state → Calls and recording: manages call history
Sources/CellDock/AppState.swift - App state → Recording library: manages recordings
Sources/CellDock/AppState.swift - App state → eSIM management: manages profiles
Sources/CellDock/AppState.swift - App state → Contacts: uses contacts
Sources/CellDock/AppState.swift