Workflow types
Warp supports two kinds of workflows:Command workflows
A shell command with optional parameterized arguments. When you run a command workflow, Warp inserts the command text into the input area — with any arguments pre-filled or prompted.
Agent Mode workflows
A natural-language query that is sent to Warp’s AI agent rather than run directly as a shell command. Useful for repeatable AI tasks like “summarize the git log since last release.”
Creating a workflow
Open the workflow creator
You can create a workflow in several ways:
- Click Save as Workflow in any block’s toolbar to pre-populate the creator with that block’s command.
- Open the command palette (
Cmd+P/Ctrl+P) and search for Create workflow. - Open the workflow library (via the left sidebar or Cmd+Shift+R) and click New workflow.
Fill in the details
Give your workflow a name — this is how you’ll find it later. Optionally add:
- Description — a plain-English explanation of what the workflow does.
- Tags — to organize workflows by category (e.g.,
git,docker,deployment). - Shell restrictions — limit the workflow to specific shells (bash, zsh, fish, PowerShell) if it uses shell-specific syntax.
Add arguments (optional)
Replace variable parts of the command with argument placeholders using the
{{argument_name}} syntax. For each argument, you can set:- A name and description shown in the fill-in UI.
- An argument type: free text, a file path, or an enum (a predefined list of values from Warp Drive).
- A default value that is pre-filled when the workflow runs.
Parameterized workflows
Parameterized workflows let you define a command template where certain values are filled in at runtime. For example:branch_name before inserting the command. You can also define enum-type arguments to show a dropdown of allowed values instead of a free-text input.
Running a workflow
You can run any saved workflow from several entry points:- Command palette — open with
Cmd+P/Ctrl+P, type the workflow name or a keyword, and pressEnter. - Workflow library — open with
Cmd+Shift+R/Ctrl+Shift+R. Browse by category, search, or filter by source. - Slash menu — type
/in the input area to open a quick-access menu of recent workflows. - Up-arrow history — if a workflow was previously run, it appears in up-arrow history alongside regular commands.
- Agent Mode — Warp AI can suggest and insert relevant workflows as part of an agent session.
Workflow sources
Workflows can come from several sources:| Source | Description |
|---|---|
local | Stored in a local YAML file on your machine |
project | Stored in a .warp/workflows/ directory in a git repo, shared via version control |
personal_cloud | Synced to your Warp account, available on all your devices |
team | Shared with a Warp team (requires a team plan) |
global | Curated community workflows shipped with Warp |
warp_ai | Ephemeral workflows generated by Warp AI — not persisted unless you save them |
notebook | Workflows embedded inside a Warp notebook document |
Workflow file format
Local and project workflows are stored as YAML files. A command workflow looks like this:Sharing workflows
To share a workflow with your team:- Open the workflow in the workflow library.
- Click Share and choose a team destination, or copy the workflow as YAML to paste into a pull request.
- Team members with access to the same Warp team will see the shared workflow appear automatically in their workflow library.
Workflows shared at the
project source level live alongside your code in version control. Add a .warp/workflows/ directory to your repository and commit YAML workflow files there — any Warp user who opens that repository will automatically see those workflows.Workflow aliases
Warp also supports shell aliases as a lightweight alternative to workflows. Aliases defined in your shell’s rc file (.bashrc, .zshrc, etc.) are resolved by the completion engine and appear in history. However, aliases cannot be parameterized, shared via Warp Drive, or run from the command palette — for those use cases, use a proper workflow.
The workflow library
The workflow library is the central browsing UI for all your workflows. It is organized into categories (fromcategories.rs in the workflows module) that group workflows by topic or source. Use the search box at the top to filter by name, description, or tag.