design-playbook 0.9.2 → 0.11.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 (35) hide show
  1. package/LICENSE +28 -28
  2. package/NOTICE +37 -37
  3. package/README.md +4 -3
  4. package/commands/run-review.md +30 -0
  5. package/commands/ui-review.md +8 -8
  6. package/commands/ux-spec.md +8 -8
  7. package/mcp/_transport.py +242 -242
  8. package/mcp/evidence/README.md +40 -40
  9. package/mcp/preview/browser.py +44 -9
  10. package/mcp/preview/control.js +118 -1
  11. package/mcp/preview/control.py +8 -2
  12. package/mcp/preview/server.py +129 -129
  13. package/mcp/preview/test_anchor_v2.py +69 -0
  14. package/mcp/preview/test_server_stdio.py +10 -1
  15. package/mcp/preview/test_transaction.py +674 -436
  16. package/mcp/preview/test_versions.py +572 -0
  17. package/mcp/preview/transaction.py +864 -613
  18. package/mcp/preview/versions.py +396 -0
  19. package/mcp/test_transport.py +39 -39
  20. package/package.json +42 -42
  21. package/skills/craft-guard/SKILL.md +59 -59
  22. package/skills/craft-guard/references/craft.md +29 -29
  23. package/skills/craft-guard/references/detectors.md +124 -124
  24. package/skills/design-baseline/SKILL.md +134 -134
  25. package/skills/design-baseline/references/design-template.md +73 -73
  26. package/skills/design-baseline/references/extraction-guidance.md +39 -39
  27. package/skills/design-baseline/scripts/design_baseline.py +780 -780
  28. package/skills/design-playbook/SKILL.md +2 -0
  29. package/skills/native-craft/SKILL.md +59 -59
  30. package/skills/native-craft/references/native-feel.md +79 -79
  31. package/skills/ui-evaluator/references/rubric.md +45 -45
  32. package/skills/ui-picker/references/components.md +31 -31
  33. package/skills/ui-picker/references/design.md +21 -21
  34. package/skills/ui-picker/references/domain.md +26 -26
  35. package/skills/ui-picker/references/template.md +24 -24
package/LICENSE CHANGED
@@ -1,28 +1,28 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 Bandersnatch0x and contributors
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
22
-
23
- ---
24
-
25
- This LICENSE covers only the authored materials in this package (skills,
26
- commands, plugin metadata, and self-written examples). It does not grant
27
- rights to any third-party playbook manuscript, figures, or trademarks that may
28
- exist elsewhere in a parent monorepo for learning purposes.
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Bandersnatch0x and contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
23
+ ---
24
+
25
+ This LICENSE covers only the authored materials in this package (skills,
26
+ commands, plugin metadata, and self-written examples). It does not grant
27
+ rights to any third-party playbook manuscript, figures, or trademarks that may
28
+ exist elsewhere in a parent monorepo for learning purposes.
package/NOTICE CHANGED
@@ -1,37 +1,37 @@
1
- # NOTICE
2
-
3
- design-playbook is an original agent plugin (skills, commands, plugin metadata,
4
- workflow docs, and self-authored examples), licensed under MIT (see `LICENSE`).
5
-
6
- It is **not** a port, overlay, or redistribution of any third-party design
7
- playbook's manuscript, figures, brand marks, or demo site. No rights to such
8
- materials are claimed or granted here.
9
-
10
- The `native-craft` skill is a derivative of yetone/native-feel-skill (MIT). We
11
- authored our own Design I/O leaf and condensed its decision gate and native
12
- conventions audit in our own voice; the full depth (WebView survival, IPC
13
- contract, memory truths, Raycast evidence) remains in the original skill, which
14
- users may install separately. The MIT License of the original is reproduced
15
- below in full, as required for derivative works:
16
-
17
- The MIT License (MIT)
18
-
19
- Copyright (c) 2026 yetone
20
-
21
- Permission is hereby granted, free of charge, to any person obtaining a copy
22
- of this software and associated documentation files (the "Software"), to deal
23
- in the Software without restriction, including without limitation the rights
24
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
25
- copies of the Software, and to permit persons to whom the Software is
26
- furnished to do so, subject to the following conditions:
27
-
28
- The above copyright notice and this permission notice shall be included in all
29
- copies or substantial portions of the Software.
30
-
31
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
32
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
33
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
34
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
35
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
36
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
37
- SOFTWARE.
1
+ # NOTICE
2
+
3
+ design-playbook is an original agent plugin (skills, commands, plugin metadata,
4
+ workflow docs, and self-authored examples), licensed under MIT (see `LICENSE`).
5
+
6
+ It is **not** a port, overlay, or redistribution of any third-party design
7
+ playbook's manuscript, figures, brand marks, or demo site. No rights to such
8
+ materials are claimed or granted here.
9
+
10
+ The `native-craft` skill is a derivative of yetone/native-feel-skill (MIT). We
11
+ authored our own Design I/O leaf and condensed its decision gate and native
12
+ conventions audit in our own voice; the full depth (WebView survival, IPC
13
+ contract, memory truths, Raycast evidence) remains in the original skill, which
14
+ users may install separately. The MIT License of the original is reproduced
15
+ below in full, as required for derivative works:
16
+
17
+ The MIT License (MIT)
18
+
19
+ Copyright (c) 2026 yetone
20
+
21
+ Permission is hereby granted, free of charge, to any person obtaining a copy
22
+ of this software and associated documentation files (the "Software"), to deal
23
+ in the Software without restriction, including without limitation the rights
24
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
25
+ copies of the Software, and to permit persons to whom the Software is
26
+ furnished to do so, subject to the following conditions:
27
+
28
+ The above copyright notice and this permission notice shall be included in all
29
+ copies or substantial portions of the Software.
30
+
31
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
32
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
33
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
34
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
35
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
36
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
37
+ SOFTWARE.
package/README.md CHANGED
@@ -9,7 +9,7 @@ Declarations + contracts — not a style CSV pack. Compose with [ui-ux-pro-max](
9
9
  Path of record (published) - the marketplace catalog lives at the **repo root**, not in this package:
10
10
 
11
11
  ```text
12
- /plugin marketplace add <owner>/<repo>
12
+ /plugin marketplace add https://github.com/Bandersnatch0x/design-playbook.git
13
13
  /plugin install design-playbook@design-playbook
14
14
  ```
15
15
 
@@ -55,6 +55,7 @@ After install, skills and commands are **namespaced** by the plugin name:
55
55
  | `/design-playbook:design-io` | Full pipeline command |
56
56
  | `/design-playbook:ux-spec` | Spec-only command |
57
57
  | `/design-playbook:ui-review` | Review command |
58
+ | `/design-playbook:run-review` | Cross-run review command |
58
59
 
59
60
  Bare `/design-io` is **not** the installed name — always use the `design-playbook:` prefix.
60
61
 
@@ -72,7 +73,7 @@ pi has no plugin namespace — skills are `/skill:<name>`, commands are bare `/<
72
73
  | --- | --- |
73
74
  | `/skill:design-playbook` | Orchestrator skill (model-invoked) |
74
75
  | `/skill:ux-spec` … `/skill:ui-evaluator` | Same eight skills as above |
75
- | `/design-io` · `/ux-spec` · `/ui-review` | Pipeline / spec-only / review commands |
76
+ | `/design-io` · `/ux-spec` · `/ui-review` · `/run-review` | Pipeline / spec-only / review / cross-run commands |
76
77
 
77
78
  pi ships no built-in MCP, so `preview*` and `observe*` skip by default (ADR-0009 absent→skip; the pipeline still runs spec → picker → fill → craft → accept). To enable both gates, install an MCP adapter and register the bundled servers in your project `.mcp.json`:
78
79
 
@@ -116,7 +117,7 @@ pi install npm:pi-mcp-adapter
116
117
  .mcp.json ← bundled MCP servers, launched via ${CLAUDE_PLUGIN_ROOT} (ADR-0009)
117
118
  mcp/{preview,evidence}/← MCP adapter runtimes (preview_prototype / execute_capture_plan)
118
119
  skills/<name>/SKILL.md ← model-invoked skills
119
- commands/<name>.md ← slash commands (design-io, ux-spec, ui-review only)
120
+ commands/<name>.md ← slash commands (design-io, ux-spec, ui-review, run-review)
120
121
  codex/AGENTS.md ← Codex bridge notes
121
122
  examples/ ← self-authored onboarding samples
122
123
  LICENSE · NOTICE ← authored-only scope
@@ -0,0 +1,30 @@
1
+ ---
2
+ description: Cross-run review of Design I/O runs — gate table + repeat blockers
3
+ ---
4
+
5
+ Cross-run **run review** over `.scratch/<run>/` dirs in the user project. Not a step of a single Design I/O run. Markdown only; report header **`run-review/v1`**.
6
+
7
+ ## Discover
8
+
9
+ Scan user-side `.scratch/<run>/` (not monorepo `dogfood/*` globs). **Include** only dirs that have `point-back.md` (one table row each). List dirs without `point-back.md` as skipped + reason — they contribute **0** rows. If runs-with-point-back **< 2**, refuse and report that N.
10
+
11
+ ## Report (tables, in order)
12
+
13
+ 1. **Inclusion manifest** first: `path | status` (`included` / `skipped` + reason). Note: hash match ≠ honest transcription of `observed`.
14
+ 2. **Per-run table** — mandatory **run-path** column; other columns as needed; **gate** from real `validate_run.py` exit when the script is present (plugin install: `packages/design-playbook/scripts/validate_run.py` per run); else literal `not checked`. **Never** infer ok from "artifacts look complete".
15
+ 3. **Repeat blockers** — pure frequency table `count | runs | observed text` (verbatim first-seen text). A **repeat blocker** is the same normalized `observed` text recurring across runs (**counting, not judging**). Rows only where ledger `result != pass`. Grouping key = `observed` **casefold + whitespace-collapsed**, then **char-for-char** equality only; `count ≥ 2`. Literal differences stay separate; optional `similar:` pointer line, never merge counts. **`_none_` is normal** when nothing qualifies (do not loosen normalization to manufacture repeats).
16
+ 4. **Point-back** cites: path + verbatim `observed:` quote; no line numbers.
17
+ 5. Rollup numbers derived **row-by-row** from the tables above — no "overall it seems".
18
+
19
+ Ledger row shape: **ui-evaluator** step 2 (do not restate).
20
+
21
+ ```
22
+ 禁止:
23
+ - no new run ledger
24
+ - no prose lessons / narrative "learning"
25
+ - no auto-writeback to baseline
26
+ - no semantic clustering of observed — verbatim grouping only
27
+ ```
28
+
29
+ Scope:
30
+ $ARGUMENTS
@@ -1,8 +1,8 @@
1
- ---
2
- description: Declaration-backed UI review with point-back findings
3
- ---
4
-
5
- Run skill **ui-evaluator** (pull craft-guard checks when AI slop/motion/loading is in scope). Output issue/source/fix/severity; blocking first.
6
-
7
- Scope:
8
- $ARGUMENTS
1
+ ---
2
+ description: Declaration-backed UI review with point-back findings
3
+ ---
4
+
5
+ Run skill **ui-evaluator** (pull craft-guard checks when AI slop/motion/loading is in scope). Output issue/source/fix/severity; blocking first.
6
+
7
+ Scope:
8
+ $ARGUMENTS
@@ -1,8 +1,8 @@
1
- ---
2
- description: Six-layer spec.md only (stop before UI shell/code)
3
- ---
4
-
5
- Run skill **ux-spec** only. Emit complete `spec.md`. Do not pick templates or write UI.
6
-
7
- Request:
8
- $ARGUMENTS
1
+ ---
2
+ description: Six-layer spec.md only (stop before UI shell/code)
3
+ ---
4
+
5
+ Run skill **ux-spec** only. Emit complete `spec.md`. Do not pick templates or write UI.
6
+
7
+ Request:
8
+ $ARGUMENTS