git-issue-start

git-issue-start is a skill for Claude Code, Codex from pivoshenko/pivoshenko.ai. It costs 174 tokens per session (1,578 once invoked), scanned A, original, MIT.

A GitHub issue start workflow that assigns an eligible issue, marks it in progress when supported, creates a suitable branch, and checks that branch out. It stops instead of guessing when the issue is closed, belongs to someone else, or is a larger specification with sub-issues.

In plain words
What is it for?
Use it to start work from an issue number or topic, resolve matching issues, derive a conventional branch name, and prepare the local checkout.
Why use it?
It removes the error-prone setup work of finding the right issue and starting work from the wrong branch or assignment. It also prevents treating a parent specification as one piece of implementation work.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to start work from an issue number or topic, resolve matching issues, derive a conventional branch name, and prepare the local checkout.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/pivoshenko/pivoshenko.ai/git-issue-start
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.

Any agent
npx skills add pivoshenko/pivoshenko.ai --skill git-issue-start
Clone the repo
git clone --depth 1 https://github.com/pivoshenko/pivoshenko.ai

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for git-issue-start

README.md
[![agentmods](https://agentmods.dev/badge/skills/pivoshenko/pivoshenko.ai/git-issue-start/github.svg)](https://agentmods.dev/skills/pivoshenko/pivoshenko.ai/git-issue-start)
Your own site
<a href="https://agentmods.dev/skills/pivoshenko/pivoshenko.ai/git-issue-start"><img src="https://agentmods.dev/badge/skills/pivoshenko/pivoshenko.ai/git-issue-start/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for git-issue-start

Your own site · 80×15
<a href="https://agentmods.dev/skills/pivoshenko/pivoshenko.ai/git-issue-start"><img src="https://agentmods.dev/badge/skills/pivoshenko/pivoshenko.ai/git-issue-start.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 174 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,578 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.00174 $0.01578
Opus 5.5 $0.00070 $0.00631
Sonnet 5.5 $0.00035 $0.00316
Haiku 4.5 $0.00017 $0.00158

Measured 29d ago against content hash eac9a2983064, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

git-issue-start scanned grade A with 0 findings 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 29d 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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/git-issue-start/SKILL.md · 84 lines

How it starts

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

Git Issue Start

Issue -> assign -> branch -> checked out. No confirm.

Flow

  1. Resolve the issue:

    • Number given -> gh issue view <n> --json number,title,labels,state,assignees,body
    • Title or topic given ("the oauth issue") -> gh issue list --search "<terms>" --state open --json number,title --limit 10, then view the match. Exactly one hit -> take it. Several -> list them, ask which. None -> stop, say so. Why -> guessing an issue number assigns the wrong person to the wrong work and it is invisible until someone reads the tracker
  2. state == CLOSED -> stop. Surface number, title, and that it is closed. Never reopen here

  3. The issue has sub-issues (gh issue view <n> --json subIssues -q '.subIssues.nodes | length' > 0) -> stop, list the open ones, and ask which to start. Then run this skill again on that number. Why -> a parent's work is its sub-issues, one branch each; a single branch and a single assignment for the whole tree is the wrong unit

  4. Assigned to someone else -> stop and ask before taking it. Own login from gh api user -q .login; already yours -> proceed, assignment step is a no-op. Why -> an assignee is a claim by a person, and silently overwriting it is how two people ship the same fix

  5. Dirty tree -> stop. Tell the user to stash or commit first. Same reasoning as git-branch-create step 2: checkout -b carries staged and unstaged changes into the new branch silently

  6. Derive the branch type from the issue's type: * label:

    Issue label Branch type
    type: bug fix
    type: enhancement feat
    type: documentation docs
    type: maintenance chore
    type: security fix
    type: dependencies build

    Bare names count too (bug, enhancement, documentation, maintenance, security, dependencies, deps) - same row. type: breaking carries no branch type of its own; fall through

    No type label -> read the title's conventional prefix (fix(api): ... -> fix). No prefix either -> infer from title + body against git-commit's Type Pick table. Two type labels -> pick the dominant one, never compound the branch name

  7. Name and base follow git-branch-create exactly - its Naming section and its base-detection incantation. Do not restate either. The desc is the issue title, kebab-cased, verb made imperative present, with the whole <type>/<desc> name 60 chars or fewer; over -> cut per that skill's desc rules, never truncate mid-word

  8. Name conflict check, before the tracker changes: git show-ref --verify --quiet refs/heads/<name> succeeds -> the branch already exists; stop, surface the conflict, no overwrite. Why -> checking after assignment would halt the run with the issue assigned and labelled in progress but no branch created - the exact half-state the Rules forbid

  9. Assign to self: gh issue edit <n> --add-assignee @me

  10. In-progress label, only if one already exists. Fetch the repo's labels once per run per canon label resolution:

    gh label list --limit 200 --json name -q '.[].name'
    

    Chain, first existing name wins: status: in progress -> status: in-progress -> in progress -> in-progress -> wip. Whole chain missing -> skip the step silently, no output, no error. Never gh label create. Why -> this skill syncs globally and runs on repos with different label sets; the user's own taxonomy has no in-progress label at all, so absent is the normal case, not a failure

  11. Create + checkout per git-branch-create step 5

  12. Record the issue on the branch:

    git config branch.<name>.issue <n>
    

    Why -> the branch name carries no ticket id, and git-commit reads this key to write the Closes #<n> trailer. Skip it and the commit has no link back to the tracker. Not gh issue develop - the siblings read branch.<name>.issue, and develop's GitHub-side link carries no local key for git-commit and git-pr-create to read

  13. Print the report

Read the full file on GitHub · 84 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. 29d ago Changed eac9a2983064
  2. 1mo ago Changed 91cc1a18cde0
  3. 1mo ago First seen · 84 lines · 174 tokens per session scan A 8d87088ca8ad

Subscribe to this mod's changes

git-issue-start is a skill published in the GitHub repository pivoshenko/pivoshenko.ai (6 stars, last pushed yesterday), licensed MIT. It adds 174 tokens to every session and 1,578 once invoked, about $0.0007 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-14.

Related

Other skills, from other repositories

pod-init

Initialize CocoPlus project bundle in the current directory. Creates .cocoplus/ directory structure, copies all templates, initializes AGENTS.md, project.md, flow.json, and creates the initial git commit. Run this once per project before using any other CocoPlus command.

Snowflake-Labs/cocoplus · 57 tokens

friction-log

File contributor or agent papercuts as GitHub issues labeled friction, or investigate those issues as the daily friction-log Cloud Agent. Use when you hit repo friction, when asked to log friction, or when spawned to resolve open friction issues.

educlopez/ui-craft · 52 tokens

github-operations

GitHub CLI operations for issues, PRs, milestones, and Projects v2. Covers gh commands, REST API patterns, and automation scripts. Use when managing GitHub issues, PRs, milestones, or Projects with gh.

yonatangross/orchestkit · 50 tokens

github-ops

GitHub repository operations — issues, PRs, code search, and config-as-code workflows. Use when creating a GitHub issue for a network finding, opening a pull request for a config change, searching repos for IP or VLAN references, or committing an audit report to a repository.

automateyournetwork/netclaw · 61 tokens

split-and-ship

Execute an approved split plan, shipping each change group separately as its own branch and PR or as sequential commits on the current branch. Use when the user asks to "split and ship", "ship the split plan", "create separate PRs", or "split changes into branches".

tobihagemann/turbo · 61 tokens

jira-execute

Implement a Jira issue, open a pull request, and report the work on the issue. Insert into the prompt of a Jira column rule that does the building.

decocms/studio · 36 tokens