Agent skill

Diagnosing Bugs

by nodetool-ai in nodetool-ai/nodetool

Diagnose code failures, intermittent bugs, and performance regressions.

AGPL-3.0Auto-check passed

Install Diagnosing Bugs

skills CLI
$ npx skills add nodetool-ai/nodetool --skill diagnosing-bugs -a claude-code

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

GitHub CLI
$ gh skill install nodetool-ai/nodetool diagnosing-bugs --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/nodetool-ai/nodetool.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/diagnosing-bugs .claude/skills/diagnosing-bugs && 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
diagnosing-bugs
GitHub stars
560
Token cost
~706 tokens
SKILL.md length
372 words
Files
2 (incl. scripts)
Skills in repo
127
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Diagnose code failures, intermittent bugs, and performance regressions.

  • SKILL.md covers Establish the failure, Test the cause and Fix and verify
  • Runs Shell scripts from its folder

What it does

Diagnosing Bugs is an agent skill from nodetool-ai/nodetool. Diagnose code failures, intermittent bugs, and performance regressions. For NodeTool workflow-run failures, use nodetool-troubleshooter.

Its SKILL.md is about 710 tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/hitl-loop.template.sh`).

The repository describes itself as: Agent-first Creative Workspace. The licence is AGPL-3.0.

Example prompts

  • “/diagnosing-bugs”

Requirements

  • A Bash shell

What it can do on your machine

Read from SKILL.md and the folder at commit 339f069. 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

    Ships 1 file in scripts/ (Shell), which the agent can run.

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

  • Network

    No URLs in SKILL.md.

    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

Diagnosing Bugs loads about 706 tokens when it runs. Until then it costs about 38 tokens; SKILL.md has 372 words of instructions outside code blocks.

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

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); the scripts in this folder are not scanned.

SKILL.md

The full file from nodetool-ai/nodetool at commit 339f069, republished under its AGPL-3.0 licence (© nodetool-ai). 372 words, ~706 tokens.

Download SKILL.mdSave it as .claude/skills/diagnosing-bugs/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
diagnosing-bugs
description
Diagnose code failures, intermittent bugs, and performance regressions. For NodeTool workflow-run failures, use nodetool-troubleshooter.

Diagnosing Bugs

Find the cause of the reported symptom, fix it within the requested scope, and retain evidence that the fix works. Read relevant code and logs to construct a reproduction. Existing domain terms and ADRs constrain the diagnosis.

Establish the failure

Prefer an existing harness or test that reaches the affected behavior. Otherwise build the smallest practical test, CLI invocation, HTTP request, or browser scenario. Read the applicable entry in the harness reference before using a harness.

Run the reproduction before changing behavior. Capture the command, exit status, input, and observed symptom. An unrelated setup failure does not reproduce the bug. Reduce inputs when useful, retaining the original case.

For intermittent failures, record the observed rate and conditions. Use seeded inputs, bounded repetition, or targeted stress to improve the signal. For performance regressions, capture a comparable timing or profiler baseline before the fix. Avoid arbitrary repetition targets or latency requirements for the harness.

If the environment cannot reproduce the failure, continue useful code and log inspection and label hypotheses as unverified. Request only the missing artifact or access needed to establish the failure. Do not claim a reproduced or fixed bug without evidence, or add production instrumentation without authorization.

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

Test the cause

State a falsifiable hypothesis and the observation that would distinguish it from plausible alternatives. Use a debugger, targeted instrumentation, or bisection as appropriate. Change one relevant variable at a time and update the hypothesis from the result. Do not invent extra hypotheses to meet a quota.

Tag temporary instrumentation so it can be removed. Preserve unrelated edits when reverting an experiment.

Fix and verify

Retain the reproduction as a regression test or runnable fixture at a boundary that exercises the real failure. Observe it fail before the fix and pass after. Recheck the original scenario if the retained case was reduced.

If no suitable test boundary exists, explain the limitation and retain the best available reproduction. Do not substitute a test that cannot detect the symptom. Report necessary architectural follow-up without starting an unrelated refactor.

Remove temporary instrumentation and files created only for the experiment. Complete the mandatory post-change verification. Report the cause, changed behavior, and actual verification results. Stop when the requested fix and required checks are complete.

© nodetool-ai, AGPL-3.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 (scripts) in .agents/skills/diagnosing-bugs of nodetool-ai/nodetool.

  • SKILL.md
  • scripts/hitl-loop.template.sh

Open the folder on GitHubat commit 339f069

Compare with similar skills

Diagnosing Bugs 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.

Diagnosing Bugs compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Diagnosing Bugs this skillnodetool-ai/nodetool560—~706Automated safety check: PassAGPL-3.0
Diagnose Playwright Failure as Product Bugappsmithorg/appsmith41k—~1.5kAutomated safety check: PassApache-2.0
Diagnosing Bugsvinvcn/mattpocock-skills-zh-CN4.7k—~1.4kAutomated safety check: PassMIT
Diagnosing Bugsgetsentry/sentry-react-native1.8k—~1.4kAutomated safety check: PassMIT
Diagnosing Bugsfossasia/eventyay-interpretation1.6k32 repos~2.1kAutomated safety check: PassApache-2.0
Diagnose Gatewayopenclaw/openclaw392k—~670Automated safety check: PassMIT

Similar skills

  • Investigates a stubbornly failing Playwright test as a possible product bug, using error output, screenshots, traces and server code, and writes a structured bug report.

    41k GitHub stars~1.5k tokensUpdated today
    Testing & QAAuto-check passed
  • Diagnosing Bugs

    vinvcn/mattpocock-skills-zh-CN

    面向棘手缺陷和性能回退的诊断循环。适用于用户说 “diagnose” / “debug this”,或报告某些东西 broken、throwing、failing、slow 时。

    4.7k GitHub stars~1.4k tokensUpdated yesterday
    Testing & QAAuto-check passed
  • Diagnosing Bugs

    getsentry/sentry-react-native

    Official

    A discipline for hard bugs, flaky tests, CI hangs, native crashes, and performance regressions in this SDK.

    1.8k GitHub stars~1.4k tokensUpdated today
    Testing & QAAuto-check passed
  • Diagnosing Bugs

    fossasia/eventyay-interpretation

    Diagnosis loop for hard bugs and performance regressions. An agent skill from fossasia/eventyay-interpretation.

    1.6k GitHub starsUsed in 32 repos~2.1k tokens
    Testing & QAAuto-check passed
  • Diagnose Gateway

    openclaw/openclaw

    Diagnose Gateway, config, secrets, channels, and port failures with read-only one-liners.

    392k GitHub stars~670 tokensUpdated today
    Auto-check passed
  • Diagnose Backend Bug

    QoderAI/better-harness

    Diagnose a bounded backend or multi-service failure from GitHub Issues, Jira, Aone, user-provided exports, logs, traces, responses, stack traces, or job records.

    2.4k GitHub stars~1.2k tokensUpdated 2 days ago
    Backend & APIsAuto-check passed

More from nodetool-ai/nodetool

All 127 skills in this repo
  • Beat Sync Editing

    nodetool-ai/nodetool

    Cut a NodeTool timeline to music and shape its pacing — detect the beat grid, place cuts on phrases, pick a cut type, build speed ramps with time remap, and give the piece an arc.

    560 GitHub stars~2.6k tokensUpdated today
    Auto-check passed
  • Caption Titles

    nodetool-ai/nodetool

    Add and animate a consistent text layer on an existing NodeTool timeline.

    560 GitHub stars~1.9k tokensUpdated today
    Auto-check passed
  • Color Motion

    nodetool-ai/nodetool

    Choose and animate colour on a NodeTool timeline, including shape and text gradients, colour grades, 3D LUTs, and dither.

    560 GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Commercial Beat Sheet

    nodetool-ai/nodetool

    Write a shootable, precisely timed commercial beat sheet and store it as a NodeTool storyboard, with a consistent entity roster behind every shot.

    560 GitHub stars~4.6k tokensUpdated today
    Auto-check passed
  • Elevenlabs Audio Prompting

    nodetool-ai/nodetool

    Direct ElevenLabs speech, dialogue, sound effects and music — the bracketed audio tags v3 acts on and why the voice decides whether a tag lands, stability as the delivery dial, punctuation instead…

    560 GitHub stars~1.9k tokensUpdated today
    Auto-check passed
  • Frame Composition

    nodetool-ai/nodetool

    Stage the frame on a NodeTool timeline — grids, focal placement, safe areas per aspect ratio, depth layers and parallax, camera moves, and where elements enter and leave.

    560 GitHub stars~3.5k tokensUpdated today
    Auto-check passed

Questions about Diagnosing Bugs

What does Diagnosing Bugs do?

Diagnose code failures, intermittent bugs, and performance regressions. Diagnosing Bugs is an agent skill from nodetool-ai/nodetool. Diagnose code failures, intermittent bugs, and performance regressions.

How do I install Diagnosing Bugs in Claude Code?

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

How do I install Diagnosing Bugs in Codex?

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

Can I use Diagnosing Bugs 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 nodetool-ai/nodetool --skill diagnosing-bugs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/diagnosing-bugs, .gemini/skills/diagnosing-bugs, .github/skills/diagnosing-bugs and .opencode/skills/diagnosing-bugs in your project.

What does Diagnosing Bugs need to run?

Going by SKILL.md and its folder, Diagnosing Bugs needs a shell for the scripts in its folder. Our summary lists: A Bash shell.

Does Diagnosing Bugs access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Diagnosing Bugs 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Diagnosing Bugs use?

Diagnosing Bugs is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Diagnosing Bugs use?

About 706 tokens (SKILL.md is roughly 2.8k 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 Diagnosing Bugs?

Skills that share tags, products or a category with Diagnosing Bugs: Diagnose Playwright Failure as Product Bug (appsmithorg/appsmith, 41k stars), Diagnosing Bugs (vinvcn/mattpocock-skills-zh-CN, 4.7k stars), Diagnosing Bugs (getsentry/sentry-react-native, 1.8k stars) and Diagnosing Bugs (fossasia/eventyay-interpretation, 1.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Diagnosing Bugs?

nodetool-ai (a GitHub organization) maintains it in nodetool-ai/nodetool, which has 560 GitHub stars. The repository holds 127 skills in this directory. The repository was last updated on October 10, 2026.

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