internal/templates/commands/bodies/done.md
Signal that your work is complete and ready for the merge queue.
Arguments: $ARGUMENTS
Before running gt done, verify your work is ready:
git status # Must be clean (no uncommitted changes)
git log --oneline origin/main..HEAD # Must have at least 1 commit
If there are uncommitted changes, commit them first:
git add <files>
git commit -m "<type>: <description>"
Run gt done with any provided arguments:
gt done $ARGUMENTS
Common usage:
gt done — Submit completed work (default: --status COMPLETED)gt done --pre-verified — Submit with pre-verification (you ran gates after rebase)gt done --status ESCALATED — Signal blocker, skip MRgt done --status DEFERRED — Pause work, skip MRIf the bead has nothing to implement (already fixed, can't reproduce):
bd close <issue-id> --reason="no-changes: <brief explanation>"
gt done
This command pushes your branch, submits an MR to the merge queue, and transitions you to IDLE. The Refinery handles the actual merge. You are done after this.