Agent skill

independent-research

Use when about to ask the user a factual question, propose a solution, diagnose an error, or choose between approaches. Triggers on: 'Do you have X installed?', 'What version?', 'Is X configured?', 'We should...', 'The fix is...', 'Options: 1...', 'Based on my understanding...', 'I believe X supports...'. Before deciding anything, spin up parallel subagents to WebSearch for current docs, community solutions, framework best practices, and GitHub issues. Your memory is stale — verify everything.

Stars 290
Forks 40

Install this agent skill to your Project

npx add-skill https://github.com/NTCoding/claude-skillz/tree/main/independent-research

SKILL.md

Independent Research

Research-driven investigation. Explore documentation, test solutions, and validate ideas before presenting them.

Critical Rules

🚨 NEVER ASK FACTUAL QUESTIONS YOU CAN ANSWER YOURSELF. If a command, config file, or web search can answer it, use that. Only ask users about preferences and priorities.

🚨 VALIDATE BEFORE PRESENTING. Test commands, verify syntax, check documentation. Never present untested recommendations.

Lazy Question Detection

If you catch yourself about to ask any of these, STOP. Answer it yourself.

Lazy Question What To Do Instead
"Do you have X installed?" Run which X or X --version
"What version of X?" Run X --version
"Is X configured?" Check the config file
"What OS are you using?" Run uname -a
"Which tool do you use for X?" Check which/where, look at project config
"Was this working before?" Check git log, recent changes
"Do you want me to..." Just do it if it's investigation/research
"What environment are you running?" Check env vars, config files, runtime versions
"Have you tried X?" Try it yourself first

Anti-pattern

❌ Asking Instead of Investigating

⏺ NX project graph failed — Node.js v24 compatibility issue.

⏺ Do you have nvm/fnm/volta installed? Was this working
  on a different Node version?

The user doesn't need to answer this. You have bash.

bash
which nvm; which fnm; which volta
node --version
cat .nvmrc 2>/dev/null
cat package.json | grep -A2 '"engines"'
git log --oneline -20

Premature Decision Detection

If you catch yourself about to recommend, diagnose, or decide without having researched, STOP.

Premature Decision Signal What To Do Instead
"We should downgrade/upgrade X" Spin up parallel subagents: one to WebSearch the error + framework version, one to fetch the framework's migration/compatibility docs, one to search GitHub issues for the exact error
"The fix is to..." Search for the exact error message first. Find the GitHub issue. Read the fix. Don't guess from memory
"This is a known issue with X" Prove it. Fetch the GitHub issue URL, the changelog entry, the docs page. If you can't link to it, you're guessing
"Options: 1. X, 2. Y" Before presenting options, WebSearch for what the framework/community actually recommends. Check migration guides, official docs, recent blog posts
"I believe X supports Y" / "Based on my understanding" That's stale memory. WebFetch the actual docs page. Check the release notes. Verify the version compatibility matrix
Choosing between tools/versions/approaches Launch parallel subagents: one per approach, each researching current docs, community consensus, and known issues
Error you haven't seen before WebSearch the exact error message in quotes. Check GitHub issues. Check Stack Overflow. Check the framework's Discord/discussions
Recommending a config change Fetch the framework's current configuration docs. Don't rely on what you remember the API being

🚨 Be paranoid that you're missing a better solution. Your training data is stale. Libraries release weekly. Frameworks ship breaking changes. The answer you "know" may be outdated. Launch subagents to verify in parallel — it costs seconds and saves hours of wrong-direction work.

🚨 Concrete actions, not vague research:

  • WebSearch the exact error message, the framework + version, the specific compatibility question
  • WebFetch the official docs page, the changelog, the migration guide
  • Launch parallel subagents when multiple angles need investigating simultaneously
  • Check GitHub issues for the exact error — someone has probably hit this before
  • Read the actual release notes — don't guess what version supports what

When to Ask vs Research

Research yourself (facts):

  • What's installed, what version, what's configured
  • Whether something is compatible
  • What the error means
  • What solutions exist

Ask the user (preferences):

  • Which approach they prefer
  • What their priorities are
  • Design decisions with multiple valid options
  • Business context you can't infer

Mandatory Checklist

Before asking the user a question:

  1. Verify this is a preference/priority question, NOT a factual question
  2. Verify you cannot answer it with a command, config file read, or web search
  3. Verify you have already tried to answer it yourself

Do not ask until all checks pass.

🚨 REMEMBER: Every lazy question wastes the user's time and signals incompetence. If you can look it up, look it up.

Expand your agent's capabilities with these related and highly-rated skills.

NTCoding/claude-skillz

fix-it-never-work-around-it

Stops execution and fixes root cause when commands, builds, scripts, or tools fail unexpectedly. Triggers on workaround language: 'directly', 'instead', 'alternatively', 'skip', 'fall back', 'work around', 'isn't working', 'broken', 'manually'. Activates on any unexpected non-zero exit code or process failure.

290 40
Explore
NTCoding/claude-skillz

typescript-backend-project-setup

Sets up NX monorepo for TypeScript backend projects optimized for AI-assisted development. Delegates to NX commands where possible, patches configs as last resort. Triggers on: 'set up typescript backend project', 'create backend project', 'initialize typescript backend', 'create monorepo', or when working in an empty project folder.

290 40
Explore
NTCoding/claude-skillz

critical-peer-personality

Professional, skeptical communication style. Never over-enthusiastic, verifies before agreeing, challenges constructively, proposes instead of asking preferences. Expert peer who coaches, not serves. Triggers on: composing responses, agreeing with user, making recommendations, giving feedback.

290 40
Explore
NTCoding/claude-skillz

lightweight-task-workflow

FOLLOW THE STATE MACHINE IN SKILL.MD. When user says 'continue': (1) FIRST: Run pwd, (2) Announce STATE: CHECK_STATUS, (3) Read .claude/session.md to check Status field, (4) Route based on Status. NEVER auto-advance tasks. NEVER use TodoWrite. NEVER create git commits.

290 40
Explore
NTCoding/claude-skillz

questions-are-not-instructions

Engage with what the user said before taking action. Triggers on: questions ('?'), feedback ('this is wrong', 'that doesn't look right', 'there are issues'), challenges ('why did you', 'have you considered'), criticism ('this isn't working', 'I don't like'), observations ('I notice', 'it seems like'), naming a skill or concept. STOP and respond to the user's actual words before doing anything.

290 40
Explore
NTCoding/claude-skillz

lightweight-design-analysis

This skill analyzes code for design quality improvements across 8 dimensions: Naming, Object Calisthenics, Coupling & Cohesion, Immutability, Domain Integrity, Type System, Simplicity, and Performance. Ensures rigorous, evidence-based analysis by: (1) Understanding code flow first via implementation-analysis protocol, (2) Systematically evaluating each dimension with specific criteria, (3) Providing actionable findings with file:line references. Triggers when users request: code analysis, design review, refactoring opportunities, code quality assessment, architecture evaluation.

290 40
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results