From sdd
Retroactively groups existing issues from GitHub, GitLab, Jira, Linear into native projects based on spec references. Use for organizing sprint issues into boards.
npx claudepluginhub joestump/claude-plugin-sdd --plugin sddThis skill uses the workspace's default tool permissions.
<!-- Governing: ADR-0015 (Markdown-Native Configuration), SPEC-0014 REQ "Config Resolution Pattern" -->
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Guides code writing, review, and refactoring with Karpathy-inspired rules to avoid overcomplication, ensure simplicity, surgical changes, and verifiable success criteria.
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Share bugs, ideas, or general feedback.
You are retroactively grouping existing tracker issues into tracker-native projects and enriching project workspaces. You use a three-tier intervention model that lets the operator control how invasive the changes are. See ADR-0012 and SPEC-0011.
Resolve artifact paths: Follow the Artifact Path Resolution pattern from references/shared-patterns.md to determine the spec directory. If $ARGUMENTS contains --module <name>, resolve paths relative to that module. The resolved spec directory is {spec-dir}.
Parse arguments: Extract from $ARGUMENTS:
SPEC-0007) or capability directory name--project <name>: Use a single combined project with this name for all issues. Default: per-epic.--dry-run: Preview what would be created without making changes. Default: off.--module <name>: Resolve artifact paths relative to the named module. Default: none.If no spec identifier is provided, list available specs by globbing {spec-dir}/*/spec.md, read the title from each, and use AskUserQuestion to ask which spec to organize.
Resolve spec: Follow the plugin's references/shared-patterns.md § "Spec Resolution" (which uses {spec-dir} from the Artifact Path Resolution pattern).
Read spec: Read {spec-dir}/{capability-name}/spec.md and design.md to understand the spec number, requirement names, and architecture. Validate spec pairing per references/shared-patterns.md § "Spec Pairing Validation".
Detect tracker: Follow the "Config Resolution" and "Tracker Detection" flows in the plugin's references/shared-patterns.md. Also read Projects settings from the ### SDD Configuration section in CLAUDE.md for cached project IDs and enrichment config (Views, Columns, Iteration Weeks). If no tracker is found, error — projects require a tracker.
Find existing issues: Search the tracker for issues whose body references the spec number.
gh issue list --search "SPEC-XXXX" --json number,title,body,labels --limit 100ToolSearch to discover list_repo_issues or similar)glab issue list --search "SPEC-XXXX"Identify epics vs stories: Classify each found issue:
epic labelAssess project state (Governing: SPEC-0011 REQ "Organize Three-Tier Intervention"):
For each project (existing or to-be-created), assess its current state:
### Branch and ### PR Convention sections present in issue bodies?Present findings to the operator and offer three intervention tiers via AskUserQuestion:
(a) Leave as-is: Report the current state and exit. No changes made.
(b) Restructure workspace only: Add/fix project-level structure without touching any issues:
(c) Complete refactor: All tier (b) changes PLUS:
references/shared-patterns.md)### Branch and ### PR Convention sections (if missing)Execute chosen tier: Carry out the selected intervention. All enrichment steps use graceful degradation: if a feature is unavailable for the tracker, skip and log "Skipped {step}: {tracker} does not support {feature}".
GitHub workspace enrichment (tier b/c):
Projects > Iteration Weeks (default: 2 weeks)Projects > Views (default: "All Work" table, "Board" board, "Roadmap" roadmap)Gitea workspace enrichment (tier b/c):
Projects > Columns (default: Todo, In Progress, In Review, Done)Tier (c) additional steps:
references/shared-patterns.md)### Branch / ### PR Convention to issue bodies that lack them (same logic as /sdd:enrich)--dry-run mode: If --dry-run is set, report the assessment and what WOULD be done at each tier, but don't modify anything.
Report results: Provide a summary:
Projects section was updated with project IDsBefore discovering existing issues (Step 5), sync the {repo}-issues qmd collection from the tracker so the local cache reflects current issue state. This is Tier 4 of the freshness model: always sync at consumer entry, subject to a 5-minute deduplication window.
.sdd/issues/_meta.json (per references/tracker-sync.md § "Cursor Management"). If last_sync is within the last 5 minutes, skip the sync and proceed silently.references/tracker-sync.md with the cursor for incremental fetch. Print: "Syncing N issues from {tracker}…".references/tracker-sync.md § "Failure Modes and Degradation" and proceed with live tracker queries (the pre-v5 path) for this run. Do NOT block; organize is the user's primary intent.After tier (c) interventions modify issue bodies (labels, project links surfaced in body, etc.), trigger a narrow re-sync of {repo}-issues so the qmd index reflects the changes. Use the canonical update pattern from references/qmd-helpers.md § "Update Patterns".
qmd update.{repo}-issues — run /sdd:index update manually") and report the organize step itself as successful.If tier (a) (report-only) or tier (b) (project-level only, no issue-content changes) was selected, skip Step 12 — there's nothing to re-index for {repo}-issues.
This skill reads and writes the Projects subsection of the ### SDD Configuration section in CLAUDE.md. See the plugin's references/shared-patterns.md § "Config Resolution" for the canonical format and defaults. All keys are optional with sensible defaults. When writing, merge — do not overwrite.
ToolSearch for project tools at runtimereferences/shared-patterns.md to read configuration from CLAUDE.mdProjects for cached project IDs before creatinggh project link, Gitea)references/shared-patterns.md) for all label applications in tier (c) (Governing: SPEC-0011 REQ "Auto-Create Labels")--review support (utility skill){repo}-issues after tier (c) interventions per Step 12 — best-effort, silent on success (Governing: ADR-0026, SPEC-0019 REQ "Tier 1 Mutation-Aware Updates")