Ship the full current in-progress work as a PR in one pass. If already running inside a workspace-linked `git worktree` (for example under `.stave/workspaces/*`), reuse that same worktree in place. Otherwise move the dirty state into a dedicated temporary worktree, commit with a Conventional Commit message, push, open a GitHub pull request, and clean up the temporary worktree unless the user asks to keep it. Use for prompts like "worktree 만들어서 PR", "현재 작업 PR로 올려줘", or "spin this dirty tree into a PR branch".
92
88%
Does it follow best practices?
Impact
100%
2.17xAverage score across 3 eval scenarios
Passed
No known issues
Repository-local skill for taking the full current working state and shipping it as a PR, while reusing the current worktree when already inside a workspace worktree.
Confirm the intended scope.
git status, including untracked files, plus the current HEAD.Inspect the repo and choose execution mode before moving anything.
git branch --show-current, git status --short --branch, git rev-parse --short HEAD, and git rev-parse --show-toplevel.pwd -P and git rev-parse --git-common-dir to detect whether the current checkout is already a linked worktree.main or master.git worktree list --porcelain..stave/workspaces/ or the checkout is already a linked worktree, set mode to reuse-current-worktree and do not create another worktree by default.create-temporary-worktree, then reconcile any existing worktree for the intended branch and run git worktree prune when stale metadata is present.git remote -v and confirm a writable GitHub remote exists.gh auth status before planning PR creation.Move the dirty state into a dedicated worktree safely (only in create-temporary-worktree mode).
reuse-current-worktree mode.worktree-pr:<branch>:<timestamp>.git stash push --include-untracked -m "<message>" only when the current worktree is dirty.../.worktrees/<repo>/<branch>.HEAD, not from a guessed base branch:
git worktree add -b <branch> ../.worktrees/<repo>/<branch> HEADValidate the target changes in the execution worktree.
reuse-current-worktree mode: current workspace worktreecreate-temporary-worktree mode: newly created temporary worktreegit status --short --branch inside the execution worktree.Commit from the execution worktree.
git add -A unless the user asked for a narrower commit.git status --short is clean after the commit.Push the branch.
git push -u origin <branch>.--force-with-lease, never plain --force.Create the PR.
gh pr create --base <base> --head <branch> --title <title> --body <body>.type(scope): description using the same type and scope as the commit message. The subject (description part) must be lowercase — never capitalise the first letter. Examples: fix(workspace): reuse root node_modules in worktrees, feat(ui): add dark mode toggle. Do not use plain natural-language titles.gh is unavailable or unauthenticated, stop after push and tell the user exactly what blocked PR creation.Clean up the temporary worktree (only in create-temporary-worktree mode).
reuse-current-worktree mode; the current workspace worktree must stay intact.git worktree remove <path>.git worktree prune after removal so the repo metadata stays clean.Report the outcome.
reuse-current-worktree or create-temporary-worktree).type(scope): description, lowercase subject).git push --force; use --force-with-lease when a rewrite is required.git worktree remove <path> from inside the same worktree path you are trying to remove.e275ad5
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.