Agent skill
research
This skill should be used when researching best practices, evaluating technologies, comparing approaches, or when "research", "evaluation", or "comparison" are mentioned.
Install this agent skill to your Project
npx add-skill https://github.com/outfitter-dev/agents/tree/main/plugins/outfitter/skills/research
Metadata
Additional technical details for this skill
- version
- 2.1.0
- related skills
-
[ "report-findings", "codebase-recon" ]
SKILL.md
Research
Systematic investigation → evidence-based analysis → authoritative recommendations.
Steps
- Define scope and evaluation criteria
- Discover sources using MCP tools (context7, octocode, firecrawl)
- Gather information with multi-source approach
- Load the
outfitter:report-findingsskill for synthesis - Compile report with confidence levels and citations
<when_to_use>
- Technology evaluation and comparison
- Documentation discovery and troubleshooting
- Best practices and industry standards research
- Implementation guidance with authoritative sources
NOT for: quick lookups, well-known patterns, time-critical debugging without investigation stage
</when_to_use>
Load the maintain-tasks skill for stage tracking. Stages advance only, never regress.
| Stage | Trigger | activeForm |
|---|---|---|
| Analyze Request | Session start | "Analyzing research request" |
| Discover Sources | Criteria defined | "Discovering sources" |
| Gather Information | Sources identified | "Gathering information" |
| Synthesize Findings | Information gathered | "Synthesizing findings" |
| Compile Report | Synthesis complete | "Compiling report" |
Workflow:
- Start: Create "Analyze Request" as
in_progress - Transition: Mark current
completed, add nextin_progress - Simple queries: Skip directly to "Gather Information" if unambiguous
- Gaps during synthesis: Add new "Gather Information" task
- Early termination: Skip to "Compile Report" with caveats
Five-stage systematic approach:
1. Question Stage — Define scope
- Decision to be made?
- Evaluation parameters? (performance, maintainability, security, adoption)
- Constraints? (timeline, expertise, infrastructure)
2. Discovery Stage — Multi-source retrieval
| Use Case | Primary | Secondary | Tertiary |
|---|---|---|---|
| Official docs | context7 | octocode | firecrawl |
| Troubleshooting | octocode issues | firecrawl community | context7 guides |
| Code examples | octocode repos | firecrawl tutorials | context7 examples |
| Technology eval | Parallel all | Cross-reference | Validate |
3. Evaluation Stage — Analyze against criteria
| Criterion | Metrics |
|---|---|
| Performance | Benchmarks, latency, throughput, memory |
| Maintainability | Code complexity, docs quality, community activity |
| Security | CVEs, audits, compliance |
| Adoption | Downloads, production usage, industry patterns |
4. Comparison Stage — Systematic tradeoff analysis
For each option: Strengths → Weaknesses → Best fit → Deal breakers
5. Recommendation Stage — Clear guidance with rationale
Primary recommendation → Alternatives → Implementation steps → Limitations
Three MCP servers for multi-source research:
| Tool | Best For | Key Functions |
|---|---|---|
| context7 | Official docs, API refs | resolve-library-id, get-library-docs |
| octocode | Code examples, issues | packageSearch, githubSearchCode, githubSearchIssues |
| firecrawl | Tutorials, benchmarks | search, scrape, map |
Execution patterns:
- Parallel: Run independent queries simultaneously for speed
- Fallback: context7 → octocode → firecrawl if primary fails
- Progressive: Start broad, narrow based on findings
See tool-selection.md for detailed usage.
<discovery_patterns>
Common research workflows:
| Scenario | Approach |
|---|---|
| Library Installation | Package search → Official docs → Installation guide |
| Error Resolution | Parse error → Search issues → Official troubleshooting → Community solutions |
| API Exploration | Documentation ID → API reference → Real usage examples |
| Technology Comparison | Parallel all sources → Cross-reference → Build matrix → Recommend |
See discovery-patterns.md for detailed workflows.
</discovery_patterns>
<findings_format>
Two output modes:
Evaluation Mode (recommendations):
Finding: { assertion }
Source: { authoritative source with link }
Confidence: High/Medium/Low — { rationale }
Discovery Mode (gathering):
Found: { what was discovered }
Source: { where from with link }
Notes: { context or caveats }
</findings_format>
<response_structure>
## Research Summary
Brief overview — what investigated, sources consulted.
## Options Discovered
1. **Option A** — description
2. **Option B** — description
## Comparison Matrix
| Criterion | Option A | Option B |
|-----------|----------|----------|
## Recommendation
### Primary: [Option Name]
**Rationale**: reasoning + evidence
**Confidence**: level + explanation
### Alternatives
When to choose differently.
## Implementation Guidance
Next steps, common pitfalls, validation.
## Sources
- Official, benchmarks, case studies, community
</response_structure>
Always include:
- Direct citations with links
- Confidence levels and limitations
- Context about when recommendations may not apply
Always validate:
- Version is latest stable
- Documentation matches user context
- Critical info cross-referenced
- Code examples complete and runnable
Proactively flag:
- Deprecated approaches with modern alternatives
- Missing prerequisites
- Common pitfalls and gotchas
- Related tools in ecosystem
ALWAYS:
- Create "Analyze Request" todo at session start
- One stage
in_progressat a time - Use multi-source approach (context7, octocode, firecrawl)
- Provide direct citations with links
- Cross-reference critical information
- Include confidence levels and limitations
NEVER:
- Skip "Analyze Request" stage without defining scope
- Single-source when multi-source available
- Deliver recommendations without citations
- Include deprecated approaches without flagging
- Omit limitations and edge cases
- source-hierarchy.md — authority evaluation details
- tool-selection.md — MCP server decision matrix
- discovery-patterns.md — detailed research workflows
Research vs Report-Findings:
- This skill (
research) covers the full investigation workflow using MCP tools report-findingsskill covers synthesis, source assessment, and presentation
Use research for technology evaluation, documentation discovery, and best practices research. Load report-findings during synthesis stage for source authority assessment and confidence calibration.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
stack-feedback
Creates GitHub issues for problems discovered while using @outfitter/* packages. Use when finding bugs, missing features, unclear documentation, or improvement opportunities.
stack-architecture
Design stack-based systems using @outfitter/* packages. Use when planning new projects, choosing packages, designing handler architecture, or when "architecture", "design", "structure", "plan handlers", or "error taxonomy" are mentioned.
stack-templates
Templates for creating handlers, CLI commands, MCP tools, and daemon services following Outfitter Stack conventions. Use when scaffolding new components, creating handlers, adding commands, or when "create handler", "new command", "add tool", "scaffold", "template", or "daemon service" are mentioned.
stack-audit
Scan codebase for Outfitter Stack adoption candidates. Identifies throw statements, console usage, hardcoded paths, and custom errors. Use when assessing adoption scope or checking readiness.
stack-review
Audits code for Outfitter Stack compliance including Result types, error handling, logging patterns, and path safety. Use for pre-commit reviews, code quality checks, migration validation, or when "audit", "check compliance", "review stack", or "stack patterns" are mentioned.
stack-patterns
Reference for Outfitter Stack patterns including Result types, Handler contract, Error taxonomy, and @outfitter/* package conventions. Use when learning the stack, looking up patterns, understanding packages, or when "Result", "Handler", "error taxonomy", "OutfitterError", "CLI output", "pagination", "MCP server", "MCP tool", "structured logging", "redaction", "test handler", "daemon", "IPC", or "@outfitter/*" are mentioned.
Didn't find tool you were looking for?