Comprehensive codebase research skill. Documents codebase as-is by spawning parallel sub-agents and synthesizing findings into research documents.
You are conducting comprehensive research across the codebase to answer questions by spawning parallel sub-agents and synthesizing their findings.
All user-facing questions go through AskUserQuestion (when not Autopilot) — see desplega:ask-user for conventions. Never ask in chat as plain bullets.
All read/research work goes through sub-agents — keep raw tool output out of the main session. Default to run_in_background: true.
File-review is on by default — invoke it on the research doc when ready (skip only if Autopilot).
This skill activates when:
/research command**REQUIRED SUB-SKILL:** Use desplega:researchingAt the start of research, adapt your interaction level based on the autonomy mode:
| Mode | Behavior | |------|----------| | Autopilot | Work independently, minimize AskUserQuestion, present comprehensive results at end | | Critical (Default) | Ask only when blocked or for major scope/direction decisions | | Verbose | Check in frequently, validate approach at each step, confirm before proceeding |
The autonomy mode is passed by the invoking command. If not specified, default to Critical.
OPTIONAL SUB-SKILL: If ~/.agentic-learnings.json exists, run /learning recall <current topic> to check for relevant prior learnings before proceeding.
If a design doc exists for the researched system (thoughts/*/design-docs/<system-slug>.md), read it first and use its Glossary terms in the research document. When the code contradicts the doc's Invariants or Boundaries, flag the conflict explicitly in the findings ("doc says X, code does Y") instead of silently documenting around it — that flag is still factual documentation, not critique. See desplega:design-docs.
Perform a quick analysis of the research query. If anything is unclear and autonomy mode is not Autopilot, use AskUserQuestion to clarify:
| Question | Options | |----------|---------| | "Thank you for your research question: '[user's question]'. To ensure I fully understand your needs, could you please clarify [specific aspect]?" | Provide relevant options based on the specific clarification needed |
Workflow orchestration (opt-in): if the Workflow tool is available in this session and the query warrants a real fan-out (3+ research areas), bundle one more question into the same AskUserQuestion call:
| Question | Options | |----------|---------| | "Orchestrate the research fan-out as a Workflow script? (more parallel agents, better coverage, higher token use)" | 1. Yes — Workflow fan-out, 2. No — plain Task agents (Default) |
A "yes" here is the explicit opt-in the Workflow tool requires. When the tool is absent or in Autopilot mode (no question asked, so no opt-in), use plain Task agents.
Read any directly mentioned files first:
Analyze and decompose the research question:
Spawn parallel sub-agent tasks for comprehensive research:
For codebase research:
For library and framework research:
For web research (only if explicitly requested):
For nested researches:
/research <topic> for deep divesExecutor routing: if desplega:delegate-work is available, pick each sub-agent's model per its matrix instead of spawning on defaults — locate/pattern-find/digest work → Haiku, analysis → Sonnet.
If Workflow fan-out was opted in: run steps 3–4 as one Workflow script instead — one agent() per research area (same agent split as above; model/effort/agentType opts per desplega:delegate-work), then a barrier before synthesis. Synthesis and the document write-up (step 5 onward) stay in the main session — the workflow returns findings, it never writes the research doc.
Wait for all sub-agents to complete and synthesize findings:
Generate research document:
thoughts/<username|shared>/research/YYYY-MM-DD-topic.mdthoughts/taras/research/) if known from context. Fall back to thoughts/shared/research/ when unclear.Template: Read and follow the template at cc-plugin/base/skills/researching/template.md
The template includes:
Add GitHub permalinks (if applicable):
Sync and present findings:
Offer structured review:
/review on this research document for a structured quality check?"desplega:reviewing skill on the research documentHandle follow-up questions:
last_updated fieldsLearning Capture:
OPTIONAL SUB-SKILL: If significant insights, patterns, gotchas, or decisions emerged during this workflow, consider using desplega:learning to capture them via /learning capture. Focus on learnings that would help someone else in a future session.
Workflow handoff: After research is complete (and optionally reviewed), use AskUserQuestion with:
| Question | Options |
|----------|---------|
| "Research is complete. What's the next step?" | 1. Create a plan based on this research (→ /create-plan), 2. Run a review first (→ /review), 3. Done for now |
Based on the answer:
/create-plan command with the research file as input contextdesplega:reviewing skill on the research documentFile-review is on by default (unless Autopilot):
/file-review:file-review <path>file-review:process-review skillSearch for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer