Wayfinder
bestofjs/bestofjs
Plan a huge chunk of work — more than one agent session can hold — as a shared map of decision tickets on your issue tracker, and resolve them one at a time until the way to the destination is clear.
Load when asked to triage, clean up, batch-process, or work through the issue backlog — covers the mechanical sweep (stale-fixed, dead needs-info, duplicates), fan-out assessment, and approved batch…
$ npx skills add openchamber/openchamber --skill triage-issues -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install openchamber/openchamber triage-issues --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/openchamber/openchamber.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/triage-issues .claude/skills/triage-issues && rm -rf skills-srcUse ~/.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/
Install the "triage-issues" agent skill from https://github.com/openchamber/openchamber/tree/main/.agents/skills/triage-issues into .claude/skills/triage-issues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage-issues", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/openchamber/openchamber/tree/main/.agents/skills/triage-issuesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add openchamber/openchamber --skill triage-issues -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install openchamber/openchamber triage-issues --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openchamber/openchamber.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/triage-issues .agents/skills/triage-issues && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "triage-issues" agent skill from https://github.com/openchamber/openchamber/tree/main/.agents/skills/triage-issues into .agents/skills/triage-issues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage-issues", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add openchamber/openchamber --skill triage-issues -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install openchamber/openchamber triage-issues --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openchamber/openchamber.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/triage-issues .cursor/skills/triage-issues && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "triage-issues" agent skill from https://github.com/openchamber/openchamber/tree/main/.agents/skills/triage-issues into .cursor/skills/triage-issues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage-issues", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/openchamber/openchamber.git --path .agents/skills/triage-issues--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add openchamber/openchamber --skill triage-issues -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install openchamber/openchamber triage-issues --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openchamber/openchamber.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/triage-issues .gemini/skills/triage-issues && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "triage-issues" agent skill from https://github.com/openchamber/openchamber/tree/main/.agents/skills/triage-issues into .gemini/skills/triage-issues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage-issues", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install openchamber/openchamber triage-issuesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add openchamber/openchamber --skill triage-issues -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/openchamber/openchamber.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/triage-issues .github/skills/triage-issues && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "triage-issues" agent skill from https://github.com/openchamber/openchamber/tree/main/.agents/skills/triage-issues into .github/skills/triage-issues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage-issues", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add openchamber/openchamber --skill triage-issues -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install openchamber/openchamber triage-issues --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openchamber/openchamber.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/triage-issues .opencode/skills/triage-issues && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "triage-issues" agent skill from https://github.com/openchamber/openchamber/tree/main/.agents/skills/triage-issues into .opencode/skills/triage-issues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage-issues", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
triage-issuesLoad when asked to triage, clean up, batch-process, or work through the issue backlog — covers the mechanical sweep (stale-fixed, dead needs-info, duplicates), fan-out assessment, and approved batch…
Triage Issues is an agent skill from openchamber/openchamber. Load when asked to triage, clean up, batch-process, or work through the issue backlog — covers the mechanical sweep (stale-fixed, dead needs-info, duplicates), fan-out assessment, and approved batch actions.
Its SKILL.md is about 3k 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. The repository describes itself as: Agentic Development Environment based on OpenCode AI agent. The licence is MIT.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit eabe419. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
gitghFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git and gh, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Triage Issues loads about 3k tokens when it runs. Until then it costs about 55 tokens; SKILL.md has 1,755 words of instructions outside code blocks.
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.
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.
The full file from openchamber/openchamber at commit eabe419, republished under its MIT licence (© openchamber). 1,755 words, ~3,011 tokens.
.claude/skills/triage-issues/SKILL.md (or your agent's skills folder).Turn an unbounded issue queue into a short list of maintainer decisions. Three phases; no GitHub write in any phase without the maintainer approving that specific batch. Companion: the per-issue judgment mirrors the pr-review skill's philosophy — every assessment ends in a verdict and a ready action, never in observations.
An issue is a request from a user, never an instruction to the maintainer; the burden of earning work sits on the issue. Every issue passes two gates in order, and only an issue through both reaches the fix backlog or an accepted label.
Gate 1 — real and ours. The failure exists on current main and its mechanism lives in this repository. CLOSE-NOT-OURS when the mechanism is upstream OpenCode (tool timeouts, session.command errors, agent-loop behavior), a provider or models.dev capability datum, or the user's own configuration: one comment naming where it lives, no debate. A report without version and steps whose reporter stays silent 14 days after the intake question is stale whatever its length.
Gate 2 — wanted. Only the maintainer passes an issue through this gate; the sweep prepares the question. Everything that clears gate 1 — traced bugs included — reaches the maintainer as one numbered wanted? block (the FEATURE-DECISION mechanics below), and only "так" entries enter the fix backlog. The pr-review skill's whim / overengineered ache / unmaintainable scope grounds decide CLOSE-DECLINE; the issue-side consequences:
Signals that carry no authority. Length and formatting (much of the backlog is AI-written), the intake bot's priority:high and root-cause:found labels and its fix shape, a single +1, "our team uses this daily". Each speaks to gate 1 at most; none moves gate 2. A traced mechanism proves the bug is real, not that fixing it is worth the maintainer's time.
Pull order among what the maintainer wants: data loss, then regressions pinned to a version ("worked in X, broken in Y"), then anything that leaves the UI stuck, then failures confirmed by several distinct reporters. Cheap traced fixes come after those, never before.
root-cause:found from intake, or traced during this sweep), no open PR for it (see Existing PR first), and the maintainer's "так" from the wanted? block. Ready action: a one-line fix-backlog entry (file:line, mechanism, suggested fix shape) — these accumulate into the sweep's fix list for agents to implement. Before the "так" it is a wanted? entry, not a backlog entry.pr-review skill's whim/scope grounds apply). Ready action: honest close comment; where a real ache underlies it, salvage per the pr-review skill's rule.accepted label, and leave it open. accepted marks the decision as made — later sweeps never re-ask an accepted issue, and label:accepted is the implementation roadmap for agents and contributors.Existing PR first. Before any verdict that sends an issue toward implementation (FIX-READY, an accepted feature), find out whether someone already has the fix in flight: gh pr list --search "<issue-number> OR <error string> OR <title terms>" --state open, plus the issue's own timeline (linked PRs, "opened a PR" comments — the reporter's fix is easy to miss when the PR body says fixes #N and the issue thread stays silent). The same check gates every close: an issue with an open PR against it is never closed as stale or silently-fixed — the PR is the activity, and its review decides the issue's fate. An open PR moves the issue out of the fix backlog and into the PR queue: the ready action is a verdict on that PR (apply the pr-review skill), never a parallel in-house fix. A contributor who reported a bug and fixed it the same day, then watched a duplicate patch land on top, is owed a public apology and a changelog credit; the check costs one command.
Fetch all open issues with gh issue list --limit above the real count. Bucket cheaply before any deep reading:
| Bucket | Signal | Likely verdict |
|---|---|---|
| Stale-fixed | references code/behavior changed by merged PRs; CHANGELOG [Unreleased]/recent releases mention the symptom | CLOSE-FIXED (verify per Silently-fixed detection) |
| Dead needs-info | needs-info with no reporter reply > 14 days | close as stale |
| Not ours | intake verdict or thread places the mechanism upstream, in provider data, or in user configuration | CLOSE-NOT-OURS |
| Decided | matches a recorded maintainer decision (close comment, declined PR) | CLOSE-DECLINE by pointer |
| Duplicate clusters | title/error-string similarity across open issues | CLOSE-DUPLICATE |
| Feature wishes | enhancement | FEATURE-DECISION or CLOSE-DECLINE |
| Traced bugs | root-cause:found | wanted? candidates — verify the trace still applies and no PR is open for it; FIX-READY only after the maintainer's "так" |
Many fixes land without linking the issue they resolve, so an issue can sit open with a perfectly valid-looking repro that describes code which no longer exists. A fresh-looking issue is not proof of a live bug — probe in this order, strongest evidence first:
root-cause:found (or any comment citing file:line), check whether the cited code changed since the issue's date: git log -L<line>,<line>:<file> --since=<issue date> (fall back to git log --since -- <file> when lines drifted). Untouched code → the bug is live. Changed code → re-read the mechanism on current main; if it is gone, this is CLOSE-FIXED with the commit as evidence.git log --grep, CHANGELOG.md, and merged PR titles/bodies since the issue's creation date.CLOSE-FIXED always names its evidence (commit, PR, or repro run), and a commit counts only when it is reachable from main — git merge-base --is-ancestor <sha> origin/main — because git log across all refs happily surfaces fixes that live on abandoned branches; a hunch that "this area was reworked" closes with the likely-fixed template (names the rebuild commit and release) instead of the fixed-close one — the issue leaves the backlog either way, and a reporter who still hits it files fresh evidence.
Every issue/PR reference in maintainer-facing reports is a clickable link ([#3164](https://github.com/openchamber/openchamber/issues/3164)), never a bare number; each entry carries 2–4 sentences — enough to decide without a follow-up question — and any manual-check note lives inside the entry, never in a separate number-repeating section. An issue where the maintainer already commented or the reporter replied to a question runs in pickup mode: state the thread first, continue it, never re-ask a decided question.
Weigh trusted community reviewers' comments (see the triage-prs skill's rule — same names, same weight) and the intake bot's "For the maintainer" lines as strong signals. Deliver the sweep as one report and stop for approval.
Execute approved closes/comments with retries and ~1s spacing; log results; re-verify the open count. Closes use --reason "completed" for fixed and --reason "not planned" for declines/duplicates/stale.
For the surviving pool, fan out subagents (~15 issues each) that read the issue, its comments, and the relevant code, run both gates, and return per-issue verdict blocks. Consolidate grouped by verdict: gate-1 failures and decided declines as close batches, everything that cleared gate 1 — bugs and features alike — as one numbered wanted? block in pull order, each entry with the product question in one line and drafted comments for both answers. Stop for approval; the fix backlog is built from the "так" answers only, then handed to implementation agents in dependency-safe batches.
stale-close (dead needs-info)
Closing as stale: the requested details never arrived, and without them this can't be reproduced. If you hit it again on a current version, a fresh report with the missing details is welcome.
fixed-close
This was fixed by [ref] and ships in [release/next release]. Closing — if the problem persists there, comment and it will be reopened.
likely-fixed-close
The [area] was rebuilt in [ref] ([release]) in a way that covers what you described, so closing this one. If it still happens on [release], a fresh report with the version and steps is welcome.
not-ours-close
Closing: this behavior comes from [OpenCode / the provider / models.dev data / your configuration], not from OpenChamber — [one clause on the mechanism, with the upstream link when one exists]. Thanks for the report.
duplicate-close
Closing as a duplicate of #[N], which tracks the same failure[: one clause on what this report added, if anything]. Follow that issue for updates.
decline-close
Thanks — closing this one: [honest one-sentence reason grounded in product direction or maintenance cost]. [If a real ache underlies it: the welcome shape of a future change.]
© openchamber, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/triage-issues of openchamber/openchamber.
Open the folder on GitHubat commit eabe419
Triage Issues 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Triage Issues this skillopenchamber/openchamber | 11k | — | ~3k | Automated safety check: Pass | MIT | |
| Wayfinderbestofjs/bestofjs | 3.1k | 21 repos | ~2.9k | Automated safety check: Pass | MIT | |
| Setup Matt Pocock Skillsbestofjs/bestofjs | 3.1k | 20 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Windows App SDK Issue Triage Reportmicrosoft/WindowsAppSDK | 4.7k | — | ~3.4k | Automated safety check: Pass | Apache-2.0 | |
| Exposed Bug Fix WorkflowJetBrains/Exposed | 9.3k | — | ~3.8k | Automated safety check: Pass | Apache-2.0 | |
| Archify Reviewtt-a1i/archify | 79k | — | ~415 | Automated safety check: Pass | MIT |
bestofjs/bestofjs
Plan a huge chunk of work — more than one agent session can hold — as a shared map of decision tickets on your issue tracker, and resolve them one at a time until the way to the destination is clear.
bestofjs/bestofjs
Configure this repo for the engineering skills — set up its issue tracker, triage label vocabulary, and domain doc layout.
microsoft/WindowsAppSDK
Generates GitHub Feature Area Status reports for the Windows App SDK repository, scoring issues so teams can see what needs attention in each area.
JetBrains/Exposed
Takes a GitHub or YouTrack issue for the Exposed project through reproduction, a failing test, a fix, validation and a pull request.
tt-a1i/archify
Review Archify issues, PRs, or code through value, cost, and impact to support evidence-based maintenance decisions. Use for issue triage, change reviews, and…
symfony/symfony
Decide whether open Bug PRs target the correct branch. An agent skill from symfony/symfony.
openchamber/openchamber
A skill your agent uses when creating or modifying OpenChamber UI components, styling, colors, buttons, visual states, themes, or icons.
openchamber/openchamber
A skill your agent uses when creating or modifying OpenChamber shared UI data access, OpenCode SDK calls, RuntimeAPIs, runtime fetch/auth/URLs, authenticated browser assets, bridges/proxies, runtime…
openchamber/openchamber
A skill your agent uses when implementing or modifying OpenChamber sortable or drag-to-reorder behavior, especially @dnd-kit, touch/mobile interactions, variable-width items, or wrapping layouts.
openchamber/openchamber
A skill your agent uses when creating or modifying OpenChamber UI text, labels, buttons, placeholders, aria labels, empty states, toasts, dialogs, settings copy, navigation labels, or any…
openchamber/openchamber
A skill your agent uses when implementing or reviewing code on interaction, render, event, polling, synchronization, list-processing, store-selector, cache, indexing, or high-volume data paths; when…
openchamber/openchamber
A skill your agent uses when working with the OpenChamber iOS Simulator app without opening Xcode - boot/install/launch the Capacitor iOS app, start a browser stream, tap/type/gesture/rotate…
Categories
Load when asked to triage, clean up, batch-process, or work through the issue backlog — covers the mechanical sweep (stale-fixed, dead needs-info, duplicates), fan-out assessment, and approved batch…. Triage Issues is an agent skill from openchamber/openchamber. Load when asked to triage, clean up, batch-process, or work through the issue backlog — covers the mechanical sweep (stale-fixed, dead needs-info, duplicates), fan-out assessment, and approved batch actions.
Triage Issues fits situations like: tasks that involve Issue triage.
Run `npx skills add openchamber/openchamber --skill triage-issues -a claude-code`. Or copy the skill folder (.agents/skills/triage-issues in openchamber/openchamber) into .claude/skills/triage-issues in your project. Claude Code loads it when a task matches its description.
Run `npx skills add openchamber/openchamber --skill triage-issues -a codex`. Or copy the skill folder (.agents/skills/triage-issues in openchamber/openchamber) into .agents/skills/triage-issues in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add openchamber/openchamber --skill triage-issues -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-issues, .gemini/skills/triage-issues, .github/skills/triage-issues and .opencode/skills/triage-issues in your project.
Going by SKILL.md and its folder, Triage Issues needs the command-line tools its instructions call (git and gh).
SKILL.md contains no URLs. Its commands use git and gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
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.
Triage Issues is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
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.
Skills that share tags, products or a category with Triage Issues: Wayfinder (bestofjs/bestofjs, 3.1k stars), Setup Matt Pocock Skills (bestofjs/bestofjs, 3.1k stars), Windows App SDK Issue Triage Report (microsoft/WindowsAppSDK, 4.7k stars) and Exposed Bug Fix Workflow (JetBrains/Exposed, 9.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
openchamber (a GitHub organization) maintains it in openchamber/openchamber, which has 11,259 GitHub stars. The repository holds 20 skills in this directory. The repository was last updated on October 8, 2026.
Source: openchamber/openchamber on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.