Agent skill

Warp Tab Config Reference

by warpdotdev in warpdotdev/warp

Reference for Warp tab config TOML files: where they live, how the pane list is structured, and what to ask before creating or editing one.

AGPL-3.0Auto-check passedProductivity & Automation

Install Warp Tab Config Reference

skills CLI
$ npx skills add warpdotdev/warp --skill tab-configs -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install warpdotdev/warp tab-configs --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/warpdotdev/warp.git skills-src && mkdir -p .claude/skills && cp -r skills-src/resources/bundled/skills/tab-configs .claude/skills/tab-configs && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
tab-configs
GitHub stars
65k
Used in
1 other repo
Token cost
~2.1k tokens
SKILL.md length
784 words
Files
1
Skills in repo
46
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Reference for Warp tab config TOML files: where they live, how the pane list is structured, and what to ask before creating or editing one.

  • Creating a Warp tab config that opens a multi-pane layout
  • SKILL.md covers Guidance before writing or…, Schema Reference, Examples and Common patterns
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Updating an existing tab config without breaking its structure

What it does

Tab configs are TOML files under the ~/.warp/tab_configs directory, with a channel-specific variant of that directory for non-stable builds, and not under Application Support. Each file defines one tab layout that appears in the plus menu; choosing it opens a new tab with the configured pane layout and runs any commands. The skill is shared context for the create-tab-config and update-tab-config skills and can also guide direct creation or editing.

Before writing, the agent should ask when details are missing, such as whether to create or edit, the pane layout, directories, commands, focus and parameters. It uses descriptive pane IDs like editor or server instead of pane1, snake_case file names, and reads an existing file first to preserve its structure. The schema has a required name, an optional title that accepts template parameters, an optional color from eight named values, and a flat panes array whose first entry is the root; each entry is a split node or a leaf with a unique id and a type of terminal, agent or cloud.

When your agent uses it

  • Creating a Warp tab config that opens a multi-pane layout
  • Updating an existing tab config without breaking its structure
  • Looking up valid fields, colors and pane types for tab configs

Example prompts

  • “Create a Warp tab config with an editor pane on the left and a server pane running npm run dev on the right.”
  • “Update my existing dev tab config to add a third pane for logs.”
  • “List the colors and pane types that a Warp tab config accepts.”

Requirements

  • Warp, with a tab_configs directory for the current channel

What it can do on your machine

Read from SKILL.md and the folder at commit f571865. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are toml).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Warp Tab Config Reference loads about 2.1k tokens when it runs. Until then it costs about 52 tokens; SKILL.md has 784 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~52
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from warpdotdev/warp at commit f571865, republished under its AGPL-3.0 licence (© warpdotdev). 784 words, ~2,123 tokens.

Download SKILL.mdSave it as .claude/skills/tab-configs/SKILL.md (or your agent's skills folder).
name
tab-configs
description
Reference the Warp tab config schema, validation rules, and examples. Use when creating or updating Warp tab config TOML files or when another tab-config skill needs the canonical schema details.

tab-configs

This skill is the canonical reference for Warp tab config TOML files.

Tab configs live under ~/.warp/tab_configs/ for standard Warp builds. Non-stable builds (e.g. Preview or pre-release channels) use a channel-specific variant such as ~/.warp-<channel>/tab_configs/. Do NOT use ~/Library/Application Support/ — that is the wrong location.

To find the active data directory, inspect which ~/.warp* directories exist on the user's machine. Each .toml file defines a single tab layout that appears in the + menu. When the user selects one, Warp opens a new tab with the configured pane layout and runs any specified commands.

Use this skill as shared context:

  • create-tab-config should use it when authoring a new config.
  • update-tab-config should use it when modifying an existing config.
  • If this skill is invoked directly for a creation or editing task, follow the same guidance below.

Guidance before writing or editing

  • If the request is missing important details, use the ask_user_question tool instead of guessing. Clarify things like:
    • whether the user wants a new config or wants to edit an existing one
    • the desired pane layout
    • directories, commands, and which pane should be focused
    • whether parameters are needed
  • Use descriptive pane IDs such as "editor", "server", or "top_left" instead of generic names like "pane1".
  • Use snake_case file names for new configs.
  • When creating or locating tab configs, use the correct tab config directory for the user's current Warp build/channel rather than hardcoding a single base directory.
  • If updating an existing config, read the file first and preserve user structure where possible.

Schema Reference

Top-level fields
  • name (required, string): Display name shown in the + menu.
  • title (optional, string): Custom tab title. Supports {{param}} template variables.
  • color (optional, string): Tab color. One of: "black", "red", "green", "yellow", "blue", "magenta", "cyan", "white".
Pane list

All panes are defined in a flat [[panes]] array of tables. The first entry is the root. Each entry is either a split node (branch) or a leaf node.

Leaf node fields
  • id (required, string): Unique identifier.
  • type (required, string): "terminal" (standard shell), "agent" (opens in Agent Mode), or "cloud" (cloud mode pane, no local shell).
  • directory (optional, string): Initial working directory. Supports ~ expansion. Applies to terminal and agent types.
  • commands (optional, array of strings): Commands to run in sequence on open. Applies to terminal and agent types.
  • is_focused (optional, bool): Set true on at most one pane to give it initial focus.
  • shell (optional, string): Shell executable to open this pane in (e.g. "pwsh", "zsh", "bash", "fish"). Only applies to terminal and agent types. If omitted or the shell is not installed, the user's default shell is used.
Split node fields
  • id (required, string): Unique identifier for this node.
  • split (required, string): "horizontal" (children arranged left-to-right) or "vertical" (children arranged top-to-bottom).
  • children (required, array of strings): Ordered list of child pane IDs. Must have 2+ entries. Order = visual order.
toml
[[panes]]
id = "server"
type = "terminal"
directory = "~/code/backend"
commands = ["cargo watch -x run"]
Show full SKILL.md (314 more words)Show less
Sizing

All children within a split are equally sized. There are no flex or proportion values.

Parameters

Parameters let users fill in values at open time via a modal UI. Declare them with [params.<name>] tables. Reference them in directory, commands, and title with {{name}} syntax.

{{autogenerated_branch_name}} is a special-cased reserved template variable: if a tab config references it, Warp generates a unique worktree branch name on each open instead of prompting the user for that value.

Each parameter has:

  • type (optional, string): "text" (default), "branch" (git branch picker), or "repo" (repo picker).
  • description (optional, string): Shown in the fill-in UI.
  • default (optional, string): Default value.
toml
[params.project_dir]
type = "repo"
description = "Project directory"

[params.branch]
type = "branch"
description = "Branch to check out"
Validation rules

Ensure your output follows these rules:

  • Every ID in a children array must reference an existing [[panes]] entry.
  • No cycles in the pane tree.
  • Leaf panes must NOT have children or split.
  • Leaf panes must have a type field ("terminal", "agent", or "cloud").
  • Split panes (have split) must have children with at least 2 entries.
  • At most one pane may have is_focused = true.
  • All id values must be unique across the file.
  • The first [[panes]] entry is the root of the tree.

Examples

Single pane
toml
name = "Dev Server"

[[panes]]
id = "main"
type = "terminal"
directory = "~/code/my-app"
commands = ["npm run dev"]
Two panes side by side
toml
name = "Editor + Server"
color = "green"

[[panes]]
id = "root"
split = "horizontal"
children = ["editor", "server"]

[[panes]]
id = "editor"
type = "terminal"
directory = "~/code/my-app"
commands = ["nvim ."]
is_focused = true

[[panes]]
id = "server"
type = "terminal"
directory = "~/code/my-app"
commands = ["npm run dev"]
2x2 grid
toml
name = "Full Stack"

[[panes]]
id = "root"
split = "horizontal"
children = ["left_col", "right_col"]

[[panes]]
id = "left_col"
split = "vertical"
children = ["frontend", "backend"]

[[panes]]
id = "frontend"
type = "terminal"
directory = "~/code/frontend"
commands = ["npm run dev"]
is_focused = true

[[panes]]
id = "backend"
type = "terminal"
directory = "~/code/backend"
commands = ["cargo watch -x run"]

[[panes]]
id = "right_col"
split = "vertical"
children = ["tests", "logs"]

[[panes]]
id = "tests"
type = "terminal"
directory = "~/code/backend"
commands = []

[[panes]]
id = "logs"
type = "terminal"
directory = "~/code/backend"
commands = ["tail -f logs/dev.log"]
Three-pane layout (1 left, 2 stacked right)
toml
name = "Main + Side Stack"

[[panes]]
id = "root"
split = "horizontal"
children = ["main", "side_stack"]

[[panes]]
id = "main"
type = "terminal"
directory = "~/code/project"
commands = []
is_focused = true

[[panes]]
id = "side_stack"
split = "vertical"
children = ["top_right", "bottom_right"]

[[panes]]
id = "top_right"
type = "terminal"
directory = "~/code/project"
commands = []

[[panes]]
id = "bottom_right"
type = "terminal"
directory = "~/code/project"
commands = []
With parameters

Warp-generated worktree configs default to ~/.warp/worktrees/<repo-name>/<worktree-name>. When writing a reusable config by hand, derive the repo-name segment at shell runtime with $(basename {{repo}}).

toml
name = "New Worktree"
title = "{{branch_name}}"

[[panes]]
id = "main"
type = "terminal"
directory = "{{repo}}"
commands = [
  "git worktree add -b {{branch_name}} $HOME/.warp/worktrees/$(basename {{repo}})/{{branch_name}} {{base_branch}}",
  "cd $HOME/.warp/worktrees/$(basename {{repo}})/{{branch_name}}",
]

[params.repo]
type = "repo"
description = "Repository path"

[params.base_branch]
type = "branch"
description = "Base branch to branch from"

[params.branch_name]
type = "text"
description = "New branch name"
default = "my-feature"

Common patterns

When the user says... | Generate... "single pane" / "simple tab" | One [[panes]] leaf entry "split" / "side by side" / "two panes" | Horizontal split with 2 terminal children "top and bottom" / "stacked" | Vertical split with 2 terminal children "2x2" / "grid" / "four panes" | Horizontal split → 2 vertical splits → 4 terminals "run X" / "auto-run X" | Put X in the commands array "with claude" / "running claude" | commands = ["claude"] in the relevant pane "three panes" (no further detail) | Horizontal split: 1 terminal + 1 vertical split with 2 terminals

© warpdotdev, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in resources/bundled/skills/tab-configs of warpdotdev/warp.

Open the folder on GitHubat commit f571865

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in warpdotdev/warp, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Warp Tab Config Reference next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Warp Tab Config Reference compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Warp Tab Config Reference this skillwarpdotdev/warp65k1 repos~2.1kAutomated safety check: PassAGPL-3.0
Agent Browser CLIvercel-labs/agent-browser44k24 repos~864Automated safety check: PassApache-2.0
Agent Browserquran/quran.com-frontend-next1.9k41 repos~3.3kAutomated safety check: PassNone
Web Access via Browser CDPeze-is/web-access9.1k4 repos~2.2kAutomated safety check: PassMIT
Process Inboxtelegramdesktop/tdesktop33k2 repos~4.5kAutomated safety check: PassGPL-3.0
Dev Browser AutomationMemTensor/MemOS12k3 repos~1.7kAutomated safety check: PassApache-2.0

Similar skills

  • Agent Browser CLI

    vercel-labs/agent-browser

    Official

    Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking…

    44k GitHub starsUsed in 24 repos~864 tokens
    Productivity & AutomationAuto-check passed
  • Agent Browser

    quran/quran.com-frontend-next

    Automates browser interactions for web testing, form filling, screenshots, and data extraction.

    1.9k GitHub starsUsed in 41 repos~3.3k tokens
    Productivity & AutomationAuto-check passed
  • Routes every web task, from searching to logged-in browsing, through a tiered choice of search, fetch, curl or a real Chrome or Edge session driven over CDP.

    9.1k GitHub starsUsed in 4 repos~2.2k tokens
    Productivity & AutomationAuto-check passed
  • Process Inbox

    telegramdesktop/tdesktop

    Process the local ignored ai-tdesktop inbox into durable, independently testable Telegram Desktop task records while task execution worktrees remain active.

    33k GitHub starsUsed in 2 repos~4.5k tokens
    Productivity & AutomationAuto-check passed
  • Dev Browser Automation

    MemTensor/MemOS

    Automates a real browser through short TypeScript scripts that keep page state between runs, for navigating, filling forms, taking screenshots and extracting data.

    12k GitHub starsUsed in 3 repos~1.7k tokens
    Productivity & AutomationAuto-check passed
  • Tavily Web Search

    allenpeng0705/EnvoyMesh

    Searches the web through the Tavily API with LLM-friendly output: clean structured results, optional AI-written answers, domain filters, news mode, images and raw content.

    3.1k GitHub starsUsed in 4 repos~2.5k tokens
    Productivity & AutomationAuto-check: notes

More from warpdotdev/warp

All 46 skills in this repo
  • Builds or updates a design system in Figma from a codebase in ordered phases: discovery, variables and tokens, components, theming and documentation, with checkpoints.

    65k GitHub starsUsed in 2 repos~4.4k tokens
    Auto-check passed
  • Required groundwork before any use_figma call: the rules and reference files for running JavaScript in a Figma file through the Plugin API without common failures.

    65k GitHub starsUsed in 4 repos~4.4k tokens
    Auto-check passed
  • Warp Factory Files

    warpdotdev/warp

    Authors and edits file-based Warp software factory definitions rooted at factory.yaml, covering agents, automations, scorers and webhooks, and validates them before a pull request.

    65k GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • Figma Design to Code

    warpdotdev/warp

    Turns a Figma frame or component into production code that matches the design, using the Figma MCP server and the project's own design system.

    65k GitHub starsUsed in 4 repos~2.9k tokens
    Auto-check passed
  • Migrates the compatible subset of settings and global file-based MCP servers from the Warp desktop app into Warp Agent CLI without exposing credentials or state.

    65k GitHub starsUsed in 1 repo~2.1k tokens
    Auto-check passed
  • Creates project-specific design system rules from your codebase so coding agents implement Figma designs with your components, naming and tokens.

    65k GitHub starsUsed in 3 repos~4.6k tokens
    Auto-check passed

Questions about Warp Tab Config Reference

What does Warp Tab Config Reference do?

Reference for Warp tab config TOML files: where they live, how the pane list is structured, and what to ask before creating or editing one. warp/tab_configs directory, with a channel-specific variant of that directory for non-stable builds, and not under Application Support. Each file defines one tab layout that appears in the plus menu; choosing it opens a new tab with the configured pane layout and runs any commands.

When should I use Warp Tab Config Reference?

Warp Tab Config Reference fits situations like: creating a Warp tab config that opens a multi-pane layout; updating an existing tab config without breaking its structure; looking up valid fields, colors and pane types for tab configs.

How do I install Warp Tab Config Reference in Claude Code?

Run `npx skills add warpdotdev/warp --skill tab-configs -a claude-code`. Or copy the skill folder (resources/bundled/skills/tab-configs in warpdotdev/warp) into .claude/skills/tab-configs in your project. Claude Code loads it when a task matches its description.

How do I install Warp Tab Config Reference in Codex?

Run `npx skills add warpdotdev/warp --skill tab-configs -a codex`. Or copy the skill folder (resources/bundled/skills/tab-configs in warpdotdev/warp) into .agents/skills/tab-configs in your project. Codex loads it when a task matches its description.

Can I use Warp Tab Config Reference in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add warpdotdev/warp --skill tab-configs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/tab-configs, .gemini/skills/tab-configs, .github/skills/tab-configs and .opencode/skills/tab-configs in your project.

What does Warp Tab Config Reference need to run?

SKILL.md names no scripts, command-line tools or credentials: Warp Tab Config Reference is instructions for the agent only. Our summary lists: Warp, with a tab_configs directory for the current channel.

Does Warp Tab Config Reference access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Warp Tab Config Reference safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Warp Tab Config Reference use?

Warp Tab Config Reference is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Warp Tab Config Reference use?

About 2.1k tokens (SKILL.md is roughly 8.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Warp Tab Config Reference?

Skills that share tags, products or a category with Warp Tab Config Reference: Agent Browser CLI (vercel-labs/agent-browser, 44k stars), Agent Browser (quran/quran.com-frontend-next, 1.9k stars), Web Access via Browser CDP (eze-is/web-access, 9.1k stars) and Process Inbox (telegramdesktop/tdesktop, 33k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Warp Tab Config Reference?

warpdotdev (a GitHub organization) maintains it in warpdotdev/warp, which has 65,380 GitHub stars. The repository holds 46 skills in this directory. The repository was last updated on October 7, 2026.

Source: warpdotdev/warp on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.