@supacloud/cli 0.113.0 → 0.115.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/README.md +34 -34
- package/dist/index.js +967 -842
- package/dist/shared/cli.test.d.ts +1 -0
- package/dist/shared/tools/ai-tools.d.ts +8 -0
- package/dist/shared/tools/app-starter-database.d.ts +1 -1
- package/dist/shared/tools/app-starter-reactive.d.ts +1 -1
- package/dist/shared/tools/app-starter-templates.d.ts +3 -3
- package/dist/shared/tools/app-tools.d.ts +3 -16
- package/dist/shared/tools/database-tools.d.ts +11 -0
- package/dist/shared/tools/db-governance-tools.d.ts +1 -0
- package/dist/shared/tools/deploy-tools.d.ts +3 -1
- package/dist/shared/tools/developer-experience-tools.d.ts +6 -1
- package/dist/shared/tools/lite-cli-tools.d.ts +1 -1
- package/dist/shared/tools/remote-dev-tools.d.ts +0 -1
- package/package.json +5 -5
- package/skills/supacloud/SKILL.md +28 -9
- package/skills/supacloud/references/app-workflow.md +52 -0
- package/skills/supacloud/references/command-map.md +11 -3
package/README.md
CHANGED
|
@@ -22,15 +22,15 @@ are not supported.
|
|
|
22
22
|
For an existing SupaCloud application with a frontend, the shortest path is:
|
|
23
23
|
|
|
24
24
|
```sh
|
|
25
|
-
supacloud init
|
|
25
|
+
supacloud deploy init
|
|
26
26
|
cp .env.supacloud.test.example .env.supacloud.test
|
|
27
27
|
supacloud env check
|
|
28
28
|
supacloud --env test deploy
|
|
29
29
|
```
|
|
30
30
|
|
|
31
|
-
`init` creates `supacloud.json` and non-secret environment examples without
|
|
31
|
+
`deploy init` creates `supacloud.json` and non-secret environment examples without
|
|
32
32
|
overwriting an existing project configuration. `env list` and `env check` are
|
|
33
|
-
local-only, redact credentials, and provide stable JSON with `--json` for CI or
|
|
33
|
+
local-only, redact credentials, and provide stable JSON with `--format json` for CI or
|
|
34
34
|
AI tooling. The real `.env.supacloud.*` files are added to `.gitignore`.
|
|
35
35
|
Fill in the Management credentials and project/environment in the selected profile.
|
|
36
36
|
Static frontends need only `frontend` build configuration; no application binding
|
|
@@ -56,8 +56,9 @@ The initializer needs no platform credentials and never overwrites existing
|
|
|
56
56
|
projects. The default minimal template includes a health feature with a colocated
|
|
57
57
|
test, strict compilation, an Elysia service, SDK dependencies and explicit
|
|
58
58
|
development/test/staging/production environment wrappers. Select
|
|
59
|
-
`--template command` for the persistent governed-command reference
|
|
60
|
-
|
|
59
|
+
`--template command` for the persistent governed-command reference. Add HTTP
|
|
60
|
+
routes and background jobs with `app generate`; there are no separate `http` or
|
|
61
|
+
`edge` starter templates. The compiler is a development dependency.
|
|
61
62
|
The demo binds to loopback and cannot run in staging/production. Production
|
|
62
63
|
identity, persistence and durable governance must be supplied by the application.
|
|
63
64
|
See [Application Starter](../../docs/application-starter.md) for the full contract.
|
|
@@ -97,8 +98,8 @@ Its topology digest is not a release digest or deployment approval. Build needs
|
|
|
97
98
|
Bun and produces the compiler's immutable manifest beneath configured `outDir`.
|
|
98
99
|
Build, upload and configure only prepare artifacts or configuration, never deploy.
|
|
99
100
|
|
|
100
|
-
Remote actions
|
|
101
|
-
identity validation, read-only and production-confirmation checks. Upload returns
|
|
101
|
+
Remote actions use the internal application release primitives and retain their
|
|
102
|
+
original receipt, identity validation, read-only and production-confirmation checks. Upload returns
|
|
102
103
|
the release ID; configuration writes use the existing JSON contract with an
|
|
103
104
|
explicit revision and expected revision. Deploy and rollback require an explicit
|
|
104
105
|
release, configuration, new activation ID and expected current activation ID.
|
|
@@ -250,14 +251,17 @@ supacloud ai install_skill
|
|
|
250
251
|
```
|
|
251
252
|
|
|
252
253
|
The default destination is `$CODEX_HOME/skills/supacloud` or
|
|
253
|
-
`~/.codex/skills/supacloud`.
|
|
254
|
-
Skill root
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
254
|
+
`~/.codex/skills/supacloud`. `--target codex|claude|agents|project` selects a
|
|
255
|
+
common Agent Skill root, and `--target /path/to/skills` remains available for an
|
|
256
|
+
explicit root. Different existing content is preserved unless `--force` is
|
|
257
|
+
passed; forced replacement creates a timestamped adjacent backup first.
|
|
258
|
+
|
|
259
|
+
The Skill directs agents through the local application loop (`app init`,
|
|
260
|
+
`context`, `generate`, `check`, `doctor`, reviewed `fix`, `verify-plan`) and keeps
|
|
261
|
+
schema, functions/RPC, triggers, RLS, indexes, grants, extensions, and
|
|
262
|
+
reference-data changes in migrations; use read-only SQL for ordinary inspection;
|
|
263
|
+
dry-run remote migrations; and reconcile existing remote drift before touching
|
|
264
|
+
migration history.
|
|
261
265
|
|
|
262
266
|
## Environment profiles and production safety
|
|
263
267
|
|
|
@@ -319,9 +323,8 @@ This setting only affects HTTPS requests made by the CLI transport. It does not
|
|
|
319
323
|
change server-side SupaCloud, Caddy, Edge Runtime, or browser certificate
|
|
320
324
|
verification. Keep the default only on trusted internal networks; use a
|
|
321
325
|
trusted CA and `SUPACLOUD_TLS_VERIFY=true` for public or untrusted networks.
|
|
322
|
-
The
|
|
323
|
-
|
|
324
|
-
the selected context source, not a mix of profile and process variables.
|
|
326
|
+
The setting uses the selected context source, not a mix of profile and process
|
|
327
|
+
variables.
|
|
325
328
|
Values accept `true/false`, `1/0`, `yes/no`, and `on/off` (case-insensitive).
|
|
326
329
|
Invalid or empty values stop the command before requests are sent.
|
|
327
330
|
Skipping verification accepts any certificate, not just a private CA, and
|
|
@@ -436,11 +439,9 @@ internally, retaining CAS checks and final readback.
|
|
|
436
439
|
Store a compiler-built HTTP/Worker application as one immutable release:
|
|
437
440
|
|
|
438
441
|
```bash
|
|
439
|
-
supacloud
|
|
442
|
+
supacloud app upload --ref abc123 --id reviews \
|
|
440
443
|
--manifest_path ./generated/delivery/delivery.manifest.json
|
|
441
|
-
supacloud
|
|
442
|
-
supacloud applications get_release --ref abc123 --id reviews --release_id <sha256>
|
|
443
|
-
supacloud applications get_runtime --ref abc123 --id reviews --environment_id test
|
|
444
|
+
supacloud app status --ref abc123 --id reviews --environment_id test
|
|
444
445
|
```
|
|
445
446
|
|
|
446
447
|
Upload verifies executable objects, transfers their inventory with multipart
|
|
@@ -478,11 +479,8 @@ environment. Saving a revision does not allocate ports, start processes, change
|
|
|
478
479
|
traffic or migrate data:
|
|
479
480
|
|
|
480
481
|
```bash
|
|
481
|
-
supacloud
|
|
482
|
-
supacloud applications put_configuration --ref abc123 --id reviews --environment_id test \
|
|
482
|
+
supacloud app configure --ref abc123 --id reviews --environment_id test \
|
|
483
483
|
--configuration_path ./application.test.json
|
|
484
|
-
supacloud applications get_configuration --ref abc123 --id reviews --environment_id test \
|
|
485
|
-
--configuration_id <uuid>
|
|
486
484
|
```
|
|
487
485
|
|
|
488
486
|
Example configuration write file:
|
|
@@ -517,8 +515,8 @@ API and CLI reads return names only; keep local files with values out of version
|
|
|
517
515
|
control. An identical retry with the same revision ID returns the original
|
|
518
516
|
receipt and never moves a newer head backward. A changed request using the same
|
|
519
517
|
ID or a stale expected revision returns a conflict. An unknown result preserves
|
|
520
|
-
the revision ID for
|
|
521
|
-
|
|
518
|
+
the revision ID for explicit verification; the CLI does not replay the write
|
|
519
|
+
automatically.
|
|
522
520
|
|
|
523
521
|
Writes follow the normal read-only and exact production-confirmation policy.
|
|
524
522
|
Programmatic `activateConfigured` selects an explicit configuration revision,
|
|
@@ -541,15 +539,17 @@ Composed hosts can register `POST .../environments/:environmentId/activations`
|
|
|
541
539
|
and `POST .../activations/:activationId/reconcile` by supplying an
|
|
542
540
|
`ApplicationDeploymentService` with its required compatibility verifier.
|
|
543
541
|
The default Management API instance does not yet enable these endpoints.
|
|
544
|
-
|
|
542
|
+
The low-level `applications` command group is an internal implementation detail
|
|
543
|
+
and is not a user CLI or MCP surface. Use `app` for release operations. For an
|
|
544
|
+
explicitly composed test host:
|
|
545
545
|
|
|
546
546
|
```bash
|
|
547
|
-
supacloud
|
|
547
|
+
supacloud app deploy --ref abc123 --id reviews --environment_id test \
|
|
548
548
|
--release_id <release-sha256> --configuration_id <configuration-uuid> \
|
|
549
549
|
--activation_id <new-uuid> --expected_activation_id absent
|
|
550
|
-
supacloud
|
|
550
|
+
supacloud app reconcile --ref abc123 --id reviews --environment_id test \
|
|
551
551
|
--release_id <release-sha256> --activation_id <same-uuid>
|
|
552
|
-
supacloud
|
|
552
|
+
supacloud app retire --ref abc123 --id reviews --environment_id test \
|
|
553
553
|
--activation_id <stopped-and-unrouted-uuid>
|
|
554
554
|
```
|
|
555
555
|
|
|
@@ -819,7 +819,7 @@ requested version, name, baseline marker, and checksum.
|
|
|
819
819
|
`database lint_migrations` is local-only and works without Management API
|
|
820
820
|
credentials. Inspect one source with `--sql`, `--file`, or `--dir`; these inputs
|
|
821
821
|
are mutually exclusive. `--strict` (or `--fail_on_high`) exits non-zero for HIGH
|
|
822
|
-
findings, `--fail_on_medium` also fails on MEDIUM findings, and `--json` emits a
|
|
822
|
+
findings, `--fail_on_medium` also fails on MEDIUM findings, and `--format json` emits a
|
|
823
823
|
structured report. The analyzer detects destructive DDL (`DROP TABLE`,
|
|
824
824
|
`DROP COLUMN`, `TRUNCATE`, `RENAME`), table-locking risks, opaque `DO` blocks,
|
|
825
825
|
procedural definitions/calls that require manual review, and statements that
|
|
@@ -1002,7 +1002,7 @@ supacloud lite db_pull --project_dir . --file remote_schema
|
|
|
1002
1002
|
supacloud lite db_pull --project_dir . --file reviewed_schema --baseline
|
|
1003
1003
|
supacloud lite gen_types --project_dir . --output src/database.types.ts
|
|
1004
1004
|
supacloud lite snapshot_create --project_dir . --output backups/lite.tar.gz
|
|
1005
|
-
supacloud lite doctor --project_dir . --json --production --runtime_mode strict
|
|
1005
|
+
supacloud lite doctor --project_dir . --format json --production --runtime_mode strict
|
|
1006
1006
|
supacloud lite db_check --project_dir . --module_file supabase/db/modules.ts
|
|
1007
1007
|
supacloud lite start --project_dir . --port 54321 --runtime_mode strict
|
|
1008
1008
|
```
|