Skip to content

Commit faef948

Browse files
committed
Add option to base2 to use todos
1 parent 8acdf74 commit faef948

File tree

3 files changed

+24
-6
lines changed

3 files changed

+24
-6
lines changed

.agents/base2/base2-fast-todos.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import { createBase2 } from './base2'
2+
3+
const definition = {
4+
...createBase2('fast', { usesTodos: true }),
5+
id: 'base2-fast-todos',
6+
displayName: 'Buffy the Fast Todos Orchestrator',
7+
}
8+
export default definition

.agents/base2/base2.ts

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,14 @@ export const createBase2: (
1111
options?: {
1212
hasNoValidation?: boolean
1313
hasDecomposingThinker?: boolean
14+
usesTodos?: boolean
1415
},
1516
) => Omit<SecretAgentDefinition, 'id'> = (mode, options) => {
16-
const { hasNoValidation = false, hasDecomposingThinker = false } =
17-
options ?? {}
17+
const {
18+
hasNoValidation = false,
19+
hasDecomposingThinker = false,
20+
usesTodos = false,
21+
} = options ?? {}
1822
const isFast = mode === 'fast'
1923
const isMax = mode === 'max'
2024

@@ -45,6 +49,7 @@ export const createBase2: (
4549
'spawn_agents',
4650
isMax && 'spawn_agent_inline',
4751
'read_files',
52+
usesTodos && 'write_todos',
4853
'str_replace',
4954
'write_file',
5055
),
@@ -149,8 +154,13 @@ ${buildArray(
149154
`- Consider spawning other agents or reading more files as needed to gather comprehensive context to answer the user's request.`,
150155
hasDecomposingThinker &&
151156
`- Spawn a decomposing-thinker agent to ask key questions and plan your response. Make sure to include all the relevant file paths in the params.`,
152-
isFast && '- Write out your implementation plan as a bullet point list.',
153-
isFast && `- Use the str_replace or write_file tool to make the changes.`,
157+
usesTodos &&
158+
`- Use the write_todos tool to write out your step-by-step implementation plan.${hasNoValidation ? '' : ' You should include at least one step to validate/test your changes.'}`,
159+
isFast &&
160+
!usesTodos &&
161+
'- Write out your implementation plan as a bullet point list.',
162+
isFast &&
163+
`- Use the str_replace or write_file tool to make the changes. (Pause after making all the changes to see the tool results of your edits and double check they went through correctly.)`,
154164
isMax &&
155165
`- IMPORTANT: You must spawn a base2-gpt-5-worker agent inline (with spawn_agent_inline tool) to do the planning and editing.`,
156166
!hasNoValidation &&

evals/buffbench/main.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ import { runBuffBench } from './run-buffbench'
55
async function main() {
66
await runBuffBench({
77
evalDataPath: path.join(__dirname, 'eval-codebuff.json'),
8-
agents: ['base2-fast-no-validation', 'base2-fast-with-decomposing-thinker'],
9-
taskConcurrency: 5,
8+
agents: ['base2-fast', 'base2-fast-todos'],
9+
taskConcurrency: 10,
1010
})
1111

1212
process.exit(0)

0 commit comments

Comments
 (0)