Plan reads from a task
project_plan_read_batchPlans file reads for unfamiliar tasks by extracting keywords, searching and ranking candidate source files, then returning a ready batch read call.
Instructions
Plan a read: extract keywords from the task, run bounded content + file-name searches (+recent files), rank candidate source files by hits, path/name match and prose weight (build output, DB/log artifacts excluded), and return a ready project_read_batch call with a calibrated estimate. Deterministic planner, no model call. Use when: starting a task in an unfamiliar area and you do not know which files matter yet (one call instead of guess-read-repeat). Avoid when: you already know the exact files (call project_read_batch directly), or the task is a one-line lookup (project_search). Speed: 1-3 bounded content searches (~20 ms each) + local ranking; no file contents are returned. Output: plan_read_batch: task, keywords[], searched, candidates[] {relative_path, reason, hits}, steps[] {tool, arguments, why}, estimated_ms, notes. Batch-safe: yes
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| max_files | No | Max candidates to plan (default 6; batch accepts 8). | |
| files_hint | No | Files you already suspect (ranked first, no search needed for them). | |
| include_search | No | Run keyword searches to discover candidates (default true; false plans only from files_hint/recent files). | |
| task_description | Yes | What you are about to do, in one line, e.g. "add retry handling to the GitHub client". |