@userreason/wizard 0.3.0 → 0.3.1

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.
Files changed (36) hide show
  1. package/README.md +41 -49
  2. package/dist/agent-note.js +6 -5
  3. package/dist/agent-skill.js +5 -4
  4. package/dist/analytics.js +2 -2
  5. package/dist/bin.js +55 -51
  6. package/dist/{chunk-SFODN2YB.js → chunk-4INLEQE2.js} +2 -2
  7. package/dist/{chunk-77SK7TKZ.js → chunk-7AAH6C4L.js} +928 -631
  8. package/dist/{chunk-Z6ZY7X2K.js → chunk-7O7H3PIM.js} +6 -6
  9. package/dist/{chunk-VXWLSQYK.js → chunk-CSZW2ULJ.js} +39 -17
  10. package/dist/{chunk-P6DOSGRZ.js → chunk-DMXUXEQI.js} +1 -1
  11. package/dist/{chunk-GOYBYAUH.js → chunk-EVNEX5N5.js} +1 -1
  12. package/dist/{chunk-UN24JFV2.js → chunk-KF37D5WL.js} +1 -1
  13. package/dist/{chunk-5IO5LY22.js → chunk-LEJFE4U5.js} +2 -2
  14. package/dist/{chunk-MFGJ2KPT.js → chunk-NNPYUATH.js} +1 -1
  15. package/dist/chunk-PJQOSDYS.js +50 -0
  16. package/dist/{chunk-YYFC7TM2.js → chunk-Q5U5UOQN.js} +7 -5
  17. package/dist/{chunk-NZ65XDNL.js → chunk-SB3AYQWG.js} +4 -4
  18. package/dist/{chunk-CADA5WZ3.js → chunk-TOID3NYP.js} +13 -6
  19. package/dist/{chunk-ZHHIHHLU.js → chunk-TRBSH5G7.js} +5 -5
  20. package/dist/{chunk-2UEUVLCB.js → chunk-XASPGFYK.js} +3 -3
  21. package/dist/{chunk-F4FKAUQN.js → chunk-XPFKXLIZ.js} +2 -2
  22. package/dist/{chunk-HIF6NUNK.js → chunk-ZHJV247H.js} +6 -8
  23. package/dist/cli-access.js +3 -3
  24. package/dist/connection.js +2 -2
  25. package/dist/first-survey.js +2 -2
  26. package/dist/footer.js +5 -4
  27. package/dist/global-cli.js +5 -4
  28. package/dist/install-diagnostics.js +9 -0
  29. package/dist/integrate.js +4 -3
  30. package/dist/project.js +3 -2
  31. package/dist/setup-flow.js +9 -8
  32. package/dist/setup.js +8 -7
  33. package/dist/startup.js +2 -2
  34. package/dist/state.js +5 -4
  35. package/dist/ui.js +2 -2
  36. package/package.json +1 -1
package/README.md CHANGED
@@ -36,21 +36,12 @@ terminal. The [first survey guide](https://docs.userreason.com/get-started/first
36
36
  walks through creating and publishing a survey. Installing the SDK does not
37
37
  publish a survey.
38
38
 
39
- In development mode (`--dev`), an interactive installation continues into a
40
- guided first-survey flow. Choose an improvement, workflow-friction or satisfaction
41
- goal and immediately review a ready-to-edit question. You can save that starter
42
- without AI or skip the step. Optional AI personalization runs while you review
43
- the starter and never replaces your edits automatically.
44
-
45
- Local source preparation starts after sign-in and stays in memory. It does not
46
- upload code, read Git history or make a model call. Personalization requires a
47
- separate review and approval of the exact source packet. Changed files are
48
- rechecked before upload and before using a source-based suggestion.
49
-
50
- Saving creates an unpublished draft. Choose a verified completion event or
51
- configure audience and timing in the editor; the latter leaves the draft unable
52
- to match anyone. No survey is published automatically. This development flow
53
- does not change the production wizard or require an SDK release.
39
+ In development mode (`--dev`), onboarding opens in the browser by default.
40
+ Survey suggestions and the Agent test step are paused in production and development.
41
+ Setup does not prepare or upload application source for recommendations, and it
42
+ neither offers nor creates suggested drafts. The terminal flow skips the
43
+ first-survey offer too. You can create surveys in the dashboard after setup.
44
+ Use `--terminal-setup` to choose terminal onboarding explicitly.
54
45
 
55
46
  For a different application directory:
56
47
 
@@ -178,9 +169,16 @@ send and store no analytics. The bounded queue stays outside the project,
178
169
  expires after seven days, and retries best-effort uploads with short deadlines.
179
170
  Measurement failures never fail an installation.
180
171
 
181
- ### Browser-guided setup (explicit opt-in)
172
+ ### Browser-guided setup
182
173
 
183
- Prepared compatible builds support:
174
+ Development onboarding uses the browser by default, including local development
175
+ package builds. With a published package, select the development API:
176
+
177
+ ```sh
178
+ npx -y @userreason/wizard@latest --dev
179
+ ```
180
+
181
+ Production still requires `--browser-setup`. Compatible builds also support:
184
182
 
185
183
  ```sh
186
184
  npx -y @userreason/wizard@latest --browser-setup
@@ -188,28 +186,27 @@ npx -y @userreason/wizard@latest --resume-setup SETUP_UUID
188
186
  ```
189
187
 
190
188
  Run from the same project and use the same `--api-url` or `--api-environment`
191
- on resume. A custom API also needs its trusted `--browser-origin`. Ordinary
192
- startup keeps the existing terminal wizard. If a server has not enabled browser
193
- setup, a new connection falls back before creating a session or local effects.
189
+ on resume. A custom API also needs its trusted `--browser-origin`.
190
+ Use `--terminal-setup` to choose terminal onboarding explicitly. Scripted runs
191
+ with `--yes` or `--json`, package refresh, dry runs, and explicit terminal
192
+ installation/resource flags retain their existing behavior; an explicit
193
+ `--browser-setup` still rejects incompatible terminal options.
194
+ If a server has not enabled browser setup, a new connection falls back before
195
+ creating a session or local effects.
194
196
  Malformed protocol data and already-started setups never fall back silently.
195
197
  Server rollout flags remain off by default; publication is a separate release.
196
198
 
197
199
  The browser owns workspace/site selection, optional choices, local-plan approval,
198
- source/provider consent, candidate selection, inactive draft saves, sample skip,
199
- finish and cancellation. The local runner executes only approved typed effects
200
+ finish and cancellation. Source analysis, suggested drafts and the Agent test
201
+ remain implemented but are hidden and skipped while their rollout flags are off. The local runner executes only approved typed effects
200
202
  using the separate owner-only setup capability. It does not read or replace
201
203
  normal CLI credentials. Stopping the local process leaves the setup resumable;
202
204
  cancelling in the browser does not undo completed edits or delete created drafts.
203
205
  Terminal results list verified, failed and manual outcomes separately.
204
206
 
205
- Source analysis starts only when the server advertises availability. Before
206
- consent, the terminal displays the exact bounded excerpts, hashes and line ranges;
207
- the browser receives metadata only. No Git history is collected. Approving the
208
- source packet and providers is separate from approving installation. Immediately
209
- before upload, the runner revalidates full files and installed package versions.
210
- Changed source requires fresh browser review. Raw source stays in memory and is
211
- not written to setup receipts. A lost analysis response is polled rather than
212
- repeated; browser retry starts a fresh preparation and consent.
207
+ Source analysis starts only when the server advertises availability. It is
208
+ currently disabled for production and development onboarding, including resumed
209
+ setups. No onboarding recommendation providers are called.
213
210
 
214
211
  The optional footer choice defaults to No. `planFooter` preserves the reachable
215
212
  host footer and adds a plain `Powered by UserReason` link when placement is
@@ -218,25 +215,20 @@ Package managers use fixed allowlisted arguments, disabled scripts and exact
218
215
  versions. Lockfiles are declared generated outputs and verified by recorded hashes.
219
216
  Interrupted commands reconcile local receipts instead of blindly reinstalling.
220
217
 
221
- At the optional agent test, the terminal prints a setup-scoped command and the
222
- prompt “What do UserReason dummy respondents think?”. It reads only the static
223
- sample and records its receipt; it does not read production responses. Installing
224
- the agent skill and reading that sample never grant ongoing CLI access. Authorize
225
- continuing access separately with `userreason login --open` when wanted.
226
-
227
- ### Optional first survey
228
-
229
- After a successful interactive installation, choose Review suggestions, Continue
230
- with my coding agent, or Finish setup. `--yes`, JSON and diff modes never approve
231
- source analysis. Suggestions reuse the CLI's bounded collector, explicit provider
232
- consent and per-candidate draft review; failures leave installation intact. An
233
- ongoing site-read/survey-write connection is required, not the installation grant.
234
- No automatic source edits or publication. Resume/cancel/delete with the CLI's
235
- `first-survey` group. See the CLI README and installed skill for privacy, retention,
236
- hash-guarded manual instrumentation and separate publication authorization.
237
-
238
- The production profile for wizard 0.3.0 selects `@userreason/js@0.5.0` and
239
- `@userreason/cli@0.2.0`. New installs use those exact versions; an installed
218
+ The Agent test and terminal first-survey offer are paused. Installing the agent
219
+ skill never grants ongoing CLI access. Authorize continuing access separately
220
+ with `userreason login --open` when wanted. Standalone CLI survey tools remain
221
+ available outside onboarding.
222
+
223
+ The production profile for wizard 0.3.1 selects `@userreason/js@0.5.3` and
224
+ `@userreason/cli@0.2.1`. New installs use those exact versions; an installed
240
225
  stable patch in the same release line is reused. Earlier SDK 0.4 and CLI 0.1
241
226
  releases are upgraded when installation is selected. Browser setup still
242
227
  requires explicit `--browser-setup` and a server advertising the capability.
228
+
229
+ Browser-guided installation prints package-manager failures in the connected
230
+ terminal, including failed registry requests when npm provides them. Diagnostic
231
+ text is redacted and retained in the private local setup receipt for resume.
232
+ A finished browser session with failed local steps is reported as incomplete and
233
+ the wizard exits unsuccessfully. Project `.npmrc` comments and authentication
234
+ references are preserved; registry configuration only adds the UserReason scope.
@@ -3,12 +3,13 @@ import {
3
3
  applyAgentNote,
4
4
  offerAgentNote,
5
5
  planAgentNote
6
- } from "./chunk-Z6ZY7X2K.js";
7
- import "./chunk-GOYBYAUH.js";
8
- import "./chunk-5IO5LY22.js";
9
- import "./chunk-CADA5WZ3.js";
6
+ } from "./chunk-7O7H3PIM.js";
7
+ import "./chunk-LEJFE4U5.js";
8
+ import "./chunk-TOID3NYP.js";
9
+ import "./chunk-PJQOSDYS.js";
10
10
  import "./chunk-NMHTFC5Q.js";
11
- import "./chunk-77SK7TKZ.js";
11
+ import "./chunk-EVNEX5N5.js";
12
+ import "./chunk-7AAH6C4L.js";
12
13
  import "./chunk-WL3NOIM6.js";
13
14
  export {
14
15
  applyAgentNote,
@@ -3,11 +3,12 @@ import {
3
3
  applyAgentSkill,
4
4
  offerAgentSkill,
5
5
  planAgentSkill
6
- } from "./chunk-NZ65XDNL.js";
7
- import "./chunk-GOYBYAUH.js";
8
- import "./chunk-CADA5WZ3.js";
6
+ } from "./chunk-SB3AYQWG.js";
7
+ import "./chunk-TOID3NYP.js";
8
+ import "./chunk-PJQOSDYS.js";
9
9
  import "./chunk-NMHTFC5Q.js";
10
- import "./chunk-77SK7TKZ.js";
10
+ import "./chunk-EVNEX5N5.js";
11
+ import "./chunk-7AAH6C4L.js";
11
12
  import "./chunk-WL3NOIM6.js";
12
13
  export {
13
14
  applyAgentSkill,
package/dist/analytics.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { createRequire as createWizardRequire } from 'node:module'; import { fileURLToPath as wizardFileURLToPath } from 'node:url'; import { dirname as wizardDirname } from 'node:path'; const require = createWizardRequire(import.meta.url); const __filename = wizardFileURLToPath(import.meta.url); const __dirname = wizardDirname(__filename);
2
2
  import {
3
3
  WizardAnalytics
4
- } from "./chunk-UN24JFV2.js";
5
- import "./chunk-77SK7TKZ.js";
4
+ } from "./chunk-KF37D5WL.js";
5
+ import "./chunk-7AAH6C4L.js";
6
6
  import "./chunk-WL3NOIM6.js";
7
7
  export {
8
8
  WizardAnalytics
package/dist/bin.js CHANGED
@@ -1,62 +1,48 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as createWizardRequire } from 'node:module'; import { fileURLToPath as wizardFileURLToPath } from 'node:url'; import { dirname as wizardDirname } from 'node:path'; const require = createWizardRequire(import.meta.url); const __filename = wizardFileURLToPath(import.meta.url); const __dirname = wizardDirname(__filename);
3
+ import {
4
+ runBrowserWizard
5
+ } from "./chunk-CSZW2ULJ.js";
6
+ import {
7
+ clearInstallation,
8
+ resolveInstallation,
9
+ saveInstallation,
10
+ savedInstallation
11
+ } from "./chunk-XASPGFYK.js";
3
12
  import {
4
13
  offerAgentNote,
5
14
  planAgentNote
6
- } from "./chunk-Z6ZY7X2K.js";
15
+ } from "./chunk-7O7H3PIM.js";
7
16
  import {
8
17
  offerCliAccess
9
- } from "./chunk-F4FKAUQN.js";
18
+ } from "./chunk-XPFKXLIZ.js";
10
19
  import {
11
20
  offerGlobalCli
12
- } from "./chunk-ZHHIHHLU.js";
21
+ } from "./chunk-TRBSH5G7.js";
13
22
  import {
14
23
  WizardAnalytics
15
- } from "./chunk-UN24JFV2.js";
24
+ } from "./chunk-KF37D5WL.js";
16
25
  import {
17
26
  beginFirstSurveyPreparation,
18
27
  offerFirstSurvey
19
- } from "./chunk-HIF6NUNK.js";
20
- import {
21
- runBrowserWizard
22
- } from "./chunk-VXWLSQYK.js";
23
- import "./chunk-YYFC7TM2.js";
24
- import "./chunk-SFODN2YB.js";
28
+ } from "./chunk-ZHJV247H.js";
29
+ import "./chunk-Q5U5UOQN.js";
30
+ import "./chunk-4INLEQE2.js";
25
31
  import {
26
32
  offerAgentSkill,
27
33
  planAgentSkill
28
- } from "./chunk-NZ65XDNL.js";
34
+ } from "./chunk-SB3AYQWG.js";
29
35
  import {
30
36
  ensureCurrentWizard,
31
37
  wizardVersion
32
- } from "./chunk-MFGJ2KPT.js";
33
- import {
34
- Cancelled,
35
- Terminal,
36
- approvalStatus,
37
- clean,
38
- normalizeOrigin,
39
- openBrowser
40
- } from "./chunk-GOYBYAUH.js";
41
- import {
42
- BrowserConnectionUnavailable,
43
- compatibilityCredentials,
44
- connectInstallation,
45
- memoryCredentials
46
- } from "./chunk-P6DOSGRZ.js";
47
- import {
48
- clearInstallation,
49
- resolveInstallation,
50
- saveInstallation,
51
- savedInstallation
52
- } from "./chunk-2UEUVLCB.js";
38
+ } from "./chunk-NNPYUATH.js";
53
39
  import {
54
40
  applyIntegration,
55
41
  detectInstallation,
56
42
  integrationAdditions,
57
43
  integrationPreview,
58
44
  planIntegration
59
- } from "./chunk-5IO5LY22.js";
45
+ } from "./chunk-LEJFE4U5.js";
60
46
  import {
61
47
  SdkInstallError,
62
48
  cliCommand,
@@ -70,8 +56,23 @@ import {
70
56
  sdkInstallCommand,
71
57
  verifyConfiguration,
72
58
  writeIntegration
73
- } from "./chunk-CADA5WZ3.js";
59
+ } from "./chunk-TOID3NYP.js";
60
+ import "./chunk-PJQOSDYS.js";
74
61
  import "./chunk-NMHTFC5Q.js";
62
+ import {
63
+ Cancelled,
64
+ Terminal,
65
+ approvalStatus,
66
+ clean,
67
+ normalizeOrigin,
68
+ openBrowser
69
+ } from "./chunk-EVNEX5N5.js";
70
+ import {
71
+ BrowserConnectionUnavailable,
72
+ compatibilityCredentials,
73
+ connectInstallation,
74
+ memoryCredentials
75
+ } from "./chunk-DMXUXEQI.js";
75
76
  import {
76
77
  ApiError,
77
78
  AuthenticationError,
@@ -86,7 +87,7 @@ import {
86
87
  resolveCredentials,
87
88
  saveConfig,
88
89
  uuid
89
- } from "./chunk-77SK7TKZ.js";
90
+ } from "./chunk-7AAH6C4L.js";
90
91
  import "./chunk-WL3NOIM6.js";
91
92
 
92
93
  // src/bin.ts
@@ -96,7 +97,8 @@ var help = `UserReason installation wizard
96
97
 
97
98
  userreason-wizard [--directory PATH] [--origin URL]
98
99
 
99
- --browser-setup (explicit browser-guided setup; falls back when unavailable)
100
+ --browser-setup (browser-guided setup; default for development onboarding)
101
+ --terminal-setup (use terminal onboarding instead)
100
102
  --resume-setup UUID (resume this project's saved browser setup)
101
103
  --browser-origin ORIGIN (trusted dashboard origin for a custom API)
102
104
  --workspace UUID / --workspace-name NAME
@@ -149,6 +151,7 @@ async function main() {
149
151
  version: { type: "boolean", short: "v" },
150
152
  dev: { type: "boolean" },
151
153
  "browser-setup": { type: "boolean" },
154
+ "terminal-setup": { type: "boolean" },
152
155
  "resume-setup": { type: "string" },
153
156
  "browser-origin": { type: "string" },
154
157
  "api-environment": { type: "string" },
@@ -198,18 +201,6 @@ async function main() {
198
201
  process.stdout.write(help);
199
202
  return;
200
203
  }
201
- const browserMode = Boolean(values["browser-setup"] || values["resume-setup"]);
202
- if (values["browser-setup"] && values["resume-setup"]) throw new Error("Choose --browser-setup or --resume-setup");
203
- if (values["resume-setup"]) uuid(values["resume-setup"], "Setup ID");
204
- if (values["browser-origin"]) {
205
- if (!browserMode) throw new Error("--browser-origin requires browser setup");
206
- apiUrl(values["browser-origin"], "Browser origin");
207
- }
208
- if (browserMode) {
209
- const conflicts = ["refresh", "dry-run", "install", "skip-install", "integrate", "skip-integrate", "agent-note", "skip-agent-note", "agent-skill", "skip-agent-skill", "global-cli", "skip-global-cli", "cli-access", "skip-cli-access", "workspace", "workspace-name", "site", "site-name", "origin", "environment", "force", "diff", "session-only", "client-id", "credential-store"];
210
- if (conflicts.some((key) => values[key] !== void 0 && values[key] !== false)) throw new Error("Browser setup choices are reviewed in the browser. Omit terminal installation/resource flags; ongoing CLI access is a separate login.");
211
- }
212
- if (values["credential-store"] !== void 0) credentialStoreKind(values["credential-store"]);
213
204
  if (values["api-environment"] !== void 0 && !["production", "development"].includes(values["api-environment"]))
214
205
  throw new Error("API environment must be development or production");
215
206
  if (values.dev && values["api-environment"] === "production")
@@ -217,6 +208,20 @@ async function main() {
217
208
  const embeddedProfile = packageProfile();
218
209
  const apiEnvironment = values["api-environment"] ?? (values.dev ? "development" : embeddedProfile.apiEnvironment);
219
210
  const developmentApi = apiEnvironment === "development";
211
+ const explicitBrowserMode = Boolean(values["browser-setup"] || values["resume-setup"]);
212
+ if (values["browser-setup"] && values["resume-setup"]) throw new Error("Choose --browser-setup or --resume-setup");
213
+ if (values["terminal-setup"] && explicitBrowserMode) throw new Error("Choose --terminal-setup or browser setup");
214
+ if (values["resume-setup"]) uuid(values["resume-setup"], "Setup ID");
215
+ const terminalFlags = ["refresh", "dry-run", "install", "skip-install", "integrate", "skip-integrate", "agent-note", "skip-agent-note", "agent-skill", "skip-agent-skill", "global-cli", "skip-global-cli", "cli-access", "skip-cli-access", "workspace", "workspace-name", "site", "site-name", "origin", "environment", "force", "diff", "session-only", "client-id", "credential-store"];
216
+ const hasTerminalFlags = terminalFlags.some((key) => values[key] !== void 0 && values[key] !== false);
217
+ const browserMode = explicitBrowserMode || developmentApi && !values["terminal-setup"] && !hasTerminalFlags && !values.yes && !values.json;
218
+ if (values["browser-origin"]) {
219
+ if (!browserMode) throw new Error("--browser-origin requires browser setup");
220
+ apiUrl(values["browser-origin"], "Browser origin");
221
+ }
222
+ if (browserMode && hasTerminalFlags)
223
+ throw new Error("Browser setup choices are reviewed in the browser. Omit terminal installation/resource flags; ongoing CLI access is a separate login.");
224
+ if (values["credential-store"] !== void 0) credentialStoreKind(values["credential-store"]);
220
225
  const newSiteEnvironment = values.environment ?? apiEnvironment;
221
226
  if (values["global-cli"] && values["skip-global-cli"]) throw new Error("Choose --global-cli or --skip-global-cli");
222
227
  if (values["global-cli"] && values["skip-install"]) throw new Error("--global-cli requires project package installation; omit --skip-install");
@@ -302,7 +307,7 @@ async function main() {
302
307
  terminal.cancelState = "the local runner stopped; browser approvals, applied changes and saved drafts remain available when you resume";
303
308
  let handled;
304
309
  try {
305
- handled = await runBrowserWizard({ project, apiOrigin: apiUrl(values["api-url"] ?? (developmentApi ? "https://api-dev.userreason.com" : "https://api.userreason.com")), browserOrigin: values["browser-origin"], resumeId: values["resume-setup"], profile, version, terminal, noOpen: Boolean(values["no-open"]), json: Boolean(values.json), signal: surveyAbort.signal, measurementDisabled: values["no-telemetry"] });
310
+ handled = await runBrowserWizard({ project, apiOrigin: apiUrl(values["api-url"] ?? (developmentApi ? "https://api-dev.userreason.com" : "https://api.userreason.com")), browserOrigin: values["browser-origin"], resumeId: values["resume-setup"], profile, version, terminal, development: developmentApi, noOpen: Boolean(values["no-open"]), json: Boolean(values.json), signal: surveyAbort.signal, measurementDisabled: values["no-telemetry"] });
306
311
  } finally {
307
312
  process.off("SIGINT", interrupted);
308
313
  process.off("SIGTERM", interrupted);
@@ -695,7 +700,6 @@ async function main() {
695
700
  ]);
696
701
  } else terminal.block("Changes", [reviewed?.status === "integrated" && !packages.length ? c.muted(`nothing to edit${dot}@userreason/js and @userreason/cli are current`) : installRow]);
697
702
  const extras = [];
698
- if (developmentApi && interactive && !values.diff) extras.push({ value: "surveys", label: "Recommend surveys (share selected app code with Cerebras and OpenAI)", hint: "Optional. Suggestions first; drafts only when selected. No publishing or event edits.", initial: true });
699
703
  if (reviewed?.status === "ready" && additions) extras.push({ value: "edit", label: `${additions.created ? "Create" : "Edit"} ${additions.path}`, hint: "add UserReason.init", initial: true });
700
704
  if (noteProbe && "path" in noteProbe) extras.push({ value: "note", label: `${noteProbe.file} ${noteProbe.replacement ? "note update" : "note"}`, hint: "user-feedback guidance", initial: true });
701
705
  if (skillProbe && "files" in skillProbe) extras.push({ value: "skill", label: skillProbe.update ? "Agent skill update" : "Agent skill", hint: ".agents/skills/userreason", initial: true });
@@ -853,7 +857,7 @@ Then rerun the wizard. Your saved workspace and site will be reused.`, failure.t
853
857
  const globalCli = await measured("global_cli", () => offerGlobalCli(project, terminal, { installed: cliInstalled && !installFailed, ...globalChoice, force: values.install, verbose: values.debug, profile, preview: Boolean(values.diff) }));
854
858
  currentStep = "Offering ongoing CLI access";
855
859
  const cliAccess = await measured("cli_access", () => offerCliAccess(config, terminal, { installed: cliInstalled && !installFailed, ...accessChoice, noOpen: values["no-open"], development: developmentApi, preview: Boolean(values.diff) }));
856
- if (completed && terminal.interactive && !values.yes && !values.json && !values.diff) {
860
+ if (!developmentApi && completed && terminal.interactive && !values.yes && !values.json && !values.diff) {
857
861
  try {
858
862
  currentStep = "Creating the first survey";
859
863
  await offerFirstSurvey(new UserReasonClient(config, resolveCredentials(config)), project.directory, selectedWorkspace.id, selectedSite.id, {
@@ -1,10 +1,10 @@
1
1
  import { createRequire as createWizardRequire } from 'node:module'; import { fileURLToPath as wizardFileURLToPath } from 'node:url'; import { dirname as wizardDirname } from 'node:path'; const require = createWizardRequire(import.meta.url); const __filename = wizardFileURLToPath(import.meta.url); const __dirname = wizardDirname(__filename);
2
2
  import {
3
3
  applyIntegration
4
- } from "./chunk-5IO5LY22.js";
4
+ } from "./chunk-LEJFE4U5.js";
5
5
  import {
6
6
  require_typescript
7
- } from "./chunk-77SK7TKZ.js";
7
+ } from "./chunk-7AAH6C4L.js";
8
8
  import {
9
9
  __toESM
10
10
  } from "./chunk-WL3NOIM6.js";