Typed per-file decisions
decide_filesClassify files by asking typed yes/no, choice, or ordered-score questions with a decision model, returning calibrated probabilities and filtering to files that match a yes/no question.
Instructions
Ask several typed questions about EACH file with a decision model: yes_no flags, one-of choices and ordered scores, with calibrated probabilities. Example: for every file decide uses_db (yes_no), layer (choice: api/domain/ui/infra), complexity (score: low/medium/high). Use only_matching to return just the files where a yes_no question is yes.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | Override the OpenRouter decision model for this call, e.g. cloudflare/clef (see list_models) | |
| paths | Yes | Files and/or directories to read (absolute or relative to the project root) | |
| format | No | Output format (default table) | |
| dry_run | No | Only list which files would be scanned and the estimated tokens; no API call | |
| exclude | No | Extra globs to skip, e.g. ["**/*.test.ts"] | |
| include | No | Glob patterns inside directories, e.g. ["**/*.ts", "docs/**/*.md"]. Default: all text files | |
| questions | Yes | ||
| instructions | No | Shared context added to every question | |
| only_matching | No | Return only files where this yes_no question id is 'yes' | |
| respect_gitignore | No | Skip files ignored by the directory's .gitignore (default true) | |
| max_chars_per_file | No | Truncate each file to this many chars, keeping head and tail (default 12000; capped to the model's context) |