ship-autonomous
Installation
SKILL.md
Ship (autonomous)
End-to-end Linear ticket → worktree → Graphite PR stack → review-agent loops → merge.
This skill is paired with the ticket skill. Normally a Linear ticket already exists; this skill picks one up. If the user wants to ship something with no ticket yet, read the ticket skill and follow its workflow to create one before continuing.
Two entry modes
How the skill was invoked determines whether a ticket is involved at all:
- Ticket mode (default). The user names or asks you to pick up a Linear ticket ("ship FOO-123", "ship the feed-pagination ticket", "pick up a ticket"). Run the full flow starting at Step 1.
- Existing-changes mode. The user points at work already done locally and just wants it shipped as a PR — e.g. "ship these changes as a PR", "open a PR for what I've got", "ship this diff". This is invoked when code has already changed locally without starting from a ticket. In this mode:
- Skip ticket creation and ticket selection entirely — do not read the
ticketskill, do not create a Linear ticket, and do not browse for one to attach. Only create or attach a ticket if the user explicitly asks for it in this invocation. - Skip the Linear steps — Step 1 (Select ticket), the Linear status transitions, and the Linear progress log. There's no ticket, so there's nothing to move or comment on. PR bodies omit the
Closes <LINEAR-ID>line (there's no id). - Jump to the PR flow. Treat the existing working-tree changes as the implemented end state (the output of Step 5a) and continue from there: Step 5b (deslop), Step 5c (review the diff / decide on stack breakup), Step 5d (split into a stack), Step 6 (submit + review loop), and Step 7 (merge) — all unchanged.
- Everything else (approval gates, review loop, merge gate, screenshots, no-force-push rules) applies exactly as in ticket mode.
- Skip ticket creation and ticket selection entirely — do not read the