modelroom 0.0.6 → 0.1.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.
Files changed (64) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +40 -8
  3. package/dist/bin/modelroom.js +241 -75
  4. package/dist/bin/modelroom.js.map +1 -1
  5. package/dist/lib/agents/index.d.ts.map +1 -1
  6. package/dist/lib/agents/index.js +19 -4
  7. package/dist/lib/agents/index.js.map +1 -1
  8. package/dist/lib/artifact.d.ts +1 -1
  9. package/dist/lib/artifact.d.ts.map +1 -1
  10. package/dist/lib/artifact.js +9 -5
  11. package/dist/lib/artifact.js.map +1 -1
  12. package/dist/lib/config.d.ts +17 -1
  13. package/dist/lib/config.d.ts.map +1 -1
  14. package/dist/lib/config.js +40 -4
  15. package/dist/lib/config.js.map +1 -1
  16. package/dist/lib/frontmatter.d.ts +2 -0
  17. package/dist/lib/frontmatter.d.ts.map +1 -1
  18. package/dist/lib/frontmatter.js +11 -2
  19. package/dist/lib/frontmatter.js.map +1 -1
  20. package/dist/lib/i18n.d.ts +315 -0
  21. package/dist/lib/i18n.d.ts.map +1 -0
  22. package/dist/lib/i18n.js +651 -0
  23. package/dist/lib/i18n.js.map +1 -0
  24. package/dist/lib/lang.d.ts +4 -0
  25. package/dist/lib/lang.d.ts.map +1 -0
  26. package/dist/lib/lang.js +5 -0
  27. package/dist/lib/lang.js.map +1 -0
  28. package/dist/lib/lint.d.ts +3 -0
  29. package/dist/lib/lint.d.ts.map +1 -1
  30. package/dist/lib/lint.js +22 -12
  31. package/dist/lib/lint.js.map +1 -1
  32. package/dist/lib/locale.d.ts +9 -0
  33. package/dist/lib/locale.d.ts.map +1 -0
  34. package/dist/lib/locale.js +32 -0
  35. package/dist/lib/locale.js.map +1 -0
  36. package/dist/lib/server.d.ts +3 -0
  37. package/dist/lib/server.d.ts.map +1 -1
  38. package/dist/lib/server.js +44 -27
  39. package/dist/lib/server.js.map +1 -1
  40. package/dist/lib/templates.d.ts +7 -0
  41. package/dist/lib/templates.d.ts.map +1 -0
  42. package/dist/lib/templates.js +30 -0
  43. package/dist/lib/templates.js.map +1 -0
  44. package/docs/02-convention.md +10 -5
  45. package/docs/03-cli.md +59 -14
  46. package/docs/04-agents.md +10 -2
  47. package/package.json +9 -19
  48. package/templates/{AGENTS.md → en/AGENTS.md} +8 -3
  49. package/templates/ja/AGENTS.md +38 -0
  50. package/templates/ja/room/BEHAVIOUR.md +18 -0
  51. package/templates/ja/room/BRIEF.md +16 -0
  52. package/templates/ja/room/SPEC.md +9 -0
  53. package/templates/ja/room/index.html +53 -0
  54. package/templates/modelroom.json +3 -1
  55. package/ui/assets/app.js +120 -47
  56. package/ui/dashboard.html +11 -7
  57. package/ui/kit.html +13 -9
  58. package/ui/modelroom.css +1 -2
  59. package/ui/room.html +11 -7
  60. package/ui/settings.html +11 -7
  61. /package/templates/{room → en/room}/BEHAVIOUR.md +0 -0
  62. /package/templates/{room → en/room}/BRIEF.md +0 -0
  63. /package/templates/{room → en/room}/SPEC.md +0 -0
  64. /package/templates/{room → en/room}/index.html +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../lib/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../lib/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { type Lang } from './lang.ts';
2
+ export declare const ROOM_FILES: readonly ['BRIEF.md', 'SPEC.md', 'BEHAVIOUR.md', 'index.html'];
3
+ /** The file for a language, falling back to English. */
4
+ export declare function readTemplate(templatesDir: string, lang: Lang, relativePath: string): Promise<string>;
5
+ /** Every language the package actually ships, in a stable order. */
6
+ export declare function shippedLangs(): readonly Lang[];
7
+ //# sourceMappingURL=templates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../lib/templates.ts"],"names":[],"mappings":"AAQA,OAAO,EAAS,KAAK,IAAI,EAAE,MAAM,WAAW,CAAC;AAE7C,eAAO,MAAM,UAAU,YAAI,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,YAAY,CAAU,CAAC;AAEzF,wDAAwD;AACxD,wBAAsB,YAAY,CAChC,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,CAYjB;AAED,oEAAoE;AACpE,wBAAgB,YAAY,IAAI,SAAS,IAAI,EAAE,CAE9C"}
@@ -0,0 +1,30 @@
1
+ // modelroom — the templates `init` copies.
2
+ //
3
+ // Each language is a directory under `templates/`, so a language is data, not a
4
+ // branch in the code. English is the fallback: a missing file never makes `init`
5
+ // fail, it just lands in the language we know we have.
6
+ import { readFile } from 'node:fs/promises';
7
+ import { join } from 'node:path';
8
+ import { LANGS } from './lang.js';
9
+ export const ROOM_FILES = ['BRIEF.md', 'SPEC.md', 'BEHAVIOUR.md', 'index.html'];
10
+ /** The file for a language, falling back to English. */
11
+ export async function readTemplate(templatesDir, lang, relativePath) {
12
+ const candidates = [join(templatesDir, lang, relativePath)];
13
+ if (lang !== 'en')
14
+ candidates.push(join(templatesDir, 'en', relativePath));
15
+ let lastError = null;
16
+ for (const path of candidates) {
17
+ try {
18
+ return await readFile(path, 'utf8');
19
+ }
20
+ catch (error) {
21
+ lastError = error;
22
+ }
23
+ }
24
+ throw lastError instanceof Error ? lastError : new Error(`template not found: ${relativePath}`);
25
+ }
26
+ /** Every language the package actually ships, in a stable order. */
27
+ export function shippedLangs() {
28
+ return LANGS;
29
+ }
30
+ //# sourceMappingURL=templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../lib/templates.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,EAAE;AACF,gFAAgF;AAChF,iFAAiF;AACjF,uDAAuD;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAa,MAAM,WAAW,CAAC;AAE7C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,YAAY,CAAU,CAAC;AAEzF,wDAAwD;AACxD,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,YAAoB,EACpB,IAAU,EACV,YAAoB;IAEpB,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAC5D,IAAI,IAAI,KAAK,IAAI;QAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAC3E,IAAI,SAAS,GAAY,IAAI,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC;IACH,CAAC;IACD,MAAM,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,uBAAuB,YAAY,EAAE,CAAC,CAAC;AAClG,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,YAAY;IAC1B,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -6,13 +6,18 @@ audience. That is the whole idea; the rest follows.
6
6
  ## Files
7
7
 
8
8
  ```
9
- rooms/<room>/
10
- ├── BRIEF.md why this room exists → director, everyone
11
- ├── SPEC.md what the artifact cannot show → designer, agent, implementer
12
- ├── BEHAVIOUR.md what it promises → tests, implementer
13
- └── index.html the artifact (the screen) → director, owner, implementer
9
+ modelroom/
10
+ ├── AGENTS.md
11
+ ├── modelroom.json
12
+ └── rooms/<room>/
13
+ ├── BRIEF.md why this room exists → director, everyone
14
+ ├── SPEC.md what the artifact cannot show → designer, agent, implementer
15
+ ├── BEHAVIOUR.md what it promises → tests, implementer
16
+ └── index.html the artifact (the screen) → director, owner, implementer
14
17
  ```
15
18
 
19
+ Local state lives in `.modelroom/` next to `modelroom/`, and is never committed.
20
+
16
21
  The artifact is the visible spec. `SPEC.md` is the invisible one. They must not overlap.
17
22
 
18
23
  ## Rules
package/docs/03-cli.md CHANGED
@@ -1,8 +1,8 @@
1
1
  # CLI
2
2
 
3
3
  ```
4
- modelroom [serve] [--port 4321] [--host 127.0.0.1] [--open]
5
- modelroom init [<room>] [--dir rooms] [--force]
4
+ modelroom [serve] [--port 4321] [--host 127.0.0.1] [--open] [--lang en|ja]
5
+ modelroom init [<room>] [--dir rooms] [--lang en|ja] [--force]
6
6
  modelroom check [--json] [--strict]
7
7
  modelroom doctor
8
8
  modelroom --version | --help
@@ -18,7 +18,7 @@ do not count).
18
18
  Starts the workspace on `127.0.0.1:4321` by default. `modelroom` alone does the same.
19
19
 
20
20
  - `/` — every room, side by side
21
- - `/room/<name>` — chat, the room's docs, the artifact
21
+ - `/rooms/<name>` — chat, the room's docs, the artifact
22
22
  - `/settings` — which agent to run
23
23
  - `/files/<path>` — your repository, served read-only and **unmodified** (no injection)
24
24
 
@@ -26,15 +26,50 @@ Starts the workspace on `127.0.0.1:4321` by default. `modelroom` alone does the
26
26
 
27
27
  ## init
28
28
 
29
- Copies the room templates and, if missing, `modelroom.json`, `AGENTS.md` and a
30
- `.modelroom/` line in `.gitignore`.
29
+ Creates the design layer in `modelroom/` and keeps local state outside it:
31
30
 
32
31
  ```
33
- modelroom init checkout # creates rooms/checkout/
34
- modelroom init checkout --dir design/screens
32
+ your-repo/
33
+ ├── modelroom/ # committed
34
+ │ ├── modelroom.json
35
+ │ ├── AGENTS.md
36
+ │ └── rooms/<room>/{BRIEF,SPEC,BEHAVIOUR}.md + index.html
37
+ └── .modelroom/ # git-ignored state
38
+ ```
39
+
40
+ `init` writes the room templates and, if missing, `modelroom/modelroom.json`,
41
+ `modelroom/AGENTS.md` and a `/.modelroom/` line in the project's `.gitignore`.
42
+ An existing project keeps its config; running `init` again only adds what is
43
+ missing (`--force` overwrites).
44
+
45
+ ```
46
+ modelroom init checkout # modelroom/rooms/checkout/
47
+ modelroom init checkout --dir screens
48
+ modelroom init checkout --lang ja # pin Japanese for the templates and the UI
35
49
  modelroom init checkout --force # overwrite existing files
36
50
  ```
37
51
 
52
+ ### Language
53
+
54
+ Language is automatic by default. It is resolved in this order:
55
+
56
+ 1. `--lang en|ja` (only when you want to pin it)
57
+ 2. `lang` in `modelroom/modelroom.json`, when it is present
58
+ 3. `MODELROOM_LANG`
59
+ 4. `LC_ALL` / `LC_MESSAGES` / `LANG`
60
+ 5. the OS locale
61
+ 6. English
62
+
63
+ `init` never asks. It uses the detected language for the generated templates and writes
64
+ `lang` only when you passed `--lang`; without it the config has no `lang` and every run
65
+ keeps detecting. `--lang` on `init` (or a later one) pins the language for the CLI, the
66
+ web UI and new rooms.
67
+
68
+ Existing room documents are never rewritten; `--lang` affects new rooms only. To translate
69
+ a project that already has rooms, pin the language and ask the agent to translate the
70
+ existing `BRIEF.md` / `SPEC.md` / `BEHAVIOUR.md` files — the frontmatter keys and promise
71
+ ids stay as they are.
72
+
38
73
  ## check
39
74
 
40
75
  ```
@@ -59,22 +94,27 @@ Exit code is 1 on errors (or on warnings with `--strict`).
59
94
 
60
95
  ```
61
96
  modelroom doctor
62
- ok node 22.14.0 (needs >= 20)
63
- ok root exists: /path/to/repo
64
- ok rooms dir exists: rooms
97
+ ok node 22.14.0 (needs >= 22.18)
98
+ ok root exists: /path/to/repo/modelroom
99
+ ok rooms dir exists: modelroom/rooms
65
100
  ok rooms found: checkout, sign-in
66
- ok config: modelroom.json
101
+ ok config: modelroom/modelroom.json
102
+ ok state: .modelroom
103
+ ok language: ja
104
+ ok agent instructions: modelroom/AGENTS.md
67
105
  ok agent command on PATH: opencode
68
106
  ok png rendering (playwright): not installed (optional)
69
107
  ok room checkout: docs ok
70
108
  ```
71
109
 
72
- ## Config: `modelroom.json`
110
+ ## Config: `modelroom/modelroom.json`
73
111
 
74
112
  ```jsonc
75
113
  {
76
- "root": ".", // where your repository is
114
+ "root": ".", // the design layer, relative to this file
77
115
  "rooms": "rooms", // rooms live here
116
+ "state": "../.modelroom", // local state, relative to this file
117
+ "lang": "ja", // optional; omitted = auto. "en" | "ja"
78
118
  "artifact": "index.html", // the file that is the screen
79
119
  "docs": ["BRIEF.md", "SPEC.md", "BEHAVIOUR.md"], // the only files the UI may write
80
120
  "port": 4321,
@@ -89,8 +129,13 @@ ok room checkout: docs ok
89
129
  }
90
130
  ```
91
131
 
132
+ `root` is what `/files/...` and the agent's working directory see. With a new
133
+ install that is `modelroom/`, so the design layer cannot read the application
134
+ code. `modelroom` looks for `./modelroom.json` first (the old layout) and then
135
+ `./modelroom/modelroom.json`; existing projects do not move.
136
+
92
137
  Anything you change from `/settings` is kept locally in `.modelroom/state.json`
93
- (git-ignore it) — committed configuration stays in `modelroom.json`.
138
+ (git-ignore it) — committed configuration stays in `modelroom/modelroom.json`.
94
139
 
95
140
  ## Thumbnails
96
141
 
package/docs/04-agents.md CHANGED
@@ -49,11 +49,15 @@ output stays in the run log. It is the same session the panel reads, asked about
49
49
  If the session cannot be reached, or the adapter has no such place to look, the chat is exactly
50
50
  what the process printed. That is the `command` adapter, and it is why `structured` exists.
51
51
 
52
+ The agent runs with its working directory set to `cfg.rootDir` — for a new
53
+ install, `modelroom/`. That is where it reads `AGENTS.md`, and it is the whole
54
+ tree modelroom will serve under `/files/...`.
55
+
52
56
  Agents that need to *write* only the room's files should be scoped on their side, for example
53
57
  with OpenCode `permissions`:
54
58
 
55
59
  ```yaml
56
- # .opencode/agents/design.md
60
+ # modelroom/.opencode/agents/design.md
57
61
  permissions:
58
62
  - { action: "*", resource: "*", effect: deny }
59
63
  - { action: read, resource: "rooms/*", effect: allow }
@@ -74,7 +78,11 @@ For anything else — Claude Code, Codex, a local model, a shell script:
74
78
  ```
75
79
 
76
80
  `{session}` is substituted with the room's session id. Sessions are stored per room in
77
- `.modelroom/state.json`; **new session** in the room UI starts a fresh one.
81
+ `.modelroom/state.json` at the project root; **new session** in the room UI starts a fresh one.
82
+
83
+ The generated `AGENTS.md` tells the agent which language to write the room's prose in, and
84
+ that frontmatter keys and promise ids stay in English. Change `lang` in `modelroom.json`
85
+ to change that language for new rooms and for the UI; existing documents are not rewritten.
78
86
 
79
87
  ## Writing an adapter
80
88
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "modelroom",
3
- "version": "0.0.6",
3
+ "version": "0.1.0",
4
4
  "description": "A local workspace to design UI screens with any coding agent — one room per screen: BRIEF, SPEC, BEHAVIOUR and the artifact.",
5
5
  "keywords": [
6
6
  "agent-agnostic",
@@ -53,9 +53,9 @@
53
53
  "build": "npm run build:server && npm run build:web && npm run build:css",
54
54
  "build:server": "tsc -p tsconfig.build.json",
55
55
  "build:web": "node scripts/build-web.mjs",
56
- "build:css": "tailwindcss -i src/modelroom.css -o ui/modelroom.css --minify",
56
+ "build:css": "esbuild src/modelroom.css --bundle --minify --outfile=ui/modelroom.css --target=es2022",
57
57
  "dev:web": "node scripts/build-web.mjs --dev --watch",
58
- "dev:css": "tailwindcss -i src/modelroom.css -o ui/modelroom.css --watch",
58
+ "dev:css": "esbuild src/modelroom.css --bundle --outfile=ui/modelroom.css --watch --target=es2022",
59
59
  "lint": "oxlint",
60
60
  "lint:types": "oxlint --type-aware",
61
61
  "format": "oxfmt",
@@ -64,6 +64,7 @@
64
64
  "test": "vitest run --coverage",
65
65
  "test:watch": "vitest",
66
66
  "verify": "npm run lint && npm run lint:types && npm run format:check && npm run typecheck && npm test && npm run build",
67
+ "verify:ui": "node scripts/verify-ui.mjs",
67
68
  "prepublishOnly": "npm run build"
68
69
  },
69
70
  "devDependencies": {
@@ -75,19 +76,14 @@
75
76
  "@codemirror/state": "^6.7.6",
76
77
  "@codemirror/view": "^6.43.14",
77
78
  "@lezer/highlight": "^1.2.5",
78
- "@radix-ui/react-checkbox": "^1.4.1",
79
- "@radix-ui/react-separator": "^1.2.0",
80
- "@radix-ui/react-slot": "^1.5.0",
81
- "@radix-ui/react-tabs": "^1.2.1",
82
- "@radix-ui/react-toggle-group": "^1.2.1",
83
- "@tailwindcss/cli": "^4.3.3",
84
- "@tailwindcss/typography": "^0.5.20",
79
+ "@mantine/core": "^9.7.3",
80
+ "@mantine/hooks": "^9.7.3",
81
+ "@tanstack/react-virtual": "^3.14.21",
85
82
  "@types/node": "^26.6.5",
86
83
  "@types/react": "^19.3.0",
87
84
  "@types/react-dom": "^19.3.0",
88
85
  "@vitest/coverage-v8": "^5.0.5",
89
- "class-variance-authority": "^0.7.1",
90
- "clsx": "^2.1.1",
86
+ "axe-core": "^4.14.0",
91
87
  "esbuild": "^0.28.2",
92
88
  "highlight.js": "^11.12.0",
93
89
  "lefthook": "^2.2.2",
@@ -101,16 +97,10 @@
101
97
  "react": "^19.3.1",
102
98
  "react-dom": "^19.3.1",
103
99
  "react-resizable-panels": "^3.0.6",
104
- "tailwind-merge": "^3.7.0",
105
- "tailwindcss": "^4.3.3",
106
100
  "typescript": "^7.0.2",
107
101
  "vitest": "^5.0.5"
108
102
  },
109
- "overrides": {
110
- "postcss-selector-parser": "^7.1.6"
111
- },
112
103
  "engines": {
113
104
  "node": ">=22.18"
114
- },
115
- "//": "postcss-selector-parser is overridden to 7.x: @tailwindcss/typography pins ^6, where GHSA-rj75-hqrm-r3gf lives with no 6.x fix. It is a build-time parser, and `npm run build:css` checks the result."
105
+ }
116
106
  }
@@ -3,6 +3,8 @@
3
3
  This repository uses [modelroom](https://github.com/modelroom/modelroom): one room per screen,
4
4
  with the reason, the invisible spec, the promises and the artifact kept apart.
5
5
 
6
+ You are working inside the design layer (`modelroom/`). Write the room's prose in English.
7
+
6
8
  ## Where you may write
7
9
 
8
10
  - `rooms/<room>/BRIEF.md` — why this room exists
@@ -10,7 +12,8 @@ with the reason, the invisible spec, the promises and the artifact kept apart.
10
12
  - `rooms/<room>/BEHAVIOUR.md` — what it promises (operations and results)
11
13
  - `rooms/<room>/index.html` — the artifact itself
12
14
 
13
- Nothing else. Do not touch the application code from here; the design layer never reads it.
15
+ Nothing else. Do not reach outside this directory; the design layer never reads the
16
+ application code. The application is handed this layer, not the other way round.
14
17
 
15
18
  ## How to work
16
19
 
@@ -25,7 +28,9 @@ Nothing else. Do not touch the application code from here; the design layer neve
25
28
 
26
29
  ## Conventions
27
30
 
28
- - Add `Status: draft|review|adopted` to `BRIEF.md` when you want the dashboard to show a state.
29
- Changing it to `adopted` is a human decision, not yours.
31
+ - Frontmatter keys (`title`, `status`, `summary`, `tags`) and promise ids (`@verb-1`) stay
32
+ in English, whatever language the prose uses.
33
+ - Add `status: draft|review|adopted` to `BRIEF.md` when you want the dashboard to show a
34
+ state. Changing it to `adopted` is a human decision, not yours.
30
35
 
31
36
  See `docs/02-convention.md` in the modelroom package for the reasoning.
@@ -0,0 +1,38 @@
1
+ # AGENTS.md — デザインレイヤー
2
+
3
+ このリポジトリは [modelroom](https://github.com/modelroom/modelroom) を使っています。
4
+ 1画面につき1つの room を作り、理由・見えない仕様・約束・artifact を分けて保ちます。
5
+
6
+ あなたはデザインレイヤー(`modelroom/`)の中で作業しています。room の文章は日本語で書いてください。
7
+
8
+ ## 書き込んでよい場所
9
+
10
+ - `rooms/<room>/BRIEF.md` — この room が存在する理由
11
+ - `rooms/<room>/SPEC.md` — artifact では見えないこと(デバイス、状態、制約、使ってよいもの)
12
+ - `rooms/<room>/BEHAVIOUR.md` — 何を約束するか(操作と結果)
13
+ - `rooms/<room>/index.html` — artifact そのもの
14
+
15
+ それ以外は書き込まないでください。このディレクトリの外には出ないでください。
16
+ デザインレイヤーはアプリケーションのコードを読みません。アプリケーションに渡すのは
17
+ このレイヤーであり、その逆ではありません。
18
+
19
+ ## 進め方
20
+
21
+ 1. まず room の `BRIEF.md` を読み、次に `SPEC.md` と `BEHAVIOUR.md` を読みます。
22
+ 2. それらに合うように artifact を変えます。仕様が間違っているなら、黙って書き換えず、
23
+ 間違っていると伝えてください。
24
+ 3. artifact は自己完結にします。CDN、Webフォント、フレームワーク、ビルド手順は使いません。
25
+ 実装に渡すものなので、単体で成立する必要があります。
26
+ 4. `SPEC.md` に、artifact を見れば分かることを書き直さないでください。同じ約束を2つの
27
+ ファイルにコピーせず、id(`@verb-1`)で参照します。
28
+ 5. 実際のシステムが必要とする約束(レコード、タイムスタンプ、権限)は、このレイヤーには
29
+ 置きません。
30
+
31
+ ## 決まりごと
32
+
33
+ - frontmatter のキー(`title`、`status`、`summary`、`tags`)と約束の id(`@verb-1`)は、
34
+ 文章がどの言語でも英語のままにします。
35
+ - ダッシュボードに状態を出したいときは、`BRIEF.md` に `status: draft|review|adopted` を
36
+ 足します。`adopted` に変えるのは人間の判断で、あなたの判断ではありません。
37
+
38
+ 理由は modelroom パッケージの `docs/02-convention.md` にあります。
@@ -0,0 +1,18 @@
1
+ # {{room}} — 振る舞い
2
+
3
+ この room が約束すること: 操作と結果。コードではなく、仕事の言葉で書きます。
4
+
5
+ ```gherkin
6
+ 機能: {{room}}
7
+
8
+ @first-1
9
+ シナリオ: 最初の約束
10
+ 前提 何かの開始点
11
+ もし 人が何かをする
12
+ ならば 観測できることが起きる
13
+ ```
14
+
15
+ メモ
16
+ - 約束ごとに1つの id(`@<verb>-<n>`)を付け、1つのシナリオに1つの約束を書きます。
17
+ - 実際のシステムが必要とする約束(レコード、タイムスタンプ、権限)は、このファイルではなく
18
+ アプリケーションに属します。
@@ -0,0 +1,16 @@
1
+ ---
2
+ title: {{room}}
3
+ status: draft
4
+ version: 1
5
+ summary: 次に読む人が判断できる一言。
6
+ tags: []
7
+ ---
8
+ # {{room}}
9
+
10
+ この room はなぜ存在するのか。誰のためで、何が成り立っていれば作る価値があるのか。
11
+ 優先順位と、あえてやらないことを書いてください。
12
+
13
+ - **誰のため:**
14
+ - **なぜ:**
15
+ - **いちばん大事なこと:**
16
+ - **やらないこと:**
@@ -0,0 +1,9 @@
1
+ # {{room}} — 仕様
2
+
3
+ artifact では見えないことだけを書きます。スクリーンショットで見えることは artifact に
4
+ 属し、ここには書きません。
5
+
6
+ - **使われる場所:**(デバイス、入力、環境)
7
+ - **状態:**(例: 既定、空、エラー — それぞれどのファイルか)
8
+ - **制約:**(レイアウトに関係なく守るべきこと)
9
+ - **使ってよいもの:**(この room が使える共有コンポーネントとトークン)
@@ -0,0 +1,53 @@
1
+ <!doctype html>
2
+ <!-- {{room}} — artifact(実装に渡すもの)
3
+ 意図的に自己完結: CDN なし、フレームワークなし、ビルドなし。 -->
4
+ <html lang="ja">
5
+ <head>
6
+ <meta charset="utf-8">
7
+ <meta name="viewport" content="width=device-width, initial-scale=1">
8
+ <title>{{room}}</title>
9
+ <style>
10
+ :root {
11
+ --bg: #faf9f7;
12
+ --surface: #ffffff;
13
+ --text: #1c1917;
14
+ --muted: #78716c;
15
+ --line: #e7e5e4;
16
+ --primary: #1c1917;
17
+ --primary-text: #fafaf9;
18
+ --radius: 16px;
19
+ --space: 24px;
20
+ }
21
+ * { box-sizing: border-box; }
22
+ html, body { height: 100%; }
23
+ body {
24
+ margin: 0; display: grid; place-items: center; padding: 40px 20px; background: var(--bg); color: var(--text);
25
+ font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", system-ui, sans-serif;
26
+ line-height: 1.7;
27
+ }
28
+ .card {
29
+ width: min(520px, 100%); background: var(--surface); border: 1px solid var(--line);
30
+ border-radius: var(--radius); padding: var(--space); display: flex; flex-direction: column; gap: var(--space);
31
+ }
32
+ h1 { font-size: 22px; margin: 0; letter-spacing: .01em; }
33
+ p { margin: 0; color: var(--muted); font-size: 15px; }
34
+ .actions { display: flex; gap: 12px; flex-wrap: wrap; }
35
+ button {
36
+ font: inherit; padding: 14px 22px; border-radius: var(--radius); border: 1px solid var(--line);
37
+ background: var(--surface); color: var(--text); cursor: pointer;
38
+ }
39
+ button.primary { background: var(--primary); color: var(--primary-text); border-color: var(--primary); }
40
+ </style>
41
+ </head>
42
+ <body>
43
+ <main class="card">
44
+ <h1>{{room}}</h1>
45
+ <p>これは room の artifact です。チャットから置き換えるか、手で書いてください。
46
+ 仕様と約束は隣の SPEC.md と BEHAVIOUR.md にあります。</p>
47
+ <div class="actions">
48
+ <button class="primary">主なアクション</button>
49
+ <button>副次的なアクション</button>
50
+ </div>
51
+ </main>
52
+ </body>
53
+ </html>
@@ -1,6 +1,8 @@
1
1
  {
2
2
  "root": ".",
3
- "rooms": "rooms",
3
+ "rooms": "{{rooms}}",
4
+ "state": "{{state}}",
5
+ "lang": "{{lang}}",
4
6
  "artifact": "index.html",
5
7
  "docs": ["BRIEF.md", "SPEC.md", "BEHAVIOUR.md"],
6
8
  "port": 4321,