stack-ship

Orchestrates decomposition of a goal into dependency-ordered stacked pull requests on GitHub.

3|Updated Jun 17, 2026
One-click install
npx skills add https://github.com/ronaknnathani/relay --skill stack-ship-ronaknnathani
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: stack-ship
Source: https://github.com/ronaknnathani/relay/tree/main/skills/stack-ship
Command: npx skills add https://github.com/ronaknnathani/relay --skill stack-ship-ronaknnathani

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Delivering a large feature as one giant pull request is slow to review and risky to merge. This Skill decomposes a single goal into small, dependency-ordered stacked PRs, delegates each PR's build to subagents, monitors the front PR through review, and advances the stack until every acceptance criterion is met and all PRs are merged. ## Core Features & Use Cases - Interface-first decomposition: Turns a design doc or goal into an acceptance-criteria checklist and a stacked PR plan ordered as api → utils → stitch, with explicit dependency tracking for parallel vs pipelined work. - Delegated build and monitoring: Spawns a deliver-pr sub-agent per PR, watches the front PR via relay pr watch, and routes review feedback through pr-monitor and pr-fix without writing code itself. - Stack mechanics and guardrails: Handles rebase cascades with git rebase --onto, auto-merge armed only on human approval, pending-decisions tables for author-owned calls, and resumable on-disk state files. - Use Case: You need to introduce a new storage API and migrate all callers. The Skill splits this into an API surface PR, a logic PR, and an integration PR, drives each through review, rebases descendants as parents merge, and stops when the whole stack lands. ## Quick Start Launch it with the command relay --workflow stack-ship followed by a quoted description of your multi-PR feature goal.

Frequently Asked Questions about stack-ship

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I split a large feature into stacked pull requests?▼

Stacked pull requests are created by decomposing the goal interface-first: an API surface PR, then logic/utils PRs, then integration. This Skill generates the plan with dependencies, delegates each PR to a deliver-pr subagent, and pipelines dependent PRs as parents stabilize.

How to rebase stacked PRs after the parent merges?▼

Rebase stacked PRs with git rebase --onto <new-base-tip> <old-base-tip> <descendant>, since a plain rebase double-applies commits. Force-push with --force-with-lease, retarget the next PR's base to the default branch, and verify descendant base refs did not collapse.

When should I not use stacked pull requests?▼

Avoid stacked PRs for a single small change, which should just be done directly, or when the goal is too vague to write acceptance criteria. This Skill also must never be invoked inside a tech-lead-managed Relay program.

Can stacked PRs be built in parallel?▼

Only independent PRs with no dependencies can be built in parallel, each in its own worktree. Dependent PRs are pipelined: a child can scaffold early but cannot compile until the parent's API surface exists, and only one writer per branch is allowed.

Does stack-ship merge pull requests automatically?▼

Auto-merge is armed only on PRs based on the repository's default branch and fires only on a genuine human code-owner approval. The agent never self-approves, never merges directly, and re-arms auto-merge after force-pushes or review state changes.