feat(issue): add AI-powered GitHub issue skill#21
Draft
eaebob wants to merge 1 commit into
Draft
Conversation
Adds an `issue` command/skill mirroring the `pr` pattern: drafts a structured issue title and body from a free-text description with the LLM (detecting bug report vs. feature request), then creates it via `gh issue create`. Wires the full vertical slice: core `issue()`/`applyIssue()`, the `createIssue` gh infra wrapper, the model-router tier, the `gw issue` CLI command, the Claude Code SKILL.md + runner, docs, and the subprocess-argument-safety test required by CONTRIBUTING.
747ccc2 to
9461713
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a new
issuecommand/skill that mirrors the existingprpattern: it drafts a structured GitHub issue (title + body) from a free-text description using the LLM — detecting whether the input is a bug report or a feature request — and then creates the issue viagh issue create.This rounds out the toolbelt alongside
commit/review/pr/release, available in both distribution modes (thegw issueCLI command and the Claude Codeissueskill).Changes
commands/issue.ts(issue()drafting +applyIssue()),createIssue()gh wrapper ininfra/github.ts,issue: "fast"in the model-router, and the matching exports inindex.ts.gw issue "<description>"command (commands/issue.ts+ registration inprogram.ts).skills/issue/SKILL.md, thescripts/issue.tsrunner, and itstsupentry. Rebuiltdist/scripts/*(tracked build artifacts).docs/.../commands/issue.md(auto-listed in the Commands sidebar) and a README table entry.--label a,b,--assignee user(repeatable/comma-separated),--prompt "<text>",--apply.Test Plan
npm run lint— clean across all workspaces.npm run build— green;packages/skills/dist/scripts/issue.jsgenerated.createIssuesubprocess-argument-safety (array, never a shell string) per CONTRIBUTING,model-routerissue tier, andrun-cli(mock updated for the new exports).INVALID_INTENTwhen no description is given.