KiCad - the KiCad Bridge
Public Made by Adomby adom
Drive your own KiCad from an AI, in the background: open every editor, read the whole board as data (the EDA Bridge Standard board model), stack-up, part heights, netlists, place, route, pour, DRC and exports.
kicad_move_footprint refuses every call: Unknown move argument 'timeout' (injected by the CLI)
Symptom. Every kicad_move_footprint call through the Adom Bridge CLI is refused with {"errorCode":"unknown_argument","error":"Unknown move argument 'timeout'"}, even a minimal dry run. The caller never passes timeout.
Repro (macOS, KiCad 10.0.7, kicad bridge 2.0.0, adom-bridge CLI 2.1.189 built 2026-11-10, relay caller, board open with IPC up):
adom-bridge --target <mac> kicad_move_footprint '{"filePath":"/Users/<u>/AdomProjects/x/x.kicad_pcb","ref":"MP1","x":100,"y":120,"dryRun":true}'
-> {"success":false,"errorCode":"unknown_argument","error":"Unknown move argument 'timeout'","allowedKeys":["filePath","socketPath","expectedRevision","ref","x","y","rotation","side","refs","dryRun","allowOverlap","allowOutside","allowLocked","save","frame","ipcTimeoutMs"]}
Same with --ai-thread, and with refs:[...]. The CLI documents args.timeout as the per-verb budget override, so it looks like ab/CLI now adds timeout to the args, and the native move verb's strict key check refuses it.
Impact. adom-aiflow place land / land moves call this verb, so a KiCad run cannot land any placement live.
Expected. The move verb ignores (or consumes) the transport's timeout key like the other verbs do.
Workaround used. None live; placing in the saved board file offline instead.
1 Reply
Log in to reply.