بنقرة واحدة
gh-create
Create GitHub issues or triage existing ones. Works with any repo - auto-detects from current directory.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Create GitHub issues or triage existing ones. Works with any repo - auto-detects from current directory.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Use when an epic or milestone may have drifted from reality - checklist items that could be stale, issues possibly in the wrong milestone, a "gated on
Pick up GitHub issues and develop them with worktree isolation. Works with any repo - auto-detects from current directory.
This skill helps Claude write secure web applications. Use when working on any web application to ensure security best practices are followed.
| name | gh-create |
| description | Create GitHub issues or triage existing ones. Works with any repo - auto-detects from current directory. |
Create well-formed GitHub Issues or triage existing ones for the ready queue. Works with any GitHub repository.
Arguments: $ARGUMENTS (optional)
42): Triage existing issue"Fix toast bug"): Quick captureREPO=$(gh repo view --json nameWithOwner -q .nameWithOwner 2>/dev/null)
if [ -z "$REPO" ]; then
echo "Not in a GitHub repository. Please specify repo or navigate to one."
exit 1
fi
START
│
├─ $ARGUMENTS empty? ──yes──▶ INTERACTIVE MODE
│
├─ $ARGUMENTS is number? ──yes──▶ TRIAGE MODE
│
└─ $ARGUMENTS is text? ──yes──▶ QUICK CAPTURE MODE
Use AskUserQuestion:
{
"questions": [
{
"header": "Issue type",
"question": "What type of issue are you creating?",
"multiSelect": false,
"options": [
{ "label": "Bug", "description": "Something is broken" },
{ "label": "Feature", "description": "New capability" },
{ "label": "Chore", "description": "Refactoring, docs, maintenance" },
{ "label": "Spike", "description": "Research or investigation" }
]
}
]
}
Ask for one-line summary.
gh issue list --search "<summary keywords>" --limit 5 --json number,title,state
If matches, use AskUserQuestion with dynamic options from results + "None of these".
Bug: Expected behavior, actual behavior, steps to reproduce (optional) Feature: Problem it solves, proposed solution (optional) Chore: What needs doing, why Spike: Research question, deliverables, time box
Prompt for testable criteria, format as - [ ] <criterion>.
For bug/feature/chore (skip for spike).
Fetch repo labels dynamically:
gh label list --json name,description
Filter to area:*, size:*, priority:* patterns. Use keyword inference to suggest, present via AskUserQuestion with multi-select.
If repo has no matching labels: Skip label selection, create issue without labels.
Use AskUserQuestion: Normal (default), Urgent, High, Low.
gh api repos/:owner/:repo/milestones --jq '[.[] | select(.state=="open")] | sort_by(.title)'
Present available milestones via AskUserQuestion, or "None" if no milestones exist.
Show complete preview, then AskUserQuestion: Create / Edit / Cancel.
gh issue create \
--title "<type>: <summary>" \
--body "<generated body>" \
--label "<labels>" \
--milestone "<milestone>"
AskUserQuestion: "Start implementation?" → invoke /gh-dev <number> or end.
gh issue view $ARGUMENTS --json number,title,body,labels,comments,milestone
Check for: Acceptance Criteria, Test Requirements, size label, area label, type label.
Display status, then AskUserQuestion: Fill missing / Skip to labels / Cancel.
Same flow as Interactive mode for missing sections.
Same as Interactive Step 12.
Extract text from $ARGUMENTS.
Use keyword inference (see tables below).
Same as Interactive, but only 3 results.
Brief preview, AskUserQuestion: Create / Cancel.
gh issue create \
--title "<type>: <captured text>" \
--body "Quick capture. Needs triage.
## Captured Note
<user's input>
---
*Logged via /gh-create quick capture*" \
--label "<type>,triage,<area if detected>"
| Keywords | Label |
|---|---|
| fix, bug, broken, error, crash, fails, wrong | bug |
| add, implement, new, support, enable, feature | feature |
| refactor, clean, update, docs, rename, move | chore |
| research, investigate, explore, spike, POC | spike |
| Keywords | Label |
|---|---|
| ui, button, modal, toast, menu, dialog | area:ui |
| api, endpoint, request, response | area:api |
| db, database, query, migration | area:db |
| test, spec, coverage | area:testing |
| docs, readme, documentation | area:docs |
Note: Only suggest area labels that actually exist in the repo.
| Type | Default |
|---|---|
| bug | size:small |
| feature | size:medium |
| chore | size:small |
| spike | size:medium |
## Summary
<description>
## Expected Behavior
<what should happen>
## Actual Behavior
<what's broken>
## Steps to Reproduce
<if provided>
## Acceptance Criteria
- [ ] <criterion>
## Test Requirements
- [ ] <test>
## Summary
<description>
## Problem
<what problem this solves>
## Proposed Solution
<if provided>
## Acceptance Criteria
- [ ] <criterion>
## Test Requirements
- [ ] <test>
## Summary
<description>
## Motivation
<why needed>
## Acceptance Criteria
- [ ] <criterion>
## Research Question
<question>
## Context
<why needed>
## Expected Deliverables
- [ ] <deliverable>
## Time Box
<estimate>
If the project has a ## GitHub Workflow section in CLAUDE.md, read it for:
| Scenario | Response |
|---|---|
| Not in git repo | "Not in a GitHub repository." |
gh not authenticated | "GitHub CLI not authenticated. Run gh auth login." |
| Issue not found | "Issue #N not found." |
| User cancels | "Issue creation cancelled." |