| name | No | Agent name. Required standalone; defaults to the workflow title in workflow mode. | |
| memory | No | STANDALONE MODE: the agent's private notebook, shown to it every run and updated automatically after each run. Seed ONLY durable facts the next run must know (target descriptions, preferences, known state) — one short line each. Task steps belong in prompt, not here. Usually best left empty. | |
| prompt | No | STANDALONE MODE (required there): The task the browser agent runs, written as a BROWSING RUNBOOK. Structure it as: `Goal:` — one sentence naming the outcome. `Ground rules (every stage, every turn):` — bullet invariants when the task needs them, e.g. work one item at a time — never batch; only record a figure you can read on screen this turn — if it is not shown record it as "not stated", never estimate; keep a running tally and restate it every turn ("captured C items · written R rows"). Then `Stage N — <Site name> (<https://url>)` — one section per website or phase, listing the concrete steps to take in the browser (open/navigate, click, read, capture, compare, flag) in the order a person would do them, each stage ending with `Done when: <verifiable completion condition>`. Finish with `Output —` stating exactly what to produce or deliver once the final tally is met, including what to say when there is no data (never fabricate a row). When a stage delivers per-recipient (message/email each customer), state the MATCHING RULE in that stage — the identifier shared by the source record and the destination recipient (e.g. the customer name exactly as written in the source, matched against the contact name) — and the no-match branch: skip it and report it, never deliver to a similarly-named near-match. Write the user's CONCRETE values (group names, URLs, numbers) directly into the text; use {{variables}} ONLY when the user explicitly wants a reusable template whose inputs change per run. A short single-site task can be just a Goal plus its steps. PURE TASK ONLY — never write memory bookkeeping into the prompt (no "check memory", "record in memory", "store in memory" steps): tracking is authored in memoryContract and WebRun applies it to every run automatically. | |
| schedule | Yes | When the agent fires. Required. | |
| expiresAt | No | ISO 8601 date-time after which the agent auto-pauses (recurring schedules). | |
| variables | No | WORKFLOW MODE, and only when the workflow's prompt actually contains {{variables}}: values for them, BAKED IN at deploy and reused every run (stored variableValues defaults fill gaps). Every template variable must be covered — an unattended agent cannot ask later. Workflows with concrete prompts need nothing here. | |
| outputType | No | STANDALONE MODE: output contract (same rules as create_workflow). | |
| workflowId | No | WORKFLOW MODE: 24-hex id of the workflow to deploy (from list_workflows). The prompt, starting URL, output contract, model, proxy, policy, and files are all copied from it. | |
| startingUrl | No | STANDALONE MODE: page Chrome opens at the start of each run. | |
| outputSchema | No | STANDALONE MODE: JSON Schema object (structured) or column-name array (structured_csv). | |
| environmentId | No | STANDALONE MODE, rarely needed — OMIT it: the connection-bound environment (or your only one) is applied automatically; never ask the user to choose. Workflow mode always uses the workflow's deployed environment. | |