void 0.25.0 → 0.26.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.
- package/dist/{account-cmd-DcR1ywt8.mjs → account-cmd-CDry3B5V.mjs} +4 -4
- package/dist/{application-analysis-BVsVqc11.mjs → application-analysis-DC2yPvzY.mjs} +1 -1
- package/dist/{application-routing-B7QEjqSR.mjs → application-routing-C9khgLiS.mjs} +1 -1
- package/dist/{auth-CdgZ9uag.mjs → auth-B60QDbjg.mjs} +1 -1
- package/dist/{auth-7wuZ5ob8.mjs → auth-D52yG7hl.mjs} +3 -3
- package/dist/{auth-link-Z6E5DYvM.mjs → auth-link-DjeOptYi.mjs} +4 -4
- package/dist/{auth-router-BdM4avI8.mjs → auth-router-BRxIuqDi.mjs} +5 -5
- package/dist/{build-cmd-CEE7D-hM.mjs → build-cmd-Ce3C8huo.mjs} +4 -4
- package/dist/{cache-TcZnBLtH.mjs → cache-CS8Yxr5a.mjs} +4 -4
- package/dist/{cancel-deploy-CYoZmcmR.mjs → cancel-deploy-mZsD88Xa.mjs} +3 -3
- package/dist/{cf-access-AHKBzmuu.mjs → cf-access-YTlqvAsk.mjs} +1 -1
- package/dist/cli/cli.mjs +40 -40
- package/dist/cli/cloudflare-operation-process.mjs +1 -1
- package/dist/cli/env-schema-probe.d.mts +1 -1
- package/dist/client-BxVixJBI.mjs +2 -0
- package/dist/{client-RsPo8wsP.mjs → client-mC-dFGDD.mjs} +5 -5
- package/dist/{cloudflare-operations-CjaV4lZi.mjs → cloudflare-operations-DYa3coIk.mjs} +1 -1
- package/dist/{cloudflare-operations-BhbK6yTq.mjs → cloudflare-operations-DoQrVHAt.mjs} +1 -1
- package/dist/{connect-DCvUmPXY.mjs → connect-H6EvP62X.mjs} +6 -6
- package/dist/{create-project-eAPgYq35.mjs → create-project-B2kk9Q0o.mjs} +4 -4
- package/dist/{create-project-C734I-Mu.mjs → create-project-Dbb4uiN-.mjs} +1 -1
- package/dist/{db-C07GEdKF.mjs → db-DpCKZto0.mjs} +21 -21
- package/dist/{delete-pKMVsrpJ.mjs → delete-CxlSvsvW.mjs} +6 -6
- package/dist/{deploy-DfsAe-T0.mjs → deploy-CeEbnv4b.mjs} +38 -24
- package/dist/{deploy-BDu1vhSH.mjs → deploy-qmiLE1G1.mjs} +1 -1
- package/dist/{domain-D3uA9ize.mjs → domain-B_9VgOm6.mjs} +6 -6
- package/dist/{email-z3o2cwjH.mjs → email-BokHgjKj.mjs} +6 -6
- package/dist/{env-3Q8-_2IH.mjs → env-BdTc-K2L.mjs} +6 -5
- package/dist/{env-public-BX_r8HR6.d.mts → env-public-DR7ZM6d-.d.mts} +1 -1
- package/dist/{fetch-stream-IvCYKyQL.mjs → fetch-stream-Nm3hkZbT.mjs} +8 -1
- package/dist/{gen-NjwoG9FK.mjs → gen-BhDlTpwW.mjs} +1 -1
- package/dist/gen-qCBwH3fZ.mjs +2 -0
- package/dist/{github-cmd-DquUq-b1.mjs → github-cmd-hhkTzlGS.mjs} +4 -4
- package/dist/{handler-CZ4nAylQ.d.mts → handler-BeK3weD4.d.mts} +1 -1
- package/dist/{help-DRZXC4fj.mjs → help-Bv44e2tm.mjs} +13 -9
- package/dist/help-Dw5f9Xrg.mjs +2 -0
- package/dist/index.d.mts +1 -1
- package/dist/index.mjs +30 -17
- package/dist/{info-BmA3_IFZ.mjs → info-DhtTKh65.mjs} +1 -1
- package/dist/{init-DT7yuuyl.mjs → init-BMf4T03q.mjs} +10 -9
- package/dist/{limits-Bq5LG8Id.d.mts → limits-CFsDKQvU.d.mts} +1 -10
- package/dist/{limits-Cjuk2VPm.mjs → limits-D0vD1M9A.mjs} +1 -22
- package/dist/{link-CXOlqh2F.mjs → link-BqYsSS_I.mjs} +5 -5
- package/dist/{list-eEWVJEPn.mjs → list-_kBToO-l.mjs} +7 -6
- package/dist/{live-Chw1eIMv.d.mts → live-iAuEH1hd.d.mts} +1 -1
- package/dist/{local-d1-Df4XpwhW.mjs → local-d1-fGxYrVD6.mjs} +1 -1
- package/dist/login-D7meQg_3.mjs +2 -0
- package/dist/{login-pWQHYVu2.mjs → login-DFuo-RWO.mjs} +4 -4
- package/dist/{logs-DnxVX7TR.mjs → logs-DYgnh6dH.mjs} +5 -5
- package/dist/{node-BkyRWRx8.mjs → node-C6Q6e1Es.mjs} +1 -1
- package/dist/{operator-args-CAVcmwUt.mjs → operator-args-DdY54Bgb.mjs} +1 -1
- package/dist/{operator-auth-CkmTE3rt.mjs → operator-auth-2dsGlTT5.mjs} +4 -8
- package/dist/{operator-client-LmwjxT6q.mjs → operator-client-BFqpp6z0.mjs} +3 -3
- package/dist/{operator-cmd-d-IEKgNk.mjs → operator-cmd-CUGHXrQf.mjs} +27 -9
- package/dist/operator-cmd-DRPvhpjM.mjs +2 -0
- package/dist/{output-BBsUwdyT.mjs → output-BvdaehtE.mjs} +26 -2
- package/dist/pages/client.d.mts +1 -1
- package/dist/pages/index.mjs +1 -1
- package/dist/pages/islands-plugin.mjs +1 -1
- package/dist/pages/protocol.d.mts +2 -2
- package/dist/{plan-NPpwZ_kc.mjs → plan-CJGEeTEI.mjs} +2 -2
- package/dist/plan-COtUvdMA.mjs +2 -0
- package/dist/{platform-args-Bzf8JPc2.mjs → platform-args-DSV2p4nY.mjs} +4 -2
- package/dist/platform-args-Dcy_5b_Y.mjs +2 -0
- package/dist/{platform-auth-config-0V0lA3pF.mjs → platform-auth-config-Bosx7U1h.mjs} +18 -17
- package/dist/{platform-auth-protection-DFeJ-JkK.mjs → platform-auth-protection-DcbL_LW_.mjs} +6 -6
- package/dist/{platform-auth-recovery-ICy4muq6.mjs → platform-auth-recovery-WfTZ8K6o.mjs} +5 -5
- package/dist/{platform-cmd-D7vSWMvV.mjs → platform-cmd-DbKtQb_4.mjs} +45 -20
- package/dist/{platform-cmd-BPySFOew.mjs → platform-cmd-dyFUof0t.mjs} +1 -1
- package/dist/{platform-discovery-DDDUvnqp.mjs → platform-discovery-BC0HCKYt.mjs} +18 -4
- package/dist/{platform-domain-CUdY064e.mjs → platform-domain-Bsq43AJp.mjs} +5 -4
- package/dist/{platform-lifecycle-BaUdTRPU.mjs → platform-lifecycle--5gWmDoI.mjs} +1 -1
- package/dist/{platform-lifecycle-Dm09JNkn.mjs → platform-lifecycle-Cfi0o6xM.mjs} +863 -35
- package/dist/{platform-management-Bp6aoH2C.mjs → platform-management-Bbwf6-Dq.mjs} +1 -1
- package/dist/{platform-management-BSEc_ZeG.mjs → platform-management-BrF9STZp.mjs} +173 -30
- package/dist/{platform-plans-config-B0pOVQyW.mjs → platform-plans-config-DU-8nC2Y.mjs} +2 -2
- package/dist/{platform-recovery-WOZ95Uze.mjs → platform-recovery-DQAqAQYu.mjs} +3 -3
- package/dist/{platform-registry-KfNEF84O.mjs → platform-registry-P387v42A.mjs} +17 -10
- package/dist/prepare-BBknoZI1.mjs +2 -0
- package/dist/{prepare-39EvOhI6.mjs → prepare-BMrRWLwP.mjs} +3 -2
- package/dist/{prepare-DnaKBi--.mjs → prepare-WoUubFKL.mjs} +1 -1
- package/dist/{project-IOjBU8R6.mjs → project-BiaPQ7ur.mjs} +1 -1
- package/dist/{project-BkbfDs0V.mjs → project-DQstYTxO.mjs} +1 -1
- package/dist/{project-cmd-Bs5A392E.mjs → project-cmd-BbH2LptN.mjs} +18 -18
- package/dist/{project-team-ohAWWaew.mjs → project-team-Yiww3-go.mjs} +5 -5
- package/dist/{project-token-CP01Jna6.mjs → project-token-BrtT2NkY.mjs} +4 -4
- package/dist/{project-zero-trust-BzkVgx35.mjs → project-zero-trust-nYJ2V2nc.mjs} +5 -5
- package/dist/{protocol-CjF_iI9X.d.mts → protocol-BX8t2jiw.d.mts} +1 -1
- package/dist/{provision-BEv0k-qz.mjs → provision-DMTPG8Rh.mjs} +1 -1
- package/dist/{provision-Btj1jppf.mjs → provision-VeqAC77A.mjs} +13 -1
- package/dist/{requests-B3PBuGlX.mjs → requests-TIz_jtSu.mjs} +4 -4
- package/dist/{rollback-DDub9GsO.mjs → rollback-dBqICPzj.mjs} +5 -5
- package/dist/{runner-Ol0TNjk6.mjs → runner--2KF6Kua.mjs} +1 -1
- package/dist/{runner-CXA9Fh8h.mjs → runner-voIltZrY.mjs} +1 -1
- package/dist/runtime/ai.d.mts +10 -11
- package/dist/runtime/ai.mjs +13 -18
- package/dist/runtime/client-react.mjs +1 -1
- package/dist/runtime/client-solid.mjs +1 -1
- package/dist/runtime/client-svelte.mjs +1 -1
- package/dist/runtime/client-vue.mjs +1 -1
- package/dist/runtime/client.mjs +1 -1
- package/dist/runtime/env-public.d.mts +1 -1
- package/dist/runtime/fetch-stream.mjs +1 -1
- package/dist/runtime/handler.d.mts +1 -1
- package/dist/runtime/limits.d.mts +2 -2
- package/dist/runtime/limits.mjs +2 -2
- package/dist/runtime/live-client.d.mts +1 -1
- package/dist/runtime/live.d.mts +1 -1
- package/dist/runtime/migration-handler.mjs +33 -7
- package/dist/runtime/routing.d.mts +1 -1
- package/dist/runtime/sandbox.d.mts +1 -1
- package/dist/runtime/sandbox.mjs +12 -22
- package/dist/runtime/validator.d.mts +1 -1
- package/dist/runtime/ws-server.d.mts +1 -1
- package/dist/runtime/ws.d.mts +1 -1
- package/dist/{sandbox-XZAqzFlG.d.mts → sandbox-C5LFoJMf.d.mts} +7 -7
- package/dist/{scan-C7okrLyM.mjs → scan-C8dA7iM4.mjs} +10 -6
- package/dist/{secret-3c72lY1U.mjs → secret-AKnNXNP5.mjs} +6 -6
- package/dist/{subcommand-prompt-Dhom39bd.mjs → subcommand-prompt-B6WS9Aoz.mjs} +1 -1
- package/dist/validate-pna7R3Pv.mjs +2 -0
- package/dist/{validate-ctOrgiS3.mjs → validate-ymhap6M_.mjs} +1 -1
- package/dist/{ws-CL1w7GXU.d.mts → ws-C79j4aED.d.mts} +1 -1
- package/package.json +7 -7
- package/skills/void/SKILL.md +5 -2
- package/skills/void/docs/guide/ai.md +65 -62
- package/skills/void/docs/guide/app-types.md +1 -1
- package/skills/void/docs/guide/database.md +15 -0
- package/skills/void/docs/guide/live.md +2 -0
- package/skills/void/docs/guide/pages-routing/actions-and-forms.md +1 -1
- package/skills/void/docs/guide/platform/installation/credentials.md +2 -2
- package/skills/void/docs/guide/platform/installation/first-deployment.md +5 -1
- package/skills/void/docs/guide/platform/installation/maintenance.md +3 -1
- package/skills/void/docs/guide/platform/installation/setup.md +1 -1
- package/skills/void/docs/guide/platform/installation/uninstall.md +44 -11
- package/skills/void/docs/guide/sandboxes.md +39 -20
- package/skills/void/docs/reference/api/resources.md +11 -14
- package/skills/void/docs/reference/api.md +35 -34
- package/skills/void/docs/reference/cli/auth.md +3 -1
- package/skills/void/docs/reference/cli/platform-config.md +2 -2
- package/skills/void/docs/reference/cli/platform-installation.md +14 -12
- package/skills/void/docs/reference/cli/platform.md +4 -2
- package/skills/void/docs/reference/cli.md +1 -1
- package/skills/void/docs/reference/resource-inference.md +1 -0
- package/dist/client-B4Me-9HE.mjs +0 -2
- package/dist/gen-ById9r2j.mjs +0 -2
- package/dist/help-DPGBwomV.mjs +0 -2
- package/dist/login-C98-sw79.mjs +0 -2
- package/dist/plan-D1Q5rf-r.mjs +0 -2
- package/dist/platform-args-Cq6EjQro.mjs +0 -2
- package/dist/prepare-CnjcTV2s.mjs +0 -2
- package/dist/validate-Dq_L3s0S.mjs +0 -2
|
@@ -51,25 +51,22 @@ Typed AI client for Cloudflare AI models and provider-native AI Gateway requests
|
|
|
51
51
|
```ts
|
|
52
52
|
import { ai } from 'void/ai';
|
|
53
53
|
|
|
54
|
-
const result = await ai
|
|
55
|
-
|
|
54
|
+
const result = await ai.run('@cf/meta/llama-3.3-70b-instruct-fp8-fast', {
|
|
55
|
+
messages: [{ role: 'user', content: 'Summarize this release note.' }],
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
const response = await ai.provider('openai').fetch('/chat/completions', {
|
|
59
|
+
body: {
|
|
60
|
+
model: 'gpt-4o',
|
|
56
61
|
messages: [{ role: 'user', content: 'Summarize this release note.' }],
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
const response = await ai
|
|
61
|
-
.provider('openai')
|
|
62
|
-
.fetch('/chat/completions', {
|
|
63
|
-
body: {
|
|
64
|
-
model: 'gpt-4o',
|
|
65
|
-
messages: [{ role: 'user', content: 'Summarize this release note.' }],
|
|
66
|
-
},
|
|
67
|
-
})
|
|
68
|
-
.match({ ok: (result) => result, limited: (limit) => limit.response() });
|
|
62
|
+
},
|
|
63
|
+
});
|
|
69
64
|
```
|
|
70
65
|
|
|
71
66
|
**Key exports:** `ai`, `VoidAi`, provider request types. See [AI](../../guide/ai.md) for provider setup and streaming examples.
|
|
72
67
|
|
|
68
|
+
AI methods return promises and reject usage limits with `UsageLimit` from `void/limits`. Void routes and Pages actions return a structured HTTP 429 for uncaught limits. See [usage limits](../../guide/ai.md#usage-limits) for optional `instanceof UsageLimit` handling.
|
|
69
|
+
|
|
73
70
|
### Provider keys
|
|
74
71
|
|
|
75
72
|
Default secret names for `ai.provider()`. Use `apiKeyEnv` to choose another name.
|
|
@@ -33,37 +33,38 @@ Use this reference to find public imports, signatures, and return types. For set
|
|
|
33
33
|
|
|
34
34
|
Import Void's app-facing APIs from these paths:
|
|
35
35
|
|
|
36
|
-
| Import path | Contents
|
|
37
|
-
| ------------------------- |
|
|
38
|
-
| `void` | `voidPlugin`, handler/type re-exports, `defer`, `Deferred`, `DeferredState`, `InferProps`, `HeadDescriptor`
|
|
39
|
-
| `void/handler` | `defineHandler`, `defineMiddleware`, `basicAuth`, `defineScheduled`, `defineQueue`, `defineRender`, `defineHead`, types
|
|
40
|
-
| `void/auth` | `defineAuth`, `getUser`, `getSession`, `requireAuth`, `AuthUser`, `AuthSession`, `AuthState`
|
|
41
|
-
| `void/client` | `fetch`, `fetchStream`, `FetchError`, `auth`, `createAuthClient`, `AuthUser`, `AuthSession`, `AuthState`
|
|
42
|
-
| `void/client/{framework}` | Same as `void/client`, with framework-specific Better Auth clients for `react`, `vue`, `svelte`, and `solid`
|
|
43
|
-
| `void/ws` | `defineRoom`, `defineWebSocket`, `connect`, WebSocket context and connection types
|
|
44
|
-
| `void/durable` | `defineDurableState`, typed state/RPC/context/migration types
|
|
45
|
-
| `void/sse` | `eventStream`, `formatSse`, `formatSseText`, `getLastEventId`, `SseStreamClosedError`, SSE message and stream types
|
|
46
|
-
| `void/sse/client` | `connectEventStream`, browser `EventSource` wrapper types
|
|
47
|
-
| `void/live` | `defineLiveStream`, SSE topic fanout runtime types. Server-only.
|
|
48
|
-
| `void/live/client` | `connectLiveStream`, browser helper for one SSE connection plus POST subscribe/unsubscribe control.
|
|
49
|
-
| `void/response` | `convertReturnValue`
|
|
50
|
-
| `void/validator` | `runValidation`, `ValidatorSlots`, `HandlerInput`
|
|
51
|
-
| `void/drizzle-zod` | Re-exports [`drizzle-zod`](https://orm.drizzle.team/docs/zod) for schema-derived Zod validators for Drizzle tables
|
|
52
|
-
| `void/drizzle-valibot` | Re-exports [`drizzle-valibot`](https://orm.drizzle.team/docs/valibot) for schema-derived Valibot validators for Drizzle tables
|
|
53
|
-
| `void/drizzle-arktype` | Re-exports [`drizzle-arktype`](https://orm.drizzle.team/docs/arktype) for schema-derived ArkType validators for Drizzle tables
|
|
54
|
-
| `void/schema-d1` | Re-exports [`drizzle-orm/sqlite-core`](https://orm.drizzle.team/docs/column-types/sqlite) for D1 table and column builders
|
|
55
|
-
| `void/schema-pg` | Re-exports [`drizzle-orm/pg-core`](https://orm.drizzle.team/docs/column-types/pg) for PostgreSQL table and column builders
|
|
56
|
-
| `void/schema-mysql` | Re-exports `drizzle-orm/mysql-core` for MySQL table and column builders
|
|
57
|
-
| `void/database-provider` | `defineDatabaseProvider` and adapter types for `void db connect --provider`
|
|
58
|
-
| `void/db` | `db` (Drizzle D1, PostgreSQL, or MySQL instance for the active dialect), `createDb`, query operators (`eq`, `and`, `or`, `desc`, `like`, `inArray`, etc.)
|
|
59
|
-
| `void/seed` | `defineSeed`, `SeedContext`, `SeedFn` for programmatic `void db seed` modules
|
|
60
|
-
| `void/kv` | `kv`, `createKV`, typed KV client/map types
|
|
61
|
-
| `void/storage` | `storage`, `createStorage` for the inferred R2 binding or a specific `R2Bucket`
|
|
62
|
-
| `void/ai` | `ai`, `VoidAi`, model input and response types
|
|
63
|
-
| `void/
|
|
64
|
-
| `void/
|
|
65
|
-
| `void/
|
|
66
|
-
| `void/
|
|
67
|
-
| `void/
|
|
68
|
-
| `void/
|
|
69
|
-
| `void/
|
|
36
|
+
| Import path | Contents |
|
|
37
|
+
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
38
|
+
| `void` | `voidPlugin`, handler/type re-exports, `defer`, `Deferred`, `DeferredState`, `InferProps`, `HeadDescriptor` |
|
|
39
|
+
| `void/handler` | `defineHandler`, `defineMiddleware`, `basicAuth`, `defineScheduled`, `defineQueue`, `defineRender`, `defineHead`, types |
|
|
40
|
+
| `void/auth` | `defineAuth`, `getUser`, `getSession`, `requireAuth`, `AuthUser`, `AuthSession`, `AuthState` |
|
|
41
|
+
| `void/client` | `fetch`, `fetchStream`, `FetchError`, `auth`, `createAuthClient`, `AuthUser`, `AuthSession`, `AuthState` |
|
|
42
|
+
| `void/client/{framework}` | Same as `void/client`, with framework-specific Better Auth clients for `react`, `vue`, `svelte`, and `solid` |
|
|
43
|
+
| `void/ws` | `defineRoom`, `defineWebSocket`, `connect`, WebSocket context and connection types |
|
|
44
|
+
| `void/durable` | `defineDurableState`, typed state/RPC/context/migration types |
|
|
45
|
+
| `void/sse` | `eventStream`, `formatSse`, `formatSseText`, `getLastEventId`, `SseStreamClosedError`, SSE message and stream types |
|
|
46
|
+
| `void/sse/client` | `connectEventStream`, browser `EventSource` wrapper types |
|
|
47
|
+
| `void/live` | `defineLiveStream`, SSE topic fanout runtime types. Server-only. |
|
|
48
|
+
| `void/live/client` | `connectLiveStream`, browser helper for one SSE connection plus POST subscribe/unsubscribe control. |
|
|
49
|
+
| `void/response` | `convertReturnValue` |
|
|
50
|
+
| `void/validator` | `runValidation`, `ValidatorSlots`, `HandlerInput` |
|
|
51
|
+
| `void/drizzle-zod` | Re-exports [`drizzle-zod`](https://orm.drizzle.team/docs/zod) for schema-derived Zod validators for Drizzle tables |
|
|
52
|
+
| `void/drizzle-valibot` | Re-exports [`drizzle-valibot`](https://orm.drizzle.team/docs/valibot) for schema-derived Valibot validators for Drizzle tables |
|
|
53
|
+
| `void/drizzle-arktype` | Re-exports [`drizzle-arktype`](https://orm.drizzle.team/docs/arktype) for schema-derived ArkType validators for Drizzle tables |
|
|
54
|
+
| `void/schema-d1` | Re-exports [`drizzle-orm/sqlite-core`](https://orm.drizzle.team/docs/column-types/sqlite) for D1 table and column builders |
|
|
55
|
+
| `void/schema-pg` | Re-exports [`drizzle-orm/pg-core`](https://orm.drizzle.team/docs/column-types/pg) for PostgreSQL table and column builders |
|
|
56
|
+
| `void/schema-mysql` | Re-exports `drizzle-orm/mysql-core` for MySQL table and column builders |
|
|
57
|
+
| `void/database-provider` | `defineDatabaseProvider` and adapter types for `void db connect --provider` |
|
|
58
|
+
| `void/db` | `db` (Drizzle D1, PostgreSQL, or MySQL instance for the active dialect), `createDb`, query operators (`eq`, `and`, `or`, `desc`, `like`, `inArray`, etc.) |
|
|
59
|
+
| `void/seed` | `defineSeed`, `SeedContext`, `SeedFn` for programmatic `void db seed` modules |
|
|
60
|
+
| `void/kv` | `kv`, `createKV`, typed KV client/map types |
|
|
61
|
+
| `void/storage` | `storage`, `createStorage` for the inferred R2 binding or a specific `R2Bucket` |
|
|
62
|
+
| `void/ai` | `ai`, `VoidAi`, model input and response types |
|
|
63
|
+
| `void/limits` | `UsageLimit`, `UsageLimitData`, and `readUsageLimit`. AI and Sandbox limits reject with `UsageLimit`; uncaught limits in Void routes and Pages actions return structured HTTP 429 responses. |
|
|
64
|
+
| `void/isr` | `revalidate(options)` for on-demand ISR cache invalidation |
|
|
65
|
+
| `void/log` | `logger` structured logging helper |
|
|
66
|
+
| `void/routes` | `RouteMap` and `WebSocketRouteMap` stubs (types only) |
|
|
67
|
+
| `void/queues` | `queues` proxy for sending messages to typed queues |
|
|
68
|
+
| `void/sandbox` | `getSandbox`, `sandbox`, `SandboxLimitError`, `SandboxUnavailableError`, and the SDK 1.0 file, backup, and mount helpers. `getSandbox(id)` resolves a client. Commands, files, port requests, and process completion return promises; limits reject with `SandboxLimitError`, which extends `UsageLimit`. Container state lasts until inactivity (default ten minutes), a crash, or a restart. See [Sandboxes](../guide/sandboxes.md) for the API and deployment requirements. |
|
|
69
|
+
| `void/env` | `defineEnv`, `env`, schema helpers (`string`, `number`, `boolean`, `url`, `email`, `oneOf`, `json`), and global Cloudflare env types |
|
|
70
|
+
| `void/sveltekit` | SvelteKit integration helpers: `withVoidTSConfig()` and `mergeVoidSvelteKitTsconfig()` |
|
|
@@ -6,13 +6,15 @@ outline: deep
|
|
|
6
6
|
|
|
7
7
|
```sh
|
|
8
8
|
void connect
|
|
9
|
-
void connect
|
|
9
|
+
void connect platform.example.com
|
|
10
10
|
void connect --platform cloudflare
|
|
11
11
|
void connect --platform void
|
|
12
12
|
```
|
|
13
13
|
|
|
14
14
|
Connect a project to its deployment destination. With no arguments, choose Cloudflare or a Void platform interactively. A URL selects a Void platform directly. `--platform void` offers saved platforms and an option to enter another URL.
|
|
15
15
|
|
|
16
|
+
You can omit `https://` from a platform URL: `void connect platform.example.com` connects to `https://platform.example.com`. This also works in the interactive prompt. For a local HTTP platform, include the scheme, such as `http://localhost:8787`.
|
|
17
|
+
|
|
16
18
|
For Cloudflare, Void signs in through the browser when needed, selects an accessible account, and saves `cloudflare.account_id` in `void.config.ts` or resolved state in `void.lock.json`. It shares this setup with `void init`. An existing account selection is preserved; conflicting or inaccessible account settings must be resolved before continuing.
|
|
17
19
|
|
|
18
20
|
For a Void platform, Void checks the connection and signs you in through your browser when needed. It saves credentials in your system keychain separately for each platform.
|
|
@@ -20,7 +20,7 @@ void platform config plans default <plan-id>
|
|
|
20
20
|
void platform config plans sync
|
|
21
21
|
```
|
|
22
22
|
|
|
23
|
-
Use `--plan` to preview changes and affected accounts; scripted mutations require `--yes`. Every command supports `--connection <
|
|
23
|
+
Use `--plan` to preview changes and affected accounts; scripted mutations require `--yes`. Every command supports `--connection <slug-or-url>` and `--json`. `show` reports the effective limits, default, assignments, and pending account updates. `reset` restores a built-in plan's original limits and build instance size. Archived plans keep their existing accounts but cannot receive new assignments; change the default before archiving it. `remove` requires a replacement for a plan that has accounts or is the default. Changing the default affects only new accounts.
|
|
24
24
|
|
|
25
25
|
For `add` and `set`, `--file` reads a JSON object with optional `name`, `limits`, `buildInstanceType`, and boolean `allowShortSlugs`. `limits` is a partial object of nonnegative whole numbers; `0` means unlimited by the plan. Build timeouts remain capped at the platform maximum of 60 minutes; `0` uses that maximum. Omitted settings keep their current values or the copied plan's values. `buildInstanceType` is `standard-3` or `standard-4`. `allowShortSlugs` permits future assignments of project slugs of five characters or fewer; existing URLs remain available. Storage quotas are not editable. See [Plans and Limits](../../guide/platform/administration/plans.md) for supported limits and examples.
|
|
26
26
|
|
|
@@ -60,7 +60,7 @@ alternative; the last method cannot be disabled. Disabling revokes human session
|
|
|
60
60
|
created through that method, including operator sessions. Scoped deployment tokens
|
|
61
61
|
remain valid; a human login token used as `VOID_TOKEN` is still revoked.
|
|
62
62
|
|
|
63
|
-
Commands accept `--connection <
|
|
63
|
+
Commands accept `--connection <slug-or-url>` and `--json`. Changes accept
|
|
64
64
|
`--plan` or `--yes`. For scripted configuration, use `--file <path>` for the
|
|
65
65
|
nonsecret fields and `--client-secret-env <name>` for the environment variable
|
|
66
66
|
containing the secret. Omit the secret when editing to retain its saved value.
|
|
@@ -101,12 +101,12 @@ void platform rollback [id] --runtime <earlier-path> [--from-runtime <current-pa
|
|
|
101
101
|
void platform repair [id] [--runtime <path>] [--dashboard-url <origin>] [--plan] [--yes]
|
|
102
102
|
void platform disable [id] [--plan] [--yes]
|
|
103
103
|
void platform enable [id] [--runtime <path>] [--plan] [--yes]
|
|
104
|
-
void platform uninstall [id] [--plan] [--purge-data] [--keep-zone] [--yes]
|
|
104
|
+
void platform uninstall [id] [--plan] [--purge-data | --purge-resources] [--keep-zone] [--yes]
|
|
105
105
|
```
|
|
106
106
|
|
|
107
107
|
`discover --installation` limits recovery and endpoint verification to one installation in a shared Cloudflare account.
|
|
108
108
|
|
|
109
|
-
Omit `id` when only one installation is configured, or choose from the interactive picker. Non-interactive commands need
|
|
109
|
+
Use the installation slug shown beside its name in `void platform list`. Installation IDs and saved connection IDs also work. Lifecycle commands require local installation records; use `discover` to restore them on another machine. Omit `id` when only one installation is configured, or choose from the interactive picker. Non-interactive commands need a slug or ID when several installations exist. Commands that make changes also require `--yes`; `--plan` only previews changes.
|
|
110
110
|
|
|
111
111
|
To add or explicitly change a separately deployed dashboard after installation,
|
|
112
112
|
use `repair --dashboard-url <origin>` or `upgrade --dashboard-url <origin>`.
|
|
@@ -115,15 +115,15 @@ dashboard origin before maintenance can proceed. See [Optional Dashboard](../../
|
|
|
115
115
|
|
|
116
116
|
After discovery on another machine, set `VOID_PLATFORM_DATABASE_URL`. An upgrade that preserves every deployed Worker also preserves its secrets. For an email-enabled installation without its encrypted recovery file, restore `VOID_PLATFORM_EMAIL_SIGNING_SECRET`; recreating only the email gateway needs that key and does not need the Cloudflare runtime token or JWT signing key. Recreating the API or proxy also requires the email key when email is enabled, in addition to their normal secrets. Recreating the API requires its original runtime-token, GitHub, R2, JWT, and project-encryption values; recreating the proxy requires the runtime token and JWT signing key.
|
|
117
117
|
|
|
118
|
-
| Command | Behavior
|
|
119
|
-
| ----------- |
|
|
120
|
-
| `discover` | Verifies remote ownership and restores local installation records without downloading secrets
|
|
121
|
-
| `repair` | Recreates missing resources owned by the installer
|
|
122
|
-
| `upgrade` | Deploys the selected runtime and supported pending migrations
|
|
123
|
-
| `rollback` | Restores a declared-compatible earlier runtime without reversing PostgreSQL migrations
|
|
124
|
-
| `disable` | Blocks
|
|
125
|
-
| `enable` |
|
|
126
|
-
| `uninstall` | Blocks traffic and removes eligible resources, retaining data by default
|
|
118
|
+
| Command | Behavior |
|
|
119
|
+
| ----------- | ----------------------------------------------------------------------------------------------------------- |
|
|
120
|
+
| `discover` | Verifies remote ownership and restores local installation records without downloading secrets |
|
|
121
|
+
| `repair` | Recreates missing resources owned by the installer |
|
|
122
|
+
| `upgrade` | Deploys the selected runtime and supported pending migrations |
|
|
123
|
+
| `rollback` | Restores a declared-compatible earlier runtime without reversing PostgreSQL migrations |
|
|
124
|
+
| `disable` | Blocks app traffic and the platform API without removing data; only admin status and sign-in stay available |
|
|
125
|
+
| `enable` | Redeploys and verifies the platform Workers, then restores traffic |
|
|
126
|
+
| `uninstall` | Blocks traffic and removes eligible resources, retaining data by default |
|
|
127
127
|
|
|
128
128
|
Repair and upgrade preserve disabled state. New, resumed, and previously disabled installations block user traffic until all target Workers pass verification; the installer's health probes can still run. Routes and custom domains remain attached.
|
|
129
129
|
|
|
@@ -137,6 +137,8 @@ An upgrade completes after the new Workers pass health checks. If rollout fails,
|
|
|
137
137
|
|
|
138
138
|
`platform rollback` restores a compatible earlier runtime without reversing database migrations. Pass its files with `--runtime`; if the installed version is custom, also supply that version with `--from-runtime`. Void refuses incompatible targets.
|
|
139
139
|
|
|
140
|
-
Uninstall verifies remote ownership before removing anything. Data resources are retained unless you pass `--purge-data`. Workers, the Queues they use, R2, AI Gateway, DNS records, routes, custom domains, adopted resources, external PostgreSQL, and zones are
|
|
140
|
+
Uninstall verifies remote ownership before removing anything. Data resources are retained unless you pass `--purge-data`. Workers, the Queues they use, R2, AI Gateway, DNS records, routes, custom domains, adopted resources, external PostgreSQL, and zones are retained for manual review.
|
|
141
|
+
|
|
142
|
+
`--purge-resources` includes `--purge-data` and also deletes every other resource the installation created, including Workers, Queues, R2, AI Gateway, the platform DNS record, routes, custom domains, and installer-created Access resources. It removes only the Email Routing rules that send mail to the platform email gateway, and keeps zones, adopted resources, external PostgreSQL, other Email Routing settings, and API tokens. A route, custom domain, DNS record, or Access resource that no longer matches the installation's record is kept and listed. It refuses before any change while projects remain or resource reads are denied. Use the Edit permissions listed by `--plan`; read checks cannot verify them, so a denied deletion can stop uninstall after changes have begun. Rerun the same command to continue after an interruption, or after a plain or `--purge-data` uninstall stopped.
|
|
141
143
|
|
|
142
144
|
See [Disable and Uninstall](../../guide/platform/installation/uninstall.md#remove-retained-resources) for the full removal policy and the cleanup order.
|
|
@@ -14,7 +14,9 @@ void platform use [id]
|
|
|
14
14
|
void platform status [id]
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
-
`
|
|
17
|
+
`list` shows the currently selected platform first, followed by other saved platforms. For a platform with local installation records, its installation slug appears beside its name, such as `Cloudflare Void (cloudflare)`. Select it with `void platform use cloudflare`. For a connected platform without a local installation slug, use its printed API URL.
|
|
18
|
+
|
|
19
|
+
`use` and `status` accept an installation slug, display name, saved ID, or API URL. If a slug or name matches several platforms, use the API URL to choose one. They auto-select the only configured platform; with multiple platforms they show a picker interactively and require an explicit selector in non-interactive use. A project with a recorded platform URL keeps using that platform when the global default changes.
|
|
18
20
|
|
|
19
21
|
For a self-hosted installation, `status <installation-id>` prints locally saved
|
|
20
22
|
lifecycle progress before checking the live API. The saved checkpoint may be out
|
|
@@ -25,7 +27,7 @@ checkpoint and exits with an error; it does not confirm current availability.
|
|
|
25
27
|
|
|
26
28
|
Use `void platform` to administer the users and apps on your selected platform. Start with the [Platform Administration guide](../../guide/platform-administration.md) for signing in, giving people access, and investigating deployments.
|
|
27
29
|
|
|
28
|
-
Every command below accepts `--connection <
|
|
30
|
+
Every command below accepts `--connection <slug-or-url>` to select a registered platform and `--json` for structured output. Display names and saved IDs also work. Without `--connection`, Void uses `VOID_API_URL` if set, then the active platform connection. Application project files do not change this selection.
|
|
29
31
|
|
|
30
32
|
### Making Changes {#making-changes}
|
|
31
33
|
|
|
@@ -56,7 +56,7 @@ Use this page as a command reference. If you are setting up a project for the fi
|
|
|
56
56
|
| `void account login` | Authenticate with a Void platform |
|
|
57
57
|
| `void cloudflare login` | Authenticate with Cloudflare through Void |
|
|
58
58
|
| `void platform install` | Install a company Void platform in Cloudflare |
|
|
59
|
-
| `void connect <url>` | Connect the CLI to a Void platform
|
|
59
|
+
| `void connect <url>` | Connect the CLI to a Void platform; hostnames default to HTTPS |
|
|
60
60
|
| `void project link` | Link directory to a project |
|
|
61
61
|
| `void project logs` | Show runtime logs from deployed project |
|
|
62
62
|
| `void project requests` | Show request-level traffic (status, method, timing) |
|
|
@@ -17,6 +17,7 @@ Void automatically detects which Cloudflare resources your project uses by scann
|
|
|
17
17
|
| `SANDBOX` | Managed Sandbox capability | `import { getSandbox } from "void/sandbox"` | `getSandbox()`; native Cloudflare also exposes `env.SANDBOX` / `c.env.SANDBOX` |
|
|
18
18
|
| Auth | none | `import { ... } from "void/auth"` or `import { auth } from "void/client"` / `void/client/react` / `void/client/vue` / `void/client/svelte` / `void/client/solid` | none |
|
|
19
19
|
| `QUEUE_*` | `Queue` | `import { queues } from "void/queues"` | `env.QUEUE_*` |
|
|
20
|
+
| `VOID_LIVE` | `DurableObjectNamespace` | `import { defineLiveStream } from "void/live"` | n/a |
|
|
20
21
|
| filename-derived | `DurableObjectNamespace` | A default-exported `defineDurableState()` module in `durable-objects/` | n/a |
|
|
21
22
|
|
|
22
23
|
Auth detection also triggers when importing the `auth` specifier from `void/client` or a framework-specific client subpath such as `void/client/react` (but not when importing only `fetch`).
|
package/dist/client-B4Me-9HE.mjs
DELETED
package/dist/gen-ById9r2j.mjs
DELETED
package/dist/help-DPGBwomV.mjs
DELETED
package/dist/login-C98-sw79.mjs
DELETED
package/dist/plan-D1Q5rf-r.mjs
DELETED