The SimpleClaw iOS app connects to a SimpleClaw Gateway as a mobile node, providing access to iPhone sensors and capabilities.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/asundar43/simpleclaw/llms.txt
Use this file to discover all available pages before exploring further.
Overview
The iOS app enables mobile access to your SimpleClaw assistant:- Gateway connection - connects to your SimpleClaw Gateway via WiFi or cellular
- Chat interface - text conversations with your assistant
- Voice Wake - hands-free voice activation
- Talk Mode - voice conversations with audio responses
- Camera access - photo and video capture
- Screen recording - capture screen content
- Location services - share device location
- Canvas - view and interact with agent-controlled web content
- Share extension - forward content from other apps
System Requirements
- iOS 15.0 or later
- Xcode 16+ (for building from source)
- Apple Development signing profile
- Connected to same network as SimpleClaw Gateway (for discovery)
Installation
Prerequisites
- Xcode 16 or later - Install from the Mac App Store
- pnpm - Package manager:
npm install -g pnpm - xcodegen - Project generator:
brew install xcodegen - Apple Developer account - Free or paid account for signing
Build and Deploy
From the repository root:Xcode Setup
- Connect your iPhone via USB
- Select SimpleClaw scheme
- Select your iPhone as destination (real device recommended)
- Select Debug build configuration
- Click Product > Run (⌘R)
Signing Configuration
If signing fails with a personal team:- Copy
apps/ios/LocalSigning.xcconfig.exampletoapps/ios/LocalSigning.xcconfig - Edit
LocalSigning.xcconfigwith unique bundle IDs - Rebuild the project
Features
Gateway Connection
Connect to your SimpleClaw Gateway: Discovery mode:- Automatic discovery via Bonjour/mDNS
- Shows available gateways on local network
- One-tap connection
- Specify gateway host and port
- TLS fingerprint trust prompt
- Supports remote gateways
- Open the app and navigate to Connect
- Enter setup code from gateway
- Approve pairing on gateway:
Chat & Talk
Text and voice interaction:- Chat - send text messages to your assistant
- Talk - push-to-talk voice input with audio responses
- Session management - view conversation history
- Threading - replies maintain context
Camera & Screen
Camera capture:camera.snap- capture still photoscamera.clip- record short video clips with optional audio
screen.record- capture screen content- Requires Screen Recording permission
- Camera (for photo/video)
- Microphone (for video with audio)
- Screen Recording (for screen capture)
Location Services
Share device location with your assistant:- One-time location - current location on request
- Significant location changes - movement-based updates
- Background location - requires “Always” permission
- Arrival/exit geofence triggers
- Significant movement detection
- Visit detection
Canvas
View agent-controlled web content:- WebKit-based rendering
- JavaScript evaluation
- Navigation control
- Snapshot capture
canvas.present- show contentcanvas.navigate- load URLcanvas.eval- run JavaScriptcanvas.snapshot- capture screenshot
Share Extension
Forward content from other apps:- Open content in any app (Safari, Photos, etc.)
- Tap Share button
- Select SimpleClaw
- Content is forwarded to your gateway session
Permissions
The iOS app requires several permissions:| Permission | Purpose | Required |
|---|---|---|
| Network | Gateway connection | Yes |
| Notifications | APNs push notifications | Optional |
| Camera | Photo and video capture | Optional |
| Microphone | Audio recording and Talk Mode | Optional |
| Location (When in Use) | Location sharing | Optional |
| Location (Always) | Background location updates | Optional |
| Screen Recording | Screen capture | Optional |
| Contacts | Contact access | Optional |
| Calendar | Calendar access | Optional |
| Reminders | Reminders access | Optional |
| Photo Library | Photo access | Optional |
| Motion | Motion and activity data | Optional |
APNs Push Notifications
The app registers for Apple Push Notification service (APNs):- Development builds - APNs sandbox environment
- Release builds - APNs production environment
- Registration - happens after gateway connection
- Token sharing - device token sent to gateway via
push.apns.register
- Push Notifications capability enabled
- Correct provisioning profile
- Valid bundle ID in Apple Developer portal
APNs registration failed
Background Behavior
Background Limitations
When the app is backgrounded:- WebSocket connections may be suspended
- These commands are blocked:
canvas.*,camera.*,screen.*,talk.* - Location updates require “Always” permission
- Background refresh may wake the app periodically
Wake & Reconnect
The app attempts to reconnect when:- Returning to foreground
- Receiving APNs silent push
- Background app refresh trigger
- Significant location change
Known Issues
- Background reliability - foreground use is most reliable
- Socket suspension - iOS may suspend background connections
- Command limits - many commands blocked when backgrounded
- Voice Wake conflicts - Talk Mode suppresses wake capture while active
- APNs reliability - depends on correct signing/provisioning
- Reconnect churn - expect occasional reconnect during active development
Debugging
Build Issues
- Regenerate project:
xcodegen generate - Verify team and bundle IDs in Xcode
- Check signing certificate selection
- Clean build folder: Product > Clean Build Folder
Connection Issues
- Check Settings > Gateway for status
- Verify gateway is running and reachable
- Check firewall and network settings
- Try manual connection with host/port
Pairing Issues
If pairing fails:- Run
/pair approvefrom Telegram/WhatsApp - Check gateway logs for pairing requests
- Verify setup code is correct
- Reconnect after approval
Discovery Issues
If gateway discovery fails:- Enable Discovery Debug Logs in Settings
- Check Settings > Gateway > Discovery Logs
- Verify both devices on same network
- Check firewall allows mDNS/Bonjour
Xcode Console
Filter logs by subsystem:ai.simpleclaw.ios- app logsGatewayDiag- gateway diagnosticsAPNs registration failed- push notification errors
Development
Project Structure
The iOS app source is located atapps/ios/: