From 562e7f38d01882912718d7c00a6603f426d92fa9 Mon Sep 17 00:00:00 2001 From: Rachael Rose Renk <91027132+rachaelrenk@users.noreply.github.com> Date: Thu, 6 Aug 2026 11:57:09 -0600 Subject: [PATCH 1/8] docs: consolidate the Warp Agent CLI docs into the Agents section The Warp Agent CLI had its own top-level docs tab at /cli, which framed it as a separate product area rather than another entry point to the Warp Agent. Nothing outside src/content/docs/cli/ linked into it, so the section was effectively orphaned from the rest of the docs. Move the nine CLI pages to src/content/docs/agents/cli/ and surface them as a "Warp Agent CLI" group inside the Agents tab, between "Warp Agents" and "Third-Party CLI Agents". - Move content and assets with git mv so history follows; rewrite 68 absolute self-links and both relative image paths. - Remove the standalone Agent CLI sidebar topic and add the new group, preserving the original ordering and labels. - Add nine 308 redirects so every /cli/* URL still resolves. - Repoint the llms.txt custom set at agents/cli/**. - Reference the CLI as an entry point from agents/index, agents-in-warp, local-agents/overview, and cli-agents/overview, which previously had no path to it. The path /agents/cli/ is deliberately generic: the Oz CLI is retired and wrapped into the Warp Agent CLI at the next launch (~2026-08-18), so the Oz CLI reference is expected to fold in here later. Recorded that decision in the terminology glossary and the vars.ts comment that previously flagged the WARP_AGENT_CLI / WARP_CLI collision as unresolved. Neither var changes in this commit. Also cropped the two CLI screenshots to their subject (the tab-bar capture included a cut-off prompt below the bar) and included a cut-off prompt below the bar) and included a cut-off proBy: Warp Agent --- .agents/references/terminology.md | 4 +- astro.config.mjs | 2 +- src/assets/agents/cli/tui-agents-tab-bar.png | Bin 0 -> 12771 bytes src/assets/agents/cli/tui-statusline.png | Bin 0 -> 36096 bytes src/assets/cli/tui-agents-tab-bar.png | Bin 58667 -> 0 bytes src/assets/cli/tui-statusline.png | Bin 59390 -> 0 bytes .../docs/agents/cli-agents/overview.mdx | 2 + .../{ => agents}/cli/agent-conversations.mdx | 16 ++--- .../cli/cloud-and-orchestration.mdx | 10 +-- .../docs/{ => agents}/cli/configuration.mdx | 6 +- src/content/docs/{ => agents}/cli/index.mdx | 36 +++++------ .../cli/input-and-shell-commands.mdx | 16 ++--- .../{ => agents}/cli/models-and-usage.mdx | 10 +-- .../cli/permissions-and-profiles.mdx | 10 +-- .../docs/{ => agents}/cli/quickstart.mdx | 16 ++--- .../docs/{ => agents}/cli/reference.mdx | 22 +++---- .../agents/getting-started/agents-in-warp.mdx | 11 ++++ src/content/docs/agents/index.mdx | 3 + .../docs/agents/local-agents/overview.mdx | 1 + src/data/vars.ts | 12 +++- src/sidebar.ts | 57 ++++++++---------- vercel.json | 45 ++++++++++++++ 22 files changed, 172 insertions(+), 107 deletions(-) create mode 100644 src/assets/agents/cli/tui-agents-tab-bar.png create mode 100644 src/assets/agents/cli/tui-statusline.png delete mode 100644 src/assets/cli/tui-agents-tab-bar.png delete mode 100644 src/assets/cli/tui-statusline.png rename src/content/docs/{ => agents}/cli/agent-conversations.mdx (91%) rename src/content/docs/{ => agents}/cli/cloud-and-orchestration.mdx (94%) rename src/content/docs/{ => agents}/cli/configuration.mdx (98%) rename src/content/docs/{ => agents}/cli/index.mdx (60%) rename src/content/docs/{ => agents}/cli/input-and-shell-commands.mdx (92%) rename src/content/docs/{ => agents}/cli/models-and-usage.mdx (82%) rename src/content/docs/{ => agents}/cli/permissions-and-profiles.mdx (91%) rename src/content/docs/{ => agents}/cli/quickstart.mdx (82%) rename src/content/docs/{ => agents}/cli/reference.mdx (92%) diff --git a/.agents/references/terminology.md b/.agents/references/terminology.md index 6aad15a8..98e7489e 100644 --- a/.agents/references/terminology.md +++ b/.agents/references/terminology.md @@ -135,6 +135,8 @@ For the summary of the most critical terms (core features, Oz terms, terms to av ### Warp Agent vs Oz - **Warp Agent** — Warp's built-in agent harness. Use "Warp Agent" when specifically referring to the built-in harness, especially when contrasting with third-party agents (Claude Code, Codex, etc.), or when referencing the Settings label (**Settings** > **Agents** > **Warp Agent**). +- **Warp Agent CLI** — The standalone terminal program (the `warp` binary) that runs the Warp Agent in any terminal, including over SSH and on machines without the Warp app. Documented at `/agents/cli/`. + *Usage note:* Distinct from the Oz CLI (the `oz` binary), which runs and manages cloud agents. At the next launch (approximately August 18, 2026) the Oz CLI is retired and wrapped into the Warp Agent CLI, leaving a single CLI under this name. Until that ships, keep the two clearly separate in prose; afterwards, "Warp Agent CLI" covers both. - **Oz** — Warp's programmable platform for running and coordinating agents at scale - There is typically one Warp environment per user session. Oz can run many agents concurrently, across machines, repos, and teams. @@ -209,7 +211,7 @@ For the summary of the most critical terms (core features, Oz terms, terms to av - **Trigger** — The event that starts a run (Slack mention, schedule, CI event, API call). -- **Warp CLI** — The command-line tool for running and managing Warp Platform workflows. Formerly called `warp-cli`, now `oz`. +- **Warp CLI** — Ambiguous since the Warp Agent CLI launched; avoid the bare term. Use "Oz CLI" for the `oz` binary that runs and manages cloud agents (formerly called `warp-cli`), or "Warp Agent CLI" for the `warp` binary that runs the Warp Agent in any terminal. ## Technical terms diff --git a/astro.config.mjs b/astro.config.mjs index b5820c93..12462c7b 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -167,7 +167,7 @@ export default defineConfig({ customSets: [ { label: 'Terminal', description: 'Warp Terminal features and configuration.', paths: ['terminal/**'] }, { label: 'Agents', description: 'Warp\'s agents: capabilities, local agents, and CLI agents.', paths: ['agents/**'] }, - { label: 'Warp Agent CLI', description: 'The Warp Agent CLI: agent conversations, shell commands, permissions, and configuration in any terminal.', paths: ['cli/**'] }, + { label: 'Warp Agent CLI', description: 'The Warp Agent CLI: agent conversations, shell commands, permissions, and configuration in any terminal.', paths: ['agents/cli/**'] }, { 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/**'] }, diff --git a/src/assets/agents/cli/tui-agents-tab-bar.png b/src/assets/agents/cli/tui-agents-tab-bar.png new file mode 100644 index 0000000000000000000000000000000000000000..c72a687223ab12412c2624d479b3838dd4ae204b GIT binary patch literal 12771 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 C9q26p literal 0 HcmV?d00001 diff --git a/src/assets/agents/cli/tui-statusline.png b/src/assets/agents/cli/tui-statusline.png new file mode 100644 index 0000000000000000000000000000000000000000..57a057bec95abda89e32d9015492752bfb628cec GIT binary patch literal 36096 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 literal 0 HcmV?d00001 diff --git a/src/assets/cli/tui-agents-tab-bar.png b/src/assets/cli/tui-agents-tab-bar.png deleted file mode 100644 index d3c3660e241a093e5f15d8f6820dee66b2599ae1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58667 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 xg^Jhk3z8h*;;0L`MWX#?z+A-k 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. See [managing conversations in the CLI](/cli/agent-conversations/#managing-conversations) to learn more about conversation history and resume details. +You can also open a conversation directly at startup with `warp --resume `. See [managing conversations in the CLI](/agents/cli/agent-conversations/#managing-conversations) to learn more about conversation history and resume details. ## Multi-agent orchestration @@ -65,7 +65,7 @@ You can also shape the configuration in your prompt. For example, ask for a spec When the agent decides to spawn child agents, the CLI shows an approval card titled **Can I start additional agents for this task?** that summarizes the agents it wants to launch and the run-wide configuration. -By default, no child agents launch until you approve. The **Run orchestrated agents** permission in your profile controls this: **Always allow** skips the approval card, and **Never** blocks child agents entirely. See [Permissions and profiles](/cli/permissions-and-profiles/). +By default, no child agents launch until you approve. The **Run orchestrated agents** permission in your profile controls this: **Always allow** skips the approval card, and **Never** blocks child agents entirely. See [Permissions and profiles](/agents/cli/permissions-and-profiles/). From the approval card: @@ -75,8 +75,8 @@ From the approval card: After launch, a tab bar labeled **Agents:** appears above the session with one tab for the orchestrator and one tab per child agent. Messages between the parent and child agents appear in each agent's transcript. -

-![The Agents: tab bar in the Warp Agent CLI, showing the orchestrator tab and three child agent tabs with status glyphs](../../../assets/cli/tui-agents-tab-bar.png) +
+![The Agents: tab bar in the Warp Agent CLI, showing the orchestrator tab and three child agent tabs with status glyphs](../../../../assets/agents/cli/tui-agents-tab-bar.png)
The Agents: tab bar with one child agent running and two finished.
@@ -116,5 +116,5 @@ In the orchestrator's own session, `Ctrl+C` keeps its usual behavior. * [Handoff from local to cloud](/platform/handoff/local-to-cloud/) - Prerequisites, the Warp app flow, and troubleshooting. * [Multi-agent orchestration](/platform/orchestration/) - The parent/child model, run states, and orchestration patterns. * [Viewing cloud agent runs](/platform/viewing-cloud-agent-runs/) - Open, inspect, and continue cloud runs in the {VARS.WEB_APP}. -* [Agent conversations in the CLI](/cli/agent-conversations/#managing-conversations) - Conversation history, `/conversations`, and `--resume`. +* [Agent conversations in the CLI](/agents/cli/agent-conversations/#managing-conversations) - Conversation history, `/conversations`, and `--resume`. * [Environments](/platform/environments/) - Configure the repos, image, and setup commands cloud agents run with. diff --git a/src/content/docs/cli/configuration.mdx b/src/content/docs/agents/cli/configuration.mdx similarity index 98% rename from src/content/docs/cli/configuration.mdx rename to src/content/docs/agents/cli/configuration.mdx index 41505cec..e279316a 100644 --- a/src/content/docs/cli/configuration.mdx +++ b/src/content/docs/agents/cli/configuration.mdx @@ -67,8 +67,8 @@ In auto mode, detection runs at startup, so if you switch your terminal's colors The statusline is the row below the CLI's input box that shows session information at a glance. By default it shows the auto-approve indicator, the active model, the working directory, the Git branch, and the Git diff status inside a repository, plus the Vim mode indicator when Vim mode is on. You can enable any of these items: -
-![The Warp Agent CLI statusline showing the auto-approve, model, working directory, Git branch status, Git diff status, credit usage, context window usage, and agent to-do list chips](../../../assets/cli/tui-statusline.png) +
+![The Warp Agent CLI statusline showing the auto-approve, model, working directory, Git branch status, Git diff status, credit usage, context window usage, and agent to-do list chips](../../../../assets/agents/cli/tui-statusline.png)
The statusline with credit usage, context window usage, and task list chips enabled.
@@ -159,4 +159,4 @@ Press `Enter` on a server to start, stop, or retry it depending on its state. Fa * [Skills](/agents/capabilities/skills/) - Authoring skills, skill arguments, and skill locations. * [MCP servers](/agents/capabilities/mcp/) - Config format, server examples, and authentication. * [Codebase Context](/agents/capabilities/codebase-context/) - Codebase indexing in the Warp app. -* [{VARS.WARP_CLI} reference](/cli/reference/) - Command-line flags, slash commands, and keyboard shortcuts. +* [{VARS.WARP_CLI} reference](/agents/cli/reference/) - Command-line flags, slash commands, and keyboard shortcuts. diff --git a/src/content/docs/cli/index.mdx b/src/content/docs/agents/cli/index.mdx similarity index 60% rename from src/content/docs/cli/index.mdx rename to src/content/docs/agents/cli/index.mdx index b79aef13..9e0a36d1 100644 --- a/src/content/docs/cli/index.mdx +++ b/src/content/docs/agents/cli/index.mdx @@ -14,23 +14,23 @@ The {VARS.WARP_CLI} is a standalone terminal program that runs [Warp Agent](/pla The CLI is also a native terminal multiplexer. It creates and maintains its own pseudoterminal (PTY), which lets you and the agent execute commands and interact with running processes through the same terminal, including prompts and full-screen terminal apps. Because it's a regular command-line program, it works in any terminal emulator, including over SSH. -To get a working setup in a few minutes, follow the [quickstart](/cli/quickstart/). +To get a working setup in a few minutes, follow the [quickstart](/agents/cli/quickstart/). ## Key features -* **[Agent conversations](/cli/agent-conversations/)** - Follow the agent's work in a scrollable transcript with streamed responses, Markdown formatting, file-edit diffs, tool calls, plans, and task lists. -* **[Shell commands](/cli/input-and-shell-commands/#shell-mode)** - Run shell commands from the same input you use to prompt the agent, including long-running and interactive ones. -* **[Permissions and profiles](/cli/permissions-and-profiles/)** - Approve commands and file edits from inline request cards, or configure execution profiles and auto-approve. -* **[Persistent conversations](/cli/agent-conversations/#managing-conversations)** - Conversations save to your Warp account, so you can exit and resume later or switch between them. -* **[Cloud handoff and orchestration](/cli/cloud-and-orchestration/)** - Hand off a conversation to a cloud agent, continue cloud runs in the CLI, and coordinate multiple agents. -* **[Project context](/cli/configuration/#project-context-and-rules)** - The agent automatically picks up your project's rules (like `AGENTS.md`), skills, and MCP servers. -* **[Model choice](/cli/models-and-usage/)** - Pick a model per conversation, bring your own provider API keys, and track credit usage. -* **[Customization](/cli/configuration/)** - Configure themes, the statusline, and the start screen through a local settings file. +* **[Agent conversations](/agents/cli/agent-conversations/)** - Follow the agent's work in a scrollable transcript with streamed responses, Markdown formatting, file-edit diffs, tool calls, plans, and task lists. +* **[Shell commands](/agents/cli/input-and-shell-commands/#shell-mode)** - Run shell commands from the same input you use to prompt the agent, including long-running and interactive ones. +* **[Permissions and profiles](/agents/cli/permissions-and-profiles/)** - Approve commands and file edits from inline request cards, or configure execution profiles and auto-approve. +* **[Persistent conversations](/agents/cli/agent-conversations/#managing-conversations)** - Conversations save to your Warp account, so you can exit and resume later or switch between them. +* **[Cloud handoff and orchestration](/agents/cli/cloud-and-orchestration/)** - Hand off a conversation to a cloud agent, continue cloud runs in the CLI, and coordinate multiple agents. +* **[Project context](/agents/cli/configuration/#project-context-and-rules)** - The agent automatically picks up your project's rules (like `AGENTS.md`), skills, and MCP servers. +* **[Model choice](/agents/cli/models-and-usage/)** - Pick a model per conversation, bring your own provider API keys, and track credit usage. +* **[Customization](/agents/cli/configuration/)** - Configure themes, the statusline, and the start screen through a local settings file. ## How it relates to the Warp app and Oz * **The Warp app** - The CLI runs the same [Warp Agent](/platform/harnesses/warp-agent/) harness as the Warp app, so your account, plan, model access, rules, and skills work the same in both. The CLI doesn't require the Warp app to be installed. -* **{VARS.WARP_AUTOMATION_PLATFORM}** - {VARS.WARP_AUTOMATION_PLATFORM} is Warp's programmable platform for running and coordinating agents at scale. The CLI connects to the same platform. Conversations sync to your Warp account, and you can hand work off to [cloud agents](/cli/cloud-and-orchestration/) or continue a cloud run from your terminal. +* **{VARS.WARP_AUTOMATION_PLATFORM}** - {VARS.WARP_AUTOMATION_PLATFORM} is Warp's programmable platform for running and coordinating agents at scale. The CLI connects to the same platform. Conversations sync to your Warp account, and you can hand work off to [cloud agents](/agents/cli/cloud-and-orchestration/) or continue a cloud run from your terminal. ## Supported platforms @@ -44,15 +44,15 @@ The CLI runs on: You sign in once, and the CLI stays signed in across sessions. -* **Sign in through your browser** - The first time you run `warp`, the CLI shows a verification link and code and opens the link in your browser. It unlocks automatically once you approve the login. See [logging in](/cli/quickstart/#2-log-in) for the full walkthrough. -* **Sign in with an API key** - In non-interactive environments such as CI, authenticate with a Warp API key through the `WARP_API_KEY` environment variable or the `--api-key` flag. See [command-line flags](/cli/reference/#command-line-flags). +* **Sign in through your browser** - The first time you run `warp`, the CLI shows a verification link and code and opens the link in your browser. It unlocks automatically once you approve the login. See [logging in](/agents/cli/quickstart/#2-log-in) for the full walkthrough. +* **Sign in with an API key** - In non-interactive environments such as CI, authenticate with a Warp API key through the `WARP_API_KEY` environment variable or the `--api-key` flag. See [command-line flags](/agents/cli/reference/#command-line-flags). * **Sign out** - Run `/logout`. The CLI returns to its login screen and opens Warp's web sign-out page, so your browser session is signed out too. ## Automatic updates The CLI updates automatically. While it runs, it periodically checks for a newer version, downloads it in the background, and stages it without interrupting your session. The staged version takes effect the next time you launch `warp`. When an update is ready, the start screen shows an "update installed, restart to apply" notice next to the version. -To turn off background updates, set `general.autoupdate_enabled` to `false` in the [settings file](/cli/configuration/#the-settings-file). To turn them off for a single launch, set the `WARP_TUI_DISABLE_AUTOUPDATE` environment variable to any value. +To turn off background updates, set `general.autoupdate_enabled` to `false` in the [settings file](/agents/cli/configuration/#the-settings-file). To turn them off for a single launch, set the `WARP_TUI_DISABLE_AUTOUPDATE` environment variable to any value. ## Coming from the Warp app @@ -60,8 +60,8 @@ If you already use the Warp app, most of your setup carries over. Rules and skil ## Next steps -* [Quickstart](/cli/quickstart/) - Install the CLI, log in, and run your first prompt. -* [Agent conversations](/cli/agent-conversations/) - Learn how the transcript, diffs, and approvals work. -* [Input and shell commands](/cli/input-and-shell-commands/) - Compose prompts and run shell commands from the same input. -* [Configuration](/cli/configuration/) - Customize the CLI with the settings file. -* [Reference](/cli/reference/) - Flags, slash commands, and keyboard shortcuts. +* [Quickstart](/agents/cli/quickstart/) - Install the CLI, log in, and run your first prompt. +* [Agent conversations](/agents/cli/agent-conversations/) - Learn how the transcript, diffs, and approvals work. +* [Input and shell commands](/agents/cli/input-and-shell-commands/) - Compose prompts and run shell commands from the same input. +* [Configuration](/agents/cli/configuration/) - Customize the CLI with the settings file. +* [Reference](/agents/cli/reference/) - Flags, slash commands, and keyboard shortcuts. diff --git a/src/content/docs/cli/input-and-shell-commands.mdx b/src/content/docs/agents/cli/input-and-shell-commands.mdx similarity index 92% rename from src/content/docs/cli/input-and-shell-commands.mdx rename to src/content/docs/agents/cli/input-and-shell-commands.mdx index fbecc41a..6587fc4b 100644 --- a/src/content/docs/cli/input-and-shell-commands.mdx +++ b/src/content/docs/agents/cli/input-and-shell-commands.mdx @@ -7,7 +7,7 @@ description: >- --- import { VARS } from '@data/vars'; -The {VARS.WARP_CLI} is a full terminal as well as an agent. Every session runs a real shell, so you can run commands in the same place you prompt the agent. The input is a multiline editor that combines readline-style editing with inline menus for slash commands, history, and completions, plus mouse support, image attachments, and voice input. For the complete list of flags, slash commands, and keyboard shortcuts, see the [{VARS.WARP_CLI} reference](/cli/reference/). +The {VARS.WARP_CLI} is a full terminal as well as an agent. Every session runs a real shell, so you can run commands in the same place you prompt the agent. The input is a multiline editor that combines readline-style editing with inline menus for slash commands, history, and completions, plus mouse support, image attachments, and voice input. For the complete list of flags, slash commands, and keyboard shortcuts, see the [{VARS.WARP_CLI} reference](/agents/cli/reference/). ## Editing basics @@ -17,7 +17,7 @@ The input is a multiline editor. * **Edit with readline-style keys** - The editor supports familiar bindings such as `Ctrl+A` and `Ctrl+E` (start and end of line), `Ctrl+W` (delete the previous word), `Ctrl+K` and `Ctrl+U` (delete to the end or start of the line), `Ctrl+Y` (reinsert the last deleted text), and `Ctrl+Z` (undo). * **Use macOS Command shortcuts** - When the Kitty keyboard protocol is enabled in your terminal, the editor supports Command-modified shortcuts such as `⌘+X` to cut and `⌘+Shift+←` or `⌘+Shift+→` to extend the selection. -The full editing and selection table is in the [keyboard shortcuts reference](/cli/reference/#keyboard-shortcuts). +The full editing and selection table is in the [keyboard shortcuts reference](/agents/cli/reference/#keyboard-shortcuts). :::note Core `Ctrl` and `Alt` bindings are cross-platform. Shortcuts that use `Alt` require some macOS terminals' Option-as-Alt (Meta) setting. Command-modified shortcuts require a terminal with the Kitty keyboard protocol enabled. @@ -29,9 +29,9 @@ Type `/` at the start of an empty input to open the slash command menu. Entries When a command takes an argument, the input shows a ghost-text argument hint after the full command name, for example `/theme `. -Your [skills](/cli/configuration/#skills) also appear in the slash command menu, so you can invoke a skill by typing `/` followed by its name. +Your [skills](/agents/cli/configuration/#skills) also appear in the slash command menu, so you can invoke a skill by typing `/` followed by its name. -The [slash commands reference](/cli/reference/#slash-commands) lists every command. +The [slash commands reference](/agents/cli/reference/#slash-commands) lists every command. ## Input history @@ -51,7 +51,7 @@ In [shell mode](#shell-mode), press `Tab` to complete the command you're typing, ## Selection and clipboard -* **Highlight to copy** - Finishing a mouse selection in the input or the [conversation transcript](/cli/agent-conversations/) automatically copies it. +* **Highlight to copy** - Finishing a mouse selection in the input or the [conversation transcript](/agents/cli/agent-conversations/) automatically copies it. * **Keyboard selection** - Extend the selection with `Shift` plus the arrow keys, or select everything with `Ctrl+Shift+A`. Copy with `Ctrl+Shift+C` and cut with `Ctrl+X`. * **Paste** - Press `Ctrl+V` or `Ctrl+Shift+V` (also `Alt+V` on Windows). Your terminal's own paste shortcut works as well. * **Click controls** - Interactive elements such as the **Voice** footer entry and the attachment bar controls respond to clicks. @@ -149,9 +149,9 @@ There are two other ways to exit: * **`Ctrl+D`** - Exits immediately when the input is empty. * **`/exit`** - Exits from the slash command menu. -When you exit, the CLI prints a command you can use to pick the conversation back up later. See [Managing conversations](/cli/agent-conversations/#managing-conversations) for resuming and switching conversations. +When you exit, the CLI prints a command you can use to pick the conversation back up later. See [Managing conversations](/agents/cli/agent-conversations/#managing-conversations) for resuming and switching conversations. ## Related pages -* [{VARS.WARP_CLI} reference](/cli/reference/) - Flags, environment variables, slash commands, and keyboard shortcuts. -* [Agent conversations in the {VARS.WARP_CLI}](/cli/agent-conversations/) - The transcript, tool calls, diffs, and managing conversations. +* [{VARS.WARP_CLI} reference](/agents/cli/reference/) - Flags, environment variables, slash commands, and keyboard shortcuts. +* [Agent conversations in the {VARS.WARP_CLI}](/agents/cli/agent-conversations/) - The transcript, tool calls, diffs, and managing conversations. diff --git a/src/content/docs/cli/models-and-usage.mdx b/src/content/docs/agents/cli/models-and-usage.mdx similarity index 82% rename from src/content/docs/cli/models-and-usage.mdx rename to src/content/docs/agents/cli/models-and-usage.mdx index 6e26ff81..78838eef 100644 --- a/src/content/docs/cli/models-and-usage.mdx +++ b/src/content/docs/agents/cli/models-and-usage.mdx @@ -10,11 +10,11 @@ The {VARS.WARP_CLI} gives you the same model options as the Warp app. You can pi ## Choosing a model -Run `/model` to open the model picker. You can also click the model name in the [statusline](/cli/configuration/#statusline) to open the same picker. +Run `/model` to open the model picker. You can also click the model name in the [statusline](/agents/cli/configuration/#statusline) to open the same picker. Models that your plan or your team's settings don't allow appear disabled in the picker. -Your choice is saved as the base model of your active profile, so it persists across sessions. See [permissions and profiles](/cli/permissions-and-profiles/) for how profiles work in the CLI. For the full list of supported models and to learn more about how Warp's Auto models pick for you, see [Model choice](/agents/inference/model-choice/). +Your choice is saved as the base model of your active profile, so it persists across sessions. See [permissions and profiles](/agents/cli/permissions-and-profiles/) for how profiles work in the CLI. For the full list of supported models and to learn more about how Warp's Auto models pick for you, see [Model choice](/agents/inference/model-choice/). ## Bring your own API key @@ -27,7 +27,7 @@ Run `/api-keys` to open the key management menu. It lists each provider with its * **Connect X Premium or SuperGrok** - Press `Enter` on the subscription row and the CLI opens your browser to sign in to your xAI account. `Ctrl+X` disconnects it. * **Warp credit fallback** - Press `Enter` to toggle whether a request that fails through your key is retried with Warp credits. See [failover and fallback behavior](/agents/inference/bring-your-own-api-key/#failover-and-fallback-behavior). -You can also store or clear keys outside a session with the `--set-provider-api-key` and `--clear-provider-api-key` flags. See the [{VARS.WARP_CLI} reference](/cli/reference/#command-line-flags). X Premium/SuperGrok connections can only be managed through `/api-keys`. +You can also store or clear keys outside a session with the `--set-provider-api-key` and `--clear-provider-api-key` flags. See the [{VARS.WARP_CLI} reference](/agents/cli/reference/#command-line-flags). X Premium/SuperGrok connections can only be managed through `/api-keys`. :::note Warp's built-in Auto models always consume Warp credits, even with BYOK configured. To bill through your own account, select a specific provider model, or use a [custom router](/agents/inference/custom-routers/#using-your-own-api-keys-byok) whose targets your keys cover. See [BYOK usage and billing behavior](/agents/inference/bring-your-own-api-key/#byok-usage-and-billing-behavior) for the full rules. @@ -43,7 +43,7 @@ The CLI loads the same router definitions as the Warp app. These are YAML files The CLI shows usage at two levels: -* **Conversation total** - Once a conversation has reported any usage, the [statusline](/cli/configuration/#statusline) shows its accumulated credits (e.g., `2.5 credits`). Click the entry to switch between credits and the equivalent provider cost in dollars. Your choice persists across sessions. +* **Conversation total** - Once a conversation has reported any usage, the [statusline](/agents/cli/configuration/#statusline) shows its accumulated credits (e.g., `2.5 credits`). Click the entry to switch between credits and the equivalent provider cost in dollars. Your choice persists across sessions. * **Per-response details** - Run `/cost` to toggle a summary row under the latest response showing how long it took and how many credits it spent (e.g., `12s • 1.2 credits`). The summary appears once the response finishes. Credits are Warp's unit of usage for agent requests. For what credits cover and how plans differ, see [Credits](/support-and-community/plans-and-billing/credits/). @@ -54,4 +54,4 @@ Credits are Warp's unit of usage for agent requests. For what credits cover and * [Bring Your Own API Key](/agents/inference/bring-your-own-api-key/) - How BYOK works, key storage, and billing behavior. * [SuperGrok subscription](/agents/inference/grok-subscription/) - Use Grok models through your xAI account. * [Custom routers](/agents/inference/custom-routers/) - Define routing logic that picks a model per task. -* [{VARS.WARP_CLI} reference](/cli/reference/) - Flags and slash commands, including the API key commands. +* [{VARS.WARP_CLI} reference](/agents/cli/reference/) - Flags and slash commands, including the API key commands. diff --git a/src/content/docs/cli/permissions-and-profiles.mdx b/src/content/docs/agents/cli/permissions-and-profiles.mdx similarity index 91% rename from src/content/docs/cli/permissions-and-profiles.mdx rename to src/content/docs/agents/cli/permissions-and-profiles.mdx index 6dd3d6c9..a394b605 100644 --- a/src/content/docs/cli/permissions-and-profiles.mdx +++ b/src/content/docs/agents/cli/permissions-and-profiles.mdx @@ -38,7 +38,7 @@ Auto-approve is scoped to a single conversation, and new conversations start wit With auto-approve on, the agent runs commands and applies file edits without review, including commands that match your own command denylist. Press `Ctrl+C` to stop the agent if it starts doing something you didn't intend. ::: -To keep your denylist in force while auto-approve is on, turn off the bypass in your [settings file](/cli/configuration/#the-settings-file): +To keep your denylist in force while auto-approve is on, turn off the bypass in your [settings file](/agents/cli/configuration/#the-settings-file): ```toml title="settings.toml" [agents.warp_agent.other] @@ -49,7 +49,7 @@ Denylist rules enforced by your team in the [Admin Panel](/enterprise/team-manag ## Execution profiles -The CLI reads its permissions from execution profiles stored in its [settings file](/cli/configuration/). Profiles live under the `agents.execution_profiles` table, and the CLI always runs with the profile under the reserved `default` key: +The CLI reads its permissions from execution profiles stored in its [settings file](/agents/cli/configuration/). Profiles live under the `agents.execution_profiles` table, and the CLI always runs with the profile under the reserved `default` key: ```toml title="settings.toml" [agents.execution_profiles.default] @@ -89,7 +89,7 @@ Most permission fields accept one of three values: * **`command_denylist`** - Regular expressions for commands that require approval regardless of the other permission values. [Auto-approve bypasses this list by default](#auto-approve). * **`directory_allowlist`** - Directories the agent may read without approval. -Profiles also hold model overrides such as `base_model`, covered in [Models and usage in the {VARS.WARP_CLI}](/cli/models-and-usage/). +Profiles also hold model overrides such as `base_model`, covered in [Models and usage in the {VARS.WARP_CLI}](/agents/cli/models-and-usage/). :::note The profile collection is validated as a whole. If any profile contains an invalid value, the CLI keeps the last valid configuration while it's running and falls back to the built-in default profile on the next launch, until the file is fixed. @@ -98,5 +98,5 @@ The profile collection is validated as a whole. If any profile contains an inval ## Related pages * [Profiles & Permissions](/agents/capabilities/agent-profiles-permissions/) - The full permission model, autonomy levels, and allowlist/denylist behavior. -* [Configuring the {VARS.WARP_CLI}](/cli/configuration/) - The settings file, themes, statusline, and start screen. -* [Agent conversations in the {VARS.WARP_CLI}](/cli/agent-conversations/) - How tool calls, diffs, and agent questions render in the transcript. +* [Configuring the {VARS.WARP_CLI}](/agents/cli/configuration/) - The settings file, themes, statusline, and start screen. +* [Agent conversations in the {VARS.WARP_CLI}](/agents/cli/agent-conversations/) - How tool calls, diffs, and agent questions render in the transcript. diff --git a/src/content/docs/cli/quickstart.mdx b/src/content/docs/agents/cli/quickstart.mdx similarity index 82% rename from src/content/docs/cli/quickstart.mdx rename to src/content/docs/agents/cli/quickstart.mdx index 7da904cb..902d65f1 100644 --- a/src/content/docs/cli/quickstart.mdx +++ b/src/content/docs/agents/cli/quickstart.mdx @@ -12,7 +12,7 @@ This guide takes you from installing the {VARS.WARP_CLI} to your first agent con ## Prerequisites * **A Warp account** - The login step opens your browser, where you can sign in or [create an account](https://app.warp.dev/signup). The CLI uses the same account as the Warp app, but doesn't require the app to be installed. -* **A supported platform** - macOS, Linux, or Windows. See [supported platforms](/cli/#supported-platforms). +* **A supported platform** - macOS, Linux, or Windows. See [supported platforms](/agents/cli/#supported-platforms). ## 1. Install the Warp Agent CLI @@ -39,7 +39,7 @@ After installing, verify that the `warp` command is available: warp --version ``` -The command prints the installed version. From here on, the CLI updates automatically. See [automatic updates](/cli/#automatic-updates). +The command prints the installed version. From here on, the CLI updates automatically. See [automatic updates](/agents/cli/#automatic-updates). ## 2. Log in @@ -69,7 +69,7 @@ Type a prompt in plain language, such as `What does this project do?`, and press If the agent wants to run a command or edit a file, it shows a permission request. Choose an option to approve or reject the action. -Learn more about the transcript, diffs, and approvals in [Agent conversations](/cli/agent-conversations/) and [Permissions and profiles](/cli/permissions-and-profiles/). +Learn more about the transcript, diffs, and approvals in [Agent conversations](/agents/cli/agent-conversations/) and [Permissions and profiles](/agents/cli/permissions-and-profiles/). ## 4. Run a shell command @@ -79,7 +79,7 @@ Type `!` at the start of an empty input to switch to shell mode. The footer show To run recognized shell commands without the `!` prefix, run `/natural-language-detection` to turn on natural language detection. The CLI then classifies input as you type: recognized commands switch to shell mode, while natural-language prompts stay in agent mode. The prompt marker and statusline show the active mode before you press `Enter`. -See [Input and shell commands](/cli/input-and-shell-commands/) for long-running commands, interactive programs, and full-screen apps. +See [Input and shell commands](/agents/cli/input-and-shell-commands/) for long-running commands, interactive programs, and full-screen apps. ## 5. Exit and resume @@ -93,10 +93,10 @@ warp --resume CONVERSATION_TOKEN Run the printed command later to pick up where you left off. -To browse and reopen past conversations from inside the CLI, see [Agent conversations](/cli/agent-conversations/#conversation-history). +To browse and reopen past conversations from inside the CLI, see [Agent conversations](/agents/cli/agent-conversations/#conversation-history). ## Next steps -* [Agent conversations](/cli/agent-conversations/) - Work with the transcript, code diffs, plans, and tasks. -* [Customizing the CLI](/cli/configuration/) - Rules, skills, MCP servers, themes, and settings. -* [Reference](/cli/reference/) - All flags, slash commands, and keyboard shortcuts. +* [Agent conversations](/agents/cli/agent-conversations/) - Work with the transcript, code diffs, plans, and tasks. +* [Customizing the CLI](/agents/cli/configuration/) - Rules, skills, MCP servers, themes, and settings. +* [Reference](/agents/cli/reference/) - All flags, slash commands, and keyboard shortcuts. diff --git a/src/content/docs/cli/reference.mdx b/src/content/docs/agents/cli/reference.mdx similarity index 92% rename from src/content/docs/cli/reference.mdx rename to src/content/docs/agents/cli/reference.mdx index 6625ffb5..0a5d6dea 100644 --- a/src/content/docs/cli/reference.mdx +++ b/src/content/docs/agents/cli/reference.mdx @@ -42,7 +42,7 @@ Starts new conversations with auto-approve enabled, so the agent runs actions wi warp --auto-approve ``` -This flag applies only to the session you launch with it and doesn't change your saved settings. You can still toggle auto-approve per conversation with `/auto-approve` or `Ctrl+Shift+I`. See [permissions and profiles](/cli/permissions-and-profiles/) for how approvals work. +This flag applies only to the session you launch with it and doesn't change your saved settings. You can still toggle auto-approve per conversation with `/auto-approve` or `Ctrl+Shift+I`. See [permissions and profiles](/agents/cli/permissions-and-profiles/) for how approvals work. ### `--clear-provider-api-key` @@ -74,7 +74,7 @@ Reopens a previous conversation from your shell as the CLI starts. warp --resume CONVERSATION_TOKEN ``` -`CONVERSATION_TOKEN` is the token the CLI prints when you exit a session ("To continue this conversation, run: `warp --resume ...`"). You can also reopen past conversations from inside a session with `/conversations`. See [agent conversations in the CLI](/cli/agent-conversations/#managing-conversations) for how persistence and resuming work. +`CONVERSATION_TOKEN` is the token the CLI prints when you exit a session ("To continue this conversation, run: `warp --resume ...`"). You can also reopen past conversations from inside a session with `/conversations`. See [agent conversations in the CLI](/agents/cli/agent-conversations/#managing-conversations) for how persistence and resuming work. ### `--set-provider-api-key` @@ -98,7 +98,7 @@ your-secret-manager read anthropic-api-key | warp --set-provider-api-key anthrop Avoid staging keys in plaintext files. If you must use a temporary file, delete it immediately afterward. -Inside a session, manage the same keys with the `/api-keys` menu. See [models and usage](/cli/models-and-usage/#bring-your-own-api-key) for how stored keys affect billing. +Inside a session, manage the same keys with the `/api-keys` menu. See [models and usage](/agents/cli/models-and-usage/#bring-your-own-api-key) for how stored keys affect billing. ### `--version` @@ -144,14 +144,14 @@ Type `/` at the start of the input to open the slash command menu. Commands that | `/view-logs` | | Bundle your logs into a zip archive | | `/voice` | | Start voice input | -Skills also appear in the same menu under their own names, so you can invoke a skill directly as `/skill-name`. [Customizing the CLI](/cli/configuration/) covers how skills are discovered. +Skills also appear in the same menu under their own names, so you can invoke a skill directly as `/skill-name`. [Customizing the CLI](/agents/cli/configuration/) covers how skills are discovered. ## Keyboard shortcuts Press `?` on an empty input to open the contextual shortcuts panel inside the CLI. The tables below list the default bindings. :::note -Bindings are the same on macOS, Linux, and Windows, except that Windows also accepts `Alt+V` for paste. For shortcuts that use `Alt`, some macOS terminals deliver `Option` as `Alt` only when their Option-as-Alt (Meta) setting is enabled. The macOS Command shortcuts described in [input and shell commands](/cli/input-and-shell-commands/#editing-basics) require a terminal with the Kitty keyboard protocol enabled. +Bindings are the same on macOS, Linux, and Windows, except that Windows also accepts `Alt+V` for paste. For shortcuts that use `Alt`, some macOS terminals deliver `Option` as `Alt` only when their Option-as-Alt (Meta) setting is enabled. The macOS Command shortcuts described in [input and shell commands](/agents/cli/input-and-shell-commands/#editing-basics) require a terminal with the Kitty keyboard protocol enabled. ::: ### Session @@ -174,7 +174,7 @@ Bindings are the same on macOS, Linux, and Windows, except that Windows also acc ### Approvals -These bindings apply while the agent is waiting for you to approve an action. [Permissions and profiles](/cli/permissions-and-profiles/) explains the approval flow. +These bindings apply while the agent is waiting for you to approve an action. [Permissions and profiles](/agents/cli/permissions-and-profiles/) explains the approval flow. | Shortcut | Action | | --- | --- | @@ -194,7 +194,7 @@ These bindings apply while an interactive terminal command is running. ### Multi-agent tabs -When an orchestration launches child agents, an **Agents:** tab bar appears above the session. [Cloud and orchestration](/cli/cloud-and-orchestration/) covers the workflow. +When an orchestration launches child agents, an **Agents:** tab bar appears above the session. [Cloud and orchestration](/agents/cli/cloud-and-orchestration/) covers the workflow. | Shortcut | Action | | --- | --- | @@ -227,7 +227,7 @@ The input supports readline-style editing. | `Ctrl+Shift+C` | Copy the selection | | `Ctrl+X` | Cut the selection | -For mouse support, completions, and other input behavior, see [input and shell commands](/cli/input-and-shell-commands/). +For mouse support, completions, and other input behavior, see [input and shell commands](/agents/cli/input-and-shell-commands/). ## Troubleshooting @@ -274,7 +274,7 @@ The sign-in attempt was rejected or timed out. The error message in the CLI name 1. Press `Ctrl+C` to exit, then run `warp` to start normally. 2. Check the token against the resume command printed when you exited the original session. -3. If the conversation exists locally, open it from the [conversation menu](/cli/agent-conversations/#conversation-history) with `/conversations` instead. +3. If the conversation exists locally, open it from the [conversation menu](/agents/cli/agent-conversations/#conversation-history) with `/conversations` instead. ### Updating @@ -286,9 +286,9 @@ To check which version you're running, use `/version` in a session, or run: warp --version ``` -To turn off background updates for a single launch, set the `WARP_TUI_DISABLE_AUTOUPDATE` environment variable to any value. To turn them off persistently, set `general.autoupdate_enabled` to `false` in the [CLI settings file](/cli/configuration/#the-settings-file). +To turn off background updates for a single launch, set the `WARP_TUI_DISABLE_AUTOUPDATE` environment variable to any value. To turn them off persistently, set `general.autoupdate_enabled` to `false` in the [CLI settings file](/agents/cli/configuration/#the-settings-file). -If an install becomes corrupted, re-running the install command from the [quickstart](/cli/quickstart/) replaces it with the latest version. +If an install becomes corrupted, re-running the install command from the [quickstart](/agents/cli/quickstart/) replaces it with the latest version. ### Getting help diff --git a/src/content/docs/agents/getting-started/agents-in-warp.mdx b/src/content/docs/agents/getting-started/agents-in-warp.mdx index b870c572..0cef8d46 100644 --- a/src/content/docs/agents/getting-started/agents-in-warp.mdx +++ b/src/content/docs/agents/getting-started/agents-in-warp.mdx @@ -88,6 +88,16 @@ Agents work best when they understand your codebase and workflows. Warp provides --- +## The Warp Agent CLI + +The Warp Agent isn't limited to the Warp app. The [Warp Agent CLI](/agents/cli/) is a standalone terminal program that starts an agent conversation from the `warp` command, so you can use the same agent over SSH, in a different terminal emulator, or on a machine where the Warp app isn't installed. + +It runs the same agent, so your account, plan, model access, rules, and skills work the same way. Conversations sync to your Warp account, and you can hand work off to cloud agents from the CLI. + +→ [Get started with the Warp Agent CLI](/agents/cli/quickstart/) + +--- + ## Third-party CLI agents In addition to Warp's built-in agent, Warp provides first-class support for third-party CLI coding agents like Claude Code, Codex, and OpenCode. Run any supported agent inside Warp and get rich input, code review, agent notifications, vertical tabs with agent metadata, and more. @@ -115,6 +125,7 @@ Cloud agents are ideal for work that doesn't need your immediate attention—PR * [**Oz web app**](https://oz.warp.dev) - Create runs, manage schedules, browse skills, and configure integrations * [**Warp Agents overview**](/agents/local-agents/overview/) - Detailed guide to working with agents in Warp +* [**Warp Agent CLI**](/agents/cli/) - Run the Warp Agent from any terminal * [**Capabilities**](/agents/capabilities/) - All agent capabilities: planning, task lists, model choice, and more * [**Oz CLI**](/reference/cli/) - Run agents from the command line * [**Oz API & SDK**](/reference/api-and-sdk/) - Programmatic access to agent runs diff --git a/src/content/docs/agents/index.mdx b/src/content/docs/agents/index.mdx index 118f6d0d..cb9610f7 100644 --- a/src/content/docs/agents/index.mdx +++ b/src/content/docs/agents/index.mdx @@ -23,6 +23,7 @@ Oz is fully programmable—launch agents manually or build custom logic around t ## Key capabilities * [**Local Agents**](/agents/local-agents/overview/) - Interactive agents embedded in Warp. Use natural language to write code, debug issues, run commands, and automate development tasks with full terminal access. +* [**Warp Agent CLI**](/agents/cli/) - The same Warp Agent in any terminal. Run the `warp` command to start an agent conversation over SSH, in a different terminal emulator, or on a machine without the Warp app. * [**Third-party CLI agents**](/agents/cli-agents/overview/) - Use Claude Code, Codex, OpenCode, and other CLI coding agents in Warp with rich input, notifications, code review, and remote session control. * [**Cloud Agents**](/platform/) - Autonomous agents that run in the background in response to system events, schedules, or integrations. * [**Integrations**](/platform/integrations/) - Connect external system events to autonomous agent execution. Use [Slack](/platform/integrations/slack/), [Linear](/platform/integrations/linear/), [GitHub Actions](/platform/integrations/github-actions/), and other integrations to trigger agents in the cloud. @@ -33,6 +34,7 @@ Oz is fully programmable—launch agents manually or build custom logic around t ## Getting started * [**Agents in Warp**](/agents/getting-started/agents-in-warp/) - Start using agents interactively in Warp +* [**Warp Agent CLI**](/agents/cli/quickstart/) - Install the CLI and run your first agent conversation in any terminal * [**Oz web app**](https://oz.warp.dev) - Create runs, manage schedules, browse skills, and configure integrations * [**Oz CLI**](/reference/cli/) - Run agents from the command line, in CI, or on remote machines * [**Oz API & SDK**](/reference/api-and-sdk/) - Programmatically create and monitor agent runs @@ -42,6 +44,7 @@ Oz is fully programmable—launch agents manually or build custom logic around t ## Learn more * [Warp Agents overview](/agents/local-agents/overview/) - Interactive agents in Warp +* [Warp Agent CLI](/agents/cli/) - Run the Warp Agent from any terminal * [Third-party CLI agents](/agents/cli-agents/overview/) - Claude Code, Codex, OpenCode, and more * [Cloud Agents overview](/platform/) - Background agents for automation at scale * [Agent Capabilities](/agents/capabilities/) - Skills, planning, MCP, rules, and more diff --git a/src/content/docs/agents/local-agents/overview.mdx b/src/content/docs/agents/local-agents/overview.mdx index 786e16db..b9dc46b5 100644 --- a/src/content/docs/agents/local-agents/overview.mdx +++ b/src/content/docs/agents/local-agents/overview.mdx @@ -32,6 +32,7 @@ This section covers how to interact with Warp's agents and the capabilities avai * [Interactive Code Review](/agents/local-agents/interactive-code-review/) - Review agent-generated diffs, leave inline comments, and have the agent address your feedback. * [Task Lists](/agents/capabilities/task-lists/) - Track complex workflows with automatic task lists that update progress in real time. * [Web Search](/agents/capabilities/web-search/) - Allow agents to search the web for up-to-date information. +* [Warp Agent CLI](/agents/cli/) - Run the same Warp Agent outside the Warp app, in any terminal. * [Third-party CLI agents](/agents/cli-agents/overview/) - Run third-party CLI agents like Claude Code and Codex with Warp's built-in agent toolbelt. * [Active AI Recommendations](/agents/local-agents/active-ai/) - Get proactive fix recommendations based on errors and outputs. * [Voice](/agents/local-agents/interacting-with-agents/voice/) - Talk to Warp's agent using voice commands. diff --git a/src/data/vars.ts b/src/data/vars.ts index 0df1f6e0..4647ca31 100644 --- a/src/data/vars.ts +++ b/src/data/vars.ts @@ -16,9 +16,15 @@ export const VARS = { PLATFORM_RUN: "Oz run", // future name TBD // Warp Agent CLI — the standalone terminal front-end (the `warp` binary). - // Launch name confirmed via the launch blog draft (2026-07-28). NOTE: the - // WARP_AGENT_CLI key above was reserved for renaming the Oz CLI to the - // same name — that overlap now needs a product/marketing decision. + // Launch name confirmed via the launch blog draft (2026-07-28). + // + // NOTE: the WARP_AGENT_CLI key above was reserved for renaming the Oz CLI to + // this same name. That overlap is now resolved by product direction: at the + // next launch (approximately 2026-08-18) the Oz CLI is retired and wrapped + // into the Warp Agent CLI, leaving a single CLI. The two keys are expected to + // collapse into one at that point. Keeping them separate until the + // convergence ships, since merging them now would rewrite prose across both + // CLI doc surfaces. WARP_CLI: "Warp Agent CLI", // Feature names (stable — keys and values expected to remain unchanged) diff --git a/src/sidebar.ts b/src/sidebar.ts index bb28d8ad..8b8f4022 100644 --- a/src/sidebar.ts +++ b/src/sidebar.ts @@ -322,6 +322,32 @@ export const sidebarTopics: StarlightSidebarTopicsUserConfig = [ 'agents/local-agents/generate', ], }, + { + label: 'Warp Agent CLI', + items: [ + { slug: 'agents/cli', label: 'Overview' }, + { slug: 'agents/cli/quickstart', label: 'Quickstart' }, + { + label: 'Using the agent', + collapsed: true, + items: [ + { slug: 'agents/cli/agent-conversations', label: 'Agent conversations' }, + { slug: 'agents/cli/input-and-shell-commands', label: 'Input & shell commands' }, + { slug: 'agents/cli/permissions-and-profiles', label: 'Permissions & profiles' }, + { slug: 'agents/cli/cloud-and-orchestration', label: 'Cloud & orchestration' }, + ], + }, + { + label: 'Context & customization', + collapsed: true, + items: [ + { slug: 'agents/cli/configuration', label: 'Configuration' }, + { slug: 'agents/cli/models-and-usage', label: 'Models & usage' }, + ], + }, + { slug: 'agents/cli/reference', label: 'CLI reference' }, + ], + }, { label: 'Third-Party CLI Agents', items: [ @@ -341,37 +367,6 @@ export const sidebarTopics: StarlightSidebarTopicsUserConfig = [ }, ], }, - { - label: 'Agent CLI', - link: '/cli/', - icon: 'right-caret', - items: [ - { slug: 'cli', label: 'Overview' }, - { slug: 'cli/quickstart', label: 'Quickstart' }, - { - label: 'Using the agent', - items: [ - { slug: 'cli/agent-conversations', label: 'Agent conversations' }, - { slug: 'cli/input-and-shell-commands', label: 'Input & shell commands' }, - { slug: 'cli/permissions-and-profiles', label: 'Permissions & profiles' }, - { slug: 'cli/cloud-and-orchestration', label: 'Cloud & orchestration' }, - ], - }, - { - label: 'Context & customization', - items: [ - { slug: 'cli/configuration', label: 'Configuration' }, - { slug: 'cli/models-and-usage', label: 'Models & usage' }, - ], - }, - { - label: 'Reference', - items: [ - { slug: 'cli/reference', label: 'CLI reference' }, - ], - }, - ], - }, { label: 'Oz', link: '/platform/', diff --git a/vercel.json b/vercel.json index 21517197..7dcfb7a2 100644 --- a/vercel.json +++ b/vercel.json @@ -95,6 +95,51 @@ } ], "redirects": [ + { + "source": "/cli/", + "destination": "/agents/cli/", + "statusCode": 308 + }, + { + "source": "/cli/agent-conversations/", + "destination": "/agents/cli/agent-conversations/", + "statusCode": 308 + }, + { + "source": "/cli/cloud-and-orchestration/", + "destination": "/agents/cli/cloud-and-orchestration/", + "statusCode": 308 + }, + { + "source": "/cli/configuration/", + "destination": "/agents/cli/configuration/", + "statusCode": 308 + }, + { + "source": "/cli/input-and-shell-commands/", + "destination": "/agents/cli/input-and-shell-commands/", + "statusCode": 308 + }, + { + "source": "/cli/models-and-usage/", + "destination": "/agents/cli/models-and-usage/", + "statusCode": 308 + }, + { + "source": "/cli/permissions-and-profiles/", + "destination": "/agents/cli/permissions-and-profiles/", + "statusCode": 308 + }, + { + "source": "/cli/quickstart/", + "destination": "/agents/cli/quickstart/", + "statusCode": 308 + }, + { + "source": "/cli/reference/", + "destination": "/agents/cli/reference/", + "statusCode": 308 + }, { "source": "/agent-platform/", "destination": "/agents/", From 27380fdf6f82f1a66fd70528099f0f109636621f Mon Sep 17 00:00:00 2001 From: Rachael Rose Renk <91027132+rachaelrenk@users.noreply.github.com> Date: Thu, 6 Aug 2026 12:22:07 -0600 Subject: [PATCH 2/8] fix: collapse /cli redirects into a wildcard to stay under Vercel's route limit The Vercel deployment for this PR failed. Vercel caps "Routes created per Deployment" at 2048, and counts every redirect, rewrite, and header in vercel.json as a route. main sits at 2033; the nine per-page /cli redirects pushed this branch to 2042, and the Astro Vercel adapter contributes further routes on top of the config, tipping the deployment over the ceiling. Replace the nine per-page entries with two wildcard entries, bringing the total to 2035 (+2 over main instead of +9). The wildcard also covers deep links and any page added under the old path, which the enumerated list would not have. Co-Authored-By: Warp Agent --- vercel.json | 39 ++------------------------------------- 1 file changed, 2 insertions(+), 37 deletions(-) diff --git a/vercel.json b/vercel.json index 7dcfb7a2..01e0c9fa 100644 --- a/vercel.json +++ b/vercel.json @@ -101,43 +101,8 @@ "statusCode": 308 }, { - "source": "/cli/agent-conversations/", - "destination": "/agents/cli/agent-conversations/", - "statusCode": 308 - }, - { - "source": "/cli/cloud-and-orchestration/", - "destination": "/agents/cli/cloud-and-orchestration/", - "statusCode": 308 - }, - { - "source": "/cli/configuration/", - "destination": "/agents/cli/configuration/", - "statusCode": 308 - }, - { - "source": "/cli/input-and-shell-commands/", - "destination": "/agents/cli/input-and-shell-commands/", - "statusCode": 308 - }, - { - "source": "/cli/models-and-usage/", - "destination": "/agents/cli/models-and-usage/", - "statusCode": 308 - }, - { - "source": "/cli/permissions-and-profiles/", - "destination": "/agents/cli/permissions-and-profiles/", - "statusCode": 308 - }, - { - "source": "/cli/quickstart/", - "destination": "/agents/cli/quickstart/", - "statusCode": 308 - }, - { - "source": "/cli/reference/", - "destination": "/agents/cli/reference/", + "source": "/cli/:path*", + "destination": "/agents/cli/:path*", "statusCode": 308 }, { From 05a0c7ab9454d01325be865acac94c4f14c54bec Mon Sep 17 00:00:00 2001 From: Rachael Rose Renk <91027132+rachaelrenk@users.noreply.github.com> Date: Thu, 6 Aug 2026 12:41:32 -0600 Subject: [PATCH 3/8] fix: match trailing-slash URLs in the /cli redirect The previous wildcard used ':path*', which did not match the trailing-slash URLs this site serves. Verified against the preview deployment: /cli/ redirected correctly but /cli/quickstart/ and /cli/reference/ both returned 404, so eight of the nine original URLs were broken. Use a regex capture ':path(.*)' instead, which captures the remainder of the path including its trailing slash. Keeps the route count at +2 over main. Co-Authored-By: Warp Agent --- vercel.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vercel.json b/vercel.json index 01e0c9fa..6345acd1 100644 --- a/vercel.json +++ b/vercel.json @@ -101,8 +101,8 @@ "statusCode": 308 }, { - "source": "/cli/:path*", - "destination": "/agents/cli/:path*", + "source": "/cli/:path(.*)", + "destination": "/agents/cli/:path", "statusCode": 308 }, { From cca7ef3e69733dfb0bfd0808374a89f3cdc4b19f Mon Sep 17 00:00:00 2001 From: Rachael Rose Renk <91027132+rachaelrenk@users.noreply.github.com> Date: Thu, 6 Aug 2026 13:29:42 -0600 Subject: [PATCH 4/8] docs: add a full-content-width tier (736px) to the screenshot standard MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The Warp Agent CLI statusline is content-bound: it clips rather than reflows, and showing every chip its alt text promises needs ~111 columns. Re-capturing at a narrower terminal cannot shrink it, so at 563px the text renders at roughly 48% of source and reads small. The existing standard had no width above 563px, leaving no correct option for a screenshot like this. Add 736px as a full-content-width tier. The value is not arbitrary: it is the content column, `max-width: 46rem` on `.main-pane .sl-container` in src/styles/custom.css. Because the container already caps there, 736px renders identically to omitting maxWidth — the point of naming it is that authors can now express "deliberately full width" and the lint can tell that apart apart apart apart apart apart apart apart apart apart apart apart apart apart apart apart apart apart apart apart apart apart apart apart apart acheck messages from the constant so they cannot drift out of sync. - AGENTS.md: document the new tier and when to reach for it, add a "crop before widening" rule so widening stays the last resort, and make legibility explicitly outrank the preference for a smaller tier. - Apply 736px to the statusline figure. Verified: 0 net-new lint issues, 2 resolved. The 218 pre-existing missing-width warnings are still flagged, so the rule is not weakened. Co-Authored-By: Warp Agent --- .agents/skills/style_lint/style_lint.py | 23 +++++++++++++++---- AGENTS.md | 8 ++++--- src/content/docs/agents/cli/configuration.mdx | 2 +- 3 files changed, 25 insertions(+), 8 deletions(-) diff --git a/.agents/skills/style_lint/style_lint.py b/.agents/skills/style_lint/style_lint.py index d6169a29..5ec8b518 100644 --- a/.agents/skills/style_lint/style_lint.py +++ b/.agents/skills/style_lint/style_lint.py @@ -108,7 +108,22 @@ TERMINOLOGY_FILE = Path(".agents/references/terminology.md") -STANDARD_SCREENSHOT_WIDTHS = {"300px", "350px", "375px", "563px"} +# Standard figure widths for screenshots. See AGENTS.md § "Screenshot sizing +# standards". +# +# 736px is full content width: it matches `.main-pane .sl-container`'s +# `max-width: 46rem` in src/styles/custom.css. Because the container already +# caps at that width, 736px renders identically to omitting maxWidth entirely. +# It is listed explicitly so authors can signal "this screenshot is +# deliberately full width" and so this check can tell that apart from a figure +# that is simply missing a width. If the content column in custom.css ever +# changes, update this value to match. +STANDARD_SCREENSHOT_WIDTHS = {"300px", "350px", "375px", "563px", "736px"} + +# Rendered as "300px, 350px, 375px, 563px, or 736px" in check messages, derived +# from the set above so the two can never drift apart. +_SORTED_WIDTHS = sorted(STANDARD_SCREENSHOT_WIDTHS) +STANDARD_WIDTHS_PHRASE = f"{', '.join(_SORTED_WIDTHS[:-1])}, or {_SORTED_WIDTHS[-1]}" SCREENSHOT_PATH_HINTS = ( "/assets/", @@ -556,7 +571,7 @@ def check_screenshot_widths(lines: List[str], filepath: str) -> List[Issue]: if figure_start_line is None: issues.append(Issue( filepath, i, "screenshot-width", - "Likely screenshot image should be wrapped in a
with a standard maxWidth (300px, 350px, 375px, or 563px)", + f"Likely screenshot image should be wrapped in a
with a standard maxWidth ({STANDARD_WIDTHS_PHRASE})", "warning", )) else: @@ -568,13 +583,13 @@ def check_screenshot_widths(lines: List[str], filepath: str) -> List[Issue]: if width is None: issues.append(Issue( filepath, figure_start_line, "screenshot-width", - "Screenshot figure is missing a standard maxWidth (300px, 350px, 375px, or 563px)", + f"Screenshot figure is missing a standard maxWidth ({STANDARD_WIDTHS_PHRASE})", "warning", )) elif width not in STANDARD_SCREENSHOT_WIDTHS: issues.append(Issue( filepath, figure_start_line, "screenshot-width", - f"Screenshot figure uses non-standard maxWidth \"{width}\"; use one of {', '.join(sorted(STANDARD_SCREENSHOT_WIDTHS))}", + f"Screenshot figure uses non-standard maxWidth \"{width}\"; use one of {STANDARD_WIDTHS_PHRASE}", "warning", )) figure_start_line = None diff --git a/AGENTS.md b/AGENTS.md index 68504763..0cd843e1 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -228,15 +228,17 @@ Use screenshots to clarify product surfaces, configuration points, or visual sta Use consistent screenshot widths so docs pages feel visually balanced. Crop unnecessary empty space before resizing, then choose the closest standard size. **Standard widths:** -- **Large screenshots: default content width** — Use normal `
` or Markdown image rendering for full-window, full-pane, or broad product-surface screenshots where the surrounding layout matters. In legacy GitBook screenshots, this was usually `563px`. +- **Full content width: 736px** — Use for wide screenshots whose content cannot be cropped narrower without clipping, such as full-width terminal strips, wide status bars, and wide tables. `736px` equals the content column (`46rem`, set on `.main-pane .sl-container` in `src/styles/custom.css`), so it renders the same as omitting `maxWidth`. Set it explicitly anyway: it records that the width is deliberate rather than forgotten, and the style lint treats a missing width as an error. Reach for this tier only when a narrower size would make text illegible. +- **Large screenshots: 563px** — The default for full-window, full-pane, or broad product-surface screenshots where the surrounding layout matters. This was the usual width in legacy GitBook screenshots. Prefer this over `736px` unless the content genuinely needs the extra room. - **Medium screenshots: ~375px** — Use for narrow UI surfaces such as popovers, command menus, side panes, dropdowns, and focused interaction flows. This is the preferred constrained size for most small Warp UI screenshots. - **Small screenshots: ~300-350px** — Use for tightly cropped controls, chips, buttons, tooltips, and small menus. Use a smaller width only when the UI remains legible and the crop is intentionally compact. **Rules:** - **Avoid arbitrary widths** — Choose the nearest standard size instead of one-off values. If a screenshot needs a different size, the reason should be clear from the UI being shown. - **Keep sequences consistent** — Screenshots in the same section or step sequence should use the same width unless they show meaningfully different UI surfaces. -- **Preserve legibility** — Text in the screenshot must remain readable at the chosen size on the docs page. -- **Prefer the default figure size for large screenshots** — Only constrain width when the screenshot is a narrow UI element that looks oversized at full content width. +- **Preserve legibility** — Text in the screenshot must remain readable at the chosen size on the docs page. This rule outranks the preference for a smaller tier: if text is unreadable at `563px`, move up to `736px` rather than shipping an illegible image. +- **Crop before widening** — Widening is the last resort. First crop out empty space and anything that is not the subject, and re-capture at a narrower terminal or window size if you can. Only step up a tier when the content itself sets the floor, as with a status bar that clips instead of reflowing. +- **Prefer the default figure size for large screenshots** — Only constrain width below `563px` when the screenshot is a narrow UI element that looks oversized at full content width. #### Image caption guidelines Captions orient the reader — they identify what the image shows so the reader knows where to look. They are not a place for instructions, marketing language, or exhaustive descriptions. diff --git a/src/content/docs/agents/cli/configuration.mdx b/src/content/docs/agents/cli/configuration.mdx index e279316a..0fb89802 100644 --- a/src/content/docs/agents/cli/configuration.mdx +++ b/src/content/docs/agents/cli/configuration.mdx @@ -67,7 +67,7 @@ In auto mode, detection runs at startup, so if you switch your terminal's colors The statusline is the row below the CLI's input box that shows session information at a glance. By default it shows the auto-approve indicator, the active model, the working directory, the Git branch, and the Git diff status inside a repository, plus the Vim mode indicator when Vim mode is on. You can enable any of these items: -
+
![The Warp Agent CLI statusline showing the auto-approve, model, working directory, Git branch status, Git diff status, credit usage, context window usage, and agent to-do list chips](../../../../assets/agents/cli/tui-statusline.png)
The statusline with credit usage, context window usage, and task list chips enabled.
From c75278d3ea88e9d6f27efa71dc9e4147230557d9 Mon Sep 17 00:00:00 2001 From: rachaelrenk Date: Thu, 6 Aug 2026 19:39:09 +0000 Subject: [PATCH 5/8] docs: re-crop the Agents tab bar screenshot for legibility The previous capture was the full width of a ~105-column terminal, so roughly 45% of the image was empty background to the right of the tabs. Downscaled into the 563px figure, that left each character cell about 5.4 CSS px wide and the whole bar only 19px tall. Re-captured the same state from the running Warp Agent CLI and cropped tightly to the tab bar: - Dimensions: 1176x40 -> 1126x68 - Aspect ratio: 29.4:1 -> 16.56:1 - Rendered height at 563px: 19px -> 34px - Character cell at 563px: 5.4 CSS px -> 8.6 CSS px (~60% larger) 1126px is exactly 2x the 563px figure width, so the asset renders at a clean 2x with no resampling blur. Padding is symmetric: 37px left and right of the text, 18px above and below the tab-bar strip. The state still matches the caption: one child agent running and two finished. Verified by watching all three tabs transition rather than assuming glyph meanings - every tab shows a filled dot while running and switches to its own icon on completion, and the frame was captured when exactly one dot remained. The figure keeps its 563px maxWidth; the tighter crop makes widening unnecessary. Co-Authored-By: Warp Agent --- src/assets/agents/cli/tui-agents-tab-bar.png | Bin 12771 -> 9397 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/src/assets/agents/cli/tui-agents-tab-bar.png b/src/assets/agents/cli/tui-agents-tab-bar.png index c72a687223ab12412c2624d479b3838dd4ae204b..b9f9ac45fb8a3dafde73f0d693c7e2c215fc1525 100644 GIT binary patch literal 9397 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 Y-2d&wzSZ~3KPvkut0Ge=Wg7ZF0I*+Vz5oCK literal 12771 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 C9q26p From ecf059eb7ec1081f0aaa82ff5f6ffb81fa9818ec Mon Sep 17 00:00:00 2001 From: Rachael Rose Renk <91027132+rachaelrenk@users.noreply.github.com> Date: Fri, 7 Aug 2026 09:09:16 -0600 Subject: [PATCH 6/8] docs: reframe the Agents landing page around three access surfaces Per HYC's review of #486: the page led by defining Oz rather than the Warp Agent, and its single flat "Key capabilities" list mixed surfaces (Local Agents, Warp Agent CLI, third-party CLI agents) with platform concerns (Cloud Agents, Integrations, Oz Platform). A first-time reader picked from six links before learning what the agent is. Restructure to answer, in order: what the agent is, how to reach it, what the platform adds. - Open with the Warp Agent instead of Oz. - Add "Ways to use the Warp Agent" as the page's spine, with the three surfaces as peers: the Warp app, the Warp Agent CLI, and cloud agents. - Give third-party CLI agents their own section. They belong on this tab, but they are not a way to use the Warp Agent, so the distinction is now structural rather than just wording. - Collapse the platform material into one pointer to the Oz tab, and drop the "Learn more" list that duplicated the Oz tab's own index (Integrations, Environments, Skills as Agents, Managing Cloud Agents). Verified none of those pages is orphaned; each has 9-86 other inbound links. Contextual crosslinks into Oz are kept. What is removed is the duplicate table of contents, per AGENTS.md: cross-reference related features prominently, "not as generic link lists added only for SEO." Co-Authored-By: WCo-Authored-By: WCo-Authored-By: WCo-Authc/content/docs/agents/local-agents/overview.mdx src/sidebar.ts src/content/docs/agents/getting-starCo-Authored-By: WCo-Authored-By: WCo-Aut-F - <<'EOF' docs: retitle the Warp Agents group landing and promote the CLI mention Three pages read as broad "here's the agent" pages: /agents/Three pages read as broad "here's the agent" pages: /agents/Three pag in Warp"), and /agents/local-agents/overview ("Warp Agents overview"). The tit/agents/local-agents/overview ( orients/agents/local-agents/overview ("Warp Agents overview"). The tit/agents/lverview", matching every sibling group. The Warp Agent CLI and Third-Party CLI Agents groups already label their landing page this way; this was the only group landing repeating its own group name, so the name,r read "WARP AGENTS > Warp Agents overview". - Page title becomes "Using the- Page title becomes "Using the- Page title becomes "Using the- Capabilities (Rules, Skills, MCP, planning), which are cross-su are cross-su are cross-su are cross-su are cross-su are cross-su are cross-su are cross-su are cross-su are cross-su are cross-su are cross-su are cross-su are cross-su are cross-su are cross-tem list to a short "Outside the Warp app" section. HYC reviewed the branch preview with the bullet already present and still asked for a mention. - Update the one stale "Warp Agents overview" link label. No slug, path, or URL change, so no redirect. Co-Authored-By: Warp Agent --- src/content/docs/agents/index.mdx | 65 +++++++++++++++---------------- 1 file changed, 31 insertions(+), 34 deletions(-) diff --git a/src/content/docs/agents/index.mdx b/src/content/docs/agents/index.mdx index cb9610f7..cb2f03b1 100644 --- a/src/content/docs/agents/index.mdx +++ b/src/content/docs/agents/index.mdx @@ -1,55 +1,52 @@ --- title: Agents overview description: >- - Oz is the orchestration platform for cloud agents, powering both interactive - and autonomous agents for development workflows. + The Warp Agent writes code, debugs issues, and runs commands. Use it in the + Warp app, in any terminal with the CLI, or in the cloud. --- -Warp includes **Oz**, the orchestration platform that powers all of Warp's agents. Oz runs interactive agents locally inside Warp for real-time coding assistance and deploys autonomous agents in the cloud for background automation, event-driven workflows, and parallel execution across repos and teams. +The **Warp Agent** writes and edits code, debugs issues, runs commands, and works through multi-step tasks from natural language prompts. It reads your codebase, follows your rules and skills, and asks for approval before it acts. -Warp's client is open source under [AGPL v3](https://github.com/warpdotdev/warp/blob/master/LICENSE-AGPL), so the editor and terminal that host your agents are fully auditable. See [Contributing to Warp](/support-and-community/community/contributing/) for the source and contribution flow. +You reach the same agent three ways. Which one you pick depends on where you're working, not on what the agent can do. + +--- -With Oz, you can: +## Ways to use the Warp Agent -* Run interactive agent conversations in Warp for real-time coding assistance -* Deploy autonomous agents that run in the cloud from triggers, schedules, or integrations -* Coordinate multiple agents concurrently across machines, repos, and teams -* Track, audit, and share agent activity with full visibility into what ran and what it did +* [**In the Warp app**](/agents/local-agents/overview/) - The full experience, with code review, agent management, and the terminal alongside your conversation. Start here if you use Warp as your terminal. +* [**In any terminal, with the Warp Agent CLI**](/agents/cli/) - Run the `warp` command to start an agent conversation in any terminal emulator, over SSH, or on a machine where the Warp app isn't installed. +* [**In the cloud, as a cloud agent**](/platform/) - Run the agent in the background from a trigger, a schedule, or an integration, without keeping a session open. Ideal for PR reviews, issue triage, and routine maintenance. -Oz is fully programmable—launch agents manually or build custom logic around them with triggers, schedules, environments, and your choice of hosting (Warp's cloud or your own). +Your account, plan, model access, rules, and skills carry across all three, and conversations sync to your Warp account so you can move between them. --- -## Key capabilities +## Third-party CLI agents -* [**Local Agents**](/agents/local-agents/overview/) - Interactive agents embedded in Warp. Use natural language to write code, debug issues, run commands, and automate development tasks with full terminal access. -* [**Warp Agent CLI**](/agents/cli/) - The same Warp Agent in any terminal. Run the `warp` command to start an agent conversation over SSH, in a different terminal emulator, or on a machine without the Warp app. -* [**Third-party CLI agents**](/agents/cli-agents/overview/) - Use Claude Code, Codex, OpenCode, and other CLI coding agents in Warp with rich input, notifications, code review, and remote session control. -* [**Cloud Agents**](/platform/) - Autonomous agents that run in the background in response to system events, schedules, or integrations. -* [**Integrations**](/platform/integrations/) - Connect external system events to autonomous agent execution. Use [Slack](/platform/integrations/slack/), [Linear](/platform/integrations/linear/), [GitHub Actions](/platform/integrations/github-actions/), and other integrations to trigger agents in the cloud. -* [**Oz Platform**](/platform/overview/) - The underlying infrastructure that powers Oz, including the CLI, API/SDK, orchestration layer, environments, secrets, and management/observability. +Separately from the Warp Agent, Warp gives third-party CLI coding agents first-class support. Run Claude Code, Codex, OpenCode, and others inside Warp and get rich input, agent notifications, inline code review, and remote session control. + +→ [Learn about third-party CLI agents](/agents/cli-agents/overview/) + +--- + +## The platform behind the agent + +[**Oz**](/platform/overview/) is Warp's programmable platform for running and coordinating agents at scale. It provides the environments, triggers, integrations, orchestration, and observability that cloud agents run on, along with a CLI, API, and SDK for driving agents programmatically. + +The Oz tab covers the platform in full. --- ## Getting started -* [**Agents in Warp**](/agents/getting-started/agents-in-warp/) - Start using agents interactively in Warp -* [**Warp Agent CLI**](/agents/cli/quickstart/) - Install the CLI and run your first agent conversation in any terminal -* [**Oz web app**](https://oz.warp.dev) - Create runs, manage schedules, browse skills, and configure integrations -* [**Oz CLI**](/reference/cli/) - Run agents from the command line, in CI, or on remote machines -* [**Oz API & SDK**](/reference/api-and-sdk/) - Programmatically create and monitor agent runs +* [**Agents in Warp**](/agents/getting-started/agents-in-warp/) - A tour of what agents can do, autonomy levels, and profiles +* [**Warp Agent CLI quickstart**](/agents/cli/quickstart/) - Install the CLI and run your first agent conversation +* [**Cloud agents quickstart**](/platform/quickstart/) - Run your first agent in the cloud +* [**Agent capabilities**](/agents/capabilities/) - Skills, planning, rules, MCP servers, and more +* [**Agent FAQs**](/agents/getting-started/faqs/) - Common questions about models, privacy, and limits --- -## Learn more - -* [Warp Agents overview](/agents/local-agents/overview/) - Interactive agents in Warp -* [Warp Agent CLI](/agents/cli/) - Run the Warp Agent from any terminal -* [Third-party CLI agents](/agents/cli-agents/overview/) - Claude Code, Codex, OpenCode, and more -* [Cloud Agents overview](/platform/) - Background agents for automation at scale -* [Agent Capabilities](/agents/capabilities/) - Skills, planning, MCP, rules, and more -* [Oz Platform](/platform/overview/) - CLI, API/SDK, orchestration, environments, and hosts -* [Environments](/platform/environments/) - Configure execution context for cloud agents -* [Integrations](/platform/integrations/) - Slack, Linear, GitHub Actions, and custom integrations -* [Skills as Agents](/platform/skills-as-agents/) - Run agents from reusable skill definitions -* [Managing Cloud Agents](/platform/managing-cloud-agents/) - Monitor and manage agent activity +## Open source + +Warp's client is open source under [AGPL v3](https://github.com/warpdotdev/warp/blob/master/LICENSE-AGPL), so the editor and terminal that host your agents are fully auditable. See [Contributing to Warp](/support-and-community/community/contributing/) for the source and contribution flow. From 1a68c757922a561cd7c0c8ef21b70d79a8da47d8 Mon Sep 17 00:00:00 2001 From: Rachael Rose Renk <91027132+rachaelrenk@users.noreply.github.com> Date: Fri, 7 Aug 2026 09:09:16 -0600 Subject: [PATCH 7/8] docs: replace the two-mode section with three access surfaces The main lThe main lThe main lThe main lThe main lThe main lThe main lThe main ls" and defined local agents as running "directly in the Warp app". There was There was There was There was There was There was There was Then wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwHYC, the CLI is called out as a way to use the Warp Agent without the Warp terminal / ADE. Also drop the duplicated multi-model sentence (the page already has a Multi-model support section), widen "same agent, anywhere" to name all three surfacthree surfacthree surfacthree surfacthree surfacthree surfacthree sure is unchanged. Co-Authored-By: Warp Agent --- src/content/docs/index.mdx | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/src/content/docs/index.mdx b/src/content/docs/index.mdx index 72794522..71320e1a 100644 --- a/src/content/docs/index.mdx +++ b/src/content/docs/index.mdx @@ -32,26 +32,30 @@ Warp is where you work — a fast, modern terminal built for coding with agents. --- -## Oz: The orchestration platform for cloud agents +## Three ways to use the Warp Agent -Oz is the orchestration platform for cloud agents that powers all of Warp's intelligent features. Oz is designed to coordinate agents at scale—understanding your codebase, executing tasks autonomously, and adapting to your workflows. Oz is multi-model by design, giving you flexibility to choose the best LLM for each task. +The **Warp Agent** writes and edits code, debugs issues, runs commands, and works through multi-step tasks. You reach the same agent three ways, and your account, rules, skills, and model access carry across all of them. -Oz operates in two modes: +### In the Warp app -### Local agents - -Run directly in the Warp app for real-time, interactive coding assistance. +Real-time, interactive coding assistance alongside your terminal. * Write and refactor code across your codebase * Debug issues and fix errors * Run commands and interpret results * Plan and execute multi-step tasks -Local agents keep you in control. You can review changes, steer the agent mid-task, and approve actions before they execute. +You stay in control. Review changes, steer the agent mid-task, and approve actions before they execute. + +→ [Get started with agents in Warp](/agents/local-agents/overview/) + +### In any terminal, with the Warp Agent CLI + +The Warp Agent CLI is a standalone terminal program that runs the same agent without the Warp app. Run the `warp` command to start a conversation in whichever terminal you already use, over SSH, or on a machine where Warp isn't installed. -→ [Get started with local agents](/agents/local-agents/overview/) +→ [Get started with the Warp Agent CLI](/agents/cli/quickstart/) -### Cloud agents +### In the cloud, as a cloud agent Cloud agents run in the background on Warp's infrastructure (or your own) for automation at scale. @@ -64,13 +68,19 @@ Cloud agents are ideal for work that doesn't need your immediate attention, like → [Learn about cloud agents](/platform/) +### The platform behind them + +**Oz** is Warp's programmable platform for running and coordinating agents at scale. It provides the environments, triggers, integrations, orchestration, and observability that cloud agents run on, plus a CLI, API, and SDK. + +→ [Learn about the Oz platform](/platform/overview/) + --- ## How they work together Warp and Oz provide a unified experience across local and cloud development: -* **Same agent, anywhere**: Whether you're working interactively in Warp or running agents in the cloud, you're using the same underlying agent capabilities. +* **Same agent, anywhere**: Whether you're working in the Warp app, in another terminal through the Warp Agent CLI, or running agents in the cloud, you're using the same underlying agent capabilities. * **Seamless handoff**: Start a task in the cloud and take over locally in Warp when you want hands-on control, without losing progress or context. * **Shared context**: [Warp Drive](/knowledge-and-collaboration/warp-drive/), [Rules](/agents/capabilities/rules/), and [MCP servers](/agents/capabilities/mcp/) work across both local and cloud agents, so your team's knowledge and tools are always available. * **Team collaboration**: Share agent sessions, review agents' actions, and steer running tasks, regardless of who started them. @@ -104,6 +114,7 @@ Warp's AI features can be globally disabled in **Settings** > **Agents** > **War ## Next steps * [**Quickstart**](/quickstart/): Get Warp installed and start coding -* [**Warp Agents overview**](/agents/local-agents/overview/): Explore all AI features available in Warp +* [**Using the Warp Agent**](/agents/local-agents/overview/): Explore all AI features available in Warp +* [**Warp Agent CLI**](/agents/cli/): Run the Warp Agent in any terminal * [**Cloud Agents overview**](/platform/): Set up background automation * [**Oz Platform**](/platform/overview/): Learn about the CLI, API, SDK, and infrastructure From b520746efc73bf8c8fc3b76f8172a7455573bb1b Mon Sep 17 00:00:00 2001 From: Rachael Rose Renk <91027132+rachaelrenk@users.noreply.github.com> Date: Fri, 7 Aug 2026 09:09:54 -0600 Subject: [PATCH 8/8] docs: retitle the Warp Agents group landing and promote the CLI mention Three pages read as broad "here's the agent" pages: /agents/ ("Agents overview"), /agents/getting-started/agents-in-warp ("Agents in Warp"), and /agents/local-agents/overview ("Warp Agents overview"). The titles gave no hint that the first orients, the second teaches, and the third indexes. - Sidebar label becomes "Overview", matching every sibling group. The Warp Agent CLI and Third-Party CLI Agents groups already label their landing page this way; this was the only group landing repeating its own group name, so the sidebar read "WARP AGENTS > Warp Agents overview". - Page title becomes "Using the Warp Agent". Surface-neutral on purpose: this group contains Capabilities (Rules, Skills, MCP, planning), which are cross-surface and linked directly from the CLI docs, so a title like "Agents in the Warp app" would over-claim and collide with the existing "Agents in Warp" page. - Promote the CLI from one bullet in an eleven-item list to a short "Outside the Warp app" section. HYC reviewed the bran "Outside the Warp app" section. HYC reviewed the bran "Outside thention. - Update the one stale "Warp Agents overview" link label. No slug, path, or URL change, so no redirect. Co-Authored-By: Warp Agent --- .../agents/getting-started/agents-in-warp.mdx | 2 +- .../docs/agents/local-agents/overview.mdx | 16 +++++++++++----- src/sidebar.ts | 2 +- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/content/docs/agents/getting-started/agents-in-warp.mdx b/src/content/docs/agents/getting-started/agents-in-warp.mdx index 0cef8d46..8e7d5d44 100644 --- a/src/content/docs/agents/getting-started/agents-in-warp.mdx +++ b/src/content/docs/agents/getting-started/agents-in-warp.mdx @@ -124,7 +124,7 @@ Cloud agents are ideal for work that doesn't need your immediate attention—PR ## Resources * [**Oz web app**](https://oz.warp.dev) - Create runs, manage schedules, browse skills, and configure integrations -* [**Warp Agents overview**](/agents/local-agents/overview/) - Detailed guide to working with agents in Warp +* [**Using the Warp Agent**](/agents/local-agents/overview/) - Detailed guide to working with agents in Warp * [**Warp Agent CLI**](/agents/cli/) - Run the Warp Agent from any terminal * [**Capabilities**](/agents/capabilities/) - All agent capabilities: planning, task lists, model choice, and more * [**Oz CLI**](/reference/cli/) - Run agents from the command line diff --git a/src/content/docs/agents/local-agents/overview.mdx b/src/content/docs/agents/local-agents/overview.mdx index b9dc46b5..09785a58 100644 --- a/src/content/docs/agents/local-agents/overview.mdx +++ b/src/content/docs/agents/local-agents/overview.mdx @@ -1,9 +1,8 @@ --- -title: Warp Agents overview +title: Using the Warp Agent description: >- - Powerful AI features like agents, code review, voice, and active AI - recommendations, fully integrated into the Warp Agentic Development - Environment. + Agents, code review, voice, and active AI recommendations, fully integrated + into the Warp Agentic Development Environment. --- Warp's local agents are interactive agents embedded directly in the terminal that help you write code, debug issues, run commands, and automate development tasks using natural language. Agents operate with full context from your codebase, Warp Drive, and connected tools, while you stay in control of every action. @@ -20,6 +19,14 @@ These features send input data to various LLM providers through their API. Warp Warp's client is open source under [AGPL v3](https://github.com/warpdotdev/warp/blob/master/LICENSE-AGPL) at [`warpdotdev/warp`](https://github.com/warpdotdev/warp). The agent surface you're reading about is built in the open — see [Contributing to Warp](/support-and-community/community/contributing/) to read the code, file issues, or shape the roadmap. +## Outside the Warp app + +The same agent runs outside the Warp app. The [Warp Agent CLI](/agents/cli/) is a standalone terminal program that starts an agent conversation from the `warp` command, so you can use it in any terminal emulator, over SSH, or on a machine where the Warp app isn't installed. Your rules, skills, and model access carry over, and conversations sync to your Warp account. + +The capabilities below apply to the agent wherever it runs. Behavior that is specific to the CLI is covered in the [Warp Agent CLI](/agents/cli/) section. + +→ [Get started with the Warp Agent CLI](/agents/cli/quickstart/) + ## What you can do with agents This section covers how to interact with Warp's agents and the capabilities available during agent conversations: @@ -32,7 +39,6 @@ This section covers how to interact with Warp's agents and the capabilities avai * [Interactive Code Review](/agents/local-agents/interactive-code-review/) - Review agent-generated diffs, leave inline comments, and have the agent address your feedback. * [Task Lists](/agents/capabilities/task-lists/) - Track complex workflows with automatic task lists that update progress in real time. * [Web Search](/agents/capabilities/web-search/) - Allow agents to search the web for up-to-date information. -* [Warp Agent CLI](/agents/cli/) - Run the same Warp Agent outside the Warp app, in any terminal. * [Third-party CLI agents](/agents/cli-agents/overview/) - Run third-party CLI agents like Claude Code and Codex with Warp's built-in agent toolbelt. * [Active AI Recommendations](/agents/local-agents/active-ai/) - Get proactive fix recommendations based on errors and outputs. * [Voice](/agents/local-agents/interacting-with-agents/voice/) - Talk to Warp's agent using voice commands. diff --git a/src/sidebar.ts b/src/sidebar.ts index 8b8f4022..de92280e 100644 --- a/src/sidebar.ts +++ b/src/sidebar.ts @@ -250,7 +250,7 @@ export const sidebarTopics: StarlightSidebarTopicsUserConfig = [ { label: 'Warp Agents', items: [ - { slug: 'agents/local-agents/overview', label: 'Warp Agents overview' }, + { slug: 'agents/local-agents/overview', label: 'Overview' }, { label: 'Capabilities', collapsed: true,