@schlenkr/ragents 0.1.19 → 0.1.20

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 (206) hide show
  1. package/apps/server/src/host-api.json +6 -2
  2. package/apps/server/src/host-api.ts +3 -2
  3. package/apps/server/src/host-web.ts +3 -0
  4. package/apps/server/src/plugin-support/actor-programs/contract.ts +0 -3
  5. package/apps/server/src/plugin-support/removed-layout.ts +94 -0
  6. package/apps/server/src/ragents/engine.ts +2 -1
  7. package/apps/server/src/title-compactor.ts +5 -7
  8. package/apps/web/dist/assets/highlighted-body-KPVGNVTW-k67VKdbw.js +1 -0
  9. package/apps/web/dist/assets/main-CVjIz7BS.js +674 -0
  10. package/apps/web/dist/help/guide-clients.html +22 -42
  11. package/apps/web/dist/help/guide-clients.md +24 -45
  12. package/apps/web/dist/help/guide-functions.html +1 -1
  13. package/apps/web/dist/help/guide-functions.md +1 -1
  14. package/apps/web/dist/help/guide-getting-started.html +14 -22
  15. package/apps/web/dist/help/guide-getting-started.md +17 -24
  16. package/apps/web/dist/help/guide-ideas.html +1 -1
  17. package/apps/web/dist/help/guide-ideas.md +1 -1
  18. package/apps/web/dist/help/guide-plugins.html +1 -1
  19. package/apps/web/dist/help/guide-plugins.md +1 -1
  20. package/apps/web/dist/help/guide-programs.html +1 -1
  21. package/apps/web/dist/help/guide-programs.md +1 -1
  22. package/apps/web/dist/help/index.html +12 -79
  23. package/apps/web/dist/help/mini-app.css +8 -502
  24. package/apps/web/dist/host-web.json +28 -23
  25. package/apps/web/dist/index.html +2 -3
  26. package/apps/web/dist/run-panel.html +3 -4
  27. package/apps/web/src/Overview.tsx +4 -143
  28. package/apps/web/src/PluginChat.tsx +22 -116
  29. package/apps/web/src/PluginRegistry.tsx +4 -9
  30. package/apps/web/src/RunPreparationChat.tsx +4 -1
  31. package/apps/web/src/host-modules.ts +2 -0
  32. package/apps/web/src/main.tsx +23 -3
  33. package/apps/web/src/panel/RunLine.tsx +5 -2
  34. package/apps/web/src/panel/RunsPage.tsx +6 -6
  35. package/apps/web/src/panel/StartPage.tsx +6 -5
  36. package/apps/web/src/panel/contract.ts +3 -0
  37. package/apps/web/src/panel/page-props.ts +2 -0
  38. package/apps/web/src/run-apps.ts +34 -0
  39. package/apps/web/src/run-overview.ts +0 -27
  40. package/apps/web/src/run-panel/PanelContributions.tsx +41 -0
  41. package/apps/web/src/run-panel/RunPanelApp.tsx +172 -91
  42. package/apps/web/src/run-panel/RunPanelMenu.tsx +4 -3
  43. package/apps/web/src/run-panel/RunPanelWorkspace.tsx +8 -2
  44. package/apps/web/src/run-panel/clipboard.ts +17 -14
  45. package/apps/web/src/run-panel/host-contract.ts +8 -9
  46. package/apps/web/src/run-panel/host.ts +5 -31
  47. package/apps/web/src/run-panel/input-bridge.ts +15 -7
  48. package/bundles/ragents.activity/ragents-bundle.json +2 -2
  49. package/bundles/ragents.actor-programs/prompt.hbs +4 -5
  50. package/bundles/ragents.actor-programs/ragents-bundle.json +4 -14
  51. package/bundles/ragents.actor-programs/server/index.js +2 -14
  52. package/bundles/ragents.actor-programs/server/index.js.map +2 -2
  53. package/bundles/ragents.actor-programs/web/classes.json +1 -1
  54. package/bundles/ragents.actor-programs/web/index.js +1 -3
  55. package/bundles/ragents.actor-programs/web/index.js.map +4 -4
  56. package/bundles/ragents.ask/ragents-bundle.json +2 -2
  57. package/bundles/ragents.browser/ragents-bundle.json +2 -2
  58. package/bundles/ragents.documents/ragents-bundle.json +2 -2
  59. package/bundles/ragents.lsp-fsharp/ragents-bundle.json +2 -2
  60. package/bundles/ragents.lsp-roslyn/ragents-bundle.json +2 -2
  61. package/bundles/ragents.lsp-typescript/ragents-bundle.json +2 -2
  62. package/bundles/ragents.model-relay/ragents-bundle.json +2 -2
  63. package/bundles/ragents.orchestration/ragents-bundle.json +15 -41
  64. package/bundles/ragents.orchestration/server/index.js +10 -249
  65. package/bundles/ragents.orchestration/server/index.js.map +4 -4
  66. package/bundles/ragents.orchestration/web/chunks/chunk-KU7O6MEX.js +2 -0
  67. package/bundles/ragents.orchestration/web/chunks/chunk-KU7O6MEX.js.map +7 -0
  68. package/bundles/ragents.orchestration/web/classes.json +1 -1
  69. package/bundles/ragents.orchestration/web/exports/web/program-slot.js +1 -1
  70. package/bundles/ragents.orchestration/web/index.js +10 -18
  71. package/bundles/ragents.orchestration/web/index.js.map +4 -4
  72. package/bundles/ragents.overseer/ragents-bundle.json +3 -3
  73. package/bundles/ragents.overseer/server/index.js +0 -1
  74. package/bundles/ragents.overseer/server/index.js.map +2 -2
  75. package/bundles/ragents.processes/ragents-bundle.json +2 -2
  76. package/bundles/ragents.product/ragents-bundle.json +2 -2
  77. package/bundles/ragents.profile-distribution/ragents-bundle.json +2 -2
  78. package/bundles/ragents.reference/ragents-bundle.json +3 -3
  79. package/bundles/ragents.reference/run-scripts/balcony-wizard/RUN.md +1 -1
  80. package/bundles/ragents.reference/run-scripts/balcony-wizard/src/server.ts +1 -2
  81. package/bundles/ragents.reference/run-scripts/balcony-wizard/tests/program.test.ts +6 -7
  82. package/bundles/ragents.reference/run-scripts/conversation-circle/RUN.md +3 -3
  83. package/bundles/ragents.reference/run-scripts/conversation-circle/src/server.ts +3 -13
  84. package/bundles/ragents.reference/run-scripts/conversation-circle/tests/helpers.ts +1 -1
  85. package/bundles/ragents.reference/run-scripts/conversation-circle/tests/program.test.ts +1 -6
  86. package/bundles/ragents.reference/run-scripts/learning-afternoon/src/server.ts +1 -15
  87. package/bundles/ragents.reference/run-scripts/learning-afternoon/tests/program.test.ts +1 -1
  88. package/bundles/ragents.reference/run-scripts/moderated-round/tests/helpers.ts +1 -1
  89. package/bundles/ragents.reference/run-scripts/quick-note/RUN.md +1 -1
  90. package/bundles/ragents.reference/run-scripts/quick-note/src/server.ts +1 -2
  91. package/bundles/ragents.reference/run-scripts/quick-note/tests/program.test.ts +0 -2
  92. package/bundles/ragents.reference/run-scripts/run-roster/RUN.md +2 -2
  93. package/bundles/ragents.reference/run-scripts/run-roster/src/server.ts +1 -2
  94. package/bundles/ragents.reference/run-scripts/run-roster/tests/program.test.ts +0 -2
  95. package/bundles/ragents.reference/run-scripts/shared-actor-list/src/server.ts +1 -1
  96. package/bundles/ragents.reference/run-scripts/shared-actor-list/tests/helpers.ts +1 -1
  97. package/bundles/ragents.reference/run-scripts/word-game/src/contract.ts +1 -1
  98. package/bundles/ragents.reference/run-scripts/word-game/src/server.ts +0 -1
  99. package/bundles/ragents.reference/run-scripts/word-game/tests/program.test.ts +1 -2
  100. package/bundles/ragents.reference/skills/80-actor-text-analysis/SKILL.md +1 -1
  101. package/bundles/ragents.reference/skills/90-actor-notes/SKILL.md +1 -1
  102. package/bundles/ragents.todo/ragents-bundle.json +2 -2
  103. package/bundles/ragents.transcript/ragents-bundle.json +2 -2
  104. package/bundles/ragents.watch/ragents-bundle.json +2 -2
  105. package/bundles/ragents.workspace/ragents-bundle.json +2 -2
  106. package/package.json +8 -8
  107. package/packages/agent/dist/core/agent-settings.d.ts +1 -1
  108. package/packages/ai/dist/types.d.ts +2 -1
  109. package/packages/ragents/src/runtime/journal.ts +4 -0
  110. package/plugins/ragents.actor-programs/prompt.hbs +4 -5
  111. package/plugins/ragents.actor-programs/server/access-projections.ts +1 -1
  112. package/plugins/ragents.actor-programs/server/index.ts +0 -2
  113. package/plugins/ragents.actor-programs/server/runtime.ts +2 -10
  114. package/plugins/ragents.actor-programs/web/ActorViewFrame.tsx +5 -20
  115. package/plugins/ragents.actor-programs/web/AppsPanel.tsx +3 -79
  116. package/plugins/ragents.actor-programs/web/EmbeddedApps.tsx +0 -9
  117. package/plugins/ragents.actor-programs/web/api.ts +0 -20
  118. package/plugins/ragents.actor-programs/web/context.ts +0 -3
  119. package/plugins/ragents.actor-programs/web/index.tsx +0 -9
  120. package/plugins/ragents.orchestration/ragents-plugin.json +1 -2
  121. package/plugins/ragents.orchestration/server/index.ts +1 -11
  122. package/plugins/ragents.orchestration/web/ActorChat.tsx +1 -1
  123. package/plugins/ragents.orchestration/web/ActorChatControls.tsx +1 -1
  124. package/plugins/ragents.orchestration/web/FlowInspector.tsx +2 -4
  125. package/plugins/ragents.orchestration/web/InspectionPanel.tsx +21 -0
  126. package/plugins/ragents.orchestration/web/index.tsx +13 -9
  127. package/plugins/ragents.orchestration/web/program-slot.ts +0 -3
  128. package/plugins/ragents.orchestration/web/run-panel/AddresseeControl.tsx +15 -36
  129. package/plugins/ragents.orchestration/web/run-panel/RunPanel.tsx +76 -451
  130. package/plugins/ragents.orchestration/web/run-panel/run-panel-actors.ts +0 -27
  131. package/plugins/ragents.orchestration/web/run-panel/run-panel-state.ts +7 -40
  132. package/plugins/ragents.overseer/server/coordinator-prompt.ts +0 -1
  133. package/plugins/ragents.reference/examples.ts +1 -2
  134. package/plugins/ragents.reference/run-scripts/balcony-wizard/RUN.md +1 -1
  135. package/plugins/ragents.reference/run-scripts/balcony-wizard/src/server.ts +1 -2
  136. package/plugins/ragents.reference/run-scripts/balcony-wizard/tests/program.test.ts +6 -7
  137. package/plugins/ragents.reference/run-scripts/conversation-circle/RUN.md +3 -3
  138. package/plugins/ragents.reference/run-scripts/conversation-circle/src/server.ts +3 -13
  139. package/plugins/ragents.reference/run-scripts/conversation-circle/tests/helpers.ts +1 -1
  140. package/plugins/ragents.reference/run-scripts/conversation-circle/tests/program.test.ts +1 -6
  141. package/plugins/ragents.reference/run-scripts/learning-afternoon/src/server.ts +1 -15
  142. package/plugins/ragents.reference/run-scripts/learning-afternoon/tests/program.test.ts +1 -1
  143. package/plugins/ragents.reference/run-scripts/moderated-round/tests/helpers.ts +1 -1
  144. package/plugins/ragents.reference/run-scripts/quick-note/RUN.md +1 -1
  145. package/plugins/ragents.reference/run-scripts/quick-note/src/server.ts +1 -2
  146. package/plugins/ragents.reference/run-scripts/quick-note/tests/program.test.ts +0 -2
  147. package/plugins/ragents.reference/run-scripts/run-roster/RUN.md +2 -2
  148. package/plugins/ragents.reference/run-scripts/run-roster/src/server.ts +1 -2
  149. package/plugins/ragents.reference/run-scripts/run-roster/tests/program.test.ts +0 -2
  150. package/plugins/ragents.reference/run-scripts/shared-actor-list/src/server.ts +1 -1
  151. package/plugins/ragents.reference/run-scripts/shared-actor-list/tests/helpers.ts +1 -1
  152. package/plugins/ragents.reference/run-scripts/word-game/src/contract.ts +1 -1
  153. package/plugins/ragents.reference/run-scripts/word-game/src/server.ts +0 -1
  154. package/plugins/ragents.reference/run-scripts/word-game/tests/program.test.ts +1 -2
  155. package/plugins/ragents.reference/skills/80-actor-text-analysis/SKILL.md +1 -1
  156. package/plugins/ragents.reference/skills/90-actor-notes/SKILL.md +1 -1
  157. package/plugins/ragents.reference/walkthroughs.ts +13 -14
  158. package/apps/web/dist/assets/highlighted-body-KPVGNVTW-BwD4uYEe.js +0 -1
  159. package/apps/web/dist/assets/main-KBrc5Q77.js +0 -11
  160. package/apps/web/dist/assets/mermaid-HWGCJPDP-CSCkaArr.js +0 -608
  161. package/apps/web/dist/assets/runPanel-BjG5NBKm.js +0 -26
  162. package/apps/web/src/App.tsx +0 -318
  163. package/apps/web/src/SessionList.tsx +0 -157
  164. package/apps/web/src/SurfaceShortcuts.tsx +0 -60
  165. package/apps/web/src/WorkspacePanel.tsx +0 -309
  166. package/apps/web/src/run-panel.tsx +0 -52
  167. package/bundles/ragents.orchestration/server/chunks/chunk-QS3WJ3D7.js +0 -11
  168. package/bundles/ragents.orchestration/server/chunks/chunk-QS3WJ3D7.js.map +0 -7
  169. package/bundles/ragents.orchestration/server/exports/server/contract.js +0 -9
  170. package/bundles/ragents.orchestration/server/exports/server/contract.js.map +0 -7
  171. package/bundles/ragents.orchestration/surface.hbs +0 -39
  172. package/bundles/ragents.orchestration/web/chunks/chunk-CFMJD5ZI.js +0 -2
  173. package/bundles/ragents.orchestration/web/chunks/chunk-CFMJD5ZI.js.map +0 -7
  174. package/bundles/ragents.orchestration/web/chunks/chunk-HOBLI364.js +0 -2
  175. package/bundles/ragents.orchestration/web/chunks/chunk-HOBLI364.js.map +0 -7
  176. package/bundles/ragents.orchestration/web/chunks/chunk-UCIMT2R4.js +0 -2
  177. package/bundles/ragents.orchestration/web/chunks/chunk-UCIMT2R4.js.map +0 -7
  178. package/bundles/ragents.orchestration/web/chunks/chunk-XGPPQCZR.js +0 -2
  179. package/bundles/ragents.orchestration/web/chunks/chunk-XGPPQCZR.js.map +0 -7
  180. package/bundles/ragents.orchestration/web/exports/web/surface-entities.js +0 -2
  181. package/bundles/ragents.orchestration/web/exports/web/surface-entities.js.map +0 -7
  182. package/bundles/ragents.orchestration/web/exports/web/tile-docking.js +0 -2
  183. package/bundles/ragents.orchestration/web/exports/web/tile-docking.js.map +0 -7
  184. package/plugins/ragents.actor-programs/web/ExpandIcon.tsx +0 -5
  185. package/plugins/ragents.actor-programs/web/FullscreenHost.tsx +0 -31
  186. package/plugins/ragents.orchestration/contract.ts +0 -51
  187. package/plugins/ragents.orchestration/server/contract.ts +0 -14
  188. package/plugins/ragents.orchestration/server/surface-tool.ts +0 -198
  189. package/plugins/ragents.orchestration/surface.hbs +0 -39
  190. package/plugins/ragents.orchestration/tiled-layout.ts +0 -55
  191. package/plugins/ragents.orchestration/web/ActorChatPreview.tsx +0 -29
  192. package/plugins/ragents.orchestration/web/ActorShortcut.tsx +0 -74
  193. package/plugins/ragents.orchestration/web/ActorSurfaceControls.tsx +0 -130
  194. package/plugins/ragents.orchestration/web/ActorTile.tsx +0 -23
  195. package/plugins/ragents.orchestration/web/Center.tsx +0 -133
  196. package/plugins/ragents.orchestration/web/SurfaceTiles.tsx +0 -47
  197. package/plugins/ragents.orchestration/web/TiledSurface.tsx +0 -280
  198. package/plugins/ragents.orchestration/web/actor-header-settings.ts +0 -41
  199. package/plugins/ragents.orchestration/web/run-panel/RunPanelSettings.tsx +0 -50
  200. package/plugins/ragents.orchestration/web/run-panel/run-panel-settings.ts +0 -47
  201. package/plugins/ragents.orchestration/web/run-panel/sheet-status.ts +0 -30
  202. package/plugins/ragents.orchestration/web/surface-entities.ts +0 -21
  203. package/plugins/ragents.orchestration/web/surface-view-settings.ts +0 -42
  204. package/plugins/ragents.orchestration/web/tile-docking.ts +0 -105
  205. package/plugins/ragents.orchestration/web/tiled-view-settings.ts +0 -74
  206. /package/apps/web/dist/assets/{mermaid-HWGCJPDP-BPn4aV2r.css → main-BPn4aV2r.css} +0 -0
@@ -132,47 +132,26 @@
132
132
  <button class="nav-menu" type="button" aria-expanded="false" aria-controls="main-navigation"><span data-menu-label>Menu</span><svg viewBox="0 0 24 24" aria-hidden="true"><path d="m6 9 6 6 6-6"/></svg></button>
133
133
  </header><main class="shell" id="main"><div class="guide-layout"><aside class="guide-sidebar"><nav class="guide-chapters" aria-label="Guide navigation"><a href="guide.html">Overview</a><div class="guide-nav-group"><p>Understand</p><a href="guide-ideas.html">Core ideas</a><a href="guide-runtime.html">Actors and messages</a></div><div class="guide-nav-group"><p>Use</p><a href="guide-getting-started.html">Get started</a><a href="guide-clients.html" aria-current="page">Web and VS Code</a><a href="guide-distributed.html">Distributed work</a></div><div class="guide-nav-group"><p>Build</p><a href="guide-functions.html">Work with TypeScript</a><a href="guide-programs.html">Build mini-apps</a><a href="guide-plugins.html">Plugins and skills</a></div><div class="guide-nav-group"><p>Access</p><a href="guide-access.html">Assign permissions</a></div></nav></aside><details class="guide-mobile-nav"><summary>Guide: Web and VS Code</summary><nav class="guide-chapters" aria-label="Guide navigation"><a href="guide.html">Overview</a><div class="guide-nav-group"><p>Understand</p><a href="guide-ideas.html">Core ideas</a><a href="guide-runtime.html">Actors and messages</a></div><div class="guide-nav-group"><p>Use</p><a href="guide-getting-started.html">Get started</a><a href="guide-clients.html" aria-current="page">Web and VS Code</a><a href="guide-distributed.html">Distributed work</a></div><div class="guide-nav-group"><p>Build</p><a href="guide-functions.html">Work with TypeScript</a><a href="guide-programs.html">Build mini-apps</a><a href="guide-plugins.html">Plugins and skills</a></div><div class="guide-nav-group"><p>Access</p><a href="guide-access.html">Assign permissions</a></div></nav></details><article class="guide-body"><header class="guide-title"><p class="eyebrow"><a href="guide.html">Guide</a></p><h1>Web and VS Code</h1><p>Use the same runs in the browser and in the VS Code extension; automate them through the API and command-line tools.</p></header><details class="guide-page-nav"><summary>On this page</summary><nav aria-label="On this page"><a href="#run-panel-and-vs-code-extension">Run panel and VS Code extension</a><a href="#control-ragents-as-an-agent">Control RAgents as an agent</a><a href="#drive-runs-from-external-clients">Drive runs from external clients</a></nav></details><h2 id="run-panel-and-vs-code-extension">Run panel and VS Code extension</h2>
134
134
  <p>The run panel is also available in the browser. <code>http://localhost:4710/run-panel.html?run=&lt;id&gt;</code>
135
- shows a run in a narrow layout with mini-app chips, the selected app, actor chips, chat, and the
136
- tab bar on the right. Without <code>run</code>, it shows the run list with &quot;New run&quot; as the first
137
- card. <code>run-panel.html?layout=app&amp;run=&lt;id&gt;&amp;element=&lt;app-id&gt;</code> shows one mini-app without the tab bar.
138
- Run-panel state, including the selected app and actor, view mode, chat width, collapsed chat
139
- height, open tab, and tab-area height, is stored per run in the browser.</p>
135
+ shows chat with an addressee selector, mini-app tabs, and the inspection bar on the right.
136
+ Without <code>run</code>, it shows the shared Start page.
137
+ <code>run-panel.html?layout=app&amp;run=&lt;id&gt;&amp;element=&lt;app-id&gt;</code> shows one mini-app without the tab bar.
138
+ The selected app and addressee are stored per run in the browser.</p>
140
139
  <p>With write rights, the menu at the top right of an open run offers &quot;Run script&quot;: it lists the run
141
140
  scripts you may start, each with its description, and greyed out with the reason when it cannot
142
141
  join this run, because its <code>RUN.md</code> does not set <code>embeddable: true</code> or because it fixes a start
143
142
  option to a value the run does not have. A click starts it inside the run without a start value;
144
- the primary actor stays, a repeated start reuses the script, its main view is placed next to the
145
- tiles, and its output and summary appear in the chat as <code>@handle: ...</code>. If the start is refused,
143
+ the primary actor stays, a repeated start reuses the script, its main view becomes available as an app, and its output and summary appear in the chat as <code>@handle: ...</code>. If the start is refused,
146
144
  the menu shows why. The same menu works in the VS Code run panel.</p>
147
- <p>The narrow tab bar on the right contains the same tabs as the full web view: files, documents,
148
- functions, executions, and language-server diagnostics, depending on the run and the user&#39;s
149
- permissions. The tab name appears in a tooltip. A small counter sits at the top right of its
150
- button, while a dot at the bottom right indicates new activity since the last view. Clicking a
151
- button opens that tab below the chat with its name and an X in the header. Clicking the same
152
- button or the X closes it; another button switches tabs. Drag the top handle or use the up and
153
- down arrow keys to change the area&#39;s height. At least 160 pixels remain for the chat. The open
154
- tab and height are stored per run in the browser, per VS Code window, and independently from the
155
- full web view.</p>
156
- <p>Once a mini-app is selected, three header buttons control the run-panel view: &quot;Chat only&quot;
157
- (speech bubble), &quot;Chat below&quot; (a sheet over the app), and &quot;Chat right&quot; (beside the app).
158
- &quot;Chat right&quot; is the default. While the panel is narrower than the
159
- configured width, that option is disabled and the chat stays below. &quot;Chat only&quot; gives the chat the
160
- entire panel: the mini-app
161
- recedes, nothing slides in or out, and an open sheet closes cleanly. Switching back rebuilds the
162
- mini-app, so unsaved input in it is lost. The choice is stored per run and survives a restart.
163
- The extension can also open a mini-app as an editor tab in the center, which works well with
164
- &quot;Chat only&quot; in the run panel.</p>
165
- <p>In &quot;Chat below&quot;, the handle controls the expanded chat height. Dragging up makes it taller;
166
- dragging down makes it shorter. The chosen height is stored per run. The collapsed chat shows the
167
- handle, status, and complete input, including multiple input lines. An open question sits
168
- completely above the input there as well: the collapsed chat grows by its height, up to half of
169
- the panel, and the status line reads &quot;Waiting for input&quot;. Hovering or
170
- writing opens the chat to the chosen height (90 percent of the panel by default). Dragging leaves
171
- the chat open at its new height. Clicking the handle opens or closes it. With
172
- keyboard focus on the handle, up and down change the height, Home and End select its limits, and
173
- Escape cancels an active drag.</p>
174
- <p>The collapsed chat keeps its rounded border, background, and shadow. The compact handle row
175
- shows keyboard focus on the small grip itself.</p>
145
+ <p>The inspection rail on the right contains files, documents, functions, executions, and
146
+ language-server diagnostics according to the run and your permissions. Clicking an icon opens
147
+ a panel over the current view. The same icon, Escape, X, or the backdrop closes it. The open
148
+ inspection tab is stored per run. Visited persistent panels keep their state while closed.</p>
149
+ <p>In the browser panel, select Chat or a mini-app in the tab row. Only that view is visible;
150
+ visited apps keep their local input when you switch away. A new app appears without taking focus,
151
+ and an unavailable selected app returns you to Chat. In VS Code, click an app entry to open or
152
+ focus its single editor tab; moving that tab between editor groups does not create a second one.
153
+ The panel stays on chat. Questions and news stay in the chat, and unsent drafts stay with their
154
+ addressee when you switch actors.</p>
176
155
  <p>The chip at the left of the chat input names the addressee, the actor your messages go to.
177
156
  Clicking it opens the addressee list as a tree of who created whom, like the agent tree of a
178
157
  coding assistant: the coordinator at the top, below it the agents and TypeScript actors it
@@ -185,9 +164,8 @@ with their shared handle prefix, their number, and a count per state; click it t
185
164
  it. A group that contains the current addressee opens by itself. With more than twelve actors a
186
165
  search field appears above the tree; it matches every word against handle, display name, and
187
166
  description and keeps the creators of each hit visible. Clicking an entry makes it the addressee
188
- and closes the list. Hidden actors, as chosen with &quot;Show&quot; in the footer, sit in their own tree
189
- behind &quot;Hidden actors&quot;; picking one of them also shows it again. In runs recorded before
190
- actors had descriptions, the description falls back to the first assignment or the display name.</p>
167
+ and closes the list. All actors permitted by your access rights are available, including stopped
168
+ actors. TypeScript actors require inspection rights.</p>
191
169
  <p>The extension lives under <code>apps/vscode</code>. It works with all configured <strong>servers at the same
192
170
  time</strong>; there is no single active connection. A server in the <code>ragents.connections</code> setting is
193
171
  either a server (<code>name</code> and <code>url</code>; it connects automatically when activated and its card asks
@@ -308,8 +286,8 @@ confirmation; to stop a single actor for good, use &quot;Stop&quot; on its actor
308
286
  been stopped, the input is replaced by <code>@handle stopped: &lt;reason&gt;</code> and, with permission to operate
309
287
  and inspect the run, &quot;Restart&quot;. Restarting the former primary actor makes it the
310
288
  primary actor again, and the run chat continues.</p>
311
- <p>The arrow on a mini-app in the run-panel stage opens it as a central editor tab; &quot;Back to panel&quot;
312
- closes the tab. Text artifacts and the journal open as read-only documents, while other artifacts
289
+ <p>Click a mini-app in the run panel to open or focus its editor tab. Move and close that tab with
290
+ VS Code; opening it again reuses its current group or creates one editor after it was closed. Text artifacts and the journal open as read-only documents, while other artifacts
313
291
  open in the browser. <code>RAgents: New run</code> uses a Quick Pick grouped by server and template.
314
292
  The first entry for each server is its default, marked &quot;Default&quot;, or the free task without
315
293
  a template. The commands <code>RAgents: Disconnect</code>, <code>RAgents: Connect</code>, and
@@ -317,7 +295,9 @@ a template. The commands <code>RAgents: Disconnect</code>, <code>RAgents: Connec
317
295
  <p>When the run chat or a hosted mini-app input has focus, VS Code shortcuts such as Cmd/Ctrl+P
318
296
  and Cmd/Ctrl+Shift+P still work using your keybindings, including key chords. This also applies
319
297
  to nested hosted mini-app frames. Text entry, selection, undo, and clipboard actions remain in
320
- the input field. Dictation tools that paste their result, such as HEX, use the same input path.
298
+ the input field. After pasting, focus stays in that input, including in nested mini-apps and
299
+ when the clipboard is empty. You can continue typing or undo without clicking the input again.
300
+ Dictation tools that paste their result, such as HEX, use the same input path.
321
301
  Keys already handled by the chat or mini-app are not also executed as VS Code commands.
322
302
  In a regular browser, native keyboard and clipboard behavior remains in use.</p>
323
303
  <p>To make RAgents smaller or larger independently of VS Code&#39;s window zoom, set <code>ragents.zoom</code>
@@ -5,52 +5,29 @@ Use the same runs in the browser and in the VS Code extension; automate them thr
5
5
  ## Run panel and VS Code extension
6
6
 
7
7
  The run panel is also available in the browser. `http://localhost:4710/run-panel.html?run=<id>`
8
- shows a run in a narrow layout with mini-app chips, the selected app, actor chips, chat, and the
9
- tab bar on the right. Without `run`, it shows the run list with "New run" as the first
10
- card. `run-panel.html?layout=app&run=<id>&element=<app-id>` shows one mini-app without the tab bar.
11
- Run-panel state, including the selected app and actor, view mode, chat width, collapsed chat
12
- height, open tab, and tab-area height, is stored per run in the browser.
8
+ shows chat with an addressee selector, mini-app tabs, and the inspection bar on the right.
9
+ Without `run`, it shows the shared Start page.
10
+ `run-panel.html?layout=app&run=<id>&element=<app-id>` shows one mini-app without the tab bar.
11
+ The selected app and addressee are stored per run in the browser.
13
12
 
14
13
  With write rights, the menu at the top right of an open run offers "Run script": it lists the run
15
14
  scripts you may start, each with its description, and greyed out with the reason when it cannot
16
15
  join this run, because its `RUN.md` does not set `embeddable: true` or because it fixes a start
17
16
  option to a value the run does not have. A click starts it inside the run without a start value;
18
- the primary actor stays, a repeated start reuses the script, its main view is placed next to the
19
- tiles, and its output and summary appear in the chat as `@handle: ...`. If the start is refused,
17
+ the primary actor stays, a repeated start reuses the script, its main view becomes available as an app, and its output and summary appear in the chat as `@handle: ...`. If the start is refused,
20
18
  the menu shows why. The same menu works in the VS Code run panel.
21
19
 
22
- The narrow tab bar on the right contains the same tabs as the full web view: files, documents,
23
- functions, executions, and language-server diagnostics, depending on the run and the user's
24
- permissions. The tab name appears in a tooltip. A small counter sits at the top right of its
25
- button, while a dot at the bottom right indicates new activity since the last view. Clicking a
26
- button opens that tab below the chat with its name and an X in the header. Clicking the same
27
- button or the X closes it; another button switches tabs. Drag the top handle or use the up and
28
- down arrow keys to change the area's height. At least 160 pixels remain for the chat. The open
29
- tab and height are stored per run in the browser, per VS Code window, and independently from the
30
- full web view.
31
-
32
- Once a mini-app is selected, three header buttons control the run-panel view: "Chat only"
33
- (speech bubble), "Chat below" (a sheet over the app), and "Chat right" (beside the app).
34
- "Chat right" is the default. While the panel is narrower than the
35
- configured width, that option is disabled and the chat stays below. "Chat only" gives the chat the
36
- entire panel: the mini-app
37
- recedes, nothing slides in or out, and an open sheet closes cleanly. Switching back rebuilds the
38
- mini-app, so unsaved input in it is lost. The choice is stored per run and survives a restart.
39
- The extension can also open a mini-app as an editor tab in the center, which works well with
40
- "Chat only" in the run panel.
41
-
42
- In "Chat below", the handle controls the expanded chat height. Dragging up makes it taller;
43
- dragging down makes it shorter. The chosen height is stored per run. The collapsed chat shows the
44
- handle, status, and complete input, including multiple input lines. An open question sits
45
- completely above the input there as well: the collapsed chat grows by its height, up to half of
46
- the panel, and the status line reads "Waiting for input". Hovering or
47
- writing opens the chat to the chosen height (90 percent of the panel by default). Dragging leaves
48
- the chat open at its new height. Clicking the handle opens or closes it. With
49
- keyboard focus on the handle, up and down change the height, Home and End select its limits, and
50
- Escape cancels an active drag.
51
-
52
- The collapsed chat keeps its rounded border, background, and shadow. The compact handle row
53
- shows keyboard focus on the small grip itself.
20
+ The inspection rail on the right contains files, documents, functions, executions, and
21
+ language-server diagnostics according to the run and your permissions. Clicking an icon opens
22
+ a panel over the current view. The same icon, Escape, X, or the backdrop closes it. The open
23
+ inspection tab is stored per run. Visited persistent panels keep their state while closed.
24
+
25
+ In the browser panel, select Chat or a mini-app in the tab row. Only that view is visible;
26
+ visited apps keep their local input when you switch away. A new app appears without taking focus,
27
+ and an unavailable selected app returns you to Chat. In VS Code, click an app entry to open or
28
+ focus its single editor tab; moving that tab between editor groups does not create a second one.
29
+ The panel stays on chat. Questions and news stay in the chat, and unsent drafts stay with their
30
+ addressee when you switch actors.
54
31
 
55
32
  The chip at the left of the chat input names the addressee, the actor your messages go to.
56
33
  Clicking it opens the addressee list as a tree of who created whom, like the agent tree of a
@@ -64,9 +41,9 @@ with their shared handle prefix, their number, and a count per state; click it t
64
41
  it. A group that contains the current addressee opens by itself. With more than twelve actors a
65
42
  search field appears above the tree; it matches every word against handle, display name, and
66
43
  description and keeps the creators of each hit visible. Clicking an entry makes it the addressee
67
- and closes the list. Hidden actors, as chosen with "Show" in the footer, sit in their own tree
68
- behind "Hidden actors"; picking one of them also shows it again. In runs recorded before
69
- actors had descriptions, the description falls back to the first assignment or the display name.
44
+ and closes the list. All actors permitted by your access rights are available, including stopped
45
+ actors. TypeScript actors require inspection rights.
46
+
70
47
 
71
48
  The extension lives under `apps/vscode`. It works with all configured **servers at the same
72
49
  time**; there is no single active connection. A server in the `ragents.connections` setting is
@@ -200,8 +177,8 @@ been stopped, the input is replaced by `@handle stopped: <reason>` and, with per
200
177
  and inspect the run, "Restart". Restarting the former primary actor makes it the
201
178
  primary actor again, and the run chat continues.
202
179
 
203
- The arrow on a mini-app in the run-panel stage opens it as a central editor tab; "Back to panel"
204
- closes the tab. Text artifacts and the journal open as read-only documents, while other artifacts
180
+ Click a mini-app in the run panel to open or focus its editor tab. Move and close that tab with
181
+ VS Code; opening it again reuses its current group or creates one editor after it was closed. Text artifacts and the journal open as read-only documents, while other artifacts
205
182
  open in the browser. `RAgents: New run` uses a Quick Pick grouped by server and template.
206
183
  The first entry for each server is its default, marked "Default", or the free task without
207
184
  a template. The commands `RAgents: Disconnect`, `RAgents: Connect`, and
@@ -210,7 +187,9 @@ a template. The commands `RAgents: Disconnect`, `RAgents: Connect`, and
210
187
  When the run chat or a hosted mini-app input has focus, VS Code shortcuts such as Cmd/Ctrl+P
211
188
  and Cmd/Ctrl+Shift+P still work using your keybindings, including key chords. This also applies
212
189
  to nested hosted mini-app frames. Text entry, selection, undo, and clipboard actions remain in
213
- the input field. Dictation tools that paste their result, such as HEX, use the same input path.
190
+ the input field. After pasting, focus stays in that input, including in nested mini-apps and
191
+ when the clipboard is empty. You can continue typing or undo without clicking the input again.
192
+ Dictation tools that paste their result, such as HEX, use the same input path.
214
193
  Keys already handled by the chat or mini-app are not also executed as VS Code commands.
215
194
  In a regular browser, native keyboard and clipboard behavior remains in use.
216
195
 
@@ -163,7 +163,7 @@ permissions; plain LLMs with <code>tools: []</code> do not receive it.</p>
163
163
  <code>label</code> for people. <code>description</code> briefly explains its purpose and appears in the automatic
164
164
  overview. An optional <code>longDescription</code> adds detailed rules, prerequisites, and examples. Input
165
165
  and result types come from schemas; descriptions do not replace those contracts. Local recursive
166
- schema references create named TypeScript aliases, keeping nested contracts such as the tile tree
166
+ schema references create named TypeScript aliases, keeping nested recursive contracts
167
167
  fully typed in snippets, actor programs, and the public run API. Resolution includes local
168
168
  <code>$defs</code> references; external references are not loaded.</p>
169
169
  <p>Without selected names, <code>typescript_api</code> returns the compact catalog. <code>query</code> searches names and
@@ -43,7 +43,7 @@ A function registered with `defineRunFunction` has a technical `name` for calls
43
43
  `label` for people. `description` briefly explains its purpose and appears in the automatic
44
44
  overview. An optional `longDescription` adds detailed rules, prerequisites, and examples. Input
45
45
  and result types come from schemas; descriptions do not replace those contracts. Local recursive
46
- schema references create named TypeScript aliases, keeping nested contracts such as the tile tree
46
+ schema references create named TypeScript aliases, keeping nested recursive contracts
47
47
  fully typed in snippets, actor programs, and the public run API. Resolution includes local
48
48
  `$defs` references; external references are not loaded.
49
49
 
@@ -130,7 +130,7 @@
130
130
  <a class="nav-github" href="https://github.com/SchlenkR/RAgents" aria-label="GitHub"><svg class="gh-icon" viewBox="0 0 24 24" aria-hidden="true"><path fill="currentColor" d="M12 2a10 10 0 0 0-3.2 19.5c.5.1.7-.2.7-.5v-1.7c-2.8.6-3.4-1.3-3.4-1.3-.5-1.2-1.1-1.5-1.1-1.5-.9-.6.1-.6.1-.6 1 .1 1.5 1 1.5 1 .9 1.6 2.4 1.1 3 .9.1-.7.4-1.1.6-1.4-2.2-.3-4.6-1.1-4.6-5 0-1.1.4-2 1-2.7-.1-.3-.4-1.3.1-2.7 0 0 .8-.3 2.8 1a9.6 9.6 0 0 1 5 0c1.9-1.3 2.8-1 2.8-1 .5 1.4.2 2.4.1 2.7.6.7 1 1.6 1 2.7 0 3.9-2.4 4.7-4.6 5 .4.3.7.9.7 1.9V21c0 .3.2.6.7.5A10 10 0 0 0 12 2Z"/></svg><span class="gh-label">GitHub</span></a>
131
131
  </nav>
132
132
  <button class="nav-menu" type="button" aria-expanded="false" aria-controls="main-navigation"><span data-menu-label>Menu</span><svg viewBox="0 0 24 24" aria-hidden="true"><path d="m6 9 6 6 6-6"/></svg></button>
133
- </header><main class="shell" id="main"><div class="guide-layout"><aside class="guide-sidebar"><nav class="guide-chapters" aria-label="Guide navigation"><a href="guide.html">Overview</a><div class="guide-nav-group"><p>Understand</p><a href="guide-ideas.html">Core ideas</a><a href="guide-runtime.html">Actors and messages</a></div><div class="guide-nav-group"><p>Use</p><a href="guide-getting-started.html" aria-current="page">Get started</a><a href="guide-clients.html">Web and VS Code</a><a href="guide-distributed.html">Distributed work</a></div><div class="guide-nav-group"><p>Build</p><a href="guide-functions.html">Work with TypeScript</a><a href="guide-programs.html">Build mini-apps</a><a href="guide-plugins.html">Plugins and skills</a></div><div class="guide-nav-group"><p>Access</p><a href="guide-access.html">Assign permissions</a></div></nav></aside><details class="guide-mobile-nav"><summary>Guide: Get started</summary><nav class="guide-chapters" aria-label="Guide navigation"><a href="guide.html">Overview</a><div class="guide-nav-group"><p>Understand</p><a href="guide-ideas.html">Core ideas</a><a href="guide-runtime.html">Actors and messages</a></div><div class="guide-nav-group"><p>Use</p><a href="guide-getting-started.html" aria-current="page">Get started</a><a href="guide-clients.html">Web and VS Code</a><a href="guide-distributed.html">Distributed work</a></div><div class="guide-nav-group"><p>Build</p><a href="guide-functions.html">Work with TypeScript</a><a href="guide-programs.html">Build mini-apps</a><a href="guide-plugins.html">Plugins and skills</a></div><div class="guide-nav-group"><p>Access</p><a href="guide-access.html">Assign permissions</a></div></nav></details><article class="guide-body"><header class="guide-title"><p class="eyebrow"><a href="guide.html">Guide</a></p><h1>Get started</h1><p>Install RAgents, start a profile, and create your first run.</p></header><details class="guide-page-nav"><summary>On this page</summary><nav aria-label="On this page"><a href="#install-locally">Install locally</a><a href="#configure-model-access-and-start">Configure model access and start</a><a href="#build-after-changes">Build after changes</a><a href="#create-your-first-run">Create your first run</a><a href="#use-the-surface">Use the surface</a></nav></details><h2 id="install-locally">Install locally</h2>
133
+ </header><main class="shell" id="main"><div class="guide-layout"><aside class="guide-sidebar"><nav class="guide-chapters" aria-label="Guide navigation"><a href="guide.html">Overview</a><div class="guide-nav-group"><p>Understand</p><a href="guide-ideas.html">Core ideas</a><a href="guide-runtime.html">Actors and messages</a></div><div class="guide-nav-group"><p>Use</p><a href="guide-getting-started.html" aria-current="page">Get started</a><a href="guide-clients.html">Web and VS Code</a><a href="guide-distributed.html">Distributed work</a></div><div class="guide-nav-group"><p>Build</p><a href="guide-functions.html">Work with TypeScript</a><a href="guide-programs.html">Build mini-apps</a><a href="guide-plugins.html">Plugins and skills</a></div><div class="guide-nav-group"><p>Access</p><a href="guide-access.html">Assign permissions</a></div></nav></aside><details class="guide-mobile-nav"><summary>Guide: Get started</summary><nav class="guide-chapters" aria-label="Guide navigation"><a href="guide.html">Overview</a><div class="guide-nav-group"><p>Understand</p><a href="guide-ideas.html">Core ideas</a><a href="guide-runtime.html">Actors and messages</a></div><div class="guide-nav-group"><p>Use</p><a href="guide-getting-started.html" aria-current="page">Get started</a><a href="guide-clients.html">Web and VS Code</a><a href="guide-distributed.html">Distributed work</a></div><div class="guide-nav-group"><p>Build</p><a href="guide-functions.html">Work with TypeScript</a><a href="guide-programs.html">Build mini-apps</a><a href="guide-plugins.html">Plugins and skills</a></div><div class="guide-nav-group"><p>Access</p><a href="guide-access.html">Assign permissions</a></div></nav></details><article class="guide-body"><header class="guide-title"><p class="eyebrow"><a href="guide.html">Guide</a></p><h1>Get started</h1><p>Install RAgents, start a profile, and create your first run.</p></header><details class="guide-page-nav"><summary>On this page</summary><nav aria-label="On this page"><a href="#install-locally">Install locally</a><a href="#configure-model-access-and-start">Configure model access and start</a><a href="#build-after-changes">Build after changes</a><a href="#create-your-first-run">Create your first run</a><a href="#use-chat-and-mini-apps">Use chat and mini-apps</a></nav></details><h2 id="install-locally">Install locally</h2>
134
134
  <p>The application is built from the repository with Node.js and pnpm. Run these commands from
135
135
  the repository root:</p>
136
136
  <pre><code class="language-sh">pnpm install
@@ -208,8 +208,7 @@ bundles or an outdated interface and names <code>pnpm build:plugins</code> or <c
208
208
  Settings opens the included help. For separate static hosting, <code>pnpm generate:homepage</code> creates
209
209
  the same website under <code>docs/homepage/dist</code>.</p>
210
210
  <h2 id="create-your-first-run">Create your first run</h2>
211
- <p>The top-left corner opens the run overview. Choose &quot;New run&quot; to open the start selection. It
212
- shows the same tiles as the start page in VS Code: &quot;New chat&quot; or the server&#39;s default
211
+ <p>Start shows recent runs and the same templates in the browser and VS Code: &quot;New chat&quot; or the server&#39;s default
213
212
  template first, then skill templates with a prepared task and script templates with programmed
214
213
  setups. &quot;New chat&quot; opens an empty run whose task you write in its chat; a template starts with one
215
214
  click. Some templates collect values in a setup dialog first (&quot;Set up&quot;); a skill template then
@@ -217,27 +216,20 @@ continues in the preparation chat. There you can discuss the task, give a clear
217
216
  &quot;Start&quot;, or choose &quot;Create run&quot;. Merely confirming a detail does not start
218
217
  anything. In the browser a new run always works on the server; only VS Code and <code>ragents run</code>
219
218
  bind a run to a workstation.</p>
219
+ <p>While a template starts, the panel shows its progress in the chat area and reserves the
220
+ bottom status bar, keeping the notice in place when the run connects.</p>
220
221
  <p>Inside the run, the coordinator processes the task. Additional agents and mini-apps appear on
221
222
  the surface when the workflow creates them. The global coordinator in the header has its own
222
223
  conversation and can oversee several runs. The journal and &quot;Executions&quot; tab make events and
223
224
  TypeScript calls traceable.</p>
224
- <h2 id="use-the-surface">Use the surface</h2>
225
- <p>A run&#39;s surface consists of tiles. Each tile shows an actor or mini-app, and together they
226
- fill the available space. There is no panning or zooming. Tiles use flat surfaces, outlines,
227
- and rounded corners without depth. Mini-app content appears at its original size both in the
228
- tile and in full view.</p>
229
- <p>Drag an actor or mini-app from the header onto one of a tile&#39;s docking targets. Left and right
230
- create a side-by-side split; top and bottom create a vertical split. Targets at the outer edge
231
- split the entire surface. Before you release, a preview shows the resulting area. Drag an
232
- existing tile by its title bar; the X removes it from the layout. Its content remains available
233
- through the header. Without access to the actors view, removal and reordering are disabled: the
234
- X and drag handle are hidden. Dividers for adjusting size ratios remain available.</p>
235
- <p>Drag a divider to the desired ratio; releasing it saves the value. Escape cancels the active
236
- resize. With keyboard focus on a divider, arrow keys change its size while Home and End set the
237
- allowed limits. When space is tight, the &quot;Visible tile&quot; selector displays one item at a time
238
- without discarding the layout. You can also ask the coordinator: &quot;App on the left, chat on the
239
- right, 50:50&quot; or &quot;One tile on top, two below at a 2:1 ratio.&quot; Until a layout is specified, the
240
- surface arranges visible participants itself. Your changes remain saved until the program
241
- changes its layout. A new program layout is applied automatically so added tiles appear at
242
- once. &quot;Apply program layout&quot; in the status bar can reset your own layout earlier.</p>
225
+ <h2 id="use-chat-and-mini-apps">Use chat and mini-apps</h2>
226
+ <p>Activated visible mini-apps become available automatically, including those from an embedded setup.
227
+ Programs cannot arrange the host interface. Runs saved with removed layout functions or placements
228
+ are locked with an explanation; their original files are kept. Start a new run with updated programs.</p>
229
+ <p>Browser runs have tabs: Chat, then each available mini-app. Only one view is visible. Chat
230
+ and visited apps keep their input when you switch tabs. New apps appear without interrupting
231
+ your current view. If a selected app becomes unavailable, the panel returns to Chat.</p>
232
+ <p>In VS Code, clicking an app opens or focuses its editor tab. VS Code controls where that tab
233
+ appears. Questions and news stay in chat. The selector below the input chooses the addressee;
234
+ the run coordinator is selected by default.</p>
243
235
  <p class="guide-source">Source: <a href="https://github.com/SchlenkR/RAgents/blob/main/docs/operations.md">docs/operations.md</a>, <a href="https://github.com/SchlenkR/RAgents/blob/main/docs/usage.md">docs/usage.md</a>. <a href="guide-getting-started.md">This chapter as Markdown</a>.</p><p><a href="guide-clients.html">Use Web and VS Code</a></p><nav class="guide-next" aria-label="Continue reading"><a href="guide-runtime.html">Previous: Actors and messages</a><a href="guide-clients.html">Next: Web and VS Code</a></nav></article></div></main><footer class="shell"><p>Generated from public documentation. Rebuild with <code>pnpm generate:homepage</code>. Verify with <code>pnpm check:homepage</code>.</p><nav aria-label="More pages"><a href="index.html">Homepage</a><a href="guide.html">Guide</a></nav></footer></body></html>
@@ -98,8 +98,7 @@ the same website under `docs/homepage/dist`.
98
98
 
99
99
  ## Create your first run
100
100
 
101
- The top-left corner opens the run overview. Choose "New run" to open the start selection. It
102
- shows the same tiles as the start page in VS Code: "New chat" or the server's default
101
+ Start shows recent runs and the same templates in the browser and VS Code: "New chat" or the server's default
103
102
  template first, then skill templates with a prepared task and script templates with programmed
104
103
  setups. "New chat" opens an empty run whose task you write in its chat; a template starts with one
105
104
  click. Some templates collect values in a setup dialog first ("Set up"); a skill template then
@@ -108,30 +107,24 @@ continues in the preparation chat. There you can discuss the task, give a clear
108
107
  anything. In the browser a new run always works on the server; only VS Code and `ragents run`
109
108
  bind a run to a workstation.
110
109
 
110
+ While a template starts, the panel shows its progress in the chat area and reserves the
111
+ bottom status bar, keeping the notice in place when the run connects.
112
+
111
113
  Inside the run, the coordinator processes the task. Additional agents and mini-apps appear on
112
114
  the surface when the workflow creates them. The global coordinator in the header has its own
113
115
  conversation and can oversee several runs. The journal and "Executions" tab make events and
114
116
  TypeScript calls traceable.
115
117
 
116
- ## Use the surface
117
-
118
- A run's surface consists of tiles. Each tile shows an actor or mini-app, and together they
119
- fill the available space. There is no panning or zooming. Tiles use flat surfaces, outlines,
120
- and rounded corners without depth. Mini-app content appears at its original size both in the
121
- tile and in full view.
122
-
123
- Drag an actor or mini-app from the header onto one of a tile's docking targets. Left and right
124
- create a side-by-side split; top and bottom create a vertical split. Targets at the outer edge
125
- split the entire surface. Before you release, a preview shows the resulting area. Drag an
126
- existing tile by its title bar; the X removes it from the layout. Its content remains available
127
- through the header. Without access to the actors view, removal and reordering are disabled: the
128
- X and drag handle are hidden. Dividers for adjusting size ratios remain available.
129
-
130
- Drag a divider to the desired ratio; releasing it saves the value. Escape cancels the active
131
- resize. With keyboard focus on a divider, arrow keys change its size while Home and End set the
132
- allowed limits. When space is tight, the "Visible tile" selector displays one item at a time
133
- without discarding the layout. You can also ask the coordinator: "App on the left, chat on the
134
- right, 50:50" or "One tile on top, two below at a 2:1 ratio." Until a layout is specified, the
135
- surface arranges visible participants itself. Your changes remain saved until the program
136
- changes its layout. A new program layout is applied automatically so added tiles appear at
137
- once. "Apply program layout" in the status bar can reset your own layout earlier.
118
+ ## Use chat and mini-apps
119
+
120
+ Activated visible mini-apps become available automatically, including those from an embedded setup.
121
+ Programs cannot arrange the host interface. Runs saved with removed layout functions or placements
122
+ are locked with an explanation; their original files are kept. Start a new run with updated programs.
123
+
124
+ Browser runs have tabs: Chat, then each available mini-app. Only one view is visible. Chat
125
+ and visited apps keep their input when you switch tabs. New apps appear without interrupting
126
+ your current view. If a selected app becomes unavailable, the panel returns to Chat.
127
+
128
+ In VS Code, clicking an app opens or focuses its editor tab. VS Code controls where that tab
129
+ appears. Questions and news stay in chat. The selector below the input chooses the addressee;
130
+ the run coordinator is selected by default.
@@ -166,7 +166,7 @@ program again so it can assign the next actor.</p>
166
166
  the journal does not execute the recorded work again. The
167
167
  <a href="guide-runtime.html">runtime guide</a> explains how the pieces fit together.</p>
168
168
  <h2 id="mini-apps-make-the-work-interactive">Mini-apps make the work interactive</h2>
169
- <p>An actor can have a small interface: a mini-app on the surface. It displays the actor&#39;s data
169
+ <p>An actor can have a small interface: a mini-app in the shared panel. It displays the actor&#39;s data
170
170
  and calls its functions. In the word game, this interface contains the start button, progress,
171
171
  and word list. On the collection board, both an AI assistant and a person can add entries to
172
172
  the same list.</p>
@@ -51,7 +51,7 @@ the journal does not execute the recorded work again. The
51
51
 
52
52
  ## Mini-apps make the work interactive
53
53
 
54
- An actor can have a small interface: a mini-app on the surface. It displays the actor's data
54
+ An actor can have a small interface: a mini-app in the shared panel. It displays the actor's data
55
55
  and calls its functions. In the word game, this interface contains the start button, progress,
56
56
  and word list. On the collection board, both an AI assistant and a person can add entries to
57
57
  the same list.
@@ -270,7 +270,7 @@ function and the owning web-plugin contribution opens it in the correct area. Ke
270
270
  state separate from unsent input. Unchanged polling responses must not overwrite drafts, and old
271
271
  responses must not replace newer state. Keep loading and errors visible during actions, and retain
272
272
  the last valid result after a failed request. Polling must neither overlap nor continue forever
273
- in hidden areas. Test Enter, buttons, focus, narrow tiles, and dialogs inside the real host
273
+ in hidden areas. Test Enter, buttons, focus, narrow views, and dialogs inside the real host
274
274
  iframe; a render test alone does not prove native interactions work there.</p>
275
275
  <h3 id="8-choose-evidence-for-what-it-proves">8. Choose evidence for what it proves</h3>
276
276
  <p>Contract tests verify inputs, state transitions, and errors. Integration tests verify real
@@ -120,7 +120,7 @@ function and the owning web-plugin contribution opens it in the correct area. Ke
120
120
  state separate from unsent input. Unchanged polling responses must not overwrite drafts, and old
121
121
  responses must not replace newer state. Keep loading and errors visible during actions, and retain
122
122
  the last valid result after a failed request. Polling must neither overlap nor continue forever
123
- in hidden areas. Test Enter, buttons, focus, narrow tiles, and dialogs inside the real host
123
+ in hidden areas. Test Enter, buttons, focus, narrow views, and dialogs inside the real host
124
124
  iframe; a render test alone does not prove native interactions work there.
125
125
 
126
126
  ### 8. Choose evidence for what it proves
@@ -161,7 +161,7 @@ include local modules, while fixed local dependencies come from the host install
161
161
  <p><code>package.json</code> contains <code>name</code>, <code>private: true</code>, <code>type: &quot;module&quot;</code>, and <code>ragents</code> metadata with a
162
162
  title, optional description, optional backend, and optional named views. Each view has an ID and
163
163
  client entry point; its title and stylesheet are optional. A view declares no size; the host sizes
164
- its tile. At least one backend or view must exist. The host supplies HTML with a <code>root</code> element
164
+ its tab. At least one backend or view must exist. The host supplies HTML with a <code>root</code> element
165
165
  for each view. The authoritative schemas are in
166
166
  <code>apps/server/src/plugin-support/actor-programs/app-project.ts</code>; a violation names each path and
167
167
  its reason, for example <code>views.0 has unknown field width</code>.</p>
@@ -40,7 +40,7 @@ include local modules, while fixed local dependencies come from the host install
40
40
  `package.json` contains `name`, `private: true`, `type: "module"`, and `ragents` metadata with a
41
41
  title, optional description, optional backend, and optional named views. Each view has an ID and
42
42
  client entry point; its title and stylesheet are optional. A view declares no size; the host sizes
43
- its tile. At least one backend or view must exist. The host supplies HTML with a `root` element
43
+ its tab. At least one backend or view must exist. The host supplies HTML with a `root` element
44
44
  for each view. The authoritative schemas are in
45
45
  `apps/server/src/plugin-support/actor-programs/app-project.ts`; a violation names each path and
46
46
  its reason, for example `views.0 has unknown field width`.