diff --git a/.agents/skills/afdocs-audit/references/known-exceptions.md b/.agents/skills/afdocs-audit/references/known-exceptions.md
index fc9af65de..05eb819d1 100644
--- a/.agents/skills/afdocs-audit/references/known-exceptions.md
+++ b/.agents/skills/afdocs-audit/references/known-exceptions.md
@@ -25,8 +25,8 @@ This file lists checks from the afdocs-audit skill that may flag as warnings or
**Expected status**: warn (several pages, ~2% average difference)
**Reason**: False positive. The "missing" segments are numbered heading text like "2. Tabbed File Viewer" where Turndown correctly escapes the period (`### 2\. Tabbed File Viewer`) to prevent markdown parsers from interpreting it as a list item. The content IS present in the markdown — the AFDocs checker's text comparison doesn't account for markdown escaping.
**Affected pages** (as of 2026-05-05):
-- `/agent-platform/cloud-agents/triggers/scheduled-agents-quickstart/` — step headings
-- `/agent-platform/cloud-agents/integrations/github-actions/` — numbered use case headings
+- `/platform/triggers/scheduled-agents-quickstart/` — step headings
+- `/platform/integrations/github-actions/` — numbered use case headings
- `/support-and-community/troubleshooting-and-support/troubleshooting-login-issues/` — URLs with special chars
- `/reference/cli/quickstart/` — optional step headings
- `/guides/getting-started/welcome-to-warp/` — numbered section headings
diff --git a/.agents/skills/answer_question/SKILL.md b/.agents/skills/answer_question/SKILL.md
index e7a175772..f4c98bbf1 100644
--- a/.agents/skills/answer_question/SKILL.md
+++ b/.agents/skills/answer_question/SKILL.md
@@ -71,7 +71,7 @@ Key rules:
- **`src/content/docs/` is the homepage space** — the `warp/` prefix is NOT included in URLs. Example: `src/content/docs/terminal/blocks/block-basics.mdx` → `https://docs.warp.dev/terminal/blocks/block-basics`
- All other spaces include the space name in the URL. Example: `src/content/docs/agent-platform/capabilities/skills.mdx` → `https://docs.warp.dev/agent-platform/capabilities/skills`
- Strip the `.mdx` extension.
-- `index.mdx` resolves to the parent directory path. Example: `src/content/docs/agent-platform/cloud-agents/integrations/index.mdx` → `https://docs.warp.dev/agent-platform/cloud-agents/integrations`
+- `index.mdx` resolves to the parent directory path. Example: `src/content/docs/platform/integrations/index.mdx` → `https://docs.warp.dev/platform/integrations`
### 5. Output format
diff --git a/.agents/skills/docs-seo-audit/SKILL.md b/.agents/skills/docs-seo-audit/SKILL.md
index 74506f79c..38dd00e7b 100644
--- a/.agents/skills/docs-seo-audit/SKILL.md
+++ b/.agents/skills/docs-seo-audit/SKILL.md
@@ -183,15 +183,15 @@ Astro Starlight uses `title` for the `
` tag and `sidebar.label` for the s
Example:
- `agent-platform/capabilities/index.mdx`: `title: 'Capabilities overview'` + `sidebar.label: 'Overview'`
-- `agent-platform/cloud-agents/integrations/index.mdx`: `title: 'Integrations overview'` + `sidebar.label: 'Overview'`
+- `platform/integrations/index.mdx`: `title: 'Integrations overview'` + `sidebar.label: 'Overview'`
When using this approach, also update the H1 in the markdown file to match the new `title`.
#### Alternative: rename the sidebar config label
If the short label is not intentional, rename the `label` in `src/sidebar.ts` to be unique and descriptive. Use sentence case and correct terminology per `AGENTS.md` (e.g., capitalize proper feature names like "Agent Mode", "Warp Drive", "Codebase Context" — but not generic terms like "overview", "quickstart", or "agents"). Example:
-- Before: `{ slug: 'agent-platform/local-agents', label: 'Overview' }` + `{ slug: 'agent-platform/cloud-agents', label: 'Overview' }`
-- After: `{ slug: 'agent-platform/local-agents', label: 'Local agents overview' }` + `{ slug: 'agent-platform/cloud-agents', label: 'Cloud agents overview' }`
+- Before: `{ slug: 'agent-platform/local-agents', label: 'Overview' }` + `{ slug: 'platform', label: 'Overview' }`
+- After: `{ slug: 'agent-platform/local-agents', label: 'Local agents overview' }` + `{ slug: 'platform', label: 'Cloud agents overview' }`
When changing a sidebar config label, also update the H1 in the markdown file for consistency.
diff --git a/.agents/skills/docs-seo-audit/scripts/seo_audit.py b/.agents/skills/docs-seo-audit/scripts/seo_audit.py
index e1da7f44e..25dd8366d 100644
--- a/.agents/skills/docs-seo-audit/scripts/seo_audit.py
+++ b/.agents/skills/docs-seo-audit/scripts/seo_audit.py
@@ -36,7 +36,7 @@
# Astro Starlight content directory
# ---------------------------------------------------------------------------
# All content lives under src/content/docs/. URL paths map directly to this
-# directory (e.g. /agent-platform/cloud-agents → src/content/docs/agent-platform/cloud-agents).
+# directory (e.g. /platform → src/content/docs/platform).
CONTENT_DIR = "src/content/docs"
# ---------------------------------------------------------------------------
diff --git a/.agents/skills/draft_conceptual/SKILL.md b/.agents/skills/draft_conceptual/SKILL.md
index 0f24b54f8..3c51cfecd 100644
--- a/.agents/skills/draft_conceptual/SKILL.md
+++ b/.agents/skills/draft_conceptual/SKILL.md
@@ -34,5 +34,5 @@ All headings (H1–H4) must use **sentence case**: capitalize only the first wor
## Existing examples
Read 2-3 of these strong examples to match the existing pattern:
-- `src/content/docs/agent-platform/cloud-agents/deployment-patterns.md`
-- `src/content/docs/agent-platform/cloud-agents/overview.md`
+- `src/content/docs/platform/deployment-patterns.md`
+- `src/content/docs/platform/index.mdx`
diff --git a/.agents/skills/draft_feature_doc/SKILL.md b/.agents/skills/draft_feature_doc/SKILL.md
index 0ef4f9596..87b94d73e 100644
--- a/.agents/skills/draft_feature_doc/SKILL.md
+++ b/.agents/skills/draft_feature_doc/SKILL.md
@@ -35,4 +35,4 @@ All headings (H1–H4) must use **sentence case**: capitalize only the first wor
Read 2-3 of these strong examples to match the existing pattern:
- `src/content/docs/agent-platform/capabilities/skills.md`
-- `src/content/docs/agent-platform/cloud-agents/environments.md`
+- `src/content/docs/platform/environments.md`
diff --git a/.agents/skills/draft_procedural/SKILL.md b/.agents/skills/draft_procedural/SKILL.md
index 3945e36b7..022f3a3c7 100644
--- a/.agents/skills/draft_procedural/SKILL.md
+++ b/.agents/skills/draft_procedural/SKILL.md
@@ -53,4 +53,4 @@ All headings (H1–H4) must use **sentence case**: capitalize only the first wor
Read 2-3 of these strong examples to match the existing pattern:
- `src/content/docs/reference/cli/api-keys.md`
-- `src/content/docs/agent-platform/cloud-agents/integrations/slack.md`
+- `src/content/docs/platform/integrations/slack.md`
diff --git a/.agents/skills/draft_quickstart/SKILL.md b/.agents/skills/draft_quickstart/SKILL.md
index 9a441b5da..531477926 100644
--- a/.agents/skills/draft_quickstart/SKILL.md
+++ b/.agents/skills/draft_quickstart/SKILL.md
@@ -36,5 +36,5 @@ All headings (H1–H4) must use **sentence case**: capitalize only the first wor
## Existing examples
Read 2-3 of these strong examples to match the existing pattern:
-- `src/content/docs/agent-platform/cloud-agents/quickstart.md`
+- `src/content/docs/platform/quickstart.md`
- `src/content/docs/getting-started/quickstart/installation-and-setup.md`
diff --git a/.agents/skills/missing_docs/references/feature_surface_map.md b/.agents/skills/missing_docs/references/feature_surface_map.md
index 8d149d767..20c2a05a1 100644
--- a/.agents/skills/missing_docs/references/feature_surface_map.md
+++ b/.agents/skills/missing_docs/references/feature_surface_map.md
@@ -13,8 +13,8 @@ Lines starting with `#` are comments. Blank lines are ignored.
## Feature flags -> doc pages
AgentMode -> src/content/docs/agent-platform/local-agents/overview.mdx
-AgentManagementView -> src/content/docs/agent-platform/cloud-agents/managing-cloud-agents.md
-AgentManagementDetailsView -> src/content/docs/agent-platform/cloud-agents/managing-cloud-agents.md
+AgentManagementView -> src/content/docs/platform/managing-cloud-agents.md
+AgentManagementDetailsView -> src/content/docs/platform/managing-cloud-agents.md
AgentModeComputerUse -> src/content/docs/agent-platform/capabilities/computer-use.mdx
AgentModeWorkflows -> src/content/docs/knowledge-and-collaboration/warp-drive/workflows.md
AgentOnboarding -> src/content/docs/agent-platform/getting-started/agents-in-warp.md
@@ -36,11 +36,11 @@ CodebaseContext -> src/content/docs/agent-platform/capabilities/codebase-context
CrossRepoContext -> src/content/docs/agent-platform/capabilities/codebase-context.mdx
FullSourceCodeEmbedding -> src/content/docs/agent-platform/capabilities/codebase-context.mdx
SearchCodebaseUI -> src/content/docs/agent-platform/capabilities/codebase-context.mdx
-CloudEnvironments -> src/content/docs/agent-platform/cloud-agents/environments.md
-CloudMode -> src/content/docs/agent-platform/cloud-agents/overview.md
-AmbientAgentsCommandLine -> src/content/docs/agent-platform/cloud-agents/overview.md
-ScheduledAmbientAgents -> src/content/docs/agent-platform/cloud-agents/triggers/scheduled-agents.md
-WarpManagedSecrets -> src/content/docs/agent-platform/cloud-agents/secrets.md
+CloudEnvironments -> src/content/docs/platform/environments.md
+CloudMode -> src/content/docs/platform/index.mdx
+AmbientAgentsCommandLine -> src/content/docs/platform/index.mdx
+ScheduledAmbientAgents -> src/content/docs/platform/triggers/scheduled-agents.md
+WarpManagedSecrets -> src/content/docs/platform/secrets.md
IntegrationCommand -> src/content/docs/reference/cli/integration-setup.md
ConversationManagement -> src/content/docs/agent-platform/local-agents/cloud-conversations.mdx
ForkConversationFromBlock -> src/content/docs/agent-platform/local-agents/interacting-with-agents/conversation-forking.mdx
@@ -112,7 +112,7 @@ GitOperationsInCodeReview -> src/content/docs/code/code-review.md
AgentView -> src/content/docs/agent-platform/local-agents/interacting-with-agents/terminal-and-agent-modes.mdx
AgentViewBlockContext -> src/content/docs/agent-platform/local-agents/agent-context/blocks-as-context.mdx
CloudConversations -> src/content/docs/agent-platform/local-agents/cloud-conversations.mdx
-CloudModeFromLocalSession -> src/content/docs/agent-platform/cloud-agents/overview.md
+CloudModeFromLocalSession -> src/content/docs/platform/index.mdx
TeamApiKeys -> src/content/docs/reference/cli/api-keys.md
PRCommentsSlashCommand -> src/content/docs/agent-platform/capabilities/slash-commands.mdx
PRCommentsV2 -> src/content/docs/agent-platform/local-agents/interacting-with-agents/index.mdx
diff --git a/.agents/skills/sync-error-docs/references/error-page-template.md b/.agents/skills/sync-error-docs/references/error-page-template.md
index 6d9067b01..532738830 100644
--- a/.agents/skills/sync-error-docs/references/error-page-template.md
+++ b/.agents/skills/sync-error-docs/references/error-page-template.md
@@ -61,7 +61,6 @@ This error is returned when:
## Related
* [Agent API & SDK](https://docs.warp.dev/reference/api-and-sdk/agent) — API reference
-* [Cloud Agents Overview](https://docs.warp.dev/agent-platform/cloud-agents/overview) — How cloud agents work
```
## Placeholder reference
diff --git a/AGENTS.md b/AGENTS.md
index ebd2eee4b..c6656f517 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -400,7 +400,7 @@ These rules apply regardless of content type:
- Do NOT include step-by-step procedures — link to a procedural or quickstart page instead
- Show real-world scenarios, not just abstract descriptions
-**Existing examples**: `agent-platform/cloud-agents/deployment-patterns.mdx`, `agent-platform/cloud-agents/overview.mdx`
+**Existing examples**: `platform/deployment-patterns.mdx`, `platform/index.mdx`
**Template**: `.warp/templates/conceptual.md`
@@ -428,7 +428,7 @@ These rules apply regardless of content type:
- Test all instructions for accuracy.
- Provide troubleshooting for common failure points.
-**Existing examples**: `reference/cli/api-keys.mdx`, `agent-platform/cloud-agents/integrations/slack.mdx`
+**Existing examples**: `reference/cli/api-keys.mdx`, `platform/integrations/slack.mdx`
**Template**: `.warp/templates/procedural.md`
@@ -453,7 +453,7 @@ These rules apply regardless of content type:
- Keep steps focused on the critical path — defer edge cases and advanced options to other pages.
- All procedural rules apply (focused steps, motivate steps, expected outcomes).
-**Existing examples**: `agent-platform/cloud-agents/quickstart.mdx`, `getting-started/quickstart/installation-and-setup.mdx`
+**Existing examples**: `platform/quickstart.mdx`, `getting-started/quickstart/installation-and-setup.mdx`
**Template**: `.warp/templates/quickstart.md`
@@ -569,7 +569,7 @@ This is the most common page type in Warp's docs (~75+ pages). A feature documen
- Apply the **procedural** rules to the step-by-step sections (one action per step, motivate steps, expected outcomes).
- Keep the conceptual and procedural sections clearly separated with distinct headers.
-**Existing examples**: `agent-platform/capabilities/skills.mdx`, `agent-platform/cloud-agents/environments.mdx`
+**Existing examples**: `agent-platform/capabilities/skills.mdx`, `platform/environments.mdx`
**Template**: `.warp/templates/feature-doc.md`
diff --git a/astro.config.mjs b/astro.config.mjs
index 63c2d0f02..fb9ad8fd4 100644
--- a/astro.config.mjs
+++ b/astro.config.mjs
@@ -70,7 +70,7 @@ export default defineConfig({
wrap: true,
},
// Map languages Shiki doesn't bundle to a safe fallback. PromQL
- // blocks live in agent-platform/cloud-agents/self-hosting/monitoring.mdx;
+ // blocks live in platform/self-hosting/monitoring.mdx;
// without this alias every build emits noisy "language could not be
// found" warnings while still falling back to plaintext.
shiki: {
@@ -165,7 +165,8 @@ export default defineConfig({
'Documentation for Warp, the agentic development environment, and Oz, Warp\'s programmable agent for running and coordinating agents at scale.',
customSets: [
{ label: 'Terminal', description: 'Warp Terminal features and configuration.', paths: ['terminal/**'] },
- { label: 'Agent Platform', description: 'Warp\'s Agent Platform: capabilities, local agents, CLI agents, cloud agents.', paths: ['agent-platform/**'] },
+ { label: 'Agent Platform', description: 'Warp\'s Agent Platform: capabilities, local agents, and CLI agents.', paths: ['agent-platform/**'] },
+ { label: 'Oz Platform', description: 'Warp\'s Oz platform: cloud agents, orchestration, triggers, integrations, environments, harnesses, and self-hosting.', paths: ['platform/**'] },
{ label: 'Code', description: 'Code editor, code review, and Git worktrees.', paths: ['code/**'] },
{ label: 'Enterprise', description: 'Enterprise features, SSO, team management, and security.', paths: ['enterprise/**'] },
{ label: 'Getting Started', description: 'Installation, quickstart, and migration guides.', paths: ['index', 'quickstart', 'getting-started/**'] },
diff --git a/scripts/seo-audit.mjs b/scripts/seo-audit.mjs
index 8facf6347..07d18b357 100644
--- a/scripts/seo-audit.mjs
+++ b/scripts/seo-audit.mjs
@@ -11,13 +11,13 @@
* node scripts/seo-audit.mjs --dist ./dist
*
* # Audit live URLs (handy for spot-checking the legacy GitBook output)
- * node scripts/seo-audit.mjs --base https://docs.warp.dev /agent-platform/cloud-agents/oz-web-app /changelog
+ * node scripts/seo-audit.mjs --base https://docs.warp.dev /platform/oz-web-app /changelog
*
* # Diff between two sources, e.g. legacy vs. our preview deploy
* node scripts/seo-audit.mjs \\
* --base https://docs.warp.dev \\
* --compare https://docs-preview.warp.dev \\
- * /agent-platform/cloud-agents/oz-web-app
+ * /platform/oz-web-app
*
* The script is intentionally dependency-free (uses regex over the raw HTML
* head) so it runs in CI without installing extra packages.
@@ -29,7 +29,7 @@ const DEFAULT_PATHS = [
'/',
'/quickstart/',
'/agent-platform/',
- '/agent-platform/cloud-agents/oz-web-app/',
+ '/platform/oz-web-app/',
'/agent-platform/capabilities/skills/',
'/reference/cli/',
'/reference/api-and-sdk/',
diff --git a/src/components/WarpTopicNav.astro b/src/components/WarpTopicNav.astro
index 4d91dbb20..d36cf094c 100644
--- a/src/components/WarpTopicNav.astro
+++ b/src/components/WarpTopicNav.astro
@@ -40,6 +40,7 @@ const CUSTOM_TOPIC_ICONS: Record = {
Agents: true,
API: true,
Enterprise: true,
+ Oz: true,
};
---
@@ -95,6 +96,19 @@ const CUSTOM_TOPIC_ICONS: Record = {
+ ) : topic.label === 'Oz' ? (
+ /* Cloud icon — Feather-style cloud outline, stroke weight
+ matched to the other topic icons. */
+
) : (
/* Robot icon — stroke-based outline matching the visual
weight of Starlight's other topic icons (laptop, book,
@@ -135,12 +149,13 @@ const CUSTOM_TOPIC_ICONS: Record = {