Skip to content

Commit 4d4066d

Browse files
committed
Much clearer basher agent input schema
1 parent e63fa6d commit 4d4066d

File tree

1 file changed

+8
-13
lines changed

1 file changed

+8
-13
lines changed

agents/basher.ts

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,30 +11,25 @@ const basher: AgentDefinition = {
1111
model: 'google/gemini-3.1-flash-lite-preview',
1212
displayName: 'Basher',
1313
spawnerPrompt:
14-
'Runs a single terminal command and describes its output using an LLM. A lightweight shell command executor. Every basher spawn MUST include params: { command: "<shell>" }. NEVER spawn basher with only a prompt — it will fail validation. The prompt field describes what to extract from the output, not the command itself.',
14+
'Runs a single terminal command and (recommended) describes its output using an LLM using the what_to_summarize field. A lightweight shell command executor. Every basher spawn MUST include params: { command: "<shell>" }.',
1515

1616
inputSchema: {
17-
prompt: {
18-
type: 'string',
19-
description:
20-
'What information from the command output is desired. Be specific about what to look for or extract.',
21-
},
2217
params: {
2318
type: 'object',
2419
properties: {
2520
command: {
2621
type: 'string',
2722
description: 'The terminal command to run in bash shell. Don\'t forget this field!',
2823
},
24+
what_to_summarize: {
25+
type: 'string',
26+
description:
27+
'What information from the command output is desired. Be specific about what to look for or extract. This is optional, and if not provided, the basher will return the full command output without summarization.',
28+
},
2929
timeout_seconds: {
3030
type: 'number',
3131
description: 'Set to -1 for no timeout. Default 30',
3232
},
33-
rawOutput: {
34-
type: 'boolean',
35-
description:
36-
'If true, returns the full command output without summarization. Defaults to false.',
37-
},
3833
},
3934
required: ['command'],
4035
},
@@ -73,7 +68,7 @@ Do not use any tools! Only analyze the output of the command.`,
7368
}
7469

7570
const timeout_seconds = params?.timeout_seconds as number | undefined
76-
const rawOutput = params?.rawOutput as boolean | undefined
71+
const what_to_summarize = params?.what_to_summarize as string | undefined
7772

7873
// Run the command
7974
const { toolResult } = yield {
@@ -84,7 +79,7 @@ Do not use any tools! Only analyze the output of the command.`,
8479
},
8580
}
8681

87-
if (rawOutput) {
82+
if (!what_to_summarize) {
8883
// Return the raw command output without summarization
8984
const result = toolResult?.[0]
9085
// Only return object values (command output objects), not plain strings

0 commit comments

Comments
 (0)