Skip to content
cccskills
FreePublished on GitHubEnglish overview

panes

Arrange tabs and split panes in the Superset desktop app so terminals, tests, and logs appear where needed. Open panes with commands, resize or move them, switch focus, and close extra panes while optionally keeping their terminals running.

OriginalShow the original description

Arrange the tabs and split panes of a Paradev (formerly Superset) workspace in the desktop app from an agent. Use when the user asks to split a pane, open a tab, run a command in a new pane, resize, swap, move, focus, close, or even out panes, lay out a dashboard of terminals, or show them something side by side, including "split this and run the tests on the right", "open the logs in a new tab", "make this pane bigger", "put the server and the tests side by side", "close those extra panes". Not for coordinating worker agents (use superset:orchestrate) or driving web pages (use superset:browser).

ParadevAI/Paradev15,724 stars(GitHub 15,724 + cccskills 0)

Run score Not tested

See how to install

Good for

  • Showing the server and tests side by side
  • Opening logs in a new tab
  • Resizing and equalizing split panes
  • Closing extra panes while keeping terminals running

Overview

What it does

This skill lets an agent arrange tabs and split panes in the Superset desktop app. It can split a pane in any direction, create a tab, resize or equalize panes, move or swap them, change focus, and close panes. It can start a command in a new terminal or display an existing terminal in another pane.

When it helps

Use it to view a development server and tests side by side, put logs in a dedicated tab, or arrange several terminals in a grid. Layout changes appear immediately in the app. Creating a split or tab does not move focus; focus changes only when requested.

Example requests

  • “Split a pane on the right and run the tests there.”
  • “Open the logs in a new tab.”
  • “Close the extra panes and make the remaining ones equal in size.”

Notes

You need the Superset desktop app and a CLI that supports panes, a feature added in CLI 1.38.0. It does not work on a host without a connected desktop. Closing a pane usually ends its terminal; use --keep-terminal to leave a process running in the background. This skill does not coordinate worker agents or control web pages.

This overview was written by AI (OpenAI Codex) from the public SKILL.md. Check the original below for the exact behavior.

Document check

AI checked the SKILL.md for operations that need care and for setup requirements. The score comes only from actually running the skill (hands-on test).

SafetyAre sending data, deleting files, and running commands disclosed?
BPartly lackingCLI changes live panes; closing ends terminals, with scope rules and `--keep-terminal` documented.
Easy setupDoes it need few tools or API keys, and are they documented?
BPartly lackingRequires the Superset desktop app, CLI 1.38.0 or later, and an attached desktop.

Not counted in the score. Rated by AI (OpenAI Codex) as of Oct 29, 2026. Treat it as a guide and read the original before installing.

Disagree? Request a re-evaluation

Tell us which point is wrong and why. No login needed. We will check it against the SKILL.md, redo the evaluation, and show the result here.

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

Files included (2)

  • SKILL.md6.2 KB
  • agents/openai.yaml214 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

Paradev Pane Layout

paradev is an alias for the superset CLI: every superset command here also runs as paradev.

Script the tabs and split panes of a workspace with superset panes. Commands go to the host, then to the desktop app, which applies them to the live layout the user is looking at. Every change is visible immediately, so build layouts the user asked for and clean up what you open.

Establish the control surface

  1. Run superset schema 2>/dev/null | jq -re '.commands[] | select(.path==["panes"]) | .commands[].path[1]' || superset panes --help and require list, split, new-tab, resize, equalize, move, swap, focus, and close. panes is new in CLI 1.38.0. If it is missing, run superset update and recheck. The app-bundled CLI (~/.superset/bin/superset) updates only with the desktop app, so if it still lacks panes, updating the app is the fix.
  2. Resolve the workspace. Inside a workspace, use $SUPERSET_WORKSPACE_ID; otherwise superset workspaces list --local --json and pick the target.
  3. Panes live in the desktop app. A host with no desktop attached (a standalone superset start) has no panes, and an older desktop app answers "This host is too old for superset panes". Surface either rather than retrying.

Read the layout

superset panes list --workspace "$WS" --json

The result has activeTabId and tabs[]. Each tab has layout, a split tree of { type: "split", direction, ratio, first, second } and { type: "pane", paneId } nodes, plus a flat panes[] with each pane's kind (terminal, chat-v3, browser, …), terminalId, active, and the agent running in it with its state. row splits sit side by side and column splits stack; ratio is the first child's share.

Inside a workspace, the pane you are running in is the one whose terminalId equals $SUPERSET_TERMINAL_ID:

ME=$(superset panes list --workspace "$WS" --json \
  | jq -r --arg t "$SUPERSET_TERMINAL_ID" '.tabs[].panes[] | select(.terminalId==$t) | .id')

Change the layout

Every mutating command returns the new pane or tab ID plus the full updated layout, so chain commands from its output instead of listing again. Read IDs with --json | jq -r .paneId (or .tabId, .terminalId); --quiet does not reduce these results to an ID.

GoalCommand
Split a pane, new terminal in the new halfpanes split --workspace $WS --pane P --direction right|left|down|up [--command CMD]
Open a tab with a terminalpanes new-tab --workspace $WS [--command CMD]
Show an existing terminal insteadadd --terminal <terminal-id> to split or new-tab (not with --command)
Set a pane's share of its splitpanes resize --workspace $WS --pane P --ratio 0.05–0.95
Even out every splitpanes equalize --workspace $WS [--tab T]
Exchange two panes, even across tabspanes swap --workspace $WS --pane A --with B
Move a pane beside anotherpanes move --workspace $WS --pane P --to Q --direction right|left|down|up
Move a pane into a tab of its ownpanes move --workspace $WS --pane P --new-tab
Bring a pane and its tab to the frontpanes focus --workspace $WS --pane P
Close a panepanes close --workspace $WS --pane P [--keep-terminal]

Behavior to rely on:

  • Only focus moves focus. split and new-tab add panes without taking the user away from what they are looking at; follow with focus only when the user should see the new pane now.
  • --command types the command into the new terminal's shell. When it exits, its output stays on screen above a prompt, so one-shot commands need no wrapping. A display that should keep refreshing needs its own loop (while true; do clear; …; sleep 2; done).
  • close ends the pane's terminal, as the close button in the app does. Pass --keep-terminal to keep a long-running process alive in the background and reattach it later with --terminal.
  • move closes a tab it leaves empty.
  • A split always halves the pane it splits. Splitting one pane repeatedly gives 50/25/12.5 shares; build the tree, then equalize once.
  • If the desktop app does not confirm a split or new-tab in time, the CLI keeps the terminal it created and says so. Check panes list before retrying, or the retry opens a second pane.

Read what a pane shows

superset terminals read --local --workspace $WS --terminal <terminal-id> --json returns the screen text of a terminal pane, which confirms a command started and shows its output. Pass --local (or --host <id>); without it the CLI looks for a cloud workspace.

Layout recipes

Side by side with the user's pane, tests on the right, a watcher below them:

WS=$SUPERSET_WORKSPACE_ID
R=$(superset panes split --workspace $WS --pane "$ME" --direction right --command 'npm test -- --watch' --json)
TESTS=$(jq -r .paneId <<<"$R")
superset panes split --workspace $WS --pane "$TESTS" --direction down --command 'npm run dev' --json >/dev/null
superset panes resize --workspace $WS --pane "$ME" --ratio 0.6 --json >/dev/null

A grid of N panes in a new tab: open the tab, split the first pane right for each column, split each column down for each row, then equalize --tab.

Clean up

Panes you open stay open, and their terminals keep running. When the work is done, or before rebuilding a layout, close what you created: track the pane IDs you made and panes close each one. Do not close panes you did not create unless the user asks, and never close the pane you are running in.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

10x

FreeSummary

Review how you use Superset and identify unused features that fit your workflow. Get a short list of suggestions, learn about each option, and set up selected features such as scheduled agents, parallel workspaces, or shared tasks.

  • Find unused Superset features worth exploring
  • Set up scheduled agent tasks
  • Start parallel work in separate workspaces
ParadevAI/Paradev15.7KUpdated Oct 29, 2026

automate

FreeSummary

Set up recurring tasks in Superset with an agent prompt, a schedule or event trigger, and a chosen execution workspace. After explicit confirmation, create the automation, check its saved settings, and review a real first run.

  • Scheduling a daily or weekly agent task
  • Starting agent work when a GitHub pull request opens
  • Triggering tasks from selected Slack reactions
ParadevAI/Paradev15.7KUpdated Oct 29, 2026

browser

FreeSummary

Browse pages, click controls, fill fields, and inspect screenshots or console messages through Superset's browser pane. Use it to preview a running web app, check interface behavior, and work through browser tasks in a visible session.

  • Preview a locally running web app
  • Capture screenshots of a page
  • Inspect console errors
ParadevAI/Paradev15.7KUpdated Oct 29, 2026

Build Stripe payments, subscriptions, and invoicing using verified documentation and API parameter definitions. The skill guides product selection, sandbox testing, and webhook handling, where server notifications determine payment and subscription state.

  • Choose Stripe products for payments or recurring billing
  • Implement Checkout or invoice flows
  • Investigate Stripe code that compiles but behaves incorrectly
ParadevAI/Paradev15.7KUpdated Oct 29, 2026

cdp-verification

FreeSummary

Verify a UI change or reproduce a bug in the running desktop app using the Chrome DevTools Protocol (CDP), a browser debugging interface. Follow the real user journey and compare screenshots with measurements such as route, scroll position, and persisted state.

  • Reproducing a UI bug in the running app
  • Verifying a UI change end to end
  • Checking behavior after a route or workspace switch
ParadevAI/Paradev15.7KUpdated Oct 29, 2026

ci-triage

FreeSummary

Diagnose failed GitHub Actions runs by finding the first meaningful error, separating code problems from infrastructure issues and intermittent failures, and comparing the base branch. Get a focused report explaining the PR’s involvement and recommended next steps.

  • Investigating failed PR checks
  • Separating intermittent test failures from code defects
  • Checking whether the base branch already fails
ParadevAI/Paradev15.7KUpdated Oct 29, 2026

See all skills by ParadevAI

Report a problem with this skill