research
Perform deep codebase exploration and produce a context-compressed research document
Skill by brian-lai
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/brian-lai-research
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, research
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/research
What's inside
- Skill name
research- Description
- Perform deep codebase exploration and produce a context-compressed research document
- License
- MIT
- Instructions
- 107 lines in SKILL.md · view on GitHub
Files (2)
- SKILL.md
- research-template.md
SKILL.md (first lines)
Perform deep codebase exploration and produce a context-compressed research document. This document becomes the primary input for `/para:plan`.
## Usage
```
/para:research [task-description]
/para:research --scope=frontend # Focus research on a specific area
/para:research --specs # Emphasize API contract analysis
```
If no task description is provided, Claude will ask for one.
## What It Does
1. **Clarify focus** — if the task description is broad or ambiguous, use **AskUserQuestion** to clarify scope, depth, and any specific concerns before proceeding. Skip if the task is narrow and well-defined.
2. **Deep codebase exploration** — perform thorough investigation across the relevant area:
- File structure and organization across the relevant area
- Key interfaces and contracts (OpenAPI specs, TypeScript interfaces, Protobuf, shared types)
- Test patterns, test coverage, and test framework conventions
- Dependency map for affected components (what depends on what)
- Error handling and graceful degradation patterns
- Logging and observability patterns
3. **API contract analysis** — if the project has OpenAPI/Swagger specs, interface files, or shared type definitions:
- Parse specs and cross-reference with actual implementation
- Flag any inconsistencies between spec and implementation
- Document the canonical source of truth for each contract
4. **Pattern recognition** — identify conventions, idioms, and anti-patterns that should inform planning:
- How errors are handled and propagated
- How dependencies are injected or wired
- How config is managed (env vars, config files, feature flags)
- Naming conventions, file organization patterns
5. **Produce research document** — write findings to `context/data/YYYY-MM-DD-task-name-research.md` using the template from `research-template.md`. The document should be:
- **High-signal, low-noise** — include what matters for planning, not exhaustive file listings
- **Structured for context compression** — a planner reading only this document should have sufficient context to create a detailed plan
- **Honest about gaps** — explicitly call out what's undocumented, inconsistent, or surprising
6. **Update context** — add the research doc path to `context/context.md`'s `research_docs` array.
7. **Suggest next step** — recommend running `/para:plan`, noting the research doc is available as input.
## Options
### `--scope=<area>`
Focus research on a specific area of the codebase (e.g., `frontend`, `api`, `auth`, `database`). Without this flag, research covers the entire codebase relevant to the task description.
### `--specs`
Emphasize API contract analysis. Spend more effort on finding, parsing, and cross-referencing OpenAPI specs, interface definitions, and shared types. Useful when the task involves integration work or API changes.
## Research Quality Criteria
The research document should pass this test: **Could a Staff+ engineer read this document and create a detailed implementation plan without additional codebase exploration?**
If the answer is no, the research is not deep enough. Specifically:
- Every component mentioned should include its key files, public API, and dependencies
- Every interface boundary should have its contract documented
- Patterns should be described with concrete examples (file paths, function names), not vague descriptions
- Gaps and inconsistencies should be specific and actionable
## Context Update
After producing the research document, update `context/context.md`:
```json
{
"research_docs": ["context/data/YYYY-MM-DD-task-name-research.md"],
"last_updated": "{ISO timestamp}"
}
```
If `research_docs` doesn't exist in the metadata, add it.
## Example
```
User: /para:research rewrite-auth-middleware
Claude: [Uses Explore agent to deeply investigate auth-related code]
[Discovers existing middleware, session handling, token storage, OAuth flow]
[Cross-references OpenAPI spec with actual endpoints]
[Finds inconsistency: spec says JWT, implementation uses opaque tokens]
Creates: context/data/2025-12-18-rewrite-auth-middleware-research.md
Key findings:
- Auth middleware in src/middleware/auth.ts (450 lines, no tests)
- Session tokens stored in Redis with 24h TTL
- OpenAPI spec and implementation disagree on token format
- No graceful degradation when Redis is unavailable
Suggest running /para:plan to create an implementation plan using this research.
```
## Notes
- Research is optional but strongly recommended for non-trivial tasks
- The research doc lives in `context/data/` alongside specs and other input files
- `/para:plan` automatically checks for research docs and uses them as primary input
- Research docs should be treated as snapshots — they may become stale as the codebase changesFrom brian-lai/para-programming-plugin, MIT.
More from brian-lai/para-programming-plugin
- 0.528score
check
brian-lai
Decision helper to determine if PARA workflow should be used for a given request
SkillCFreshness: C★ 7Claude Code +9 - 0.528score
archive
brian-lai
Archive the current context to create a clean slate for the next task
SkillCFreshness: C★ 7Claude Code +9 - 0.528score
execute
brian-lai
Execute the active plan by creating an isolated worktree and tracking todos
SkillCFreshness: C★ 7Claude Code +9 - 0.528score
plan
brian-lai
Create a planning document through collaborative dialogue, with support for multi-phase plans
SkillCFreshness: C★ 7Claude Code +9 - 0.528score
review
brian-lai
Spawn an independent subagent with a Staff+ FAANG engineer persona to review a plan or PR
SkillCFreshness: C★ 7Claude Code +9 - 0.528score
status
brian-lai
Display the current state of PARA context and workflow progress
SkillCFreshness: C★ 7Claude Code +9 - 0.528score
init
brian-lai
Initialize PARA-Programming structure in the current project
SkillCFreshness: C★ 7Claude Code +9 - 0.525score
help
brian-lai
Display the PARA-Programming quick-reference guide
SkillCFreshness: C★ 7Claude Code +9 - 0.525score
summarize
brian-lai
Generate a summary document from the current work session
SkillCFreshness: C★ 7Claude Code +9 - 0.525score
workflow
brian-lai
Orchestrate the full PARA execution cycle across phases
SkillCFreshness: C★ 7Claude Code +9
Signals
- Stars
- 7
- Forks
- 1
- Open issues
- 0
- Last commit (this folder)
- Apr 30, 2026 (6 months ago)
- Last release
- Apr 30, 2026 (6 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from brian-lai
- 0.565score
para-init
brian-lai
Initialize PARA-Programming structure in the current project.
SkillAFreshness: AClaude Code +9 - 0.561score
para-archive
brian-lai
Archive completed plans and context, remove verified worktrees, and reset context while preserving summaries and recoverable state.
SkillAFreshness: AClaude Code +9 - 0.561score
para-execute
brian-lai
Execute the active plan by creating an isolated git worktree and tracking todos.
SkillAFreshness: AClaude Code +9 - 0.561score
para-help
brian-lai
Display the PARA-Programming quick-reference guide with all 11 skills and the Research→Plan→Review→Execute→Review→Summarize→Archive workflow.
SkillAFreshness: AClaude Code +9 - 0.561score
para-plan
brian-lai
Plan a repository change using inspected evidence and focused clarification; produce a simple or phased plan with concrete acceptance criteria before execution.
SkillAFreshness: AClaude Code +9 - 0.561score
para-review
brian-lai
Independently review a plan or existing PR against requirements and evidence, with target-bound results and a capped correction loop.
SkillAFreshness: AClaude Code +9
Cite this page
research skill. Agent Mart. https://agentmart.dev/skills/brian-lai-research (last updated 2026-10-24)