@overcrow/mcp 0.1.3 → 0.1.4

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 (71) hide show
  1. package/README.md +7 -7
  2. package/dist/bootstrap/pin.json +42 -42
  3. package/dist/content/docs/en/cli.md +32 -31
  4. package/dist/content/docs/en/dev-channel.md +5 -5
  5. package/dist/content/docs/en/elements.md +5 -5
  6. package/dist/content/docs/en/forms.md +32 -30
  7. package/dist/content/docs/en/guide.md +16 -16
  8. package/dist/content/docs/en/index.md +12 -12
  9. package/dist/content/docs/en/limits.md +5 -4
  10. package/dist/content/docs/en/logic.md +30 -28
  11. package/dist/content/docs/en/manifest.md +35 -33
  12. package/dist/content/docs/en/mcp.md +13 -13
  13. package/dist/content/docs/en/package.md +7 -7
  14. package/dist/content/docs/en/publish-keys.md +6 -5
  15. package/dist/content/docs/en/publishing.md +9 -8
  16. package/dist/content/docs/en/reference.md +5 -5
  17. package/dist/content/docs/en/result-shapes.md +3 -3
  18. package/dist/content/docs/en/sdk.md +11 -11
  19. package/dist/content/docs/en/security.md +30 -30
  20. package/dist/content/docs/en/service-reference.md +2 -2
  21. package/dist/content/docs/en/services.md +33 -32
  22. package/dist/content/docs/en/style-properties.md +2 -2
  23. package/dist/content/docs/en/style.md +19 -18
  24. package/dist/content/docs/en/testing.md +36 -35
  25. package/dist/content/docs/en/view.md +13 -12
  26. package/dist/content/docs/en/widget-statistics.md +18 -17
  27. package/dist/content/docs/en/widgets.md +1 -1
  28. package/dist/content/docs/fr/cli.md +33 -29
  29. package/dist/content/docs/fr/dev-channel.md +8 -8
  30. package/dist/content/docs/fr/elements.md +5 -5
  31. package/dist/content/docs/fr/forms.md +35 -34
  32. package/dist/content/docs/fr/guide.md +13 -12
  33. package/dist/content/docs/fr/index.md +15 -15
  34. package/dist/content/docs/fr/limits.md +5 -5
  35. package/dist/content/docs/fr/logic.md +42 -37
  36. package/dist/content/docs/fr/manifest.md +40 -39
  37. package/dist/content/docs/fr/mcp.md +21 -19
  38. package/dist/content/docs/fr/package.md +8 -7
  39. package/dist/content/docs/fr/publish-keys.md +6 -5
  40. package/dist/content/docs/fr/publishing.md +8 -8
  41. package/dist/content/docs/fr/reference.md +6 -6
  42. package/dist/content/docs/fr/result-shapes.md +4 -3
  43. package/dist/content/docs/fr/sdk.md +12 -11
  44. package/dist/content/docs/fr/security.md +41 -39
  45. package/dist/content/docs/fr/service-reference.md +2 -2
  46. package/dist/content/docs/fr/services.md +34 -33
  47. package/dist/content/docs/fr/style-properties.md +2 -2
  48. package/dist/content/docs/fr/style.md +25 -22
  49. package/dist/content/docs/fr/testing.md +43 -43
  50. package/dist/content/docs/fr/view.md +17 -16
  51. package/dist/content/docs/fr/widget-statistics.md +20 -20
  52. package/dist/content/docs/fr/widgets.md +1 -1
  53. package/dist/content/examples/clock/README.md +3 -3
  54. package/dist/content/examples/fps/README.md +3 -3
  55. package/dist/content/examples/media/README.md +2 -2
  56. package/dist/content/examples/notes/README.md +1 -1
  57. package/dist/content/examples/performance/README.md +2 -2
  58. package/dist/content/examples/playervox-journal/README.md +5 -5
  59. package/dist/content/examples/playervox-rating/README.md +3 -3
  60. package/dist/content/examples/playervox-reviews/README.md +3 -3
  61. package/dist/content/examples/playervox-score/README.md +3 -3
  62. package/dist/content/examples/session/README.md +3 -3
  63. package/dist/content/examples/stopwatch/README.md +3 -3
  64. package/dist/content/examples/twitch-chat/README.md +4 -4
  65. package/dist/content/examples/warframe-market/README.md +2 -2
  66. package/dist/content/reference/errors.json +16 -16
  67. package/dist/prompts.js +2 -2
  68. package/dist/resources.js +1 -1
  69. package/dist/version.js +1 -1
  70. package/npm-shrinkwrap.json +2 -2
  71. package/package.json +1 -1
package/README.md CHANGED
@@ -6,7 +6,7 @@ VS Code or Codex, and the assistant can create a widget, check it, test it,
6
6
  audit its security and lightness, package it and prepare its submission.
7
7
 
8
8
  You need Node.js 22.18 or later, nothing else: the server installs the
9
- OverCrow creator tools it needs by itself.
9
+ PlayerVox OverCrow creator tools it needs by itself.
10
10
 
11
11
  ```sh
12
12
  claude mcp add overcrow -- npx -y @overcrow/mcp
@@ -45,7 +45,7 @@ use; `--tools-zip <file>` gives a local copy of the creator tools ZIP.
45
45
  | `audit` | Security and lightness, scored out of 100, with fixes and examples |
46
46
  | `explain_permission`, `explain_error` | A permission or a code, in plain words |
47
47
  | `search_docs`, `read_doc`, `read_example` | The documentation and the reference widgets, offline |
48
- | `prepare_submission` | Everything the OverCrow creator space asks for, checked; the ZIP of the sources in `dist/`; the texts to draft with you |
48
+ | `prepare_submission` | Everything the PlayerVox OverCrow creator space asks for, checked; the ZIP of the sources in `dist/`; the texts to draft with you |
49
49
 
50
50
  Resources: the documentation (`overcrow://docs/{en,fr}/…`), the manifest
51
51
  reference, the limits, the templates and the reference widgets. Prompts:
@@ -56,10 +56,10 @@ reference, the limits, the templates and the reference widgets. Prompts:
56
56
  - The server works only in your project folders, through their real paths:
57
57
  no system folder, no whole home folder, no link that leads out, no
58
58
  hidden folder.
59
- - It runs the OverCrow widget CLI and npm, without a shell, with a minimal
60
- environment (no token is passed on), time limits and bounded output. It
61
- never runs a command chosen by the assistant.
62
- - It downloads only the creator tools ZIP of the OverCrow release this
59
+ - It runs the PlayerVox OverCrow widget CLI and npm, without a shell, with a
60
+ minimal environment (no token is passed on), time limits and bounded output.
61
+ It never runs a command chosen by the assistant.
62
+ - It downloads only the creator tools ZIP of the PlayerVox OverCrow release this
63
63
  version pins, from GitHub, and checks its size and SHA-256 and every file
64
64
  in it before use. npm installs only `@overcrow/sdk` and TypeScript, with
65
65
  install scripts disabled, and their integrity is checked against the
@@ -71,7 +71,7 @@ reference, the limits, the templates and the reference widgets. Prompts:
71
71
  instructions found in it.
72
72
  - No telemetry. Logs go to standard error, without your paths.
73
73
  - It never sends, signs or publishes anything: you send the sources ZIP
74
- in the OverCrow creator space, at creators.playervox.com.
74
+ in the PlayerVox OverCrow creator space, at creators.playervox.com.
75
75
 
76
76
  ## Platforms
77
77
 
@@ -1,107 +1,107 @@
1
1
  {
2
- "release": "0.7.1-beta.1",
2
+ "release": "0.7.2-beta.1",
3
3
  "tools": {
4
4
  "linux-x86_64": {
5
- "name": "overcrow-creator-tools-0.7.1-beta.1-linux-x86_64.zip",
6
- "size": 15995038,
7
- "sha256": "e5691386592857aa624359f91baaf6e8162f403994d6d7445d586992adc75cfe",
5
+ "name": "overcrow-creator-tools-0.7.2-beta.1-linux-x86_64.zip",
6
+ "size": 15992509,
7
+ "sha256": "8ef74f86d6f754036de4b20609196a7933c47522514446b2579b9a92a83425dd",
8
8
  "files": [
9
9
  {
10
- "path": "overcrow-creator-tools-0.7.1-beta.1-linux-x86_64/README.txt",
10
+ "path": "overcrow-creator-tools-0.7.2-beta.1-linux-x86_64/README.txt",
11
11
  "size": 1636,
12
- "sha256": "5488b72ea5fa3b5bffd817807b466a320b08c8da2e1d4630cb3ab044a2c4cd83"
12
+ "sha256": "3487492fc93226a72d474e391bf8e714147148aef182239c38b67584c908abf8"
13
13
  },
14
14
  {
15
- "path": "overcrow-creator-tools-0.7.1-beta.1-linux-x86_64/SHA256SUMS",
15
+ "path": "overcrow-creator-tools-0.7.2-beta.1-linux-x86_64/SHA256SUMS",
16
16
  "size": 797,
17
- "sha256": "a1762f910bd5dc68312d59d66ba9deca4d3307884af5fb93892af6e73696f6cf"
17
+ "sha256": "e1cb2fb41b01b52d20a46c84e497aa7af35a680dda21fc2e4be793e6762fb896"
18
18
  },
19
19
  {
20
- "path": "overcrow-creator-tools-0.7.1-beta.1-linux-x86_64/cli.json",
20
+ "path": "overcrow-creator-tools-0.7.2-beta.1-linux-x86_64/cli.json",
21
21
  "size": 1014,
22
- "sha256": "6975d04ef3508151c4e539ba27396b460e4293460b591b405a422528885e9ac3"
22
+ "sha256": "596f02e649d58803f4580b0e62f67be4737bb54bb670fd1cbd08989007161406"
23
23
  },
24
24
  {
25
- "path": "overcrow-creator-tools-0.7.1-beta.1-linux-x86_64/overcrow-widget-1.0.0-beta.4-LICENSE.txt",
25
+ "path": "overcrow-creator-tools-0.7.2-beta.1-linux-x86_64/overcrow-widget-1.0.0-beta.5-LICENSE.txt",
26
26
  "size": 1071,
27
27
  "sha256": "c159eef41245fe20d4cd29fc33a0e88a85f47b53ac321f266abfb7b707aee8c3"
28
28
  },
29
29
  {
30
- "path": "overcrow-creator-tools-0.7.1-beta.1-linux-x86_64/overcrow-widget-1.0.0-beta.4-THIRD-PARTY-NOTICES.md",
30
+ "path": "overcrow-creator-tools-0.7.2-beta.1-linux-x86_64/overcrow-widget-1.0.0-beta.5-THIRD-PARTY-NOTICES.md",
31
31
  "size": 212099,
32
32
  "sha256": "8c679481b61f9fb4c8352bd4d1c3bcfc23acf4d51b8252140ed214b1f5b756c4"
33
33
  },
34
34
  {
35
- "path": "overcrow-creator-tools-0.7.1-beta.1-linux-x86_64/overcrow-widget-1.0.0-beta.4-linux-x86_64",
36
- "size": 9511032,
37
- "sha256": "28557b787a18143fb5ebfc6c117e068290da5ad28b065d1f9aebccb993dd8f1e"
35
+ "path": "overcrow-creator-tools-0.7.2-beta.1-linux-x86_64/overcrow-widget-1.0.0-beta.5-linux-x86_64",
36
+ "size": 9508600,
37
+ "sha256": "e899ab38f6c72e41e15a81de469fee0093394297bd0288338627e3b39e6348e0"
38
38
  },
39
39
  {
40
- "path": "overcrow-creator-tools-0.7.1-beta.1-linux-x86_64/overcrow-widget-headless-0.7.1-beta.1-LICENSE.md",
40
+ "path": "overcrow-creator-tools-0.7.2-beta.1-linux-x86_64/overcrow-widget-headless-0.7.2-beta.1-LICENSE.md",
41
41
  "size": 217457,
42
- "sha256": "8f4895218bf254acc8f65a643d65ceceafdfa3b9611ee4807307b7d8830d55f4"
42
+ "sha256": "a20df95a937c0c4e794edd027042bbe3fb0427d0e7d16fe2ed8f12d96bf23b03"
43
43
  },
44
44
  {
45
- "path": "overcrow-creator-tools-0.7.1-beta.1-linux-x86_64/overcrow-widget-headless-0.7.1-beta.1-linux-x86_64",
45
+ "path": "overcrow-creator-tools-0.7.2-beta.1-linux-x86_64/overcrow-widget-headless-0.7.2-beta.1-linux-x86_64",
46
46
  "size": 24959192,
47
- "sha256": "2616c578ca11b685dad44fb045f402a443445909153a1da9c1b5802a12de0b7a"
47
+ "sha256": "ad3553c91fbbc2484b7534d61b77e54731c3413588b4b1cfa85e17da0d6d6c64"
48
48
  },
49
49
  {
50
- "path": "overcrow-creator-tools-0.7.1-beta.1-linux-x86_64/runtimes.json",
50
+ "path": "overcrow-creator-tools-0.7.2-beta.1-linux-x86_64/runtimes.json",
51
51
  "size": 774,
52
- "sha256": "f099e933965f6396ffbb63fbb92b6d17bcd187ab1c1869a989cb5923443e7f15"
52
+ "sha256": "c354b0e4bdf95befd0b428014212729b21c621b76ba8addb58e0944c87304922"
53
53
  }
54
54
  ]
55
55
  },
56
56
  "windows-x86_64": {
57
- "name": "overcrow-creator-tools-0.7.1-beta.1-windows-x86_64.zip",
58
- "size": 15910251,
59
- "sha256": "40dbe6e6d6d411aab510ff120e99eb381174258b856390ecad0d5626e0ca890c",
57
+ "name": "overcrow-creator-tools-0.7.2-beta.1-windows-x86_64.zip",
58
+ "size": 15909302,
59
+ "sha256": "e8b0efb252e4f589f4126e4194a194ba4b16a8cc9fee5790a13fa5a0b964b223",
60
60
  "files": [
61
61
  {
62
- "path": "overcrow-creator-tools-0.7.1-beta.1-windows-x86_64/README.txt",
62
+ "path": "overcrow-creator-tools-0.7.2-beta.1-windows-x86_64/README.txt",
63
63
  "size": 1457,
64
- "sha256": "f4d37f0d43473d497b1a8240a6aad4c71a37055a171addba8422d81fc19b2975"
64
+ "sha256": "f12ab0895d4d155de4af20abdd9e8cd9c3d279bea375702e41d47a29ef062b28"
65
65
  },
66
66
  {
67
- "path": "overcrow-creator-tools-0.7.1-beta.1-windows-x86_64/SHA256SUMS",
67
+ "path": "overcrow-creator-tools-0.7.2-beta.1-windows-x86_64/SHA256SUMS",
68
68
  "size": 809,
69
- "sha256": "01e76cd9e09a3f0f43395acc94a6285beb0b17ce6c08f706eef3266499901cc9"
69
+ "sha256": "bdb200171439600794a84055b8c3f68674554bffe6f3872547c1a3772c7e83b5"
70
70
  },
71
71
  {
72
- "path": "overcrow-creator-tools-0.7.1-beta.1-windows-x86_64/cli.json",
72
+ "path": "overcrow-creator-tools-0.7.2-beta.1-windows-x86_64/cli.json",
73
73
  "size": 1014,
74
- "sha256": "6975d04ef3508151c4e539ba27396b460e4293460b591b405a422528885e9ac3"
74
+ "sha256": "596f02e649d58803f4580b0e62f67be4737bb54bb670fd1cbd08989007161406"
75
75
  },
76
76
  {
77
- "path": "overcrow-creator-tools-0.7.1-beta.1-windows-x86_64/overcrow-widget-1.0.0-beta.4-LICENSE.txt",
77
+ "path": "overcrow-creator-tools-0.7.2-beta.1-windows-x86_64/overcrow-widget-1.0.0-beta.5-LICENSE.txt",
78
78
  "size": 1071,
79
79
  "sha256": "c159eef41245fe20d4cd29fc33a0e88a85f47b53ac321f266abfb7b707aee8c3"
80
80
  },
81
81
  {
82
- "path": "overcrow-creator-tools-0.7.1-beta.1-windows-x86_64/overcrow-widget-1.0.0-beta.4-THIRD-PARTY-NOTICES.md",
82
+ "path": "overcrow-creator-tools-0.7.2-beta.1-windows-x86_64/overcrow-widget-1.0.0-beta.5-THIRD-PARTY-NOTICES.md",
83
83
  "size": 212099,
84
84
  "sha256": "8c679481b61f9fb4c8352bd4d1c3bcfc23acf4d51b8252140ed214b1f5b756c4"
85
85
  },
86
86
  {
87
- "path": "overcrow-creator-tools-0.7.1-beta.1-windows-x86_64/overcrow-widget-1.0.0-beta.4-windows-x86_64.exe",
88
- "size": 9513984,
89
- "sha256": "a6b046bfe11938f07e37225f2f993d9656fe92bdb403cd695ce23dfa88dd370a"
87
+ "path": "overcrow-creator-tools-0.7.2-beta.1-windows-x86_64/overcrow-widget-1.0.0-beta.5-windows-x86_64.exe",
88
+ "size": 9528320,
89
+ "sha256": "4e26c45c74e1e6b291892e097236b3f64da0d9d881cb8eba6d9561e3fc3fc831"
90
90
  },
91
91
  {
92
- "path": "overcrow-creator-tools-0.7.1-beta.1-windows-x86_64/overcrow-widget-headless-0.7.1-beta.1-LICENSE.md",
92
+ "path": "overcrow-creator-tools-0.7.2-beta.1-windows-x86_64/overcrow-widget-headless-0.7.2-beta.1-LICENSE.md",
93
93
  "size": 217457,
94
- "sha256": "8f4895218bf254acc8f65a643d65ceceafdfa3b9611ee4807307b7d8830d55f4"
94
+ "sha256": "a20df95a937c0c4e794edd027042bbe3fb0427d0e7d16fe2ed8f12d96bf23b03"
95
95
  },
96
96
  {
97
- "path": "overcrow-creator-tools-0.7.1-beta.1-windows-x86_64/overcrow-widget-headless-0.7.1-beta.1-windows-x86_64.exe",
98
- "size": 25644544,
99
- "sha256": "66019a1ff9bdcd7074f27facba56b684d870642497388a265bb05eb9f80946f4"
97
+ "path": "overcrow-creator-tools-0.7.2-beta.1-windows-x86_64/overcrow-widget-headless-0.7.2-beta.1-windows-x86_64.exe",
98
+ "size": 25638912,
99
+ "sha256": "ca4dbbe2a4acd757db2345e699c35b8bf35953b932c65f1e9273d3248b4e092d"
100
100
  },
101
101
  {
102
- "path": "overcrow-creator-tools-0.7.1-beta.1-windows-x86_64/runtimes.json",
102
+ "path": "overcrow-creator-tools-0.7.2-beta.1-windows-x86_64/runtimes.json",
103
103
  "size": 774,
104
- "sha256": "f099e933965f6396ffbb63fbb92b6d17bcd187ab1c1869a989cb5923443e7f15"
104
+ "sha256": "c354b0e4bdf95befd0b428014212729b21c621b76ba8addb58e0944c87304922"
105
105
  }
106
106
  ]
107
107
  }
@@ -23,7 +23,7 @@ overcrow-widget test
23
23
  | [`check`](#check) | Validates a project without writing anything. |
24
24
  | [`package`](#package) | Checks, then writes the `.ocpkg` package. |
25
25
  | [`inspect`](#inspect) | Shows what a package holds and asks for. |
26
- | [`dev`](#dev) | Runs the widget in OverCrow and reloads it when you save. |
26
+ | [`dev`](#dev) | Runs the widget in PlayerVox OverCrow and reloads it when you save. |
27
27
  | [`test`](#test) | Plays the project's test scenarios and compares their images. |
28
28
  | [`doctor`](#doctor) | Says what your setup has and lacks. |
29
29
  | [`admit`](#admit) | Runs the admission of the creator space on your sources, a folder or a ZIP. |
@@ -37,7 +37,7 @@ and [exit status](#exit-status) are stable for scripts.
37
37
 
38
38
  ## Installing
39
39
 
40
- Each [OverCrow release](https://github.com/Valhallab/playervox-overcrow-releases/releases)
40
+ Each [PlayerVox OverCrow release](https://github.com/Valhallab/playervox-overcrow-releases/releases)
41
41
  carries the creator tools in one ZIP per platform: the tool with its
42
42
  license and third-party notices, OverCrow's headless runtime that
43
43
  [`test`](#test) uses, a `README.txt` and a `SHA256SUMS` of every file.
@@ -122,8 +122,8 @@ empty: `init` never overwrites a file.
122
122
  | `chart` | A live chart updated by a timer. |
123
123
 
124
124
  Pass `--id` with your widget's ID: `<handle>.<name>`, your publisher handle
125
- in the OverCrow creator space and a name (`nova.lol-timers`), or a reverse
126
- domain you verified and a name (`gg.nova.lol-timers`); see
125
+ in the PlayerVox OverCrow creator space and a name (`nova.lol-timers`), or a
126
+ reverse domain you verified and a name (`gg.nova.lol-timers`); see
127
127
  [the manifest](manifest.md#identity-and-version). Without `--id`, the ID is
128
128
  `yourhandle.<dir>`: replace `yourhandle` before you submit, as `admit`
129
129
  refuses it. `com.playervox.*` is reserved. Every template
@@ -141,17 +141,17 @@ Runs every check, in this order, and writes nothing:
141
141
 
142
142
  1. **Project files**: the required files are there and within their size
143
143
  bounds, one logic module, both locale files or neither.
144
- 2. **Manifest**: OverCrow's own manifest validator.
144
+ 2. **Manifest**: PlayerVox OverCrow's own manifest validator.
145
145
  3. **View**: `view.ocml` is compiled and the result validated; static
146
146
  images must exist in `assets/`.
147
- 4. **Style**: `style.ocss` is parsed with OverCrow's parser.
147
+ 4. **Style**: `style.ocss` is parsed with PlayerVox OverCrow's parser.
148
148
  5. **Locales**: objects of strings with valid keys, the same keys in both
149
149
  files. A `t("key")` of the view whose key has no message is a warning.
150
150
  6. **Logic**: the [lint](logic.md#what-the-logic-cannot-use), and the
151
151
  exports the view calls.
152
152
  7. **Types**: the project's `tsc --noEmit -p tsconfig.json`.
153
153
  8. **Package**: `logic.js` is built, the package is written in memory and
154
- read back exactly as OverCrow will read it.
154
+ read back exactly as PlayerVox OverCrow will read it.
155
155
 
156
156
  Options: `--no-typecheck`, `--deny-warnings` (a warning fails the command),
157
157
  `--format json`.
@@ -180,14 +180,14 @@ holds is described in [the package](package.md).
180
180
  overcrow-widget inspect dist/nova.my-widget-0.1.0.ocpkg
181
181
  ```
182
182
 
183
- Validates a package as OverCrow does, then shows it as a reviewer sees it:
184
- the ID, version and names; the size and SHA-256 of the archive; the SDK
185
- version its `logic.js` contains; each permission in words (network routes
186
- with their parameter constraints and declared response bound, storage,
187
- clipboard, game events); each capability with its summary and whether it is
188
- sensitive or needs an account; the number of menu rows; and every file with
189
- its size and SHA-256. A package that OverCrow would refuse is reported
190
- instead, with the reason.
183
+ Validates a package as PlayerVox OverCrow does, then shows it as a reviewer
184
+ sees it: the ID, version and names; the size and SHA-256 of the archive; the
185
+ SDK version its `logic.js` contains; each permission in words (network
186
+ routes with their parameter constraints and declared response bound,
187
+ storage, clipboard, game events); each capability with its summary and
188
+ whether it is sensitive or needs an account; the number of menu rows; and
189
+ every file with its size and SHA-256. A package that OverCrow would refuse
190
+ is reported instead, with the reason.
191
191
 
192
192
  ## dev
193
193
 
@@ -195,8 +195,8 @@ instead, with the reason.
195
195
  overcrow-widget dev
196
196
  ```
197
197
 
198
- Runs the widget in the OverCrow overlay running on your machine, while you
199
- edit it:
198
+ Runs the widget in the PlayerVox OverCrow overlay running on your machine,
199
+ while you edit it:
200
200
 
201
201
  1. it connects to the overlay, which must have been started with
202
202
  development installs allowed;
@@ -215,7 +215,7 @@ edit it:
215
215
  Options: `--no-typecheck`, `--format json` (one JSON object per line).
216
216
  Exit status: 0 after Ctrl+C, 1 when the overlay ends the session, 2 when no
217
217
  overlay is reachable. [The development channel](dev-channel.md) says how to
218
- start OverCrow for it, and what each state and refusal means.
218
+ start PlayerVox OverCrow for it, and what each state and refusal means.
219
219
 
220
220
  ## test
221
221
 
@@ -225,8 +225,8 @@ overcrow-widget test --scenario example
225
225
  overcrow-widget test --update
226
226
  ```
227
227
 
228
- Plays the scenarios of `tests/` in OverCrow's headless runtime and compares
229
- the images it renders with the references:
228
+ Plays the scenarios of `tests/` in PlayerVox OverCrow's headless runtime and
229
+ compares the images it renders with the references:
230
230
 
231
231
  1. it builds the package as `package` does;
232
232
  2. it reads every `tests/<name>.scenario.json` and checks it against the
@@ -268,7 +268,7 @@ overcrow-widget doctor
268
268
  | Code | Severity | Meaning |
269
269
  | --- | --- | --- |
270
270
  | `doctor.overcrow_missing` | warning | OverCrow is not installed. |
271
- | `doctor.development_off` | warning | No overlay allows development installs; the help gives the commands to restart OverCrow with them. |
271
+ | `doctor.development_off` | warning | No overlay allows development installs; the help gives the commands to restart PlayerVox OverCrow with them. |
272
272
  | `doctor.channel_busy` | warning | The overlay already serves its maximum of `dev` sessions. |
273
273
  | `doctor.channel_io` | warning | The connection to the overlay failed. |
274
274
  | `doctor.channel_untrusted` | error | What answers is not this user's overlay. |
@@ -384,8 +384,8 @@ overcrow-widget submit --dry-run --submission submission.json
384
384
  overcrow-widget submit --submission submission.json
385
385
  ```
386
386
 
387
- Sends a version of your widget to the OverCrow creator space, from a
388
- terminal, a CI job or the OverCrow MCP server, then follows its checks. It
387
+ Sends a version of your widget to the PlayerVox OverCrow creator space, from
388
+ a terminal, a CI job or the OverCrow MCP server, then follows its checks. It
389
389
  never asks a question: what is missing is said, with a stable
390
390
  [exit status](#exit-status). It takes the widget folder (the current one
391
391
  without argument) or a ZIP of it.
@@ -499,8 +499,8 @@ an hour expires, and every submission counts in the daily limit.
499
499
  | `justifications` | For the reviewer, one `{permission, text}` per new or widened permission, by its [key](#permission-keys); 500 characters each. |
500
500
  | `reviewMessage` | A private message to the reviewer, 2,000 characters. |
501
501
 
502
- Every key is optional; any other key is refused. The OverCrow MCP server
503
- writes this file.
502
+ Every key is optional; any other key is refused. The PlayerVox OverCrow MCP
503
+ server writes this file.
504
504
 
505
505
  ### In a CI job
506
506
 
@@ -510,10 +510,11 @@ the key in the repository's secrets:
510
510
 
511
511
  <!-- source: docs/content/examples/weather/.github/workflows/submit.yml -->
512
512
  ```yaml
513
- # Sends the widget to the OverCrow creator space when a version tag is
514
- # pushed. The publish key is a secret of the repository, and the OverCrow
515
- # release whose creator tools to use is a variable of the repository.
516
- name: Submit to OverCrow
513
+ # Sends the widget to the PlayerVox OverCrow creator space when a version
514
+ # tag is pushed. The publish key is a secret of the repository, and the
515
+ # OverCrow release whose creator tools to use is a variable of the
516
+ # repository.
517
+ name: Submit to PlayerVox OverCrow
517
518
 
518
519
  on:
519
520
  push:
@@ -538,7 +539,7 @@ jobs:
538
539
  (cd "$tools" && sha256sum --check --quiet SHA256SUMS)
539
540
  install -D -m 755 "$tools"/overcrow-widget-*-linux-x86_64 "$HOME/.local/bin/overcrow-widget"
540
541
  echo "$HOME/.local/bin" >> "$GITHUB_PATH"
541
- - name: Submit to OverCrow
542
+ - name: Submit to PlayerVox OverCrow
542
543
  run: overcrow-widget submit --submission submission.json
543
544
  env:
544
545
  OVERCROW_PUBLISH_KEY: ${{ secrets.OVERCROW_PUBLISH_KEY }}
@@ -547,7 +548,7 @@ jobs:
547
548
  The job fails on any status but 0. `OVERCROW_API_URL` points `submit`
548
549
  and `status` to another API, for tests only: `https://`, or `http://` to
549
550
  `127.0.0.1`, `localhost` or `[::1]`, with a warning every time. Never set
550
- it in a real job; the OverCrow MCP server never sets it.
551
+ it in a real job; the PlayerVox OverCrow MCP server never sets it.
551
552
 
552
553
  ## status
553
554
 
@@ -15,8 +15,8 @@ builds the widget, sends it and stays in the foreground until Ctrl+C.
15
15
 
16
16
  ## Turn it on
17
17
 
18
- The channel exists only while OverCrow runs with development installs
19
- allowed: started with the environment variable
18
+ The channel exists only while PlayerVox OverCrow runs with development
19
+ installs allowed: started with the environment variable
20
20
  `OVERCROW_WIDGET_DEVELOPMENT=1`. Without it, the overlay opens nothing.
21
21
 
22
22
  **Linux.** Set the variable for your session's services, then restart the
@@ -34,7 +34,7 @@ systemctl --user unset-environment OVERCROW_WIDGET_DEVELOPMENT
34
34
  systemctl --user restart overcrow-overlay.service
35
35
  ```
36
36
 
37
- **Windows.** Quit OverCrow from its tray icon, then start it from
37
+ **Windows.** Quit PlayerVox OverCrow from its tray icon, then start it from
38
38
  PowerShell:
39
39
 
40
40
  ```text
@@ -126,5 +126,5 @@ before a session starts. Widgets cannot use it: their sandbox has no access
126
126
  to it.
127
127
 
128
128
  This is why the channel is off by default. With it on, any program you run
129
- can show an unverified widget in your overlay, for as long as OverCrow
130
- runs. Turn it off when you are done.
129
+ can show an unverified widget in your overlay, for as long as
130
+ PlayerVox OverCrow runs. Turn it off when you are done.
@@ -19,7 +19,7 @@ them: expressions, `if`, `for`, components.
19
19
  ```
20
20
 
21
21
  Two `box` containers, two `text` elements bound to the state, and a `chart`
22
- with one `series`: OverCrow draws all of it, the chart included.
22
+ with one `series`: PlayerVox OverCrow draws all of it, the chart included.
23
23
 
24
24
  ## How to read an element
25
25
 
@@ -435,10 +435,10 @@ Any other `key` is one printable character.
435
435
 
436
436
  ## Default sizes
437
437
 
438
- The elements that OverCrow draws take these sizes, in logical pixels at
439
- 100 %, unless the style sets `width` or `height`. Any other element is
440
- sized by its content and by the style: a `canvas` has no size until the
441
- style gives it one.
438
+ The elements that PlayerVox OverCrow draws take these sizes, in logical
439
+ pixels at 100 %, unless the style sets `width` or `height`. Any other
440
+ element is sized by its content and by the style: a `canvas` has no size
441
+ until the style gives it one.
442
442
 
443
443
  <!-- generated:default-sizes -->
444
444
  | Element | When | Width | Height |
@@ -8,9 +8,9 @@ intent** is how a widget lets the user write to their notes, publish a
8
8
  rating or send a chat message, without the text ever passing through the
9
9
  widget's code.
10
10
 
11
- Widgets receive input only in OverCrow's Interactive mode. In Passive mode
12
- a click goes through the widget to the game: hide or disable what cannot be
13
- used, as the built-ins do with `host.mode`.
11
+ Widgets receive input only in PlayerVox OverCrow's Interactive mode. In
12
+ Passive mode a click goes through the widget to the game: hide or disable
13
+ what cannot be used, as the built-ins do with `host.mode`.
14
14
 
15
15
  ## Controls
16
16
 
@@ -58,9 +58,10 @@ slider, text for the others.
58
58
 
59
59
  ### Text fields
60
60
 
61
- OverCrow edits the text of a `field` or a `textarea` itself: the caret, the
62
- selection, copy and paste, and input methods for languages that compose
63
- characters. The logic receives a copy of the text in each `input` event.
61
+ PlayerVox OverCrow edits the text of a `field` or a `textarea` itself: the
62
+ caret, the selection, copy and paste, and input methods for languages that
63
+ compose characters. The logic receives a copy of the text in each `input`
64
+ event.
64
65
 
65
66
  <!-- source: widgets/warframe-market/view.ocml -->
66
67
  ```xml
@@ -91,9 +92,9 @@ Binding `value` replaces what the field holds: bind it to the state your
91
92
  the field is empty.
92
93
 
93
94
  A field also sends `keydown` when you ask for it, with the key and its
94
- modifiers, for shortcuts such as Escape to cancel. Keys that OverCrow
95
- reserves (Tab to move the focus, its own shortcuts, a composition in
96
- progress) are not delivered.
95
+ modifiers, for shortcuts such as Escape to cancel. Keys that
96
+ PlayerVox OverCrow reserves (Tab to move the focus, its own shortcuts, a
97
+ composition in progress) are not delivered.
97
98
 
98
99
  ### The focus when an editor opens
99
100
 
@@ -107,7 +108,7 @@ the caret in the field, after its text, as a click in it would.
107
108
  <field class="title-field" name="title" autofocus placeholder={t("title-hint")} label={t("title-hint")} on:input={titleInput(editor.key, event.value)} on:keydown={keyed(editor.key, event.key, event.ctrl)}/>
108
109
  ```
109
110
 
110
- OverCrow gives that focus only when the element appears during a
111
+ PlayerVox OverCrow gives that focus only when the element appears during a
111
112
  [user action](services.md#calls-that-need-a-user-action), in Interactive
112
113
  mode, in the widget the user acted on; when several such elements appear
113
114
  together, the first one of the view takes it. An element that appears when
@@ -186,22 +187,23 @@ form with an `intent` attribute sends them:
186
187
  </form>
187
188
  ```
188
189
 
189
- When the user submits such a form, **OverCrow reads the values of the
190
- form's own controls and sends them itself**. The widget's logic never
190
+ When the user submits such a form, **PlayerVox OverCrow reads the values of
191
+ the form's own controls and sends them itself**. The widget's logic never
191
192
  supplies the text, so a widget cannot write something the user did not
192
193
  type, and cannot submit without the user: the form goes only on a user
193
194
  action, in Interactive mode, with the capability granted.
194
195
 
195
196
  What this changes for the view and the logic:
196
197
 
197
- - **The controls belong to OverCrow.** The `field`, `textarea` and `slider`
198
- controls of the form take no `value`: `overcrow-widget check` refuses it
199
- (`view.bound_value`), and OverCrow stops a widget that sets one at run
200
- time. Their `name` attribute says which field of the intent each one is.
201
- - **OverCrow fills them** where the intent says so: the note's title, body
202
- and checklist, the user's published rating. A fill sends the control's
203
- `input` event with the value, so the logic knows what is shown; that
204
- event is not a user action.
198
+ - **The controls belong to PlayerVox OverCrow.** The `field`, `textarea` and
199
+ `slider` controls of the form take no `value`: `overcrow-widget check`
200
+ refuses it (`view.bound_value`), and OverCrow stops a widget that sets one
201
+ at run time. Their `name` attribute says which field of the intent each
202
+ one is.
203
+ - **PlayerVox OverCrow fills them** where the intent says so: the note's
204
+ title, body and checklist, the user's published rating. A fill sends the
205
+ control's `input` event with the value, so the logic knows what is shown;
206
+ that event is not a user action.
205
207
  - **The logic follows through `input` events**, to show a counter or to
206
208
  enable the button, and may disable the controls.
207
209
  - **The outcome arrives in the form's `submit` event**: `event.outcome` is
@@ -284,10 +286,10 @@ ID for `notes.save`, the ID of the message replied to for
284
286
  ### Several rows of one field
285
287
 
286
288
  The `notes.save` intent takes one `item` field per checklist row. The
287
- logic decides which rows the form has, with a `for`; OverCrow fills each
288
- row's field from the stored note and remembers which checklist entry it
289
- put there. A row that the logic removes or moves keeps its entry, and a
290
- row added since is a new entry.
289
+ logic decides which rows the form has, with a `for`; PlayerVox OverCrow
290
+ fills each row's field from the stored note and remembers which checklist
291
+ entry it put there. A row that the logic removes or moves keeps its entry,
292
+ and a row added since is a new entry.
291
293
 
292
294
  <!-- source: widgets/notes/view.ocml -->
293
295
  ```xml
@@ -308,11 +310,11 @@ Ctrl+Enter or the `submit` button saves.
308
310
  ## Confirmations
309
311
 
310
312
  Two services delete user data: `notes.delete` and `journal.delete`. They
311
- are ordinary calls that need a user action, and OverCrow then asks the
312
- user to confirm in a dialog that it draws itself, outside the widget. The
313
- call resolves when the user confirms and fails with `cancelled` when they
314
- decline. Do not draw your own "Are you sure?": OverCrow's is the one that
315
- counts.
313
+ are ordinary calls that need a user action, and PlayerVox OverCrow then asks
314
+ the user to confirm in a dialog that it draws itself, outside the widget.
315
+ The call resolves when the user confirms and fails with `cancelled` when
316
+ they decline. Do not draw your own "Are you sure?": OverCrow's is the one
317
+ that counts.
316
318
 
317
319
  ## Checklist for a form
318
320
 
@@ -325,4 +327,4 @@ counts.
325
327
  sliders, and every named control is a field of the intent.
326
328
  - Test it with a scenario: `text` steps type into the focused field,
327
329
  `key` steps press Enter, and `expect.intents` checks exactly what
328
- OverCrow sent. See [testing a widget](testing.md#steps).
330
+ PlayerVox OverCrow sent. See [testing a widget](testing.md#steps).
@@ -5,8 +5,8 @@ submission: create a project, edit its view, style and logic, run it in
5
5
  OverCrow, test it, package it and submit it. Each step links to the page
6
6
  that covers it in full.
7
7
 
8
- To work with an AI assistant instead, add OverCrow's MCP server to it: see
9
- [MCP](mcp.md).
8
+ To work with an AI assistant instead, add PlayerVox OverCrow's MCP server to
9
+ it: see [MCP](mcp.md).
10
10
 
11
11
  ## 1. Install the tools
12
12
 
@@ -15,7 +15,7 @@ To work with an AI assistant instead, add OverCrow's MCP server to it: see
15
15
  - **Node.js 22 or later** and npm, so that `check` can type-check your
16
16
  logic with the project's own TypeScript and the SDK from npm. The CLI checks and packages without it, but
17
17
  warns that types were not checked.
18
- - **OverCrow**, to run the widget while you write it.
18
+ - **PlayerVox OverCrow**, to run the widget while you write it.
19
19
 
20
20
  `overcrow-widget doctor` tells what your setup has and lacks.
21
21
 
@@ -141,8 +141,8 @@ Provide both files or neither, with the same keys. See
141
141
  overcrow-widget check
142
142
  ```
143
143
 
144
- `check` runs the same validators as OverCrow: manifest, view, style,
145
- locales, a lint of the logic against what the VM runs, the project's
144
+ `check` runs the same validators as PlayerVox OverCrow: manifest, view,
145
+ style, locales, a lint of the logic against what the VM runs, the project's
146
146
  TypeScript, and a package built in memory and read back. Each problem has a
147
147
  stable code, a position and a help line; see
148
148
  [diagnostics](cli.md#diagnostics).
@@ -153,13 +153,13 @@ stable code, a position and a help line; see
153
153
  overcrow-widget dev
154
154
  ```
155
155
 
156
- `dev` sends the widget to the OverCrow overlay running on your machine and
157
- reloads it each time you save. OverCrow offers this only when it was
158
- started with development installs allowed (`OVERCROW_WIDGET_DEVELOPMENT=1`;
159
- `overcrow-widget doctor` prints the commands). The widget shows an
160
- **Unverified · development package** marker; its declared permissions are
161
- granted for the session only, and nothing is stored. `log.info(…)` from your
162
- logic prints in the terminal. See
156
+ `dev` sends the widget to the PlayerVox OverCrow overlay running on your
157
+ machine and reloads it each time you save. OverCrow offers this only when it
158
+ was started with development installs allowed
159
+ (`OVERCROW_WIDGET_DEVELOPMENT=1`; `overcrow-widget doctor` prints the
160
+ commands). The widget shows an **Unverified · development package** marker;
161
+ its declared permissions are granted for the session only, and nothing is
162
+ stored. `log.info(…)` from your logic prints in the terminal. See
163
163
  [the development channel](dev-channel.md).
164
164
 
165
165
  ## 9. Test it
@@ -168,9 +168,9 @@ Two kinds of tests, both described in [testing a widget](testing.md):
168
168
 
169
169
  - unit tests of the logic with `@overcrow/sdk/testing`, which runs your
170
170
  module with virtual time and simulated services;
171
- - scenarios played by `overcrow-widget test` in OverCrow's headless
172
- runtime: the real VM and renderer, services answered by fixtures, and
173
- images compared with references.
171
+ - scenarios played by `overcrow-widget test` in PlayerVox OverCrow's
172
+ headless runtime: the real VM and renderer, services answered by fixtures,
173
+ and images compared with references.
174
174
 
175
175
  <!-- source: templates/counter/tests/example.scenario.json -->
176
176
  ```json
@@ -241,7 +241,7 @@ locally stays unverified; users get widgets from the signed catalog. See
241
241
 
242
242
  Add a `listing.json` with the marketplace text and run the admission
243
243
  yourself. Widgets are no longer proposed by pull request: you will send
244
- yours from the OverCrow creator space when it opens.
244
+ yours from the PlayerVox OverCrow creator space when it opens.
245
245
 
246
246
  ```sh
247
247
  overcrow-widget admit