CX AgentDocs Open web app
Reference

Permissions reference

Every Android permission CX Agent declares: why it is needed, what breaks if you deny it, and how to revoke it.

2 min readUpdated permissionscameralocationmicrophonecalendarrevoke

CX Agent asks for a permission only when a feature needs it. You can review them in Settings → Permissions and approvals → Permissions and revoke runtime permissions anytime in Android Settings → Apps → CX Agent → Permissions.

Runtime permissions (you grant these)#

Permission Why If denied
Notifications (POST_NOTIFICATIONS) Reply-finished alerts, monitors, morning brief, downloads, background services. No alerts; background services that need a notification (web server, Telegram bot) won't start.
Camera (CAMERA) Take Picture & Ask, GPS Cam, QR scanner, take_photo. Camera features unavailable; you can still pick photos from the gallery.
Microphone (RECORD_AUDIO) Voice input, voice mode, record_audio. Type instead.
Location (ACCESS_FINE/COARSE_LOCATION) GPS Cam stamp, get_location, maps "near me", geofence workflow triggers, Wi-Fi SSID on Android 10+. No location stamp, nearby search asks for a place, geofences don't fire.
Calendar (READ/WRITE_CALENDAR) "What's on my calendar", morning brief schedule, proactive suggestions. Calendar answers and suggestions unavailable.
Nearby devices (BLUETOOTH_CONNECT) Bluetooth connected/disconnected workflow triggers. Bluetooth triggers can't read paired devices.
Local network (ACCESS_LOCAL_NETWORK, Android 17+) SSH to LAN hosts, web server LAN access. LAN connections fail; internet still works.

Special access#

Access Why
Termux RUN_COMMAND (com.termux.permission.RUN_COMMAND) Run commands in the Termux app. Also needs allow-external-apps=true in Termux.
Biometric (USE_BIOMETRIC) Archive unlock, passwords screen, verify_fingerprint.
Do Not Disturb access (ACCESS_NOTIFICATION_POLICY) Changing ring/notification volume with set_volume.
Notification access Only in builds made with notification access (see Notification access).
Battery optimisation whitelist Recommended for the Telegram bot and background jobs; opened from Telegram/Doctor screens (CX does not request the restricted permission itself).

Granted automatically#

Permission Why
Internet, network state, Wi-Fi state All online features; reconnect after network changes; Wi-Fi info.
Wi-Fi multicast Local network discovery (mDNS) for the web server.
Foreground services (special use, media playback, data sync) Keep a reply running when you leave the app, Telegram bot, web server, Linux install, read aloud and media playback, browser downloads.
Wake lock Keep the CPU awake briefly for jobs and wake_screen.
Run at startup (RECEIVE_BOOT_COMPLETED) Re-arm scheduled jobs, monitors, widgets, workflows and the Telegram bot after reboot or update.
Vibrate Haptics, vibrate.
Set alarm (SET_ALARM) Hand alarms to the Clock app.
Set wallpaper set_wallpaper.
Promoted notifications Live-update style progress notifications on new Android versions.
CX keyboard API (AGENT_KEYBOARD_API) Talk to the companion CX keyboard app (same signing key only).
Storage (WRITE_EXTERNAL_STORAGE, Android 9 and older only) Save files on old Android versions.

Removed on purpose#

REQUEST_IGNORE_BATTERY_OPTIMIZATIONS, NEARBY_WIFI_DEVICES, advertising-ID permissions (AD_ID, ad services) and phone-state are stripped from the app. WRITE_SETTINGS is not declared, so set_brightness is disabled (brightness can only be read).

How to revoke#

Android Settings → Apps → CX Agent → Permissions (runtime), → Special app access (DND, battery), or uninstall Termux permissions in Termux. CX keeps working; only the related feature stops.