wizards 0.5.0 → 0.5.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 (158) hide show
  1. package/README.md +45 -42
  2. package/apps/runtime/dist/agents/studio-assistant.js +3 -3
  3. package/apps/runtime/dist/app.js +7 -4
  4. package/apps/runtime/dist/auth/index.js +2 -2
  5. package/apps/runtime/dist/authoring/guide.js +1 -1
  6. package/apps/runtime/dist/cli/account.js +31 -28
  7. package/apps/runtime/dist/cli/autostart.js +5 -3
  8. package/apps/runtime/dist/cli/clients.js +1 -1
  9. package/apps/runtime/dist/cli/connect.js +24 -24
  10. package/apps/runtime/dist/cli/features.js +6 -6
  11. package/apps/runtime/dist/cli/main.js +51 -39
  12. package/apps/runtime/dist/cli/mcp.js +5 -4
  13. package/apps/runtime/dist/cli/menu.js +32 -30
  14. package/apps/runtime/dist/cli/report.js +7 -9
  15. package/apps/runtime/dist/cli/setup.js +42 -38
  16. package/apps/runtime/dist/cli/start.js +16 -15
  17. package/apps/runtime/dist/cli/status.js +20 -20
  18. package/apps/runtime/dist/cli/ui.js +9 -2
  19. package/apps/runtime/dist/cli/update.js +6 -6
  20. package/apps/runtime/dist/cli/validate.js +1 -1
  21. package/apps/runtime/dist/connectors/external.js +3 -2
  22. package/apps/runtime/dist/connectors/index.js +5 -5
  23. package/apps/runtime/dist/connectors/plugin-connections.js +2 -2
  24. package/apps/runtime/dist/connectors/via-account.js +5 -5
  25. package/apps/runtime/dist/db/control-schema.js +14 -0
  26. package/apps/runtime/dist/db/migrations/control/0009_plugin_claim.sql +9 -0
  27. package/apps/runtime/dist/db/migrations/control/meta/0009_snapshot.json +561 -0
  28. package/apps/runtime/dist/db/migrations/control/meta/_journal.json +7 -0
  29. package/apps/runtime/dist/docs/dev/index.md +16 -14
  30. package/apps/runtime/dist/docs/dev/plugins/connections.md +27 -24
  31. package/apps/runtime/dist/docs/dev/plugins/events.md +19 -17
  32. package/apps/runtime/dist/docs/dev/plugins/examples.md +13 -12
  33. package/apps/runtime/dist/docs/dev/plugins/index.md +29 -24
  34. package/apps/runtime/dist/docs/dev/plugins/layout.md +20 -19
  35. package/apps/runtime/dist/docs/dev/plugins/quick-start.md +16 -15
  36. package/apps/runtime/dist/docs/dev/plugins/reference.md +52 -40
  37. package/apps/runtime/dist/docs/dev/plugins/reloading.md +24 -23
  38. package/apps/runtime/dist/docs/dev/plugins/routes.md +26 -22
  39. package/apps/runtime/dist/docs/dev/plugins/runners.md +49 -44
  40. package/apps/runtime/dist/docs/dev/plugins/server.md +95 -43
  41. package/apps/runtime/dist/docs/dev/plugins/shipping.md +19 -16
  42. package/apps/runtime/dist/docs/dev/plugins/space.md +75 -69
  43. package/apps/runtime/dist/docs/dev/plugins/starters.md +22 -17
  44. package/apps/runtime/dist/docs/dev/plugins/studio.md +80 -37
  45. package/apps/runtime/dist/docs/dev/plugins/styling.md +44 -41
  46. package/apps/runtime/dist/docs/dev/plugins/tables.md +11 -11
  47. package/apps/runtime/dist/docs/dev/plugins/tools.md +26 -25
  48. package/apps/runtime/dist/docs/dev/wizard-format.md +35 -23
  49. package/apps/runtime/dist/docs/user/ai-apps.md +46 -43
  50. package/apps/runtime/dist/docs/user/assistant.md +41 -36
  51. package/apps/runtime/dist/docs/user/build-a-wizard.md +64 -39
  52. package/apps/runtime/dist/docs/user/command-line.md +47 -44
  53. package/apps/runtime/dist/docs/user/connectors.md +40 -35
  54. package/apps/runtime/dist/docs/user/create-account.md +27 -22
  55. package/apps/runtime/dist/docs/user/data.md +29 -29
  56. package/apps/runtime/dist/docs/user/first-start.md +26 -28
  57. package/apps/runtime/dist/docs/user/index.md +16 -17
  58. package/apps/runtime/dist/docs/user/install.md +28 -27
  59. package/apps/runtime/dist/docs/user/local-only.md +21 -17
  60. package/apps/runtime/dist/docs/user/models.md +92 -84
  61. package/apps/runtime/dist/docs/user/plugins.md +28 -23
  62. package/apps/runtime/dist/docs/user/run.md +51 -50
  63. package/apps/runtime/dist/docs/user/server.md +9 -9
  64. package/apps/runtime/dist/docs/user/space.md +87 -65
  65. package/apps/runtime/dist/docs/user/steps.md +73 -69
  66. package/apps/runtime/dist/docs/user/test-and-share.md +127 -105
  67. package/apps/runtime/dist/docs/user/troubleshooting.md +40 -38
  68. package/apps/runtime/dist/docs/user/wordpress.md +62 -54
  69. package/apps/runtime/dist/documents/parse.js +2 -2
  70. package/apps/runtime/dist/engenty/shims/web-ingest.js +17 -1
  71. package/apps/runtime/dist/engine/input.js +4 -4
  72. package/apps/runtime/dist/engine/push.js +2 -2
  73. package/apps/runtime/dist/engine/runner.js +8 -8
  74. package/apps/runtime/dist/engine/steps.js +2 -2
  75. package/apps/runtime/dist/engine/surface.js +1 -1
  76. package/apps/runtime/dist/film/step.js +3 -3
  77. package/apps/runtime/dist/harness/claude.js +1 -1
  78. package/apps/runtime/dist/harness/codex.js +1 -1
  79. package/apps/runtime/dist/harness/model.js +2 -2
  80. package/apps/runtime/dist/harness/terminal.js +3 -3
  81. package/apps/runtime/dist/mcp/handler.js +2 -2
  82. package/apps/runtime/dist/mcp/tools.js +9 -9
  83. package/apps/runtime/dist/models.js +15 -15
  84. package/apps/runtime/dist/plugins/claims.js +56 -0
  85. package/apps/runtime/dist/plugins/loader.js +2 -0
  86. package/apps/runtime/dist/plugins/public.js +2 -3
  87. package/apps/runtime/dist/plugins/runs.js +13 -8
  88. package/apps/runtime/dist/render/chromium.js +24 -11
  89. package/apps/runtime/dist/routes/api.js +15 -9
  90. package/apps/runtime/dist/routes/debug.js +1 -1
  91. package/apps/runtime/dist/routes/delivery.js +46 -0
  92. package/apps/runtime/dist/routes/lang.js +7 -0
  93. package/apps/runtime/dist/routes/marketplace.js +2 -1
  94. package/apps/runtime/dist/routes/plugin-public.js +2 -1
  95. package/apps/runtime/dist/routes/plugins.js +13 -14
  96. package/apps/runtime/dist/routes/runs.js +59 -49
  97. package/apps/runtime/dist/routes/studio.js +53 -23
  98. package/apps/runtime/dist/services/access.js +3 -3
  99. package/apps/runtime/dist/services/assistant-chats.js +1 -1
  100. package/apps/runtime/dist/services/brand.js +2 -2
  101. package/apps/runtime/dist/services/cloud.js +5 -4
  102. package/apps/runtime/dist/services/errors.js +2 -1
  103. package/apps/runtime/dist/services/knowledge-model.js +2 -2
  104. package/apps/runtime/dist/services/marketplace.js +2 -2
  105. package/apps/runtime/dist/services/package-file.js +12 -9
  106. package/apps/runtime/dist/services/package.js +2 -2
  107. package/apps/runtime/dist/services/project-files.js +10 -12
  108. package/apps/runtime/dist/services/projects.js +13 -8
  109. package/apps/runtime/dist/services/runners.js +4 -3
  110. package/apps/runtime/dist/services/runs.js +3 -3
  111. package/apps/runtime/dist/services/site.js +2 -2
  112. package/apps/runtime/dist/services/space-categories.js +4 -4
  113. package/apps/runtime/dist/services/space-data.js +13 -13
  114. package/apps/runtime/dist/services/space-origin.js +1 -1
  115. package/apps/runtime/dist/services/spaces.js +7 -7
  116. package/apps/runtime/dist/services/wizards.js +5 -5
  117. package/apps/runtime/dist/tools/net-guard.js +135 -24
  118. package/apps/runtime/dist/tools/plugin.js +1 -1
  119. package/apps/runtime/dist/tools/store.js +1 -1
  120. package/apps/runtime/dist/widgets/step.js +1 -1
  121. package/apps/web/dist/assets/AboutDialog-DaYwk84X.js +1 -0
  122. package/apps/web/dist/assets/{ChangelogDialog-BXpkgatF.js → ChangelogDialog-CsYbEayb.js} +1 -1
  123. package/apps/web/dist/assets/{ChatView-t7z44uFN.js → ChatView-BRD3fKZU.js} +1 -1
  124. package/apps/web/dist/assets/{EditorPage-4qxNJgKr.js → EditorPage-ocPlZD3E.js} +3 -3
  125. package/apps/web/dist/assets/{FlowPreview-WpS8DCPl.js → FlowPreview-Bm7sv746.js} +1 -1
  126. package/apps/web/dist/assets/{Harness-DL7Bse40.js → Harness-DKE-YNA5.js} +1 -1
  127. package/apps/web/dist/assets/{NewWizardChannels-Crt6PzH2.js → NewWizardChannels-CnWckqjO.js} +1 -1
  128. package/apps/web/dist/assets/{NewWizardPage-COiVmNsl.js → NewWizardPage-BXTpbHVM.js} +1 -1
  129. package/apps/web/dist/assets/{OnboardingPage-BwluEqXq.js → OnboardingPage-3Rz5uOsa.js} +1 -1
  130. package/apps/web/dist/assets/{ProjectPage-BIRU_AlN.js → ProjectPage-QdSJwm3k.js} +1 -1
  131. package/apps/web/dist/assets/{PublicRunner-BxMb4gEt.js → PublicRunner-DEpBer5g.js} +1 -1
  132. package/apps/web/dist/assets/{ReadOnly-D9r5ze5S.js → ReadOnly-rr_RJD-a.js} +1 -1
  133. package/apps/web/dist/assets/{RunDrawer-DmJl2QOJ.js → RunDrawer-BsZt0tL9.js} +1 -1
  134. package/apps/web/dist/assets/{RunnerView-CF_1rC-7.js → RunnerView-BbRukEdE.js} +1 -1
  135. package/apps/web/dist/assets/SettingsPage-qkWsQIMN.js +1 -0
  136. package/apps/web/dist/assets/{SetupPage-BGKtbS7j.js → SetupPage-PzvPPLfM.js} +1 -1
  137. package/apps/web/dist/assets/{SharePage-C4MqXKDA.js → SharePage-7vdDWG1n.js} +1 -1
  138. package/apps/web/dist/assets/changelog-BFdAYD28.js +1 -0
  139. package/apps/web/dist/assets/{esm-CsY8TkyE.js → esm-g0kaGp8t.js} +1 -1
  140. package/apps/web/dist/assets/{index-BjQvGQp_.js → index-BzPid1oQ.js} +4 -4
  141. package/apps/web/dist/assets/{lock-CI6TpWL-.js → lock-BK9RYIft.js} +1 -1
  142. package/apps/web/dist/assets/oss-credits-BJrR7BR1.js +1 -0
  143. package/apps/web/dist/assets/{phone-BrtQz-fG.js → phone-DtkY0NfU.js} +1 -1
  144. package/apps/web/dist/assets/{settings-menu-BtEKL72n.js → settings-menu-7EJQRFOi.js} +1 -1
  145. package/apps/web/dist/assets/{ui-4IaTD7LB.js → ui-B6S5hYPd.js} +3 -3
  146. package/apps/web/dist/assets/{upload-CWJAtPRo.js → upload-rYCAy7ox.js} +1 -1
  147. package/apps/web/dist/index.html +2 -2
  148. package/apps/web/dist/mcp/flow.html +3 -3
  149. package/bin/wizards.mjs +1 -1
  150. package/node_modules/@engenty-wizards/plugin-sdk/dist/index.d.ts +21 -2
  151. package/node_modules/@engenty-wizards/shared/dist/projects.js +1 -1
  152. package/node_modules/@engenty-wizards/shared/dist/run.d.ts +48 -48
  153. package/node_modules/@engenty-wizards/shared/dist/run.js +48 -48
  154. package/package.json +5 -4
  155. package/apps/web/dist/assets/AboutDialog-A_ILyeue.js +0 -1
  156. package/apps/web/dist/assets/SettingsPage-3xSInE-A.js +0 -1
  157. package/apps/web/dist/assets/changelog-CM_GdIVI.js +0 -1
  158. package/apps/web/dist/assets/oss-credits-BQQX0kvk.js +0 -1
@@ -1,168 +1,189 @@
1
1
  ---
2
2
  title: Test and share
3
3
  description: Try the wizard, publish it, and hand out its link or put it on a website.
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  ---
6
6
 
7
7
  ## Test
8
8
 
9
- "Test" in the editor starts a run of the draft, as a person would see it. Test runs are listed
10
- under "Runs". A test spends what a real run spends: your model's usage, or credits. A test run
11
- reads the wizard's memory but writes into a copy of its own, which goes with the run.
9
+ “Test” in the editor starts a run of the draft, just as a person would see it. Test runs are
10
+ listed under “Runs”. A test spends what a real run spends: your model’s usage, or credits. A test
11
+ run reads the wizard’s memory, but it writes into a copy of its own, which goes with the run.
12
12
 
13
- Where runs spend credits, each AI step shows an estimate. It is a formula at first and is
14
- measured from the latest runs after five of them.
13
+ Where runs spend credits, each AI step shows an estimate. At first it is a formula. After five
14
+ runs it is measured from the latest ones.
15
15
 
16
16
  ## Publish
17
17
 
18
- A wizard goes live the first time you share it: "Share" publishes the draft as version 1 as the
19
- dialog opens (nobody has the link yet, and "Only you" under Access keeps it closed). A draft with
20
- issues is not published; the dialog lists what to fix first, with "Let the assistant fix it".
18
+ A wizard goes live the first time you share it. “Share” publishes the draft as version 1 as the
19
+ dialog opens, and the dialog says “Published when you shared it”. Nobody has the link yet, and
20
+ “Only you” under “Access” keeps it closed. A draft with issues is not published: the dialog lists
21
+ what to fix first, with “Let the assistant fix it”.
21
22
 
22
- After that the editor's top bar has "Make changes live" whenever the draft differs from the
23
- version people run. It opens a dialog that says:
23
+ After that, the editor’s top bar shows “Publish changes” whenever the draft differs from the
24
+ version people run. It opens a dialog with these parts:
24
25
 
25
26
  | Part | Says |
26
27
  |---|---|
27
- | What changed | The wizard's own settings, each step by its title (new, removed, or which of its parts: fields, instructions, result …), the steps' order, the files |
28
- | Tested | Whether a test run used exactly this draft: "Tested 4 minutes ago – with these changes" and "See the run", or "Not tested with these changes yet" with "Test now" |
29
- | Notes | Anyone in the middle of a run carries on with the version they started; what a run costs now where that changed; with an account, that the version goes to the cloud too |
28
+ | What changed | The wizard’s own settings, each step by its title (new, removed, or which of its parts changed: fields, instructions, result …), the order of the steps and the files |
29
+ | Tested | Whether a test run used exactly this draft: “Tested 4 minutes ago – with these changes” with “See the run”, or “Not tested with these changes yet.” with “Test now” |
30
+ | Notes | Anyone in the middle of a run carries on with the version they started. Where the cost changed, it says what a run costs now. With an account, it says that the version also arrives in your account’s cloud |
30
31
 
31
- "Go live" makes the draft the next version; the link stays the same. Issues stop it, as on the
32
- first share. The editor's top bar and the wizard's card on the start page say where it runs:
32
+ “Publish” makes the draft the next version, and the link stays the same. Issues stop it, as on
33
+ the first share. The editor’s top bar and the wizard’s card on the start page say where it runs:
33
34
 
34
35
  | It says | Means |
35
36
  |---|---|
36
- | Not published yet · Draft | Only you can run it, as a test. Sharing it publishes it |
37
- | Live · version 3 | The link runs this version. With a cloud icon: on engenty.ai, for everyone with the link |
38
- | Live · 1 note | It runs in the cloud, one step there with less (see "Share") |
39
- | Local | Published on an install without an account: the link answers only on this computer |
40
- | Being sent | The version did not reach engenty.ai yet; the studio tries again by itself |
41
- | Not in the cloud | engenty.ai does not run this version. "Share" says why and what helps |
37
+ | “Not published yet” in the editor, “Draft” on the card | Only you can run it, as a test. Sharing it publishes it |
38
+ | “Live · version 3” in the editor, “Live” on the card | The link runs this version. With a cloud icon, it runs on engenty.ai for everyone with the link |
39
+ | “Live · 1 note” | It runs in the cloud, but one step does less there (see “Share”) |
40
+ | “Local” | It is published on your computer without an account. The link only answers on this computer, while engenty wizards is running |
41
+ | “On its way to the cloud” | The version hasn’t arrived on engenty.ai yet. The studio tries again by itself |
42
+ | “Not in the cloud” | engenty.ai doesn’t run this version. “Share” says why and what helps |
42
43
 
43
- On a card, "Link" copies the address others can open, and the arrow opens it. A wizard that
44
- runs only on this computer has no address for others: its "Link" says so and how an account
45
- gives it one, and the arrow opens it here.
44
+ On a card, “Link” copies the address others can open, and the arrow opens it. A wizard that
45
+ runs only on this computer has no address for others. Its “Link” says so and explains how an
46
+ account gives it one, and the arrow opens it here.
47
+
48
+ The ⋯ menu on a card and in the editor has “Duplicate”, “Export as a wizard file (.wizard)” and
49
+ “Delete”.
46
50
 
47
51
  ## Share
48
52
 
49
- "Share" says who may open the wizard and how others reach it, and copies the link.
53
+ “Share” says who may open the wizard and how others reach it, and it copies the link.
50
54
 
51
55
  | Part | Does |
52
56
  |---|---|
53
- | Access | "Anyone with the link" can open and fill it in, up to the runs a day set under the gear. "Only you" switches the link off: everyone else sees a notice, you test in the studio |
54
- | How others reach it | The channels the wizard runs as (see below), by kind: in the browser, on the phone, by message. A browser channel has its own link, a message channel its keyword and number; each row copies its own. "Change" picks the channels, with the same list as a new wizard |
55
- | QR code | One of the links as a QR code, to download or print, and the wizard's ID for the mobile app |
56
- | Website | The tag for a website (see below), and for WordPress the plugin or the wizard as a package that runs without an account, with what it lacks there: see [WordPress](./wordpress.md#without-an-account) |
57
+ | Access | With “Anyone with the link”, anyone can open and fill it in, up to the runs a day set under “Settings”. “Only you” switches the link off: everyone else sees a notice, and you test in the studio |
58
+ | How others reach it | The channels the wizard runs as (see below), grouped by kind: in the browser, on the phone, by message. A browser channel has its own link, and a message channel its keyword and number. Each row copies its own. “Change” lets you choose the channels, from the same list as for a new wizard |
59
+ | QR code | One of the links as a QR code to download or print, and the wizard’s ID for the mobile app |
60
+ | Website | The code for a website (see below). For WordPress, it offers the plugin, or the wizard as a package that runs without an account, with what it lacks there: see [WordPress](./wordpress.md#without-an-account) |
57
61
  | Copy link | The link people open. It opens the first browser channel, and the wizard offers the others on its first page |
58
- | The gear | Runs a day (50 unless you change it, with what that costs at most), each message channel's keyword, and "Create a new link": the old link and its QR code stop working, in the cloud too |
62
+ | Settings (the gear) | “Limit per day” (50 runs unless you change it, with what that costs at most), each message channel’s keyword, and “Create a new link”: the old link and its QR code stop working, in the cloud too |
59
63
 
60
- Where the draft has changes, the dialog says so on top and leads to "Make changes live".
64
+ Where the draft has changes, the dialog says so at the top and leads to “Publish changes”.
61
65
 
62
66
  One visitor can start 6 runs an hour.
63
67
 
64
68
  ### Channels
65
69
 
66
- A wizard runs page by page, as a chat, as a live conversation on top of the chat, or as a video
67
- call on a stage with the chat beside it (the person talks, the wizard talks back and sees the
68
- camera; both need an OpenAI API key under Models for now); a plugin can add further ways, a
69
- kiosk page or a messenger. A new wizard has the page and the chat switched on; the others are
70
- switched on when the wizard is made, or later under "Change" in the share dialog. Where a channel
71
- cannot take a step, the step goes to the wizard's page: the person gets a link for a photo, a
72
- signature or a sign-in, and comes back after. A step nobody can hand off, for example one that
73
- takes minutes on a channel that cannot wait, shows "Not possible: …" under the channel's name.
74
- A channel that is not set up says "Not set up yet", with "Set up" to its settings.
70
+ A wizard can run page by page, as a chat, as a live conversation on top of the chat, or as a
71
+ video call on a stage with the chat beside it. In a conversation or a call, the person talks,
72
+ and the wizard talks back and sees the camera. For now, both need an OpenAI API key under
73
+ Models. A plugin can add further ways, such as a kiosk page or a messenger.
75
74
 
76
- The home's cards show the channels that are on as small icons, the link's door first. A row of
77
- pills above the cards narrows them to one status (Draft, Local, Live, Not in the cloud) once
78
- two statuses are in play.
75
+ A wizard you start on the “New wizard” page runs step by step unless you choose more under “How
76
+ should it run?”. A wizard without its own choice, such as one from a template or an import, has
77
+ the step-by-step page and the chat switched on. You can change the channels later under “Change”
78
+ in the share dialog.
79
79
 
80
- The link opens the first browser channel that is on. The others answer under their own address
81
- (`/steps`, `/chat`, `/talk` for live voice, `/video` for the video call) and are offered on the
82
- wizard's first page: "Or: Chat". A switched-off address sends people to the link instead.
80
+ Where a channel can’t take a step, the step goes to the wizard’s page. The person gets a link for
81
+ a photo, a signature or a sign-in, and comes back afterwards. If nobody can hand a step off (for
82
+ example, one that takes minutes on a channel that can’t wait), the row shows “Not possible: …”
83
+ under the channel’s name. A channel that still needs something says so in its row:
83
84
 
84
- ### WhatsApp, SMS and calls
85
+ | The row says | What you can do |
86
+ |---|---|
87
+ | “Not set up yet” | “Set up” opens the channel’s settings inside the dialog. “Back” returns to the rows |
88
+ | “Waiting” | Nothing for now. The channel is waiting for something, for example a number that was requested |
89
+ | “Not in your plan” | “See {plan}” or “See the plans” shows the plan that has it |
85
90
 
86
- On engenty.ai a wizard can also run in a WhatsApp thread, by text message and as a phone call,
87
- where the team's plan includes them. These channels are not part of the open runtime: a local
88
- install has them through its account in the cloud.
91
+ The cards on the start page show the channels that are on as small icons, the link’s channel
92
+ first. Once wizards with two or more statuses are in the space, a row of pills above the cards
93
+ narrows them to one status: “Draft”, “Local”, “Live” or “Not in the cloud”.
89
94
 
90
- Switch one on for a wizard and its row in the share dialog shows the number and the **keyword**:
91
- whoever sends the keyword to the number starts the wizard. "Link" copies a link that writes it,
92
- and the QR code view draws it. The keyword is changed under the gear.
95
+ The link opens the first browser channel that is on. The others answer under their own address
96
+ (`/steps`, `/chat`, `/talk` for live voice, `/video` for the video call) and are offered on the
97
+ wizard’s first page, for example “Or: Chat”. An address that is switched off sends people to
98
+ the link instead.
93
99
 
94
- - **WhatsApp**: one field per message, buttons for up to three choices, a list for more, a photo
95
- or a file sent in the chat, "send location" for a place, a voice message for a text field. A
96
- free message goes out within 24 hours of the person's last one; a wizard that finishes later
97
- reaches back with an approved template, or waits for the person's next message.
98
- - **SMS**: text only, choices as numbered lines answered with the number, a place as a typed
99
- address; long texts come as their gist, every picture, document and the whole result as links.
100
- - **Calls**: the speech model talks, as the chat's live voice does: one field at a time, choices
101
- read out, e-mail addresses and numbers read back. With several wizards on for calls, the call
102
- asks which one first.
100
+ ### WhatsApp, SMS and calls
103
101
 
104
- What a channel cannot take (a signature, a sign-in; by text and on the phone also a photo or a
105
- file) arrives as a link to the wizard's page, and the conversation goes on once it was filled
106
- there. "stop" ends a run in a thread, the keyword starts a new one.
102
+ On engenty.ai a wizard can also run in a WhatsApp chat, by text message and as a phone call,
103
+ where the team’s plan includes them. These channels are not part of the open source engenty
104
+ wizards. On your computer, you get them through your account in the cloud.
105
+
106
+ When you switch one on for a wizard, its row in the share dialog shows the number and the
107
+ **keyword**. Whoever sends the keyword to the number starts the wizard. “Link” copies a link that
108
+ writes the message, and the QR code view draws it. You change the keyword under “Settings”.
109
+
110
+ - **WhatsApp**: one field per message, buttons for up to three choices and a list for more. The
111
+ person sends a photo or a file in the chat, “send location” for a place, and a voice message
112
+ for a text field. A free message can go out within 24 hours of the person’s last one. A wizard
113
+ that finishes later reaches back with an approved template, or waits for the person’s next
114
+ message.
115
+ - **SMS**: text only. Choices come as numbered lines, answered with the number, and a place as a
116
+ typed address. Long texts come as their gist, and every picture, document and the whole result
117
+ as links.
118
+ - **Calls**: the speech model talks, as the chat’s live voice does. It asks for one field at a
119
+ time, reads out the choices and reads email addresses and numbers back. If several wizards are
120
+ on for calls, the call first asks which one.
121
+
122
+ What a channel can’t take (a signature or a sign-in, and by text or phone also a photo or a
123
+ file) arrives as a link to the wizard’s page. The conversation goes on once it has been filled in
124
+ there. “stop” ends a run in a chat, and the keyword starts a new one.
107
125
 
108
126
  ### Who can open the link
109
127
 
110
- An install on your computer only answers on `localhost`: the link works on that computer, not
111
- for anyone else. To let others run the wizard:
128
+ engenty wizards on your computer only answers on `localhost`. The link works on that computer,
129
+ not for anyone else. To let others run the wizard:
112
130
 
113
131
  | Way | How |
114
132
  |---|---|
115
- | The cloud | With an [account](./models.md#account) signed in, every version that goes live (the first share, and each "Go live") also goes to engenty.ai. Its link there runs on the account's credits, also while your computer is off |
133
+ | The cloud | Sign in with an [account](./create-account.md). Every version that goes live (the first share, and each “Publish”) then also goes to engenty.ai. Its link there runs on the account’s credits, even while your computer is off |
116
134
  | Your own server | [Run engenty wizards on a server](./server.md) with a public https address |
117
135
 
118
136
  ### In the cloud
119
137
 
120
- Once an account is signed in under Settings → Account, every version that goes live is sent to
121
- engenty.ai too. The avatar then carries a small cloud, and its menu says "Connected to
122
- engenty.ai" with the credits. The share dialog gives the wizard's address at engenty.ai, which
123
- stays the same when you publish again. Where the cloud does not run this version, the dialog
124
- says so on top:
138
+ Once you sign in to an account under Settings → Account, every version that goes live also
139
+ arrives on engenty.ai. Your avatar then carries a small cloud, and its menu says “Connected to
140
+ engenty.ai” with your credits. The share dialog gives the wizard’s address at engenty.ai, which
141
+ stays the same when you publish again. Where the cloud doesn’t run this version, the dialog says
142
+ so at the top:
125
143
 
126
144
  | It shows | Means |
127
145
  |---|---|
128
- | "Version 3 does not run in the cloud" | Something the wizard needs is missing there. The list says what; the version before keeps running |
129
- | "Send again" | The last sending did not arrive, or the space changed. When engenty.ai was the trouble, the studio tries again by itself and says when |
146
+ | “Version 3 doesn’t run in the cloud.” | Something the wizard needs is missing there. The list says what, and the version before keeps running |
147
+ | “Send again” | The last version didn’t arrive, or the space changed. When engenty.ai was the problem, the studio tries again by itself and says when |
130
148
 
131
- Without an account the dialog says that the wizard runs only on this computer ("Only on this
132
- computer" under Access), greys out the ways in and offers to sign in or create an account.
133
- "Website" still gives the WordPress package.
149
+ Without an account, the dialog says that the wizard runs only on this computer (“Only on this
150
+ computer” under “Access”). It greys out the ways others reach it and offers “Sign in” and “Create
151
+ account”. “Website” still gives you the WordPress package.
134
152
 
135
- What goes and what stays:
153
+ What goes to the cloud and what stays:
136
154
 
137
155
  | Goes to the cloud | Stays on your computer |
138
156
  |---|---|
139
157
  | The published version and its files | Drafts and the chat with the assistant |
140
- | The space's name, what it says about itself, its colours, facts and logo | Runs and results of your computer |
141
- | The space's own tables and pages | What the wizards keep: their lists and notes |
142
- | How the link is shared: on or off, runs a day, channels | Connected accounts, keys, the space's documents and MCP servers |
158
+ | The space’s name, what it says about itself, its colours, facts and logo | Runs and results on your computer |
159
+ | The space’s own tables and pages | What the wizards keep: their lists and notes |
160
+ | How the link is shared: on or off, runs a day, channels | Connected accounts, keys, the space’s knowledge and its connected systems |
143
161
 
144
- At engenty.ai/studio you see the space and its runs there. It is changed on your computer:
145
- the studio there edits nothing. An account holds one space of one computer. On a new computer
146
- the share dialog offers to replace the space of the old one, which removes its wizards and
147
- their links from the cloud.
162
+ At engenty.ai/studio you see the space and its runs there. A small laptop icon marks the space,
163
+ and a note says “You edit this space in engenty wizards on your computer.” The studio there
164
+ doesn’t edit it. An account holds one space from one computer. On a new computer, the share
165
+ dialog offers “Replace that space”, which removes the old computer’s wizards and their links from
166
+ the cloud.
148
167
 
149
- Deleting a wizard here removes its copy; switching its link off here switches it off there.
168
+ When you delete a wizard here, its copy in the cloud is deleted too. When you switch its link
169
+ off here, it is switched off there as well.
150
170
 
151
171
  ### Embed in a website
152
172
 
153
- The share dialog gives a tag to paste into a page's HTML:
173
+ Under “Website”, the share dialog gives you code to paste into a page’s HTML. Where the wizard
174
+ has both the step-by-step page and the chat on, you first choose what the website shows:
154
175
 
155
- | What the website shows | Shows |
176
+ | What does the website show? | Shows |
156
177
  |---|---|
157
178
  | Step-by-step wizard | The wizard page by page |
158
179
  | Chat | The wizard as a chat, 640 px high (`data-height` changes that) |
159
180
 
160
- | Where on the page | Shows |
181
+ | Where on the page? | Shows |
161
182
  |---|---|
162
- | In the page | The wizard in that place of the page, as tall as its content |
163
- | Behind a button | A button in that place that opens the wizard in a window over the page |
164
- | As a chat button | The wizard's engenty in the lower right corner; the chat opens above it |
165
- | As a bubble | Steps only: a round button at the bottom right of the page that opens the wizard in a window over the page, best put in the site's footer |
183
+ | In the page | The wizard in that place on the page, as tall as its content |
184
+ | Behind a button | Step by step only: a button in that place that opens the wizard in a window over the page |
185
+ | As a chat button | Chat only: the wizard’s engenty in the bottom right corner. The chat opens above it |
186
+ | As a bubble | Step by step only: a round button at the bottom right of the page that opens the wizard in a window over the page. It is best put in the site’s footer |
166
187
 
167
188
  ```html
168
189
  <script async src="https://example.com/embed.js" data-wizard="TOKEN"></script>
@@ -172,31 +193,32 @@ The share dialog gives a tag to paste into a page's HTML:
172
193
  <script async src="https://example.com/embed.js" data-wizard="TOKEN" data-mode="bubble" data-label="Questions?" data-text="A quote in 2 minutes"></script>
173
194
  ```
174
195
 
175
- A chat in the page that is switched off for the wizard shows the page instead; the chat button
196
+ The code only works once the wizard is published and open to anyone with the link. A chat in the
197
+ page that is switched off for the wizard shows the step-by-step page instead. The chat button
176
198
  always opens the chat.
177
199
 
178
200
  | Attribute | Does |
179
201
  |---|---|
180
- | `data-label` | The button's words; beside the chat button; the bubble's name for screen readers |
202
+ | `data-label` | The button’s words. Beside the chat button, a short label. For the bubble, its name for screen readers |
181
203
  | `data-text` | A short line beside the bubble |
182
204
  | `data-color` | The colour of the chat button and of the bubble |
183
205
  | `data-height` | The height of a chat in the page, in px |
184
- | `data-page` | The page a run is started on, kept with its result; the page's own address when left out |
206
+ | `data-page` | The page a run is started on, kept with its result. Without it, the page’s own address is used |
185
207
 
186
- Your website's own styles reach the button through the class `engenty-wizard-button`, the chat
208
+ Your website’s own styles reach the button through the class `engenty-wizard-button`, the chat
187
209
  button through `engenty-wizard-launcher` and the bubble through `engenty-wizard-bubble`. A page
188
- shows one bubble: a second bubble tag stays silent.
210
+ shows only one bubble: a second bubble tag does nothing.
189
211
 
190
- On WordPress the plugin writes this tag for you, and its results show the page: see
212
+ On WordPress the plugin writes this code for you, and its results show the page: see
191
213
  [WordPress](./wordpress.md).
192
214
 
193
215
  ## Results people share
194
216
 
195
- On the result page a person can share what they got as a link. The result of a run over the
196
- wizard's link, and the link to it, are deleted after 7 days. The person can withdraw the link
217
+ On the result page, a person can share what they got as a link. The result of a run over the
218
+ wizard’s link, and the link to it, are deleted after 7 days. The person can withdraw the link
197
219
  earlier.
198
220
 
199
221
  ## Move a wizard
200
222
 
201
- Export it as a package (`.wizard`) from the editor and import it in another studio, or in the
202
- WordPress plugin. See [Build a wizard](./build-a-wizard.md#take-it-with-you).
223
+ Export it as a wizard file (`.wizard`) from its ⋯ menu, and import it in another studio or in
224
+ the WordPress plugin. See [Build a wizard](./build-a-wizard.md#take-it-with-you).
@@ -1,65 +1,67 @@
1
1
  ---
2
2
  title: Troubleshooting
3
- description: What to do when a link is no longer valid, a client shows as not signed in, or an export fails.
4
- version: 0.3.4
3
+ description: What to do when a link no longer works, a client shows as not signed in, or an export fails.
4
+ version: 0.5.0
5
5
  ---
6
6
 
7
- `wizards doctor` checks the install and says what is wrong. Start there.
7
+ `wizards doctor` checks engenty wizards on your computer and says what is wrong. Start there.
8
8
 
9
9
  ## Starting and signing in
10
10
 
11
- | What you see | Do |
11
+ | What you see | What to do |
12
12
  |---|---|
13
- | "This link is no longer valid" | The link works once. `wizards open` gives this browser a new one |
14
- | "The app is not answering" | It stopped or is restarting. `wizards status` says whether it runs; `wizards start` starts it |
13
+ | “This link is no longer valid. Run wizards open to get a new one.” | The link works once. `wizards open` gives this browser a new one |
14
+ | “engenty wizards isn’t answering” | It has stopped or is restarting. `wizards status` says whether it is running; `wizards start` starts it |
15
15
  | `wizards`: command not found | Open a new terminal, or run `~/.local/bin/wizards` |
16
- | "This browser is not signed in" | The browser has no sign-in for the install, for example after clearing cookies. Run `wizards open` |
17
- | "The studio runs at another address" | Open the address the page names, or set `APP_URL` in `~/.engenty/wizards/.env` to the address you open |
18
- | Port 24368 is taken | The next free port is used. To fix one, set `API_PORT` in `~/.engenty/wizards/.env` |
16
+ | “This browser isn’t signed in” | The browser has no sign-in for engenty wizards on this computer, for example after you cleared cookies. Run `wizards open` |
17
+ | “The studio runs at another address” | Open the address the page names, or set `APP_URL` in `~/.engenty/wizards/.env` to the address you open |
18
+ | Port 24368 is taken | engenty wizards uses the next free port. To fix the port, set `API_PORT` in `~/.engenty/wizards/.env` |
19
19
 
20
20
  ## Models
21
21
 
22
- | What you see | Do |
22
+ | What you see | What to do |
23
23
  |---|---|
24
- | An AI client shows as not signed in | Sign it in on the setup page or under Settings → Models, or in your own terminal (`claude`, `codex login`). Then "Check again" |
25
- | "Signed in with an API key from your shell" | The client runs on that key, not on your subscription. "Sign in here" switches it |
26
- | The test does not work | The message names the reason. Check the key, or sign the client in again |
27
- | "Models are missing" in the editor | A step needs a model this install has no way to, often video or audio. Add a key under Settings → Models |
28
- | A template says "Not set up here" | The same: it needs a model that is not set up |
29
- | No Apple Intelligence in the setup or under Models | It needs a Mac with Apple silicon on macOS 26 or later, and is offered on your computer only, not on engenty.ai |
30
- | Apple Intelligence "switched off" or "Apple is still loading the model" | Switch it on under System Settings → Apple Intelligence & Siri, or wait until the Mac has the model. The studio asks again after a minute |
31
- | A step on Apple Intelligence fails: the text is too long | The model takes 4,096 tokens for prompt and answer. Give the step the class High, or bind its class elsewhere under Settings → Models. See [Apple Intelligence](./models.md#apple-intelligence) |
24
+ | An AI client shows as not signed in | Sign it in on the setup page or under Settings → Models, or in your own terminal (`claude`, `codex login`). Then click “Check again” |
25
+ | “Signed in with an API key from your shell, not the subscription.” | The client runs on that key, not on your subscription. “Sign in here” switches it |
26
+ | “The test didn’t work” | The message names the reason. Check the key, or sign the client in again |
27
+ | “Models are missing” in the editor | A step needs a model that isn’t set up here, often for video or audio. Add a key under Settings → Models |
28
+ | A template says “Not set up here” | It is the same: the template needs a model that isn’t set up |
29
+ | No Apple Intelligence in the setup or under Models | It needs a Mac with Apple silicon on macOS 26 or later. It is offered on your computer only, not on engenty.ai |
30
+ | Apple Intelligence “switched off” or “Apple is still loading the model” | Switch it on under System Settings → Apple Intelligence & Siri, or wait until the Mac has the model. The studio checks again after a minute |
31
+ | A step on Apple Intelligence fails because the text is too long | The model takes 4,096 tokens for prompt and answer together. Give the step the class High, or choose another model for its class under Settings → Models. See [Apple Intelligence](./models.md#apple-intelligence) |
32
32
  | A voice note the Mac writes down fails in Chrome or Firefox | Their recordings need ffmpeg on the Mac: install it, or set `FFMPEG_PATH` |
33
33
 
34
34
  ## Running wizards
35
35
 
36
- | What you see | Do |
36
+ | What you see | What to do |
37
37
  |---|---|
38
- | PDF or PNG export, or a step on a website, fails | `wizards doctor` names the browser the app uses. Install Chrome, Edge or Chromium (on a Mac also Brave), or set `CHROME_PATH` to one; see [Settings](./command-line.md#settings) |
38
+ | PDF or PNG export, or a step on a website, fails | `wizards doctor` names the browser engenty wizards uses. Install Chrome, Edge or Chromium (on a Mac also Brave), or set `CHROME_PATH` to one; see [Settings](./command-line.md#settings) |
39
39
  | A widget offers no video | Install ffmpeg, or set `FFMPEG_PATH` |
40
- | "This wizard is not available right now" | The link is switched off, or the account the wizard runs on has no credits left. See [Test and share](./test-and-share.md) |
41
- | The wizard says its limit is reached for today | The link's runs for the day are used up; the day starts at midnight UTC. Raise the runs a day under the share dialog's gear |
42
- | "This wizard does not exist (anymore)" | It is not published, or its link was replaced by a new one |
43
- | Others cannot open the link | An install on your computer answers on `localhost` only. See [who can open the link](./test-and-share.md#who-can-open-the-link) |
44
- | The chat has no phone button, or "Join" stays grey | A live conversation needs "Live voice" or "Video call" switched on for the wizard (see [Channels](./test-and-share.md#channels); your own test run always has it) and an OpenAI API key under Settings → Models |
45
- | The camera, microphone or location does not work | Allow it in the browser's site settings (the lock icon in the address bar) |
46
- | A connector says "not set up" | The install needs an OAuth client for it. See [Connectors](./connectors.md) |
47
- | A step stops at a plugin's tool | That plugin is not installed here. See [Plugins](./plugins.md) |
40
+ | “This wizard isn’t available right now.” | The link is switched off, or the account the wizard runs on has no credits left. See [Test and share](./test-and-share.md) |
41
+ | “This wizard has reached its limit for today. Try again tomorrow.” | The link’s runs for the day are used up; the day starts at midnight UTC. Raise “Limit per day” under Settings (the gear) in the share dialog |
42
+ | “You’ve started a lot of runs just now. Try again in an hour.” | One visitor started more runs in an hour than the link allows (`LIMIT_VISITOR_RUNS_PER_HOUR`, see [Settings](./command-line.md#settings)) |
43
+ | “This wizard doesn’t exist or was deleted.” | It is not published, or its link was replaced by a new one |
44
+ | Others can’t open the link | engenty wizards on your computer answers on `localhost` only. See [who can open the link](./test-and-share.md#who-can-open-the-link) |
45
+ | The chat has no phone button, or “Join” stays grey | A live conversation needs “Live voice” or “Video call” switched on for the wizard (see [Channels](./test-and-share.md#channels); your own test run always has it) and an OpenAI API key under Settings → Models |
46
+ | The camera, microphone or location doesn’t work | Allow it in the browser’s site settings (the lock icon in the address bar) |
47
+ | A connector says “not set up” | engenty wizards needs an OAuth client for it. See [Connectors](./connectors.md) |
48
+ | A step stops at a plugin’s tool | That plugin is not installed here. See [Plugins](./plugins.md) |
48
49
 
49
50
  ## Updating
50
51
 
51
- | What you see | Do |
52
+ | What you see | What to do |
52
53
  |---|---|
53
- | "The update failed" | The reason is in `~/.engenty/wizards/logs/update.log`. Run `wizards update` in a terminal to see it live |
54
- | A template "Needs a newer app" | Update: `wizards update` |
54
+ | “The update failed. Details are in logs/update.log.” | The reason is in `~/.engenty/wizards/logs/update.log`. Run `wizards update` in a terminal to see it as it happens |
55
+ | A template says “Needs a newer version” | Update with `wizards update` |
55
56
 
56
57
  ## Still stuck
57
58
 
58
- `wizards logs` shows the last lines the install printed; keys and tokens are taken out. Open an
59
- issue at [github.com/engenty/wizards](https://github.com/engenty/wizards/issues)
60
- with what `wizards doctor` prints and the lines that matter.
59
+ `wizards logs` shows the last lines engenty wizards printed, with keys and tokens taken out. Open
60
+ an issue at [github.com/engenty/wizards](https://github.com/engenty/wizards/issues) with what
61
+ `wizards doctor` prints and the lines that matter.
61
62
 
62
- With a [linked account](./models.md#account), `wizards report` sends the status, the model settings
63
- (never a key) and the last 500 log lines to engenty, and names the report's id: give that id when
64
- you ask for help. Nothing is sent unless you run the command. Without a linked account it says
65
- so: link one under Settings → Account.
63
+ If this computer is signed in to an [account](./models.md#account), `wizards report` sends the
64
+ status, the model settings (never a key) and the last 500 log lines to engenty. It names the
65
+ report’s ID: give that ID when you ask for help. Nothing is sent unless you run the command. If
66
+ this computer isn’t signed in, the command tells you so: sign in under Settings → Account or with
67
+ `wizards account sign-in`.