Browse the library
Product guide

Designing a Machine

Configure the objective, tools, memory, output format, and limits of a single worker.

Objective and success criteria

A Machine is the reusable configuration behind a task. Its objective explains what it should accomplish; success criteria explain what a useful result contains. The system prompt adds context and instructions to that configuration.

Prefer a bounded job such as preparing a briefing from supplied notes over a broad mandate such as managing a business. A narrower objective makes tool selection, review, and failure diagnosis easier.

Tools and output

Tools supply specific capabilities: public web search, page retrieval, HTTP requests, arithmetic, structured extraction, memory writes, and delegation to another workspace Machine. An enabled tool remains subject to permission checks. Tools marked as requiring a sandbox cannot be enabled until that runtime exists.

Use text output for a briefing and structured output when a later step needs named fields. Structured field definitions support types such as strings, numbers, booleans, and URLs. Validation checks the shape of the result; you still need to assess whether its content is correct.

Memory and continuity

Memory mode determines whether a Machine retrieves no saved memories, uses context within the current run, or retrieves persistent memories for later tasks. Structured memory adds typed facts and entities to persistent memory. Run history remains a separate execution record.

Choose persistent memory when the task benefits from stable facts you can inspect and curate. Choose session memory when each run should begin from its supplied input. Memory writes are a permissioned action, not an automatic reason to treat a generated statement as true.

Execution limits

Runtime, model turns, and tool-call limits bound the amount of work a run can attempt. Daily, monthly, and per-task budgets add cost boundaries. Delegated work contributes to the execution and cost story of the parent task.

The builder permits runtime settings up to 900 seconds, but hosted function execution is bounded to 300 seconds. Keep the full task and its delegation inside the hosted budget. Longer execution needs a dedicated worker.

  • Begin with few tools and small limits, then expand after inspecting results.
  • Pause a Machine when you want to prevent new work; inspect active runs separately.
  • Use cancellation to stop a run and review any action that may already have occurred.
Living documentation · October 2026Product status & limits ↗