@stackbone/cli 0.1.0-alpha.2 → 0.1.0-alpha.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.
- package/CHANGELOG.md +68 -0
- package/main.js +1056 -317
- package/migrations/0009_rename_runs_partial_index.sql +22 -0
- package/package.json +1 -1
- package/stackbone-cli-0.1.0-alpha.4.tgz +0 -0
- package/stackbone-cli-0.1.0-alpha.2.tgz +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,74 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.1.0-alpha.4] - 2026-05-18
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
|
|
14
|
+
- **Breaking — `--template` renamed to `--starter`.** The `stackbone init`
|
|
15
|
+
command now reads `--starter <slug>` and scaffolds from `starters/<slug>/`,
|
|
16
|
+
a directory subtreed from one of the public
|
|
17
|
+
`github.com/stackbone/starter-<slug>` repos (10 slugs: `hello-world`, `ai`,
|
|
18
|
+
`rag`, `db`, `storage`, `queues`, `hitl`, `secrets`, `prompts`, `config`).
|
|
19
|
+
The legacy `--template` flag is recognised solely to emit the migration
|
|
20
|
+
message `--template was renamed to --starter; rerun with --starter <slug>`
|
|
21
|
+
and exit non-zero. The interactive picker now groups starters by
|
|
22
|
+
`stackbone.category` (`Core` first, then `Capabilities`) and lists ten
|
|
23
|
+
entries (the three bundled `hello-world` / `workflow` / `autonomous`
|
|
24
|
+
templates are gone — `workflow` and `autonomous` were mocks).
|
|
25
|
+
`.stackbone/project.json` writes `starter: <slug>`; the field is read-compat
|
|
26
|
+
with the legacy `template:` key (one release) and rewritten on next
|
|
27
|
+
`init`/`link`. The bundled `apps/cli/src/templates/` directory is deleted
|
|
28
|
+
in favour of the subtreed `starters/` layout. Public exports of
|
|
29
|
+
`services/scaffolding.ts` were renamed: `TEMPLATES` → `STARTERS`,
|
|
30
|
+
`TemplateChoice` → `StarterChoice`, `parseTemplateId` → `parseStarterId`,
|
|
31
|
+
`renderTemplate` → `renderStarter`.
|
|
32
|
+
|
|
33
|
+
## [0.1.0-alpha.3] - 2026-05-15
|
|
34
|
+
|
|
35
|
+
### Added
|
|
36
|
+
|
|
37
|
+
- `stackbone dev` sessions are now first-class `installation` rows
|
|
38
|
+
(`kind='local'`). The CLI registers the row via
|
|
39
|
+
`POST /api/v1/installations/local-dev` during `init`/`link`, `PATCH`es
|
|
40
|
+
`local_tunnel_url` on dev start, and nulls it on Ctrl-C. The dev
|
|
41
|
+
boot banner emits a path-aware deeplink
|
|
42
|
+
(`app.stackbone.ai/app/<orgSlug>/installations/<id>?stackbone-dev=<tunnel>`)
|
|
43
|
+
consumed in one shot by the `stackboneDevBootstrapGuard` so Studio
|
|
44
|
+
opens straight on the local installation. Local-dev rows skip the
|
|
45
|
+
provisioning saga and the tier-quota gate by construction and are
|
|
46
|
+
garbage-collected after 7 days of inactivity.
|
|
47
|
+
|
|
48
|
+
### Changed
|
|
49
|
+
|
|
50
|
+
- Unified agent runtime env contract under `STACKBONE_*`. The dev
|
|
51
|
+
emulator now injects `STACKBONE_AGENT_ID` (the agent slug) plus
|
|
52
|
+
`STACKBONE_S3_ACCESS_KEY` / `STACKBONE_S3_SECRET_KEY` /
|
|
53
|
+
`STACKBONE_S3_ENDPOINT` / `STACKBONE_S3_BUCKET` /
|
|
54
|
+
`STACKBONE_S3_REGION` / `STACKBONE_POSTGRES_URL` into the agent
|
|
55
|
+
process, replacing the previous mix of `AWS_*` / `S3_*` /
|
|
56
|
+
`DATABASE_URL` names. Agents that still read the legacy names must
|
|
57
|
+
migrate.
|
|
58
|
+
- Emulator `/api/schema` now returns `{ input: null, output: null }`
|
|
59
|
+
(200) when the manifest declares neither schema or the agent is
|
|
60
|
+
unreachable — was 502 before. Mirrors the cloud `/studio/schema`
|
|
61
|
+
shape so the Studio Playground UI can boot before the agent is
|
|
62
|
+
healthy.
|
|
63
|
+
- `dev/fixtures-store.ts` persists JSONL records using the canonical
|
|
64
|
+
`Fixture` wire schema (camelCase `createdAt`, typed as `Fixture`) so
|
|
65
|
+
list/create return the wire type directly.
|
|
66
|
+
|
|
67
|
+
### Fixed
|
|
68
|
+
|
|
69
|
+
- `protectedCommand` no longer triggers the device-code flow on the
|
|
70
|
+
user's behalf. When no valid session exists it fails fast with
|
|
71
|
+
`code: 'auth'` and the standard "Run stackbone login" hint, and it
|
|
72
|
+
no longer retries on a mid-flight 401. Reason: the HTTP adapter
|
|
73
|
+
caches `tokenStore.activeSession()` once per process, so the
|
|
74
|
+
pre-login `POST /api/auth/device/code` poisoned the cache with
|
|
75
|
+
`null` and every subsequent request from the same process went out
|
|
76
|
+
without an Authorization header.
|
|
77
|
+
|
|
10
78
|
## [0.1.0-alpha.2] - 2026-05-12
|
|
11
79
|
|
|
12
80
|
### Added
|