From 63b9202335da5930a53d06ad0b33b02b5846d735 Mon Sep 17 00:00:00 2001 From: Cyber MacGeddon Date: Mon, 8 Sep 2025 21:04:31 +0100 Subject: [PATCH] Fix broken agents --- trustgraph-cli/trustgraph/cli/invoke_agent.py | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/trustgraph-cli/trustgraph/cli/invoke_agent.py b/trustgraph-cli/trustgraph/cli/invoke_agent.py index c5ca93e4..4c853dee 100644 --- a/trustgraph-cli/trustgraph/cli/invoke_agent.py +++ b/trustgraph-cli/trustgraph/cli/invoke_agent.py @@ -29,7 +29,7 @@ def output(text, prefix="> ", width=78): async def question( url, question, flow_id, user, collection, - plan=None, state=None, verbose=False + plan=None, state=None, group=None, verbose=False ): if not url.endswith("/"): @@ -55,19 +55,24 @@ async def question( async with connect(url) as ws: - req = json.dumps({ + req = { "id": mid, "service": "agent", "flow": flow_id, "request": { "question": question, "user": user, - "state": state or "", - "group": [], "history": [] } + } + + # Only add optional fields if they have values + if state is not None: + req["request"]["state"] = state + if group is not None: + req["request"]["group"] = group - }) + req = json.dumps(req) await ws.send(req) @@ -144,6 +149,12 @@ def main(): help=f'Agent initial state (default: unspecified)' ) + parser.add_argument( + '-g', '--group', + nargs='+', + help='Agent tool groups (can specify multiple)' + ) + parser.add_argument( '-v', '--verbose', action="store_true", @@ -163,6 +174,7 @@ def main(): collection = args.collection, plan = args.plan, state = args.state, + group = args.group, verbose = args.verbose, ) )