@velarscript/cli 0.20.0 → 0.21.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 (56) hide show
  1. package/dist/application-entry.d.ts +13 -0
  2. package/dist/application-entry.d.ts.map +1 -0
  3. package/dist/application-entry.js +14 -0
  4. package/dist/application-entry.js.map +1 -0
  5. package/dist/browser-test-runner.js +40 -9
  6. package/dist/browser-test-runner.js.map +1 -1
  7. package/dist/bundled-extension-registry.d.ts +2 -0
  8. package/dist/bundled-extension-registry.d.ts.map +1 -1
  9. package/dist/bundled-extension-registry.js.map +1 -1
  10. package/dist/cli.js +41 -44
  11. package/dist/cli.js.map +1 -1
  12. package/dist/config.d.ts +23 -0
  13. package/dist/config.d.ts.map +1 -1
  14. package/dist/config.js +79 -5
  15. package/dist/config.js.map +1 -1
  16. package/dist/dev-server.d.ts.map +1 -1
  17. package/dist/dev-server.js +18 -0
  18. package/dist/dev-server.js.map +1 -1
  19. package/dist/library-artifact.js +10 -2
  20. package/dist/library-artifact.js.map +1 -1
  21. package/dist/mechanical-fixer.d.ts +4 -2
  22. package/dist/mechanical-fixer.d.ts.map +1 -1
  23. package/dist/mechanical-fixer.js +17 -4
  24. package/dist/mechanical-fixer.js.map +1 -1
  25. package/dist/node-application.d.ts +7 -9
  26. package/dist/node-application.d.ts.map +1 -1
  27. package/dist/node-application.js +20 -58
  28. package/dist/node-application.js.map +1 -1
  29. package/dist/node-production-build.d.ts +4 -4
  30. package/dist/node-production-build.d.ts.map +1 -1
  31. package/dist/node-production-build.js +5 -5
  32. package/dist/node-production-build.js.map +1 -1
  33. package/dist/node-production-verifier.d.ts.map +1 -1
  34. package/dist/node-production-verifier.js +8 -5
  35. package/dist/node-production-verifier.js.map +1 -1
  36. package/dist/project-check.d.ts +15 -3
  37. package/dist/project-check.d.ts.map +1 -1
  38. package/dist/project-check.js +86 -19
  39. package/dist/project-check.js.map +1 -1
  40. package/dist/project-format.d.ts +1 -1
  41. package/dist/project-format.d.ts.map +1 -1
  42. package/dist/project-format.js +1 -0
  43. package/dist/project-format.js.map +1 -1
  44. package/dist/project.d.ts.map +1 -1
  45. package/dist/project.js +6 -1
  46. package/dist/project.js.map +1 -1
  47. package/dist/reproduction.js +5 -5
  48. package/dist/reproduction.js.map +1 -1
  49. package/dist/version.d.ts +1 -1
  50. package/dist/version.js +1 -1
  51. package/package.json +8 -8
  52. package/skill/ai-skill-desktop.md +281 -6
  53. package/skill/ai-skill-node.md +23 -17
  54. package/skill/ai-skill-server.md +39 -30
  55. package/skill/ai-skill-web.md +9 -0
  56. package/skill/ai-skill.md +13 -3
@@ -23,6 +23,15 @@ modules, and the `web` manifest key. Without that extension these are not Core
23
23
  syntax. Web visual builders are named imports from `velar/look`; there is no
24
24
  `Look.` namespace.
25
25
 
26
+ Every word in that list is a contextual keyword that stays available as an
27
+ ordinary name — except five. `mount`, `tick`, `viewport`, `scheme`, and `motion`
28
+ are **reserved bindings**: `mount` and `tick` are real runtime entry points, and
29
+ `viewport`, `scheme`, and `motion` name the Look media subjects, so a local
30
+ binding can never shadow a media condition. A Web module refuses all five as
31
+ binding names with `VEL3007`. Three of them are ordinary words for a Web author,
32
+ so name a scroll container `scroller`, a colour setting `theme`, and an
33
+ animation preference `reducedMotion`.
34
+
26
35
  `@` remains the language-wide annotation introducer, and `@name` is a context
27
36
  annotation with a compiler-owned compile-time role. Components own `@mounted:`
28
37
  and `@cleanup:`; Look owns conditions such as `@hover` and `@before`. They are
package/skill/ai-skill.md CHANGED
@@ -75,7 +75,8 @@ considering source fallback. Other templates select their own framework brief. E
75
75
  `velar.json`, a `package.json` whose scripts are the gates, a `src/` tree, a
76
76
  passing test, and an `AGENTS.md`.
77
77
 
78
- Writing the manifest yourself: `formatVersion` is required, `extensions` may be
78
+ Writing the manifest yourself: `formatVersion` is required, `kind` may be
79
+ `application` or `library` (and defaults to `application`), `extensions` may be
79
80
  omitted by a project that loads none, `entry` defaults to `src/main.vel`,
80
81
  `outDir` to `dist`, and `publicDir` to `public`.
81
82
 
@@ -84,6 +85,7 @@ A Core project (CLI or library) loads no extensions:
84
85
  ```json
85
86
  {
86
87
  "formatVersion": 2,
88
+ "kind": "library",
87
89
  "entry": "src/main.vel",
88
90
  "extensions": []
89
91
  }
@@ -242,8 +244,10 @@ def publicUser(source: SourceUser, requestId: string) -> PublicUser:
242
244
  `Type.from` is shallow and compile-time checked. It does not accept `unknown`;
243
245
  validate untrusted data with `Type.parse` first.
244
246
 
245
- `enum` declares finite string-backed states; a member may map an external
246
- wire spelling without losing its nominal identity:
247
+ `enum` declares finite states backed by a wire value; a member may map an
248
+ external spelling a string, or a safe integer where a protocol pins a version
249
+ — without losing its nominal identity. A member satisfies a contract for the
250
+ scalar its own wire value is, and nothing else:
247
251
 
248
252
  ```velar
249
253
  enum Status:
@@ -255,8 +259,14 @@ enum ProviderEventKind:
255
259
  textDelta = "response.output_text.delta"
256
260
  completed = "response.completed"
257
261
 
262
+ enum KernelProtocol:
263
+ v1 = 1
264
+ v2 = 2
265
+
258
266
  const status: Status = Status.active
267
+ const protocol: number = KernelProtocol.v2
259
268
  print(ProviderEventKind.textDelta)
269
+ print(str(protocol))
260
270
  ```
261
271
 
262
272
  Classes use typed body fields, one explicit constructor, and explicit `self`;