@dreamboard-games/agent-skills 0.1.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/package.json +19 -0
- package/skills/dreamboard/SKILL.md +130 -0
package/README.md
ADDED
package/package.json
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@dreamboard-games/agent-skills",
|
|
3
|
+
"version": "0.1.0-alpha.0",
|
|
4
|
+
"description": "Dreamboard agent skills for game development workflows.",
|
|
5
|
+
"license": "SEE LICENSE IN LICENSE",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"files": [
|
|
8
|
+
"skills"
|
|
9
|
+
],
|
|
10
|
+
"keywords": [
|
|
11
|
+
"dreamboard",
|
|
12
|
+
"agent-skills",
|
|
13
|
+
"game-dev",
|
|
14
|
+
"board-game"
|
|
15
|
+
],
|
|
16
|
+
"publishConfig": {
|
|
17
|
+
"access": "public"
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dreamboard
|
|
3
|
+
description: Create multiplayer, rule-enforced, turn-based game on Dreamboard.games platform.
|
|
4
|
+
metadata:
|
|
5
|
+
short-description: Dreamboard Game Development Workflow
|
|
6
|
+
tags: [dreamboard, cli, game-dev, board-game, turn-based, multiplayer]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Dreamboard CLI
|
|
10
|
+
|
|
11
|
+
## Goal
|
|
12
|
+
|
|
13
|
+
Create and iterate on a Dreamboard game locally, then sync authored changes,
|
|
14
|
+
compile, run, and test against the current reducer-native scaffold.
|
|
15
|
+
|
|
16
|
+
## Prereqs
|
|
17
|
+
|
|
18
|
+
- Dreamboard CLI installed and available as `dreamboard`
|
|
19
|
+
Install with `npm install -g dreamboard`
|
|
20
|
+
- Authenticated via `dreamboard login`
|
|
21
|
+
|
|
22
|
+
## Buliding Your First Game
|
|
23
|
+
See [tutorials/building-your-first-game.md](references/building-your-first-game.md)
|
|
24
|
+
|
|
25
|
+
## References
|
|
26
|
+
|
|
27
|
+
- Quickstart:
|
|
28
|
+
[references/quickstart.md](references/quickstart.md)
|
|
29
|
+
- Tutorial:
|
|
30
|
+
[references/building-your-first-game.md](references/building-your-first-game.md)
|
|
31
|
+
- CLI:
|
|
32
|
+
[references/cli.md](references/cli.md)
|
|
33
|
+
- Rules:
|
|
34
|
+
[references/rule-authoring.md](references/rule-authoring.md)
|
|
35
|
+
- Manifest:
|
|
36
|
+
[references/manifest-authoring.md](references/manifest-authoring.md)
|
|
37
|
+
- Reducer:
|
|
38
|
+
[references/reducer.md](references/reducer.md)
|
|
39
|
+
- Game interface:
|
|
40
|
+
[references/game-interface.md](references/game-interface.md)
|
|
41
|
+
- Testing:
|
|
42
|
+
[references/testing.md](references/testing.md)
|
|
43
|
+
|
|
44
|
+
## Current Scaffold
|
|
45
|
+
|
|
46
|
+
The current scaffold centers on these files:
|
|
47
|
+
|
|
48
|
+
- authored source:
|
|
49
|
+
`rule.md`, `manifest.json`
|
|
50
|
+
- reducer:
|
|
51
|
+
`app/game-contract.ts`, `app/game.ts`, `app/phases/*.ts`,
|
|
52
|
+
`app/setup-profiles.ts`
|
|
53
|
+
- UI:
|
|
54
|
+
`ui/App.tsx`
|
|
55
|
+
- tests:
|
|
56
|
+
`test/bases/*.base.ts`, `test/scenarios/*.scenario.ts`,
|
|
57
|
+
`test/testing-types.ts`
|
|
58
|
+
|
|
59
|
+
## Command Flow
|
|
60
|
+
|
|
61
|
+
Use the commands for different kinds of state:
|
|
62
|
+
|
|
63
|
+
- `dreamboard sync`
|
|
64
|
+
Upload local authored changes and advance the remote authored head. Run this after editing `rule.md`, `manifest.json`, or authored source files that should be part of the next remote build.
|
|
65
|
+
- `dreamboard compile`
|
|
66
|
+
Compile the current remote authored head. Run this after `sync`, or re-run it after a failed compile when you have not made new authored edits.
|
|
67
|
+
- `dreamboard pull`
|
|
68
|
+
Reconcile remote authored changes into the current workspace. Run this when someone else advanced the remote authored head or `dreamboard status` shows authored state `behind` or `diverged`.
|
|
69
|
+
|
|
70
|
+
Quick rule:
|
|
71
|
+
|
|
72
|
+
- edited files locally: `dreamboard sync` then `dreamboard compile`
|
|
73
|
+
- compile failed but you have not edited files since: `dreamboard compile` again
|
|
74
|
+
- remote authored head moved: `dreamboard pull` first
|
|
75
|
+
|
|
76
|
+
## Workflow
|
|
77
|
+
|
|
78
|
+
Use this order by default:
|
|
79
|
+
|
|
80
|
+
1. Write or revise `rule.md`.
|
|
81
|
+
2. Align `manifest.json` to the rules.
|
|
82
|
+
3. Run `dreamboard sync`.
|
|
83
|
+
4. Implement reducer state, phases, actions, and views in `app/`.
|
|
84
|
+
5. Implement the playable UI in `ui/App.tsx`.
|
|
85
|
+
6. Run `dreamboard compile`.
|
|
86
|
+
7. Generate test artifacts with `dreamboard test generate`.
|
|
87
|
+
8. Run scenarios with `dreamboard test run`.
|
|
88
|
+
9. Validate the local runtime with `dreamboard run`.
|
|
89
|
+
10. For agent-built games, run `dreamboard dev` and verify the browser UI before handoff. Use Playwright to open the dev host, check that the plugin iframe renders without console errors, and click a primary interaction such as selecting a playable hand card. Reducer scenarios alone are not enough when the game has an interactive UI.
|
|
90
|
+
|
|
91
|
+
## Guardrails
|
|
92
|
+
|
|
93
|
+
- `manifest.json` and `rule.md` are the source of truth for scaffolding.
|
|
94
|
+
- Run `dreamboard sync` after authored changes to keep generated files and the remote authored head in sync.
|
|
95
|
+
- `dreamboard pull` reconciles authored divergence into the current workspace.
|
|
96
|
+
- `dreamboard compile` is separate from authored sync; failed compiles do not mean the workspace needs a pull or another sync unless you changed authored files again.
|
|
97
|
+
- Use `dreamboard status` to distinguish authored sync from compile health before deciding whether the next command should be `sync`, `compile`, or `pull`.
|
|
98
|
+
- Re-run `dreamboard test generate` after runtime-shape changes in `manifest.json` or `app/`.
|
|
99
|
+
- Keep reducer-owned UI data in views; do not reintroduce the old `shared/ui-args.ts` pattern in new scaffolds.
|
|
100
|
+
- When a game exposes clickable hands, markets, boards, or prompts, prove the same interaction works through `dreamboard dev` in a browser. A direct scenario submission can pass even when the rendered surface does not collect the input.
|
|
101
|
+
- For interactive card hands, render generated surfaces such as `handSurface.Hand` and `handSurface.Card` consistently. Do not swap a surface card for a raw `Card` or custom tile based on `me.canAct`; the surface primitive is responsible for disabling unavailable interactions.
|
|
102
|
+
|
|
103
|
+
## Editable Surface
|
|
104
|
+
|
|
105
|
+
Edit:
|
|
106
|
+
|
|
107
|
+
- `rule.md`
|
|
108
|
+
- `manifest.json`
|
|
109
|
+
- `app/game-contract.ts`
|
|
110
|
+
- `app/game.ts`
|
|
111
|
+
- `app/phases/*.ts`
|
|
112
|
+
- `app/setup-profiles.ts`
|
|
113
|
+
- `ui/App.tsx`
|
|
114
|
+
- `test/bases/*.base.ts`
|
|
115
|
+
- `test/scenarios/*.scenario.ts`
|
|
116
|
+
|
|
117
|
+
Do not edit generated or framework-owned files such as:
|
|
118
|
+
|
|
119
|
+
- `app/index.ts`
|
|
120
|
+
- `shared/manifest-contract.ts`
|
|
121
|
+
- `shared/generated/ui-contract.ts`
|
|
122
|
+
- `ui/index.tsx`
|
|
123
|
+
- `test/generated/*`
|
|
124
|
+
|
|
125
|
+
## Offical Documentation
|
|
126
|
+
Visit https://dreamboard.games/docs
|
|
127
|
+
|
|
128
|
+
## Framework Feedback
|
|
129
|
+
|
|
130
|
+
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.
|