create-spatius-app 0.1.2 → 0.1.3-beta.2

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 (53) hide show
  1. package/README.md +18 -6
  2. package/dist/cli.js +647 -144
  3. package/dist/templates.js +529 -66
  4. package/package.json +4 -4
  5. package/schemas/result-v3.schema.json +6 -2
  6. package/schemas/result-v4.schema.json +170 -0
  7. package/templates/cloudflare-livekit/AGENTS.md +2 -0
  8. package/templates/cloudflare-livekit/agent/README.md +13 -0
  9. package/templates/cloudflare-livekit/agent/env.example +3 -0
  10. package/templates/cloudflare-livekit/agent/pyproject.toml +1 -1
  11. package/templates/cloudflare-livekit/agent/src/agent.py +7 -4
  12. package/templates/cloudflare-livekit/agent/tests/test_agent_startup.py +49 -0
  13. package/templates/cloudflare-livekit/agent/uv.lock +14 -14
  14. package/templates/cloudflare-livekit/gitignore +1 -0
  15. package/templates/cloudflare-livekit/package-lock.json +247 -158
  16. package/templates/cloudflare-livekit/package.json +9 -8
  17. package/templates/cloudflare-livekit/pnpm-lock.yaml +200 -177
  18. package/templates/cloudflare-livekit/tests/dev-events.test.mjs +23 -0
  19. package/templates/cloudflare-livekit/tests/dev-fixtures.mjs +14 -5
  20. package/templates/cloudflare-livekit/tests/dev-supervision.test.mjs +17 -14
  21. package/templates/cloudflare-livekit/tsconfig.web.json +1 -0
  22. package/templates/cloudflare-livekit/tsconfig.worker.json +1 -0
  23. package/templates/cloudflare-livekit/web/api.ts +12 -0
  24. package/templates/cloudflare-livekit/web/components/agents-ui/agent-chat-transcript.tsx +6 -90
  25. package/templates/cloudflare-livekit/web/components/transcript-view.tsx +90 -0
  26. package/templates/cloudflare-livekit/web/session-attempt.ts +23 -2
  27. package/templates/cloudflare-livekit/worker/capability.test.ts +31 -0
  28. package/templates/cloudflare-livekit/worker/capability.ts +72 -0
  29. package/templates/cloudflare-livekit/worker/index.test.ts +2 -2
  30. package/templates/cloudflare-livekit/worker/index.ts +15 -3
  31. package/templates/cloudflare-livekit/worker/session.ts +34 -0
  32. package/templates/layers/agora/AGENTS.md +13 -0
  33. package/templates/layers/agora/README.md +25 -0
  34. package/templates/layers/agora/dev.vars.example +9 -0
  35. package/templates/layers/agora/package-lock.json +6988 -0
  36. package/templates/layers/agora/package.json +60 -0
  37. package/templates/layers/agora/pnpm-lock.yaml +4648 -0
  38. package/templates/layers/agora/scripts/check-worker.mjs +98 -0
  39. package/templates/layers/agora/tsconfig.worker.json +23 -0
  40. package/templates/layers/agora/vitest.config.ts +4 -0
  41. package/templates/layers/agora/web/App.tsx +174 -0
  42. package/templates/layers/agora/web/agora-session.test.ts +70 -0
  43. package/templates/layers/agora/web/agora-session.ts +267 -0
  44. package/templates/layers/agora/worker/agora.test.ts +62 -0
  45. package/templates/layers/agora/worker/agora.ts +156 -0
  46. package/templates/layers/agora/worker/index.test.ts +66 -0
  47. package/templates/layers/agora/worker/index.ts +54 -0
  48. package/templates/layers/agora/wrangler.jsonc +24 -0
  49. package/templates/layers/catalog/DEPLOYMENT.md +3 -0
  50. package/templates/layers/catalog/spatius.config.json +1 -0
  51. package/dist/cli.js.map +0 -1
  52. package/dist/templates.js.map +0 -1
  53. package/templates/cloudflare-livekit/worker-configuration.d.ts +0 -17184
@@ -7,12 +7,13 @@
7
7
  "": {
8
8
  "name": "spatius-voice-agent",
9
9
  "version": "0.1.0",
10
+ "hasInstallScript": true,
10
11
  "dependencies": {
11
12
  "@livekit/components-react": "2.9.24",
12
13
  "@spatius/avatarkit": "1.3.8",
13
14
  "@spatius/avatarkit-rtc": "1.1.5",
14
15
  "livekit-client": "2.22.2",
15
- "livekit-server-sdk": "2.18.0",
16
+ "livekit-server-sdk": "2.19.0",
16
17
  "react": "19.2.8",
17
18
  "react-dom": "19.2.8",
18
19
  "tslib": "2.8.1"
@@ -41,8 +42,8 @@
41
42
  "typescript": "6.0.3",
42
43
  "typescript-eslint": "8.69.0",
43
44
  "vite": "8.2.2",
44
- "vitest": "4.1.11",
45
- "wrangler": "4.129.0"
45
+ "vitest": "5.0.0",
46
+ "wrangler": "4.130.0"
46
47
  },
47
48
  "engines": {
48
49
  "node": ">=22.12"
@@ -175,6 +176,42 @@
175
176
  "wrangler": "^4.129.0"
176
177
  }
177
178
  },
179
+ "node_modules/@cloudflare/vite-plugin/node_modules/wrangler": {
180
+ "version": "4.129.0",
181
+ "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-4.129.0.tgz",
182
+ "integrity": "sha512-PGPvs9UPoFrwxT0VogpESSZGvZIctAuTK3wGsLLPHtHsSgS85kNdvtpa2d14UzG8gwLWD64XUGFPGG9tOXG9VQ==",
183
+ "dev": true,
184
+ "license": "MIT OR Apache-2.0",
185
+ "dependencies": {
186
+ "@cloudflare/kv-asset-handler": "0.5.0",
187
+ "@cloudflare/unenv-preset": "2.16.1",
188
+ "blake3-wasm": "2.1.5",
189
+ "esbuild": "0.28.1",
190
+ "miniflare": "5.20260903.0-alpha",
191
+ "path-to-regexp": "6.3.0",
192
+ "unenv": "2.0.0-rc.24",
193
+ "workerd": "1.20260903.1"
194
+ },
195
+ "bin": {
196
+ "cf-wrangler": "bin/cf-wrangler.js",
197
+ "wrangler": "bin/wrangler.js",
198
+ "wrangler2": "bin/wrangler.js"
199
+ },
200
+ "engines": {
201
+ "node": ">=22.0.0"
202
+ },
203
+ "optionalDependencies": {
204
+ "fsevents": "2.3.3"
205
+ },
206
+ "peerDependencies": {
207
+ "@cloudflare/workers-types": "^5.20260903.1"
208
+ },
209
+ "peerDependenciesMeta": {
210
+ "@cloudflare/workers-types": {
211
+ "optional": true
212
+ }
213
+ }
214
+ },
178
215
  "node_modules/@cloudflare/workerd-darwin-64": {
179
216
  "version": "1.20260903.1",
180
217
  "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20260903.1.tgz",
@@ -2486,13 +2523,6 @@
2486
2523
  "dev": true,
2487
2524
  "license": "CC0-1.0"
2488
2525
  },
2489
- "node_modules/@standard-schema/spec": {
2490
- "version": "1.1.0",
2491
- "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz",
2492
- "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==",
2493
- "dev": true,
2494
- "license": "MIT"
2495
- },
2496
2526
  "node_modules/@tailwindcss/node": {
2497
2527
  "version": "4.3.3",
2498
2528
  "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.3.3.tgz",
@@ -3527,34 +3557,17 @@
3527
3557
  }
3528
3558
  }
3529
3559
  },
3530
- "node_modules/@vitest/expect": {
3531
- "version": "4.1.11",
3532
- "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-4.1.11.tgz",
3533
- "integrity": "sha512-VX2x5vNJXET47KAFzwERI+KRMtTTCSWTfSMKsW7JsUsXV4psq++e3DvZpuTDOpHcxytiDs6p2nhVb2tVDiiUYw==",
3534
- "dev": true,
3535
- "license": "MIT",
3536
- "dependencies": {
3537
- "@standard-schema/spec": "^1.1.0",
3538
- "@types/chai": "^5.2.2",
3539
- "@vitest/spy": "4.1.11",
3540
- "@vitest/utils": "4.1.11",
3541
- "chai": "^6.2.2",
3542
- "tinyrainbow": "^3.1.0"
3543
- },
3544
- "funding": {
3545
- "url": "https://opencollective.com/vitest"
3546
- }
3547
- },
3548
3560
  "node_modules/@vitest/mocker": {
3549
- "version": "4.1.11",
3550
- "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.1.11.tgz",
3551
- "integrity": "sha512-2XJVD55d1o5AZous5CCGKS74g/riOj9odEt2bQpCVZeblHyHdnMeFl4jl0XjU21stf4mbjUkew2eXQZt65g5CQ==",
3561
+ "version": "5.0.0",
3562
+ "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-5.0.0.tgz",
3563
+ "integrity": "sha512-66PGTMIiVJP3t4a5yxU9qPtf7MdTBs8jmToMvy+HVflB3Yy13WJZTtPePdvU+wjRV02SKK5doLbSA6o9pwOmiA==",
3552
3564
  "dev": true,
3553
3565
  "license": "MIT",
3554
3566
  "dependencies": {
3555
- "@vitest/spy": "4.1.11",
3567
+ "@jridgewell/trace-mapping": "0.3.31",
3568
+ "@vitest/spy": "5.0.0",
3556
3569
  "estree-walker": "^3.0.3",
3557
- "magic-string": "^0.30.21"
3570
+ "magic-string": "^1.2.3"
3558
3571
  },
3559
3572
  "funding": {
3560
3573
  "url": "https://opencollective.com/vitest"
@@ -3572,72 +3585,35 @@
3572
3585
  }
3573
3586
  }
3574
3587
  },
3575
- "node_modules/@vitest/pretty-format": {
3576
- "version": "4.1.11",
3577
- "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.1.11.tgz",
3578
- "integrity": "sha512-yiZzPbGTS9Sr/JpFl8zHrcIkAofNbFV6k21vIgQN/cY/oxZeXhJv5sc/MBJ5jFKWmWs+oJHw0UXLZjmf931+Vw==",
3579
- "dev": true,
3580
- "license": "MIT",
3581
- "dependencies": {
3582
- "tinyrainbow": "^3.1.0"
3583
- },
3584
- "funding": {
3585
- "url": "https://opencollective.com/vitest"
3586
- }
3587
- },
3588
- "node_modules/@vitest/runner": {
3589
- "version": "4.1.11",
3590
- "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-4.1.11.tgz",
3591
- "integrity": "sha512-LztvUgdwMNJMIkj3hQnnxiC2Xy1zNxq928W/xhjCLaNCzqTZOudjwbQf6v9IntZGPw132i2Lq2rgTRZHD3JHNw==",
3592
- "dev": true,
3593
- "license": "MIT",
3594
- "dependencies": {
3595
- "@vitest/utils": "4.1.11",
3596
- "pathe": "^2.0.3"
3597
- },
3598
- "funding": {
3599
- "url": "https://opencollective.com/vitest"
3600
- }
3601
- },
3602
- "node_modules/@vitest/snapshot": {
3603
- "version": "4.1.11",
3604
- "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.1.11.tgz",
3605
- "integrity": "sha512-pN7ikn1ON7h8ee4gIAp4AzyK+zBtJPzVbqOgu5LCEh4VaJVbPQcgYQYJIMGQPXVeJJq1fnfazis7a5pFNPahog==",
3588
+ "node_modules/@vitest/mocker/node_modules/@jridgewell/trace-mapping": {
3589
+ "version": "0.3.31",
3590
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz",
3591
+ "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==",
3606
3592
  "dev": true,
3607
3593
  "license": "MIT",
3608
3594
  "dependencies": {
3609
- "@vitest/pretty-format": "4.1.11",
3610
- "@vitest/utils": "4.1.11",
3611
- "magic-string": "^0.30.21",
3612
- "pathe": "^2.0.3"
3613
- },
3614
- "funding": {
3615
- "url": "https://opencollective.com/vitest"
3595
+ "@jridgewell/resolve-uri": "^3.1.0",
3596
+ "@jridgewell/sourcemap-codec": "^1.4.14"
3616
3597
  }
3617
3598
  },
3618
- "node_modules/@vitest/spy": {
3619
- "version": "4.1.11",
3620
- "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.1.11.tgz",
3621
- "integrity": "sha512-apNa/prQy2qCeywhnixOHPRCgGNhvg7T4Dapfl1GahLp/R+uhBm5cPyFoNVyqsNd2h1nJxL6BqqdIjiABL60YA==",
3599
+ "node_modules/@vitest/mocker/node_modules/@vitest/spy": {
3600
+ "version": "5.0.0",
3601
+ "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-5.0.0.tgz",
3602
+ "integrity": "sha512-uy+luWBAPw9XfthoHi5AkfHUnuPYEESjl0p/r+meoBnU8bxg5GDQ3Ey8MjcJ6sqahkL4PFyrvfMJJBw7LbU06g==",
3622
3603
  "dev": true,
3623
3604
  "license": "MIT",
3624
3605
  "funding": {
3625
3606
  "url": "https://opencollective.com/vitest"
3626
3607
  }
3627
3608
  },
3628
- "node_modules/@vitest/utils": {
3629
- "version": "4.1.11",
3630
- "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.1.11.tgz",
3631
- "integrity": "sha512-zTCVGpyFsGWBhllOyKlTw/vnr6D9qxsfSDyfbyZmTyjHw5N/VuvzHpHoQjm2ZJzn4RJgx5w4r7V0er69CmLgPQ==",
3609
+ "node_modules/@vitest/mocker/node_modules/magic-string": {
3610
+ "version": "1.2.3",
3611
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-1.2.3.tgz",
3612
+ "integrity": "sha512-Bpb0W2TbLKOZ7vJnOUnVRGq3WL2p+ISV29M6hYPL1AFCpyKZpdr5ytiXoTSSxRVhg8YW7f65+6gbG8WG6PCa/g==",
3632
3613
  "dev": true,
3633
3614
  "license": "MIT",
3634
3615
  "dependencies": {
3635
- "@vitest/pretty-format": "4.1.11",
3636
- "convert-source-map": "^2.0.0",
3637
- "tinyrainbow": "^3.1.0"
3638
- },
3639
- "funding": {
3640
- "url": "https://opencollective.com/vitest"
3616
+ "@jridgewell/sourcemap-codec": "^1.5.5"
3641
3617
  }
3642
3618
  },
3643
3619
  "node_modules/@webgpu/types": {
@@ -3855,13 +3831,6 @@
3855
3831
  "url": "https://github.com/open-cli-tools/concurrently?sponsor=1"
3856
3832
  }
3857
3833
  },
3858
- "node_modules/convert-source-map": {
3859
- "version": "2.0.0",
3860
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
3861
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
3862
- "dev": true,
3863
- "license": "MIT"
3864
- },
3865
3834
  "node_modules/cookie": {
3866
3835
  "version": "1.1.1",
3867
3836
  "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.1.1.tgz",
@@ -5011,17 +4980,17 @@
5011
4980
  }
5012
4981
  },
5013
4982
  "node_modules/livekit-server-sdk": {
5014
- "version": "2.18.0",
5015
- "resolved": "https://registry.npmjs.org/livekit-server-sdk/-/livekit-server-sdk-2.18.0.tgz",
5016
- "integrity": "sha512-iUGmkbyi0g4DHKQ0Z4VSVs/V+ddp3T75ccQIe6LX94AYlqgyh+SVSM1lQMjFQuI3Qh6Z9v06T4xxV+vWmp7VeQ==",
4983
+ "version": "2.19.0",
4984
+ "resolved": "https://registry.npmjs.org/livekit-server-sdk/-/livekit-server-sdk-2.19.0.tgz",
4985
+ "integrity": "sha512-9q+MuVS2qky5+Xaf7/XalMu90EcGX2wkKBy80ANlJH8WCulQpfNMU8ILIMq913X59kH6itNyxP4fr16616KG3A==",
5017
4986
  "license": "Apache-2.0",
5018
4987
  "dependencies": {
5019
4988
  "@bufbuild/protobuf": "^1.10.1",
5020
- "@livekit/protocol": "1.48.0",
4989
+ "@livekit/protocol": "1.51.0",
5021
4990
  "jose": "^5.1.2"
5022
4991
  },
5023
4992
  "engines": {
5024
- "node": ">=18"
4993
+ "node": ">=19"
5025
4994
  }
5026
4995
  },
5027
4996
  "node_modules/livekit-server-sdk/node_modules/@bufbuild/protobuf": {
@@ -5031,9 +5000,9 @@
5031
5000
  "license": "(Apache-2.0 AND BSD-3-Clause)"
5032
5001
  },
5033
5002
  "node_modules/livekit-server-sdk/node_modules/@livekit/protocol": {
5034
- "version": "1.48.0",
5035
- "resolved": "https://registry.npmjs.org/@livekit/protocol/-/protocol-1.48.0.tgz",
5036
- "integrity": "sha512-fYHYgltH6YavAsokl3qsHLkBdQeKCl4UORVTub5crS3t8JtKFZ0uinHDFQ+XXdNKS6Ub9gcOjV+UHcDiqnWXoQ==",
5003
+ "version": "1.51.0",
5004
+ "resolved": "https://registry.npmjs.org/@livekit/protocol/-/protocol-1.51.0.tgz",
5005
+ "integrity": "sha512-kEDEDaFvIcp5VlYBromdSKMJMEJKfPvXPfEaJPdEz1Qgo84gZAoLF2g58CcMlVYGsjrwE5XYgQxRS5B7KuEj3w==",
5037
5006
  "license": "Apache-2.0",
5038
5007
  "dependencies": {
5039
5008
  "@bufbuild/protobuf": "^1.10.0"
@@ -5869,20 +5838,13 @@
5869
5838
  }
5870
5839
  },
5871
5840
  "node_modules/tinybench": {
5872
- "version": "2.9.0",
5873
- "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz",
5874
- "integrity": "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==",
5875
- "dev": true,
5876
- "license": "MIT"
5877
- },
5878
- "node_modules/tinyexec": {
5879
- "version": "1.3.1",
5880
- "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.3.1.tgz",
5881
- "integrity": "sha512-GCvB3aoys96IuDFBMcTB46JOR6mdMtAToqwiW8JlWhsoh1mhHi/xn9ss/Dg7N555GiJyEt2qzoG/NHCwM6h1EA==",
5841
+ "version": "6.1.4",
5842
+ "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-6.1.4.tgz",
5843
+ "integrity": "sha512-9APumHG7r4yOk4X4WlkmE71aZcv1gvin1czO3OQ1U9iJcFA5Ja/ygyb0vPOVHTthFozUYs8CLoLUlM8grb2lTQ==",
5882
5844
  "dev": true,
5883
5845
  "license": "MIT",
5884
5846
  "engines": {
5885
- "node": ">=18"
5847
+ "node": ">=20.0.0"
5886
5848
  }
5887
5849
  },
5888
5850
  "node_modules/tinyglobby": {
@@ -5902,16 +5864,6 @@
5902
5864
  "url": "https://github.com/sponsors/SuperchupuDev"
5903
5865
  }
5904
5866
  },
5905
- "node_modules/tinyrainbow": {
5906
- "version": "3.1.1",
5907
- "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-3.1.1.tgz",
5908
- "integrity": "sha512-yau8yJdTt989Mm0Bd/236QnzEiPf2xLLTqUZRUJOo/3CB078LSwzei343DgtJVmfJKJE3TMINY1u42SQsP6mXw==",
5909
- "dev": true,
5910
- "license": "MIT",
5911
- "engines": {
5912
- "node": ">=14.0.0"
5913
- }
5914
- },
5915
5867
  "node_modules/tldts": {
5916
5868
  "version": "6.1.86",
5917
5869
  "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.86.tgz",
@@ -6178,38 +6130,31 @@
6178
6130
  }
6179
6131
  },
6180
6132
  "node_modules/vitest": {
6181
- "version": "4.1.11",
6182
- "resolved": "https://registry.npmjs.org/vitest/-/vitest-4.1.11.tgz",
6183
- "integrity": "sha512-fhACrNXUidIbGSBr5FlbuBkO7VWC1ZyLl0DO4CU2DrQoAPxX84Ysxs+HeGQpii5lZWV1Q4gBZTTu49mF+A6Edw==",
6133
+ "version": "5.0.0",
6134
+ "resolved": "https://registry.npmjs.org/vitest/-/vitest-5.0.0.tgz",
6135
+ "integrity": "sha512-gpsMNoRhMjMktVxPtstOH4/PJuPyovVaMDr4oDilXaGH1EcqM2OE96SoHT2VIQ6fTGtTjqmHDrEu2X9RQiXf8Q==",
6184
6136
  "dev": true,
6185
6137
  "license": "MIT",
6186
6138
  "dependencies": {
6187
- "@vitest/expect": "4.1.11",
6188
- "@vitest/mocker": "4.1.11",
6189
- "@vitest/pretty-format": "4.1.11",
6190
- "@vitest/runner": "4.1.11",
6191
- "@vitest/snapshot": "4.1.11",
6192
- "@vitest/spy": "4.1.11",
6193
- "@vitest/utils": "4.1.11",
6194
- "es-module-lexer": "^2.0.0",
6195
- "expect-type": "^1.3.0",
6196
- "magic-string": "^0.30.21",
6197
- "obug": "^2.1.1",
6198
- "pathe": "^2.0.3",
6199
- "picomatch": "^4.0.3",
6200
- "std-env": "^4.0.0-rc.1",
6201
- "tinybench": "^2.9.0",
6202
- "tinyexec": "^1.0.2",
6203
- "tinyglobby": "^0.2.15",
6204
- "tinyrainbow": "^3.1.0",
6205
- "vite": "^6.0.0 || ^7.0.0 || ^8.0.0",
6139
+ "@types/chai": "^5.2.2",
6140
+ "@vitest/mocker": "5.0.0",
6141
+ "chai": "^6.2.2",
6142
+ "es-module-lexer": "^2.3.2",
6143
+ "expect-type": "^1.4.0",
6144
+ "magic-string": "^1.2.3",
6145
+ "obug": "^2.1.4",
6146
+ "picomatch": "^4.0.7",
6147
+ "std-env": "^4.2.0",
6148
+ "tinybench": "6.1.4",
6149
+ "tinyexec": "1.3.0",
6150
+ "tinyglobby": "^0.2.17",
6206
6151
  "why-is-node-running": "^2.3.0"
6207
6152
  },
6208
6153
  "bin": {
6209
6154
  "vitest": "vitest.mjs"
6210
6155
  },
6211
6156
  "engines": {
6212
- "node": "^20.0.0 || ^22.0.0 || >=24.0.0"
6157
+ "node": "^22.12.0 || ^24.0.0 || >=26.0.0"
6213
6158
  },
6214
6159
  "funding": {
6215
6160
  "url": "https://opencollective.com/vitest"
@@ -6217,16 +6162,16 @@
6217
6162
  "peerDependencies": {
6218
6163
  "@edge-runtime/vm": "*",
6219
6164
  "@opentelemetry/api": "^1.9.0",
6220
- "@types/node": "^20.0.0 || ^22.0.0 || >=24.0.0",
6221
- "@vitest/browser-playwright": "4.1.11",
6222
- "@vitest/browser-preview": "4.1.11",
6223
- "@vitest/browser-webdriverio": "4.1.11",
6224
- "@vitest/coverage-istanbul": "4.1.11",
6225
- "@vitest/coverage-v8": "4.1.11",
6226
- "@vitest/ui": "4.1.11",
6165
+ "@types/node": "^22.0.0 || >=24.0.0",
6166
+ "@vitest/browser-playwright": "5.0.0",
6167
+ "@vitest/browser-preview": "5.0.0",
6168
+ "@vitest/browser-webdriverio": "^5.0.0-beta.5 || >=5.0.0",
6169
+ "@vitest/coverage-istanbul": "5.0.0",
6170
+ "@vitest/coverage-v8": "5.0.0",
6171
+ "@vitest/ui": "5.0.0",
6227
6172
  "happy-dom": "*",
6228
6173
  "jsdom": "*",
6229
- "vite": "^6.0.0 || ^7.0.0 || ^8.0.0"
6174
+ "vite": "^6.4.0 || ^7.0.0 || ^8.0.0"
6230
6175
  },
6231
6176
  "peerDependenciesMeta": {
6232
6177
  "@edge-runtime/vm": {
@@ -6267,6 +6212,26 @@
6267
6212
  }
6268
6213
  }
6269
6214
  },
6215
+ "node_modules/vitest/node_modules/magic-string": {
6216
+ "version": "1.2.3",
6217
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-1.2.3.tgz",
6218
+ "integrity": "sha512-Bpb0W2TbLKOZ7vJnOUnVRGq3WL2p+ISV29M6hYPL1AFCpyKZpdr5ytiXoTSSxRVhg8YW7f65+6gbG8WG6PCa/g==",
6219
+ "dev": true,
6220
+ "license": "MIT",
6221
+ "dependencies": {
6222
+ "@jridgewell/sourcemap-codec": "^1.5.5"
6223
+ }
6224
+ },
6225
+ "node_modules/vitest/node_modules/tinyexec": {
6226
+ "version": "1.3.0",
6227
+ "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.3.0.tgz",
6228
+ "integrity": "sha512-QKAl9m8gWWGHV8jZcPeym6j+XULi6tOf1mT83WYJ4Lk2ytW/uwAWkrP0uFsdoYMdueVJ0qs26wZ+23xeB4ibNQ==",
6229
+ "dev": true,
6230
+ "license": "MIT",
6231
+ "engines": {
6232
+ "node": ">=18"
6233
+ }
6234
+ },
6270
6235
  "node_modules/w3c-xmlserializer": {
6271
6236
  "version": "5.0.0",
6272
6237
  "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz",
@@ -6419,9 +6384,9 @@
6419
6384
  }
6420
6385
  },
6421
6386
  "node_modules/wrangler": {
6422
- "version": "4.129.0",
6423
- "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-4.129.0.tgz",
6424
- "integrity": "sha512-PGPvs9UPoFrwxT0VogpESSZGvZIctAuTK3wGsLLPHtHsSgS85kNdvtpa2d14UzG8gwLWD64XUGFPGG9tOXG9VQ==",
6387
+ "version": "4.130.0",
6388
+ "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-4.130.0.tgz",
6389
+ "integrity": "sha512-fzNjnTzyZl31PGJOFXbiLeZqEIToQ9KOzkkvGdQz4wlB+BoHnl3BRwCR5xg8AqYyzVunvvMHlMzvlbThQ7rrAA==",
6425
6390
  "dev": true,
6426
6391
  "license": "MIT OR Apache-2.0",
6427
6392
  "dependencies": {
@@ -6429,10 +6394,10 @@
6429
6394
  "@cloudflare/unenv-preset": "2.16.1",
6430
6395
  "blake3-wasm": "2.1.5",
6431
6396
  "esbuild": "0.28.1",
6432
- "miniflare": "5.20260903.0-alpha",
6397
+ "miniflare": "5.20260908.0-alpha",
6433
6398
  "path-to-regexp": "6.3.0",
6434
6399
  "unenv": "2.0.0-rc.24",
6435
- "workerd": "1.20260903.1"
6400
+ "workerd": "1.20260908.1"
6436
6401
  },
6437
6402
  "bin": {
6438
6403
  "cf-wrangler": "bin/cf-wrangler.js",
@@ -6446,7 +6411,7 @@
6446
6411
  "fsevents": "2.3.3"
6447
6412
  },
6448
6413
  "peerDependencies": {
6449
- "@cloudflare/workers-types": "^5.20260903.1"
6414
+ "@cloudflare/workers-types": "^5.20260908.1"
6450
6415
  },
6451
6416
  "peerDependenciesMeta": {
6452
6417
  "@cloudflare/workers-types": {
@@ -6454,6 +6419,130 @@
6454
6419
  }
6455
6420
  }
6456
6421
  },
6422
+ "node_modules/wrangler/node_modules/@cloudflare/workerd-darwin-64": {
6423
+ "version": "1.20260908.1",
6424
+ "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20260908.1.tgz",
6425
+ "integrity": "sha512-t3juyCXFn12OklBL0S7UC98py3nLEmuioBOUOazeyeVsLUu8fv+pfJrR+XzwSH2Uh6rCXZNogRh+LtV0YpzMcQ==",
6426
+ "cpu": [
6427
+ "x64"
6428
+ ],
6429
+ "dev": true,
6430
+ "license": "Apache-2.0",
6431
+ "optional": true,
6432
+ "os": [
6433
+ "darwin"
6434
+ ],
6435
+ "engines": {
6436
+ "node": ">=16"
6437
+ }
6438
+ },
6439
+ "node_modules/wrangler/node_modules/@cloudflare/workerd-darwin-arm64": {
6440
+ "version": "1.20260908.1",
6441
+ "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20260908.1.tgz",
6442
+ "integrity": "sha512-I1nwA4qm/fUNSKhPSO76YA6JAhcA0KU63yFcYHN6AiDowGbDyfjDPH9KCVopT5rI1LY4GfbdAi5b9gODqZsAkQ==",
6443
+ "cpu": [
6444
+ "arm64"
6445
+ ],
6446
+ "dev": true,
6447
+ "license": "Apache-2.0",
6448
+ "optional": true,
6449
+ "os": [
6450
+ "darwin"
6451
+ ],
6452
+ "engines": {
6453
+ "node": ">=16"
6454
+ }
6455
+ },
6456
+ "node_modules/wrangler/node_modules/@cloudflare/workerd-linux-64": {
6457
+ "version": "1.20260908.1",
6458
+ "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20260908.1.tgz",
6459
+ "integrity": "sha512-s/h5uSW1UC6dGeVKSqrPLpTu+vo0fKJZCNEokW1Ol1qcCB2oN6WCRHhoyzo4Y69oONAXRgLfLBYaHWe7z51Vnw==",
6460
+ "cpu": [
6461
+ "x64"
6462
+ ],
6463
+ "dev": true,
6464
+ "license": "Apache-2.0",
6465
+ "optional": true,
6466
+ "os": [
6467
+ "linux"
6468
+ ],
6469
+ "engines": {
6470
+ "node": ">=16"
6471
+ }
6472
+ },
6473
+ "node_modules/wrangler/node_modules/@cloudflare/workerd-linux-arm64": {
6474
+ "version": "1.20260908.1",
6475
+ "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20260908.1.tgz",
6476
+ "integrity": "sha512-PP/nUKl0R6colwfocggL8dctO/dFMqMft12unzFUkoAJr0aXQeT+ia0JuNmOUWXe6EfvyCSmAbijEsTKQ5t/ew==",
6477
+ "cpu": [
6478
+ "arm64"
6479
+ ],
6480
+ "dev": true,
6481
+ "license": "Apache-2.0",
6482
+ "optional": true,
6483
+ "os": [
6484
+ "linux"
6485
+ ],
6486
+ "engines": {
6487
+ "node": ">=16"
6488
+ }
6489
+ },
6490
+ "node_modules/wrangler/node_modules/@cloudflare/workerd-windows-64": {
6491
+ "version": "1.20260908.1",
6492
+ "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20260908.1.tgz",
6493
+ "integrity": "sha512-jkaS5EKKTvzAdIlbMfOYrHoTucWVRwYBwIig+xRsjXQv5BXTLA2Llg+iM8djlKtk0CjkztZhXmuxuqoqWKZmFw==",
6494
+ "cpu": [
6495
+ "x64"
6496
+ ],
6497
+ "dev": true,
6498
+ "license": "Apache-2.0",
6499
+ "optional": true,
6500
+ "os": [
6501
+ "win32"
6502
+ ],
6503
+ "engines": {
6504
+ "node": ">=16"
6505
+ }
6506
+ },
6507
+ "node_modules/wrangler/node_modules/miniflare": {
6508
+ "version": "5.20260908.0-alpha",
6509
+ "resolved": "https://registry.npmjs.org/miniflare/-/miniflare-5.20260908.0-alpha.tgz",
6510
+ "integrity": "sha512-BHIknb0u6vLIvb+R8PsUAzgoWWk3OlW85DrV2SG0EydfSpIba28YT0rH6xZThjnSwDxzNuW3FDRNSWvbiI/DVw==",
6511
+ "dev": true,
6512
+ "license": "MIT",
6513
+ "dependencies": {
6514
+ "@cspotcode/source-map-support": "0.8.1",
6515
+ "sharp": "0.35.2",
6516
+ "undici": "7.29.0",
6517
+ "workerd": "1.20260908.1",
6518
+ "ws": "8.21.0",
6519
+ "youch": "4.1.0-beta.10"
6520
+ },
6521
+ "engines": {
6522
+ "node": ">=22.0.0"
6523
+ }
6524
+ },
6525
+ "node_modules/wrangler/node_modules/workerd": {
6526
+ "version": "1.20260908.1",
6527
+ "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20260908.1.tgz",
6528
+ "integrity": "sha512-rYhpW6NWHD++p34ej+VXWzi5Pdnmd7ncdbB/ux4s+i3mf7IeOpW3O4roqClQ+Z8ernvyMCknBLCb76z1rA+a7Q==",
6529
+ "dev": true,
6530
+ "hasInstallScript": true,
6531
+ "license": "Apache-2.0",
6532
+ "bin": {
6533
+ "workerd": "bin/workerd"
6534
+ },
6535
+ "engines": {
6536
+ "node": ">=16"
6537
+ },
6538
+ "optionalDependencies": {
6539
+ "@cloudflare/workerd-darwin-64": "1.20260908.1",
6540
+ "@cloudflare/workerd-darwin-arm64": "1.20260908.1",
6541
+ "@cloudflare/workerd-linux-64": "1.20260908.1",
6542
+ "@cloudflare/workerd-linux-arm64": "1.20260908.1",
6543
+ "@cloudflare/workerd-windows-64": "1.20260908.1"
6544
+ }
6545
+ },
6457
6546
  "node_modules/wrap-ansi": {
6458
6547
  "version": "9.0.2",
6459
6548
  "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz",
@@ -6,21 +6,22 @@
6
6
  "scripts": {
7
7
  "agent:check": "node scripts/run-agent-python.mjs -m src.agent --help && node scripts/run-agent-python.mjs -m unittest discover -s tests && node scripts/run-agent-python.mjs -m ruff check . && node scripts/run-agent-python.mjs -m ruff format --check .",
8
8
  "agent:dev": "node scripts/dev-agent.mjs",
9
- "build": "tsc -b && vite build",
10
- "cf-typegen": "wrangler types --env-interface CloudflareBindings",
9
+ "build": "wrangler types --strict-vars=false --env-interface CloudflareBindings && tsc -b && vite build",
10
+ "cf-typegen": "wrangler types --strict-vars=false --env-interface CloudflareBindings",
11
11
  "check": "pnpm format:check && pnpm lint && pnpm typecheck && pnpm test && pnpm test:dev && pnpm build",
12
12
  "deploy": "pnpm build && wrangler deploy",
13
13
  "dev": "node scripts/dev.mjs \"pnpm run dev:web\" \"pnpm run agent:dev\"",
14
14
  "dev:web": "node scripts/dev-web.mjs",
15
15
  "format": "prettier --write .",
16
16
  "format:check": "prettier --check .",
17
- "lint": "eslint .",
17
+ "lint": "wrangler types --strict-vars=false --env-interface CloudflareBindings && eslint .",
18
18
  "preview": "vite preview",
19
19
  "test": "vitest run",
20
20
  "test:dev": "node --test tests/dev*.test.mjs",
21
21
  "test:e2e": "playwright test",
22
- "typecheck": "tsc -b --pretty false",
23
- "wrangler": "wrangler"
22
+ "typecheck": "wrangler types --strict-vars=false --env-interface CloudflareBindings && tsc -b --pretty false",
23
+ "wrangler": "wrangler",
24
+ "postinstall": "wrangler types --strict-vars=false --env-interface CloudflareBindings"
24
25
  },
25
26
  "engines": {
26
27
  "node": ">=22.12"
@@ -31,7 +32,7 @@
31
32
  "@spatius/avatarkit": "1.3.8",
32
33
  "@spatius/avatarkit-rtc": "1.1.5",
33
34
  "livekit-client": "2.22.2",
34
- "livekit-server-sdk": "2.18.0",
35
+ "livekit-server-sdk": "2.19.0",
35
36
  "react": "19.2.8",
36
37
  "react-dom": "19.2.8",
37
38
  "tslib": "2.8.1"
@@ -60,7 +61,7 @@
60
61
  "typescript": "6.0.3",
61
62
  "typescript-eslint": "8.69.0",
62
63
  "vite": "8.2.2",
63
- "vitest": "4.1.11",
64
- "wrangler": "4.129.0"
64
+ "vitest": "5.0.0",
65
+ "wrangler": "4.130.0"
65
66
  }
66
67
  }