hybrid-prototype

$npx mdskill add striderZA/OpenCodeGameStudios/hybrid-prototype

Builds a playable prototype in 2-3 days to answer core questions

  • Read concept description and define core question for discovery phase.
  • Deploys necessary tools like Read, Glob, Grep, Write, Edit, Bash, Task.
  • Decides on minimum code required to validate the core question.
  • Delivers a playable prototype to user or agent within 2-3 days.

SKILL.md

.github/skills/hybrid-prototypeView on GitHub ↗
---
name: hybrid-prototype
description: "Fast-lane prototype skill for the hybrid workflow. Builds a playable prototype in 2-3 days with minimal process overhead. Designed for discovery phase."
argument-hint: "[concept-description]"
user-invocable: true
allowed-tools: Read, Glob, Grep, Write, Edit, Bash, Task
agent: prototyper
isolation: worktree
---

## Overview

This skill implements the **Discovery Phase fast lane** as described in `docs/framework/hybrid-workflow.md`. It is intentionally lightweight: no formal GDD, no architecture, no epic breakdown. Just build it, play it, decide.

**Time budget**: 1-3 days.
**Agents involved**: `creative-director`, `game-designer`, `prototyper`, `godot-specialist` (or engine equivalent).

---

## Phase 1: Concept & Question (5 minutes)

Read the concept description from the argument. State the **one core question** this prototype must answer. If the concept is vague, ask the user to clarify before proceeding.

Examples of good questions:
- "Does the combat feel responsive with 200ms input lag?"
- "Is resource scarcity actually fun, or just frustrating?"
- "Does the movement mechanic support the intended platforming challenges?"

Bad question: "Is this game fun?" (Too broad. Narrow it down.)

**Ask the user**: "The core question for this prototype is: [question]. Proceed?"

---

## Phase 2: Plan (15 minutes)

Define the minimum viable prototype in 3-5 bullet points:

- What is the absolute minimum code to answer the question?
- What can be hardcoded / placeholder / skipped?
- What is the success criteria? (e.g., "Player can complete 3 jumps in a row without dying")

**Present the plan to the user and ask for confirmation.**

---

## Phase 3: Build (1-2 days)

**Ask**: "May I create the prototype directory at `prototypes/[concept-name]/` and begin implementation?"

If yes, create the directory. Every file must begin with:

```
// PROTOTYPE - NOT FOR PRODUCTION
// Question: [Core question being tested]
// Date: [Current date]
```

**Rules for prototype code**:
- Hardcode values freely
- Use placeholder assets (colored squares, simple shapes)
- Skip error handling
- Use the simplest approach that works
- Copy code rather than importing from production
- NEVER import from `src/` — prototypes are isolated

**Run the prototype** as you build. Test continuously. Fix blockers, but don't polish.

---

## Phase 4: Playtest (2-4 hours)

Play the prototype yourself. Then ask the user to play it. Collect observations:

- What worked?
- What felt bad?
- Did it answer the core question?
- Any surprising discoveries?

**Document findings informally** — a bulleted list is fine.

---

## Phase 5: Decide (30 minutes)

Collaborate with `creative-director` and `game-designer` (via Task or conversation) to make a decision:

| Verdict | Meaning | Next Step |
|---------|---------|-----------|
| **ITERATE** | Core is promising, but needs adjustment | Run `/hybrid-prototype [revised-concept]` |
| **PIVOT** | The concept doesn't work, but a related one might | Run `/concept-brainstorm` or `/hybrid-prototype [new-direction]` |
| **PRODUCTIONIZE** | It's fun and proven — move to production | Begin GDD in `/design-system`, architecture in `/create-architecture` |
| **KILL** | It's not fun and no clear fix | Stop. The prototype report is the deliverable. |

**Update `prototypes/[concept-name]/DECISION.md`** with:

```markdown
# Prototype Decision: [Concept Name]

## Question
[Core question]

## Result
[What happened]

## Verdict
[ITERATE / PIVOT / PRODUCTIONIZE / KILL]

## Reasoning
[Why]

## Next Steps
[What to do next]
```

**Ask**: "May I write the decision to `prototypes/[concept-name]/DECISION.md`?"

---

## Phase 6: Done

Output a summary to the user: the core question, the verdict, and the next step.

If **PRODUCTIONIZE**: remind them to switch to the Production phase workflow (`/design-system`, `/create-architecture`, etc.)

If **ITERATE / PIVOT / KILL**: no further action needed.

---

## Constraints

- Prototype code must NEVER import from production source files
- Production code must NEVER import from prototype directories
- If productionizing, rewrite from scratch — do not refactor prototype code
- Timebox strictly: if it's not working after 3 days, kill or pivot
- Keep the question narrow — one prototype, one question
- **Workflow isolation**: This skill explicitly bypasses `production/review-mode.txt`. Any stale review-mode state from a previous full OCGS session is ignored — the hybrid fast lane always runs without formal gates.

---

## Differences from Full `/prototype` Skill

| Aspect | `/prototype` (Full OCGS) | `/hybrid-prototype` (Fast Lane) |
|--------|--------------------------|----------------------------------|
| Review mode gates | Solo / Lean / Full | None (always fast) |
| Creative Director review | Formal gate spawn | Informal chat/Task |
| Report format | Formal `REPORT.md` | Lightweight `DECISION.md` |
| Agents involved | All tiers | 4 core roles only |
| Time to verdict | 1-3 days + review overhead | 1-3 days total |
| Next step on PROCEED | Formal GDD + ADR | Start GDD when ready |

More from striderZA/OpenCodeGameStudios

SkillDescription
art-bibleGuided, section-by-section Art Bible authoring. Creates the visual identity specification that gates all asset production. Run after /concept-brainstorm is approved and before /map-systems or any GDD authoring begins.
art-generateGenerates placeholder .aseprite files from asset specs using the Aseprite MCP. Reads asset specs and art bible, creates sprites with correct dimensions/palette/layers, exports PNGs. Run after /asset-spec has produced specs and /art-bible exists.
asset-auditAudits game assets for compliance with naming conventions, file size budgets, format standards, and pipeline requirements. Identifies orphaned assets, missing references, and standard violations.
asset-specGenerate per-asset visual specifications and AI generation prompts from GDDs, level docs, or character profiles. Produces structured spec files and updates the master asset manifest. Run after art bible and GDD/level design are approved, before production begins.
automated-smoke-testRun an automated smoke test using the godot-mcp server. Launches the project, captures debug output, and checks for errors or crashes.
balance-checkAnalyzes game balance data files, formulas, and configuration to identify outliers, broken progressions, degenerate strategies, and economy imbalances. Use after modifying any balance-related data or design. Use when user says 'balance report', 'check game balance', 'run a balance check'.
concept-brainstormGuided game concept ideation — from zero idea to a structured game concept document. Uses professional studio ideation techniques, player psychology frameworks, and structured creative exploration.
content-auditAudit GDD-specified content counts against implemented content. Identifies what's planned vs built.
create-architectureGuided, section-by-section authoring of the master architecture document for the game. Reads all GDDs, the systems index, existing ADRs, and the engine reference library to produce a complete architecture blueprint before any code is written. Engine-version-aware: flags knowledge gaps and validates decisions against the pinned engine version.
create-control-manifestAfter architecture is complete, produces a flat actionable rules sheet for programmers — what you must do, what you must never do, per system and per layer. Extracted from all Accepted ADRs, technical preferences, and engine reference docs. More immediately actionable than ADRs (which explain why).