mobile-client is the iOS/Android companion app for OpenLeash approvals.
It connects to OpenLeash Cloud or a customer-hosted API, signs existing users in through the configured identity provider, registers the phone, and lets users approve or deny held agent actions.
Mobile is sign-in only. Account creation happens from desktop or web.
- Discovers the selected API and organization
- Starts OAuth/SSO sign-in
- Registers mobile devices
- Shows pending decisions
- Sends allow/deny responses
- Supports approval flows when users are away from the desktop
Start a local cloud simulation first:
python3 run.pyChoose OpenLeash Cloud.
Then:
cd apps/mobile-client
flutter pub get
flutter runiOS simulator:
flutter run -d ios \
--dart-define=OPENLEASH_CLOUD_API_URL=http://localhost:9318 \
--dart-define=OPENLEASH_DASHBOARD_URL=http://localhost:9302Android emulator:
flutter run -d android \
--dart-define=OPENLEASH_CLOUD_API_URL=http://10.0.2.2:9318 \
--dart-define=OPENLEASH_DASHBOARD_URL=http://10.0.2.2:9302- iOS Simulator can usually reach
http://localhost:9318. - Android Emulator may need
http://10.0.2.2:9318. - Physical devices need your laptop's LAN IP.
- Real OAuth requires matching provider redirect setup.
- Local dev auth is easiest for quick app testing.
Approvals should be fast, readable, and hard to misunderstand.
This is not where users debug policy theory. This is where they make a crisp allow/deny decision.