Research-Plan-Implement sub-cycle methodology for the CKS feature lifecycle. Defines the R-P-I sequence within each phase, quality gates between stages, artifact contracts, and iteration-aware refresh. Use when: checking R-P-I status, enforcing research-before-planning gates, validating plan-before-implementation gates, refreshing stale research on iteration loops, or when the user says "rpi", "research plan implement", "quality gates", "artifact handoff", "what stage am I in", "why is planning blocked", or any variation of R-P-I sub-cycle management.
From cksnpx claudepluginhub cardinalconseils/claude-starter --plugin cksThis skill is limited to using the following tools:
workflows/rpi-subcycle.mdDesigns and optimizes AI agent action spaces, tool definitions, observation formats, error recovery, and context for higher task completion rates.
Enables AI agents to execute x402 payments with per-task budgets, spending controls, and non-custodial wallets via MCP tools. Use when agents pay for APIs, services, or other agents.
Compares coding agents like Claude Code and Aider on custom YAML-defined codebase tasks using git worktrees, measuring pass rate, cost, time, and consistency.
Every feature phase in CKS follows a disciplined R-P-I sub-cycle: Research → Plan → Implement, with quality gates between each transition.
Research ──[R→P gate]──→ Plan ──[P→I gate]──→ Implement
↑ │
└──────── iteration refresh ◄──────────────────┘
RPI operates within the 5-phase lifecycle. It is not a replacement for Discover/Design/Sprint/Review/Release — it is the micro-discipline inside each phase that ensures research informs planning and planning informs implementation.
Purpose: Gather knowledge before making decisions.
Who: prd-researcher, deep-researcher, context-research skill
Artifacts produced:
.context/{slug}.md — technology briefs (API patterns, gotchas, code examples).research/{slug}/report.md — deep research reports (strategic findings, competitive analysis).prd/phases/{NN}-{name}/{NN}-RESEARCH.md — feature-specific technical investigationWhen complete: At least one of the above exists for the technologies/domains relevant to the feature.
Purpose: Define what to build and how, informed by research.
Who: prd-discoverer (requirements), prd-planner (execution plan)
Artifacts produced:
.prd/phases/{NN}-{name}/{NN}-CONTEXT.md — discovery output (11 Elements).prd/phases/{NN}-{name}/{NN}-PLAN.md — execution plan with tasks and acceptance criteriadocs/prds/PRD-{NNN}-{name}.md — PRD documentWhen complete: PLAN.md exists with tasks, acceptance criteria, and file scopes.
Purpose: Build what the plan specifies, using research findings.
Who: prd-executor, prd-executor-worker, prd-verifier
Artifacts produced:
.prd/phases/{NN}-{name}/{NN}-SUMMARY.md — implementation summary.prd/phases/{NN}-{name}/{NN}-VERIFICATION.md — test results and acceptance checksWhen complete: VERIFICATION.md exists with PASS verdict.
Blocks planning if research is insufficient.
Check: Does at least ONE research artifact exist for the feature?
{NN}-RESEARCH.md in the phase directory, OR.context/*.md briefs for technologies referenced in the feature, OR.research/*/report.md for the feature's domainPass: At least one research artifact exists. Proceed to Plan. Fail: No research artifacts found. Message:
R→P gate blocked: No research artifacts found for phase {NN}.
Run /cks:context "{technology}" or /cks:research "{topic}" first.
Skip condition: If the feature brief explicitly states no external technologies or integrations are involved, the gate may be marked SKIP:trivial with justification.
Blocks implementation if plan is incomplete.
Check: Does the plan exist and contain acceptance criteria?
{NN}-PLAN.md exists in the phase directory### Task section## Acceptance Criteria section with at least one itemPass: Plan exists with tasks and acceptance criteria. Proceed to Implement. Fail: Plan incomplete. Message:
P→I gate blocked: {specific missing item}.
Run /cks:sprint to generate the execution plan.
When iteration_count > 0 in PRD-STATE.md (feature returning from Phase 4 Review):
.context/ briefs for the feature are refreshed (not skipped).research/ reports exist and the iteration feedback references technology issues, flag them for manual refreshRPI status is derived from filesystem artifacts — no new state fields needed:
Phase directory: .prd/phases/{NN}-{name}/
Research: EXISTS({NN}-RESEARCH.md) OR EXISTS(.context/*.md relevant) → done
Plan: EXISTS({NN}-PLAN.md) with tasks → done
Implement: EXISTS({NN}-VERIFICATION.md) with PASS → done
| Artifacts Present | Current Sub-Stage |
|---|---|
| None | Research (start here) |
| Research only | Plan (R→P gate: passed) |
| Research + Plan | Implement (P→I gate: passed) |
| Research + Plan + Verification(PASS) | Complete |
For step-by-step gate check procedures, iteration refresh logic, and status display format:
Read: ${SKILL_ROOT}/workflows/rpi-subcycle.md