Create a GitHub issue for a SpecWeave increment. Generates issue from increment specs with task checklist, labels, and milestone. Links issue to increment metadata.
Creates a GitHub issue for a SpecWeave increment from living docs. Use after syncing specs to generate issues with task checklists, labels, and milestone links.
/plugin marketplace add anton-abyzov/specweave/plugin install sw-github@specweaveCreate a GitHub issue for the specified SpecWeave increment.
GitHub issue content is generated FROM living docs. If living docs don't exist or are stale, the issue will be incomplete.
You MUST run /sw:sync-specs BEFORE creating (unless using /sw:sync-progress):
# STEP 1: Ensure living docs exist and are current
/sw:sync-specs <increment-id>
# STEP 2: Then create GitHub issue
/sw-github:create <increment-id>
Why?
.specweave/docs/internal/specs/FS-XXX/Note: /sw:sync-progress calls sync-specs automatically before creating issues.
Usage: /sw-github:create <increment-id>
/sw:github:create-issue <increment-id> [options]
increment-id: Increment ID (e.g., 0004 or 0004-plugin-architecture)--force: Force create even if issue already exists--labels: Comma-separated labels (default: from config)--milestone: Milestone name (default: from config)--assignee: Assign to user (@username)--project: Add to GitHub project (project number)# Basic usage
/sw:github:create-issue 0004
# With custom labels
/sw:github:create-issue 0004 --labels "urgent,backend"
# Assign to developer
/sw:github:create-issue 0004 --assignee @developer1
# Add to project
/sw:github:create-issue 0004 --project 3
# Force recreate
/sw:github:create-issue 0004 --force
Loads Increment
.specweave/increments/<increment-id>/spec.md, plan.md, tasks.md.metadata.yaml for existing issueDetects Repository
owner/repoGenerates Issue Body
spec.mdtasks.mdCreates GitHub Issue (via GitHub CLI)
gh issue createUpdates Metadata
.metadata.yamlReports Result
gh) installed and authenticatedSettings from .specweave/config.yaml:
plugins:
settings:
specweave-github:
repo: "owner/repo" # Auto-detected from git remote
default_labels:
- "specweave"
- "increment"
milestone: "v0.4.0" # Optional
Increment not found:
❌ Error: Increment '0004' not found
Check: ls .specweave/increments/
Issue already exists:
⚠️ GitHub issue already exists for increment 0004
Issue #130: https://github.com/owner/repo/issues/130
Use --force to recreate (will close existing issue first).
GitHub CLI not authenticated:
❌ Error: GitHub CLI not authenticated
Please run: gh auth login
Then retry this command.
No write permissions:
❌ Error: Insufficient permissions
Required: Write access to owner/repo
Contact repository admin to request access.
This command invokes the github-manager agent via the Task tool:
const agent = new TaskAgent('github-manager', {
prompt: `Create GitHub issue for increment ${incrementId}`,
context: {
incrementPath: `.specweave/increments/${incrementId}`,
options: { force, labels, milestone, assignee, project }
}
});
await agent.execute();
The agent handles:
gh CLI)📦 Creating GitHub issue for increment 0004...
✓ Increment loaded: 0004-plugin-architecture
✓ Repository detected: owner/repo
✓ Issue body generated (2,500 characters)
Creating issue...
✓ Issue #130 created
✓ Labels applied: specweave, increment, P1
✓ Milestone set: v0.4.0
✓ Metadata updated
✅ GitHub Issue Created! (❌ DEPRECATED FORMAT)
Issue #130: [Increment 0004] Plugin Architecture # ❌ DEPRECATED
URL: https://github.com/owner/repo/issues/130
Auto-sync enabled: progress will update automatically after each task.
❌ Failed to create GitHub issue
Error: API rate limit exceeded
Rate limit resets at: 2025-10-30 15:30:00
Options:
1. Wait 30 minutes
2. Use authenticated token (higher limit)
Run /sw:github:status 0004 to check sync state.
/sw:github:sync <increment-id>: Update existing issue/sw:github:close-issue <increment-id>: Close issue/sw:github:status <increment-id>: Check sync statusAuto-Create: Enable auto_create_issue: true in config to auto-create issues when running /sw:inc
Templates: Customize issue template in .specweave/github/issue-template.md
Labels: Use labels for filtering in GitHub Projects:
specweave: All SpecWeave incrementsincrement: Differentiate from regular issuesP0/P1/P2/P3: Priority levelsMilestones: Group increments by release milestone for progress tracking
Projects: Add issues to GitHub Projects for Kanban-style tracking
Create .specweave/github/issue-template.md:
# [Increment {{id}}] {{title}}
{{summary}}
## Details
- **Spec**: [spec.md]({{spec_url}})
- **Priority**: {{priority}}
- **Duration**: {{duration}}
## Tasks
{{tasks}}
---
_Auto-created by SpecWeave_
Create issues for multiple increments:
for i in 0004 0005 0006; do
/sw:github:create-issue $i
done
Or using a script:
# Create issues for all increments in backlog
ls .specweave/increments/_backlog/ | while read inc; do
/sw:github:create-issue $inc
done
Preview issue body before creating:
/sw:github:create-issue 0004 --dry-run
Output:
📄 Preview: Issue body for increment 0004 (❌ DEPRECATED FORMAT)
Title: [Increment 0004] Plugin Architecture # ❌ DEPRECATED
Labels: specweave, increment, P1
Milestone: v0.4.0
Body:
---
# [Increment 0004] Plugin Architecture # ❌ DEPRECATED
**Status**: Planning
**Priority**: P1
## Executive Summary
Implement a modular plugin architecture for SpecWeave...
[... full body ...]
---
Run without --dry-run to create this issue.
Command: /sw:github:create-issue
Plugin: specweave-github
Agent: github-manager
Version: 1.0.0
Last Updated: 2025-10-30