Skip to content

Commit ee31291

Browse files
docs: crosslink API error references (#166)
* docs: crosslink API error references Add focused links from cloud agent, CLI, integration, billing, and API docs to the relevant API/SDK troubleshooting error pages. Co-Authored-By: Oz <oz-agent@warp.dev> * docs: adjust error crosslink placement Co-Authored-By: Oz <oz-agent@warp.dev> * docs: style error links as troubleshooting tips Co-Authored-By: Oz <oz-agent@warp.dev> * docs: refine troubleshooting tip formatting Co-Authored-By: Oz <oz-agent@warp.dev> * docs: polish troubleshooting tip copy Co-Authored-By: Oz <oz-agent@warp.dev> * docs: consolidate integrations overview quickstart Co-Authored-By: Oz <oz-agent@warp.dev> * docs: refine integrations overview links Co-Authored-By: Oz <oz-agent@warp.dev> * docs: address error crosslink review feedback Co-Authored-By: Oz <oz-agent@warp.dev> --------- Co-authored-by: Oz <oz-agent@warp.dev>
1 parent b6b107c commit ee31291

15 files changed

Lines changed: 78 additions & 104 deletions

File tree

src/content/docs/agent-platform/cloud-agents/environments.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -290,12 +290,12 @@ If your setup commands depend on secrets or credentials, configure them through
290290

291291
### Common issues
292292

293-
* **Setup assumes previous state** – Steps that rely on leftover caches, existing directories, or already-cloned repos can make runs unreliable.
293+
* **Setup assumes previous state** – Steps that rely on leftover caches, existing directories, or already-cloned repos can make runs unreliable. Setup failures can surface as [`environment_setup_failed`](/reference/api-and-sdk/troubleshooting/errors/environment-setup-failed/).
294294
* Solution: Write idempotent setup commands that work on a fresh container.
295295
* **Missing credentials or secrets** – Builds fail when private repos, package registries, or external services require authorization.
296296
* Solution: Configure credentials with [Agent Secrets](/agent-platform/cloud-agents/secrets/).
297-
* **Repo access and GitHub authorization issues** – Runs fail when GitHub doesn't have repo access or the triggering user lacks permissions.
297+
* **Repo access and GitHub authorization issues** – Runs fail when GitHub doesn't have repo access or the triggering user lacks permissions. Missing external authorization can surface as [`external_authentication_required`](/reference/api-and-sdk/troubleshooting/errors/external-authentication-required/).
298298
* Solution: See [Integration setup](/reference/cli/integration-setup/#how-github-authorization-works) for GitHub authorization setup.
299299
* **Docker image incompatibility** – You see the error: "VM failed before the agent could run. This is likely an issue with your Docker image."
300-
* Possible cause: Alpine Linux and other musl-based images are not compatible with the agent runtime, which requires glibc.
300+
* Possible cause: Alpine Linux and other musl-based images are not compatible with the agent runtime, which requires glibc. This can surface as [`environment_setup_failed`](/reference/api-and-sdk/troubleshooting/errors/environment-setup-failed/).
301301
* Solution: Switch to a glibc-based image such as Debian, Ubuntu, or the default (non-Alpine) variants of official Docker Hub images (e.g. `node`, `python`, `rust`).

src/content/docs/agent-platform/cloud-agents/integrations/github-actions.mdx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,12 @@ You can specify a skill using the `skill` input parameter, either instead of or
6565
warp_api_key: ${{ secrets.WARP_API_KEY }}
6666
```
6767
68+
:::tip
69+
If the action fails, use the returned error code to narrow the fix. Common errors include:
70+
71+
* [`authentication_required`](/reference/api-and-sdk/troubleshooting/errors/authentication-required/) (missing, invalid, or expired `warp_api_key` secret)
72+
:::
73+
6874
#### Skill format options
6975

7076
The `skill` parameter supports multiple formats for referencing skills:

src/content/docs/agent-platform/cloud-agents/integrations/index.mdx

Lines changed: 9 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Warp integrations let your team trigger agents directly from the terminal, or fr
1313
* Run code inside your codebase in a remote environment
1414
* Open pull requests and perform other multi-step agent workflows on your behalf
1515

16-
If you're deciding whether an agent should run from a schedule, Slack or Linear, GitHub Actions, the Oz CLI, or the API, see [Run agents unattended with schedules and triggers](/guides/agent-workflows/how-to-run-unattended-agents/).
16+
If you're deciding whether an agent should run from a schedule, Slack, Linear, GitHub Actions, the Oz CLI, or the API, see [Run agents unattended with schedules and triggers](/guides/agent-workflows/how-to-run-unattended-agents/).
1717

1818
:::note
1919
For a full walkthrough of Warp's integrations and configurable environments, please refer to [Integration setup](/reference/cli/integration-setup/).
@@ -23,86 +23,15 @@ All of this is powered by the [Oz CLI](/reference/cli/).
2323

2424
---
2525

26-
## Quickstart
26+
## Get started
2727

28-
The fastest way to get agents running from Slack or Linear is to create an environment with the guided flow. An **environment** defines everything the agent needs to run your code remotely, including your Docker image, repos, and setup commands.
28+
Use the setup walkthrough below for a quick look at how environments connect to integrations, then choose the guide that matches what you want to do next.
2929

3030
<VideoEmbed url="https://www.youtube.com/watch?v=ahFfInVD0HQ" />
3131

32-
#### 1. Run /create-environment
33-
34-
From Warp, run the following slash command:
35-
36-
```
37-
/create-environment
38-
```
39-
40-
You can run it inside any repo, or point it at multiple repos:
41-
42-
```
43-
/create-environment ./frontend ./backend
44-
/create-environment your-org/repo-name
45-
/create-environment https://github.com/your-org/api.git
46-
```
47-
48-
:::note
49-
Learn more about slash commands and how to use them in the [Slash Commands](/agent-platform/capabilities/slash-commands/) documentation.
50-
:::
51-
52-
The guided flow will:
53-
54-
* Detect which repos you want the agent to work with
55-
* Identify languages, frameworks, and tools
56-
* Suggest a Docker image (or build/push one if needed)
57-
* The Docker image can be your own custom image, an official base image (e.g. node, python), or one of Warp's prebuilt dev images (see [repo](https://github.com/warpdotdev/oz-dev-environments)).
58-
* Recommend setup commands
59-
* Create the environment and return an environment ID
60-
61-
This produces a ready-to-use environment that Warp can use across Slack, Linear, and terminal triggers.
62-
63-
#### 2. Authorize GitHub
64-
65-
Warp will prompt you to install or update the Warp GitHub app so the agent can read and write to the repos you included. You only need to do this once. Teammates will authorize on their first run as needed.
66-
67-
:::note
68-
**Using Azure DevOps, GitLab, or Bitbucket?** Native integrations for these platforms are not yet available, but you can connect repositories by storing a personal access token as a Warp-managed secret and cloning via a setup command. See [Azure DevOps](/agent-platform/cloud-agents/integrations/azure-devops/), [GitLab](/agent-platform/cloud-agents/integrations/gitlab/), or [Bitbucket](/agent-platform/cloud-agents/integrations/bitbucket/) for step-by-step instructions.
69-
:::
70-
71-
#### 3. Create an integration
72-
73-
:::note
74-
For easier setup, use the [Oz web app](/agent-platform/cloud-agents/oz-web-app/) at [oz.warp.dev](https://oz.warp.dev) to configure integrations with a guided flow. The web app works on mobile devices.
75-
:::
76-
77-
Alternatively, use the CLI:
78-
79-
For Slack:
80-
81-
```
82-
oz integration create slack --environment <ENV_ID>
83-
```
84-
85-
For Linear:
86-
87-
```
88-
oz integration create linear --environment <ENV_ID>
89-
```
90-
91-
The CLI opens an authorization page where you install Oz into your Slack workspace or Linear team.
92-
93-
#### 4. Start using agents
94-
95-
In Slack:
96-
97-
* Tag **@Oz** in a message or thread
98-
* Or DM the bot
99-
100-
In Linear:
101-
102-
* Tag @Oz on an issue
103-
104-
Warp will read the thread/issue, spin up your environment, run the workflow in the cloud, and post progress + PRs back into the same conversation.
105-
106-
---
107-
108-
For more details on configuring integrations and environments in Warp, please refer to [Integration setup](/reference/cli/integration-setup/).
32+
* [Integrations quickstart](/agent-platform/cloud-agents/integrations/quickstart/) - Trigger your first agent from Slack and watch the run from start to finish.
33+
* [Integration setup](/reference/cli/integration-setup/) - Configure environments, GitHub authorization, CLI flags, and integrations in more detail.
34+
* [Slack](/agent-platform/cloud-agents/integrations/slack/) and [Linear](/agent-platform/cloud-agents/integrations/linear/) - Trigger agents from team conversations, issues, and comments.
35+
* [GitHub Actions](/agent-platform/cloud-agents/integrations/github-actions/) - Run agents from CI workflows and repository events.
36+
* [GitLab](/agent-platform/cloud-agents/integrations/gitlab/), [Bitbucket](/agent-platform/cloud-agents/integrations/bitbucket/), and [Azure DevOps](/agent-platform/cloud-agents/integrations/azure-devops/) - Connect non-GitHub repositories with tokens and Warp-managed secrets.
37+
* [AWS, GCP, and other cloud providers](/agent-platform/cloud-agents/integrations/cloud-providers/) - Give cloud agents short-lived access to cloud services.

src/content/docs/agent-platform/cloud-agents/integrations/linear.mdx

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,13 @@ oz integration create linear --environment <ENV_ID>
110110

111111
The CLI will open a browser window prompting you to install the Oz app into your Linear workspace. After installation, the integration becomes available to all members of your Warp team.
112112

113+
:::tip
114+
If the integration cannot be created or a Linear-triggered run cannot start, use the returned error code to narrow the fix. Common errors include:
115+
116+
* [`feature_not_available`](/reference/api-and-sdk/troubleshooting/errors/feature-not-available/) (plan does not support integrations)
117+
* [`external_authentication_required`](/reference/api-and-sdk/troubleshooting/errors/external-authentication-required/) (missing GitHub or Linear authorization)
118+
:::
119+
113120
---
114121

115122
### Uninstallation instructions
@@ -124,7 +131,7 @@ To remove the Oz integration from Linear:
124131

125132
<VideoEmbed url="https://www.loom.com/share/2f1648586d8148dc80561c00a09ca334" />
126133

127-
After revoking access, Warp will no longer be able to read issues, receive triggers, or create updates in Linear. If you reinstall later, you’ll need to authorize Warp again during setup.
134+
After revoking access, Warp will no longer be able to read issues, receive triggers, or create updates in Linear. If you reinstall later, you’ll need to authorize Warp again during setup. Events for a disabled integration can return [`integration_disabled`](/reference/api-and-sdk/troubleshooting/errors/integration-disabled/).
128135

129136
### Troubleshooting
130137

src/content/docs/agent-platform/cloud-agents/integrations/quickstart.mdx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,13 @@ oz integration create slack --environment <ENV_ID>
4343

4444
Replace `<ENV_ID>` with your environment ID (see [Environments](/agent-platform/cloud-agents/environments/) if you need to create one). Find it with `oz environment list` on the Oz CLI or in the [Oz web app](https://oz.warp.dev). The CLI opens a browser window to authorize the Oz app in your workspace.
4545

46+
:::tip
47+
If the integration cannot be created or your first run cannot start, use the returned error code to narrow the fix. Common errors include:
48+
49+
* [`feature_not_available`](/reference/api-and-sdk/troubleshooting/errors/feature-not-available/) (plan does not support integrations)
50+
* [`external_authentication_required`](/reference/api-and-sdk/troubleshooting/errors/external-authentication-required/) (missing GitHub or Slack authorization)
51+
:::
52+
4653
To attach a default prompt that applies to every agent run triggered from this integration, add the `--prompt` flag:
4754

4855
```bash

src/content/docs/agent-platform/cloud-agents/integrations/slack.mdx

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,13 @@ oz integration create slack --environment <ENV_ID>
135135

136136
The CLI will open a browser window to install the Oz app into your Slack workspace. After installation, the integration becomes available to all members of your Warp team.
137137

138+
:::tip
139+
If the integration cannot be created or a Slack-triggered run cannot start, use the returned error code to narrow the fix. Common errors include:
140+
141+
* [`feature_not_available`](/reference/api-and-sdk/troubleshooting/errors/feature-not-available/) (plan does not support integrations)
142+
* [`external_authentication_required`](/reference/api-and-sdk/troubleshooting/errors/external-authentication-required/) (missing GitHub or Slack authorization)
143+
:::
144+
138145
You can optionally attach a custom prompt that is applied to every agent run:
139146

140147
```
@@ -170,7 +177,7 @@ To remove the Oz app from your Slack workspace:
170177

171178
![Confirmation dialog to remove the Oz app from a Slack workspace.](../../../../../assets/agent-platform/remove-slack-app.png)
172179

173-
Once removed, Slack will immediately disable the integration for all teammates.
180+
Once removed, Slack will immediately disable the integration for all teammates. Events for a disabled integration can return [`integration_disabled`](/reference/api-and-sdk/troubleshooting/errors/integration-disabled/).
174181

175182
### Troubleshooting
176183

src/content/docs/agent-platform/cloud-agents/managing-cloud-agents.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ Where the agent was launched from. Common sources include:
9090

9191
Warp uses a small set of statuses to help you quickly identify what needs attention:
9292

93-
<table><thead><tr><th width="173.375">Status</th><th width="78.41973876953125">Icon</th><th>Description</th></tr></thead><tbody><tr><td><code>Working</code></td><td>N/A</td><td>in progress (may include queued / running states)</td></tr><tr><td><code>Blocked</code></td><td>🟨</td><td><p><em>(interactive only)</em></p><p><br />the conversation is waiting on user input or a required step</p></td></tr><tr><td><code>Canceled</code></td><td>⬜️</td><td>(interactive only)<br /><br />the interactive conversation was canceled before completion</td></tr><tr><td><code>Failed / Errored</code></td><td>🔺</td><td>something went wrong (applies to both interactive and cloud agent runs)</td></tr><tr><td><code>Success</code></td><td>✅</td><td>completed successfully (applies to both interactive and cloud agent runs)</td></tr></tbody></table>
93+
<table><thead><tr><th width="173.375">Status</th><th width="78.41973876953125">Icon</th><th>Description</th></tr></thead><tbody><tr><td><code>Working</code></td><td>N/A</td><td>in progress (may include queued / running states)</td></tr><tr><td><code>Blocked</code></td><td>🟨</td><td><p><em>(interactive only)</em></p><p><br />the conversation is waiting on user input or a required step</p></td></tr><tr><td><code>Canceled</code></td><td>⬜️</td><td>(interactive only)<br /><br />the interactive conversation was canceled before completion</td></tr><tr><td><a href="/reference/api-and-sdk/troubleshooting/errors/"><code>Failed / Errored</code></a></td><td>🔺</td><td>something went wrong (applies to both interactive and cloud agent runs)</td></tr><tr><td><code>Success</code></td><td>✅</td><td>completed successfully (applies to both interactive and cloud agent runs)</td></tr></tbody></table>
9494

9595
**Duration (for cloud agent tasks)**
9696

src/content/docs/agent-platform/cloud-agents/quickstart.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -151,13 +151,13 @@ Use the [Oz API & SDK](/reference/api-and-sdk/) to trigger agents programmatical
151151
## Troubleshooting
152152

153153
**Environment creation fails**\
154-
Use official Docker Hub images like `node`, `python`, or `rust` for best compatibility. Ensure your GitHub repos are accessible. If using a custom image, avoid Alpine/musl-based images—the agent runtime requires glibc. See [Environments](/agent-platform/cloud-agents/environments/) for more guidance on choosing Docker images.
154+
Use official Docker Hub images like `node`, `python`, or `rust` for best compatibility. Ensure your GitHub repos are accessible. If using a custom image, avoid Alpine/musl-based images—the agent runtime requires glibc. See [Environments](/agent-platform/cloud-agents/environments/) for more guidance on choosing Docker images and [`environment_setup_failed`](/reference/api-and-sdk/troubleshooting/errors/environment-setup-failed/) for the related API error.
155155

156156
**Agent can't access repos**\
157-
Warp prompts you to authorize GitHub when you create an environment or trigger your first agent. If authorization fails or needs updating, see [How GitHub Authorization works](/reference/cli/integration-setup/#how-github-authorization-works). For automated workflows using team API keys, make sure [team GitHub authorization](/agent-platform/cloud-agents/team-access-billing-and-identity/#team-github-authorization) is configured in the Admin Panel. Also verify that repos are correctly configured in your environment with `oz environment get <ENV_ID>`.
157+
Warp prompts you to authorize GitHub when you create an environment or trigger your first agent. If authorization fails or needs updating, see [How GitHub Authorization works](/reference/cli/integration-setup/#how-github-authorization-works) and [`external_authentication_required`](/reference/api-and-sdk/troubleshooting/errors/external-authentication-required/). For automated workflows using team API keys, make sure [team GitHub authorization](/agent-platform/cloud-agents/team-access-billing-and-identity/#team-github-authorization) is configured in the Admin Panel. Also verify that repos are correctly configured in your environment with `oz environment get <ENV_ID>`; permission mismatches can surface as [`not_authorized`](/reference/api-and-sdk/troubleshooting/errors/not-authorized/).
158158

159159
**Not enough credits to run cloud agents**\
160-
Your team needs at least 20 credits available. Check your credit balance in Settings or see [Access, Billing, and Identity](/agent-platform/cloud-agents/team-access-billing-and-identity/) for details on credit requirements and which plans support cloud agents.
160+
Your team needs at least 20 credits available. Check your credit balance in Settings or see [Access, Billing, and Identity](/agent-platform/cloud-agents/team-access-billing-and-identity/) for details on credit requirements and which plans support cloud agents. If a run is blocked because the billed principal has no remaining credits, see [`insufficient_credits`](/reference/api-and-sdk/troubleshooting/errors/insufficient-credits/).
161161

162162
**More resources**
163163

src/content/docs/agent-platform/cloud-agents/team-access-billing-and-identity.mdx

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ Your team must meet the following requirements to run integrations:
8282
When a user triggers an agent through an integration (like Slack or Linear), the run draws from credits based on who the run is billed to:
8383

8484
* **User-triggered runs on Build, Max, or Business** - Warp draws from any [cloud agent credits](/support-and-community/plans-and-billing/credits/#compute-credits) the user has, then the user's plan-included credits, then the user's add-on credits. Add-on credits are scoped to the individual user and are not shared across the team.
85-
* **Team API key or scheduled cloud agent runs on Build, Max, or Business** - Warp bills the team owner. The waterfall is: the owner's plan-included credits, then the owner's add-on credits. With auto-reload off, the request is blocked when both pools are depleted. With auto-reload on, usage can trigger a reload on the owner's pool subject to the team-wide monthly spend cap.
85+
* **Team API key or scheduled cloud agent runs on Build, Max, or Business** - Warp bills the team owner. The waterfall is: the owner's plan-included credits, then the owner's add-on credits. With auto-reload off, the request is blocked when both pools are depleted. With auto-reload on, usage can trigger a reload on the owner's pool subject to the team-wide monthly spend cap; once the cap is reached, runs are blocked until the cap resets or increases.
8686
* **Enterprise plans** - Runs draw from the team-scoped credit pool, per your Enterprise contract terms.
8787

8888
If all applicable credit sources are exhausted and no auto-reload is configured, integrations and cloud agents will not run until credits are added. See [add-on credits](/support-and-community/plans-and-billing/add-on-credits/) for the full self-serve waterfall and [platform credits](/support-and-community/plans-and-billing/platform-credits/) for the third bucket that applies to every cloud agent run.
@@ -197,7 +197,7 @@ Warp’s behavior in GitHub is defined by two layers of control:
197197
**In practice, agents can only operate on repositories that:**
198198

199199
* Are included in the environment configuration
200-
* Are accessible to both the GitHub app and the triggering user
200+
* Are accessible to both the GitHub app and the triggering user.
201201

202202
---
203203

@@ -251,6 +251,16 @@ It's the team's responsibility to manage triggers, confirm they behave as intend
251251

252252
---
253253

254+
## Troubleshooting
255+
256+
If a cloud agent or integration run fails with an error code, use the error reference to narrow the fix:
257+
258+
* **Missing GitHub or external authorization** - See [`external_authentication_required`](/reference/api-and-sdk/troubleshooting/errors/external-authentication-required/) when a user needs to authorize GitHub, Slack, or Linear before a run can continue.
259+
* **Insufficient repo permissions** - See [`not_authorized`](/reference/api-and-sdk/troubleshooting/errors/not-authorized/) when the triggering user or GitHub App lacks access to the repo the agent needs.
260+
* **Credits or spend caps block a run** - See [`insufficient_credits`](/reference/api-and-sdk/troubleshooting/errors/insufficient-credits/) or [`budget_exceeded`](/reference/api-and-sdk/troubleshooting/errors/budget-exceeded/) when the billed account has depleted credits or reached a configured spend cap.
261+
262+
---
263+
254264
## Related resources
255265

256266
* [Add-on credits](/support-and-community/plans-and-billing/add-on-credits/) - How user-scoped add-on credits, auto-reload, and the team-wide spend cap work on self-serve plans.

0 commit comments

Comments
 (0)