PluginBench
Skill
Pass
Audit score 90

argent-ios-device-setup

software-mansion/argent

Set up a cabled physical iPhone for argent automation testing.

What is argent-ios-device-setup?

Configures a physical iPhone connected via USB cable for use with argent's automation framework. Use only for physical devices (not simulators); handles signing, developer mode setup, and on-device runner installation.

  • Enables Developer Mode and registers physical iPhone with argent
  • Builds, signs, and launches the ArgentRunner automation app on device
  • Manages code signing with automatic team detection and ARGENT_IOS_TEAM_ID override support
  • Handles first-run trust prompts and developer certificate validation
  • Provides diagnostic logging and recovery steps for common signing failures

How to install argent-ios-device-setup

npx skills add https://github.com/software-mansion/argent --skill argent-ios-device-setup
Prerequisites
  • Physical iPhone cabled via USB to the machine
  • iPhone unlocked with screen kept awake during setup
  • Developer Mode enabled (Settings > Privacy & Security > Developer Mode)
  • Xcode command-line tools installed
  • Valid Apple Developer account (free or paid team)
Claude Code
Cursor
Windsurf
Cline

How to use argent-ios-device-setup

  1. 1.Cable the iPhone and unlock it, keeping the screen awake
  2. 2.Enable Developer Mode in Settings > Privacy & Security > Developer Mode
  3. 3.Verify the device shows as connected using list-devices
  4. 4.Run launch-app to register the app (first describe/gesture/screenshot will build and sign)
  5. 5.When prompted on device, trust the developer in Settings > General > VPN & Device Management
  6. 6.Confirm ArgentRunner app appears on home screen and remains installed
  7. 7.Proceed to argent-ios-device-interact for automation commands

Use cases

Good for
  • Automating UI tests on a physical iPhone connected via USB
  • Setting up a device for the first time before running any argent automation
  • Troubleshooting signing or runner installation issues on a cabled iPhone
  • Switching between different signing teams or certificates for device testing
Who it's for
  • iOS QA engineers running device automation
  • Mobile app developers testing on physical hardware
  • CI/CD systems automating tests on connected iPhones

argent-ios-device-setup FAQ

Why does the first automation command take minutes?

The first describe, gesture, or screenshot triggers a cold build and signing process (up to 15 minutes), then starts the on-device runner (up to 120 seconds). Subsequent calls use cached builds and are much faster.

What is the ArgentRunner app that appears on my home screen?

ArgentRunner is argent's automation runner that executes commands on the device. It must remain installed for automation to work.

How do I fix 'errSecInternalComponent' errors?

Run `security set-key-partition-list -S apple-tool:,apple:,codesign: -s ~/Library/Keychains/login.keychain-db` (you will be prompted for your login password), then retry.

What does ARGENT_IOS_TEAM_ID do?

It overrides the automatically detected signing team. Set it as a tool-server environment variable; changes force a cold rebuild.

Should I use this for simulators?

No. Use argent-ios-simulator-setup for simulators; this skill is for physical cabled iPhones only.

Full instructions (SKILL.md)

Source of truth, from software-mansion/argent.


name: argent-ios-device-setup description: Set up a cabled physical iPhone for argent. Use when a physical iPhone is involved (a list-devices iOS entry with kind "device") and ONLY then; never for a simulator.

Physical iPhone setup

Read this only for a physical iPhone. Simulators use argent-ios-simulator-setup.

First run

  1. Cable the phone, unlock it, keep the screen awake, and turn on Developer Mode (Settings > Privacy & Security > Developer Mode). list-devices must show it connected.
  2. launch-app only registers the app. The first describe, gesture or screenshot builds, signs and starts the on-device runner: minutes cold, tens of seconds from cache or after a tool-server restart. Build cap 15 min, runner ready 120 s.
  3. On the first install the phone asks to trust the developer (Settings > General > VPN & Device Management), and an ArgentRunner app appears on the home screen. Tell the user it is argent's automation runner and must stay installed.

Signing and failures

Signing needs no configuration. The first phone call of a tool-server process carries a note naming the team picked and the ARGENT_IOS_TEAM_ID override (tool-server environment; a change forces a cold rebuild). Cable, lock, trust, expired-profile and missing-certificate errors name their fix: apply it, retry the same call. Also: errSecInternalComponent: run security set-key-partition-list -S apple-tool:,apple:,codesign: -s ~/Library/Keychains/login.keychain-db (asks the user's login password), retry. team has no devices: keep the phone cabled, retry. Bundle id registration failed: free-team app-id cap, wait days or sign under a paid team. Any other xcodebuild failure prints raw error: lines: read ~/.argent/ios-device-runner/logs/runner-<udid8>.log. RUNNER_WEDGED: stop-simulator-server for the udid, retry.

Then read argent-ios-device-interact.