forgeos 0.1.0-alpha.49 → 0.1.0-alpha.50

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/AGENTS.md CHANGED
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.49 input=a7c20b1d3492dcb4111d826ff8622647abd8f6be499cffb3c27e077c9b3267b1 content=721818a6f9a664aa898092d4aa5cd68cbbd8ad6e150c7d3ad3ef785a2e3fcf53
1
+ // @forge-generated generator=0.1.0-alpha.50 input=5f918b7dab43b47f2774c505897503c0b5ddc26d4022167410ed9f3b76190ee6 content=721818a6f9a664aa898092d4aa5cd68cbbd8ad6e150c7d3ad3ef785a2e3fcf53
2
2
  # AGENTS.md
3
3
 
4
4
  <!-- forge-generated:start -->
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # forgeos
2
2
 
3
+ ## 0.1.0-alpha.50
4
+
5
+ ### Patch Changes
6
+
7
+ - Tighten the no-dashboard WorkOS real setup/proof handoff.
8
+
9
+ - WorkOS hosted setup now records explicit `WORKOS_MODE=agent npx --yes
10
+ workos@latest auth login --json` shell guidance when CLI login is required.
11
+ - Failed `forge workos setup --real` login attempts now tell the operator to
12
+ rerun the same setup command after completing OAuth/device-code login,
13
+ instead of pointing generically at `prove --real`.
14
+ - Human output now includes the login command, device URL/code when present,
15
+ and the exact Forge rerun command for agent-friendly continuation.
16
+
3
17
  ## 0.1.0-alpha.49
4
18
 
5
19
  ### Patch Changes
package/docs/changelog.md CHANGED
@@ -6,6 +6,16 @@ The canonical source file in the repository is `CHANGELOG.md`.
6
6
 
7
7
  ## Unreleased
8
8
 
9
+ ## 0.1.0-alpha.50
10
+
11
+ - WorkOS hosted setup now includes explicit
12
+ `WORKOS_MODE=agent npx --yes workos@latest auth login --json` guidance when
13
+ CLI OAuth/device-code login is required.
14
+ - `forge workos setup --real` now tells the operator to rerun the same setup
15
+ command after login instead of pointing generically at `prove --real`.
16
+ - Human WorkOS output now includes the login command, device URL/code, and exact
17
+ Forge rerun command for no-dashboard agent continuation.
18
+
9
19
  ## 0.1.0-alpha.49
10
20
 
11
21
  - `forge release doctor --json` now reports npm `alpha` and `latest` dist-tag
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "forgeos",
3
- "version": "0.1.0-alpha.49",
3
+ "version": "0.1.0-alpha.50",
4
4
  "description": "Agent-native application framework and compiler for building Forge apps without a mandatory dashboard.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -1 +1 @@
1
- {"defaultProvider":"local","diagnostics":[],"env":{"deployEnv":"FORGE_DEPLOY_ENV","deployId":"FORGE_DEPLOY_ID","publicReleaseId":"NEXT_PUBLIC_FORGE_RELEASE_ID","releaseId":"FORGE_RELEASE_ID"},"gitSha":"unknown","optionalProviders":["local","sentry-compatible","sentry","glitchtip","bugsink","otel","custom"],"packageName":"forgeos","packageVersion":"0.1.0-alpha.49","releaseId":"forgeos@0.1.0-alpha.49+unknown","schemaVersion":"0.1.0"}
1
+ {"defaultProvider":"local","diagnostics":[],"env":{"deployEnv":"FORGE_DEPLOY_ENV","deployId":"FORGE_DEPLOY_ID","publicReleaseId":"NEXT_PUBLIC_FORGE_RELEASE_ID","releaseId":"FORGE_RELEASE_ID"},"gitSha":"unknown","optionalProviders":["local","sentry-compatible","sentry","glitchtip","bugsink","otel","custom"],"packageName":"forgeos","packageVersion":"0.1.0-alpha.50","releaseId":"forgeos@0.1.0-alpha.50+unknown","schemaVersion":"0.1.0"}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.49 input=a7c20b1d3492dcb4111d826ff8622647abd8f6be499cffb3c27e077c9b3267b1 content=bfe9659e5f5a5d2d52e6ac7eb6c13d2bc356c8bf95724fafc6e10fe4641f2104
1
+ // @forge-generated generator=0.1.0-alpha.50 input=5f918b7dab43b47f2774c505897503c0b5ddc26d4022167410ed9f3b76190ee6 content=5bb2a5849e690e58325fbd495bd3b1ad63a42f77c8c1d06464b64c27f9192c6c
2
2
  export const releaseManifest = {
3
3
  "defaultProvider": "local",
4
4
  "diagnostics": [],
@@ -19,7 +19,7 @@ export const releaseManifest = {
19
19
  "custom"
20
20
  ],
21
21
  "packageName": "forgeos",
22
- "packageVersion": "0.1.0-alpha.49",
23
- "releaseId": "forgeos@0.1.0-alpha.49+unknown",
22
+ "packageVersion": "0.1.0-alpha.50",
23
+ "releaseId": "forgeos@0.1.0-alpha.50+unknown",
24
24
  "schemaVersion": "0.1.0"
25
25
  } as const;
@@ -347,7 +347,10 @@ export interface WorkOSCliAuthSummary {
347
347
  method: "api-key" | "cli";
348
348
  skippedReason?: string;
349
349
  statusCommand: string[];
350
+ statusShellCommand?: string;
350
351
  loginCommand?: string[];
352
+ loginShellCommand?: string;
353
+ rerunCommand?: string;
351
354
  loginAttempted: boolean;
352
355
  authenticated?: boolean;
353
356
  email?: string;
@@ -414,9 +417,21 @@ function workOSCliAuthCheck(auth: WorkOSCliAuthSummary): WorkOSCheck {
414
417
  };
415
418
  }
416
419
 
420
+ function workOSCliAuthShellCommand(command: string[]): string {
421
+ return `WORKOS_MODE=agent ${command.join(" ")}`;
422
+ }
423
+
424
+ function workOSHostedRerunCommand(options: WorkOSCommandOptions): string {
425
+ const file = options.file ?? DEFAULT_SEED_FILE;
426
+ const subcommand = options.subcommand === "setup" ? "setup" : "prove";
427
+ return `forge workos ${subcommand} --real --file ${file} --json`;
428
+ }
429
+
417
430
  function ensureWorkOSCliAuthForHosted(options: WorkOSCommandOptions): WorkOSCliAuthSummary {
418
431
  const env = readRealEnv(options.workspaceRoot);
419
432
  const statusCommand = ["npx", "--yes", "workos@latest", "auth", "status", "--json"];
433
+ const statusShellCommand = workOSCliAuthShellCommand(statusCommand);
434
+ const rerunCommand = workOSHostedRerunCommand(options);
420
435
  if (hasValue(env, "WORKOS_API_KEY")) {
421
436
  return {
422
437
  required: false,
@@ -424,6 +439,7 @@ function ensureWorkOSCliAuthForHosted(options: WorkOSCommandOptions): WorkOSCliA
424
439
  method: "api-key",
425
440
  skippedReason: "WORKOS_API_KEY is present; WorkOS CLI browser login is optional for hosted setup",
426
441
  statusCommand,
442
+ statusShellCommand,
427
443
  loginAttempted: false,
428
444
  detail: "WORKOS_API_KEY is present; hosted WorkOS setup can use API key authentication",
429
445
  nextActions: [],
@@ -444,6 +460,7 @@ function ensureWorkOSCliAuthForHosted(options: WorkOSCommandOptions): WorkOSCliA
444
460
  ok: true,
445
461
  method: "cli",
446
462
  statusCommand,
463
+ statusShellCommand,
447
464
  loginAttempted: false,
448
465
  authenticated,
449
466
  ...(email ? { email } : {}),
@@ -460,6 +477,7 @@ function ensureWorkOSCliAuthForHosted(options: WorkOSCommandOptions): WorkOSCliA
460
477
  }
461
478
 
462
479
  const loginCommand = ["npx", "--yes", "workos@latest", "auth", "login", "--json"];
480
+ const loginShellCommand = workOSCliAuthShellCommand(loginCommand);
463
481
  const login = runExternalCommand(loginCommand, options);
464
482
  const instructions = extractWorkOSLoginInstructions(login.stdout, login.stderr);
465
483
  if (login.status === 0) {
@@ -468,7 +486,9 @@ function ensureWorkOSCliAuthForHosted(options: WorkOSCommandOptions): WorkOSCliA
468
486
  ok: true,
469
487
  method: "cli",
470
488
  statusCommand,
489
+ statusShellCommand,
471
490
  loginCommand,
491
+ loginShellCommand,
472
492
  loginAttempted: true,
473
493
  authenticated: true,
474
494
  status: status.status,
@@ -480,15 +500,19 @@ function ensureWorkOSCliAuthForHosted(options: WorkOSCommandOptions): WorkOSCliA
480
500
  }
481
501
 
482
502
  const nextActions = [
503
+ loginShellCommand,
483
504
  "complete the WorkOS CLI OAuth/device-code login shown in loginInstructions",
484
- "rerun forge workos prove --real --file workos-seed.yml --json",
505
+ `rerun ${rerunCommand}`,
485
506
  ];
486
507
  return {
487
508
  required: true,
488
509
  ok: false,
489
510
  method: "cli",
490
511
  statusCommand,
512
+ statusShellCommand,
491
513
  loginCommand,
514
+ loginShellCommand,
515
+ rerunCommand,
492
516
  loginAttempted: true,
493
517
  authenticated,
494
518
  ...(email ? { email } : {}),
@@ -2839,12 +2863,18 @@ export function formatWorkOSHuman(result: WorkOSCommandResult): string {
2839
2863
  lines.push(`WorkOS CLI authenticated${cliAuth.email ? ` as ${cliAuth.email}` : ""}; hosted setup can proceed without opening the dashboard.`);
2840
2864
  } else if (!cliAuth.ok && cliAuth.loginInstructions) {
2841
2865
  lines.push("WorkOS CLI login required before hosted setup can proceed.");
2866
+ if (cliAuth.loginShellCommand) {
2867
+ lines.push(`login: ${cliAuth.loginShellCommand}`);
2868
+ }
2842
2869
  if (cliAuth.loginInstructions.url) {
2843
2870
  lines.push(`open: ${cliAuth.loginInstructions.url}`);
2844
2871
  }
2845
2872
  if (cliAuth.loginInstructions.code) {
2846
2873
  lines.push(`code: ${cliAuth.loginInstructions.code}`);
2847
2874
  }
2875
+ if (cliAuth.rerunCommand) {
2876
+ lines.push(`rerun: ${cliAuth.rerunCommand}`);
2877
+ }
2848
2878
  } else if (cliAuth.method === "api-key") {
2849
2879
  lines.push("WorkOS hosted setup will use WORKOS_API_KEY; CLI browser login is optional.");
2850
2880
  }
@@ -1,3 +1,3 @@
1
- export const FORGEOS_VERSION = "0.1.0-alpha.49";
1
+ export const FORGEOS_VERSION = "0.1.0-alpha.50";
2
2
  export const GENERATOR_VERSION = FORGEOS_VERSION;
3
3
  export const CLI_VERSION = FORGEOS_VERSION;