CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

gh-stack

Work with stacked pull requests through the `gh stack` extension: find a PR's stack, report and update what is stale, read each layer's checks, resolve conflicts, approve the stack, add a PR on top, split work into a stack, merge. Use whenever a PR or branch's base is not trunk, or for "stack", "PR on top of", "restack", "approve the stack".

Quality

94%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

96%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An exceptionally dense, operational skill: every workflow is executable with explicit validation, error-recovery via exit codes, and confirmation gates on batch/destructive actions. The only structural nit is that reference tables (exit codes, TUI workarounds) live inline rather than in bundle files.

DimensionReasoningScore

Conciseness

The body stays lean and assumes Claude's competence: every section teaches gh-stack-specific behavior Claude cannot know (e.g. "`sync` exits 0 with 'Sync aborted' when the local and GitHub stacks diverge", exit codes 2/3/7/8/10, the rerere pre-setup) rather than re-explelling general git or PR concepts. Nothing reads as padding; the one general-knowledge touch ("GitHub refuses self-approval") is a one-clause justification for the script's behavior, not an explanation.

5 / 5

Actionability

Every instruction is a copy-paste-ready command with its arguments and exit semantics: `bash <skill-dir>/status.sh [pr-number | pr-url | branch]`, `gh stack submit --auto --open`, `gh stack rebase --continue # repeat until it exits 0`, `gh pr edit <pr> --title <title> --body-file <file>`, `git config rerere.enabled true`. The common cases (status, sync, watch, conflict, approve, build) each have a complete runnable path, including flag variants (`--interval`, `--timeout`, `--grace`, `--prune`, `--dry-run`).

5 / 5

Workflow Clarity

The update flow is a numbered sequence with explicit validation and feedback loops: rerun `status.sh` and show it as "the proof the sync landed", `watch.sh` polls until checks settle, and the conflict loop is resolve → `git add` → `rebase --continue` until exit 0 → `push` → rerun the report. Destructive/batch operations are gated: "Confirm before these" requires echoing scope and merge method back to the user, and approve distinguishes the go-ahead from status-only requests via `--dry-run`, so the batch/destructive cap does not apply.

5 / 5

Progressive Disclosure

Structure is good: three one-level-deep scripts (`status.sh`, `watch.sh`, `approve.sh`) are clearly signaled with usage lines and comments, and flag lists are deferred to `gh stack <command> --help` instead of being inlined. Minor gap: the exit-codes table and the TUI-trap details are reference-style material inlined in SKILL.md, and there is no `references/` or `scripts/` bundle listing to aid discovery of the scripts beyond their in-text mentions.

4 / 5

Total

19

/

20

Passed

Description

92%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A model description: concrete third-person action list plus an explicit 'Use whenever' clause with natural trigger phrases and a distinctive situational trigger. Only margin for improvement is broader synonym coverage in the trigger list.

DimensionReasoningScore

Specificity

It enumerates concrete capabilities in third person — "find a PR's stack, report and update what is stale, read each layer's checks, resolve conflicts, approve the stack, add a PR on top, split work into a stack, merge" — which comprehensively mirrors the body's workflows. This matches the 5 anchor (multiple specific concrete actions, comprehensive) rather than 4, which would imply minor coverage gaps; none are evident against the body.

5 / 5

Completeness

Both what and when are explicit: the action list answers what the skill does, and "Use whenever a PR or branch's base is not trunk, or for "stack", "PR on top of", "restack", "approve the stack"." provides concrete trigger phrases. This is a direct match for the 5 anchor.

5 / 5

Trigger Term Quality

Good natural-phrase coverage: "stack", "PR on top of", "restack", "approve the stack", plus the situational "base is not trunk" trigger. A few plausible synonyms are absent (e.g. "stacked PRs", "chained/dependent PRs"), which keeps it at the 4 anchor (good coverage, a few natural terms missing) rather than the 5 anchor's comprehensive synonym coverage.

4 / 5

Distinctiveness Conflict Risk

A clear niche — stacked PRs via the `gh stack` extension — with a precise mechanical trigger ("a PR or branch's base is not trunk") that a general PR skill would not claim, minimizing overlap. Fits the 5 anchor (clear niche, distinct triggers, minimal conflict).

5 / 5

Total

19

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

Total

15

/

16

Passed

Repository

aabuhijleh/abed-hub

Path

skills/gh-stack/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.