π± Minimal native mobile client for Agent Network / CommHub β Android first, iOS from the same codebase.
Built with Expo (React Native, TypeScript). Design language follows the dashboard's less-is-more overhaul: near-black surfaces, restrained color, green/red/amber/gray status triad, cyan accent.
| Agents | Chat | Messages |
|---|---|---|
![]() |
![]() |
![]() |
- Login β server URL + username/password (
POST /api/auth/loginβ user token); friendly errors for empty/non-JSON responses; session persists in the platform keystore (expo-secure-store) - Agents β live fleet list: status dot, current-task one-liner, pull-to-refresh, 10s polling; working sessions sort to the top; search box appears beyond 10 agents
- Chat β tap an agent card to chat; inverted list opens at the newest 20 and lazy-loads older history at the visual top; timestamps; send via
POST /api/send_taskwith draft restore on failure - Messages β network-wide feed: from β to routes, type dots (task/reply/broadcast), HIGH priority chips, timestamps, same lazy window
- Branding β cyan hub-and-spokes launcher icon (adaptive + monochrome for Material You)
The app talks directly to a CommHub instance. Use an HTTPS endpoint (release builds block cleartext HTTP by default; the current build carries a temporary cleartext exemption via expo-build-properties that will be removed once HTTPS is everywhere).
ζε‘ε¨ε°ε https://your-hub.example.com (no port needed behind a reverse proxy)
η¨ζ·ε/ε―η your hub credentials
API surface used: POST /api/auth/login, GET /api/status, GET /api/tasks?to_name&limit, GET /api/messages?limit, POST /api/send_task β all Bearer-token authed.
npm install
npx expo start # Expo Go / dev client
npx tsc --noEmit # typecheckreact-native-web export + playwright renders the same components at a phone viewport, proxying API calls to a live hub (sidesteps CORS, swaps auth):
npx expo export --platform web
# serve dist/ and screenshot at 390Γ844 β see docs/screens/Requires JDK 17 and the Android SDK (API 35); a userspace install works:
export JAVA_HOME=~/android-tools/jdk-17.0.19+10
export ANDROID_HOME=~/android-tools/sdk
npx expo prebuild --platform android --no-install
cd android && ./gradlew assembleRelease -PreactNativeArchitectures=arm64-v8a
# β android/app/build/outputs/apk/release/app-release.apk (~26MB arm64)Expo signs release builds with the debug keystore by default β fine for direct-install test distribution, replace before store submission.
- iOS build (needs macOS/EAS)
- Proper application id (currently
com.anonymous.agentnetworkapp; migrating means a fresh install β held until distribution widens) - Tighten the cleartext exemption once all endpoints are HTTPS
- "Join network" onboarding for non-admin users (hub scopes data by network membership)
Progress is reported round-by-round on sleep2agi/agent-network#220.


