Skip to content

feat: add ce:prototype skill for assumption validation before planning#505

Open
leopoldo8 wants to merge 7 commits intoEveryInc:mainfrom
leopoldo8:feat/ce-prototype-skill
Open

feat: add ce:prototype skill for assumption validation before planning#505
leopoldo8 wants to merge 7 commits intoEveryInc:mainfrom
leopoldo8:feat/ce-prototype-skill

Conversation

@leopoldo8
Copy link
Copy Markdown

@leopoldo8 leopoldo8 commented Apr 4, 2026

Summary

  • Adds new ce:prototype skill that sits between ce:brainstorm and ce:plan in the compound workflow
  • Builds throwaway prototypes to validate untested assumptions (APIs, data sources, UX patterns, integrations) before committing to an implementation plan
  • Adds "Prototype first" as a handoff option in ce:brainstorm Phase 4 when requirements contain unverified external dependencies

Key Design Decisions

  • Validation goals upfront — AI suggests goals from requirements, user picks/modifies
  • Scope classification — Lightweight/Standard/Deep matching brainstorm and plan taxonomy
  • Effort alignment — Confirms time estimate with user before building; hard ceiling of 1 day
  • Speed over quality — No code standards, but never mock/fake what you are testing
  • User testing explicit — Goals classified as automated vs user-tested; waits for real feedback on subjective goals
  • Throwaway by default — Prototype deleted after validation report is written
  • Durable output — Validation report in docs/prototypes/ feeds into /ce:plan

New Files

  • skills/ce-prototype/SKILL.md — Skill definition (~1,900 words, within progressive disclosure target)
  • skills/ce-prototype/assets/validation-report-template.md — Report template
  • skills/ce-prototype/references/validation-report-schema.md — Frontmatter schema and naming conventions

Modified Files

  • skills/ce-brainstorm/SKILL.md — Added "Prototype first" handoff option in Phase 4.1 with gate condition (only offered when requirements have unverified external dependencies)

Workflow Position

ce:ideate → ce:brainstorm → [ce:prototype] → ce:plan → ce:work

Consistency Review

Reviewed against all ce-* skills for pattern consistency:

  • Date note (matching brainstorm/plan/ideate)
  • Scope classification (Lightweight/Standard/Deep)
  • Common Mistakes to Avoid table (matching compound/work pattern)
  • Interaction method, phase numbering, preconditions format all consistent
  • No parallel subagents (appropriate — build-and-test loop, not research-and-synthesize)

🤖 Generated with Claude Code

Adds a new skill that sits between ce:brainstorm and ce:plan in the
compound workflow. ce:prototype builds throwaway prototypes to validate
untested assumptions (APIs, data sources, UX patterns, integrations)
before committing to an implementation plan.

Key design decisions:
- Validation goals defined upfront, AI-suggested from requirements
- Scope classified as Lightweight/Standard/Deep with effort alignment
- Speed over quality, but never fake what you're testing
- User testing is explicit for subjective goals (waits for feedback)
- Output is a durable validation report in docs/prototypes/
- Prototype code is deleted after report is written

Also adds "Prototype first" as a handoff option in ce:brainstorm's
Phase 4 when requirements contain unverified external dependencies.

New files:
- skills/ce-prototype/SKILL.md
- skills/ce-prototype/assets/validation-report-template.md
- skills/ce-prototype/references/validation-report-schema.md

Modified:
- skills/ce-brainstorm/SKILL.md (added prototype handoff option)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a15f9235d6

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Rodrigo Haertel and others added 2 commits April 4, 2026 17:03
- Move prototype scratch files from top-level prototypes/ to
  .context/compound-engineering/prototypes/ to comply with AGENTS.md
  scratch-space rule for ephemeral workflow artifacts
- Pass concise brainstorm summary to /ce:prototype when no requirements
  doc exists, avoiding unnecessary re-asking of context the user already
  provided during brainstorming

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add repo context scan and prototyping-needed gate to Phase 0, strengthen
external data source discovery guidance (no arbitrary timebox), add
shortcut decision heuristic, set iteration expectations, and expand
common mistakes table with lessons from first real prototype session.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e15336afee

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

@leopoldo8
Copy link
Copy Markdown
Author

Real-World Usage Report: ce:prototype skill

Use Case

Ran the skill end-to-end on a game prototype with multiple validation goals: UX loop viability, external image source quality for pan/zoom gameplay, adaptive SVG rendering, map interaction UX, and scoring system feel. Built as a single static HTML file with real external data. Upstream requirements came from a prior ce:brainstorm session.

Result: 4 of 5 goals proved, 1 inconclusive (needs broader playtesting). Several useful surprises discovered that de-risk the planning phase.

What the Skill Did Well

  • Validation goals phase was the most valuable part. Binary, specific goals kept the prototype focused.
  • User-tested vs automated classification correctly identified which goals needed human judgment.
  • Effort alignment prevented scope creep.
  • Throwaway mindset was correct -- the validation report captured durable learnings.

Where the Skill Fell Short

  1. Used the wrong data source. The requirements document specified a particular image source. The agent used a generic stock photo API instead, ignoring the validation goal of testing the actual source's quality. Fix: added guidance on external data source discovery -- persist to find and connect to the real integration specified in requirements.

  2. Rushed to cleanup before user validated results. The agent tried to delete the prototype and write the report before the user had interacted with it and provided feedback on subjective goals. Fix: added explicit iteration guidance -- expect 1-3 build-feedback cycles, wait for user validation before recording results.

  3. Shortcut rule was too vague. The original guidance failed to prevent the wrong-data-source mistake. Fix: replaced with a concrete heuristic -- "Does this shortcut touch the same dimension as any validation goal?"

Additional Improvements (sibling skill patterns, not session learnings)

  • Phase 0.3 (Repo Context Scan): Scan codebase before suggesting goals to avoid redundant validation.
  • Phase 0.4 (Assess Whether Prototyping Is Needed): Gate check -- some assumptions can be answered by reading docs or existing code.

Changes Made

File Change Source
SKILL.md External data source discovery guidance Session learning
SKILL.md Dimension-matching shortcut heuristic Session learning
SKILL.md Iteration expectation (1-3 cycles) Session learning
SKILL.md 2 new Common Mistakes entries Session learning
SKILL.md Phase 0.3 Repo Context Scan Sibling pattern
SKILL.md Phase 0.4 Prototyping Needed gate Sibling pattern
validation-report-schema.md Optional iterations field Session learning

- Use per-run scratch directories (.context/compound-engineering/ce-prototype/<topic>-<timestamp>/)
  to avoid collisions between concurrent sessions (AGENTS.md scratch space rule)
- Append sequence number to validation report filename when same-day
  report already exists, preventing overwrites on second prototype rounds
- Pass validation report path in handoff to /ce:plan so planning has
  direct access to validated constraints without relying on context window

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1c8bbc1dae

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

…path

- Move preserved prototypes from .context/ to prototypes/<topic>/ at
  repo root since .context/ is ephemeral scratch space
- Add trigger phrases: 'feasibility check', 'experiment with this',
  'will this actually work'
- Mark origin field as optional in template to match schema
- Add example validation report in examples/ for LLM quality reference
- Update prototype_path description in schema

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ffee1dd671

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

- Fix report sequence to use next available number (-002, -003, etc.)
  instead of hardcoded -002
- Use timestamped path when preserving prototype and directory already
  exists to prevent overwriting earlier preserved work
- Pass constraints summary in handoff to /ce:plan since plan skill
  does not auto-discover validation reports
- Add ce:prototype to README workflow table

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a526eb73c2

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Small structural files (<150 lines) that the skill cannot function
without should use @ inclusion per AGENTS.md skill compliance checklist,
ensuring the model always has the report contract in context.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@tmchow
Copy link
Copy Markdown
Collaborator

tmchow commented Apr 5, 2026

Thanks for contribution @leopoldo8. I haven't yet dug into the skill but have an initial reaction to the name of "prototype" given the goals of what it's meant to do. I think to most, "prototype" can have a different meaning. What other verbs did you consider for this skill?

@leopoldo8
Copy link
Copy Markdown
Author

Hey @tmchow ! Thanks for the feedback.

So, indeed, I considered "spike" too, a known concept from agile that maybe communicates the intent better. I ended up with "prototype" thinking it was more generalistic and not dependent on a specific methodology. Maybe "validate" works too, following the idea of "validating assumptions."

Just to be clear, the vision here is testing assumptions with a small-effort solution that can be used with one or more users before fully committing to the full implementation. The use case that fits best is when brainstorming a new product idea, so you can test it yourself or with a friend to verify if the core concept holds up, or even validate UX/UI behaviors that you consider critical, before committing to a full MVP implementation. Besides that, it could be valuable even for established codebases, testing hypotheses before implementing a new feature. In some cases it won't be required, and that's fine.

Let me know what you think about those other names! Or if a name comes to mind when reading the objective.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants