---
name: crux-skill-memory-meditation-research
description: Research-mode meditation protocol: Phases A–G depth-first recursion, depth-0 manager steps 1–13 (incl. step 4b 4-mode `additional_focus_areas[]` reconciliation + `init-suggestions-{ts}.yml` write; step 8 K10c reflection writing `finalisation-enhancements.yml`; step 8b respawn-payload prep), facet registry lock, citations index, peer review file spec, comprehensiveness honouring at leaf depth. Use when the `crux-cursor-meditation-guide` agent runs the depth-0 manager or any Research-mode child agent.
---
# CRUX Skill: Memory Meditation — Research Protocol
Implements the full Research-mode meditation contract: Phases A–G recursive depth-first exploration, depth-0 manager steps 1–13 (including step 4b 4-mode `additional_focus_areas[]` reconciliation, step 8 K10c in-pass reflection, and step 8b respawn-payload prep), facet registry lock, citations index, peer review file spec, and comprehensiveness honouring at leaf depth.
## When to Use
Load this skill when:
- The `crux-cursor-meditation-guide` agent is spawned in Research mode (no `--quick` flag, `meditateMode: "research"`)
- You are executing the depth-0 manager workflow (steps 1–13)
- You are executing as a child Research-mode agent at depth 1, 2, or 3 (Phases A–G)
- You are executing as a peer-review agent (`peerReviewForBranch` set)
**Never load this skill** in Quick mode, Ensemble Aggregation mode, or Adversarial Review function — those are owned by `meditation-quick`, `meditation-ensemble`, and `meditation-review` respectively.
## Prerequisites
1. Verify `flags.enableMemories` is `"true"` (abort if not)
2. Confirm `comprehensiveness:` payload is present in the spawn prompt — abort with: "`comprehensiveness:` payload required; missing from spawn prompt — caller misconfigured" if missing
3. Confirm `theming:` payload is present — abort with a clear error pointing at Theme Preflight if missing
4. Confirm `modelStrategy:` payload is present — abort with: "`modelStrategy:` payload required; missing from spawn prompt — caller misconfigured" if missing
## Input Parameters (depth-0 manager invocation)
The depth-0 manager receives these parameters from the calling agent:
```yaml
meditateMode: "research"
workingDir: ""
theming: { ... } # Theme Preflight payload — REQUIRED
comprehensiveness: { ... } # Richness payload — REQUIRED; abort if missing
modelStrategy: { ... } # Model strategy payload — REQUIRED; abort if missing
confirmDeepFacets: "none" | "depth_2_only" | "all_levels"
maxDepth: 1 | 2 | 3 # default 3
ensembleModel: "" # derived from modelStrategy at the depth-0 manager; carrier for per-spawn model: selection
preConfirmedFacets: [ ... ] # only when in ensemble_max — skip step 4 derivation
```
`modelStrategy:` payload schema (verbatim in the `/crux-meditate` command's **Model Strategy payload** section):
```yaml
modelStrategy:
mode: "none" | "random" | "per_branch" | "ensemble_max"
pool: [{slug, label}, ...]
resolved_model_slug: null | "" # set when mode == "random"
resolved_model_label: null | "