Skip to content
Mobile
Skill

/argent-settings-permissions

Grant, deny, or reset an app's runtime permissions (camera, microphone, photos, contacts, notifications, calendar, location, location-always, media-library, motion, reminders) on an iOS simulator or Android device using the argent `settings-permissions` tool - without navigating

From plugin
argent
3.1k18 skills

Claude Code

$ npx -y skills add software-mansion/argent --skill argent-settings-permissions --agent claude-code

SKILL.md

argent-settings-permissions.SKILL.md
name: argent-settings-permissions
description: Grant, deny, or reset an app's runtime permissions (camera, microphone, photos, contacts, notifications, calendar, location, location-always, media-library, motion, reminders) on an iOS simulator or Android device using the argent `settings-permissions` tool - without navigating the system Settings UI. Use when the permission cannot be changed through the app itself - and only then, pre-authorize before the app asks, deny up front, re-enable a permission the user already denied, or reset so the prompt reappears. If the app can flip it - via an in-app toggle or the system permission dialog the app triggers - interact with the app instead.

`settings-permissions` edits the platform's permission store directly (the iOS simulator's TCC database, Android's runtime permissions over adb). It is a **test-setup / out-of-band** tool, not a general permissions toggle: the default way to change a permission is still through the app. The tool's description covers the supported permissions per platform, the parameters, the result (`applied` / `skipped`) and the per-platform requirements.

When to use it - and when NOT to

The first matching row wins.

| Situation | Do this | | ------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------ | | The app has an **in-app control** for the permission (a toggle in its own settings screen) | **Tap it in the app** (`describe` → `gesture-tap`); it exercises the flow you're testing | | The app asked and the **system permission dialog is on screen** | **Tap the dialog** (`Allow` / `Don't Allow` / `Allow While Using App`); `describe` exposes its buttons | | The permission must be **granted/denied before the app runs**, so no dialog interrupts the flow | **Use this tool** (`grant` / `deny`) before `launch-app` | | The user **already denied** it and you need it **on** again | **Use this tool** (`grant`): iOS never re-shows a dialog once denied | | You need the **first-run dialog to appear again** | **Use this tool** (`reset`) | | The permission is unsupported on the target platform, or it isn't one of the 11 runtime permissions (Wi-Fi, dark mode, VPN, Focus, …) | **Do NOT use this tool**: answer the app's dialog, or drive the Settings app or the app's own UI |

**Rule of thumb:** if a human tester could flip it _inside the app_, do that. Reach for `settings-permissions` only for a change a human would otherwise make in the **system Settings app**.

Gotchas

  • **iOS simulator only on Apple platforms.** A physical iPhone has no host-side TCC switch, so the tool does not apply there.
  • **A pre-launch `deny` suppresses the prompt on iOS only.** On iOS a TCC denial answers the app's request, so no dialog appears. On Android a `deny` clears the grant but sets no "user-fixed" flag, so the app's next request still shows the system dialog: a pre-launch `deny` there tests the revoked _state_, not a suppressed prompt.
  • **Android `reset` below API 33 can't clear "don't ask again".** It revokes the grant, but clearing the user-fixed flag needs Android 13 / API 33+, so the dialog may stay suppressed on older devices.
  • **Set permissions before `launch-app`.** A change can terminate a running app; if you change one while it runs, `restart-app` afterwards.
  • **Android `location-always`**: a `grant` also adds fine and coarse location, since background alone can't read location.
Read more
@software-mansion
Ships withargent

An agentic toolkit to control, debug, and profile iOS and Android apps. Made by Software Mansion.

Stars on GitHub

Momentum

stars in total
3.1k
Star history of software-mansion/argent on GitHub, a chart by star-history.com

Other skills on argent.

argent-create-e2e

argent-create-e2e

Create, record, edit, replay, or repair reusable Argent e2e test YAML files. Use when the user asks to record, replay, or run an…

More skills from other plugins.

deep-code-review

deep-code-review

In-depth design-focused code review - understands codebase context before evaluating PR changes, posts structured feedback to…

expo2d53k
@expo@expoInstall Skill
modlens

modlens

Plug-in vision for text-only models. Hard rule: when a file path or URL with an image extension (.png, .jpg, .jpeg, .webp, .gif,…

modlens2w4.6k
@liustack@liustackInstall Skill
appllama-app-design-skill

appllama-app-design-sk…

Build native-feeling, benchmark-quality mobile app screens (Expo / React Native). Use when designing or implementing any mobile…

appllama2mo3.9k
@appllama@appllamaInstall Skill

Questions about argent-settings-permissions.

Which coding agents can use argent-settings-permissions?
argent-settings-permissions installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.