| name | graphite |
| description | Use Graphite well for everyday stacked PR work in the monologue repo. |
Graphite
Use this skill for normal gt workflows. For splitting an existing branch or PR
into smaller slices, use .cursor/skills/graphite-split-stack/SKILL.md.
Good Stack Shape
Prefer PRs that are:
- atomic and deployable on their own
- narrow in semantic scope
- small enough to review quickly
When choosing between one large PR and several small ones, prefer the smaller
stack.
Everyday Commands
gt create branch-name -m "commit message"
gt modify -m "updated commit message"
gt ls
gt up
gt down
gt submit --no-interactive
Use gt instead of plain git commit / git push for stacked work unless you
are doing something gt does not model well.
Branch Naming
Use a shared prefix plus a terse branch purpose:
stack-topic/first-slice
stack-topic/second-slice
stack-topic/final-slice
Before gt create or gt modify
- make sure the slice is independently valid
- run the repo's scoped lint, build, and test flow
- keep only the files that belong in this slice staged
Untracked Branches
If Graphite says the current branch is untracked:
gt track -p main
Then create or restack from there.
PR Descriptions
Include:
- stack context
- why this slice exists
- what changed when the diff is not obvious
When updating an existing PR description manually, prefer gh pr edit --body-file ... over shell-escaped inline markdown if the body is more than a
couple of lines.
Re-parenting and Conflicts
- Use
gt track --parent <branch> to fix parentage.
- Use
gt restack when you want Graphite to update the branch chain.
- If a targeted
git rebase is safer than a broad restack, do that and then
sync the result back into Graphite.