ollama_batch_proof_check
Batch proof check (runs linters/tests). OPS. Parallel typecheck/lint/test across a file list. NO MODEL CALL. Pass checks: ['typescript' | 'eslint' | 'pytest' | 'ruff' | 'cargo-check'][] (min 1), optional files[] (scope filter for lint/test tools that accept it), optional cwd (default process.cwd()), optional timeout_ms (default 60_000 per check). Each check runs in parallel under its own timeout. Missing tools (ENOENT / exit 127) report as status:‘missing’ — NOT a fail. Timeouts are status:‘timeout’. Returns {checks:[{check, status:'pass'|'fail'|'timeout'|'missing', exit_code, stderr_tail, stdout_tail, elapsed_ms, failures?:[{file?, line?, message}]}], all_passed, any_missing}. Use AFTER ollama_multi_file_refactor_propose to verify the refactor landed green.
Parameters
Section titled “Parameters”| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
checks |
"typescript" \ |
"eslint" \ |
"pytest" \ |
"ruff" \ |
files |
any | no | — | Optional scope filter. When set, each tool is invoked with the file list appended (where the tool supports it). Tools that require whole-project invocation (e.g. tsc –noEmit) ignore this. |
cwd |
string | no | — | Working directory for the spawned CLIs. Default: process.cwd(). When set, must be contained in allowed_roots. |
allowed_roots |
string[] | no | — | Absolute directories a custom cwd may launch from. REQUIRED when cwd is set — the proof run executes tool config (eslint.config.js, plugins, pytest conftest) FROM the cwd, so an undeclared cwd is a code-execution surface. Entries must be absolute. Omit both to run in the server’s own working directory. |
timeout_ms |
integer | no | — | Timeout per check in milliseconds. Default 60_000. |
Full input schema
Section titled “Full input schema”The JSON Schema below is generated from the same zod schema the server validates against at the wire — it cannot drift from runtime behavior.
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "checks": { "minItems": 1, "type": "array", "items": { "type": "string", "enum": [ "typescript", "eslint", "pytest", "ruff", "cargo-check" ] }, "description": "Which proof tools to run. Each runs in parallel. Missing tools are reported as status:'missing', not 'fail'." }, "files": { "description": "Optional scope filter. When set, each tool is invoked with the file list appended (where the tool supports it). Tools that require whole-project invocation (e.g. tsc --noEmit) ignore this." }, "cwd": { "description": "Working directory for the spawned CLIs. Default: process.cwd(). When set, must be contained in allowed_roots.", "type": "string", "minLength": 1 }, "allowed_roots": { "description": "Absolute directories a custom `cwd` may launch from. REQUIRED when `cwd` is set — the proof run executes tool config (eslint.config.js, plugins, pytest conftest) FROM the cwd, so an undeclared cwd is a code-execution surface. Entries must be absolute. Omit both to run in the server's own working directory.", "type": "array", "items": { "type": "string", "minLength": 1 } }, "timeout_ms": { "description": "Timeout per check in milliseconds. Default 60_000.", "type": "integer", "minimum": 1000, "maximum": 600000 } }, "required": [ "checks" ]}Envelope
Section titled “Envelope”Every tool returns the standard envelope — tier_used, model, tokens_in/tokens_out, elapsed_ms, backend provenance, warnings. See Envelope & tiers.
Source
Section titled “Source”Schema + handler: src/tools/batchProofCheck.ts · registration: src/index.ts
Back to the Tool Reference.