feat: Add ce:ideate open-ended ideation skill
Add a new `ce:ideate` skill to the compound-engineering plugin that performs open-ended, divergent-then-convergent idea generation for any project. The skill deeply scans the codebase, generates ~30 ideas, self-critiques and filters them, and presents the top 5-7 as a ranked list with structured analysis. It uses agent intelligence to improve the candidate pool without replacing the core prompt me
Overview
feat: Add ce:ideate open-ended ideation skill
Overview
Add a new ce:ideate skill to the compound-engineering plugin that performs open-ended, divergent-then-convergent idea generation for any project. The skill deeply scans the codebase, generates ~30 ideas, self-critiques and filters them, and presents the top 5-7 as a ranked list with structured analysis. It uses agent intelligence to improve the candidate pool without replacing the core prompt mechanism, writes a durable artifact to docs/ideation/ after the survivors have been reviewed, and hands off selected ideas to ce:brainstorm.
Problem Frame
The ce:* workflow pipeline has a gap at the very beginning. ce:brainstorm requires the user to bring an idea — it refines but doesn't generate. Users who want the AI to proactively suggest improvements must resort to ad-hoc prompting, which lacks codebase grounding, structured output, durable artifacts, and pipeline integration. (see origin: docs/brainstorms/2026-03-15-ce-ideate-skill-requirements.md)
Requirements Trace
- R1. Standalone skill in
plugins/compound-engineering/skills/ce-ideate/ - R2. Optional freeform argument as focus hint (concept, path, constraint, or empty)
- R3. Deep codebase scan via research agents before generating ideas
- R4. Preserve the proven prompt mechanism: many ideas first, then brutal filtering, then detailed survivors
- R5. Self-critique with explicit rejection reasoning
- R6. Present top 5-7 with structured analysis (description, rationale, downsides, confidence 0-100%, complexity)
- R7. Rejection summary (one-line per rejected idea)
- R8. Durable artifact in
docs/ideation/YYYY-MM-DD-<topic>-ideation.md - R9. Volume overridable via argument
- R10. Handoff: brainstorm an idea, refine, share to Proof, or end session
- R11. Always route to ce:brainstorm for follow-up on selected ideas
- R12. Offer commit on session end
- R13. Resume from existing ideation docs (30-day recency window)
- R14. Present survivors before writing the durable artifact
- R15. Write artifact before handoff/share/end
- R16. Update doc in place on refine when preserving refined state
- R17. Use agent intelligence as support for the core mechanism, not a replacement
- R18. Use research agents for grounding; ideation/critique sub-agents are prompt-defined roles
- R19. Pass grounding summary, focus hint, and volume target to ideation sub-agents
- R20. Focus hints influence both generation and filtering
- R21. Use standardized structured outputs from ideation sub-agents
- R22. Orchestrator owns final scoring, ranking, and survivor decisions
- R23. Use broad prompt-framing methods to encourage creative spread without over-constraining ideation
- R24. Use the smallest useful set of sub-agents rather than a hardcoded fixed count
- R25. Mark ideas as "explored" when brainstormed
Scope Boundaries
- No external research (competitive analysis, similar projects) in v1 (see origin)
- No configurable depth modes — fixed volume with argument-based override (see origin)
- No modifications to ce:brainstorm — discovery via skill description only (see origin)
- No deprecated
workflows:ideatealias — theworkflows:*prefix is deprecated - No
references/split — estimated skill length ~300 lines, well under the 500-line threshold
Context & Research
Relevant Code and Patterns
plugins/compound-engineering/skills/ce-brainstorm/SKILL.md— Closest sibling. Mirror: resume behavior (Phase 0.1), artifact frontmatter (date + topic), handoff options via platform question tool, document-review integration, Proof sharingplugins/compound-engineering/skills/ce-plan/SKILL.md— Agent dispatch pattern:Task compound-engineering:research:repo-research-analyst(context)running in parallel. Phase 0.2 upstream document detectionplugins/compound-engineering/skills/ce-work/SKILL.md— Session completion: incremental commit pattern, staging specific files, conventional commit formatplugins/compound-engineering/skills/ce-compound/SKILL.md— Parallel research assembly: subagents return text only, orchestrator writes the single fileplugins/compound-engineering/skills/document-review/SKILL.md— Utility invocation: "Load thedocument-reviewskill and apply it to..." Returns "Review complete" signalplugins/compound-engineering/skills/deepen-plan/SKILL.md— Broad parallel agent dispatch pattern- PR #277 (
fix: codex workflow conversion for compound-engineering) — establishes the Codex model for canonicalce:*workflows: prompt wrappers for canonical entrypoints, transformed intra-workflow handoffs, and omission of deprecatedworkflows:*aliases
Institutional Learnings
docs/solutions/plugin-versioning-requirements.md— Do not bump versions or cut changelog entries in feature PRs. Do update README counts and plugin.json descriptions.docs/solutions/codex-skill-prompt-entrypoints.md(from PR #277) — for compound-engineering workflows in Codex, prompts are the canonical user-facing entrypoints and copied skills are the reusable implementation units underneath them
Key Technical Decisions
- Agent dispatch for codebase scan: Use
repo-research-analyst+learnings-researcherin parallel (matches ce:plan Phase 1.1). Skipgit-history-analyzerby default — marginal ideation value for the cost. The focus hint (R2) is passed as context to both agents. - Core mechanism first, agents second: The core design is still the user's proven prompt pattern: generate many ideas, reject aggressively, then explain only the survivors. Agent intelligence improves the candidate pool and critique quality, but does not replace this mechanism.
- Prompt-defined ideation and critique sub-agents: Use prompt-shaped sub-agents with distinct framing methods for ideation and optional skeptical critique, rather than forcing reuse of existing named review agents whose purpose is different.
- Orchestrator-owned synthesis and scoring: The orchestrator merges and dedupes sub-agent outputs, applies one consistent rubric, and decides final scoring/ranking. Sub-agents may emit lightweight local signals, but not authoritative final rankings.
- Artifact frontmatter:
date,topic,focus(optional). Minimal, paralleling the brainstormdate+topicpattern. - Volume override via natural language: The skill instructions tell Claude to interpret number patterns in the argument ("top 3", "100 ideas") as volume overrides. No formal parsing.
- Artifact timing: Present survivors first, allow brief questions or lightweight clarification, then write/update the durable artifact before any handoff, Proof share, or session end.
- No
disable-model-invocation: The skill should be auto-loadable when users say things like "what should I improve?", "give me ideas for this project", "ideate on improvements". Following the same pattern as ce:brainstorm. - Commit pattern: Stage only
docs/ideation/<filename>, use conventional formatdocs: add ideation for <topic>, offer but don't force. - Relationship to PR #277:
ce:ideatemust follow the same Codex workflow model as the other canonicalce:*workflows. Why: without #277's prompt-wrapper and handoff-rewrite model, a copied workflow skill can still point at Claude-style slash handoffs that do not exist coherently in Codex.ce:ideateshould be introduced as another canonicalce:*workflow on that same surface, not as a one-off pass-through skill.
Open Questions
Resolved During Planning
- Which agents for codebase scan? →
repo-research-analyst+learnings-researcher. Rationale: same proven pattern as ce:plan, covers both current code and institutional knowledge. - Additional analysis fields per idea? → Keep as specified in R6. "What this unlocks" bleeds into brainstorm scope. YAGNI.
- Volume override detection? → Natural language interpretation. The skill instructions describe how to detect overrides. No formal parsing needed.
- Artifact frontmatter fields? →
date,topic,focus(optional). Follows brainstorm pattern. - Need references/ split? → No. Estimated ~300 lines, under the 500-line threshold.
- Need deprecated alias? → No.
workflows:*is deprecated; new skills go straight toce:*. - How should docs regeneration be represented in the plan? → The checked-in tree does not currently contain the previously assumed generated files (
docs/index.html,docs/pages/skills.html). Treat/release-docsas a repo-maintenance validation step that may update tracked generated artifacts, not as a guaranteed edit to predetermined file paths. - How should skill counts be validated across artifacts? → Do not force one unified count across every surface. The plugin manifests should reflect parser-discovered skill directories, while
plugins/compound-engineering/README.mdshould preserve its human-facing taxonomy of workflow commands vs. standalone skills. - What is the dependency on PR #277? → Treat #277 as an upstream prerequisite for Codex correctness. If it merges first,
ce:ideateshould slot into its canonicalce:*workflow model. If it does not merge first, equivalent Codex workflow behavior must be included beforece:ideateis considered complete. - How should agent intelligence be applied? → Research agents are used for grounding, prompt-defined sub-agents are used to widen the candidate pool and critique it, and the orchestrator remains the final judge.
- Who should score the ideas? → The orchestrator, not the ideation sub-agents and not a separate scoring sub-agent by default.
- When should the artifact be written? → After the survivors are presented and reviewed enough to preserve, but always before handoff, sharing, or session end.
Deferred to Implementation
- Exact wording of the divergent ideation prompt section: The plan specifies the structure and mechanisms, but the precise phrasing will be refined during implementation. This is an inherently iterative design element.
- Exact wording of the self-critique instructions: Same — structure is defined, exact prose is implementation-time.
Implementation Units
- Unit 1: Create the ce:ideate SKILL.md
Goal: Write the complete skill definition with all phases, the ideation prompt structure, optional sub-agent support, artifact template, and handoff options.
Requirements: R1-R25 (all requirements — this is the core deliverable)
Dependencies: None
Files:
- Create:
plugins/compound-engineering/skills/ce-ideate/SKILL.md - Test (conditional):
tests/claude-parser.test.ts,tests/cli.test.ts
Approach:
- Keep this unit primarily content-only unless implementation discovers a real parser or packaging gap.
loadClaudePlugin()already discovers anyskills/*/SKILL.md, and most target converters/writers already passplugin.skillsthrough asskillDirs. - Do not rely on pure pass-through for Codex. Because PR #277 gives compound-engineering
ce:*workflows a canonical prompt-wrapper model in Codex,ce:ideatemust be validated against that model and may require Codex-target updates if #277 is not already present. - Treat artifact lifecycle rules as part of the skill contract, not polish: resume detection, present-before-write, refine-in-place, and brainstorm handoff state all live inside this SKILL.md and must be internally consistent.
- Keep the prompt sections grounded in Phase 1 findings so ideation quality does not collapse into generic product advice.
- Keep the user's original prompt mechanism as the backbone of the workflow. Extra agent structure should strengthen that mechanism rather than replacing it.
- When sub-agents are used, keep them prompt-defined and lightweight: shared grounding/focus/volume input, structured output, orchestrator-owned merge/dedupe/scoring.
The skill follows the ce:brainstorm phase structure but with fundamentally different phases:
Phase 0: Resume and Route
0.1 Check docs/ideation/ for recent ideation docs (R13)
0.2 Parse argument — extract focus hint and any volume override (R2, R9)
0.3 If no argument, proceed with fully open ideation (no blocking ask)
Phase 1: Codebase Scan
1.1 Dispatch research agents in parallel (R3):
- Task compound-engineering:research:repo-research-analyst(focus context)
- Task compound-engineering:research:learnings-researcher(focus context)
1.2 Consolidate scan results into a codebase understanding summary
Phase 2: Divergent Generation (R4, R17-R21, R23-R24)
Core ideation instructions tell Claude to:
- Generate ~30 ideas (or override amount) as a numbered list
- Each idea is a one-liner at this stage
- Push past obvious suggestions — the first 10-15 will be safe/obvious,
the interesting ones come after
- Ground every idea in specific codebase findings from Phase 1
- Ideas should span multiple dimensions where justified
- If a focus area was provided, weight toward it but don't exclude
other strong ideas
- Preserve the user's original many-ideas-first mechanism
Optional sub-agent support:
- If the platform supports it, dispatch a small useful set of ideation
sub-agents with the same grounding summary, focus hint, and volume target
- Give each one a distinct prompt framing method (e.g. friction, unmet
need, inversion, assumption-breaking, leverage, extreme case)
- Require structured idea output so the orchestrator can merge and dedupe
- Do not use sub-agents to replace the core ideation mechanism
Phase 3: Self-Critique and Filter (R5, R7, R20-R22)
Critique instructions tell Claude to:
- Go through each idea and evaluate it critically
- For each rejection, write a one-line reason
- Rejection criteria: not actionable, too vague, too expensive relative
to value, already exists, duplicates another idea, not grounded in
actual codebase state
- Target: keep 5-7 survivors (or override amount)
- If more than 7 pass scrutiny, do a second pass with higher bar
- If fewer than 5 pass, note this honestly rather than lowering the bar
Optional critique sub-agent support:
- Skeptical sub-agents may attack the merged list from distinct angles
- The orchestrator synthesizes critiques and owns final scoring/ranking
Phase 4: Present Results (R6, R7, R14)
- Display ranked survivors with structured analysis per idea:
title, description (2-3 sentences), rationale, downsides,
confidence (0-100%), estimated complexity (low/medium/high)
- Display rejection summary: collapsed section, one-line per rejected idea
- Allow brief questions or lightweight clarification before archival write
Phase 5: Write Artifact (R8, R15, R16)
- mkdir -p docs/ideation/
- Write the ideation doc after survivors are reviewe