github-issue

A complete workflow for taking a GitHub issue from setup through implementation and a pull request. A pull request is a proposed code change for review and merging.

In plain words
What is it for?
Use it when starting work on a specific issue to create the workspace, plan and implement the fix, run tests, open a pull request, and tear down the temporary setup.
Why use it?
It organizes the required work around an issue, including a separate worktree, development setup, tests, planning, review, and cleanup.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/softinio/nix-config/github-issue
Any agent
npx skills add softinio/nix-config --skill github-issue
Clone the repo
git clone --depth 1 https://github.com/softinio/nix-config

Made for: Claude Code, Codex.

Per session 72 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,439 The whole file, excluding the scripts and references it only reads on demand.
Security scan C 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00072 $0.04439
Opus 5 $0.00036 $0.02219
Sonnet 5 $0.00014 $0.00888
Haiku 4.5 $0.00007 $0.00444

Measured 2d ago against content hash c0a56f288b23, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade C, and why

github-issue scanned grade C with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Recursive force deletehighDestructive command

rm -rf with a variable or a broad path is one typo away from removing the wrong tree.

rm -rf .claude/worktrees/{issue-number}-{slug}
programs/claude/skills/github-issue/SKILL.md · 363 lines

How it starts

The opening of the file, as written. The whole thing — 363 lines — stays where its author put it; the contents beside it link to each section on GitHub.

GitHub Issue Workflow

Full lifecycle skill for working on a GitHub issue: scaffolding, planning, implementation, PR creation, and teardown.

The issue tracker is GitHub itself, driven entirely through the gh CLI — there is no separate tracker to keep in sync. Everything the workflow records (plans, decisions, completion notes) goes on the issue or the PR.


Phase 0 — Issue & Worktree Setup

Phase 0 is mandatory and sequential. Execute Steps 1 → 6 in order, and finish all of them before any Phase 1 exploration or planning.

  • At the start of Phase 0, create one task per step (Steps 1, 1.5, 2, 3, 4, 5, 6) with TaskCreate, and flip each to in_progress then completed as you go. A skipped step must be visibly impossible.
  • Never silently skip a step. If a step genuinely does not apply, name the step and state why before continuing (e.g. "Step 5: no env setup needed, this repo has no flake").
  • The user supplying context up front — base branch, approach, constraints — feeds Step 1.5. It does not authorize jumping ahead to planning; you still run Steps 2 → 6.
  • Step 6 is easy to skip. Run herdr-workspace-layout open before leaving Phase 0. It is a no-op outside herdr, so there is no condition to evaluate first.

Step 1: Resolve the issue

If $ARGUMENTS contains an issue number (123, #123) or an issue URL:

gh issue view {number} --json number,title,body,state,labels,assignees,url
  • For a URL from another repo, pass --repo {owner}/{repo} and carry that --repo through every later gh call.
  • Display the issue title and state, and confirm with the user before proceeding.
  • If the issue is already closed, say so and ask whether to continue.

If no argument is provided:

  • Ask the user for a title and brief description.
  • Confirm the target repo (gh repo view --json nameWithOwner for the current one).
  • Create it, assigned to the user:
    gh issue create --title "{title}" --body "{description}" --assignee @me
    
  • Confirm the new issue number and URL before continuing.

Read the full file on GitHub · 363 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 363 lines · 72 tokens per session scan C c0a56f288b23

Subscribe to this mod's changes

github-issue is a skill published in the GitHub repository softinio/nix-config (11 stars, last pushed 17d ago), licensed MIT. It adds 72 tokens to every session and 4,439 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.