# Gt:submit

> Use this skill to push code to remote and create or update PRs. REPLACES git push and gh pr create — never use those directly. Triggers: 'push', 'push my changes', 'ship it', 'send this up', 'submit', 'update PRs', 'create PR', 'push stack', 'send PRs'.

- Skill: `luan/gt-submit` (Agent Skill)
- Install (CLI): `npx skillmds@latest add luan/gt-submit`
- Raw SKILL.md: https://api.skillmd.com/api/skills/luan/gt-submit/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: luan (https://skillmd.com/u/luan)
- Updated: 2026-09-10
- Page: https://skillmd.com/skills/luan/gt-submit

---


# Submit

Push Graphite stack and create/update PRs.

## Modes

| Mode        | Command     | When                                                     |
| ----------- | ----------- | -------------------------------------------------------- |
| **Default** | `gt ss -u`  | Always, unless user specifies otherwise                  |
| Single PR   | `gt submit` | User explicitly says "submit this PR" / "update this PR" |
| Create new  | `gt ss`     | User explicitly says "create PR" / "create PRs"          |

Default is `gt ss -u` (stack, update-only) — avoids accidentally creating PRs for WIP branches.

## Steps

1. **Check stack health**: `gt log --stack 2>&1`
   - If restack needed (diverged parents, conflicts), run `Skill(gt:restack)` first.

2. **Submit**:

   ```bash
   gt ss -u 2>&1    # default
   # or gt submit / gt ss depending on mode
   ```

3. **PR descriptions** (create modes only):
   When mode is **Create new** (`gt ss`) or **Single PR** (`gt submit`) on a branch without an existing PR, run `Skill(pr-descr)` for each newly created PR. Skip for `gt ss -u` (PRs already have descriptions).

4. **Report**: list Graphite URLs (`app.graphite.com/...`) for updated PRs. Never report GitHub URLs.

