CtrlK
BlogDocsLog inGet started
Tessl Logo

issue-triage

Queries and triages open GitHub issues that need attention. Helps identify issues needing milestones, labels, or investigation.

57

Quality

65%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./.github/skills/issue-triage/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

68%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A highly actionable, well-structured skill with exact commands, a verified parameter table, and a clear step-by-step triage workflow. Its weaknesses are repeated do/don't guidance across three sections and the absence of any validation/verification step after the batch gh edit operations, which caps workflow clarity at 3 despite an otherwise excellent sequence.

Suggestions

Add a validation checkpoint after each triage decision (e.g., verify the gh issue edit exit code or re-query the issue to confirm the milestone applied) before presenting the next issue.

Deduplicate the do/don't guidance: keep the "Common Mistakes to Avoid" table and trim the inline DON'T/DO lists in Steps 2 and 6 to a single-line pointer.

Use bundle-relative script paths (scripts/query-issues.ps1) or state explicitly that the .github/skills/issue-triage/ prefix is the deployed location, so the commands resolve regardless of where the skill is invoked from.

DimensionReasoningScore

Conciseness

Mostly efficient — commands, parameter tables, and templates earn their tokens and no space is spent explaining concepts Claude already knows — but the same do/don't guidance is repeated three times (inline DON'T lists in Steps 2 and 6, plus the "Common Mistakes to Avoid" table), and phrases like "that need attention"-style filler and repeated "What this does" blocks could be tightened. This fits the "mostly efficient but includes some unnecessary content" anchor rather than the noticeably-padded level-2 anchor, since the repetition is brief and in service of a misbehavior-prone agent workflow.

3 / 5

Actionability

Fully executable throughout: exact pwsh invocations with parameters ("pwsh .github/skills/issue-triage/scripts/query-issues.ps1 -Limit 50 -OutputFormat triage"), ready-to-run gh commands with clearly-marked placeholders ("gh issue edit ISSUE_NUMBER --repo dotnet/maui --milestone \"Backlog\""), a complete one-issue presentation template, a verified parameter table whose values match the actual script's param block, and a concrete milestone-suggestion decision table. This matches the copy-paste-ready anchor covering the common cases.

5 / 5

Workflow Clarity

The six-step sequence (init → query → present one → await decision → next → auto-reload with -Skip) is unambiguous and would otherwise merit 5. However, the workflow performs batch edits against live repo state (gh issue edit / gh pr edit) with no validation or verification step — no check that the edit succeeded before advancing to the next issue, no error-recovery loop — so workflow clarity is capped at 3 per the destructive/batch-operation rule. The scripts' built-in gh-availability check does not substitute for verifying the edit outcome.

3 / 5

Progressive Disclosure

Good single-file structure with clearly sectioned content, and every referenced script (init-triage-session.ps1, query-issues.ps1, record-triage.ps1) exists in the scripts/ bundle with parameters matching the documented table, so navigation is real. Minor gaps keep it below 5: the body uses deployment paths (".github/skills/issue-triage/scripts/...") rather than the bundle-relative scripts/ paths, and reference material like the Label Quick Reference and Example Session Output is inlined rather than split out, though at ~240 lines this is a defensible choice.

4 / 5

Total

15

/

20

Passed

Description

61%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is concise, third-person, and names a specific domain with several relevant trigger terms, but it lacks any explicit "Use when..." trigger clause and keeps its actions at an abstract level. Adding an explicit trigger clause and one concrete action (e.g., assigning milestones and labels via gh) would raise both completeness and specificity.

Suggestions

Add an explicit trigger clause, e.g. "Use when the user asks to triage issues, find issues needing milestones, or review the GitHub issue backlog."

Make the actions concrete: mention assigning milestones and labels to open issues (via GitHub CLI) rather than the generic "needs attention" / "investigation" phrasing.

Include the target repository (dotnet/maui) to sharpen distinctiveness against generic issue-management skills.

DimensionReasoningScore

Specificity

The description names the domain ("open GitHub issues") and a couple of actions ("Queries and triages", "identify issues needing milestones, labels, or investigation"), matching the anchor for naming a domain with 1-2 concrete actions that are not comprehensive. It stays below the level-4 anchor because the actions remain abstract — nothing concretely says what triaging involves (assigning milestones, applying labels via gh, one-at-a-time review).

3 / 5

Completeness

The "what" is clear ("Queries and triages open GitHub issues that need attention. Helps identify issues needing milestones, labels, or investigation") but there is no "Use when..." clause or equivalent explicit trigger guidance, so completeness is capped at 3 per the judging guidelines. It is not a 4 because the "when" is entirely absent, not merely implicit-but-improvable; it is not a 2 because the "what" is concrete, not vague.

3 / 5

Trigger Term Quality

Good keyword coverage with natural terms users would say: "triages", "GitHub issues", "milestones", "labels", "investigation" — comparable to the level-4 example's coverage. Not a 5 because common variations like "bug reports", "backlog", or a repository name are missing, and "needs attention" is generic filler rather than a trigger phrase.

4 / 5

Distinctiveness Conflict Risk

Issue triage with milestones and labels is a clear niche unlikely to collide with unrelated skills, and third-person voice is used correctly ("Queries", "Helps identify"), fitting the mostly-distinct level-4 anchor. Not a 5 because it never names the repository (dotnet/maui) or what distinguishes it from a generic GitHub issue-management skill, leaving some overlap risk with closely related issue-management skills.

4 / 5

Total

14

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
dotnet/maui
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.