Skip to content
cccskills
FreePublished on GitHub

rtk-triage

Review GitHub issues and pull requests together to find duplicate work, security findings without fixes, and critical bugs without linked changes. Produce action tables and a dated report to support backlog reviews and sprint planning.

OriginalShow the original description

Triage complet RTK : exécute issue-triage + pr-triage en parallèle, puis croise les données pour détecter doubles couvertures, trous sécurité, P0 sans PR, et conflits internes. Sauvegarde dans claudedocs/RTK-YYYY-MM-DD.md. Args: "en"/"fr" pour la langue (défaut: fr), "save" pour forcer la sauvegarde.

Works withGitHub
See how to install

Good for

  • Reviewing issues and pull requests before a sprint
  • Finding pull requests that duplicate the same work
  • Identifying security findings without proposed fixes
  • Investigating conflicts in internal pull requests

Files included (1)

  • SKILL.md6.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

/rtk-triage

Orchestrateur de triage RTK. Fusionne issue-triage + pr-triage et produit une analyse croisée.


Quand utiliser

  • Hebdomadaire ou avant chaque sprint
  • Quand le backlog PR/issues grossit rapidement
  • Pour identifier les doublons avant de reviewer

Workflow en 4 phases

Phase 0 — Préconditions

git rev-parse --is-inside-work-tree
gh auth status

Vérifier que la date actuelle est connue (utiliser date +%Y-%m-%d).


Phase 1 — Data gathering (parallèle)

Lancer les deux collectes simultanément :

Issues :

gh repo view --json nameWithOwner -q .nameWithOwner

gh issue list --state open --limit 150 \
  --json number,title,author,createdAt,updatedAt,labels,assignees,body

gh issue list --state closed --limit 20 \
  --json number,title,labels,closedAt

gh api "repos/{owner}/{repo}/collaborators" --jq '.[].login'

PRs :

# Fetcher toutes les PRs ouvertes — paginer si nécessaire (gh limite à 200 par appel)
gh pr list --state open --limit 200 \
  --json number,title,author,createdAt,updatedAt,additions,deletions,changedFiles,isDraft,mergeable,reviewDecision,statusCheckRollup,body

# Si le repo a >200 PRs ouvertes, relancer avec --search pour paginer :
# gh pr list --state open --limit 200 --search "is:pr is:open sort:updated-desc" ...

# Pour chaque PR, récupérer les fichiers modifiés (nécessaire pour overlap detection)
# Prioriser les PRs candidates (même domaine, même auteur)
gh pr view {num} --json files --jq '[.files[].path] | join(",")'

Phase 2 — Triage individuel

Exécuter les analyses de /issue-triage et /pr-triage séparément (même logique que les skills individuels) pour produire :

Issues :

  • Catégorisation (Bug/Feature/Enhancement/Question/Duplicate)
  • Risque (Rouge/Jaune/Vert)
  • Staleness (>30j)
  • Map issue_number → [PR numbers] via scan fixes #N, closes #N, resolves #N

PRs :

  • Taille (XS/S/M/L/XL)
  • CI status (clean/dirty)
  • Nos PRs vs externes
  • Overlaps (>50% fichiers communs entre 2 PRs)
  • Clusters (auteur avec 3+ PRs)

Afficher les tableaux standards de chaque skill (voir SKILL.md de issue-triage et pr-triage pour le format exact).


Phase 3 — Analyse croisée (cœur de ce skill)

C'est ici que ce skill apporte de la valeur au-delà des deux skills individuels.

3.1 Double couverture — 2 PRs pour 1 issue

Pour chaque issue liée à ≥2 PRs (via scan des bodies + overlap fichiers) :

IssuePR1 (infos)PR2 (infos)Verdict recommandé
#N (titre)PR#X — auteur, taille, CIPR#Y — auteur, taille, CIGarder la plus ciblée. Fermer/coordonner l'autre

Règle de verdict :

  • Préférer la plus petite (XS < S < M) si même scope
  • Préférer CI clean sur CI dirty
  • Préférer "nos PRs" si l'une est interne
  • Si overlap de fichiers >80% → conflit quasi-certain, signaler

3.2 Trous de couverture sécurité

Pour chaque issue rouge (#640-type security review) :

  • Lister les sous-findings mentionnés dans le body
  • Croiser avec les PRs existantes (mots-clés dans titre/body)
  • Identifier les findings sans PR

Format :

## Issue #N — security review (finding par finding)
| Finding | PR associée | Status |
|---------|-------------|--------|
| Description finding 1 | PR#X | En review |
| **Description finding critique** | **AUCUNE** | ⚠️ Trou |

3.3 P0/P1 bugs sans PR

Issues labelisées P0 ou P1 (ou mots-clés : "crash", "truncat", "cap", "hardcoded") sans aucune PR liée.

Format :

## Bugs critiques sans PR
| Issue | Titre | Pattern commun | Effort estimé |
|-------|-------|----------------|---------------|

Chercher un pattern commun (ex: "cap hardcodé", "exit code perdu") — si 3+ bugs partagent un pattern, suggérer un sprint groupé.

3.4 Nos PRs dirty — causes probables

Pour chaque PR interne avec CI dirty ou CONFLICTING :

  • Vérifier si un autre PR touche les mêmes fichiers
  • Vérifier si un merge récent sur develop peut expliquer le conflit
  • Recommander : rebase, fermeture, ou attente

Format :

## Nos PRs dirty
| PR | Issue(s) | Cause probable | Action |
|----|----------|----------------|--------|

3.5 PRs sans issue trackée

PRs internes sans fixes #N dans le body — signaler pour traçabilité.


Phase 4 — Output final

Afficher l'analyse croisée complète (sections 3.1 → 3.5)

Puis afficher le résumé chiffré :

## Résumé chiffré — YYYY-MM-DD

| Catégorie | Count |
|-----------|-------|
| PRs prêtes à merger (nos) | N |
| Quick wins externes | N |
| Double couverture (conflicts) | N paires |
| P0/P1 bugs sans PR | N |
| Security findings sans PR | N |
| Nos PRs dirty à rebaser | N |
| PRs à fermer (recommandé) | N |

Sauvegarder dans claudedocs

date +%Y-%m-%d  # Pour construire le nom de fichier

Sauvegarder dans claudedocs/RTK-YYYY-MM-DD.md avec :

  • Les tableaux de triage issues + PRs (Phase 2)
  • L'analyse croisée complète (Phase 3)
  • Le résumé chiffré

Confirmer : Sauvegardé dans claudedocs/RTK-YYYY-MM-DD.md


Format du fichier sauvegardé

# RTK Triage — YYYY-MM-DD

Croisement issues × PRs. {N} PRs ouvertes, {N} issues ouvertes.

---

## 1. Double couverture
...

## 2. Trous sécurité
...

## 3. P0/P1 sans PR
...

## 4. Nos PRs dirty
...

## 5. Nos PRs prêtes à merger
...

## 6. Quick wins externes
...

## 7. Actions prioritaires
(liste ordonnée par impact/urgence)

---

## Résumé chiffré
...

Règles

  • Langue : argument en/fr. Défaut : fr. Les commentaires GitHub restent toujours en anglais.
  • Ne jamais poster de commentaires GitHub sans validation utilisateur (AskUserQuestion).
  • Si >200 issues ou >200 PRs : prévenir l'utilisateur et paginer (relancer avec --search ou gh api avec pagination).
  • L'analyse croisée (Phase 3) est toujours exécutée — c'est la valeur ajoutée de ce skill.
  • Le fichier claudedocs est sauvegardé automatiquement sauf si l'utilisateur dit "no save".

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

code-simplifier

FreeSummary

Simplify Rust code in RTK by replacing verbose loops, unnecessary copies, and excessive abstractions with common Rust patterns. Preserve behavior and project requirements, including error context, fallback handling, exit codes, and existing test modules.

  • Simplifying verbose loops and string construction
  • Removing unnecessary string copies
  • Reducing nested conditional and error handling code
rtk-ai/rtk83.9KUpdated Oct 19, 2026

design-patterns

FreeSummary

Choose Rust design patterns for RTK modules that process command output. Use concrete examples to structure configuration, prevent type mixups, manage parser states, and select abstractions suited to the task without adding unnecessary architectural complexity.

  • Planning the structure of a new command output filter
  • Preventing mixups between values with the same underlying type
  • Organizing configuration with many optional fields
rtk-ai/rtk83.9KUpdated Oct 19, 2026

issue-triage

FreeSummary

Organize open GitHub issues by category, risk, linked pull requests, duplicate candidates, and inactivity. Optionally analyze selected issues in depth, draft responses, and apply approved comments, labels, or closures to keep the backlog actionable.

  • Sorting a growing backlog of open issues
  • Checking whether suspected duplicate issues are truly duplicates
  • Prioritizing security risks and breaking changes
rtk-ai/rtk83.9KUpdated Oct 19, 2026

pr-triage

FreeSummary

Sort open GitHub pull requests by change size, automated check results, conflicts, and inactivity. Review selected changes in detail, draft constructive feedback, and post comments after the user approves them.

  • Prioritizing a backlog of open pull requests
  • Finding overlapping changes and failing checks
  • Reviewing selected pull requests in detail
rtk-ai/rtk83.9KUpdated Oct 19, 2026

rtk-tdd

FreeSummary

Guide Rust development through test-driven development: write a failing test, implement enough code to pass, then refactor. Includes practical test patterns and final checks for formatting, static analysis, and test results.

  • Adding Rust features with tests first
  • Reproducing bugs with failing tests before fixing them
  • Testing invalid inputs and error paths
rtk-ai/rtk83.9KUpdated Oct 19, 2026

tdd-rust

FreeSummary

Develop Rust filters for RTK through tests written before implementation. Use real command output as test inputs, check output snapshots and unexpected inputs, verify a minimum reduction target, and complete formatting, linting, and test checks before finishing.

  • Adding a new RTK command filter
  • Checking filtered output against saved snapshots
  • Testing empty, malformed, or ANSI-colored input
rtk-ai/rtk83.9KUpdated Oct 19, 2026

See all skills by rtk-ai

Report a problem with this skill