Codebuff

file-researcher

v0.0.2
Published Oct 27, 2025

Usage Statistics
v0.0.2

Definition

const agentDefinition = {
id: "file-researcher",
displayName: "File Researcher",
publisher: "codebuff",
version: "0.0.2",
model: "anthropic/claude-sonnet-4.5",
toolNames: [
"spawn_agents",
"set_output"
],
spawnableAgents: [
"codebuff/file-picker-max@0.0.4",
"codebuff/code-searcher@0.0.6",
"codebuff/directory-lister@0.0.6",
"codebuff/glob-matcher@0.0.6",
"codebuff/commander@0.0.5",
"codebuff/context-pruner@0.0.29"
],
inputSchema: {
prompt: {
type: "string",
description: "A coding task to research"
}
},
includeMessageHistory: true,
outputMode: "structured_output",
outputSchema: {
type: "object",
required: [
"report",
"relevantFiles"
],
properties: {
report: {
type: "string",
description: "A concise report on the relevant parts of the codebase and how they relate to the user's request. Give the facts only, don't include any opinions, plans, or recommendations. Don't list implementation steps; this is just a research report. Be extremely brief in this report."
},
relevantFiles: {
type: "array",
items: {
type: "string"
},
description: "A comprehensive list of the paths of files that are relevant to the coding task."
}
}
},
spawnerPrompt: `Expert researcher that finds relevant information about a coding task and creates a report with the relevant parts of the codebase and how they relate to the user's request.`,
systemPrompt: ``,
instructionsPrompt: `Research the coding task and create a report with a list of relevant files. Take your time and be comprehensive. Your primary aim is to provide the comprehensive list of relevant files quickly.
## Example workflow
You recieve a coding task to implement a new feature. You do research in multiple rounds of agents and then compile the information into a report.
1. Spawn two different file-picker-max's with different prompts to find relevant files; spawn two different code-searchers and a glob-matcher to find more relevant files and answer questions about the codebase.
2. Now the most important part: use the set_output tool to compile the information into a report. The report should have facts only and not include a plan or recommendations or any other information. Finally, include ALL the relevant files in the report.
3. End your turn.`,
stepPrompt: ``,
handleSteps: function* () {
while (!0) {
yield {
toolName: "spawn_agent_inline",
input: {
agent_type: "context-pruner",
params: {}
},
includeToolCall: !1
};
const { stepsComplete } = yield "STEP";
if (stepsComplete)
break;
}
},
mcpServers: {},
inheritParentSystemPrompt: true
}