Task object as its second argument. The task is your agent’s interface to the Guild runtime — it provides access to tools, LLMs, workspace variables, user interaction, and platform services.
Available services
See the Task object reference for the full API — every method, parameter, and return shape for each service.
Concurrent tool calls
To run the same work over many inputs — or several independent tool calls at once — fan out withtask.gather from a single compiled ("use agent") agent. It dispatches every call as one batch and returns the results in source order.
task.gatherSettled is the same fan-out with Promise.allSettled semantics, so one failing call does not sink the rest. Promise.all over tool calls is an anti-pattern in compiled agents: it hides the tool-call promises from the runtime and does not run them in parallel. See Parallel tool calls with task.gather.
Progress logging
Progress logs give users real-time feedback during long-running operations:- Use present continuous tense: “Creating…”, “Running…”, “Writing…”
- Keep messages to one line
- Be specific: “Writing 3 files…” rather than “Processing…”
- Log at meaningful milestones, not on every iteration
Next steps
Task object reference
The full API for every service on
task.LLMs
Make language model calls and set provider preferences.