@schlenkr/ragents 0.1.10 → 0.1.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/apps/server/package.json +1 -1
- package/apps/server/src/access-projection.ts +4 -4
- package/apps/server/src/access-service.ts +3 -3
- package/apps/server/src/access-session.ts +19 -19
- package/apps/server/src/api/contracts.ts +29 -29
- package/apps/server/src/api/core-methods.ts +17 -17
- package/apps/server/src/api/delivery.ts +2 -2
- package/apps/server/src/api/reference.ts +27 -27
- package/apps/server/src/api/rights.ts +18 -18
- package/apps/server/src/chat-handler.ts +5 -5
- package/apps/server/src/config-definition.ts +37 -10
- package/apps/server/src/config-file.ts +49 -49
- package/apps/server/src/config.ts +2 -0
- package/apps/server/src/data-directory.ts +2 -2
- package/apps/server/src/external-access.ts +1 -1
- package/apps/server/src/folder-install.ts +1 -1
- package/apps/server/src/help-files.ts +1 -1
- package/apps/server/src/host-api.json +6 -1
- package/apps/server/src/host-api.ts +3 -2
- package/apps/server/src/host-record.ts +3 -3
- package/apps/server/src/host-resolution-hooks.mjs +4 -4
- package/apps/server/src/host-version.ts +17 -17
- package/apps/server/src/host-web.ts +5 -5
- package/apps/server/src/main.ts +6 -6
- package/apps/server/src/missing-environment.ts +6 -6
- package/apps/server/src/parent-watch.ts +4 -4
- package/apps/server/src/plugin-build/build.ts +31 -31
- package/apps/server/src/plugin-build/host-api-names.ts +7 -7
- package/apps/server/src/plugin-build/plugin-description.ts +15 -15
- package/apps/server/src/plugin-build/typecheck.ts +1 -1
- package/apps/server/src/plugin-support/actor-programs/app-project.ts +19 -19
- package/apps/server/src/plugin-support/actor-programs/client-compiler.ts +4 -4
- package/apps/server/src/plugin-support/actor-programs/client-contracts.ts +11 -11
- package/apps/server/src/plugin-support/actor-programs/contract.ts +17 -17
- package/apps/server/src/plugin-support/actor-programs/runtime-libraries.ts +1 -1
- package/apps/server/src/plugin-support/actor-programs/workflow/index.ts +5 -5
- package/apps/server/src/plugin-support/actor-programs/workflow/prompt-reader.ts +2 -2
- package/apps/server/src/plugin-support/chat-display-policy.ts +2 -2
- package/apps/server/src/plugin-support/front-matter.ts +6 -6
- package/apps/server/src/plugin-support/http.ts +2 -2
- package/apps/server/src/plugin-support/language-server/contract.ts +8 -8
- package/apps/server/src/plugin-support/language-server/plugin.ts +2 -2
- package/apps/server/src/plugin-support/language-server/snapshot-method.ts +1 -1
- package/apps/server/src/plugin-support/language-server/tools.ts +11 -11
- package/apps/server/src/plugin-support/model-aliases.ts +30 -20
- package/apps/server/src/plugin-support/model-choice.ts +15 -15
- package/apps/server/src/plugin-support/model-completion.ts +44 -23
- package/apps/server/src/plugin-support/model-providers.ts +170 -0
- package/apps/server/src/plugin-support/model-upstreams.ts +1 -1
- package/apps/server/src/plugin-support/native-typescript-child.ts +4 -4
- package/apps/server/src/plugin-support/native-typescript-executor.ts +12 -12
- package/apps/server/src/plugin-support/plugin-config.ts +3 -3
- package/apps/server/src/plugin-support/plugin-folder.ts +2 -2
- package/apps/server/src/plugin-support/plugins-root.ts +2 -2
- package/apps/server/src/plugin-support/process-sandbox.ts +39 -39
- package/apps/server/src/plugin-support/product-model-settings-contract.ts +3 -3
- package/apps/server/src/plugin-support/product-model-settings.ts +10 -10
- package/apps/server/src/plugin-support/product-relay.ts +9 -9
- package/apps/server/src/plugin-support/product-start-options.ts +4 -4
- package/apps/server/src/plugin-support/prompt.ts +1 -1
- package/apps/server/src/plugin-support/provision.ts +8 -8
- package/apps/server/src/plugin-support/run-scripts.ts +17 -17
- package/apps/server/src/plugin-support/skills.ts +18 -18
- package/apps/server/src/plugin-support/start-entries-contract.ts +17 -17
- package/apps/server/src/plugin-support/start-options-contract.ts +5 -5
- package/apps/server/src/plugin-support/system-prompts.ts +11 -11
- package/apps/server/src/plugin-support/thinking-level.ts +2 -2
- package/apps/server/src/plugin-support/tool-availability.ts +2 -2
- package/apps/server/src/plugin-support/workspace-ownership.ts +5 -5
- package/apps/server/src/plugin-support/workspace-sandbox-host.ts +37 -37
- package/apps/server/src/plugin-support/zip.ts +7 -7
- package/apps/server/src/profile/bundle-manifest.ts +17 -17
- package/apps/server/src/profile/compose.ts +12 -7
- package/apps/server/src/profile/plugin-discovery.ts +12 -12
- package/apps/server/src/profile/provisioning.ts +5 -5
- package/apps/server/src/profile-target.ts +10 -10
- package/apps/server/src/protocol.ts +2 -2
- package/apps/server/src/provider.ts +61 -56
- package/apps/server/src/ragents/actor-chat-history.ts +8 -8
- package/apps/server/src/ragents/chat-text-positions.ts +2 -2
- package/apps/server/src/ragents/coordinator.ts +2 -2
- package/apps/server/src/ragents/engine.ts +23 -23
- package/apps/server/src/ragents/global-chat.ts +8 -8
- package/apps/server/src/ragents/host-services.ts +6 -3
- package/apps/server/src/ragents/journal-chat-events.ts +1 -1
- package/apps/server/src/ragents/run-owner.ts +2 -2
- package/apps/server/src/ragents/session.ts +49 -49
- package/apps/server/src/ragents/typescript-tools.ts +12 -12
- package/apps/server/src/ragents/workspace-runtime.ts +28 -28
- package/apps/server/src/rpc/dispatcher.ts +19 -19
- package/apps/server/src/rpc/http-transport.ts +11 -11
- package/apps/server/src/rpc/stdio-transport.ts +3 -3
- package/apps/server/src/run-preparation-input.ts +5 -5
- package/apps/server/src/run-preparation.ts +24 -24
- package/apps/server/src/run-transfer.ts +39 -39
- package/apps/server/src/server.ts +48 -48
- package/apps/server/src/settings.ts +1 -1
- package/apps/server/src/startup.ts +3 -3
- package/apps/server/src/title-compactor.ts +9 -9
- package/apps/server/src/title-settings.ts +3 -3
- package/apps/server/src/web-bundles.ts +2 -2
- package/apps/server/src/web-stylesheet.ts +2 -2
- package/apps/web/dist/assets/{highlighted-body-KPVGNVTW-BO4wLQtE.js → highlighted-body-KPVGNVTW-BfNSGxjB.js} +1 -1
- package/apps/web/dist/assets/main-D6bsKcIK.js +11 -0
- package/apps/web/dist/assets/mermaid-HWGCJPDP-DROEqEeg.js +608 -0
- package/apps/web/dist/assets/runPanel-Dumuuqry.js +21 -0
- package/apps/web/dist/help/guide-access.html +5 -5
- package/apps/web/dist/help/guide-access.md +2 -2
- package/apps/web/dist/help/guide-clients.html +53 -54
- package/apps/web/dist/help/guide-clients.md +50 -51
- package/apps/web/dist/help/guide-distributed.html +12 -7
- package/apps/web/dist/help/guide-distributed.md +9 -4
- package/apps/web/dist/help/guide-functions.html +3 -3
- package/apps/web/dist/help/guide-getting-started.html +24 -15
- package/apps/web/dist/help/guide-getting-started.md +22 -12
- package/apps/web/dist/help/guide-ideas.html +3 -3
- package/apps/web/dist/help/guide-plugins.html +5 -4
- package/apps/web/dist/help/guide-plugins.md +2 -1
- package/apps/web/dist/help/guide-programs.html +3 -3
- package/apps/web/dist/help/guide-runtime.html +6 -6
- package/apps/web/dist/help/guide-runtime.md +3 -3
- package/apps/web/dist/help/guide.html +3 -3
- package/apps/web/dist/help/index.html +196 -144
- package/apps/web/dist/help/mini-app.css +6 -0
- package/apps/web/dist/help/mini-app.js +14 -14
- package/apps/web/dist/host-web.json +90 -90
- package/apps/web/dist/index.html +3 -3
- package/apps/web/dist/run-panel.html +3 -3
- package/apps/web/package.json +1 -1
- package/apps/web/src/AccessContext.tsx +15 -15
- package/apps/web/src/App.tsx +13 -13
- package/apps/web/src/DiffCode.tsx +2 -2
- package/apps/web/src/HelpDialog.tsx +3 -3
- package/apps/web/src/Overview.tsx +13 -13
- package/apps/web/src/PluginActivation.ts +1 -1
- package/apps/web/src/PluginChat.tsx +15 -15
- package/apps/web/src/PluginFailureNotice.tsx +1 -1
- package/apps/web/src/PluginRegistry.tsx +44 -44
- package/apps/web/src/RunPreparationChat.tsx +11 -11
- package/apps/web/src/RunStore.ts +1 -1
- package/apps/web/src/SessionList.tsx +14 -14
- package/apps/web/src/SettingsModal.tsx +112 -112
- package/apps/web/src/StartOptions.tsx +11 -11
- package/apps/web/src/StartSelection.tsx +11 -11
- package/apps/web/src/StartTiles.tsx +8 -8
- package/apps/web/src/SurfaceShortcuts.tsx +3 -3
- package/apps/web/src/ThemeSettings.tsx +8 -8
- package/apps/web/src/TitleModelSettings.tsx +13 -13
- package/apps/web/src/WorkspacePanel.tsx +9 -9
- package/apps/web/src/access-session.ts +4 -4
- package/apps/web/src/access-token.ts +5 -5
- package/apps/web/src/actor-conversation.ts +3 -3
- package/apps/web/src/actor-programs/client-ui/DataTable.tsx +8 -8
- package/apps/web/src/actor-programs/client-ui/FilePicker.tsx +4 -4
- package/apps/web/src/actor-programs/client-ui/FlowDiagram.tsx +13 -13
- package/apps/web/src/actor-programs/client-ui/Viewers.tsx +4 -4
- package/apps/web/src/actor-programs/client-ui/WorkflowDiagram.tsx +1 -1
- package/apps/web/src/actor-programs/client-ui/file-contracts.d.ts +4 -4
- package/apps/web/src/actor-programs/client-ui/file-selection.ts +1 -1
- package/apps/web/src/actor-programs/client-ui/viewer-contracts.d.ts +3 -3
- package/apps/web/src/api.ts +7 -7
- package/apps/web/src/chat/StoppedActorNotice.tsx +5 -5
- package/apps/web/src/chat/chat-target.ts +3 -3
- package/apps/web/src/chat/requests.ts +2 -2
- package/apps/web/src/chat/useAttachmentCapabilities.ts +2 -2
- package/apps/web/src/chat-view-settings.tsx +5 -6
- package/apps/web/src/diff-view.css +1 -1
- package/apps/web/src/highlighting.css +1 -1
- package/apps/web/src/language-server/language-server-plugin.tsx +30 -30
- package/apps/web/src/lib/labels.ts +6 -6
- package/apps/web/src/main.tsx +4 -4
- package/apps/web/src/offered-machines.ts +2 -2
- package/apps/web/src/page-opener.tsx +1 -1
- package/apps/web/src/panel/ConnectionsPage.tsx +23 -23
- package/apps/web/src/panel/LoginForm.tsx +6 -6
- package/apps/web/src/panel/PanelDialogs.tsx +22 -22
- package/apps/web/src/panel/PanelHeader.tsx +2 -2
- package/apps/web/src/panel/PanelPage.tsx +1 -1
- package/apps/web/src/panel/RunLine.tsx +4 -4
- package/apps/web/src/panel/RunsPage.tsx +15 -15
- package/apps/web/src/panel/StartPage.tsx +26 -26
- package/apps/web/src/panel/connection-state.ts +9 -9
- package/apps/web/src/panel/contract.ts +28 -28
- package/apps/web/src/panel.tsx +1 -1
- package/apps/web/src/plugin-bootstrap.ts +5 -5
- package/apps/web/src/product/ModelControl.tsx +3 -3
- package/apps/web/src/product/ProductModelSettings.tsx +16 -16
- package/apps/web/src/product/SystemPromptControl.tsx +11 -11
- package/apps/web/src/product/model-settings.ts +2 -2
- package/apps/web/src/rpc/client.ts +16 -16
- package/apps/web/src/rpc.ts +1 -1
- package/apps/web/src/run-overview.ts +1 -1
- package/apps/web/src/run-panel/RunPanelApp.tsx +39 -39
- package/apps/web/src/run-panel/RunPanelHeader.tsx +6 -6
- package/apps/web/src/run-panel/RunPanelMenu.tsx +6 -6
- package/apps/web/src/run-panel/RunPanelRail.tsx +4 -4
- package/apps/web/src/run-panel/RunPanelWorkspace.tsx +3 -3
- package/apps/web/src/run-panel/clipboard.ts +3 -3
- package/apps/web/src/run-panel/host-contract.ts +5 -5
- package/apps/web/src/run-panel/host.ts +15 -15
- package/apps/web/src/run-panel/input-bridge.ts +1 -1
- package/apps/web/src/run-panel/run-panel-location.ts +5 -5
- package/apps/web/src/run-panel/use-session-list.ts +1 -1
- package/apps/web/src/run-panel/workspace-state.ts +3 -3
- package/apps/web/src/run-panel.tsx +4 -4
- package/apps/web/src/run-preparation.ts +2 -2
- package/apps/web/src/run-view.ts +3 -3
- package/apps/web/src/settings-contributions.ts +32 -32
- package/apps/web/src/theme.ts +9 -9
- package/apps/web/src/title-model-settings.ts +6 -6
- package/apps/web/src/ui/ListDetail.tsx +9 -9
- package/apps/web/src/ui/dialog.tsx +2 -2
- package/apps/web/src/ui/modal-controller.ts +3 -3
- package/apps/web/src/ui/modal.tsx +2 -2
- package/apps/web/src/ui/popover.tsx +1 -1
- package/apps/web/src/ui/relative-time.ts +8 -8
- package/apps/web/src/ui/startup-notice.tsx +2 -2
- package/apps/web/src/ui/state-icon.tsx +1 -1
- package/apps/web/src/ui/state-vocabulary.ts +16 -16
- package/apps/web/src/ui/stop-button.tsx +2 -2
- package/bundles/ragents.activity/ragents-bundle.json +2 -2
- package/bundles/ragents.activity/web/classes.json +1 -1
- package/bundles/ragents.activity/web/index.js +1 -1
- package/bundles/ragents.activity/web/index.js.map +2 -2
- package/bundles/ragents.actor-programs/ragents-bundle.json +2 -2
- package/bundles/ragents.actor-programs/server/index.js +225 -225
- package/bundles/ragents.actor-programs/server/index.js.map +2 -2
- package/bundles/ragents.actor-programs/web/classes.json +1 -1
- package/bundles/ragents.actor-programs/web/index.js +1 -1
- package/bundles/ragents.actor-programs/web/index.js.map +3 -3
- package/bundles/ragents.ask/ragents-bundle.json +2 -2
- package/bundles/ragents.ask/server/chunks/{chunk-PDJO75SQ.js → chunk-YOV27MAR.js} +2 -2
- package/bundles/ragents.ask/server/chunks/chunk-YOV27MAR.js.map +7 -0
- package/bundles/ragents.ask/server/exports/server/contract.js +1 -1
- package/bundles/ragents.ask/server/index.js +23 -23
- package/bundles/ragents.ask/server/index.js.map +2 -2
- package/bundles/ragents.ask/web/chunks/{chunk-WFN4374U.js → chunk-D6NNB5DS.js} +1 -1
- package/bundles/ragents.ask/web/chunks/chunk-D6NNB5DS.js.map +7 -0
- package/bundles/ragents.ask/web/chunks/{chunk-MBRPS477.js → chunk-IQBHK7MV.js} +2 -2
- package/bundles/ragents.ask/web/chunks/{chunk-MBRPS477.js.map → chunk-IQBHK7MV.js.map} +3 -3
- package/bundles/ragents.ask/web/chunks/chunk-PWFIAMX4.js +2 -0
- package/bundles/ragents.ask/web/chunks/chunk-PWFIAMX4.js.map +7 -0
- package/bundles/ragents.ask/web/chunks/chunk-QHGKEESD.js +2 -0
- package/bundles/ragents.ask/web/chunks/chunk-QHGKEESD.js.map +7 -0
- package/bundles/ragents.ask/web/classes.json +1 -1
- package/bundles/ragents.ask/web/exports/ask-payload.js +1 -1
- package/bundles/ragents.ask/web/exports/web/QuestionCard.js +1 -1
- package/bundles/ragents.ask/web/exports/web/api.js +1 -1
- package/bundles/ragents.ask/web/index.js +1 -1
- package/bundles/ragents.ask/web/index.js.map +2 -2
- package/bundles/ragents.browser/executor/index.mjs +35 -35
- package/bundles/ragents.browser/executor/index.mjs.map +2 -2
- package/bundles/ragents.browser/ragents-bundle.json +2 -2
- package/bundles/ragents.browser/server/chunks/{chunk-CWLX4VA5.js → chunk-PYEISBNE.js} +1 -1
- package/bundles/ragents.browser/server/chunks/{chunk-CWLX4VA5.js.map → chunk-PYEISBNE.js.map} +1 -1
- package/bundles/ragents.browser/server/exports/server/contract.js +1 -1
- package/bundles/ragents.browser/server/index.js +31 -31
- package/bundles/ragents.browser/server/index.js.map +2 -2
- package/bundles/ragents.browser/skills/browser-testing/SKILL.md +30 -30
- package/bundles/ragents.documents/prompt.hbs +1 -1
- package/bundles/ragents.documents/ragents-bundle.json +2 -2
- package/bundles/ragents.documents/server/chunks/{chunk-QIECRZ7C.js → chunk-KMZWOVTI.js} +3 -3
- package/bundles/ragents.documents/server/chunks/{chunk-QIECRZ7C.js.map → chunk-KMZWOVTI.js.map} +2 -2
- package/bundles/ragents.documents/server/exports/contract.js +1 -1
- package/bundles/ragents.documents/server/index.js +26 -26
- package/bundles/ragents.documents/server/index.js.map +2 -2
- package/bundles/ragents.documents/web/classes.json +1 -1
- package/bundles/ragents.documents/web/index.js +1 -1
- package/bundles/ragents.documents/web/index.js.map +3 -3
- package/bundles/ragents.lsp-fsharp/executor/index.mjs +4 -4
- package/bundles/ragents.lsp-fsharp/executor/index.mjs.map +2 -2
- package/bundles/ragents.lsp-fsharp/ragents-bundle.json +2 -2
- package/bundles/ragents.lsp-fsharp/server/index.js +5 -5
- package/bundles/ragents.lsp-fsharp/server/index.js.map +2 -2
- package/bundles/ragents.lsp-fsharp/web/index.js +1 -1
- package/bundles/ragents.lsp-fsharp/web/index.js.map +2 -2
- package/bundles/ragents.lsp-roslyn/executor/index.mjs +3 -3
- package/bundles/ragents.lsp-roslyn/executor/index.mjs.map +2 -2
- package/bundles/ragents.lsp-roslyn/ragents-bundle.json +2 -2
- package/bundles/ragents.lsp-roslyn/server/index.js +17 -17
- package/bundles/ragents.lsp-roslyn/server/index.js.map +2 -2
- package/bundles/ragents.lsp-roslyn/web/index.js +1 -1
- package/bundles/ragents.lsp-roslyn/web/index.js.map +2 -2
- package/bundles/ragents.lsp-typescript/executor/index.mjs +2 -2
- package/bundles/ragents.lsp-typescript/executor/index.mjs.map +2 -2
- package/bundles/ragents.lsp-typescript/ragents-bundle.json +2 -2
- package/bundles/ragents.lsp-typescript/server/index.js.map +1 -1
- package/bundles/ragents.lsp-typescript/web/index.js +1 -1
- package/bundles/ragents.lsp-typescript/web/index.js.map +2 -2
- package/bundles/ragents.model-relay/ragents-bundle.json +7 -3
- package/bundles/ragents.model-relay/server/index.js +25 -21
- package/bundles/ragents.model-relay/server/index.js.map +2 -2
- package/bundles/ragents.orchestration/ragents-bundle.json +2 -2
- package/bundles/ragents.orchestration/server/index.js +28 -28
- package/bundles/ragents.orchestration/server/index.js.map +2 -2
- package/bundles/ragents.orchestration/web/chunks/{chunk-OSKPH6SZ.js → chunk-CFMJD5ZI.js} +2 -2
- package/bundles/ragents.orchestration/web/chunks/chunk-HOBLI364.js +2 -0
- package/bundles/ragents.orchestration/web/chunks/{chunk-OQYCNYXN.js.map → chunk-HOBLI364.js.map} +2 -2
- package/bundles/ragents.orchestration/web/chunks/{chunk-ODMMQGX2.js → chunk-UCIMT2R4.js} +2 -2
- package/bundles/ragents.orchestration/web/classes.json +1 -1
- package/bundles/ragents.orchestration/web/exports/web/program-slot.js +1 -1
- package/bundles/ragents.orchestration/web/exports/web/surface-entities.js +1 -1
- package/bundles/ragents.orchestration/web/index.js +8 -8
- package/bundles/ragents.orchestration/web/index.js.map +2 -2
- package/bundles/ragents.overseer/ragents-bundle.json +2 -2
- package/bundles/ragents.overseer/server/index.js +98 -98
- package/bundles/ragents.overseer/server/index.js.map +2 -2
- package/bundles/ragents.overseer/web/classes.json +1 -1
- package/bundles/ragents.overseer/web/index.js +1 -1
- package/bundles/ragents.overseer/web/index.js.map +2 -2
- package/bundles/ragents.processes/ragents-bundle.json +2 -2
- package/bundles/ragents.processes/server/index.js +11 -11
- package/bundles/ragents.processes/server/index.js.map +2 -2
- package/bundles/ragents.processes/web/classes.json +1 -1
- package/bundles/ragents.processes/web/index.js +3 -3
- package/bundles/ragents.processes/web/index.js.map +2 -2
- package/bundles/ragents.product/ragents-bundle.json +2 -2
- package/bundles/ragents.product/server/index.js +12 -13
- package/bundles/ragents.product/server/index.js.map +2 -2
- package/bundles/ragents.product/web/classes.json +1 -1
- package/bundles/ragents.product/web/index.js +1 -1
- package/bundles/ragents.product/web/index.js.map +2 -2
- package/bundles/ragents.profile-distribution/ragents-bundle.json +2 -2
- package/bundles/ragents.profile-distribution/server/index.js +31 -31
- package/bundles/ragents.profile-distribution/server/index.js.map +2 -2
- package/bundles/ragents.reference/ragents-bundle.json +2 -2
- package/bundles/ragents.reference/run-scripts/balcony-wizard/RUN.md +19 -19
- package/bundles/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/package.json +2 -2
- package/bundles/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/src/client.tsx +14 -14
- package/bundles/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/src/conversation.ts +2 -2
- package/bundles/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/tests/conversation.test.ts +49 -49
- package/bundles/ragents.reference/run-scripts/balcony-wizard/package.json +1 -1
- package/bundles/ragents.reference/run-scripts/balcony-wizard/src/server.ts +9 -9
- package/bundles/ragents.reference/run-scripts/balcony-wizard/tests/program.test.ts +9 -9
- package/bundles/ragents.reference/run-scripts/conversation-circle/RUN.md +7 -7
- package/bundles/ragents.reference/run-scripts/conversation-circle/package.json +1 -1
- package/bundles/ragents.reference/run-scripts/conversation-circle/src/server.ts +13 -13
- package/bundles/ragents.reference/run-scripts/conversation-circle/tests/helpers.ts +1 -1
- package/bundles/ragents.reference/run-scripts/conversation-circle/tests/program.test.ts +8 -8
- package/bundles/ragents.reference/run-scripts/learning-afternoon/RUN.md +16 -16
- package/bundles/ragents.reference/run-scripts/learning-afternoon/package.json +1 -1
- package/bundles/ragents.reference/run-scripts/learning-afternoon/prompts/experiment.md +1 -1
- package/bundles/ragents.reference/run-scripts/learning-afternoon/prompts/helper.md +3 -3
- package/bundles/ragents.reference/run-scripts/learning-afternoon/prompts/quiz.md +1 -1
- package/bundles/ragents.reference/run-scripts/learning-afternoon/src/server.ts +9 -9
- package/bundles/ragents.reference/run-scripts/learning-afternoon/tests/program.test.ts +39 -39
- package/bundles/ragents.reference/run-scripts/moderated-round/RUN.md +7 -7
- package/bundles/ragents.reference/run-scripts/moderated-round/package.json +1 -1
- package/bundles/ragents.reference/run-scripts/moderated-round/src/server.ts +9 -9
- package/bundles/ragents.reference/run-scripts/moderated-round/tests/helpers.ts +1 -1
- package/bundles/ragents.reference/run-scripts/moderated-round/tests/program.test.ts +6 -6
- package/bundles/ragents.reference/run-scripts/shared-actor-list/RUN.md +12 -12
- package/bundles/ragents.reference/run-scripts/shared-actor-list/actors/shared-list/package.json +2 -2
- package/bundles/ragents.reference/run-scripts/shared-actor-list/actors/shared-list/src/contract.ts +3 -3
- package/bundles/ragents.reference/run-scripts/shared-actor-list/actors/shared-list/tests/program.test.ts +4 -4
- package/bundles/ragents.reference/run-scripts/shared-actor-list/package.json +1 -1
- package/bundles/ragents.reference/run-scripts/shared-actor-list/src/server.ts +11 -11
- package/bundles/ragents.reference/run-scripts/shared-actor-list/tests/helpers.ts +1 -1
- package/bundles/ragents.reference/run-scripts/shared-actor-list/tests/program.test.ts +13 -13
- package/bundles/ragents.reference/run-scripts/word-game/RUN.md +18 -18
- package/bundles/ragents.reference/run-scripts/word-game/package.json +2 -2
- package/bundles/ragents.reference/run-scripts/word-game/src/client.tsx +1 -1
- package/bundles/ragents.reference/run-scripts/word-game/src/contract.ts +2 -2
- package/bundles/ragents.reference/run-scripts/word-game/src/server.ts +16 -16
- package/bundles/ragents.reference/run-scripts/word-game/tests/program.test.ts +39 -39
- package/bundles/ragents.reference/skills/100-shared-actor-list/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/110-all-card-slots/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/150-editorial-workbench/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/160-learning-companion/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/170-photo-collection/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/180-decision-workbench/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/190-review-queue/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/20-circle-of-four/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/200-typescript-diagnostics/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/210-moderator-handover/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/220-actor-approval-list/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/230-shared-state-views/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/240-live-result-list/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/250-balcony-wizard/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/30-llm-without-runtime-knowledge/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/35-actor-input-fifo/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/40-subscription-matrix/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/50-subscription-removal/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/60-stop-in-the-circle/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/65-artifact-least-privilege/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/70-headless-counter/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/75-lsp-demo/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/80-actor-text-analysis/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/90-actor-notes/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/95-hello-world/SKILL.md +5 -5
- package/bundles/ragents.reference/skills/decision-brief/SKILL.md +24 -24
- package/bundles/ragents.reference/skills/learning-sprint/SKILL.md +24 -24
- package/bundles/ragents.reference/web/classes.json +1 -1
- package/bundles/ragents.reference/web/index.js +1 -1
- package/bundles/ragents.reference/web/index.js.map +2 -2
- package/bundles/ragents.todo/ragents-bundle.json +2 -2
- package/bundles/ragents.todo/server/index.js +5 -5
- package/bundles/ragents.todo/server/index.js.map +2 -2
- package/bundles/ragents.todo/web/classes.json +1 -1
- package/bundles/ragents.todo/web/index.js +1 -1
- package/bundles/ragents.todo/web/index.js.map +2 -2
- package/bundles/ragents.transcript/ragents-bundle.json +2 -2
- package/bundles/ragents.transcript/server/index.js +11 -11
- package/bundles/ragents.transcript/server/index.js.map +2 -2
- package/bundles/ragents.watch/ragents-bundle.json +2 -2
- package/bundles/ragents.watch/server/index.js +48 -48
- package/bundles/ragents.watch/server/index.js.map +2 -2
- package/bundles/ragents.workspace/ragents-bundle.json +2 -2
- package/bundles/ragents.workspace/server/index.js +81 -81
- package/bundles/ragents.workspace/server/index.js.map +2 -2
- package/bundles/ragents.workspace/web/classes.json +1 -1
- package/bundles/ragents.workspace/web/index.js +1 -1
- package/bundles/ragents.workspace/web/index.js.map +2 -2
- package/package.json +4 -4
- package/packages/agent/dist/core/model-runtime.d.ts +7 -2
- package/packages/agent/dist/index.d.ts +1 -1
- package/packages/agent/dist/loop/agent-loop.d.ts +2 -2
- package/packages/agent/src/core/compaction/utils.ts +1 -1
- package/packages/agent/src/core/model-runtime.ts +45 -5
- package/packages/agent/src/index.ts +1 -1
- package/packages/agent/src/loop/agent-loop.ts +2 -2
- package/packages/ai/dist/models.d.ts +1 -0
- package/packages/ai/dist/models.generated.d.ts +4544 -983
- package/packages/ai/dist/providers/openrouter.models.d.ts +4544 -983
- package/packages/ai/src/api/ai-sdk.ts +33 -7
- package/packages/ai/src/api-registry.ts +1 -1
- package/packages/ai/src/index.ts +2 -2
- package/packages/ai/src/models.generated.ts +1 -1
- package/packages/ai/src/models.ts +1 -1
- package/packages/ai/src/providers/openrouter.models.ts +3723 -550
- package/packages/ragents/src/access.ts +12 -12
- package/packages/ragents/src/agents/actor-input.ts +33 -33
- package/packages/ragents/src/agents/catalog.ts +1 -1
- package/packages/ragents/src/agents/delivery.ts +17 -17
- package/packages/ragents/src/agents/plugins.ts +1 -1
- package/packages/ragents/src/agents/scheduler.ts +7 -7
- package/packages/ragents/src/agents/schemas.ts +1 -1
- package/packages/ragents/src/agents/tool-orientation.ts +4 -4
- package/packages/ragents/src/agents/tools.ts +20 -20
- package/packages/ragents/src/agents/toolset.ts +5 -5
- package/packages/ragents/src/agents/workspaces.ts +1 -1
- package/packages/ragents/src/domain/events.ts +1 -1
- package/packages/ragents/src/domain/model.ts +5 -5
- package/packages/ragents/src/drivers/agent-runtime.ts +1 -1
- package/packages/ragents/src/drivers/agent-turn.ts +4 -4
- package/packages/ragents/src/drivers/agent.ts +2 -2
- package/packages/ragents/src/drivers/attachments.ts +4 -4
- package/packages/ragents/src/http/contracts.ts +14 -14
- package/packages/ragents/src/http/methods.ts +6 -6
- package/packages/ragents/src/plugin-host.ts +119 -119
- package/packages/ragents/src/plugin-types.ts +16 -16
- package/packages/ragents/src/rpc/contract.ts +5 -5
- package/packages/ragents/src/rpc/contribution.ts +2 -2
- package/packages/ragents/src/rpc/peer.ts +11 -11
- package/packages/ragents/src/rpc/protocol.ts +2 -2
- package/packages/ragents/src/runtime/decisions/turns.ts +1 -1
- package/packages/ragents/src/runtime/journal.ts +10 -10
- package/packages/ragents/src/runtime/orchestration.ts +8 -8
- package/packages/ragents/src/runtime/stop.ts +2 -2
- package/packages/ragents/src/script/mediators.ts +35 -35
- package/packages/ragents/src/typescript/async-compiler.ts +14 -14
- package/packages/ragents/src/typescript/compiler-worker.ts +2 -2
- package/packages/ragents/src/typescript/compiler.ts +7 -7
- package/packages/ragents/src/typescript/snippet.ts +5 -5
- package/packages/workspace-executor/src/bash-launch.ts +13 -13
- package/packages/workspace-executor/src/commands.ts +18 -18
- package/packages/workspace-executor/src/context.ts +15 -15
- package/packages/workspace-executor/src/contributions.ts +35 -35
- package/packages/workspace-executor/src/errors.ts +1 -1
- package/packages/workspace-executor/src/executor.ts +15 -15
- package/packages/workspace-executor/src/files.ts +30 -30
- package/packages/workspace-executor/src/language-server/contract.ts +2 -2
- package/packages/workspace-executor/src/language-server/diagnostics.ts +4 -4
- package/packages/workspace-executor/src/language-server/host.ts +35 -35
- package/packages/workspace-executor/src/language-server/json-rpc.ts +4 -4
- package/packages/workspace-executor/src/language-server/module.ts +11 -11
- package/packages/workspace-executor/src/language-server/roots.ts +3 -3
- package/packages/workspace-executor/src/language-server/session.ts +15 -15
- package/packages/workspace-executor/src/language-server/workspace-solutions.ts +2 -2
- package/packages/workspace-executor/src/managed-process.ts +12 -12
- package/packages/workspace-executor/src/module.ts +8 -8
- package/packages/workspace-executor/src/modules.ts +3 -3
- package/packages/workspace-executor/src/paths.ts +11 -11
- package/packages/workspace-executor/src/process-sandbox.ts +3 -3
- package/packages/workspace-executor/src/processes/module.ts +3 -3
- package/packages/workspace-executor/src/processes/process-table.ts +20 -20
- package/packages/workspace-executor/src/processes/scanner.ts +3 -3
- package/packages/workspace-executor/src/processes/snapshot.ts +2 -2
- package/packages/workspace-executor/src/processes/terminator.ts +13 -13
- package/packages/workspace-executor/src/run-folders.ts +3 -3
- package/packages/workspace-executor/src/safe-environment.ts +4 -4
- package/packages/workspace-executor/src/sandbox-tools.ts +28 -28
- package/packages/workspace-executor/src/session-ident.ts +2 -2
- package/packages/workspace-executor/src/shell-platform.ts +2 -2
- package/packages/workspace-executor/src/tools.ts +5 -5
- package/plugins/ragents.activity/web/ActivityHeader.tsx +3 -3
- package/plugins/ragents.activity/web/activity.ts +2 -2
- package/plugins/ragents.actor-programs/server/access-projections.ts +1 -1
- package/plugins/ragents.actor-programs/server/agent-tools.ts +2 -2
- package/plugins/ragents.actor-programs/server/capability-resolver.ts +3 -3
- package/plugins/ragents.actor-programs/server/controls-template.ts +46 -46
- package/plugins/ragents.actor-programs/server/controls-tool.ts +4 -4
- package/plugins/ragents.actor-programs/server/limits.ts +3 -3
- package/plugins/ragents.actor-programs/server/methods.ts +1 -1
- package/plugins/ragents.actor-programs/server/project-diagnostics.ts +8 -8
- package/plugins/ragents.actor-programs/server/routes.ts +8 -8
- package/plugins/ragents.actor-programs/server/runtime.ts +90 -90
- package/plugins/ragents.actor-programs/server/templates.ts +59 -59
- package/plugins/ragents.actor-programs/server/test-report.ts +5 -5
- package/plugins/ragents.actor-programs/server/tool-contributor.ts +1 -1
- package/plugins/ragents.actor-programs/web/ActorViewFrame.tsx +17 -17
- package/plugins/ragents.actor-programs/web/AppsPanel.tsx +26 -26
- package/plugins/ragents.actor-programs/web/EmbeddedApps.tsx +3 -3
- package/plugins/ragents.actor-programs/web/FullscreenHost.tsx +2 -2
- package/plugins/ragents.actor-programs/web/FunctionForm.tsx +16 -16
- package/plugins/ragents.actor-programs/web/ProgramSource.tsx +5 -5
- package/plugins/ragents.actor-programs/web/api.ts +36 -36
- package/plugins/ragents.actor-programs/web/bridge.ts +8 -8
- package/plugins/ragents.actor-programs/web/chat-state.ts +4 -4
- package/plugins/ragents.actor-programs/web/context.ts +1 -1
- package/plugins/ragents.actor-programs/web/function-input.ts +6 -6
- package/plugins/ragents.actor-programs/web/index.tsx +1 -1
- package/plugins/ragents.actor-programs/web/program-state.ts +4 -4
- package/plugins/ragents.ask/ask-payload.ts +1 -1
- package/plugins/ragents.ask/contract.ts +5 -5
- package/plugins/ragents.ask/server/answer-method.ts +1 -1
- package/plugins/ragents.ask/server/ask-service.ts +9 -9
- package/plugins/ragents.ask/server/ask-tool.ts +10 -10
- package/plugins/ragents.ask/server/contract.ts +5 -5
- package/plugins/ragents.ask/web/AskActionView.tsx +1 -1
- package/plugins/ragents.ask/web/QuestionCard.tsx +22 -22
- package/plugins/ragents.ask/web/index.tsx +2 -2
- package/plugins/ragents.browser/executor/contract.ts +6 -6
- package/plugins/ragents.browser/executor/index.ts +1 -1
- package/plugins/ragents.browser/executor/module.ts +6 -6
- package/plugins/ragents.browser/executor/pages.ts +32 -32
- package/plugins/ragents.browser/executor/playwright.ts +8 -8
- package/plugins/ragents.browser/provision.ts +7 -7
- package/plugins/ragents.browser/server/browser.ts +14 -14
- package/plugins/ragents.browser/server/contract.ts +1 -1
- package/plugins/ragents.browser/server/index.ts +1 -1
- package/plugins/ragents.browser/server/tools.ts +14 -14
- package/plugins/ragents.browser/skills/browser-testing/SKILL.md +30 -30
- package/plugins/ragents.documents/contract.ts +2 -2
- package/plugins/ragents.documents/prompt.hbs +1 -1
- package/plugins/ragents.documents/server/document-write-tool.ts +12 -12
- package/plugins/ragents.documents/server/files-route.ts +6 -6
- package/plugins/ragents.documents/server/show-document-tool.ts +26 -26
- package/plugins/ragents.documents/server/store.ts +1 -1
- package/plugins/ragents.documents/web/DocumentViewer.tsx +37 -37
- package/plugins/ragents.documents/web/index.tsx +11 -11
- package/plugins/ragents.lsp-fsharp/executor.ts +7 -7
- package/plugins/ragents.lsp-fsharp/provision.ts +7 -7
- package/plugins/ragents.lsp-roslyn/executor.ts +5 -5
- package/plugins/ragents.lsp-roslyn/provision.ts +4 -4
- package/plugins/ragents.lsp-roslyn/server/index.ts +5 -5
- package/plugins/ragents.lsp-roslyn/server/solution-on-start.ts +13 -13
- package/plugins/ragents.lsp-typescript/executor.ts +3 -3
- package/plugins/ragents.model-relay/server/config.ts +6 -2
- package/plugins/ragents.model-relay/server/index.ts +2 -2
- package/plugins/ragents.model-relay/server/relay.ts +23 -22
- package/plugins/ragents.orchestration/contract.ts +8 -8
- package/plugins/ragents.orchestration/server/index.ts +4 -4
- package/plugins/ragents.orchestration/server/run-stop-tool.ts +3 -3
- package/plugins/ragents.orchestration/server/surface-tool.ts +5 -5
- package/plugins/ragents.orchestration/tiled-layout.ts +11 -11
- package/plugins/ragents.orchestration/web/ActorChat.tsx +2 -2
- package/plugins/ragents.orchestration/web/ActorChatControls.tsx +4 -4
- package/plugins/ragents.orchestration/web/ActorChatPreview.tsx +1 -1
- package/plugins/ragents.orchestration/web/ActorPopout.tsx +1 -1
- package/plugins/ragents.orchestration/web/ActorShortcut.tsx +6 -6
- package/plugins/ragents.orchestration/web/ActorSurfaceControls.tsx +15 -15
- package/plugins/ragents.orchestration/web/Center.tsx +5 -5
- package/plugins/ragents.orchestration/web/DocumentsSection.tsx +2 -2
- package/plugins/ragents.orchestration/web/ExecutionsPanel.tsx +15 -15
- package/plugins/ragents.orchestration/web/FlowInspector.tsx +103 -103
- package/plugins/ragents.orchestration/web/JournalStatus.tsx +11 -11
- package/plugins/ragents.orchestration/web/MaterialBody.tsx +2 -2
- package/plugins/ragents.orchestration/web/StopRunButton.tsx +6 -6
- package/plugins/ragents.orchestration/web/TiledSurface.tsx +9 -9
- package/plugins/ragents.orchestration/web/actor-header-settings.ts +5 -5
- package/plugins/ragents.orchestration/web/constants.ts +2 -2
- package/plugins/ragents.orchestration/web/executions.ts +6 -6
- package/plugins/ragents.orchestration/web/format.ts +1 -1
- package/plugins/ragents.orchestration/web/index.tsx +2 -2
- package/plugins/ragents.orchestration/web/run-panel/AddresseeControl.tsx +7 -7
- package/plugins/ragents.orchestration/web/run-panel/AddresseeTree.tsx +8 -8
- package/plugins/ragents.orchestration/web/run-panel/RunPanel.tsx +22 -22
- package/plugins/ragents.orchestration/web/run-panel/RunPanelSettings.tsx +7 -7
- package/plugins/ragents.orchestration/web/run-panel/addressee-tree.ts +13 -13
- package/plugins/ragents.orchestration/web/run-panel/run-panel-actors.ts +3 -3
- package/plugins/ragents.orchestration/web/run-panel/run-panel-settings.ts +2 -2
- package/plugins/ragents.orchestration/web/run-panel/run-panel-startup.ts +3 -3
- package/plugins/ragents.orchestration/web/run-panel/run-panel-state.ts +7 -7
- package/plugins/ragents.orchestration/web/run-panel/sheet-status.ts +9 -9
- package/plugins/ragents.orchestration/web/surface-startup.ts +8 -8
- package/plugins/ragents.orchestration/web/surface-view-settings.ts +1 -1
- package/plugins/ragents.orchestration/web/tiled-view-settings.ts +1 -1
- package/plugins/ragents.overseer/contract.ts +20 -20
- package/plugins/ragents.overseer/server/api.ts +6 -6
- package/plugins/ragents.overseer/server/coordinator-prompt.ts +10 -10
- package/plugins/ragents.overseer/server/coordinator.ts +4 -4
- package/plugins/ragents.overseer/server/index.ts +24 -24
- package/plugins/ragents.overseer/server/orientation.ts +8 -8
- package/plugins/ragents.overseer/server/quick-answer.ts +9 -9
- package/plugins/ragents.overseer/server/run-directory.ts +5 -5
- package/plugins/ragents.overseer/server/settings.ts +6 -6
- package/plugins/ragents.overseer/server/user-location.ts +16 -16
- package/plugins/ragents.overseer/web/ModelSettings.tsx +9 -9
- package/plugins/ragents.overseer/web/index.tsx +20 -20
- package/plugins/ragents.overseer/web/model-settings.ts +1 -1
- package/plugins/ragents.overseer/web/quick-answers.ts +2 -2
- package/plugins/ragents.processes/contract.ts +5 -5
- package/plugins/ragents.processes/server/methods.ts +4 -4
- package/plugins/ragents.processes/server/observer.ts +8 -8
- package/plugins/ragents.processes/server/run-processes.ts +2 -2
- package/plugins/ragents.processes/web/ProcessHeader.tsx +10 -10
- package/plugins/ragents.processes/web/processes.ts +10 -10
- package/plugins/ragents.product/server/config.ts +1 -1
- package/plugins/ragents.product/server/index.ts +4 -4
- package/plugins/ragents.product/server/runtime.ts +9 -10
- package/plugins/ragents.product/web/index.tsx +1 -1
- package/plugins/ragents.profile-distribution/contract.ts +10 -10
- package/plugins/ragents.profile-distribution/server/archive.ts +20 -20
- package/plugins/ragents.profile-distribution/server/config.ts +2 -2
- package/plugins/ragents.profile-distribution/server/index.ts +4 -4
- package/plugins/ragents.reference/examples.ts +27 -27
- package/plugins/ragents.reference/run-scripts/balcony-wizard/RUN.md +19 -19
- package/plugins/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/package.json +2 -2
- package/plugins/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/src/client.tsx +14 -14
- package/plugins/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/src/conversation.ts +2 -2
- package/plugins/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/tests/conversation.test.ts +49 -49
- package/plugins/ragents.reference/run-scripts/balcony-wizard/package.json +1 -1
- package/plugins/ragents.reference/run-scripts/balcony-wizard/src/server.ts +9 -9
- package/plugins/ragents.reference/run-scripts/balcony-wizard/tests/program.test.ts +9 -9
- package/plugins/ragents.reference/run-scripts/conversation-circle/RUN.md +7 -7
- package/plugins/ragents.reference/run-scripts/conversation-circle/package.json +1 -1
- package/plugins/ragents.reference/run-scripts/conversation-circle/src/server.ts +13 -13
- package/plugins/ragents.reference/run-scripts/conversation-circle/tests/helpers.ts +1 -1
- package/plugins/ragents.reference/run-scripts/conversation-circle/tests/program.test.ts +8 -8
- package/plugins/ragents.reference/run-scripts/learning-afternoon/RUN.md +16 -16
- package/plugins/ragents.reference/run-scripts/learning-afternoon/package.json +1 -1
- package/plugins/ragents.reference/run-scripts/learning-afternoon/prompts/experiment.md +1 -1
- package/plugins/ragents.reference/run-scripts/learning-afternoon/prompts/helper.md +3 -3
- package/plugins/ragents.reference/run-scripts/learning-afternoon/prompts/quiz.md +1 -1
- package/plugins/ragents.reference/run-scripts/learning-afternoon/src/server.ts +9 -9
- package/plugins/ragents.reference/run-scripts/learning-afternoon/tests/program.test.ts +39 -39
- package/plugins/ragents.reference/run-scripts/moderated-round/RUN.md +7 -7
- package/plugins/ragents.reference/run-scripts/moderated-round/package.json +1 -1
- package/plugins/ragents.reference/run-scripts/moderated-round/src/server.ts +9 -9
- package/plugins/ragents.reference/run-scripts/moderated-round/tests/helpers.ts +1 -1
- package/plugins/ragents.reference/run-scripts/moderated-round/tests/program.test.ts +6 -6
- package/plugins/ragents.reference/run-scripts/shared-actor-list/RUN.md +12 -12
- package/plugins/ragents.reference/run-scripts/shared-actor-list/actors/shared-list/package.json +2 -2
- package/plugins/ragents.reference/run-scripts/shared-actor-list/actors/shared-list/src/contract.ts +3 -3
- package/plugins/ragents.reference/run-scripts/shared-actor-list/actors/shared-list/tests/program.test.ts +4 -4
- package/plugins/ragents.reference/run-scripts/shared-actor-list/package.json +1 -1
- package/plugins/ragents.reference/run-scripts/shared-actor-list/src/server.ts +11 -11
- package/plugins/ragents.reference/run-scripts/shared-actor-list/tests/helpers.ts +1 -1
- package/plugins/ragents.reference/run-scripts/shared-actor-list/tests/program.test.ts +13 -13
- package/plugins/ragents.reference/run-scripts/word-game/RUN.md +18 -18
- package/plugins/ragents.reference/run-scripts/word-game/package.json +2 -2
- package/plugins/ragents.reference/run-scripts/word-game/src/client.tsx +1 -1
- package/plugins/ragents.reference/run-scripts/word-game/src/contract.ts +2 -2
- package/plugins/ragents.reference/run-scripts/word-game/src/server.ts +16 -16
- package/plugins/ragents.reference/run-scripts/word-game/tests/program.test.ts +39 -39
- package/plugins/ragents.reference/skills/100-shared-actor-list/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/110-all-card-slots/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/150-editorial-workbench/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/160-learning-companion/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/170-photo-collection/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/180-decision-workbench/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/190-review-queue/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/20-circle-of-four/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/200-typescript-diagnostics/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/210-moderator-handover/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/220-actor-approval-list/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/230-shared-state-views/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/240-live-result-list/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/250-balcony-wizard/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/30-llm-without-runtime-knowledge/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/35-actor-input-fifo/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/40-subscription-matrix/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/50-subscription-removal/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/60-stop-in-the-circle/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/65-artifact-least-privilege/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/70-headless-counter/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/75-lsp-demo/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/80-actor-text-analysis/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/90-actor-notes/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/95-hello-world/SKILL.md +5 -5
- package/plugins/ragents.reference/skills/decision-brief/SKILL.md +24 -24
- package/plugins/ragents.reference/skills/learning-sprint/SKILL.md +24 -24
- package/plugins/ragents.reference/walkthroughs.ts +128 -128
- package/plugins/ragents.reference/web/StartGuides.tsx +23 -23
- package/plugins/ragents.todo/server/todo-tool.ts +6 -6
- package/plugins/ragents.todo/web/TodoSection.tsx +1 -1
- package/plugins/ragents.transcript/server/transcript.ts +11 -11
- package/plugins/ragents.watch/server/condition.ts +4 -4
- package/plugins/ragents.watch/server/functions.ts +27 -27
- package/plugins/ragents.watch/server/observation.ts +2 -2
- package/plugins/ragents.watch/server/service.ts +14 -14
- package/plugins/ragents.workspace/client/transport.ts +1 -1
- package/plugins/ragents.workspace/client/workspace-client.ts +54 -54
- package/plugins/ragents.workspace/contract.ts +46 -46
- package/plugins/ragents.workspace/server/binding.ts +20 -20
- package/plugins/ragents.workspace/server/browse-route.ts +8 -8
- package/plugins/ragents.workspace/server/clients.ts +42 -42
- package/plugins/ragents.workspace/server/config.ts +7 -7
- package/plugins/ragents.workspace/server/index.ts +3 -3
- package/plugins/ragents.workspace/server/runtime.ts +26 -26
- package/plugins/ragents.workspace/server/shell-platform.ts +1 -1
- package/plugins/ragents.workspace/web/FileBrowser.tsx +10 -10
- package/plugins/ragents.workspace/web/WorkspaceBinding.tsx +24 -24
- package/plugins/ragents.workspace/web/index.tsx +1 -1
- package/ragents.config.core.ts +1 -1
- package/ragents.config.developer.ts +3 -3
- package/ragents.config.showcase.ts +2 -2
- package/scripts/agent/agent-cli.ts +96 -96
- package/scripts/agent/journal.ts +5 -5
- package/scripts/agent/turn-control.ts +4 -4
- package/scripts/package/build-package.ts +29 -29
- package/scripts/package/host-links.mjs +3 -3
- package/scripts/package/publish-package.ts +29 -29
- package/scripts/package/ragents.mjs +19 -19
- package/scripts/plugin/build-builtin-plugins.ts +5 -5
- package/scripts/plugin/plugin-cli.ts +14 -14
- package/scripts/provision/run-provision.ts +14 -15
- package/scripts/remote/connect.ts +46 -46
- package/scripts/remote/start.ts +18 -18
- package/scripts/workspace-client/run-workspace-client.ts +23 -23
- package/apps/web/dist/assets/main-DnnqWHkH.js +0 -11
- package/apps/web/dist/assets/mermaid-HWGCJPDP-BLLeth5_.js +0 -568
- package/apps/web/dist/assets/runPanel-DPm7s3KM.js +0 -21
- package/bundles/ragents.ask/server/chunks/chunk-PDJO75SQ.js.map +0 -7
- package/bundles/ragents.ask/web/chunks/chunk-4VXWWEG7.js +0 -2
- package/bundles/ragents.ask/web/chunks/chunk-4VXWWEG7.js.map +0 -7
- package/bundles/ragents.ask/web/chunks/chunk-VUBJDIKQ.js +0 -2
- package/bundles/ragents.ask/web/chunks/chunk-VUBJDIKQ.js.map +0 -7
- package/bundles/ragents.ask/web/chunks/chunk-WFN4374U.js.map +0 -7
- package/bundles/ragents.orchestration/web/chunks/chunk-OQYCNYXN.js +0 -2
- /package/bundles/ragents.orchestration/web/chunks/{chunk-OSKPH6SZ.js.map → chunk-CFMJD5ZI.js.map} +0 -0
- /package/bundles/ragents.orchestration/web/chunks/{chunk-ODMMQGX2.js.map → chunk-UCIMT2R4.js.map} +0 -0
|
@@ -278,11 +278,11 @@ export interface PromptContribution {
|
|
|
278
278
|
delivery?: "initial" | "on-demand";
|
|
279
279
|
requiresTools?: readonly string[];
|
|
280
280
|
render: (context: PromptRenderContext) => string | Promise<string>;
|
|
281
|
-
/**
|
|
281
|
+
/** If the contribution depends on the individual run, this text replaces the one from `render`, undefined keeps it - synchronous so the turn has it without waiting. */
|
|
282
282
|
renderForRun?: (runId: string) => string | undefined;
|
|
283
283
|
}
|
|
284
284
|
|
|
285
|
-
/**
|
|
285
|
+
/** Whether the run-related contributions of a plugin apply in a run; the host asks per run, a throw fails its turn with this cause. */
|
|
286
286
|
export type RunCondition = (runId: string) => boolean;
|
|
287
287
|
|
|
288
288
|
export type ModelProviderConfig = Parameters<ModelRuntime["registerProvider"]>[1];
|
|
@@ -296,7 +296,7 @@ export interface ProfileContribution {
|
|
|
296
296
|
id: string;
|
|
297
297
|
models: () => readonly CatalogModel[];
|
|
298
298
|
profiles: () => readonly AgentProfile[];
|
|
299
|
-
/**
|
|
299
|
+
/** Additional model providers, registered in the model runtime before the first model access. */
|
|
300
300
|
providers?: () => readonly ModelProviderRegistration[] | Promise<readonly ModelProviderRegistration[]>;
|
|
301
301
|
}
|
|
302
302
|
|
|
@@ -347,7 +347,7 @@ export interface SessionMetadataContext {
|
|
|
347
347
|
|
|
348
348
|
export interface StartOptionContext {
|
|
349
349
|
runId: string;
|
|
350
|
-
/**
|
|
350
|
+
/** The user currently acting: from the access of the request, null without sign-in. */
|
|
351
351
|
userId: string | null;
|
|
352
352
|
}
|
|
353
353
|
|
|
@@ -358,11 +358,11 @@ export interface StartOptionContribution {
|
|
|
358
358
|
defaultValue: (context: StartOptionContext) => JsonValue;
|
|
359
359
|
accept: (value: JsonValue, context: StartOptionContext) => JsonValue;
|
|
360
360
|
describe: (value: JsonValue, context: StartOptionContext) => JsonValue;
|
|
361
|
-
/**
|
|
361
|
+
/** Additional rights without which list and choice do not offer the option, such as runs.inspect for technical insight. */
|
|
362
362
|
rights?: readonly string[];
|
|
363
|
-
/**
|
|
363
|
+
/** Still selectable after the start: the host writes every new value to the journal, whoever reads the option follows the currently stored one. */
|
|
364
364
|
changeable?: boolean;
|
|
365
|
-
/**
|
|
365
|
+
/** Whether only the owner operates a run with this value; everyone who sees it may read and stop it. */
|
|
366
366
|
ownerOnly?: (value: JsonValue) => boolean;
|
|
367
367
|
}
|
|
368
368
|
|
|
@@ -371,30 +371,30 @@ export interface RegisteredStartOption {
|
|
|
371
371
|
option: StartOptionContribution;
|
|
372
372
|
}
|
|
373
373
|
|
|
374
|
-
/**
|
|
374
|
+
/** A chat event for a plugin state, without the id that the projection already names. */
|
|
375
375
|
export interface PluginChatEvent {
|
|
376
376
|
type: string;
|
|
377
377
|
payload?: unknown;
|
|
378
378
|
}
|
|
379
379
|
|
|
380
|
-
/**
|
|
380
|
+
/** What an access without runs.inspect sees of a plugin state and its chat events; without a projection it sees both unchanged. */
|
|
381
381
|
export interface AccessProjectionContribution {
|
|
382
|
-
/**
|
|
382
|
+
/** The id of the state as it appears in the journal (`pluginId`) and in the chat event. */
|
|
383
383
|
id: string;
|
|
384
|
-
/**
|
|
384
|
+
/** The visible state; undefined removes it from the run view. */
|
|
385
385
|
state: (entry: PluginState) => JsonValue | undefined;
|
|
386
|
-
/**
|
|
386
|
+
/** The visible chat event; undefined suppresses it. */
|
|
387
387
|
chatEvent: (event: PluginChatEvent) => PluginChatEvent | undefined;
|
|
388
388
|
}
|
|
389
389
|
|
|
390
390
|
export interface SessionMetadataContribution {
|
|
391
391
|
id: string;
|
|
392
|
-
/**
|
|
392
|
+
/** Whether `describe` reaches the workspace of the run; then the host calls it only for callers that may reach it. */
|
|
393
393
|
requiresWorkspace?: boolean;
|
|
394
394
|
describe: (context: SessionMetadataContext) => unknown | Promise<unknown>;
|
|
395
395
|
}
|
|
396
396
|
|
|
397
|
-
/**
|
|
397
|
+
/** The details of a run per contribution; a contribution without a value appears with its reason in `unavailable`. */
|
|
398
398
|
export interface SessionMetadata {
|
|
399
399
|
readonly values: Readonly<Record<string, unknown>>;
|
|
400
400
|
readonly unavailable: Readonly<Record<string, string>>;
|
|
@@ -440,7 +440,7 @@ export interface PluginRegistration {
|
|
|
440
440
|
agentRuntime: (...contributions: readonly AgentContribution[]) => void;
|
|
441
441
|
profiles: (...contributions: readonly ProfileContribution[]) => void;
|
|
442
442
|
prompts: (...contributions: readonly PromptContribution[]) => void;
|
|
443
|
-
/** Prompts,
|
|
443
|
+
/** Prompts, functions, skills and agent hooks of this plugin apply only in runs for which the condition holds; at most one per plugin. */
|
|
444
444
|
runCondition: (condition: RunCondition) => void;
|
|
445
445
|
provide: <T>(token: ServiceToken<T>, service: T) => void;
|
|
446
446
|
service: <T>(token: ServiceToken<T>) => T;
|
|
@@ -449,7 +449,7 @@ export interface PluginRegistration {
|
|
|
449
449
|
skills: (...contributions: readonly SkillContribution[]) => void;
|
|
450
450
|
startEntries: (...contributions: readonly StartEntryContribution[]) => void;
|
|
451
451
|
startOptions: (...contributions: readonly StartOptionContribution[]) => void;
|
|
452
|
-
/**
|
|
452
|
+
/** How accesses without runs.inspect see the states of this plugin and their chat events, per state id. */
|
|
453
453
|
accessProjections: (...contributions: readonly AccessProjectionContribution[]) => void;
|
|
454
454
|
functions: (...functions: readonly (RunFunction | ToolContributor)[]) => void;
|
|
455
455
|
script: (...contributions: readonly ScriptContribution[]) => void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Static, TSchema } from "typebox";
|
|
2
2
|
|
|
3
|
-
/**
|
|
3
|
+
/** A request with a response; the server executes it, or a connected client if `implementedBy` says so. */
|
|
4
4
|
export interface OperationContract<I extends TSchema = TSchema, R extends TSchema = TSchema> {
|
|
5
5
|
readonly kind: "operation";
|
|
6
6
|
readonly id: string;
|
|
@@ -11,7 +11,7 @@ export interface OperationContract<I extends TSchema = TSchema, R extends TSchem
|
|
|
11
11
|
readonly implementedBy: "server" | "client";
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
/**
|
|
14
|
+
/** After subscribing, a channel delivers messages until the subscription ends. */
|
|
15
15
|
export interface ChannelContract<P extends TSchema = TSchema, M extends TSchema = TSchema> {
|
|
16
16
|
readonly kind: "channel";
|
|
17
17
|
readonly id: string;
|
|
@@ -32,7 +32,7 @@ export type ChannelMessage<C> = C extends ChannelContract<TSchema, infer M> ? St
|
|
|
32
32
|
export const CONTRACT_ID = /^[a-z][a-z0-9-]*(?:\.[a-zA-Z][a-zA-Z0-9-]*)+$/;
|
|
33
33
|
|
|
34
34
|
const assertContractId = (id: string): void => {
|
|
35
|
-
if (!CONTRACT_ID.test(id)) throw new Error(`
|
|
35
|
+
if (!CONTRACT_ID.test(id)) throw new Error(`Invalid contract id: ${id}`);
|
|
36
36
|
};
|
|
37
37
|
|
|
38
38
|
export const defineOperation = <I extends TSchema, R extends TSchema>(definition: {
|
|
@@ -44,7 +44,7 @@ export const defineOperation = <I extends TSchema, R extends TSchema>(definition
|
|
|
44
44
|
implementedBy?: "server" | "client";
|
|
45
45
|
}): OperationContract<I, R> => {
|
|
46
46
|
assertContractId(definition.id);
|
|
47
|
-
if (!definition.description.trim()) throw new Error(`Operation ${definition.id}
|
|
47
|
+
if (!definition.description.trim()) throw new Error(`Operation ${definition.id} has no description`);
|
|
48
48
|
return Object.freeze({
|
|
49
49
|
kind: "operation",
|
|
50
50
|
id: definition.id,
|
|
@@ -64,7 +64,7 @@ export const defineChannel = <P extends TSchema, M extends TSchema>(definition:
|
|
|
64
64
|
message: M;
|
|
65
65
|
}): ChannelContract<P, M> => {
|
|
66
66
|
assertContractId(definition.id);
|
|
67
|
-
if (!definition.description.trim()) throw new Error(`
|
|
67
|
+
if (!definition.description.trim()) throw new Error(`Channel ${definition.id} has no description`);
|
|
68
68
|
return Object.freeze({
|
|
69
69
|
kind: "channel",
|
|
70
70
|
id: definition.id,
|
|
@@ -4,11 +4,11 @@ import type { JsonValue } from "../domain/json.ts";
|
|
|
4
4
|
import type { ChannelContract, OperationContract, OperationInput, OperationResult } from "./contract.ts";
|
|
5
5
|
import type { RpcCallOptions } from "./peer.ts";
|
|
6
6
|
|
|
7
|
-
/**
|
|
7
|
+
/** The connection a request came through; the server also calls the client through it. */
|
|
8
8
|
export interface MethodConnection {
|
|
9
9
|
readonly id: string;
|
|
10
10
|
readonly userId: string | null;
|
|
11
|
-
/**
|
|
11
|
+
/** Without an event stream the server cannot call back over this connection. */
|
|
12
12
|
readonly streamless: boolean;
|
|
13
13
|
call: <C extends OperationContract>(contract: C, input: OperationInput<C>, options?: RpcCallOptions) => Promise<OperationResult<C>>;
|
|
14
14
|
onClose: (listener: () => void) => () => void;
|
|
@@ -48,13 +48,13 @@ const CANCEL_GRACE_MS = 5_000;
|
|
|
48
48
|
export const rpcFailureOf = (id: RpcId | null, error: unknown): RpcFailure => {
|
|
49
49
|
if (error instanceof RpcError) return rpcFailure(id, error.code, error.message, error.data);
|
|
50
50
|
if (error instanceof DomainError) return rpcFailure(id, RPC_ERROR_CODES.application, error.message, { code: error.code, status: error.status });
|
|
51
|
-
if (error instanceof Error && error.name === "AbortError") return rpcFailure(id, RPC_ERROR_CODES.cancelled, "
|
|
51
|
+
if (error instanceof Error && error.name === "AbortError") return rpcFailure(id, RPC_ERROR_CODES.cancelled, "Cancelled");
|
|
52
52
|
return rpcFailure(id, RPC_ERROR_CODES.internal, error instanceof Error ? error.message : String(error));
|
|
53
53
|
};
|
|
54
54
|
|
|
55
55
|
export const rpcErrorOf = (failure: RpcFailure): RpcError => new RpcError(failure.error.code, failure.error.message, failure.error.data);
|
|
56
56
|
|
|
57
|
-
/**
|
|
57
|
+
/** One side of a JSON-RPC connection: sends and answers requests, knows cancellation and progress, without transport. */
|
|
58
58
|
export class RpcPeer {
|
|
59
59
|
readonly #send: RpcPeerOptions["send"];
|
|
60
60
|
readonly #pending = new Map<RpcId, PendingCall>();
|
|
@@ -75,17 +75,17 @@ export class RpcPeer {
|
|
|
75
75
|
|
|
76
76
|
request(method: string, params: unknown, options: RpcCallOptions = {}): Promise<unknown> {
|
|
77
77
|
if (this.#closed !== undefined) return Promise.reject(new RpcError(RPC_ERROR_CODES.connectionClosed, this.#closed));
|
|
78
|
-
if (options.signal?.aborted) return Promise.reject(new RpcError(RPC_ERROR_CODES.cancelled, "
|
|
78
|
+
if (options.signal?.aborted) return Promise.reject(new RpcError(RPC_ERROR_CODES.cancelled, "Cancelled"));
|
|
79
79
|
const id = this.#nextId++;
|
|
80
80
|
return new Promise((resolve, reject) => {
|
|
81
81
|
let grace: ReturnType<typeof setTimeout> | undefined;
|
|
82
82
|
const timer = options.timeoutMs === undefined ? undefined : setTimeout(() => {
|
|
83
83
|
this.notify(RPC_METHODS.cancel, { id } satisfies RpcCancelParams);
|
|
84
|
-
settle({ error: new RpcError(RPC_ERROR_CODES.timeout, `
|
|
84
|
+
settle({ error: new RpcError(RPC_ERROR_CODES.timeout, `No response to ${method} within ${options.timeoutMs} ms`) });
|
|
85
85
|
}, options.timeoutMs);
|
|
86
86
|
const cancel = () => {
|
|
87
87
|
this.notify(RPC_METHODS.cancel, { id } satisfies RpcCancelParams);
|
|
88
|
-
grace = setTimeout(() => settle({ error: new RpcError(RPC_ERROR_CODES.cancelled, "
|
|
88
|
+
grace = setTimeout(() => settle({ error: new RpcError(RPC_ERROR_CODES.cancelled, "Cancelled") }), CANCEL_GRACE_MS);
|
|
89
89
|
};
|
|
90
90
|
const settle: PendingCall["settle"] = (outcome) => {
|
|
91
91
|
if (!this.#pending.delete(id)) return;
|
|
@@ -108,18 +108,18 @@ export class RpcPeer {
|
|
|
108
108
|
}
|
|
109
109
|
|
|
110
110
|
onRequest(method: string, handler: RpcRequestHandler): () => void {
|
|
111
|
-
if (this.#requestHandlers.has(method)) throw new Error(`
|
|
111
|
+
if (this.#requestHandlers.has(method)) throw new Error(`The method ${method} already has a handler`);
|
|
112
112
|
this.#requestHandlers.set(method, handler);
|
|
113
113
|
return () => { if (this.#requestHandlers.get(method) === handler) this.#requestHandlers.delete(method); };
|
|
114
114
|
}
|
|
115
115
|
|
|
116
116
|
onNotification(method: string, handler: RpcNotificationHandler): () => void {
|
|
117
|
-
if (this.#notificationHandlers.has(method)) throw new Error(`
|
|
117
|
+
if (this.#notificationHandlers.has(method)) throw new Error(`The notification ${method} already has a handler`);
|
|
118
118
|
this.#notificationHandlers.set(method, handler);
|
|
119
119
|
return () => { if (this.#notificationHandlers.get(method) === handler) this.#notificationHandlers.delete(method); };
|
|
120
120
|
}
|
|
121
121
|
|
|
122
|
-
/**
|
|
122
|
+
/** Handles every request without its own handler, such as the dispatcher of the server. */
|
|
123
123
|
fallback(handler: RpcFallbackHandler | undefined): void {
|
|
124
124
|
this.#fallback = handler;
|
|
125
125
|
}
|
|
@@ -152,10 +152,10 @@ export class RpcPeer {
|
|
|
152
152
|
else pending.settle({ result: message.result });
|
|
153
153
|
return;
|
|
154
154
|
}
|
|
155
|
-
void this.#deliver(rpcFailure(null, RPC_ERROR_CODES.invalidRequest, "
|
|
155
|
+
void this.#deliver(rpcFailure(null, RPC_ERROR_CODES.invalidRequest, "The message is not valid JSON-RPC")).catch(() => undefined);
|
|
156
156
|
}
|
|
157
157
|
|
|
158
|
-
/**
|
|
158
|
+
/** Cancels all running handlers, for example when the stream their response would go through is gone; own calls stay possible. */
|
|
159
159
|
cancelIncoming(): void {
|
|
160
160
|
for (const controller of this.#running.values()) controller.abort();
|
|
161
161
|
this.#running.clear();
|
|
@@ -203,7 +203,7 @@ export class RpcPeer {
|
|
|
203
203
|
? await handler(request.params, context)
|
|
204
204
|
: this.#fallback
|
|
205
205
|
? await this.#fallback(request.method, request.params, context)
|
|
206
|
-
: (() => { throw new RpcError(RPC_ERROR_CODES.methodNotFound, `
|
|
206
|
+
: (() => { throw new RpcError(RPC_ERROR_CODES.methodNotFound, `Unknown method: ${request.method}`); })();
|
|
207
207
|
if (this.#closed === undefined) await this.#deliver({ jsonrpc: "2.0", id: request.id, result: result === undefined ? null : result });
|
|
208
208
|
} catch (error) {
|
|
209
209
|
if (this.#closed === undefined) await this.#deliver(rpcFailureOf(request.id, error)).catch(() => undefined);
|
|
@@ -47,7 +47,7 @@ export const RPC_ERROR_CODES = Object.freeze({
|
|
|
47
47
|
timeout: -32003,
|
|
48
48
|
});
|
|
49
49
|
|
|
50
|
-
/**
|
|
50
|
+
/** Fixed methods of the message layer; everything else is a registered contract. */
|
|
51
51
|
export const RPC_METHODS = Object.freeze({
|
|
52
52
|
subscribe: "rpc.subscribe",
|
|
53
53
|
unsubscribe: "rpc.unsubscribe",
|
|
@@ -84,7 +84,7 @@ export interface RpcProgressParams {
|
|
|
84
84
|
value: unknown;
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
/**
|
|
87
|
+
/** An error of the other side or of the transport; for domain errors `data` carries `code` and `status`. */
|
|
88
88
|
export class RpcError extends Error {
|
|
89
89
|
readonly code: number;
|
|
90
90
|
readonly data: unknown;
|
|
@@ -202,7 +202,7 @@ export const recordToolCallSource =
|
|
|
202
202
|
return [event(context, { type: "tool.call.source", payload: input })];
|
|
203
203
|
};
|
|
204
204
|
|
|
205
|
-
const failureText = (error: string | null | undefined) => error?.trim() || "
|
|
205
|
+
const failureText = (error: string | null | undefined) => error?.trim() || "Error without a cause";
|
|
206
206
|
|
|
207
207
|
export const failToolCall =
|
|
208
208
|
(actorId: string, input: { turnId: string; toolCallId: string; name: string; error: string }): Decision =>
|
|
@@ -159,7 +159,7 @@ const staleLockReason = (lockPath: string, staleAfterMs: number): string | null
|
|
|
159
159
|
const owners = readdirSync(lockPath).filter((name) => name.startsWith("owner-") && name.endsWith(".json"));
|
|
160
160
|
|
|
161
161
|
if (owners.length === 0)
|
|
162
|
-
return "
|
|
162
|
+
return "no owner recorded";
|
|
163
163
|
|
|
164
164
|
if (owners.length > 1)
|
|
165
165
|
return null;
|
|
@@ -176,7 +176,7 @@ const staleLockReason = (lockPath: string, staleAfterMs: number): string | null
|
|
|
176
176
|
const sameHost = typeof owner.hostname !== "string" || owner.hostname === hostname();
|
|
177
177
|
|
|
178
178
|
if (sameHost && pid !== null && !processAlive(pid))
|
|
179
|
-
return `
|
|
179
|
+
return `process ${pid} is no longer alive`;
|
|
180
180
|
|
|
181
181
|
const lastSeen = typeof owner.heartbeatAt === "string"
|
|
182
182
|
? owner.heartbeatAt
|
|
@@ -186,9 +186,9 @@ const staleLockReason = (lockPath: string, staleAfterMs: number): string | null
|
|
|
186
186
|
if (!Number.isFinite(age) || age <= staleAfterMs)
|
|
187
187
|
return null;
|
|
188
188
|
|
|
189
|
-
const who = sameHost ? `
|
|
189
|
+
const who = sameHost ? `process ${pid ?? "?"}` : `process ${pid ?? "?"} on ${String(owner.hostname)}`;
|
|
190
190
|
|
|
191
|
-
return `${who}
|
|
191
|
+
return `${who} without heartbeat for ${Math.round(age / 1000)} s`;
|
|
192
192
|
};
|
|
193
193
|
|
|
194
194
|
const assertRunId = (runId: string) => {
|
|
@@ -280,7 +280,7 @@ export class Journal {
|
|
|
280
280
|
this.#path = path === ":memory:" ? null : path;
|
|
281
281
|
this.#services = services;
|
|
282
282
|
this.#onListenerError = options.onListenerError ?? ((error) => console.error("Journal listener failed:", error));
|
|
283
|
-
this.#onLoadError = options.onLoadError ?? ((failure) => console.error(`Journal ${failure.runId} (${failure.path})
|
|
283
|
+
this.#onLoadError = options.onLoadError ?? ((failure) => console.error(`Journal ${failure.runId} (${failure.path}) is not available: ${failure.message}`));
|
|
284
284
|
this.#onStaleLock = options.onStaleLock ?? ((message) => console.warn(message));
|
|
285
285
|
this.#heartbeatIntervalMs = options.writerHeartbeatIntervalMs ?? writerHeartbeatIntervalMs;
|
|
286
286
|
this.#staleAfterMs = options.writerStaleAfterMs ?? writerStaleAfterMs;
|
|
@@ -367,7 +367,7 @@ export class Journal {
|
|
|
367
367
|
const failure = this.failureOf(runId);
|
|
368
368
|
|
|
369
369
|
if (failure)
|
|
370
|
-
throw new DomainError("journal-unavailable", `Journal
|
|
370
|
+
throw new DomainError("journal-unavailable", `Journal for run ${runId} is not available: ${failure.message}`, 409);
|
|
371
371
|
}
|
|
372
372
|
|
|
373
373
|
load(runId: RunId) {
|
|
@@ -832,7 +832,7 @@ export class Journal {
|
|
|
832
832
|
try {
|
|
833
833
|
this.#onLoadError(failure);
|
|
834
834
|
} catch (reportError) {
|
|
835
|
-
console.error(`Journal ${runId} (${path})
|
|
835
|
+
console.error(`Journal ${runId} (${path}) is not available: ${failure.message}`, reportError);
|
|
836
836
|
}
|
|
837
837
|
}
|
|
838
838
|
}
|
|
@@ -867,7 +867,7 @@ export class Journal {
|
|
|
867
867
|
|
|
868
868
|
#assertLockHeld() {
|
|
869
869
|
if (this.#lockLost)
|
|
870
|
-
throw new Error("
|
|
870
|
+
throw new Error("The journal lock was removed from outside; this journal no longer accepts writes.");
|
|
871
871
|
}
|
|
872
872
|
|
|
873
873
|
#releaseWriterLock() {
|
|
@@ -920,7 +920,7 @@ export class Journal {
|
|
|
920
920
|
);
|
|
921
921
|
|
|
922
922
|
removeLock(lockPath);
|
|
923
|
-
this.#onStaleLock(`
|
|
923
|
+
this.#onStaleLock(`Took over orphaned journal lock ${lockPath}: ${reason}.`);
|
|
924
924
|
|
|
925
925
|
if (!createLockDirectory(lockPath))
|
|
926
926
|
throw new Error(`Another runtime process took ${lockPath} while its stale lock was being replaced.`);
|
|
@@ -976,7 +976,7 @@ export class Journal {
|
|
|
976
976
|
this.#heartbeat = null;
|
|
977
977
|
}
|
|
978
978
|
|
|
979
|
-
this.#onStaleLock(`
|
|
979
|
+
this.#onStaleLock(`The journal lock ${ownerPath} was removed from outside; this journal no longer accepts writes.`);
|
|
980
980
|
|
|
981
981
|
return;
|
|
982
982
|
}
|
|
@@ -98,13 +98,13 @@ export class Orchestration {
|
|
|
98
98
|
|
|
99
99
|
get actorPrograms() {
|
|
100
100
|
const programs = this.#services.actorPrograms;
|
|
101
|
-
if (!programs) throw new Error("
|
|
101
|
+
if (!programs) throw new Error("The actor program executor is missing for this runtime.");
|
|
102
102
|
return programs;
|
|
103
103
|
}
|
|
104
104
|
|
|
105
105
|
get nativeTypeScriptExecutor() {
|
|
106
106
|
const executor = this.#services.nativeTypeScriptExecutor;
|
|
107
|
-
if (!executor) throw new Error("
|
|
107
|
+
if (!executor) throw new Error("The native TypeScript executor is missing for this runtime.");
|
|
108
108
|
return executor;
|
|
109
109
|
}
|
|
110
110
|
|
|
@@ -169,7 +169,7 @@ export class Orchestration {
|
|
|
169
169
|
title: string;
|
|
170
170
|
ownerHandle: string;
|
|
171
171
|
ownerDisplayName: string;
|
|
172
|
-
/**
|
|
172
|
+
/** The signed-in user who owns the run; without sign-in it stays open. */
|
|
173
173
|
ownerUserId?: string;
|
|
174
174
|
runId?: string;
|
|
175
175
|
initialPluginStates?: readonly { pluginId: string; state: JsonValue }[];
|
|
@@ -764,9 +764,9 @@ export class Orchestration {
|
|
|
764
764
|
continue;
|
|
765
765
|
|
|
766
766
|
const content = alert.kind === "failed"
|
|
767
|
-
? `[
|
|
768
|
-
+ "
|
|
769
|
-
: `[
|
|
767
|
+
? `[Automatic notice] The turn of your actor @${child.handle} FAILED: ${alert.reason} `
|
|
768
|
+
+ "Check the state with event_query and decide: delegate again, repair or stop."
|
|
769
|
+
: `[Automatic notice] The turn of your actor @${child.handle} was interrupted: ${alert.reason}`;
|
|
770
770
|
|
|
771
771
|
try {
|
|
772
772
|
this.enqueueInput(
|
|
@@ -843,7 +843,7 @@ export class Orchestration {
|
|
|
843
843
|
actor.id,
|
|
844
844
|
{
|
|
845
845
|
turnId: actor.lifecycle.turnId,
|
|
846
|
-
reason: "
|
|
846
|
+
reason: "The turn was interrupted by a restart of the runtime.",
|
|
847
847
|
},
|
|
848
848
|
);
|
|
849
849
|
}
|
|
@@ -851,7 +851,7 @@ export class Orchestration {
|
|
|
851
851
|
if (!this.#journal.failureOf(runId))
|
|
852
852
|
throw error;
|
|
853
853
|
|
|
854
|
-
console.error(`Run ${runId}
|
|
854
|
+
console.error(`Run ${runId} could not be restored on restart:`, error);
|
|
855
855
|
}
|
|
856
856
|
}
|
|
857
857
|
}
|
|
@@ -120,7 +120,7 @@ export class RunStopper {
|
|
|
120
120
|
const journalFailures = journalResults
|
|
121
121
|
.filter((result): result is PromiseRejectedResult => result.status === "rejected")
|
|
122
122
|
.map((result) => result.reason);
|
|
123
|
-
throwFailures([boundaryFailure, ...journalFailures].filter((failure) => failure !== null), `
|
|
123
|
+
throwFailures([boundaryFailure, ...journalFailures].filter((failure) => failure !== null), `The run ${runId} could not be stopped completely.`);
|
|
124
124
|
|
|
125
125
|
return runtime.view(runId);
|
|
126
126
|
}
|
|
@@ -156,6 +156,6 @@ export class RunStopper {
|
|
|
156
156
|
failures.push(cleanupResult[0].reason);
|
|
157
157
|
|
|
158
158
|
stopOwnedActors("after-cleanup");
|
|
159
|
-
throwFailures(failures, `
|
|
159
|
+
throwFailures(failures, `The run ${runId} could not be stopped completely.`);
|
|
160
160
|
}
|
|
161
161
|
}
|