Skip to content
Agentmart
Submit a tool

managing-stacked-changes

Plans, creates, updates, publishes, merges, and retires dependent GitHub pull requests with wt-stack in Chad's bare sibling-worktree layout.

Skill by chadxz

IndexedMIT★ 3
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/chadxz-managing-stacked-changes

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Plans, creates, updates, publishes, merges, and retires dependent GitHub pull requests with wt-stack in Chad's bare sibling-worktree layout. Use for non-trivial implementation work with two or more ordered, independently reviewable changes, stacked pull requests, dependent branches, merging a Stack, or an existing wt-stack Stack.

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 26, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/managing-stacked-changes

What's inside

Skill name
managing-stacked-changes
Description
Plans, creates, updates, publishes, merges, and retires dependent GitHub pull requests with wt-stack in Chad's bare sibling-worktree layout. Use for non-trivial implementation work with two or more ordered, independently reviewable changes, stacked pull requests, dependent branches, merging a Stack, or an existing wt-stack Stack.
License
MIT
Instructions
238 lines in SKILL.md · view on GitHub

Files (2)

  • SKILL.md
  • openai.yaml · agents/

SKILL.md (first lines)

# Managing Stacked Changes

Use `wt-stack` to manage dependent review units as branches in sibling
worktrees. Git remains the source of truth for branches and worktrees. GitHub
remains the source of truth for pull requests and the remote Stack.

## Choose a Stack

Use a Stack when the task contains two or more ordered changes that reviewers
could understand and merge independently. Plan the review units from bottom to
top. Each later unit must depend on the branch immediately below it.

Good Stack boundaries include:

- A refactor followed by behavior that uses it.
- An API or schema followed by consumers or migration.
- Infrastructure followed by application adoption.
- A foundation followed by separate integrations.

Keep one branch for one coherent review unit, regardless of its file count. Give
independent changes separate branches based on the trunk branch.

## Verify prerequisites

Start from a task-specific worktree selected through the `using-git-worktrees`
skill. Inspect the repository before changing Stack state:

```console
git status --short --branch
git worktree list
wt-stack --version
wt-stack doctor
```

Treat `wt-stack` as installed and use v0.6.0 or newer. If the shell reports
`command not found`, or the installed version is older, install it from the
prompts repository:

```console
mise trust ~/src/personal/prompts/main/apps/wt-stack/mise.toml
mise -C ~/src/personal/prompts/main/apps/wt-stack install
mise run -C ~/src/personal/prompts/main/apps/wt-stack :install
wt-stack --version
```

Resume the prerequisite checks after installation. If authentication is
unavailable or GitHub Stacks support is disabled for the repository, continue
with the normal single-branch workflow and report that capability as a
consideration.

Treat existing dirty work in any worktree as user-owned. Stack mutations that
rebase require every active worktree to be clean.

## Plan the review units

Choose a short Stack name and one branch name per review unit. Include the
ticket identifier when one exists. Record the intended order before creating
branches:

```text
Stack: EE-1234-delivery
1. EE-1234/api
2. EE-1234/consumer
```

Keep each branch limited to its review unit. A branch should build and test
against the branch directly below it.

## Start a new Stack

Create the bottom branch and task worktree with the `using-git-worktrees` skill.
From that worktree, verify prerequisites and adopt the branch:

```console
wt-stack init --name <stack>
```

`init` discovers the selected remote's default branch. Use `--remote <remote>`
to select another remote or `--base <branch>` for an intentional base override.
If discovery fails, inspect the remote configuration instead of assuming `main`.

Implement and commit the bottom review unit before creating the next branch.
`add` bases the new branch on the current active Stack tip:

```console
wt-stack --stack <stack> add <next-branch>
wt-stack --json --stack <stack> status
```

Change into the worktree reported by `status`, implement the next review unit,
and commit it through the `creating-commits` skill. Repeat `add` from bottom to
top.

To adopt an existing linear chain, ensure each branch is checked out in a
sibling worktree and list the branches from bottom to top:

```console
wt-stack init --name <stack> <bottom-branch> <next-branch>
```

Do not rewrite published history solely to convert existing work into a Stack.
Ask before restructuring branches that other people may already use.

## Commit and publish

Treat publication as a separate phase from implementation. Immediately before
the first or delayed publication, re-read the `creating-commits` and
`creating-pull-requests` skills. Re-read them again when the conversation was
compacted or the user redirected the task after they were last read.

Prepare the final unwrapped pull request title and body for every unpublished
branch before committing or syncing. Check each body against the publication
checklist in `creating-pull-requests`, then derive the branch tip's commit title
and wrapped body from it. `wt-stack` uses the tip commit to initialize a missing
pull request; that generated description is not the final publication step.

Preview the complete mutation, then publish:

```console

From chadxz/prompts, MIT.

More from chadxz/prompts

Signals

Stars
3
Forks
1
Open issues
0
Last commit (this folder)
Sep 10, 2026 (1 month ago)
Last release
Oct 15, 2026 (14 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from chadxz

Cite this page

managing-stacked-changes skill. Agent Mart. https://agentmart.dev/skills/chadxz-managing-stacked-changes (last updated 2026-10-24)