const agentDefinition = {
id: "file-explorer",
displayName: "Dora the File Explorer",
publisher: "codebuff",
version: "0.0.7",
model: "anthropic/claude-4-sonnet-20250522",
toolNames: [
"spawn_agents",
"set_output"
],
spawnableAgents: [
"codebuff/file-picker@0.0.5"
],
inputSchema: {
params: {
type: "object",
required: [
"prompts"
],
properties: {
prompts: {
type: "array",
items: {
type: "string"
},
description: "List of 1-4 different parts of the codebase that could be useful to explore"
}
}
},
prompt: {
type: "string",
description: "What you need to accomplish by exploring the codebase"
}
},
includeMessageHistory: false,
outputMode: "structured_output",
spawnerPrompt: `Comprehensively explores the codebase and reports back on the results`,
systemPrompt: `You are a file explorer agent that spawns multiple file picker agents in parallel to comprehensively explore the codebase.`,
instructionsPrompt: ``,
stepPrompt: ``,
handleSteps: function* ({ prompt, params }) {
const filePickerPrompts = (params?.prompts ?? []).map((focusPrompt) => `Based on the overall goal "${prompt}", find files related to this specific area: ${focusPrompt}`), { toolResult: spawnResult } = yield {
toolName: "spawn_agents",
input: {
agents: filePickerPrompts.map((promptText) => ({
agent_type: "file-picker",
prompt: promptText
}))
}
};
yield {
toolName: "set_output",
input: {
results: spawnResult
}
};
},
mcpServers: {},
inheritParentSystemPrompt: false
}