ToolProgram
ToolProgram composes several tool calls in one bounded JavaScript program —
loops, collections and Promise.all — and returns only the filtered result to
the model. Discover it through ToolSearch.
const files = await Promise.all(["a.txt", "b.txt"].map(path => tools.Read({path})))return files.map(file => ({path: file.path, length: file.content.length}))Each nested call keeps its policy, approvals, receipts and recovery. Programs have no ambient filesystem, network, process, clock or randomness. Defaults: 64 calls, 4 concurrent, 30 seconds, 64 KiB final result. A failed program may already have completed effects and is never restarted automatically.