| name | parallel-explore |
| description | Parallel exploration of codebase questions by decomposing into independent tracks. Use when exploring architecture, understanding systems, or investigating complex questions that benefit from multiple perspectives. |
-- each track explores one dimension without overlap -- tracks are logical units of investigation -- minimum 3 tracks to ensure sufficient coverage
spawnExplorer :: Track → Effect Agent spawnExplorer track = spawn Explore (prompt track)
detect :: Code → [Module] detect code = filter isComplex (modulesUsed code)
isComplex :: Module → Bool isComplex m = isEffectModule m ∨ isCodebaseModule m
isEffectModule :: Module → Bool isEffectModule m = m ∈ { Stream, Layer, Fiber, Scope, Schema, Effect.gen, Match }
isCodebaseModule :: Module → Bool isCodebaseModule m = m ∈ /modules -- internal modules with ai-context.md
data ModuleSource = EffectLibrary | CodebaseInternal
moduleSource :: Module → ModuleSource moduleSource m | isEffectModule m = EffectLibrary | isCodebaseModule m = CodebaseInternal
spawn :: Module → Effect Specialist spawn m = do context ← case moduleSource m of EffectLibrary → /module m -- external Effect documentation CodebaseInternal → /module path -- internal ai-context.md scope ← extractUsage m code -- ONLY how m is used pure $ Specialist { context := context -- module documentation only , scope := scope -- usage patterns in code , goal := efficiency -- missed conveniences, anti-patterns , constraint := reviewOnly -- no implementation, just review }
Your ONLY context: the /module [MODULE] documentation Your ONLY scope: how [MODULE] is used in the provided code Your ONLY goal: identify efficiency issues
Review for:
- Missed conveniences (simpler APIs available)
- Anti-patterns (common misuse)
- Idiomatic alternatives (more Effect-like approaches)
Output:
- Specific file:line citations
- What could be improved
- How to improve it (idiomatic pattern)
Do NOT:
- Implement changes
- Review anything outside [MODULE] usage
- Consider broader architecture
-- ADDITION: module specialists (orthogonal overlay) modules ← detect code specialists ← parallel (spawn <$> modules)
-- Aggregate both trackFindings ← await trackAgents specialistFindings ← await specialists
aggregate (trackFindings ++ specialistFindings)
-- apply same decomposition recursively for deeper exploration