plugins/specweave/skills/import/SKILL.md
Import external issues from GitHub, Jira, or Azure DevOps and create SpecWeave increments with platform suffixes (G/J/A). Supports filtering and duplicate prevention. Use when saying "import issues", "pull from github", "grab jira issues", or "import from ado".
npx skillsauth add anton-abyzov/specweave plugins/specweave/skills/importInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Import issues from external trackers (GitHub, JIRA, Azure DevOps) and create SpecWeave increments with platform-specific suffixes: G (GitHub), J (JIRA), A (ADO).
.specweave/config.json — check sync sectionsync.github, sync.jira, sync.ado)sw:sync-setup to connect GitHub, JIRA, or ADO."sw:import github), use thatAsk user for optional filters (or parse from arguments):
If user provides no filters, use defaults: open issues, last 3 months, max 20.
Read credentials from .env or environment:
GITHUB_TOKEN or gh auth statusJIRA_EMAIL + JIRA_API_TOKEN + domain from configADO_PAT + org/project from configUse the platform's API to fetch issues matching filters:
gh api repos/{owner}/{repo}/issues with query paramsParse results into a display-friendly list
Present issues in a numbered table:
# | ID | Title | Status | Priority | Labels
--|-----------|--------------------------------|--------|----------|--------
1 | #123 | Fix login redirect loop | open | P1 | bug
2 | #456 | Add dark mode support | open | P2 | feature
3 | #789 | Update API documentation | open | P3 | docs
Ask user to select which issues to import:
For each selected issue, check if already imported:
Generate the canonical external_ref string:
github#{owner}/{repo}#{issue_number}jira#{project_key}#{issue_key}ado#{org}/{project}#{work_item_id}Scan ALL .specweave/increments/**/metadata.json files for matching external_ref
For duplicates found:
For each non-duplicate selected issue:
Generate increment ID with platform suffix:
0271G-fix-login-bug0272J-payment-flow0273A-ci-pipelineCreate increment files via createIncrementTemplates() with externalSource:
metadata.json — includes external_ref, origin: "external", source_platformspec.md — pre-filled with issue title, description, and acceptance criteriaplan.md — template (to be completed via architect skill)tasks.md — derived from acceptance criteria if available, template otherwiseMap priority: Use external priority if available, default to P2
Map type: bug → bug, feature/epic/story → feature
Display results:
Import Complete
===============
Created:
- 0271G-fix-login-bug (from GitHub #123)
- 0273A-ci-pipeline (from ADO #789)
Skipped (duplicates):
- GitHub #456 — already imported as 0200G-dark-mode
Errors: none
Next steps:
- sw:do 0271G — Start working on first import
- sw:auto 0271G — Run autonomously
| Platform | Suffix | Example |
|----------|--------|---------|
| GitHub | G | 0271G-fix-login-bug |
| JIRA | J | 0272J-payment-flow |
| ADO | A | 0273A-ci-pipeline |
| Legacy | E | 0111E-old-import (backwards compat) |
Tell user "No matching issues found. Try adjusting filters." Suggest broader search.
Report the error clearly. Suggest checking credentials: "Run sw:sync-setup to verify credentials."
Create spec with title only and mark as needs-review.
Create template-style tasks.md with placeholder tasks.
Report rate limit and suggest waiting or reducing the import batch size.
If in an umbrella project with multiple repos under repositories/, ask which repo's .specweave/ should receive the increment.
Required in .specweave/config.json:
{
"sync": {
"enabled": true,
"github": { "enabled": true, "owner": "...", "repo": "..." },
"jira": { "enabled": true, "domain": "...", "projectKey": "..." },
"ado": { "enabled": true, "organization": "...", "project": "..." }
}
}
Credentials in .env (never committed):
GITHUB_TOKEN=ghp_...
[email protected]
JIRA_API_TOKEN=...
ADO_PAT=...
tools
Generate AI videos from text prompts or images. Supports Google Veo 3.1 and Pollinations.ai (free). Use when generating video, creating animations, text-to-video, AI video, video generation, make clip, animate.
tools
Validate increment with rule-based checks and AI quality assessment. Use when saying "validate", "check quality", or "verify increment".
tools
Create and manage umbrella workspaces for multi-repo projects. Activate when the user wants to: create umbrella, umbrella init, wrap in umbrella, create workspace, setup multi-repo, migrate repos to umbrella, umbrella create, new workspace, restructure into umbrella, "wrap this repo", "create umbrella for these repos", "setup workspace with repos", "move repos into umbrella". Do NOT activate for: add a repo to existing umbrella (use sw:get), add a feature, add an increment, clone a repo (use sw:get).
tools
--- description: Merge completed parallel agent work and trigger GitHub sync per increment. Activates for: team merge, merge agents, combine work, team finish. --- # Team Merge **Verify all teammates completed, run quality gates, close increments, and trigger sync.** ## Usage ```bash sw:team-merge sw:team-merge --dry-run # Preview merge plan sw:team-merge --skip-sync # Merge without GitHub/JIRA sync ``` ## What This Skill Does 1. **Verify all teammates completed** -- bl