From 32286fb1b6255996ece2d90909378e14fbbebe14 Mon Sep 17 00:00:00 2001 From: Sebastien Taggart Date: Thu, 26 Mar 2026 10:10:12 -0400 Subject: [PATCH] Strip leading @ from reviewer handles before passing to gh pr create The gh CLI's --reviewer flag rejects handles with @ prefixes (e.g. @sebastientaggart), causing PR creation to fail with "Could not resolve user with login". The ship skill now instructs agents to strip @ from each comma-separated handle before constructing the --reviewer argument. --- .agents/skills/ship/SKILL.md | 4 ++-- .claude/commands/ship.md | 4 ++-- .cursor/rules/ship.mdc | 4 ++-- .gemini/skills/ship/SKILL.md | 4 ++-- skills/ship.md | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/.agents/skills/ship/SKILL.md b/.agents/skills/ship/SKILL.md index 5e4a1db..8cd82c8 100644 --- a/.agents/skills/ship/SKILL.md +++ b/.agents/skills/ship/SKILL.md @@ -99,7 +99,7 @@ EOF )" ``` -Add `--reviewer @sebastientaggart` to the `gh pr create` command above. +Add `--reviewer` to the `gh pr create` command above using the handles from `@sebastientaggart`. Before passing them, strip any leading `@` from each comma-separated handle (e.g. `@alice,@org/team` becomes `alice,org/team`) — the `gh` CLI requires bare usernames. If a CODEOWNERS file exists, both apply: CODEOWNERS triggers automatic review requests from GitHub; the `--reviewer` flag adds the explicitly configured handles on top. @@ -185,4 +185,4 @@ Report success based on mode: - When `ai` is `"off"`, skip the review agent entirely — merge immediately after checks pass. - `/ship` merges only to `dev` — never directly to `main`. - If `make merge` fails for any reason, report it and stop — do not attempt workarounds. - + diff --git a/.claude/commands/ship.md b/.claude/commands/ship.md index baffeae..e3f4993 100644 --- a/.claude/commands/ship.md +++ b/.claude/commands/ship.md @@ -94,7 +94,7 @@ EOF )" ``` -Add `--reviewer @sebastientaggart` to the `gh pr create` command above. +Add `--reviewer` to the `gh pr create` command above using the handles from `@sebastientaggart`. Before passing them, strip any leading `@` from each comma-separated handle (e.g. `@alice,@org/team` becomes `alice,org/team`) — the `gh` CLI requires bare usernames. If a CODEOWNERS file exists, both apply: CODEOWNERS triggers automatic review requests from GitHub; the `--reviewer` flag adds the explicitly configured handles on top. @@ -180,4 +180,4 @@ Report success based on mode: - When `ai` is `"off"`, skip the review agent entirely — merge immediately after checks pass. - `/ship` merges only to `dev` — never directly to `main`. - If `make merge` fails for any reason, report it and stop — do not attempt workarounds. - + diff --git a/.cursor/rules/ship.mdc b/.cursor/rules/ship.mdc index 29187ab..e00f4c3 100644 --- a/.cursor/rules/ship.mdc +++ b/.cursor/rules/ship.mdc @@ -100,7 +100,7 @@ EOF )" ``` -Add `--reviewer @sebastientaggart` to the `gh pr create` command above. +Add `--reviewer` to the `gh pr create` command above using the handles from `@sebastientaggart`. Before passing them, strip any leading `@` from each comma-separated handle (e.g. `@alice,@org/team` becomes `alice,org/team`) — the `gh` CLI requires bare usernames. If a CODEOWNERS file exists, both apply: CODEOWNERS triggers automatic review requests from GitHub; the `--reviewer` flag adds the explicitly configured handles on top. @@ -186,4 +186,4 @@ Report success based on mode: - When `ai` is `"off"`, skip the review agent entirely — merge immediately after checks pass. - `/ship` merges only to `dev` — never directly to `main`. - If `make merge` fails for any reason, report it and stop — do not attempt workarounds. - + diff --git a/.gemini/skills/ship/SKILL.md b/.gemini/skills/ship/SKILL.md index 1cd81f0..4f923bf 100644 --- a/.gemini/skills/ship/SKILL.md +++ b/.gemini/skills/ship/SKILL.md @@ -99,7 +99,7 @@ EOF )" ``` -Add `--reviewer @sebastientaggart` to the `gh pr create` command above. +Add `--reviewer` to the `gh pr create` command above using the handles from `@sebastientaggart`. Before passing them, strip any leading `@` from each comma-separated handle (e.g. `@alice,@org/team` becomes `alice,org/team`) — the `gh` CLI requires bare usernames. If a CODEOWNERS file exists, both apply: CODEOWNERS triggers automatic review requests from GitHub; the `--reviewer` flag adds the explicitly configured handles on top. @@ -185,4 +185,4 @@ Report success based on mode: - When `ai` is `"off"`, skip the review agent entirely — merge immediately after checks pass. - `/ship` merges only to `dev` — never directly to `main`. - If `make merge` fails for any reason, report it and stop — do not attempt workarounds. - + diff --git a/skills/ship.md b/skills/ship.md index 9049720..2e9dd84 100644 --- a/skills/ship.md +++ b/skills/ship.md @@ -110,7 +110,7 @@ EOF ``` {{#if DEFAULT_REVIEWERS}} -Add `--reviewer {{DEFAULT_REVIEWERS}}` to the `gh pr create` command above. +Add `--reviewer` to the `gh pr create` command above using the handles from `{{DEFAULT_REVIEWERS}}`. Before passing them, strip any leading `@` from each comma-separated handle (e.g. `@alice,@org/team` becomes `alice,org/team`) — the `gh` CLI requires bare usernames. If a CODEOWNERS file exists, both apply: CODEOWNERS triggers automatic review requests from GitHub; the `--reviewer` flag adds the explicitly configured handles on top. {{/if}}