Official agent skill

Triage Issue

by docker in docker/docs

Analyze a single GitHub issue for docker/docs — check whether the problem still exists, determine a verdict, and report findings.

OfficialApache-2.0Auto-check passedDevelopment

Install Triage Issue

skills CLI
$ npx skills add docker/docs --skill triage-issue -a claude-code

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

GitHub CLI
$ gh skill install docker/docs triage-issue --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/docker/docs.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/triage-issue .claude/skills/triage-issue && 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
triage-issue
GitHub stars
4.7k
Token cost
~1.4k tokens
SKILL.md length
572 words
Files
1
Skills in repo
13
Repo updated
First seen
Licence
Apache-2.0

At a glance

Analyze a single GitHub issue for docker/docs — check whether the problem still exists, determine a verdict, and report findings.

  • Works in 7 steps: Fetch the issue → Understand the problem → Follow URLs → …
  • Asked to triage
  • SKILL.md covers 1. Fetch the issue, 2. Understand the problem, 3. Follow URLs and 4. Check the repository, plus 4 more sections
  • Calls gh

What it does

Triage Issue is an agent skill from docker/docs, published by the product's own GitHub organization. Analyze a single GitHub issue for docker/docs — check whether the problem still exists, determine a verdict, and report findings. Use when asked to triage, assess, or review an issue, even if the user doesn't say "triage" explicitly: "triage issue 1234", "is issue 500 still valid", "should we close 200", "look at this issue", "what's going on with 200".

Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Issue triage and Containers. It works with Docker and GitHub. The repository describes itself as: Source repo for Docker's Documentation. The licence is Apache-2.0.

When your agent uses it

  • Asked to triage
  • Review an issue
  • Even if the user doesnt say triage explicitly: triage issue 1234
  • Is issue 500 still valid

Example prompts

  • “t say”
  • “explicitly:”
  • “is issue 500 still valid”
  • “/triage-issue”

Requirements

  • Docker

Workflow steps

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

  1. Fetch the issue
  2. Understand the problem
  3. Follow URLs
  4. Check the repository
  5. Check for upstream ownership
  6. Decide and act
  7. Report

What it can do on your machine

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

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • gh

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

  • Network

    No URLs in SKILL.md. Its commands use gh, 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

Triage Issue loads about 1.4k tokens when it runs. Until then it costs about 93 tokens; SKILL.md has 572 words of instructions outside code blocks.

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

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 passed

The automated check found no risky patterns in SKILL.md.

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 docker/docs at commit 65aa5cd, republished under its Apache-2.0 licence (© docker). 572 words, ~1,429 tokens.

Download SKILL.mdSave it as .claude/skills/triage-issue/SKILL.md (or your agent's skills folder).
name
triage-issue
description
Analyze a single GitHub issue for docker/docs — check whether the problem still exists, determine a verdict, and report findings. Use when asked to triage, assess, or review an issue, even if the user doesn't say "triage" explicitly: "triage issue 1234", "is issue 500 still valid", "should we close #200", "look at this issue", "what's going on with #200".
argument-hint
<issue-number>
context
fork

Triage Issue

Given GitHub issue $ARGUMENTS from docker/docs, figure out whether it's still a real problem and say what should happen next.

1. Fetch the issue

bash
gh issue view $ARGUMENTS --repo docker/docs \
  --json number,title,body,state,labels,createdAt,updatedAt,closedAt,assignees,author,comments

2. Understand the problem

Read the issue body and all comments. Identify:

  • What is the reported problem?
  • What content, URL, or file does it reference?
  • Has anyone already proposed a fix or workaround in the comments?

Check for linked PRs in the issue timeline, not only in the issue body or comments:

bash
gh api repos/docker/docs/issues/$ARGUMENTS/timeline --paginate \
  --jq '.[] | select(.event=="cross-referenced" or .event=="connected" or .event=="referenced") | {event, created_at, source: .source.issue.html_url, title: .source.issue.title, state: .source.issue.state}'

If an open PR already addresses the issue, don't open another PR. Review the existing PR instead, and report that the issue already has an associated PR. A merged PR is strong evidence the issue is fixed. A closed-without-merge PR means the issue is likely still open.

3. Follow URLs

Find all docs.docker.com URLs in the issue body and comments. For each:

  • Fetch the URL to check if it still exists (404 = content removed or moved)
  • Check whether the content still contains the problem described
  • Note when the page was last updated relative to when the issue was filed

For non-docs URLs (GitHub links, external references), fetch them too if they are central to understanding the issue.

4. Check the repository

If the issue references specific files, content sections, or code:

  • Find and read the current version of that content
  • Check whether the problem has been fixed, content moved, or file removed
  • Remember the /manuals prefix mapping when looking up files

5. Check for upstream ownership

If the issue is about content in _vendor/ or data/cli/, it cannot be fixed here. Identify which upstream repo owns it (see the vendored content table in CLAUDE.md).

6. Decide and act

After investigating, pick one of these verdicts and take the corresponding action on the issue:

  • Close it — the problem is already fixed, the content no longer exists, or the issue is too outdated to be useful. Close the issue with a comment explaining why:

    bash
    gh issue close $ARGUMENTS --repo docker/docs \
      --comment "Closing: <one-sentence reason>"
  • Fix it — the problem is real and fixable in this repo. Name the file(s) and what needs to change. Label the issue status/confirmed and remove status/triage if present:

    bash
    gh api repos/docker/docs/issues/$ARGUMENTS/labels \
      --method POST --field 'labels[]=status/confirmed'
    gh api repos/docker/docs/issues/$ARGUMENTS/labels/status%2Ftriage \
      --method DELETE || true
  • Escalate upstream — the problem is real but lives in vendored content. Name the upstream repo. Label the issue status/upstream and remove status/triage if present:

    bash
    gh api repos/docker/docs/issues/$ARGUMENTS/labels \
      --method POST --field 'labels[]=status/upstream'
    gh api repos/docker/docs/issues/$ARGUMENTS/labels/status%2Ftriage \
      --method DELETE || true
  • Leave it open — you can't determine the current state, or the issue needs human judgment. Label the issue status/needs-analysis:

    bash
    gh api repos/docker/docs/issues/$ARGUMENTS/labels \
      --method POST --field 'labels[]=status/needs-analysis'
    gh api repos/docker/docs/issues/$ARGUMENTS/labels/status%2Ftriage \
      --method DELETE || true
Show full SKILL.md (181 more words)Show less

Don't overthink the classification. An old issue isn't stale if the problem still exists. An upstream issue is still valid — it's just not fixable here.

Also apply the most relevant area/ label based on the content affected. Available area labels: area/accounts, area/admin, area/ai, area/api, area/billing, area/build, area/build-cloud, area/cli, area/compose, area/compose-spec, area/config, area/contrib, area/copilot, area/desktop, area/dhi, area/engine, area/enterprise, area/extensions, area/get-started, area/guides, area/hub, area/install, area/networking, area/offload, area/release-notes, area/samples, area/scout, area/security, area/storage, area/subscription, area/swarm, area/ux. Pick one (or at most two if the issue clearly spans areas). Skip if none fit.

bash
gh api repos/docker/docs/issues/$ARGUMENTS/labels \
  --method POST --field 'labels[]=area/<name>'

7. Report

Write a short summary: what the issue reports, what you found, and what should happen next. Reference the specific files, URLs, or PRs that support your conclusion. Skip metadata fields — the issue itself has the dates and labels. Mention the action you took (closed, labeled, etc.).

Notes

  • Always check timeline cross-references before deciding to fix an issue
  • Do not narrate your process — produce the final report
  • End every issue comment with an accurate agent-disclosure footer that names the active coding agent, for example Generated by Codex or Generated by Claude Code. .

© docker, 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

Just SKILL.md in .agents/skills/triage-issue of docker/docs.

Open the folder on GitHubat commit 65aa5cd

Compare with similar skills

Triage Issue 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.

Triage Issue compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Triage Issue this skilldocker/docs4.7k—~1.4kAutomated safety check: PassApache-2.0
CI Act Runchewiebug/GCViewer4.6k—~2.4kAutomated safety check: NotesCustom licence
Review PRmicrosoft/vscode-containers141—~900Automated safety check: PassCustom licence
Debugging Local Task Agent RunsPostHog/posthog-foss721—~2.1kAutomated safety check: NotesMIT
Releasebmeares/Meerschaum154—~1.1kAutomated safety check: NotesApache-2.0
Project Releaseswimmwatch/cloakbrowser-mcp161—~1.9kAutomated safety check: PassMIT

Similar skills

  • CI Act Run

    chewiebug/GCViewer

    Run the full build-and-deploy.yaml workflow locally via act + Docker.

    4.6k GitHub stars~2.4k tokensUpdated 3 mo ago
    DevelopmentAuto-check: notes
  • Review PR

    microsoft/vscode-containers

    Official

    Review a specific vscode-containers pull request on demand from the CLI (or any interactive agent), the way a Container Tools maintainer would.

    141 GitHub stars~900 tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Official

    Debug the output of local PostHog task runs — the wizard cloud-run path that executes inside a Docker sandbox under the local Temporal process-task workflow (the wizard that integrates PostHog, then…

    721 GitHub stars~2.1k tokensUpdated today
    DevelopmentAuto-check: notes
  • Release

    bmeares/Meerschaum

    Meerschaum release process — bump version, update changelog, stage dev→main PR, run CI, publish to PyPI, tag, GitHub release, build/push Docker images, rebuild docs on prod VPS.

    154 GitHub stars~1.1k tokensUpdated 29 days ago
    DevOps & CloudAuto-check: notes
  • Project Release

    swimmwatch/cloakbrowser-mcp

    Prepare, publish, verify, or recover a cloakbrowser-mcp release only when the user explicitly requests release work.

    161 GitHub stars~1.9k tokensUpdated 5 days ago
    Agent WorkflowsAuto-check passed
  • Devcontainer Dev

    stacklok/toolhive-studio

    Spin up and interact with ToolHive Studio's containerized dev environment (Xvfb + noVNC + DinD).

    170 GitHub stars~3.8k tokensUpdated today
    Agent WorkflowsAuto-check: notes

More from docker/docs

All 13 skills in this repo
  • Official

    Audit a documentation site for agent-friendliness: discovery, markdown delivery, crawlability, semantic structure, machine-readable surfaces, and content legibility.

    4.7k GitHub stars~1.8k tokensUpdated today
    Auto-check passed
  • Official

    Handle Hugo docs information-architecture moves: discover old vs new URLs, add front matter aliases (Phase 1), update in-repo links (Phase 2), interactive List 2 resolution and fragment validation…

    4.7k GitHub stars~5.1k tokensUpdated today
    Auto-check passed
  • Write

    docker/docs

    Official

    Write or edit reader-facing technical prose for immediate comprehension.

    4.7k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Create Lab Guide

    docker/docs

    Official

    Clone a dockersamples Labspace repo, extract learning objectives and module structure from labspace.yaml, and produce a Hugo guide page under content/guides/ with correct frontmatter…

    4.7k GitHub stars~1k tokensUpdated today
    Auto-check passed
  • Curate Whats New

    docker/docs

    Official

    Curate noteworthy Docker launches from documentation pull requests merged during a requested period.

    4.7k GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Fix Issue

    docker/docs

    Official

    Fix a single GitHub issue end-to-end: triage, research, write the fix, review, and create a PR.

    4.7k GitHub stars~595 tokensUpdated today
    Auto-check passed

Works with

Questions about Triage Issue

What does Triage Issue do?

Analyze a single GitHub issue for docker/docs — check whether the problem still exists, determine a verdict, and report findings. Triage Issue is an agent skill from docker/docs, published by the product's own GitHub organization. Analyze a single GitHub issue for docker/docs — check whether the problem still exists, determine a verdict, and report findings.

When should I use Triage Issue?

Triage Issue fits situations like: asked to triage; review an issue; even if the user doesnt say triage explicitly: triage issue 1234; is issue 500 still valid.

How do I install Triage Issue in Claude Code?

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

How do I install Triage Issue in Codex?

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

Can I use Triage Issue 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 docker/docs --skill triage-issue -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/triage-issue, .gemini/skills/triage-issue, .github/skills/triage-issue and .opencode/skills/triage-issue in your project.

What does Triage Issue need to run?

Going by SKILL.md and its folder, Triage Issue needs the command-line tools its instructions call (gh). Our summary lists: Docker.

Does Triage Issue access the network?

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

Is Triage Issue safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Triage Issue use?

Triage Issue 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 Triage Issue use?

About 1.4k tokens (SKILL.md is roughly 5.7k 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 Triage Issue?

Skills that share tags, products or a category with Triage Issue: CI Act Run (chewiebug/GCViewer, 4.6k stars), Review PR (microsoft/vscode-containers, 141 stars), Debugging Local Task Agent Runs (PostHog/posthog-foss, 721 stars) and Release (bmeares/Meerschaum, 154 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Triage Issue?

docker (a GitHub organization, an official publisher) maintains it in docker/docs, which has 4,666 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 7, 2026.

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