Dreamboard CLI
Goal
Create and iterate on a Dreamboard game locally, then sync rules, scaffold, UI, and tests back to the platform.
Prereqs
- Dreamboard CLI installed and available as
dreamboardInstall withnpm install -g dreamboard - Authenticated via
dreamboard login
Overview
This skill covers the full local-to-platform workflow for shipping a Dreamboard game:
- Create a new game workspace from the CLI scaffold.
- Author the canonical game contract in
rule.mdandmanifest.json. - Sync authored changes after rule or manifest updates with
dreamboard sync. - Implement gameplay logic across the app phases and expose complete UI data for every playable state.
- Build a production-quality UI that is fully playable, not a placeholder, and follows the shared style guide.
- Compile the current authored head with
dreamboard compileand validate the integrated experience with deterministic tests and runtime checks.
Command Flow
Use the commands for different kinds of state:
dreamboard syncUpload local authored changes and advance the remote authored head. Run this after editingrule.md,manifest.json, or authored source files that should be part of the next remote build.dreamboard compileCompile the current remote authored head. Run this aftersync, or re-run it after a failed compile when you have not made new authored edits.dreamboard pullReconcile remote authored changes into the current workspace. Run this when someone else advanced the remote authored head ordreamboard statusshows authored statebehindordiverged.
Quick rule:
- edited files locally:
dreamboard syncthendreamboard compile - compile failed but you have not edited files since:
dreamboard compileagain - remote authored head moved:
dreamboard pullfirst
Building Your First Game
Read references/building-your-first-game.md
Reference
- Rules and manifest: references/rule-authoring.md, references/manifest-authoring.md
- App logic and engine concepts: references/phase-handlers.md, references/api-reference.md, references/board-systems.md, references/hands-vs-decks.md, references/all-players-tracking.md, references/app-best-practices.md
- UI and UX:
references/ui-best-practices.md,
references/ui-style-guide.md,
genre references under
references/ui-genre-*.md - TypeScript regression harness (
dreamboard test generate/run): references/test-harness.md - Rejection and edge-case pressure using JSON runtime scenarios: references/adversarial-testing.md
Testing Modes
There are two different scenario systems:
dreamboard test generate/dreamboard test runTypeScript scenario files intest/scenarios/*.scenario.tsagainst deterministic generated base snapshots. Use this for regression coverage.dreamboard run --scenario path/to/file.jsonJSON action scripts that drive a live session. Use this for debugging flows, reproductions, and adversarial experiments.
Guardrails
manifest.jsonandrule.mdare the source of truth for scaffolding.- Run
dreamboard syncafter authored changes to keep generated files and the remote authored head in sync. dreamboard pullreconciles authored divergence into the current workspace.dreamboard compileis separate from authored sync; failed compiles do not mean the workspace needs a pull or another sync unless you changed authored files again.- Use
dreamboard statusto distinguish authored sync from compile health before deciding whether the next command should besync,compile, orpull. dreamboard test generateshould be re-run after base changes, compiled-result changes, or game identity changes.- Add at least one zero-step
initial-statescenario so setup invariants fail before action tests begin. - Keep
scripts/events-extract.tsas a debugging helper for.dreamboard/run/events.ndjson; assertions belong in test scenarios.
Editable Surface
Edit:
app/phases/*.tsshared/ui-args.tsui/App.tsxui/components/*ui/sdk/components/*
Do not edit framework-owned files such as:
app/index.tsapp/sdk/*app/generated/*ui/index.tsxui/sdk/context/*ui/sdk/hooks/*ui/sdk/types/*
Framework Feedback
Use feedback.md in the game project root to record framework issues, missing features, or workflow friction. Include reproduction steps, expected behavior, and actual behavior when possible.