@objectstack/cli 6.8.0 → 6.9.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 CHANGED
@@ -106,6 +106,29 @@ export default defineStack({
106
106
  });
107
107
  ```
108
108
 
109
+ ### Environment files (`.env`)
110
+
111
+ `dev`, `start`, and `serve` all load `.env` files following the
112
+ Vite / Next.js convention, in this order (later files override earlier):
113
+
114
+ 1. `.env`
115
+ 2. `.env.${NODE_ENV}` — `development` for `os dev`, `production` for `os start` (override with `NODE_ENV=...`)
116
+ 3. `.env.local`
117
+ 4. `.env.${NODE_ENV}.local`
118
+
119
+ Any variable already in the process environment wins. Typical project
120
+ layout:
121
+
122
+ ```
123
+ .env # checked in — safe defaults
124
+ .env.development # checked in — dev URLs, demo creds
125
+ .env.production # checked in — production URLs
126
+ .env.local # gitignored — secrets, personal overrides
127
+ ```
128
+
129
+ Common variables: `OS_DATABASE_URL`, `OS_DATABASE_DRIVER`,
130
+ `OS_HOME`, `AUTH_SECRET`, `PORT`.
131
+
109
132
  ## CLI Options
110
133
 
111
134
  ### Global
@@ -25,7 +25,7 @@ export default class Dev extends Command {
25
25
  * 2. Run `os compile` to rebuild `dist/objectstack.json`
26
26
  *
27
27
  * The server (MetadataPlugin) watches `dist/objectstack.json`
28
- * directly and broadcasts the HMR event to Studio (ADR-0008 PR-8);
28
+ * directly and broadcasts the HMR event to UI consumers (ADR-0008 PR-8);
29
29
  * the CLI no longer POSTs `/api/v1/dev/metadata-events`. That POST
30
30
  * endpoint remains available for external trigger sources (cloud
31
31
  * webhooks, git hooks, ad-hoc curl) but is not used here.
@@ -1 +1 @@
1
- {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAC;AAOnD,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,OAAO;IACtC,OAAgB,WAAW,SAA4C;IAEvE,OAAgB,IAAI;;MAElB;IAEF,OAAgB,KAAK;;;;;;;;;;;;;MAwCnB;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAgJ1B;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,mBAAmB;CA6F5B"}
1
+ {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAC;AAQnD,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,OAAO;IACtC,OAAgB,WAAW,SAA4C;IAEvE,OAAgB,IAAI;;MAElB;IAEF,OAAgB,KAAK;;;;;;;;;;;;;MAwCnB;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAqJ1B;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,mBAAmB;CA6F5B"}
@@ -2,6 +2,7 @@
2
2
  import { Args, Command, Flags } from '@oclif/core';
3
3
  import chalk from 'chalk';
4
4
  import { spawnSync, spawn } from 'child_process';
5
+ import dotenvFlow from 'dotenv-flow';
5
6
  import fs from 'fs';
6
7
  import path from 'path';
7
8
  import { printHeader, printKV, printStep, printError } from '../utils/format.js';
@@ -12,7 +13,7 @@ export default class Dev extends Command {
12
13
  };
13
14
  static flags = {
14
15
  watch: Flags.boolean({ char: 'w', description: 'Enable watch mode (default)', default: true }),
15
- ui: Flags.boolean({ description: 'Enable Studio UI at /_studio/' }),
16
+ ui: Flags.boolean({ description: 'Enable bundled UI portals (Account, Console) at /_account/ and /_console/' }),
16
17
  verbose: Flags.boolean({ char: 'v', description: 'Verbose output' }),
17
18
  port: Flags.string({ char: 'p', description: 'Server port (overrides $PORT)' }),
18
19
  preset: Flags.string({
@@ -53,6 +54,10 @@ export default class Dev extends Command {
53
54
  async run() {
54
55
  const { args, flags } = await this.parse(Dev);
55
56
  const packageName = args.package;
57
+ // Load .env files following Vite/Next.js convention (mirrors `serve`).
58
+ // `dev` is always development mode, so prefer `.env.development*` over
59
+ // `.env.production*`. Loaded BEFORE any env lookups.
60
+ dotenvFlow.config({ node_env: 'development', silent: true });
56
61
  printHeader('Development Mode');
57
62
  // ── Single-Environment Mode ──────────────────────────────────────────────────
58
63
  const configPath = path.resolve(process.cwd(), 'objectstack.config.ts');
@@ -127,7 +132,7 @@ export default class Dev extends Command {
127
132
  // When the agent edits an objectstack source file (config or
128
133
  // src/**), debounce-rebuild dist/objectstack.json. The server
129
134
  // (MetadataPlugin) watches the artifact path directly and
130
- // broadcasts the HMR event to Studio (ADR-0008 PR-8); no POST
135
+ // broadcasts the HMR event to UI consumers (ADR-0008 PR-8); no POST
131
136
  // ping required.
132
137
  //
133
138
  // Skipped when:
@@ -179,7 +184,7 @@ export default class Dev extends Command {
179
184
  * 2. Run `os compile` to rebuild `dist/objectstack.json`
180
185
  *
181
186
  * The server (MetadataPlugin) watches `dist/objectstack.json`
182
- * directly and broadcasts the HMR event to Studio (ADR-0008 PR-8);
187
+ * directly and broadcasts the HMR event to UI consumers (ADR-0008 PR-8);
183
188
  * the CLI no longer POSTs `/api/v1/dev/metadata-events`. That POST
184
189
  * endpoint remains available for external trigger sources (cloud
185
190
  * webhooks, git hooks, ad-hoc curl) but is not used here.
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
@@ -29,7 +29,7 @@ export default class Serve extends Command {
29
29
  /**
30
30
  * Auto-registered plugin tiers. Plugins explicitly listed in
31
31
  * `config.plugins` are always loaded — tiers only gate the optional
32
- * auto-registration blocks below (AIService, I18n, Studio UI, etc.).
32
+ * auto-registration blocks below (AIService, I18n, UI portals, etc.).
33
33
  */
34
34
  static readonly TIER_PRESETS: Record<string, string[]>;
35
35
  run(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAC;AAkJnD,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,OAAO;IACxC,OAAgB,WAAW,SAAkM;IAE7N,OAAgB,IAAI;;MAElB;IAEF,OAAgB,KAAK;;;;;;;;MAenB;IAEF;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAE,SAAS,MAAM,EAAE,CAEtD;IAEH;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAIpD;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAm7C3B"}
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAC;AA2InD,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,OAAO;IACxC,OAAgB,WAAW,SAAkM;IAE7N,OAAgB,IAAI;;MAElB;IAEF,OAAgB,KAAK;;;;;;;;MAenB;IAEF;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAE,SAAS,MAAM,EAAE,CAEtD;IAEH;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAIpD;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA65C3B"}
@@ -8,7 +8,6 @@ import { bundleRequire } from 'bundle-require';
8
8
  import { BUNDLE_REQUIRE_EXTERNALS } from '../utils/config.js';
9
9
  import { shouldBootWithLibrary } from '../utils/plugin-detection.js';
10
10
  import { printError, printServerReady, } from '../utils/format.js';
11
- import { STUDIO_PATH, resolveStudioPath, hasStudioDist, createStudioStaticPlugin, createStudioWriteApiPlugin, } from '../utils/studio.js';
12
11
  import { ACCOUNT_PATH, resolveAccountPath, hasAccountDist, createAccountStaticPlugin, } from '../utils/account.js';
13
12
  import { CONSOLE_PATH, resolveConsolePath, hasConsoleDist, createConsoleStaticPlugin, } from '../utils/console.js';
14
13
  import dotenvFlow from 'dotenv-flow';
@@ -135,9 +134,9 @@ export default class Serve extends Command {
135
134
  static flags = {
136
135
  port: Flags.string({ char: 'p', description: 'Server port', default: process.env.PORT ?? '3000' }),
137
136
  dev: Flags.boolean({ description: 'Run in development mode (load devPlugins)' }),
138
- ui: Flags.boolean({ description: 'Enable Studio UI at /_studio/ (default: true)', default: true, allowNo: true }),
137
+ ui: Flags.boolean({ description: 'Enable bundled UI portals (Account, Console) when the corresponding packages are installed (default: true)', default: true, allowNo: true }),
139
138
  console: Flags.boolean({
140
- description: 'Mount the Console UI at /_console/ when the package is installed (default: true). When disabled, Studio claims the root redirect.',
139
+ description: 'Mount the Console UI at /_console/ when the package is installed (default: true).',
141
140
  default: true,
142
141
  allowNo: true,
143
142
  }),
@@ -161,12 +160,12 @@ export default class Serve extends Command {
161
160
  * mirror this list on their per-project kernels.
162
161
  */
163
162
  static ALWAYS_ON_CAPABILITIES = Object.freeze([
164
- 'queue', 'job', 'cache', 'settings', 'email', 'storage',
163
+ 'queue', 'job', 'cache', 'settings', 'email', 'storage', 'sharing',
165
164
  ]);
166
165
  /**
167
166
  * Auto-registered plugin tiers. Plugins explicitly listed in
168
167
  * `config.plugins` are always loaded — tiers only gate the optional
169
- * auto-registration blocks below (AIService, I18n, Studio UI, etc.).
168
+ * auto-registration blocks below (AIService, I18n, UI portals, etc.).
170
169
  */
171
170
  static TIER_PRESETS = {
172
171
  minimal: ['core'],
@@ -219,7 +218,7 @@ export default class Serve extends Command {
219
218
  if (!artifactSource) {
220
219
  // Quick-start mode: `objectstack start` lets the user boot an
221
220
  // empty kernel with no config and no artifact, then install apps
222
- // from the marketplace via Studio. The CLI signals this by
221
+ // from the marketplace via the Console. The CLI signals this by
223
222
  // setting OS_BOOT_EMPTY=1 in the child env.
224
223
  if (process.env.OS_BOOT_EMPTY === '1') {
225
224
  useEmptyBoot = true;
@@ -353,7 +352,14 @@ export default class Serve extends Command {
353
352
  }
354
353
  else if (resolvedMode === 'standalone') {
355
354
  const { createStandaloneStack } = await import('@objectstack/runtime');
356
- const bootResult = await createStandaloneStack(config.standalone);
355
+ // Anchor the default sqlite database under the project folder
356
+ // (next to objectstack.config.ts) instead of the global
357
+ // ~/.objectstack home, so per-project data stays per-project.
358
+ const standaloneInput = {
359
+ ...(config.standalone ?? {}),
360
+ projectRoot: (config.standalone?.projectRoot ?? path.dirname(absolutePath)),
361
+ };
362
+ const bootResult = await createStandaloneStack(standaloneInput);
357
363
  config = { ...originalConfig, ...bootResult };
358
364
  }
359
365
  else {
@@ -856,15 +862,15 @@ export default class Serve extends Command {
856
862
  // Best-effort.
857
863
  }
858
864
  }
859
- // 5. Studio single-environment signal.
865
+ // 5. Runtime-config signal.
860
866
  //
861
867
  // The built-in `RuntimeConfigPlugin` (auto-registered below at
862
- // step 5b-ii) already responds to `GET /api/v1/studio/runtime-config`
863
- // with `{ singleEnvironment, defaultOrgId, defaultEnvironmentId }`,
864
- // so no extra plugin is needed here. Cloud / multi-environment
865
- // hosts ship their own runtime-config plugin in a separate
866
- // distribution; if the user config carries one already we skip
867
- // injecting the default one further down.
868
+ // step 5b-ii) responds to `GET /api/v1/runtime/config` with
869
+ // `{ singleEnvironment, defaultOrgId, defaultEnvironmentId }` so
870
+ // external UI consumers can discover the runtime shape. Cloud /
871
+ // multi-environment hosts ship their own runtime-config plugin
872
+ // in a separate distribution; if the user config carries one
873
+ // already we skip injecting the default one further down.
868
874
  // 5b. Auto-register MarketplaceProxyPlugin so the runtime console's
869
875
  // marketplace browse UI works in `objectstack dev` without manually
870
876
  // wiring the plugin into every user's objectstack.config.ts.
@@ -905,19 +911,18 @@ export default class Serve extends Command {
905
911
  console.warn(chalk.yellow(` ⚠ MarketplaceProxyPlugin auto-inject failed: ${err?.message ?? err}`));
906
912
  }
907
913
  }
908
- // 5b-ii. Auto-register RuntimeConfigPlugin so the Console / Studio SPA
909
- // can fetch `/api/v1/runtime/config` at boot. Without it the SPA
910
- // 404s on the endpoint, falls back to defaults (installLocal:false),
911
- // and the marketplace Install button prompts "install to cloud"
912
- // instead of installing into the local `objectstack dev` runtime.
914
+ // 5b-ii. Auto-register RuntimeConfigPlugin so the Console SPA (and
915
+ // any external UI consumer) can fetch `/api/v1/runtime/config` at
916
+ // boot. Without it the SPA 404s on the endpoint, falls back to
917
+ // defaults (installLocal:false), and the marketplace Install
918
+ // button prompts "install to cloud" instead of installing into
919
+ // the local `objectstack dev` runtime.
913
920
  //
914
921
  // For a vanilla user stack (objectstack dev) this runtime IS the
915
922
  // install target: cloudUrl='' (stay on same origin so the SPA hits
916
923
  // the proxied marketplace) and installLocal=true.
917
924
  const hasRuntimeConfig = plugins.some((p) => p?.name === 'com.objectstack.runtime.runtime-config'
918
- || p?.constructor?.name === 'RuntimeConfigPlugin'
919
- || p?.name === 'com.objectstack.studio.runtime-config'
920
- || p?.name === 'com.objectstack.studio.single-environment');
925
+ || p?.constructor?.name === 'RuntimeConfigPlugin');
921
926
  if (!hasRuntimeConfig) {
922
927
  try {
923
928
  const runtimePkg = '@objectstack/runtime';
@@ -935,7 +940,7 @@ export default class Serve extends Command {
935
940
  }
936
941
  // 5c. Auto-register AuthPlugin (and paired Security/Audit) when the
937
942
  // 'auth' tier is enabled and no auth plugin is already configured.
938
- // The Studio + Account portals expect /api/v1/auth/* to be served by
943
+ // The Account portal expects /api/v1/auth/* to be served by
939
944
  // better-auth via @objectstack/plugin-auth. Without this block,
940
945
  // running `objectstack dev` on a vanilla user stack would 404 on
941
946
  // login/register flows.
@@ -1022,7 +1027,7 @@ export default class Serve extends Command {
1022
1027
  }
1023
1028
  }
1024
1029
  // Dev convenience: keep `http://localhost:*` so plain
1025
- // `localhost:<port>` still works for non-preview Studio/Console.
1030
+ // `localhost:<port>` still works for non-preview Console.
1026
1031
  if (isDev && !trustedOrigins.includes('http://localhost:*')) {
1027
1032
  trustedOrigins.push('http://localhost:*');
1028
1033
  }
@@ -1108,11 +1113,12 @@ export default class Serve extends Command {
1108
1113
  try {
1109
1114
  const securityPkg = '@objectstack/plugin-security';
1110
1115
  const { SecurityPlugin } = await import(/* webpackIgnore: true */ securityPkg);
1111
- // `OS_MULTI_TENANT=false` disables wildcard tenant_isolation
1116
+ // `OS_MULTI_TENANT=true` enables wildcard tenant_isolation
1112
1117
  // RLS policies and the `organization_id` auto-injection on
1113
- // insert. Keep multi-tenant on by default most ObjectStack
1114
- // deployments are multi-org.
1115
- const multiTenant = String(process.env.OS_MULTI_TENANT ?? 'true').toLowerCase() !== 'false';
1118
+ // insert. Default is off so local `dev`/`start` runs seed
1119
+ // demo data inline at boot without requiring an org
1120
+ // enable explicitly for cloud / multi-org deployments.
1121
+ const multiTenant = String(process.env.OS_MULTI_TENANT ?? 'false').toLowerCase() !== 'false';
1116
1122
  await kernel.use(new SecurityPlugin({ multiTenant }));
1117
1123
  trackPlugin('Security');
1118
1124
  }
@@ -1458,50 +1464,23 @@ export default class Serve extends Command {
1458
1464
  }
1459
1465
  }
1460
1466
  }
1461
- // ── Studio UI ─────────────────────────────────────────────────
1462
- // In dev mode, Studio UI is enabled by default (use --no-ui to disable).
1463
- // Always serves the pre-built dist/ — no Vite dev server, no extra port.
1467
+ // ── UI portals ────────────────────────────────────────────────
1468
+ // In dev mode, the bundled UI portals (Account, Console) are
1469
+ // enabled by default (use --no-ui to disable). Always serve the
1470
+ // pre-built `dist/` — no Vite dev server, no extra port.
1464
1471
  const enableUI = flags.ui && tierEnabled('ui');
1465
1472
  if (enableUI) {
1466
- // Pre-detect Console availability so we can demote Studio's root
1467
- // redirect when the Console is going to claim `/`.
1468
- // The `--no-console` flag (or OS_DISABLE_CONSOLE=1 env var) lets a
1469
- // host (e.g. apps/cloud) opt out of the Console entirely so Studio
1470
- // owns `/` — useful for control-plane deployments where the
1471
- // runtime Console is meaningless.
1473
+ // Pre-detect Console availability. The `--no-console` flag (or
1474
+ // OS_DISABLE_CONSOLE=1 env var) lets a host (e.g. apps/cloud)
1475
+ // opt out of the Console entirely useful for control-plane
1476
+ // deployments where the runtime Console is meaningless.
1472
1477
  const consoleEnabled = flags.console && process.env.OS_DISABLE_CONSOLE !== '1';
1473
1478
  const consolePath = consoleEnabled ? resolveConsolePath() : null;
1474
1479
  const consoleWillMount = !!(consolePath && hasConsoleDist(consolePath));
1475
- // The `OS_DISABLE_STUDIO=1` env var lets a host (e.g. apps/cloud,
1476
- // which is a pure control plane) opt out of the Studio designer
1477
- // entirely while keeping Account/Console. Studio is meaningless
1478
- // when there are no per-project kernels in the same process.
1479
- const studioEnabled = process.env.OS_DISABLE_STUDIO !== '1';
1480
- if (studioEnabled) {
1481
- const studioPath = resolveStudioPath();
1482
- if (!studioPath) {
1483
- console.warn(chalk.yellow(` ⚠ @object-ui/studio not found — skipping UI (run \`pnpm add @object-ui/studio\`)`));
1484
- }
1485
- else if (hasStudioDist(studioPath)) {
1486
- const distPath = path.join(studioPath, 'dist');
1487
- // Write API must register BEFORE the static plugin so its POST
1488
- // routes win over `/_studio/*` GET fallback (Hono matches by
1489
- // method, but registering first keeps semantics obvious).
1490
- await kernel.use(createStudioWriteApiPlugin(process.cwd(), { isDev }));
1491
- await kernel.use(createStudioStaticPlugin(distPath, {
1492
- isDev,
1493
- rootRedirect: !consoleWillMount,
1494
- }));
1495
- trackPlugin('StudioUI');
1496
- }
1497
- else {
1498
- console.warn(chalk.yellow(` ⚠ Studio dist not found — install \`@object-ui/studio\` (already built) or run \`pnpm --filter @object-ui/studio build\` in the objectui workspace`));
1499
- }
1500
- }
1501
1480
  // ── Account portal ─────────────────────────────────────────
1502
- // The account portal sits next to Studio under `/_account/` and
1503
- // follows the same enable rules — it's a self-service surface
1504
- // for end-users (login, organizations, profile, sessions).
1481
+ // The account portal mounts under `/_account/` and is a
1482
+ // self-service surface for end-users (login, organizations,
1483
+ // profile, sessions).
1505
1484
  const accountPath = resolveAccountPath();
1506
1485
  if (!accountPath) {
1507
1486
  console.warn(chalk.yellow(` ⚠ @objectstack/account not found — skipping Account UI`));
@@ -1517,10 +1496,9 @@ export default class Serve extends Command {
1517
1496
  // ── Console portal ──────────────────────────────────────────
1518
1497
  // The opinionated, fork-ready runtime console (`@object-ui/console`,
1519
1498
  // published from the objectstack-ai/objectui monorepo) mounts under
1520
- // `/_console/` exactly like Studio/Account. When present, it owns
1521
- // root `/` redirect (preferred default UI). It is optional — we
1522
- // only mount it when the package resolves and a pre-built `dist/`
1523
- // is present.
1499
+ // `/_console/`. When present, it owns the root `/` redirect
1500
+ // (preferred default UI). It is optional — we only mount it when
1501
+ // the package resolves and a pre-built `dist/` is present.
1524
1502
  if (consolePath) {
1525
1503
  if (consoleWillMount) {
1526
1504
  const consoleDistPath = path.join(consolePath, 'dist');
@@ -1581,12 +1559,11 @@ export default class Serve extends Command {
1581
1559
  pluginCount: loadedPlugins.length,
1582
1560
  pluginNames: loadedPlugins,
1583
1561
  uiEnabled: enableUI,
1584
- studioPath: STUDIO_PATH,
1585
1562
  accountPath: ACCOUNT_PATH,
1586
1563
  consolePath: loadedPlugins.includes('ConsoleUI') ? CONSOLE_PATH : undefined,
1587
1564
  driverLabel: resolvedDriverLabel,
1588
1565
  databaseUrl: redactDbUrl(resolvedDatabaseUrl),
1589
- multiTenant: String(process.env.OS_MULTI_TENANT ?? 'true').toLowerCase() !== 'false',
1566
+ multiTenant: String(process.env.OS_MULTI_TENANT ?? 'false').toLowerCase() !== 'false',
1590
1567
  });
1591
1568
  // Kernel already registers SIGINT/SIGTERM handlers during bootstrap.
1592
1569
  // No duplicate handler needed here — just keep the process alive.