Problem
agent-device settings does not expose the preferred text-size / Dynamic Type category. This makes accessibility and layout QA less reproducible: an agent can observe unexpectedly large text, but it cannot inspect or restore the simulator's content-size category through the agent-device command surface.
Observed with agent-device 0.21.0 on an iOS simulator. The current workaround is to leave agent-device and call CoreSimulator directly:
xcrun simctl ui <udid> content_size
xcrun simctl ui <udid> content_size large
Driving the Settings app is possible, but it is slower and depends on localized labels and slider coordinates.
Proposed command
Add an iOS-simulator settings helper, for example:
agent-device settings text-size
agent-device settings text-size large
agent-device settings text-size accessibility-extra-large
The no-argument form should return the normalized current category. The setter should accept the categories supported by simctl ui ... content_size:
extra-small
small
medium
large
extra-large
extra-extra-large
extra-extra-extra-large
accessibility-medium
accessibility-large
accessibility-extra-large
accessibility-extra-extra-large
accessibility-extra-extra-extra-large
Exact naming can follow the existing settings-command conventions.
Scope
- Implement the first slice for iOS Simulator by delegating to
simctl ui <device> content_size.
- Respect the active session or explicit device selection (
--device / --udid).
- Return
UNSUPPORTED_OPERATION with a useful message on targets where agent-device cannot set the category.
- Android font-scale parity can be handled separately because its values and behavior do not map exactly to Apple's categories.
Acceptance criteria
- The current preferred content-size category can be read through CLI and structured API/MCP responses.
- A supported category can be set on the selected iOS simulator.
- The result reports the applied normalized category rather than only command success.
- Invalid category values fail before mutating simulator state and list the accepted values.
- Help text and command documentation include the new setting.
- Tests cover parsing, device selection, success, invalid input, and unsupported-target behavior.
Problem
agent-device settingsdoes not expose the preferred text-size / Dynamic Type category. This makes accessibility and layout QA less reproducible: an agent can observe unexpectedly large text, but it cannot inspect or restore the simulator's content-size category through theagent-devicecommand surface.Observed with
agent-device0.21.0 on an iOS simulator. The current workaround is to leaveagent-deviceand call CoreSimulator directly:Driving the Settings app is possible, but it is slower and depends on localized labels and slider coordinates.
Proposed command
Add an iOS-simulator settings helper, for example:
The no-argument form should return the normalized current category. The setter should accept the categories supported by
simctl ui ... content_size:extra-smallsmallmediumlargeextra-largeextra-extra-largeextra-extra-extra-largeaccessibility-mediumaccessibility-largeaccessibility-extra-largeaccessibility-extra-extra-largeaccessibility-extra-extra-extra-largeExact naming can follow the existing settings-command conventions.
Scope
simctl ui <device> content_size.--device/--udid).UNSUPPORTED_OPERATIONwith a useful message on targets where agent-device cannot set the category.Acceptance criteria