Agent skill

RTK Issue Triage

by rtk-ai in rtk-ai/rtk

Audits open GitHub issues, categorizes them, flags duplicates and linked PRs in three phases, with optional deep analysis and comments posted only after validation.

Apache-2.0Auto-check: notesDevelopment

SKILL.md written in French; this summary is our English description.

Install RTK Issue Triage

skills CLI
$ npx skills add rtk-ai/rtk --skill issue-triage -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install rtk-ai/rtk issue-triage --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/rtk-ai/rtk.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/issue-triage .claude/skills/issue-triage && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
issue-triage
GitHub stars
83k
Token cost
~3k tokens
SKILL.md length
821 words
Files
2
Skills in repo
7
Repo updated
First seen
Licence
Apache-2.0

At a glance

Audits open GitHub issues, categorizes them, flags duplicates and linked PRs in three phases, with optional deep analysis and comments posted only after validation.

  • Works in 3 steps: Audit (toujours exécutée) → Deep Analysis (opt-in) → Actions (validation obligatoire)
  • Auditing the open issue backlog of a repository
  • SKILL.md covers Quand utiliser, Langue, Préconditions and Phase 1 — Audit (toujours…, plus 4 more sections
  • Calls gh and git

What it does

Work runs in three phases: an automatic audit, an opt-in deep analysis, and comments that need explicit validation before they are posted. Phase one gathers repository data with the gh CLI and analyzes each issue along six dimensions, including sorting into bug, feature, enhancement or question, cross-referencing open PRs that say fixes or closes, and spotting duplicates by title similarity above 60%. Issues linked to a merged PR are recommended for closure.

Arguments set the scope: all for a deep analysis of everything, issue numbers to focus on specific ones, and en or fr for the output language, with French as the default when no argument is given. GitHub comments are always written in English. The skill checks that it is inside a git work tree with an authenticated gh, falls back to recent merged PR authors when collaborators cannot be listed, and ships an issue-comment template. It is meant to run when more than 10 issues are open without triage or when an issue has been stale for more than 30 days.

When your agent uses it

  • Auditing the open issue backlog of a repository
  • Detecting duplicate issues and issues already fixed by merged PRs
  • Posting triage comments after reviewing the proposed ones
  • Focusing triage on a few specific issue numbers

Example prompts

  • “Run issue triage on all open issues and give me the tables in English.”
  • “Triage issues 42 and 57 and draft comments for me to approve.”

Requirements

  • A git repository checkout
  • GitHub CLI (gh), authenticated
  • Pre-approved tools (allowed-tools): Bash, Read, Grep

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. Audit (toujours exécutée)
  2. Deep Analysis (opt-in)
  3. Actions (validation obligatoire)

What it can do on your machine

Read from SKILL.md and the folder at commit 8533612. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read
    • Grep

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • gh
    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use gh and git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

RTK Issue Triage loads about 3k tokens when it runs. Until then it costs about 64 tokens; SKILL.md has 821 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~64
When it runs · the whole SKILL.md, loaded when a task matches
~3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read, Grep

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from rtk-ai/rtk at commit 8533612, republished under its Apache-2.0 licence (© rtk-ai). 821 words, ~2,962 tokens.

Download SKILL.mdSave it as .claude/skills/issue-triage/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
issue-triage
description
Issue triage: audit open issues, categorize, detect duplicates, cross-ref PRs, risk assessment, post comments. Args: "all" for deep analysis of all, issue numbers to focus (e.g. "42 57"), "en"/"fr" for language, no arg = audit only in French.
allowed-tools
Bash, Read, Grep
effort
medium
tags
triage, issues, github, categorize, duplicates, risk

Issue Triage

Quand utiliser

SkillUsageOutput
/issue-triageTrier, analyser, commenter les issuesTableaux d'action + deep analysis + commentaires postés
/repo-recapRécap général pour partager avec l'équipeRésumé Markdown (PRs + issues + releases)

Déclencheurs :

  • Manuellement : /issue-triage ou /issue-triage all ou /issue-triage 42 57
  • Proactivement : quand >10 issues ouvertes sans triage, ou issue stale >30j détectée

Langue

  • Vérifier l'argument passé au skill
  • Si en ou english → tableaux et résumé en anglais
  • Si fr, french, ou pas d'argument → français (défaut)
  • Note : les commentaires GitHub (Phase 3) restent TOUJOURS en anglais (audience internationale)

Workflow en 3 phases : audit automatique → deep analysis opt-in → commentaires avec validation obligatoire.

Préconditions

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

Si l'un échoue, stop et expliquer ce qui manque.


Phase 1 — Audit (toujours exécutée)

Data Gathering (commandes en parallèle)
bash
# Identité du repo
gh repo view --json nameWithOwner -q .nameWithOwner

# Issues ouvertes avec métadonnées complètes
gh issue list --state open --limit 100 \
  --json number,title,author,createdAt,updatedAt,labels,assignees,body,comments

# PRs ouvertes (pour cross-référence)
gh pr list --state open --limit 50 --json number,title,body

# Issues fermées récemment (pour détection doublons)
gh issue list --state closed --limit 20 \
  --json number,title,labels,closedAt

# Collaborateurs (pour protéger les issues des mainteneurs)
gh api "repos/{owner}/{repo}/collaborators" --jq '.[].login'

Fallback collaborateurs : si gh api .../collaborators échoue (403/404) :

bash
gh pr list --state merged --limit 10 --json author --jq '.[].author.login' | sort -u

Si toujours ambigu, demander à l'utilisateur via AskUserQuestion.

Note : author est un objet {login: "..."} — toujours extraire .author.login.

Analyse — 6 dimensions

1. Catégorisation (labels existants > inférence titre/body) :

  • Bug : mots-clés crash, error, fail, broken, regression, wrong, unexpected
  • Feature : add, implement, support, new, feat:
  • Enhancement : improve, optimize, better, enhance, refactor
  • Question/Support : how, why, help, unclear, docs, documentation
  • Duplicate Candidate : voir dimension 3 ci-dessous

2. Cross-ref PRs :

  • Scanner body de chaque PR ouverte pour fixes #N, closes #N, resolves #N (case-insensitive, regex)
  • Construire un map : issue_number -> [PR numbers]
  • Une issue liée à une PR mergée → recommander fermeture

3. Détection doublons :

  • Normaliser les titres : lowercase, strip préfixes (bug:, feat:, [bug], [feature], etc.)
  • Jaccard sur mots des titres : si score > 60% entre deux issues → candidat doublon
  • Keywords body overlap > 50% → renforcement du signal
  • Comparer aussi avec issues fermées récentes (20 dernières)
  • Un faux positif peut être confirmé/écarté en Phase 2

4. Classification risque :

  • Rouge : mots-clés CVE, vulnerability, injection, auth bypass, security, exploit, unsafe, credentials, leak, RCE, XSS
  • Jaune : breaking change, migration, deprecation, remove API, breaking, incompatible
  • Vert : tout le reste

5. Staleness :

  • 30j sans activité (updatedAt) → Stale

  • 90j sans activité → Very Stale

  • Calculer depuis la date actuelle

6. Recommandations d'action :

  • Accept & Prioritize : issue claire, reproducible, dans scope
  • Label needed : issue sans label
  • Comment needed : info manquante, body insuffisant
  • Linked to PR : une PR ouverte référence cette issue
  • Duplicate candidate : candidat doublon identifié (préciser avec #N)
  • Close candidate : stale + aucune activité récente, ou hors scope (jamais si auteur est collaborateur)
  • PR merged → close : PR liée est mergée, issue encore ouverte
Output — 5 tableaux
## Issues ouvertes ({count})

### Critiques (risque rouge)
| # | Titre | Auteur | Âge | Labels | Action |
| - | ----- | ------ | --- | ------ | ------ |

### Liées à une PR
| # | Titre | Auteur | PR(s) liée(s) | Status PR | Action |
| - | ----- | ------ | ------------- | --------- | ------ |

### Actives
| # | Titre | Auteur | Catégorie | Âge | Labels | Action |
| - | ----- | ------ | --------- | --- | ------ | ------ |

### Doublons candidats
| # | Titre | Doublon de | Similarité | Action |
| - | ----- | ---------- | ---------- | ------ |

### Stale
| # | Titre | Auteur | Dernière activité | Action |
| - | ----- | ------ | ----------------- | ------ |

### Résumé
- Total : {N} issues ouvertes
- Critiques : {N} (risque sécurité ou breaking)
- Liées à PR : {N}
- Doublons candidats : {N}
- Stale (>30j) : {N} | Very Stale (>90j) : {N}
- Sans labels : {N}
- Quick wins (à fermer ou labeler rapidement) : {liste}

0 issues → afficher Aucune issue ouverte. et terminer.

Note : Âge = jours depuis createdAt, format {N}j. Si >30j, afficher en gras.

Copie automatique

Après affichage du tableau de triage, copier dans le presse-papier :

bash
# Cross-platform clipboard
clip() {
  if command -v pbcopy &>/dev/null; then pbcopy
  elif command -v xclip &>/dev/null; then xclip -selection clipboard
  elif command -v wl-copy &>/dev/null; then wl-copy
  else cat
  fi
}

clip <<'EOF'
{tableau de triage complet}
EOF

Confirmer : Tableau copié dans le presse-papier. (FR) / Triage table copied to clipboard. (EN)


Phase 2 — Deep Analysis (opt-in)

Sélection des issues

Si argument passé :

  • "all" → toutes les issues ouvertes
  • Numéros ("42 57") → uniquement ces issues
  • Pas d'argument → proposer via AskUserQuestion

Si pas d'argument, afficher :

question: "Quelles issues voulez-vous analyser en profondeur ?"
header: "Deep Analysis"
multiSelect: true
options:
  - label: "Toutes ({N} issues)"
    description: "Analyse approfondie de toutes les issues avec agents en parallèle"
  - label: "Critiques uniquement"
    description: "Focus sur les {M} issues à risque rouge/jaune"
  - label: "Doublons candidats"
    description: "Confirmer ou écarter les {K} doublons détectés"
  - label: "Stale uniquement"
    description: "Décision close/keep sur les {J} issues stale"
  - label: "Passer"
    description: "Terminer ici — juste l'audit"

Si "Passer" → fin du workflow.

Exécution de l'analyse

Pour chaque issue sélectionnée, lancer un agent via Task tool en parallèle :

subagent_type: general-purpose
model: sonnet
prompt: |
  Analyze GitHub issue #{num}: "{title}" by @{author}

  **Metadata**: Created {createdAt}, last updated {updatedAt}, labels: {labels}

  **Body**:
  {body}

  **Existing comments** ({comments_count} total, showing last 5):
  {last_5_comments}

  **Context**:
  - Linked PRs: {linked_prs or "none"}
  - Duplicate candidate of: {duplicate_of or "none"}
  - Risk classification: {risk_color}

  Analyze this issue and return a structured report:
  ### Scope Assessment
  What is this issue actually asking for? Is it clearly defined?

  ### Missing Information
  What's needed to act on this? (reproduction steps, version, environment, etc.)

  ### Risk & Impact
  Security risk? Breaking change? Who's affected?

  ### Effort Estimate
  XS (<1h) / S (1-4h) / M (1-2d) / L (3-5d) / XL (>1 week)

  ### Priority
  P0 (critical, act now) / P1 (high, this sprint) / P2 (medium, backlog) / P3 (low, someday)

  ### Recommended Action
  One of: Accept & Prioritize, Request More Info, Mark Duplicate (#N), Close (Stale), Close (Out of Scope), Link to Existing PR

  ### Draft Comment
  Draft a GitHub comment in English using the appropriate template from templates/issue-comment.md.
  Be specific, helpful, and constructive.

Si issue a >50 commentaires, résumer les 5 derniers uniquement.

Agréger tous les rapports. Afficher un résumé après toutes les analyses.


Show full SKILL.md (319 more words)Show less

Phase 3 — Actions (validation obligatoire)

Types d'actions possibles
  • Commenter : gh issue comment {num} --body-file -
  • Labeler : gh issue edit {num} --add-label "{label}" (skip si label déjà présent)
  • Fermer : gh issue close {num} --reason "not planned" (jamais sans validation)
Génération des drafts

Pour chaque issue analysée, générer les actions (commentaire + labels + fermeture si applicable) en utilisant templates/issue-comment.md.

Règles :

  • Langue des commentaires : anglais (audience internationale)
  • Ton : professionnel, constructif, factuel
  • Ne jamais re-labeler une issue qui a déjà ce label
  • Ne jamais proposer "close" pour une issue d'un collaborateur
  • Toujours afficher le draft AVANT tout gh issue comment
Affichage et validation

Afficher TOUS les drafts au format :

---
### Draft — Issue #{num}: {title}

**Actions proposées** : {Commentaire | Label: "bug" | Fermeture}

**Commentaire** :
{commentaire complet}

---

Puis demander validation via AskUserQuestion :

question: "Ces actions sont prêtes. Lesquelles voulez-vous exécuter ?"
header: "Exécuter"
multiSelect: true
options:
  - label: "Toutes ({N} actions)"
    description: "Commenter + labeler + fermer selon les drafts"
  - label: "Issue #{x} — {title_truncated}"
    description: "Exécuter uniquement les actions pour cette issue"
  - label: "Aucune"
    description: "Annuler — ne rien faire"

(Générer une option par issue + "Toutes" + "Aucune")

Exécution

Pour chaque action validée, exécuter dans l'ordre : commenter → labeler → fermer.

bash
# Commenter
gh issue comment {num} --body-file - <<'COMMENT_EOF'
{commentaire}
COMMENT_EOF

# Labeler (si applicable)
gh issue edit {num} --add-label "{label}"

# Fermer (si applicable)
gh issue close {num} --reason "not planned"

Confirmer chaque action : Commentaire posté sur issue #{num}: {title}

Si "Aucune" → Aucune action exécutée. Workflow terminé.


Gestion des cas limites

SituationComportement
0 issues ouvertesAucune issue ouverte. + terminer
Issue sans bodyCatégoriser par titre, recommander Comment needed
>50 commentairesRésumer les 5 derniers uniquement
Faux positif doublonPhase 2 confirme/écarte — ne pas agir sur suspicion seule
Labels déjà présentsNe pas re-labeler, signaler "label déjà appliqué"
Issue d'un collaborateurJamais close candidate automatique
Rate limit GitHub APIRéduire --limit, notifier l'utilisateur
PR mergée liée à issue ouverteRecommander fermeture de l'issue
Issue sans activité >90jVery Stale — proposer fermeture avec message bienveillant
Duplicate confirmed in Phase 2Poster commentaire + fermer en faveur de l'issue originale

Notes

  • Toujours dériver owner/repo via gh repo view, jamais hardcoder
  • Utiliser gh CLI (pas curl GitHub API) sauf pour la liste des collaborateurs
  • updatedAt peut être null sur certaines issues → traiter comme createdAt
  • Ne jamais poster ou fermer sans validation explicite de l'utilisateur dans le chat
  • Les commentaires draftés doivent être visibles AVANT tout gh issue comment
  • Similarité Jaccard = |intersection mots| / |union mots| (exclure stop words : a, the, is, in, of, for, to, with, on, at, by)

© rtk-ai, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in .claude/skills/issue-triage of rtk-ai/rtk.

  • SKILL.md
  • templates/issue-comment.md

Open the folder on GitHubat commit 8533612

Compare with similar skills

RTK Issue Triage next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

RTK Issue Triage compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
RTK Issue Triage this skillrtk-ai/rtk83k—~3kAutomated safety check: NotesApache-2.0
Pre-Release PR Triagejamiepine/voicebox57k—~3.1kAutomated safety check: PassMIT
GitHub Triagetrailofbits/skills7.4k—~5.8kAutomated safety check: NotesCC-BY-SA-4.0
Contributor-First PR MergeHKUDS/OpenHarness16k1 repos~847Automated safety check: PassMIT
Mole Release Notes Publishertw93/Mole70k—~1.9kAutomated safety check: PassGPL-3.0
WinAppSDK Triage Meeting Prepmicrosoft/WindowsAppSDK4.7k—~2.8kAutomated safety check: PassApache-2.0

Similar skills

  • Pre-Release PR Triage

    jamiepine/voicebox

    Sorts a backlog of open pull requests into must-merge, candidate, superseded and deferred, writes a triage doc and works the merge loop before a release.

    57k GitHub stars~3.1k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • GitHub Triage

    trailofbits/skills

    Official

    Triages open GitHub issues and pull requests with the gh CLI, optionally merging ready PRs, closing resolved issues with evidence and assigning local priority and size estimates.

    7.4k GitHub stars~5.8k tokensUpdated yesterday
    DevelopmentAuto-check: notes
  • Merges external GitHub pull requests while keeping the original author credited, and fixes conflicts after the merge instead of rewriting the contribution.

    16k GitHub starsUsed in 1 repo~847 tokens
    DevelopmentAuto-check passed
  • Publishes curated, bilingual release notes for an existing Mole version tag with gh release edit, including contributor thanks and reactions, after the release workflow finishes.

    70k GitHub stars~1.9k tokensUpdated today
    DevelopmentAuto-check passed
  • WinAppSDK Triage Meeting Prep

    microsoft/WindowsAppSDK

    Official

    Prepares the triage meeting summary for WinAppSDK Needs-Triage issues, with research-backed area suggestions, draft replies and a diff since the last triage.

    4.7k GitHub stars~2.8k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Creates backports of a merged Ansible devel pull request onto the right stable branches by cherry-picking its merge commit onto new backport branches.

    71k GitHub stars~1.2k tokensUpdated yesterday
    DevelopmentAuto-check passed

More from rtk-ai/rtk

  • Enforces red-green-refactor for Rust work, with idiomatic test patterns, a naming convention and a pre-commit gate of cargo fmt, clippy and test.

    83k GitHub stars~753 tokensUpdated yesterday
    Auto-check: notes
  • Describes seven Rust design patterns for the RTK CLI filter modules, with when to use each, RTK examples, and notes on when a pattern is overkill.

    83k GitHub stars~1.9k tokensUpdated yesterday
    Auto-check passed
  • Enforces red-green-refactor for new RTK output filters in Rust, using real captured fixtures, snapshot tests with insta and token-savings assertions.

    83k GitHub stars~1.9k tokensUpdated yesterday
    Auto-check: notes
  • Reviews RTK's Rust code for over-engineering and verbose patterns, applying idioms like iterator chains and early returns while protecting a specific list of constraints from being simplified away.

    83k GitHub stars~1.1k tokensUpdated yesterday
    Auto-check passed
  • PR Triage

    rtk-ai/rtk

    Audits a repository's open pull requests, deep-reviews chosen ones and drafts review comments that are only posted after you approve them.

    83k GitHub stars~2.5k tokensUpdated yesterday
    Auto-check: notes
  • Runs issue triage and PR triage in parallel, then cross-analyzes the results to flag duplicate coverage, security gaps, P0 issues with no PR, and PR conflicts.

    83k GitHub stars~1.6k tokensUpdated yesterday
    Auto-check: notes

Works with

Categories

Questions about RTK Issue Triage

What does RTK Issue Triage do?

Audits open GitHub issues, categorizes them, flags duplicates and linked PRs in three phases, with optional deep analysis and comments posted only after validation. Work runs in three phases: an automatic audit, an opt-in deep analysis, and comments that need explicit validation before they are posted. Phase one gathers repository data with the gh CLI and analyzes each issue along six dimensions, including sorting into bug, feature, enhancement or question, cross-referencing open PRs that say fixes or closes, and spotting duplicates by title similarity above 60%.

When should I use RTK Issue Triage?

RTK Issue Triage fits situations like: auditing the open issue backlog of a repository; detecting duplicate issues and issues already fixed by merged PRs; posting triage comments after reviewing the proposed ones; focusing triage on a few specific issue numbers.

How do I install RTK Issue Triage in Claude Code?

Run `npx skills add rtk-ai/rtk --skill issue-triage -a claude-code`. Or copy the skill folder (.claude/skills/issue-triage in rtk-ai/rtk) into .claude/skills/issue-triage in your project. Claude Code loads it when a task matches its description.

How do I install RTK Issue Triage in Codex?

Run `npx skills add rtk-ai/rtk --skill issue-triage -a codex`. Or copy the skill folder (.claude/skills/issue-triage in rtk-ai/rtk) into .agents/skills/issue-triage in your project. Codex loads it when a task matches its description.

Can I use RTK Issue Triage in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add rtk-ai/rtk --skill issue-triage -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/issue-triage, .gemini/skills/issue-triage, .github/skills/issue-triage and .opencode/skills/issue-triage in your project.

What does RTK Issue Triage need to run?

Going by SKILL.md and its folder, RTK Issue Triage needs the command-line tools its instructions call (gh and git). Our summary lists: A git repository checkout; GitHub CLI (gh), authenticated. Its frontmatter pre-approves these tools: Bash, Read, Grep.

Does RTK Issue Triage access the network?

SKILL.md contains no URLs. Its commands use gh and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is RTK Issue Triage safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does RTK Issue Triage use?

RTK Issue Triage is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does RTK Issue Triage use?

About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to RTK Issue Triage?

Skills that share tags, products or a category with RTK Issue Triage: Pre-Release PR Triage (jamiepine/voicebox, 57k stars), GitHub Triage (trailofbits/skills, 7.4k stars), Contributor-First PR Merge (HKUDS/OpenHarness, 16k stars) and Mole Release Notes Publisher (tw93/Mole, 70k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains RTK Issue Triage?

rtk-ai (a GitHub organization) maintains it in rtk-ai/rtk, which has 82,651 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 7, 2026.

Source: rtk-ai/rtk on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.