Skip to main content

In this article

rpi-research

rpi-research
FieldValue
Kindskill
Source.github/skills/rpi/rpi-research
InvocationInvoked directly as /rpi-research, or loaded on demand by referencing agents
InteractiveNo

What it does​

Research-only RPI playbook that gathers task evidence, writes dated research artifacts under .copilot-tracking/research/ or a caller's trusted evidence root, and hands off planning-ready findings. Use when the user needs evidence, alternatives, or task framing first.

When to use it​

Use rpi-research when a task needs evidence before anyone plans or edits: a codebase pattern is unknown, an external API, library, or standard must be verified, alternatives need comparison, or a decision-critical question is open. Research is read-only. It writes one dated primary artifact under .copilot-tracking/research/, and that artifact is the only research artifact.

A helper such as RPI Researcher may be asked for source pointers when isolating a gathering task helps; its return is a suggestion the research verifies at the source.

Independent questions get their own narrow helper lanes, dispatched in parallel. Research picks each lane's reasoning effort: low when a tool guarantees a complete answer, such as a search that lists every match, and max when the lane must read for meaning, especially to conclude that something is absent. A "not found" from a lane below max counts only after research confirms it. Set effort= to choose one level for every lane, or ask for a level for a kind of lane, such as documentation lanes.

Each executed cycle runs Wider, Deeper, and Contrarian waves, then synthesizes findings, records Planning Readiness, and resolves material decisions according to the participation mode: user-owned when invoked directly, agent-owned or user-retained inside an automatic RPI Agent session.

The research posture controls how far it goes: balanced by default, focused to stay within the named targets, or expansive for a broad or materially unknown decision space. Pass posture= to change it. The output mode (convergence, analysis, audit, comparison, research-only, or no-handoff) controls whether a planning handoff is offered.

Reach for a different asset when:

  • Evidence is already adequate. Start rpi-plan, which activates research only for a demonstrated gap.
  • You want to understand existing code or an artifact rather than gather new evidence. Use rpi-walkthrough.
  • You want to test the assumptions behind a decision. Use rpi-challenger.

Example usage​

Invoke the skill with a topic. Add chat to let it refine scope from the current conversation, posture=focused or posture=expansive to change the default balanced depth, effort= to set the reasoning effort of every helper lane, and subagents=none to gather all evidence without helpers.

/rpi-research topic="Streaming uploads to Azure Blob Storage from the Python pipeline"

The skill sends one opening update with its interpreted goal, posture, starting areas, and boundaries, then researches and updates the artifact as evidence arrives. The final response leads with the result in plain language, which for a topic like this one is the bottom line, then gives the evidence and next step:

## rpi-research: Azure Blob Storage streaming uploads

Research is complete. Use the azure-storage-blob async client behind the existing WriterBase contract: it streams uploads without blocking the pipeline event loop, and the synchronous client would block it (W2). Nothing is waiting on a decision from you, so planning can start now.

| Artifact | Description |
|----------------------------------------------------------------------------------------------------------------------------------|---------------------------|
| [.copilot-tracking/research/2026-09-04/blob-storage-research.md](.copilot-tracking/research/2026-09-04/blob-storage-research.md) | Primary research artifact |

## Next Steps

Run `/rpi-plan` with this research artifact.

When the research cannot support planning, the response says why in plain language instead of advising a command.