supacode-cli

Control Supacode worktrees, tabs, and surfaces from the terminal via CLI commands.

1|Updated Aug 11, 2026
One-click install
npx skills add https://github.com/Chia1104/agent-air --skill supacode-cli-chia1104
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: supacode-cli
Source: https://github.com/Chia1104/agent-air/tree/main/skills/shared/supacode-cli
Command: npx skills add https://github.com/Chia1104/agent-air --skill supacode-cli-chia1104

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Managing Supacode worktrees, tabs, and terminal surfaces manually through the GUI is slow and cannot be automated. This Skill lets you operate Supacode programmatically from the terminal, capturing resource UUIDs correctly so scripts and agents can create, target, and close tabs and surfaces reliably. ## Core Features & Use Cases - Worktree Management: List, focus, archive, pin, and delete worktrees, plus run or stop configured scripts and customize sidebar titles and colors. - Tab and Surface Control: Create tabs and split surfaces with captured UUIDs, focus or close them, and run commands inside specific surfaces. - Repository Operations: Open repositories and create new worktrees with branch, upstream, and pin options. - Use Case: An AI agent inside a Supacode session needs to run tests in a split pane. It captures the new tab UUID from supacode tab new, splits the surface with explicit -t/-s flags, and runs the test command in the new surface without losing focus. ## Quick Start Ask the agent to open a new Supacode tab running your dev server and split it vertically to run tests alongside it.

Frequently Asked Questions about supacode-cli

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a new Supacode tab from the terminal?▼

Run supacode tab new with an optional -i command flag, and capture the printed UUID into a variable. You must capture this UUID because it is required to target the tab in later commands like surface split or tab close.

How to split a terminal surface in Supacode programmatically?▼

Use supacode surface split with -t for the tab UUID, -s for the surface UUID, and -d h or v for direction. The command prints the new surface UUID to stdout, which you must capture to target it afterward.

Why does supacode fail with Operation not permitted?▼

The supacode CLI communicates with the app over a Unix domain socket, and sandboxed environments that deny socket connections block every command. Re-run the command with escalated permissions or from an unsandboxed shell.

Why does my supacode command target the wrong tab or surface?▼

Omitting -t and -s flags makes commands default to SUPACODE_TAB_ID and SUPACODE_SURFACE_ID, which refer to your own shell session, not resources you created. Always pass explicit captured UUIDs when targeting created tabs or surfaces.

What happens when I archive the worktree I am working in?▼

Archiving or deleting your current worktree closes your own surface, so any commands after that call do not run. Make archiving or deleting your own worktree the final operation after all edits, commits, and reporting.