Skip to content

Commit 95aa78b

Browse files
committed
Rename commander/commander-lite to basher
1 parent e1fba3c commit 95aa78b

File tree

16 files changed

+37
-123
lines changed

16 files changed

+37
-123
lines changed
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { describe, test, expect } from 'bun:test'
22

3-
import commander from '../commander'
3+
import commander from '../basher'
44

55
import type { AgentState } from '../types/agent-definition'
66
import type { ToolResultOutput } from '../types/util-types'
@@ -19,11 +19,11 @@ describe('commander agent', () => {
1919

2020
describe('definition', () => {
2121
test('has correct id', () => {
22-
expect(commander.id).toBe('commander')
22+
expect(commander.id).toBe('basher')
2323
})
2424

2525
test('has display name', () => {
26-
expect(commander.displayName).toBe('Commander')
26+
expect(commander.displayName).toBe('Basher')
2727
})
2828

2929
test('uses flash-lite model', () => {

agents/base2/base-deep.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ Use the spawn_agents tool to spawn specialized agents to help you complete the u
3232
- Spawn the thinker-gpt after gathering context to solve complex problems or when the user asks you to think about a problem. (gpt-5-agent is a last resort for complex problems)
3333
- Implement code changes using direct file editing tools.
3434
- Prefer apply_patch for existing-file edits. Use write_file only for creating or replacing entire files when that is simpler.
35-
- Spawn commanders sequentially if the second command depends on the the first.
35+
- Spawn bashers sequentially if the second command depends on the the first.
3636
- **No need to include context:** When prompting an agent, realize that many agents can already see the entire conversation history, so you can be brief in prompting them without needing to include context.
3737
- **Never spawn the context-pruner agent:** This agent is spawned automatically for you and you don't need to spawn it yourself.
3838
@@ -199,7 +199,7 @@ Iteratively review until the code is clean:
199199
200200
Thoroughly validate the changes:
201201
202-
1. Run any existing unit tests that cover the modified code (spawn commanders in parallel for typechecks, tests, lints as appropriate).
202+
1. Run any existing unit tests that cover the modified code (spawn bashers in parallel for typechecks, tests, lints as appropriate).
203203
2. Write and run additional unit tests for new functionality. Fix any test failures.
204204
3. You MUST attempt end-to-end verification: use tools to run the actual application (or equivalent) and verify the changes work in practice. For example:
205205
- For a web app: start the server and check the relevant endpoints
@@ -298,7 +298,7 @@ export function createBaseDeep(options?: {
298298
'glob-matcher',
299299
'researcher-web',
300300
'researcher-docs',
301-
'commander',
301+
'basher',
302302
'thinker-gpt',
303303
'code-reviewer-gpt',
304304
'gpt-5-agent',

agents/base2/base2.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ export function createBase2(
7676
isMax && 'file-picker-max',
7777
'researcher-web',
7878
'researcher-docs',
79-
isFree ? 'commander-lite' : 'commander',
79+
'basher',
8080
isDefault && 'thinker',
8181
(isDefault || isMax) && ['opus-agent', 'gpt-5-agent'],
8282
isMax && 'thinker-best-of-n-opus',
@@ -125,7 +125,7 @@ export function createBase2(
125125
- Create an impressive demonstration showcasing web development capabilities
126126
- **Refactoring Awareness:** Whenever you modify an exported symbol like a function or class or variable, you should find and update all the references to it appropriately using the code_search tool.
127127
- **Testing:** If you create a unit test, you should run it to see if it passes, and fix it if it doesn't.
128-
- **Package Management:** When adding new packages, use the commander agent to install the package rather than editing the package.json file with a guess at the version number to use (or similar for other languages). This way, you will be sure to have the latest version of the package. Do not install packages globally unless asked by the user (e.g. Don't run \`npm install -g <package-name>\`). Always try to use the package manager associated with the project (e.g. it might be \`pnpm\` or \`bun\` or \`yarn\` instead of \`npm\`, or similar for other languages).
128+
- **Package Management:** When adding new packages, use the basher agent to install the package rather than editing the package.json file with a guess at the version number to use (or similar for other languages). This way, you will be sure to have the latest version of the package. Do not install packages globally unless asked by the user (e.g. Don't run \`npm install -g <package-name>\`). Always try to use the package manager associated with the project (e.g. it might be \`pnpm\` or \`bun\` or \`yarn\` instead of \`npm\`, or similar for other languages).
129129
- **Code Hygiene:** Make sure to leave things in a good state:
130130
- Don't forget to add any imports that might be needed
131131
- Remove unused variables, functions, and files as a result of your changes.
@@ -152,7 +152,7 @@ Use the spawn_agents tool to spawn specialized agents to help you complete the u
152152
'- Implement code changes using the str_replace or write_file tools directly.',
153153
isFree &&
154154
'- Spawn a code-reviewer-lite to review the changes after you have implemented the changes.',
155-
'- Spawn commanders sequentially if the second command depends on the the first.',
155+
'- Spawn bashers sequentially if the second command depends on the the first.',
156156
isDefault &&
157157
'- Spawn a code-reviewer to review the changes after you have implemented the changes.',
158158
isMax &&
@@ -213,12 +213,12 @@ ${isDefault
213213
}
214214
215215
${isDefault
216-
? `[ You spawn a code-reviewer, a commander to typecheck the changes, and another commander to run tests, all in parallel ]`
216+
? `[ You spawn a code-reviewer, a basher to typecheck the changes, and another basher to run tests, all in parallel ]`
217217
: isFree
218-
? `[ You spawn a code-reviewer-lite to review the changes, and a commander to typecheck the changes, and another commander to run tests, all in parallel ]`
218+
? `[ You spawn a code-reviewer-lite to review the changes, and a basher to typecheck the changes, and another basher to run tests, all in parallel ]`
219219
: isMax
220-
? `[ You spawn a commander to typecheck the changes, and another commander to run tests, in parallel. Then, you spawn a code-reviewer-multi-prompt to review the changes. ]`
221-
: '[ You spawn a commander to typecheck the changes and another commander to run tests, all in parallel ]'
220+
? `[ You spawn a basher to typecheck the changes, and another basher to run tests, in parallel. Then, you spawn a code-reviewer-multi-prompt to review the changes. ]`
221+
: '[ You spawn a basher to typecheck the changes and another basher to run tests, all in parallel ]'
222222
}
223223
224224
${isDefault
@@ -227,7 +227,7 @@ ${isDefault
227227
? `[ You fix the issues found by the code-reviewer-lite and type/test errors ]`
228228
: isMax
229229
? `[ You fix the issues found by the code-reviewer-multi-prompt and type/test errors ]`
230-
: '[ You fix the issues found by the type/test errors and spawn more commanders to confirm ]'
230+
: '[ You fix the issues found by the type/test errors and spawn more bashers to confirm ]'
231231
}
232232
233233
[ All tests & typechecks pass -- you write a very short final summary of the changes you made ]
@@ -298,7 +298,7 @@ ${PLACEHOLDER.GIT_CHANGES_PROMPT}
298298
}
299299
}
300300

301-
const EXPLORE_PROMPT = `- Iteratively spawn file pickers, commanders, and web/docs researchers to gather context as needed. Use the code_search, list_directory, and glob tools directly for searching and exploring the codebase. The file-picker agent in particular is very useful to find relevant files -- try spawning multiple in parallel (say, 2-5) to explore different parts of the codebase. Use read_subtree if you need to grok a particular part of the codebase. Read all the relevant files using the read_files tool.`
301+
const EXPLORE_PROMPT = `- Iteratively spawn file pickers, bashers, and web/docs researchers to gather context as needed. Use the code_search, list_directory, and glob tools directly for searching and exploring the codebase. The file-picker agent in particular is very useful to find relevant files -- try spawning multiple in parallel (say, 2-5) to explore different parts of the codebase. Use read_subtree if you need to grok a particular part of the codebase. Read all the relevant files using the read_files tool.`
302302

303303
function buildImplementationInstructionsPrompt({
304304
isSonnet,
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@ import type {
55
AgentStepContext,
66
} from './types/agent-definition'
77

8-
const commander: AgentDefinition = {
9-
id: 'commander',
8+
const basher: AgentDefinition = {
9+
id: 'basher',
1010
publisher,
1111
model: 'google/gemini-3.1-flash-lite-preview',
12-
displayName: 'Commander',
12+
displayName: 'Basher',
1313
spawnerPrompt:
14-
'Runs a single terminal command and describes its output using an LLM based on what information is requested.',
14+
'Runs a single terminal command and describes its output using an LLM. A lightweight shell command executor.',
1515

1616
inputSchema: {
1717
prompt: {
@@ -64,7 +64,7 @@ Do not use any tools! Only analyze the output of the command.`,
6464
const command = params?.command as string | undefined
6565
if (!command) {
6666
// Using console.error because agents run in a sandboxed environment without access to structured logger
67-
console.error('Commander agent: missing required "command" parameter')
67+
console.error('Basher agent: missing required "command" parameter')
6868
yield {
6969
toolName: 'set_output',
7070
input: { output: 'Error: Missing required "command" parameter' },
@@ -102,4 +102,4 @@ Do not use any tools! Only analyze the output of the command.`,
102102
},
103103
}
104104

105-
export default commander
105+
export default basher

agents/commander-lite.ts

Lines changed: 0 additions & 12 deletions
This file was deleted.

agents/context-pruner.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -299,8 +299,7 @@ const definition: AgentDefinition = {
299299
'file-picker',
300300
'researcher-web',
301301
'researcher-docs',
302-
'commander',
303-
'commander-lite',
302+
'basher',
304303
'code-reviewer',
305304
'code-reviewer-multi-prompt',
306305
]

agents/general-agent/general-agent.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ export const createGeneralAgent = (options: {
5656
'code-searcher',
5757
'directory-lister',
5858
'glob-matcher',
59-
'commander',
59+
'basher',
6060
'context-pruner',
6161
),
6262
toolNames: [
@@ -69,7 +69,7 @@ export const createGeneralAgent = (options: {
6969

7070
instructionsPrompt: buildArray(
7171
`Use the spawn_agents tool to spawn agents to help you complete the user request.`,
72-
!isGpt5 && `If you need to find more information in the codebase, file-picker is really good at finding relevant files. You should spawn multiple agents in parallel when possible to speed up the process. (e.g. spawn 3 file-pickers + 1 code-searcher + 1 researcher-web in one spawn_agents call or 3 commanders in one spawn_agents call).`,
72+
!isGpt5 && `If you need to find more information in the codebase, file-picker is really good at finding relevant files. You should spawn multiple agents in parallel when possible to speed up the process. (e.g. spawn 3 file-pickers + 1 code-searcher + 1 researcher-web in one spawn_agents call or 3 bashers in one spawn_agents call).`,
7373
).join('\n'),
7474

7575
handleSteps: function* ({ params }) {

cli/src/utils/constants.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,7 @@ export const COLLAPSED_BY_DEFAULT_AGENT_IDS = [
3737
'code-reviewer-selector',
3838
'thinker-selector',
3939
'best-of-n-selector',
40-
'commander',
41-
'commander-lite',
40+
'basher',
4241
'code-searcher',
4342
'directory-lister',
4443
'glob-matcher',

cli/src/utils/sdk-event-handlers.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -371,7 +371,7 @@ const updateSpawnAgentBlocks = (
371371

372372
if (result?.value) {
373373
const { content, hasError } = extractSpawnAgentResultContent(result.value)
374-
// Preserve streamed content (agents like commander stream their output)
374+
// Preserve streamed content (agents like basher stream their output)
375375
const hasStreamedContent = block.blocks.length > 0
376376
if (hasError || content || hasStreamedContent) {
377377
return {

common/src/constants/free-agents.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ export const FREE_MODE_AGENT_MODELS: Record<string, Set<string>> = {
3030
'researcher-docs': new Set(['google/gemini-3.1-flash-lite-preview']),
3131

3232
// Command execution
33-
'commander-lite': new Set(['google/gemini-3.1-flash-lite-preview']),
33+
'basher': new Set(['google/gemini-3.1-flash-lite-preview']),
3434

3535
// Editor for free mode
3636
'editor-lite': new Set(['minimax/minimax-m2.5']),

0 commit comments

Comments
 (0)