GitButler CLI (but) In-Depth Reference

SkillMonitoring & ops

Lets your agent manage Git work with the GitButler CLI: virtual branches, commit editing, PRs, and undoing changes.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the GitButler CLI (but) In-Depth Reference skill

About this capability

Use when working with the GitButler CLI (`but`) — virtual branches, stacked branches, workspace model, commit editing (rub, amend, squash, reword), CLI IDs, forge integration, PRs, operations log, conflict resolution, TUI, AI agent setup, skills, aliases, configuration. Triggers on: "but", "gitbutle

What this skill tells your AI

The instructions your AI receives, as published by carapace-sh/carapace-bin in skills/but/SKILL.md and read by ahel’s review.

Reference for the GitButler CLI — a stacked-branch Git workflow tool that enables virtual branches, parallel branch work, commit editing, and AI agent integration from the terminal.

Data Flow

Working directory changes
  → but stage (assign changes to branches)
    → but commit (create commits on virtual branches)
      → but push (push branches to remote)
        → but pr (create/update pull requests on forge)
but status
  → but diff (inspect changes)
    → but show (inspect commits/branches)
      → but rub (edit: amend, squash, move, split)
        → but oplog (review history) / but undo (revert)

Sub-Resources

Load the reference that matches your task. When in doubt, load multiple references.

KeywordsReference
workspace, integration branch, virtual branches, parallel branches, gitbutler/workspace, setup, teardown, merge base, upstream, target branchreferences/workspace.md
branch, branch new, branch delete, branch list, branch show, branch update, apply, unapply, clean, anchor, stacked branch, stack, strategyreferences/branches.md
commit, commit empty, stage, amend, squash, reword, move, pick, absorb, discard, commit message, --ai, --changes, --only, hunk, --after, --beforereferences/commits.md
rub, rubbing, amend via rub, squash via rub, move via rub, split commits, uncommit via rub, stage via rub, assign changes, zz, unassignedreferences/rubbing.md
status, diff, show, CLI ID, cliId, hunk ID, change ID, change type, but status --json, but diff --json, format, --format, files, verbose, upstreamreferences/inspection.md
push, pull, pull --check, pr, pr new, pr setDraft, pr setReady, pr autoMerge, pr template, forge, GitHub, authentication, auth, list-users, remote, reviewreferences/forge.md
oplog, oplog list, oplog restore, oplog snapshot, undo, redo, snapshot, operation history, CreateCommit, AmendCommit, SquashCommit, RestoreFromSnapshotreferences/oplog.md
resolve, resolve finish, resolve cancel, resolve status, conflict, conflict resolution, zdiff3, conflicted commit, rebase conflictreferences/conflicts.md
config, config user, config target, config forge, config metrics, config ui, config ai, anthropic, openai, ollama, lmstudio, openrouter, alias, alias add, alias list, alias remove, editor, name, emailreferences/config.md
tui, interactive TUI, keybindings, navigation, diff TUI, stage hunk picker, reorder stacks, apply from TUI, move commits, copy, scrollreferences/tui.md
agent, agent setup, skill, skill install, skill check, AI, --ai, coding agent, steering instructions, parallel agents, tuning agent behavior, checkpoint commits, stacked PRs, ship itreferences/ai-agents.md
root command, global flags, --current-dir, --format, --version, completions, update, update check, update install, update suppress, command groupsreferences/misc.md

Quick Guide

Cross-Project References

  • For Git internals (branches, refs, remotes, changes, tags), use the git skill.
  • For carapace completion integration (specs, actions, macros), use the carapace skill.

Signals

GitHub stars
2k
Forks
145
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
but
Source
github.com/carapace-sh/carapace-bin