Look things up before you code. Use for features, bug fixes, or anything that touches more than trivial code. Not for single-file reads, explanations, or answering questions about code.
Scanned 9/19/2026
npx -y skills add TheElephantCoder/agent-harness --skill research-first --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Research First?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/theelephantcoder-research-first)More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.
---
name: research-first
description: Look things up before you code. Use for features, bug fixes, or anything that touches more than trivial code. Not for single-file reads, explanations, or answering questions about code.
version: 1.0.0
license: MIT
allowed-tools: [read, grep, glob, bash, webfetch, websearch, write, edit]
triggers:
- "implement"
- "build"
- "create"
- "fix"
- "refactor"
metadata:
category: workflow
---
# Research first
Don't code from what you think the API is. Check first.
You need to do this before any `edit` or `write` that isn't trivial:
### 1. Research: `research/findings/<topic>.md`
- Check `research/findings/` first. If someone already researched it, reuse it.
- Then grep the codebase. Then web search if you need external docs. Use 2026 when you search so you get current docs.
- Cite what you found. If docs don't exist, write a small repro to verify the hypothesis.
- Save it to `research/findings/<slug>.md` so the next session doesn't redo the work.
Template:
```markdown
# Findings: <topic>
Date: 2026-09-04
Sources: [url, url]
Existing code: `path:line`: what we found
## Verdict
Recommended approach: ...
Alternatives: ...
Risks: ...
```
### 2. Plan: `research/plans/<task>.md`
```markdown
# Plan: <task>
Research: research/findings/<topic>.md
Approach: ...
Files to change: [list]
Tests: ...
Rollback: ...
```
### 3. Approval
Show the plan to the user. Don't start coding until they say ok. For tiny single file edits the auto-approve instinct may let you through.
### 4. Implement and verify
Build the plan, run tests, `harness bench --quick`, then `harness memory sync` so the next session remembers what worked.
## Notes
- If findings already exist, don't redo them.
- Read files for facts, don't guess. If what you find contradicts what you expected, say so and trust the file.
- After you're done, update findings with what actually worked.
## Don't do this
- `edit` before `read` or `grep`
- guessing API signatures
- skipping the plan because "its small" when you are about to touch 3+ files
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!