mirror of
https://github.com/software-mansion/argent.git
synced 2026-09-14 19:27:14 +08:00
8b56da16bb
Relaxing `udid` removed the session-opening `list-devices`, and the guidance was rewritten to match. That left a set of places that still need a real id and no longer say where it comes from — the resolved device is consumed inside the MCP adapter and never reaches the model, so an agent that follows the new convention holds no id at all. - `stop-all-simulator-servers` wants `devices: [...]` scoped to the session's devices. The rules file got the missing clause; the MCP `instructions` string — which reaches every client ahead of any skill — and two skills did not. `argent-qa-flows` spells out the damage itself: an unscoped call reaps every other agent's devices, and its step 7 repeats it. - `argent-android-emulator-setup` made step 1 skippable while step 3 and the teardown line still run `adb -s <serial>`, which step 1 was the only source of. - `propose_variant`, `flow-add-step`'s nested args and the profilers' `device_id` are never auto-filled, and the six skills that use them carried no `list-devices` at all. `argent-lens` said "Always pass `udid`" and routed to a setup skill that now says there is nothing to find. - `argent-react-native-app-workflow` was the one interaction-adjacent skill left unedited, still reading "pass device id + bundle id" for five relaxed tools. - `argent-tv-interact` marked `udid` required in five tool shapes ten lines below the line saying it is optional, in a file that marks optional params with `?`. - The docs page's exception list gave `run-sequence` as keeping an explicit target in the sentence that says its target resolves, omitted `flow-add-step` — the one call that hard-refuses a device-less invocation — and disagreed with the rules file's list of the same three groups. - `tv-remote` and `screenshot-diff` each ship a description contradicting the optional-`udid` hint appended beside it, `list-devices` omitted `ios-remote` from a discriminator list its own refusals now print, and `types.ts` promised "the single booted device this tool supports" — the phrasing this branch removed from the user-facing twin and pinned a negative assertion against. Also drops the arithmetic from the abort comment: the enumeration's own ceiling is at least the MCP client's 30s budget, so that abort mostly lands after the check, not during the fan-out. The check earns its place on the cases that do reach it — a Ctrl-C, an editor cancel, a request whose budget went on an upload.