← ClaudeAtlas

issue-dup-findlisted

Scan all open issues in a Jira project and identify likely duplicates using semantic comparison. Produces a markdown report listing each suspected duplicate pair with a probability score and reasoning. Read-only — never modifies, links, or transitions tickets. Default project key is read from memory (`reference_jira_default_project.md`); accepts an override project key. Use when user says "find duplicates", "duplicate check", "dedupe issues", "find duplicate tickets", or invokes /issue-dup-find with or without a project key.
risadams/skills · ★ 2 · Data & Documents · score 66
Install: claude install-skill risadams/skills
# Issue Duplicate Finder Read-only scan of open issues in a Jira project to surface likely duplicates. Output is a markdown report — **no tickets are linked, transitioned, commented, or modified**. ## Input - **Project key** — resolved from memory (`reference_jira_default_project.md` → `**Default Jira project key:**`). If that memory entry is missing, prompt via `AskUserQuestion` for the key and save the answer back to that file before proceeding. Accept a per-invocation override if the user provides one (`/issue-dup-find ABC` or "find duplicates in PROJ") — the override always wins. - **Output destination** — chat by default. If the user specifies a file path (e.g. `C:\temp\dups.md`), also write the report there. If the user message is ambiguous, confirm the project key and output destination once before proceeding. ## Workflow ```text Duplicate scan progress: - [ ] Phase 1: Fetch open issues (paginated) - [ ] Phase 2: Cluster candidate pairs - [ ] Phase 3: Semantic comparison - [ ] Phase 4: Render report - [ ] Phase 5: Optional file write - [ ] Phase 6: Cleanup scratch folder ``` ### Phase 1 — Fetch open issues JQL: `project = {KEY} AND statusCategory != Done ORDER BY created DESC` Paginate `jira_search` until exhausted. Use `max_results: 100` per call and increment until the API returns fewer than `max_results` (or zero). Do not impose an artificial ceiling. For each issue capture: `key`, `summary`, `description` (first 1500 chars), `issuetype`, `status`, `compon