agentleFS
atomicinnovationatomicinnovation/accelerator/skills/research/research-issue/SKILL.md

research-issue

Skill34 starsChanged 51 days agoMITView on GitHub

Investigate production issues and bugs through hypothesis-driven

The file

Show its rules and text

We split this skill into the rules it gives an agent

26 rules. About 0 are common, 24 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈24

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    If no "Agent Names" section appears above, use these defaults: accelerator:reviewer, accelerator:codebase-locator, …

    line 18
  2. Distinctive:

    When this command is invoked, respond with:

    line 32
  3. Distinctive:

    Read the relevant source files FULLY (no limit/offset) to understand context

    line 58
  4. Distinctive:

    Look for recent modifications that correlate with when the issue started

    line 65
  5. Distinctive:

    Check if any recent refactoring touched the affected code paths

    line 66
  6. Distinctive:

    Use the {codebase analyser agent} to trace specific code paths

    line 80
  7. Distinctive:

    Use the {codebase pattern finder agent} to find similar patterns that might reveal the issue

    line 81
  8. Distinctive:

    Use the {codebase locator agent} to find related components

    line 83
  9. Distinctive:

    Wait for ALL sub-agents to complete

    line 89
  10. Distinctive:

    Write the RCA document to the configured research directory using this template:

    line 97
  11. Distinctive:

    Before writing the artifact file, substitute every field below with the indicated value:

    line 102
  12. Distinctive:

    only: when it has a value, and omit it entirely otherwise (do not carry the empty placeholder through).

    line 120
  13. Very specific:

    Validate the frontmatter: after writing, run corpus frontmatter validate over the RCA document you just wrote:

    line 135
  14. Distinctive:

    If it exits non-zero, the RCA document violates the canonical frontmatter standard.

    line 142
  15. Distinctive:

    Ask if they want deeper investigation on any aspect

    line 152
  16. Distinctive:

    STOP and go back to step 6.

    line 160
  17. Distinctive:

    Always use parallel Task agents to maximise efficiency

    line 161
  18. Distinctive:

    File reading: Always read affected files FULLY (no limit/offset)

    line 169
  19. Distinctive:

    Critical ordering: Follow the numbered steps exactly

    line 170
  20. Distinctive:

    ALWAYS classify input before investigating (step 1)

    line 171
  21. Distinctive:

    ALWAYS check VCS history on affected files (step 3)

    line 172
  22. Distinctive:

    ALWAYS form hypotheses before spawning agents (step 4)

    line 173
  23. Distinctive:

    ALWAYS wait for all sub-agents before synthesising (step 6)

    line 174
  24. Distinctive:

    ALWAYS write the RCA document to a file before presenting findings (step 6 before step 7)

    line 175
  25. Distinctive:

    NEVER write the RCA document with placeholder values

    line 177
  26. Distinctive:

    NEVER skip the file write — the document IS the output of this skill

    line 178

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “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

Research Issue

!accelerator config context --skill research-issue --fail-safe !accelerator config agents --fail-safe

If no "Agent Names" section appears above, use these defaults: accelerator:reviewer, accelerator:codebase-locator, accelerator:codebase-analyser, accelerator:codebase-pattern-finder, accelerator:documents-locator, accelerator:documents-analyser.

Research directory: !accelerator config path research_issues --fail-safe

You are tasked with investigating production issues and bugs through hypothesis-driven debugging. You accept structured input (stacktraces, logs, error messages) or vague behavioral descriptions and produce a root cause analysis document.

Initial Setup:

When this command is invoked, respond with:

I'm ready to investigate the issue. Please provide the stacktrace, error message, logs, or description of the behavior you're seeing, and I'll conduct a hypothesis-driven root cause analysis.

Then wait for the user's issue description.

Steps to follow after receiving the issue description:

Step 1: Extract and classify input

  • Determine input type: Structured (stacktrace/logs), Vague (behavioral description), or Mixed
  • For structured input: extract error messages, file paths, line numbers, timestamps, request IDs, affected services
  • For vague input: identify keywords, affected features, conditions under which the issue occurs, frequency patterns
  • For intermittent/vague issues: specifically look for race conditions, state variance, non-deterministic code paths

Step 2: Map to code

  • For structured input: resolve stacktrace frames to actual source files, check if referenced lines still match (code may have changed since the error)
  • For vague input: identify code paths for the affected functionality
  • Read the relevant source files FULLY (no limit/offset) to understand context
  • Note any error handling, state management, or concurrency patterns

Step 3: Check recent changes

  • Review each affected file's recent history (its last ~20 revisions) using the session's VCS log command
  • Look for recent modifications that correlate with when the issue started
  • Check if any recent refactoring touched the affected code paths
  • Inspect suspicious commits using the session's VCS diff command if needed

Step 4: Form hypotheses (2-3 theories)

  • Based on the evidence gathered, formulate 2-3 plausible root causes
  • Each hypothesis should be testable through code inspection
  • Rank hypotheses by likelihood based on available evidence
  • For vague/intermittent issues: always consider timing, ordering, and state as hypothesis categories

Step 5: Investigate in parallel

  • Spawn sub-agent tasks to investigate each hypothesis concurrently
  • Use the {codebase analyser agent} to trace specific code paths
  • Use the {codebase pattern finder agent} to find similar patterns that might reveal the issue
  • Use the {codebase locator agent} to find related components
  • Each agent should look for evidence FOR and AGAINST its assigned hypothesis
  • Collect specific file paths and line numbers as evidence

Step 6: Synthesise into RCA document and populate frontmatter

  • Wait for ALL sub-agents to complete
  • Evaluate each hypothesis: Confirmed, Eliminated, or Inconclusive
  • Identify the root cause with specific code references
  • Construct the causal chain from trigger to failure
  • Propose fix options with risk/effort assessment
  • Gather metadata using accelerator corpus metadata derive to obtain Current Date/Time (UTC):, Current Revision:, and Repository Name:.
  • Write the RCA document to the configured research directory using this template:

!accelerator config template rca --fail-safe

Before writing the artifact file, substitute every field below with the indicated value:

  • type: ← issue-research
  • id: ← the filename stem, always quoted as a YAML string
  • title: ← Investigation: {Brief Issue Description}
  • date: ← the Current Date/Time (UTC): value
  • author: ← the author resolved per the standard chain (config → VCS user → prompt)
  • producer: ← research-issue
  • status: ← complete
  • revision: ← the Current Revision: value
  • repository: ← the Repository Name: value
  • last_updated: ← the same Current Date/Time (UTC): value
  • last_updated_by: ← the same value resolved for author
  • schema_version: ← 1 (bare integer)

Optional linkage/foreign-ref keys are omit-by-default: the template shows each as ""/[], but write a key into the artifact only when it has a value, and omit it entirely otherwise (do not carry the empty placeholder through).

  • parent: ← the work item this investigation supports, as a typed-linkage ref ("work-item:NNNN"). Fill when the RCA has an owning work item; otherwise omit the key.
  • relates_to: ← list of typed-linkage refs to related research (["issue-research:NNNN", ...]). Fill when related artifacts are explicit; otherwise omit the key.
  • work_item_id: ← the linked work item's full ID (quoted). Fill when the RCA is linked to a work item; otherwise omit the key.
  • Filename format: YYYY-MM-DD-description.md where description is a brief kebab-case summary of the issue (e.g., 2025-01-08-auth-timeout-on-refresh.md)

Validate the frontmatter: after writing, run corpus frontmatter validate over the RCA document you just wrote:

accelerator corpus frontmatter validate --file <path>

If it exits non-zero, the RCA document violates the canonical frontmatter standard; report the emitted violation and fix the frontmatter before completing.

Step 7: Present findings (ONLY after the file has been written)

  • Confirm the file path where the RCA document was saved
  • Summarise the root cause concisely
  • Highlight the recommended fix with rationale
  • Include key file references for easy navigation
  • Ask if they want deeper investigation on any aspect

Important notes:

  • MANDATORY FILE OUTPUT: You MUST write the RCA document to a file in the configured research directory. NEVER present findings only as conversation output. The file write in step 6 is NOT optional — it is the primary deliverable of this skill. If you reach step 7 without having written a file, STOP and go back to step 6.
  • Always use parallel Task agents to maximise efficiency
  • Hypothesis-driven: generate theories THEN test them — don't just explore breadth-first
  • For vague/intermittent issues: look for race conditions, state variance, non-deterministic paths, timing dependencies
  • Evidence-based: every conclusion must reference specific code
  • The RCA document should be self-contained and actionable
  • Include the causal chain — not just "what" but "why" and "how"
  • File reading: Always read affected files FULLY (no limit/offset)
  • Critical ordering: Follow the numbered steps exactly
    • ALWAYS classify input before investigating (step 1)
    • ALWAYS check VCS history on affected files (step 3)
    • ALWAYS form hypotheses before spawning agents (step 4)
    • ALWAYS wait for all sub-agents before synthesising (step 6)
    • ALWAYS write the RCA document to a file before presenting findings (step 6 before step 7)
    • NEVER write the RCA document with placeholder values
    • NEVER skip the file write — the document IS the output of this skill

!accelerator config instructions research-issue --fail-safe

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.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

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.