Skip to main content
A discovery run scans connected sources (and, in deep-search mode, cited external research) for how work actually flows through a workspace. It returns observations and process cards — observed workflow candidates with confidence scores and confirmation questions. A card never becomes an operating process silently: you explicitly propose it, and a person still confirms it afterwards.

Wire shape

The run object (camelCase on the wire): The full result envelope is { "run", "observations", "processCards", "confirmedProcessRefs" }. Each process card carries processCandidateRef.id (the ID you propose), displayName, confidence, nextConfirmationQuestion, riskFlags, cycle time estimates, and automationReadiness.

Operations

All routes accept Authorization: Bearer oxk_... or a web-app session; mutations require an Idempotency-Key header.
Start returns 201 with the full result (200 with meta.duplicate: true when the idempotency key replays); a second concurrent start with the same key returns 409 discovery_run_in_progress. Propose returns 201 with meta.requiresConfirmation: true — the resulting operating process is proposed and still needs confirm and activate.

Where the IDs come from

CLI and MCP equivalents

The wizard’s map command drives this exact flow from the terminal (--deep-search selects deep_search mode; --candidate runs the propose step). No MCP tool operates on discovery runs today — this resource is REST-first.