Agent skill

ipps-deep-research

Apply when conducting deep research on technologies, APIs, frameworks, or other software development topics requiring systematic investigation

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/ipps-deep-research

SKILL.md

Deep Research Skill

Systematic research patterns for in-depth investigation of software development topics.

Table of Contents

Core

Patterns

Strategies

Planning & Tracking

Reference

When to Use

Deep research (this skill):

  • "Should we use X or Y for our project?"
  • "How does X work internally?"
  • "What are the production considerations for X?"
  • Multi-source synthesis required
  • Exhaustive documentation needed

Quick lookup (not this skill):

  • "What's the syntax for X?"
  • "How do I install Y?"
  • Single-source answers

MUST-NOT-FORGET

  • Start with assumptions check - write down what you think you know before researching
  • Primary sources > secondary sources > community opinions
  • Document all sources with URLs and access dates
  • Flag information age (APIs change rapidly)
  • Distinguish facts from opinions from assumptions
  • Version-match community sources to subject version
  • Create INFO document for findings
  • Always create STRUT for research session orchestration
  • Track time - log task start/end for net research time calculation
  • Track credits - detect model via screenshot, log switches, calculate usage
  • Never auto-switch models - respect user's model selection throughout research

Global Patterns

MEPI vs MCPI

MEPI (Most Executable Point of Information) - Default

  • Present 2-3 curated options
  • Filter and recommend
  • Use for: reversible decisions, time-constrained, action-oriented

MCPI (Most Complete Point of Information) - Exception

  • Present exhaustive options
  • Document everything
  • Use for: irreversible decisions, high-stakes, archival reference

Source Hierarchy

  1. Official PDFs/papers - Legislation, specs, whitepapers, academic papers (often not available as web)
  2. Official documentation - Authoritative, version-specific
  3. Official blog/changelog - Announcements, rationale
  4. GitHub repo - Source code, issues, PRs, discussions
  5. Conference talks by maintainers - Design decisions, roadmap
  6. Reputable tech blogs - Analysis, comparisons
  7. Stack Overflow - Specific problems (verify currency)
  8. Community forums/Discord - Anecdotes, edge cases

Source Persistence: Download and store all sources in session folder for later reference. Web content changes - PDFs and local copies ensure reproducibility.

Verification Labels

  • [VERIFIED] - Confirmed from official documentation
  • [ASSUMED] - Inferred but not explicitly stated
  • [TESTED] - Manually tested by running code
  • [PROVEN] - Confirmed from multiple independent sources
  • [COMMUNITY] - Reported by community sources (cite source ID)

Source ID Format

[TOPIC]-IN01-SC-[SOURCE]-[DOCNAME]

Examples:

  • GRPH-IN01-SC-MSFT-APIOVERVIEW - Microsoft Graph official docs
  • GRPH-IN01-SC-SO-RATELIMIT - Stack Overflow rate limit discussion
  • GRPH-IN01-SC-GH-ISSUE1234 - GitHub issue #1234

File Naming Conventions

  • __ prefix (double underscore): Master/index documents (SOURCES, TOC, TEMPLATE)
  • _ prefix (single underscore): Topic content files (INFO documents)
  • No prefix: Tracking files (TASKS, NOTES, PROBLEMS, PROGRESS)

Information Currency

  • Note version numbers for all API/library info
  • Check last updated date on documentation
  • Cross-reference with changelog for breaking changes
  • Mark stale info with [STALE: YYYY] tag

Research Strategies

Available research strategies (each has its own file):

Quick research (MEPI-style) until full strategy implemented: For reversible/low-stakes decisions, use abbreviated approach:

  1. Phase 1 (Preflight): 5-10 sources max, skip community deep-dive
  2. Skip Phases 2-4 (no TOC, template, or TASKS)
  3. Phase 5: Create single _INFO_[TOPIC].md with findings
  4. Phase 6: Quick /verify, done

Future strategies (not yet implemented):

  • Technology Research (MEPI) - Quick technology evaluation
  • Decision Research - Choose between options
  • Problem-Solving Research - Debug and fix issues

Tool Reference

See RESEARCH_TOOLS.md for:

  • Source collection tools (search_web, read_url_content, Playwright)
  • Document processing tools (pdf-tools)
  • Transcription tools (llm-transcription)
  • Tool selection flowchart
  • Common workflows

Planning Structure

STRUT (high-level orchestration) - REQUIRED for all research:

  • Tracks phases, objectives, deliverables, transitions
  • Contains time log for net research time
  • Created at research start, updated at phase transitions
  • File: STRUT_[TOPIC].md in session folder

TASKS (low-level execution) - Created in Phase 4:

  • Flat list of individual research tasks with durations
  • Each task: file to create, sources to use, done-when criteria
  • Tracks task timing: [HH:MM-HH:MM] per task
  • File: TASKS.md in session folder

Time Tracking

Net research time = active work time, excluding pauses.

STRUT time log format:

## Time Log
Started: 2026-01-30 09:00
Ended: 2026-01-30 14:30

Active intervals:
- 09:00-10:30 (Phase 1-3)
- 11:00-12:15 (Phase 4-5)
- 13:00-14:30 (Phase 5-6)

Net research time: 4h 15m

TASKS timing format:

- [x] TK-01: Research auth [10:00-10:45] 45m
- [x] TK-02: Research limits [10:15-11:00] 45m (parallel)

Rules:

  • Pause detection: Gap > 30min in file timestamps = pause (don't count)
  • Parallel tasks: Overlapping intervals count once, not doubled
  • Log start time when beginning task, end time when completing

Credit Tracking (Mandatory)

Workflow:

  1. At phase start: simple-screenshot.ps1 → detect model from Windsurf header
  2. Lookup cost in windsurf-model-registry.json
  3. Log model + timestamp in STRUT Credit Tracking section
  4. At session end: calculate total estimated credits

STRUT Credit Tracking format:

## Credit Tracking
Phase 1: Claude Opus 4.5 (Thinking) [5x] - 09:00
Phase 2: Claude Opus 4.5 (Thinking) [5x] - 09:30
Phase 4: Claude Sonnet 4.5 [2x] - 10:15 (user switched)
Phase 5: Claude Sonnet 4.5 [2x] - 10:45
Phase 6: Claude Sonnet 4.5 [2x] - 11:30

Estimated credits: (2 phases × 5x) + (3 phases × 2x) = 16 units

Rules:

  • Never auto-switch models - respect user's model selection
  • Detect via screenshot only - passive observation
  • Log when model changes (user-initiated)
  • Registry: [DEVSYSTEM_FOLDER]/skills/windsurf-auto-model-switcher/windsurf-model-registry.json

Output Format

Deep research outputs an INFO document. Key sections:

  1. Research Question - What we're investigating
  2. Key Findings - MEPI-style summary (2-3 main points) or MCPI exhaustive list
  3. Detailed Analysis - Full investigation results
  4. Limitations and Known Issues - From community sources
  5. Sources - All references with quality indicators
  6. Recommendations - Actionable conclusions

Usage

  1. Determine research type (MEPI quick vs MCPI exhaustive)
  2. Read this SKILL.md for core principles
  3. Read the appropriate strategy file
  4. Read RESEARCH_TOOLS.md for tool guidance
  5. Follow the strategy's phases systematically
  6. Output findings as INFO document

Didn't find tool you were looking for?

Be as detailed as possible for better results