cloud ui docs + cookbooks (#4759)
Co-authored-by: Ritik Sahni <ritiksahni0203@gmail.com> Co-authored-by: Kunal Mishra <kunalm2345@gmail.com>
This commit is contained in:
95
docs/cloud/viewing-results/downloading-artifacts.mdx
Normal file
95
docs/cloud/viewing-results/downloading-artifacts.mdx
Normal file
@@ -0,0 +1,95 @@
|
||||
---
|
||||
title: Downloading Artifacts
|
||||
subtitle: Access recordings, screenshots, and output files from your runs
|
||||
slug: cloud/viewing-results/downloading-artifacts
|
||||
---
|
||||
|
||||
Every run generates artifacts — video recordings, screenshots at each decision point, extracted data as JSON, and any downloaded files. Most are visible in the [Run Details](/cloud/viewing-results/run-details) page, but you can also save them locally or pull them into another system.
|
||||
|
||||
## From the UI
|
||||
|
||||
| Artifact | How to download |
|
||||
|----------|----------------|
|
||||
| **Recordings** | Recording tab → right-click the video → **Save video as...** |
|
||||
| **Screenshots** | Overview tab → click a timeline item → right-click the image → **Save image as...** |
|
||||
| **Extracted data** | Output tab → select the JSON text and copy |
|
||||
| **Downloaded files** | Output tab → **Workflow Run Downloaded Files** → click any link |
|
||||
| **Generated code** | Code tab → **Copy** button in the top right |
|
||||
|
||||
## From the API
|
||||
|
||||
Use the API when you need artifacts programmatically — for a pipeline, an archive, or integration with another tool.
|
||||
|
||||
### List artifacts for a run
|
||||
|
||||
```bash
|
||||
curl -X GET "https://api.skyvern.com/v1/runs/{run_id}/artifacts" \
|
||||
-H "x-api-key: YOUR_API_KEY"
|
||||
```
|
||||
|
||||
Filter by type using the `artifact_type` parameter (repeatable):
|
||||
|
||||
```bash
|
||||
curl -X GET "https://api.skyvern.com/v1/runs/{run_id}/artifacts?artifact_type=screenshot_llm&artifact_type=recording" \
|
||||
-H "x-api-key: YOUR_API_KEY"
|
||||
```
|
||||
|
||||
### Download an artifact
|
||||
|
||||
Each artifact in the response includes a `signed_url` — a temporary, pre-authenticated download link:
|
||||
|
||||
```json
|
||||
{
|
||||
"artifact_id": "art_abc123",
|
||||
"artifact_type": "screenshot_llm",
|
||||
"signed_url": "https://storage.example.com/screenshot.png?token=...",
|
||||
"created_at": "2025-01-15T10:30:00Z"
|
||||
}
|
||||
```
|
||||
|
||||
```bash
|
||||
curl -o screenshot.png "SIGNED_URL_HERE"
|
||||
```
|
||||
|
||||
<Warning>
|
||||
Signed URLs expire after a short period. Always generate a fresh URL via the API rather than storing old ones.
|
||||
</Warning>
|
||||
|
||||
### Artifact types
|
||||
|
||||
| Value | What it is |
|
||||
|-------|-----------|
|
||||
| `recording` | Full browser session video |
|
||||
| `screenshot_llm` | Screenshots with numbered element annotations — what the AI analyzed |
|
||||
| `screenshot_action` | Screenshots taken after each browser action |
|
||||
| `screenshot_final` | Final page state when the run ended |
|
||||
| `llm_prompt` | Complete prompt sent to the LLM (goal, element tree, system instructions) |
|
||||
| `llm_request` | Raw API request payload sent to the model provider |
|
||||
| `llm_response` | Raw model response |
|
||||
| `llm_response_parsed` | Parsed action list — what the AI decided to do |
|
||||
| `visible_elements_tree` | DOM tree of interactive elements the AI could see (JSON) |
|
||||
| `html_scrape` | Full page HTML at the time of the step |
|
||||
| `skyvern_log` | Formatted execution logs |
|
||||
| `har` | HTTP Archive file — every network request the browser made |
|
||||
| `trace` | Browser trace file for performance analysis |
|
||||
|
||||
<Tip>
|
||||
The annotated screenshots (`screenshot_llm`) and parsed action lists (`llm_response_parsed`) are the most useful for debugging. Annotated screenshots show which elements the AI identified, and the action list shows what it decided to do with them.
|
||||
</Tip>
|
||||
|
||||
<CardGroup cols={2}>
|
||||
<Card
|
||||
title="Run Details"
|
||||
icon="magnifying-glass"
|
||||
href="/cloud/viewing-results/run-details"
|
||||
>
|
||||
Understand what each tab shows and how to debug failures
|
||||
</Card>
|
||||
<Card
|
||||
title="Using Artifacts (API)"
|
||||
icon="code"
|
||||
href="/debugging/using-artifacts"
|
||||
>
|
||||
Full API reference for artifact retrieval
|
||||
</Card>
|
||||
</CardGroup>
|
||||
118
docs/cloud/viewing-results/run-details.mdx
Normal file
118
docs/cloud/viewing-results/run-details.mdx
Normal file
@@ -0,0 +1,118 @@
|
||||
---
|
||||
title: Run Details
|
||||
subtitle: Inspect actions, outputs, recordings, and parameters for any run
|
||||
slug: cloud/viewing-results/run-details
|
||||
---
|
||||
|
||||
Every run has a detail page showing what the AI saw, what it decided, what it extracted, and whether anything went wrong. Click any run in [Run History](/cloud/viewing-results/run-history) to get here.
|
||||
|
||||
<img src="/images/cloud/task-run-details.png" alt="Run details page showing a completed workflow run" />
|
||||
|
||||
## The header
|
||||
|
||||
The top of the page shows the workflow title, a color-coded status badge, and the run ID. Three buttons on the right:
|
||||
|
||||
- **API & Webhooks** — the exact API request that would reproduce this run, including endpoint, headers, and payload
|
||||
- **Edit** — jump to the workflow editor
|
||||
- **Rerun** — start a new run pre-filled with the same parameters (appears after the run finishes)
|
||||
|
||||
While a run is in progress, a **Cancel** button appears instead of Rerun.
|
||||
|
||||
<img src="/images/cloud/workflow-run-timeline.png" alt="A running workflow with live browser view and timeline" />
|
||||
|
||||
## Extracted information
|
||||
|
||||
On success, the **Extracted Information** section appears above the tabs — the structured data you asked for, displayed as JSON.
|
||||
|
||||
<img src="/images/cloud/task-run-results.png" alt="Workflow Run Outputs showing extracted JSON data" />
|
||||
|
||||
The output includes a `summary` (natural language description of what was accomplished), `extracted_information` (structured data matching your schema), and a `failure_reason` field that's `null` on success. On failure, a **Failure Reason** section appears instead with error details in a red box.
|
||||
|
||||
## The five tabs
|
||||
|
||||
### Overview
|
||||
|
||||
The left panel shows the browser state (live stream while running, screenshots after completion). The right panel shows the AI's reasoning timeline.
|
||||
|
||||
<img src="/images/cloud/task-run-actions-tab.png" alt="Overview tab showing browser screenshot and AI reasoning timeline" />
|
||||
|
||||
The timeline is a chronological feed of three card types:
|
||||
|
||||
| Card | What it shows |
|
||||
|------|--------------|
|
||||
| **Thought** | The AI's internal reasoning — what it sees, what it plans to do, and why. Tagged with "Decision." |
|
||||
| **Block** | When a workflow block starts or finishes (e.g., "Extraction"). Green checkmark = success. |
|
||||
| **Action** | Individual browser operations (e.g., "#1 Extract Data") with a description of what was done. |
|
||||
|
||||
Click any timeline item to see its corresponding screenshot in the left panel. The **Actions** and **Steps** counters at the top give you a quick sense of how much work the run involved.
|
||||
|
||||
<Tip>
|
||||
When a run produces wrong results, start with the Thought cards. Read the AI's reasoning to find where it went off track — a misidentified element, or a premature "goal met" conclusion.
|
||||
</Tip>
|
||||
|
||||
### Output
|
||||
|
||||
All output data in one place. **Workflow Run Outputs** shows the complete JSON with line numbers and syntax highlighting. **Workflow Run Downloaded Files** lists any files the workflow downloaded — click to download directly.
|
||||
|
||||
### Parameters
|
||||
|
||||
The configuration that produced this run: workflow input parameters (key-value pairs), webhook URL, proxy location, and HTTP headers. Use this to verify a run received the right inputs or to recreate a past result.
|
||||
|
||||
When you select a block in the Overview timeline, this tab also shows that block's configuration — prompt, URL, schema, and other settings.
|
||||
|
||||
### Recording
|
||||
|
||||
Full video replay of the browser session. Every run is recorded automatically. Scrub through to see exactly what appeared on screen at any point.
|
||||
|
||||
<Note>
|
||||
If the run was canceled before the browser started, you'll see a "No recording available" message.
|
||||
</Note>
|
||||
|
||||
### Code
|
||||
|
||||
Python code generated from the run. This tab appears when code generation is enabled (the default engine). Copy the code to run outside Skyvern, or click **Copy & Explain** for an AI-generated explanation.
|
||||
|
||||
<img src="/images/cloud/workflow-run-code-tab.png" alt="Code tab showing generated Python code with syntax highlighting" />
|
||||
|
||||
If the workflow uses cached code, a **Cache Key selector** lets you switch between versions.
|
||||
|
||||
## Debugging failed runs
|
||||
|
||||
Work through these in order:
|
||||
|
||||
1. **Read the Failure Reason** at the top. It usually tells you what happened — timeout, navigation error, or missing element.
|
||||
2. **Walk the Thought cards** in the Overview timeline. Find the point where the AI made an incorrect assumption about page state.
|
||||
3. **Check the Parameters tab** to confirm inputs were correct. A wrong URL or missing parameter is a common cause.
|
||||
4. **Watch the Recording** to see what actually happened. Popups, CAPTCHAs, and unexpected page layouts are often obvious on video.
|
||||
|
||||
## Run statuses
|
||||
|
||||
| Status | Meaning |
|
||||
|--------|---------|
|
||||
| `created` | Initialized, waiting to be queued |
|
||||
| `queued` | Waiting for an available browser slot |
|
||||
| `running` | Actively executing — browser stream is live |
|
||||
| `completed` | Finished successfully |
|
||||
| `failed` | Stopped due to an error |
|
||||
| `terminated` | Stopped by the system (e.g., resource limits) |
|
||||
| `canceled` | Stopped by you via the Cancel button |
|
||||
| `timed_out` | Exceeded the configured time limit |
|
||||
|
||||
While a run is in progress, the status badge updates automatically, the Overview tab shows a live browser stream, and the timeline grows as new items complete.
|
||||
|
||||
<CardGroup cols={2}>
|
||||
<Card
|
||||
title="Downloading Artifacts"
|
||||
icon="download"
|
||||
href="/cloud/viewing-results/downloading-artifacts"
|
||||
>
|
||||
Access recordings, screenshots, and output files
|
||||
</Card>
|
||||
<Card
|
||||
title="Watching Live Execution"
|
||||
icon="eye"
|
||||
href="/cloud/getting-started/monitor-a-run"
|
||||
>
|
||||
Monitor and take control of running tasks
|
||||
</Card>
|
||||
</CardGroup>
|
||||
55
docs/cloud/viewing-results/run-history.mdx
Normal file
55
docs/cloud/viewing-results/run-history.mdx
Normal file
@@ -0,0 +1,55 @@
|
||||
---
|
||||
title: Run History
|
||||
subtitle: Find, filter, and inspect past task and workflow executions
|
||||
slug: cloud/viewing-results/run-history
|
||||
---
|
||||
|
||||
The **Runs** page shows every task and workflow execution, sorted newest-first. Use it to check on past runs, find failures, or verify that a scheduled workflow completed.
|
||||
|
||||
<img src="/images/cloud/run-history-overview.png" alt="Run History page overview" />
|
||||
|
||||
## Finding a specific run
|
||||
|
||||
**Search** narrows the list by run ID or workflow parameter value. Type part of an ID (e.g., `wr_49338`) or a parameter you passed (like a URL), and matching results appear as you type.
|
||||
|
||||
<img src="/images/cloud/run-history-search.png" alt="Searching for a run by ID" />
|
||||
|
||||
**Filter by Status** opens a multi-select dropdown. Check one or more statuses to narrow results — `failed` and `timed_out` together show everything that went wrong. Filters and search can be combined: search for a parameter value while filtering to only failed runs.
|
||||
|
||||
Available statuses: **Created**, **Queued**, **Running**, **Completed**, **Failed**, **Terminated**, **Canceled**, **Timed Out**.
|
||||
|
||||
## Reading the table
|
||||
|
||||
Each row is one run. The columns:
|
||||
|
||||
| Column | What it shows |
|
||||
|--------|--------------|
|
||||
| **Run ID** | Workflow run (`wr_...`) or task (`tsk_...`) identifier. Hover for the full ID. |
|
||||
| **Detail** | Workflow title or task description. A lightning bolt icon means code generation was used. |
|
||||
| **Status** | Color-coded badge — green (completed), yellow (running/queued/created), red (failed/timed_out), orange (terminated/canceled). |
|
||||
| **Created At** | Start time in your local timezone. Hover for UTC. |
|
||||
|
||||
Workflow runs have a **settings icon** in the last column. Click it to expand the row and see the parameters passed to that run. If your search matches something inside the parameters, the row auto-expands so you can see the match in context.
|
||||
|
||||
## Opening a run
|
||||
|
||||
Click any row to jump to its [detail page](/cloud/viewing-results/run-details). Hold **Ctrl** (or **Cmd** on Mac) to open in a new tab.
|
||||
|
||||
Pagination controls at the bottom let you adjust the page size (5, 10, 20, or 50 items) and navigate between pages. Settings are stored in the URL, so you can bookmark a filtered view or share it with a teammate.
|
||||
|
||||
<CardGroup cols={2}>
|
||||
<Card
|
||||
title="Run Details"
|
||||
icon="magnifying-glass"
|
||||
href="/cloud/viewing-results/run-details"
|
||||
>
|
||||
Inspect actions, outputs, recordings, and parameters for any run
|
||||
</Card>
|
||||
<Card
|
||||
title="Downloading Artifacts"
|
||||
icon="download"
|
||||
href="/cloud/viewing-results/downloading-artifacts"
|
||||
>
|
||||
Save recordings, screenshots, and output files
|
||||
</Card>
|
||||
</CardGroup>
|
||||
Reference in New Issue
Block a user