Repo scan 2 jira
Scan a repo scope for actionable work items (bugs, TODO/FIXME, doc inconsistencies, performance/maintainability risks) and emit Jira-ready issues in a strict JSON schema. Use when asked to scan a specific module/path/page/route and produce evidence-backed Jira tickets.From its SKILL.md
npx -y skills add ReGYChang/repo-scan-2-jiraAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
3.1 KB, 680 tokens by cl100k_base, as published. Nobody here has run it
Repo Scan 2 Jira
Overview
Generate Jira-ready issues from a constrained scope in this monorepo. Operate on evidence only and emit JSON that matches schema.json.
Non-negotiable Rules
- Obey scope strictly: scan only target.paths and the specified module.
- Require evidence for every issue: file:line plus snippet or log excerpt.
- Make issues executable: include what/why/how, acceptance criteria, and definition of done.
- No speculative tickets. If reproduction is missing, create a Task to add repro/logging/tests.
- Output JSON only; match schema.json exactly.
- Use stable dedupeKey values across runs.
Arguments Contract
Use a structured Args block.
Required fields:
- target.module: docs | frontend | backend | prototype | cross
- target.paths: array of glob-ish paths (scope boundary)
- target.keywords: optional array of strings
- target.routes_or_pages: optional array of strings
- focus.issue_types: array of Bug | Task | Improvement
- focus.signals: array of TODO, FIXME, bug, doc_inconsistency, perf, lint, test_failures
- focus.depth: quick | standard | deep
- jira.project_key, jira.component, jira.labels_prefix; optional jira.epic_key
- output.format: json (required), optional markdown_report
- output.max_issues, output.min_confidence
- loop (optional): { mode: ralph, stop_condition: no_new_issues_in_scope | max_iterations, iteration_budget: number }
If target.paths is empty, stop and request scope.
Workflow
- Validate Args and scope. Refuse to scan outside target.paths.
- Collect signals inside scope only.
- Use scripts/collect-signals.sh for TODO/FIXME/BUG/PERF markers and keyword hits.
- If lint/test logs are provided, extract failures as evidence.
- Correlate signals into distinct issues and dedupe aggressively.
- For each issue, include evidence, reproduction (when applicable), acceptance criteria, and DoD.
- Compute stable dedupeKey values. Preferred format:
component:path:line:hash
- Hash should be stable across runs (example: sha1 of component|path|line|summary).
- Emit JSON only, matching schema.json.
Ralph Loop Mode
When loop.mode is ralph:
- Run a fresh scan for the same scope.
- Generate issues and compute dedupeKey values.
- Compare with prior output stored at .repo-scan-2-jira/last.json.
- Stop when no new dedupeKeys appear or iteration_budget is reached.
- Persist the latest output to .repo-scan-2-jira/last.json.
Output Schema
Follow schema.json exactly. Do not emit any extra keys or prose.
Prompt Template
Use prompts/invoke.txt as the wrapper prompt. Only edit the Args block.
Scripts
- scripts/collect-signals.sh: scoped ripgrep for TODO/FIXME/BUG/PERF/keywords, optional log parsing.
- scripts/dedupe.js: fill missing dedupeKey values and optionally filter out issues found in a prior run.
- scripts/jira-bulk-payload.js: convert output JSON to Jira bulk issue payload.
What ships with it: 7 files
16.5 KB alongside SKILL.md, 3 of them executable
prompts/
- invoke.txt1.4 KB
- triage.txt618 B
scripts/
- collect-signals.shruns2.9 KB
- dedupe.jsruns2.5 KB
- jira-bulk-payload.jsruns3.7 KB
- README.md1.9 KB
- schema.json3.4 KB