Octocode Code Research
bgauryy/octocode
Researches code with evidence: traces callers, imports and cross-repo links, diagnoses failures and reports findings with exact file and line references and a confidence label.
Triage a GitHub repository's open issues by finding exact duplicates, rejecting evidenceably off-base requests, requesting concrete clarification, applying only existing labels, and opening a linked…
$ npx skills add arcee-ai/nac --skill triage -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install arcee-ai/nac triage --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/arcee-ai/nac.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/triage .claude/skills/triage && 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" agent skill from https://github.com/arcee-ai/nac/tree/dev/.agents/skills/triage into .claude/skills/triage/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage", 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/arcee-ai/nac/tree/dev/.agents/skills/triageType 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 arcee-ai/nac --skill triage -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install arcee-ai/nac triage --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arcee-ai/nac.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/triage .agents/skills/triage && 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" agent skill from https://github.com/arcee-ai/nac/tree/dev/.agents/skills/triage into .agents/skills/triage/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage", 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 arcee-ai/nac --skill triage -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install arcee-ai/nac triage --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arcee-ai/nac.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/triage .cursor/skills/triage && 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" agent skill from https://github.com/arcee-ai/nac/tree/dev/.agents/skills/triage into .cursor/skills/triage/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage", 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/arcee-ai/nac.git --path .agents/skills/triage--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 arcee-ai/nac --skill triage -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install arcee-ai/nac triage --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arcee-ai/nac.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/triage .gemini/skills/triage && 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" agent skill from https://github.com/arcee-ai/nac/tree/dev/.agents/skills/triage into .gemini/skills/triage/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage", 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 arcee-ai/nac triageInstalls 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 arcee-ai/nac --skill triage -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/arcee-ai/nac.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/triage .github/skills/triage && 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" agent skill from https://github.com/arcee-ai/nac/tree/dev/.agents/skills/triage into .github/skills/triage/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage", 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 arcee-ai/nac --skill triage -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install arcee-ai/nac triage --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arcee-ai/nac.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/triage .opencode/skills/triage && 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" agent skill from https://github.com/arcee-ai/nac/tree/dev/.agents/skills/triage into .opencode/skills/triage/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage", 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.
triageTriage a GitHub repository's open issues by finding exact duplicates, rejecting evidenceably off-base requests, requesting concrete clarification, applying only existing labels, and opening a linked…
Triage is an agent skill from arcee-ai/nac. Triage a GitHub repository's open issues by finding exact duplicates, rejecting evidenceably off-base requests, requesting concrete clarification, applying only existing labels, and opening a linked root-cause issue when multiple reports share one underlying invariant failure. Use when a maintainer asks to triage issues or invokes triage.
Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).
It sits in Development, covering Issue triage and Root cause analysis. It works with GitHub, Model Context Protocol and Rust. The repository describes itself as: Give AI agents ambitious work without losing the plot. nac is an open-source harness for long-running tasks, using a central orchestrator, threads, and structured episodes to… The licence is Apache-2.0.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit dd2be00. 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:
ghFrom the folder's file list and the shell code blocks in SKILL.md.
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.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Triage loads about 2k tokens when it runs. Until then it costs about 87 tokens; SKILL.md has 1,076 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 arcee-ai/nac at commit dd2be00, republished under its Apache-2.0 licence (© arcee-ai). 1,076 words, ~2,048 tokens.
.claude/skills/triage/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Review every open issue in the current GitHub repository and leave the tracker in a more actionable state. When the user asks to triage, perform the authorized issue updates; do not stop at a proposed report.
Build a working ledger before mutating anything:
| Issue | Contract or symptom | Evidence | Related issue/PR | Classification | Label/action |
|---|
A duplicate reports the same observable defect or requests the same end state. Choose the canonical issue based on completeness, existing discussion, active implementation, and age. Dependencies, adjacent code paths, common components, and different manifestations of one architecture problem are not duplicates.
For an exact duplicate:
duplicate label when available.An issue is off-base only when current code, documented trust/support boundaries, or reproducible behavior directly contradicts its premise. Product disagreement, implementation difficulty, low priority, or missing information is not invalidity.
For an evidenceably invalid request:
invalid and close only when the repository defines that label accordingly.Use wontfix only for an explicit maintainer decision not to implement valid behavior, never as a substitute for analysis.
Apply question only when missing information materially changes the implementation or acceptance contract. Ask concrete questions such as:
Explain why each answer matters. Leave the issue open.
Map the issue to the available labels' descriptions, not only their names. Common meanings include:
bug: an existing supported contract is broken;enhancement: new behavior or a new product capability;documentation: documentation is missing or wrong;question: material information is still required;security: credentials, exposure, injection, authorization, dependencies, or another security boundary;performance: latency, completion time, resource growth, or capacity;ui/ux: frontend presentation or user flow;devx: contributor or development quality;critical: only the repository's stated emergency/severity threshold, not merely an issue author's severity word;good first issue or help wanted: only after scope and acceptance criteria are sufficiently bounded.Preserve existing labels and add only matching repository labels. Do not remove maintainer-selected labels during this workflow. If no label matches, leave the issue unlabeled rather than inventing taxonomy.
Open a root-cause issue only when at least two reports share the same demonstrated mechanism or violated invariant and fixing that invariant prevents recurrence. Sharing a subsystem or a vague theme is insufficient. Search all issue states first to ensure the root cause is not already tracked.
A useful root-cause issue contains:
Keep child issues open for their surface-specific contracts. Add a backlink comment to every child explaining how it relates to the root issue and how it remains distinct. Avoid weightless umbrella issues that merely collect links.
Use this order so every destructive action has durable context:
Comments should lead with the decision, cite evidence, distinguish adjacent issues, and state the next action. Do not post generic "needs info" or "duplicate" comments.
Re-read every changed issue from GitHub and confirm:
Report the final counts and URLs: reviewed, labeled, closed as duplicate, closed as invalid, awaiting clarification, unchanged, and root-cause issues opened.
Prefer the harness's native GitHub issue tools when available. With GitHub CLI, the equivalent primitives are gh label list, gh issue list, gh issue view, gh pr list, gh issue edit, gh issue comment, gh issue close, and gh issue create. Request structured JSON for inventories so truncated table output cannot hide bodies, labels, comments, or links.
© arcee-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
SKILL.md and 1 other file in .agents/skills/triage of arcee-ai/nac.
Open the folder on GitHubat commit dd2be00
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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Triage this skillarcee-ai/nac | 281 | — | ~2k | Automated safety check: Pass | Apache-2.0 | |
| Octocode Code Researchbgauryy/octocode | 949 | — | ~1.5k | Automated safety check: Pass | MIT | |
| Herdr Issue Triageherdrdev/herdr | 43k | — | ~517 | Automated safety check: Pass | Apache-2.0 | |
| Issue Triagemono/SkiaSharp | 5.6k | — | ~3.4k | Automated safety check: Pass | MIT | |
| Triagebot Action Bug Triagewithastro/astro | 63k | — | ~639 | Automated safety check: Pass | Custom licence | |
| Issue Triage Loopcobusgreyling/loop-engineering | 11k | — | ~522 | Automated safety check: Pass | MIT |
bgauryy/octocode
Researches code with evidence: traces callers, imports and cross-repo links, diagnoses failures and reports findings with exact file and line references and a confidence label.
herdrdev/herdr
Triages open herdr GitHub issues into a short decision-first Markdown table with a priority light, recommendation, age, reactions and a reason for each.
mono/SkiaSharp
Triage a SkiaSharp GitHub issue or PR into structured JSON with classification (type, area, platform, severity), suggested response, automatable actions, and companion Markdown/HTML reports.
withastro/astro
Takes a bug report for the triagebot-action GitHub Action through reproduction, root-cause diagnosis, an intended-behavior check and a fix attempt.
cobusgreyling/loop-engineering
Scans open GitHub issues and discussions, flags duplicates, scores priority and proposes labels into issue-triage-state.md without ever labeling or closing.
thedotmack/claude-mem
Groups a large GitHub issue backlog by root cause into plan-master issues, redirects the child issues, and bundles one PR per cluster that closes them together.
Works with
Categories
Triage a GitHub repository's open issues by finding exact duplicates, rejecting evidenceably off-base requests, requesting concrete clarification, applying only existing labels, and opening a linked…. Triage is an agent skill from arcee-ai/nac. Triage a GitHub repository's open issues by finding exact duplicates, rejecting evidenceably off-base requests, requesting concrete clarification, applying only existing labels, and opening a linked root-cause issue when multiple reports share one underlying invariant failure.
Triage fits situations like: A maintainer asks to triage issues; tasks that involve Issue triage; tasks that involve Root cause analysis.
Run `npx skills add arcee-ai/nac --skill triage -a claude-code`. Or copy the skill folder (.agents/skills/triage in arcee-ai/nac) into .claude/skills/triage in your project. Claude Code loads it when a task matches its description.
Run `npx skills add arcee-ai/nac --skill triage -a codex`. Or copy the skill folder (.agents/skills/triage in arcee-ai/nac) into .agents/skills/triage 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 arcee-ai/nac --skill 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/triage, .gemini/skills/triage, .github/skills/triage and .opencode/skills/triage in your project.
Going by SKILL.md and its folder, Triage needs the command-line tools its instructions call (gh).
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.
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 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.
About 2k tokens (SKILL.md is roughly 8.2k 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: Octocode Code Research (bgauryy/octocode, 949 stars), Herdr Issue Triage (herdrdev/herdr, 43k stars), Issue Triage (mono/SkiaSharp, 5.6k stars) and Triagebot Action Bug Triage (withastro/astro, 63k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
arcee-ai (a GitHub organization) maintains it in arcee-ai/nac, which has 281 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 9, 2026.
Source: arcee-ai/nac on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.