find-in-circleback
Answer "what did we say, decide, or promise" from Circleback meetings — search by attendee, company, tag, or date before keyword,…
Triage a GitHub issue into something actionable — reproduce the claim, find duplicates, judge severity, and apply labels, milestone, and assignee. Use when the user asks to triage an issue, sort the backlog, deal with new issues, check whether a bug is already reported, or says
Claude Code
$ npx -y skills add paradevai/paradev --skill issue-triage --agent claude-code
Codex
$ npx skills add paradevai/paradev --skill issue-triage -a codex -y
Cursor
$ npx skills add paradevai/paradev --skill issue-triage -a cursor -y
Gemini CLI
$ npx skills add paradevai/paradev --skill issue-triage -a gemini-cli -y
GitHub Copilot
$ npx skills add paradevai/paradev --skill issue-triage -a github-copilot -y
OpenCode
$ npx skills add paradevai/paradev --skill issue-triage -a opencode -y
Windsurf
$ npx skills add paradevai/paradev --skill issue-triage -a windsurf -y
name: issue-triage description: Triage a GitHub issue into something actionable — reproduce the claim, find duplicates, judge severity, and apply labels, milestone, and assignee. Use when the user asks to triage an issue, sort the backlog, deal with new issues, check whether a bug is already reported, or says "what should we do with this issue". argument-hint: issue URL or number, or a repo to sweep allowed-tools: mcp__github__*
Triage answers three questions in order: **is it real, is it new, and how urgent is it.** Labels and assignees come last. Applying labels without answering the first three is filing, not triage.
Fetch the issue and its comments. Separate what the reporter **observed** from what they **concluded**. "The API returns 500 when I pass an empty array" is an observation. "The validation layer is broken" is a conclusion, and it is frequently wrong even when the observation is right. Triage the observation.
Note what is missing: version, environment, reproduction steps, actual vs expected. You need these to judge severity, but ask for them only after step 2 — most issues that look under-specified turn out to be duplicates of a well-specified one.
This is the step that gets skipped and the one that saves the most work.
Search the issue's distinctive terms — an error string, a function name, a status code — rather than its title. Titles describe symptoms in the reporter's words; error text is stable across reporters. Search **closed** issues too: a bug closed as fixed and reported again means a regression, which is a different and more urgent finding than a new bug.
When you find a duplicate, comment linking both directions and close the newer one, unless the newer report contains a better reproduction — in which case close the older and carry the good repro forward.
If the repo is checked out and the issue has steps, run them. Record the result in a comment: what you ran, what happened, on what version.
If you cannot reproduce, say which specific step failed and what you saw instead. Never label something `cannot-reproduce` on the strength of not having tried — an unreproduced bug that gets closed and refiled three times costs more than the ten minutes of trying.
Ask what the user cannot do, and how many users are in that position.
workaround.
A loud thread is not evidence of severity. Ten reports of a cosmetic issue is still cosmetic; one report of silent data corruption is critical.
Apply the repo's existing labels — read them first rather than inventing new ones. Every issue gets a type (`bug`, `feature`, `docs`) and a severity. Add an area label only if the repo uses them and you are confident which area owns it; a wrong area label routes the issue to people who will ignore it, which is worse than no label.
Assign only when you can name the person by their ownership of the code, not by who last touched the file. Otherwise leave it unassigned and let the owning team pick it up.
a promise to a newcomer, and breaking it costs a contributor.
fifty issues in a minute did not judge any of them.
Paradev is an open-source Codex App and Conductor alternative. Orchestrate an army coding agents in parallel with your own subscriptions.
Answer "what did we say, decide, or promise" from Circleback meetings — search by attendee, company, tag, or date before keyword,…
Build a brief for an upcoming meeting from Circleback — the calendar event, the history with the same people and company, open…
Work the action items Circleback captured — find what is assigned to this user, do the ones the workspace can do, and update…
Diagnose a failing GitHub Actions run — find the first real error in the logs, tell a flake apart from a genuine failure, and…
Answer "what did we say, decide, or promise" from Granola meeting notes — narrow to the meetings that can hold the answer, read…
Turn a meeting into work — read its Granola notes, extract the commitments that belong to this user, and carry each one out or…
Direct actions on one Orchestrator session or PR: stop or interrupt, resume, merge a PR, start a review, screenshot a session's…
Your capability catalog — read this at boot. Lists the temporal date-range skills and the external integrations (reached via the…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…