Investigates and analyzes an idea or area of the codebase before committing to changes.
Triggers: /sdd-explore <topic>, explore, investigate codebase, analyze before changing, research feature
Purpose
EXPLORE is a mandatory gate of any SDD cycle that proceeds past it. It runs before propose, spec, design, tasks, and apply, and produces a persisted, citation-bearing artifact. No downstream phase may begin until EXPLORE has written its artifact to disk. It creates no code and modifies nothing — it only reads and analyzes.
Skill resolution
When the orchestrator launches this sub-agent, it resolves the skill path using:
1. .claude/skills/sdd-explore/SKILL.md (project-local — highest priority)
2. ~/.claude/skills/sdd-explore/SKILL.md (global catalog — fallback)
Project-local skills override the global catalog. See docs/SKILL-RESOLUTION.md for the full algorithm.
Claude execution wiring
These notes bind the tool-neutral logic above to the Claude Code harness. They are the EXECUTION layer that does not port to other tools.
- Step 0 preload — follow
skills/_shared/sdd-phase-common.mdSection F (Project Context Load) and Section G (Spec Context Preload). Both are non-blocking. The EXPLORE-local override (mandatory attempt to readai-context/features/<domain>.mdandai-context/architecture.md, emitting a visibleINFO:note on absence) is deliberate and does NOT modify_shared/sdd-phase-common.mdSection G. - Handoff context preload — check for a pre-seeded proposal in engram with
mem_search(query: "sdd/<slug>/proposal"); if present, retrieve it viamem_get_observation(id). LogHandoff context loaded from engram: sdd/<slug>/proposal. Non-blocking. - Prior Attempts scan — search engram with
mem_search(query: "sdd/archive-report", project: "{project}"), then retrieve each related result viamem_get_observation(id)to check outcome. - Artifact persistence (Step 8, disk-primary) — per
skills/_shared/sdd-phase-common.mdSection C: firstWrite("docs/sdd/{change-name}/explore.md", <full exploration markdown>), thenmem_savea pointer + summary withtopic_key: sdd/{change-name}/explore,type: architecture,project: {project}. If Engram MCP is unreachable, still write the disk artifact (the source of truth) and skip the engram pointer only. - Orchestrator output — return the neutral Output Contract as the JSON block
the orchestrator expects;
artifactsreportsengram:sdd/{change-name}/explorealongside the disk path, and the manual next step is/sdd-propose.