agentleFS
rcdelfinrcdelfin/agentkit/skills/debugging/investigate/SKILL.md

investigate

Skill2 starsChanged 3 months agoMITView on GitHub

Systematic debugging with evidence-first root-cause analysis. Use when asked to debug, fix a bug, explain unexpected behavior, investigate an error, or perform root-cause analysis. Do not implement a fix until its cause is supported by evidence.

128 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use pair-agent, plan-devex-review and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • seek888Skill

    pair-agent

    Pair a remote AI agent with your browser. One command generates a setup key and prints instructions the other agent can follow to connect. Works with OpenClaw, Hermes, Codex, Cursor, or any agent that can make HTTP requests. The remote agent gets its own tab with scoped access (read+write by default, admin on request). Use when asked to "pair agent", "connect agent", "share browser", "remote browser", "let another agent use my browser", or "give browser access". (gstack) Voice triggers (speech-to-text aliases): "pair agent", "connect agent", "share my browser", "remote browser access".

    Also in 10 projects that use this

  • seek888Skill

    plan-devex-review

    Interactive developer experience plan review. Explores developer personas, benchmarks against competitors, designs magical moments, and traces friction points before scoring. Three modes: DX EXPANSION (competitive advantage), DX POLISH (bulletproof every touchpoint), DX TRIAGE (critical gaps only). Use when asked to "DX review", "developer experience audit", "devex review", or "API design review". Proactively suggest when the user has a plan for developer-facing products (APIs, CLIs, SDKs, libraries, platforms, docs). (gstack) Voice triggers (speech-to-text aliases): "dx review", "developer experience review", "devex review", "devex audit", "API design review", "onboarding review".

    Also in 13 projects that use this

  • ShreyRaviSkill

    landing-report

    Read-only queue dashboard for workspace-aware ship. Shows which VERSION slots are currently claimed by open PRs, which sibling Conductor workspaces have WIP work likely to ship soon, and what slot /ship would pick next. No mutations — just a snapshot. Use when asked to "landing report", "what's in the queue", "show me open PRs", or "which version do I claim next". (gstack)

    Also in 7 projects that use this

  • ayudaySkill

    setup-deploy

    Configure deployment settings for /land-and-deploy. Detects your deploy platform (Fly.io, Render, Vercel, Netlify, Heroku, GitHub Actions, custom), production URL, health check endpoints, and deploy status commands. Writes the configuration to CLAUDE.md so all future deploys are automatic. Use when: "setup deploy", "configure deployment", "set up land-and-deploy", "how do I deploy with gstack", "add deploy config".

    Also in 14 projects that use this

  • ayudaySkill

    cso

    Chief Security Officer mode. Performs OWASP Top 10 audit, STRIDE threat modeling, attack surface analysis, auth flow verification, secret detection, dependency CVE scanning, supply chain risk assessment, and data classification review. Use when: "security audit", "threat model", "pentest review", "OWASP", "CSO review".

    Also in 17 projects that use this

  • ramybarsoumSkill

    document-release

    Post-ship documentation update. Reads all project docs, cross-references the diff, updates README/ARCHITECTURE/CONTRIBUTING/CLAUDE.md to match what shipped, polishes CHANGELOG voice, cleans up TODOS, and optionally bumps VERSION. Use when asked to "update the docs", "sync documentation", or "post-ship docs". Proactively suggest after a PR is merged or code is shipped.

    Also in 18 projects that use this

  • +1 more from seek888

The file

Show its rules and text

We split this skill into the rules it gives an agent

22 rules. 0 are common, 21 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 115 edited versions we read keep these.

  • 21

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    If missing context blocks useful work, ask one focused question.

    line 35
  2. Distinctive:

    Read repository guidance before code.

    line 40
  3. Distinctive:

    follow data, state ownership, validation, and error handling

    line 44
  4. Distinctive:

    Use semantic navigation when available.

    line 48
  5. Distinctive:

    When behavior or intent is ambiguous, inspect target-symbol history:

    line 53
  6. Distinctive:

    use blame/log to find introducing, modifying, reverting, or related commits

    line 55
  7. Distinctive:

    check accompanying tests, docs, migrations, or issue references

    line 56
  8. Distinctive:

    treat commit messages as context, not proof.

    line 58
  9. Distinctive:

    Prefer a deterministic minimal reproduction.

    line 64
  10. Very specific:

    If reproduction fails, do not claim the bug is fixed.

    line 68
  11. Distinctive:

    Write one specific claim:

    line 74
  12. Distinctive:

    Use the least invasive discriminating check: existing test, focused reproduction, assertion, trace, query, or controlled input.

    line 94
  13. Distinctive:

    After three failed hypotheses, stop and report that the issue may be architectural, intermittent, or under-observed.

    line 99
  14. Distinctive:

    avoid unrelated refactors and speculative hardening

    line 107
  15. Distinctive:

    add validation at trust boundaries and preserve data-loss prevention

    line 108
  16. Distinctive:

    add a regression test that fails before the fix and passes after it

    line 109
  17. Distinctive:

    if the change spans more than five files, explain the blast radius before editing

    line 110
  18. Distinctive:

    No fix without a supported root cause.

    line 141
  19. Distinctive:

    No symptom-only guards when a shared cause is reachable.

    line 142
  20. Distinctive:

    No broad rewrite to solve a narrow failure.

    line 143
  21. Distinctive:

    Do not hide failed reproductions or contradictory evidence.

    line 144
  22. Distinctive:

    Do not modify unrelated files.

    line 145

“Common” is measured: kept by at least 6 in 10 of the 115 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Investigate

Mission

Find and verify the cause before changing code. Fix the narrowest shared cause, not each visible symptom. Keep an evidence trail so conclusions are reviewable.

Procedure

1. Frame the failure

Record:

  • observed symptom and exact error text
  • expected behavior
  • reproduction steps, inputs, environment, and frequency
  • affected users, paths, or data
  • first known bad version, if available

If missing context blocks useful work, ask one focused question. Otherwise continue with explicit assumptions.

2. Map the actual path

Read repository guidance before code. Trace from entry point to symptom:

  1. locate the failing symbol, route, job, command, or UI event
  2. inspect callers and callees, not only the named file
  3. follow data, state ownership, validation, and error handling
  4. inspect tests covering the path
  5. inspect recent changes to affected files

Use semantic navigation when available; fall back to identifier search and targeted file reads. Do not edit during this phase.

Historical cross-check

When behavior or intent is ambiguous, inspect target-symbol history:

  • use blame/log to find introducing, modifying, reverting, or related commits
  • check accompanying tests, docs, migrations, or issue references
  • compare historical contract with current callers and behavior
  • treat commit messages as context, not proof; current evidence wins

Skip broad history archaeology for obvious local errors.

3. Reproduce and collect evidence

Prefer a deterministic minimal reproduction. Run the smallest relevant check first, then broaden it. Capture command, input, result, and whether result supports or contradicts each hypothesis.

If reproduction fails, do not claim the bug is fixed. Increase observability with a temporary assertion/log/diagnostic, or report the limitation and request the missing evidence.

4. Form testable hypotheses

Write one specific claim:

Component/state X produces value Y because condition Z, causing symptom S.

Rank alternatives by evidence. Check common shapes without assuming them:

  • null or invalid input propagation
  • wrong state owner or stale state
  • boundary/serialization mismatch
  • race, ordering, retry, or transaction failure
  • configuration or environment drift
  • cache or generated-artifact staleness
  • dependency or external-service contract change

For each hypothesis, name one observation that would confirm it and one that would falsify it. Test the highest-value hypothesis first. Never call a plausible story a root cause.

5. Confirm before fixing

Use the least invasive discriminating check: existing test, focused reproduction, assertion, trace, query, or controlled input. Remove temporary diagnostics after confirmation. If evidence contradicts the hypothesis, return to path mapping and form a new one.

After three failed hypotheses, stop and report that the issue may be architectural, intermittent, or under-observed. Ask whether to continue with a new evidence source, add instrumentation, or escalate.

6. Implement the smallest root-cause fix

  • change the shared layer used by all affected callers when possible
  • preserve existing project patterns
  • avoid unrelated refactors and speculative hardening
  • add validation at trust boundaries and preserve data-loss prevention
  • add a regression test that fails before the fix and passes after it
  • if the change spans more than five files, explain the blast radius before editing

7. Verify

Run, in order:

  1. original reproduction, now passing
  2. new regression test
  3. focused suite/typecheck/lint/build relevant to changed code
  4. broader suite when practical
  5. relevant edge cases and error paths

Separate verified facts from remaining uncertainty. Never say “should fix” without running evidence.

Output

DEBUG REPORT
Symptom:         ...
Root cause:      ...
Fix:             file:line and behavior changed
Evidence:        commands/results proving cause and fix
Regression test: file:line, or why unavailable
Blast radius:    callers/modules checked
Open concerns:   none, or explicit limitation
Status:          DONE | DONE_WITH_CONCERNS | BLOCKED

Hard rules

  • No fix without a supported root cause.
  • No symptom-only guards when a shared cause is reachable.
  • No broad rewrite to solve a narrow failure.
  • Do not hide failed reproductions or contradictory evidence.
  • Do not modify unrelated files.
  • Escalate after three failed hypotheses or when verification is impossible.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.