@schlenkr/ragents 0.1.9 → 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 +9 -39
- 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 +32 -29
- package/apps/server/src/api/core-methods.ts +21 -19
- 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 +8 -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 +48 -47
- 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 +63 -58
- 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 +25 -24
- package/apps/server/src/ragents/global-chat.ts +14 -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 +51 -49
- 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-xXXhTDbh.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 +64 -55
- package/apps/web/dist/help/guide-clients.md +62 -52
- 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 +1997 -942
- package/apps/web/dist/help/mini-app.css +30 -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 +26 -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 +29 -26
- package/apps/web/src/panel/connection-state.ts +9 -9
- package/apps/web/src/panel/contract.ts +34 -27
- 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 +256 -228
- package/bundles/ragents.actor-programs/server/index.js.map +4 -4
- 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 -4
- 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-V7W3QDVS.js → chunk-IQBHK7MV.js} +2 -2
- package/bundles/ragents.ask/web/chunks/{chunk-V7W3QDVS.js.map → chunk-IQBHK7MV.js.map} +4 -4
- 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 +4 -4
- 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 +3 -3
- package/bundles/ragents.overseer/ragents-bundle.json +2 -2
- package/bundles/ragents.overseer/server/index.js +99 -99
- 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 +83 -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/core/tools/bash.d.ts +1 -1
- 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/core/tools/bash.ts +1 -1
- 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/index.ts +1 -0
- package/packages/ragents/src/plugin-host.ts +162 -116
- package/packages/ragents/src/plugin-types.ts +29 -10
- 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 +35 -7
- 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 +37 -31
- 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 +31 -0
- 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/index.ts +2 -0
- 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 -8
- 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/ActorTile.tsx +1 -1
- 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 +29 -28
- 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 +10 -10
- 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 +8 -8
- 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 +62 -49
- 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 +8 -5
- package/plugins/ragents.workspace/server/index.ts +5 -4
- 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-C7JeZFjs.js +0 -6
- package/apps/web/dist/assets/mermaid-HWGCJPDP-DfsU5ofC.js +0 -478
- package/apps/web/dist/assets/runPanel-ZT6TPDLM.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/plugins/ragents.ask/web/QuestionSection.tsx +0 -48
- /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
|
@@ -1 +1 @@
|
|
|
1
|
-
["--accent","--destructive","--row-indent","--warning","[&>svg]:rotate-90","
|
|
1
|
+
["--accent","--destructive","--row-indent","--warning","[&>svg]:rotate-90","a","about","absolutePath","additionalProperties","adjusts","alert","alive","all","already","always","an","and","animate-spin","any","appear","are","aria-hidden","aria-label","as","async","at","available","await","back","bash","be","becomes","before","below","bg-destructive/8","binary","binding","bindingFrom","bindingOf","binds","blue","boolean","border-b-border-soft","border-border-soft","border-t","border-t-0","border-x-0","bound","break-words","brings","browse","browseTarget","bundle","busy","by","byExtension","byName","bytes","call","called","caller","calling","calls","cannot","carry","case","catch","cause","change","changed","channels","choice","chooseFolder","chooseMachine","chooseOffered","chosen","chosenRoot","cjs","className","client","clientDescription","clientId","clientInfoSchema","clientRegistrationSchema","clients","commit","connected","connection","const","contain","content","contributes","contribution","contributions","creates","cs","csproj","css","cts","current","currentColor","cwd","data-selected","data-selected:bg-primary/12","data-selected:text-primary","default","defineOperation","depth","description","destructive","different","directory","disabled","do","dockerfile","does","draft","each","else","empty","emptyHints","en-US","entries","entry","env","errorClass","even","event","every","exactly","excludes","execute","executor","executorContributions","executorVersion","existing","exists","expanded","expandedRef","export","extends","extension","fails","false","fetchBrowseListing","fetchBrowsePreview","fields","file","fileIconFor","fileToneClass","files","fill","finally","finds","flex","flex-1","flex-col","flex-none","flex-wrap","folder","folderChoices","folderDraft","folderOf","folders","font-medium","font-mono","font-normal","font-semibold","for","fresh","freshLabelOf","freshLabelsOf","freshServerBinding","from","fromKind","frozen","fs","fsproj","fsx","full","function","gap-1","gap-1.5","gap-2","ghost","gif","git","gitignore","gone","green","gz","h-7","h-auto","h-full","hasExactly","hbs","height","here","hidden","holds","host","hostname","htm","html","htmlFor","ico","icon","id","if","immutable","implementedBy","import","in","indent","ini","inline-flex","input","inspect","instanceof","interface","into","is","isClientInfo","isFolder","isFreshFolder","isFreshLabels","isMachine","isRecord","isWorkspaceBinding","it","items","items-center","items-end","items-start","its","itself","journal","journals","jpeg","jpg","js","json","jsx","justify-center","justify-start","key","keyRef","keys","kind","know","label","labelClass","labels","large","leading-[1.45]","left","length","let","list","listing","load","loads","location","lock","looks","lucide-react","machine","machineDraft","machineOf","machines","mapped","mapping","marker","max-w-full","maxItems","maxLength","may","md","message","messageOf","metadata","min-h-0","min-h-30","min-w-0","min-w-[15rem]","minLength","missing","mjs","model","modifiedAt","module","moment","mts","muted","name","named","needs","neither","new","next","nextFolder","nextMachine","nextPath","none","nor","not","nothing","null","number","object","observed","of","offered","offers","older","on","onBlur","onChange","onClick","onKeyDown","onPressedChange","onValueChange","one","only","open","openFile","openJson","operation","option","optionId","or","orange","order","other","otherExecutorRegistration","out","outline","overflow-auto","overflow-hidden","own","p-7","params","parse","parsed","path","pathId","pathOf","pattern","pb-1.5","pb-2","pb-2.5","pdf","per","pink","pl-(--row-indent)","pl-px","placeholder","platform","plugin","plugins","png","pr-2.5","presentation","presentationFrom","pressed","preview","previewSourceClass","previewable","process","progress","prompt","provide","pt-0","pt-0.5","px","px-2.5","py","py-1","py-1.5","py-2","py-[3px]","raw","reachable","react","read","readRight","readonly","reason","records","red","register","rejects","releases","renderLevel","renew","reports","request","rest","result","results","return","rg","right","rights","ripgrep","role","root","rootLabels","rootListing","roots","round","rounded-none","rowClass","rpc","rules","run","runId","runsDirectory","s","same","sameBinding","sandbox","saved","says","search","selected","sends","server","serverFolders","session","sessionMetadata","setDraft","setError","setExpanded","setFolder","setListings","setMachine","setPending","setPreview","setReload","setRoot","setSelected","setShowHidden","setValue","sh","shape","showHidden","shrink-0","sign-in","signed-in","size","size-3","size-3.5","sizeLabel","sln","slnx","sm","so","stand","start","startOptions","state","stateKey","stays","stop","storage","store","stored","storedWorkspaceBinding","string","stroke","strokeLinecap","strokeLinejoin","strokeWidth","style","subfolder","such","summary","svg","switch","tabular-nums","tar","targets","tasks","teal","text","text-[0.64rem]","text-[0.66rem]","text-[0.68rem]","text-[0.72rem]","text-[0.75rem]","text-[0.7rem]","text-[color-mix(in_srgb,var(--destructive)_65%,var(--accent))]","text-[color-mix(in_srgb,var(--warning)_75%,var(--destructive))]","text-destructive","text-info","text-left","text-muted-foreground","text-primary","text-sm","text-success","text-teal","text-warning","text-xs","that","the","there","this","through","throw","timeLabel","timer","title","to","toggleDirectory","toml","tone","too","tool","toolCallId","treeMemory","truncate","truncated","try","ts","tsx","txt","type","typebox","typeof","unambiguously","undefined","under","unknown","unreadable","unregister","unsubscribe","useState","users","value","variant","version","viewBox","violet","visible","void","w-3","w-full","way","webPlugin","webp","were","what","where","whether","which","whitespace-pre-wrap","whose","width","with","without","working","workspace","workspace-binding","workspace-executor-version","workspaceBindingSummary","workspaceClientContracts","workspaceContracts","workspaceFolderChoices","workspaceMachineChoices","workspaceMetadataFrom","workspaceTabs","workstation","workstations","write","yaml","yellow","yml","your","zip","zsh"]
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var t=(e,a)=>{let o=globalThis.__ragentsHostModules?.[e];if(o===void 0)throw new Error(`Der Host stellt ${e} nicht bereit`);if(!(a in o))throw new Error(`Der Host stellt ${a} aus ${e} nicht bereit; das Bundle ist gegen einen neueren Host gebaut`);return o[a]};var l=t("typebox","Type");var be=t("@ragents/engine/src/http/contracts","openJson");var We=t("@ragents/engine/src/rpc/contract","defineChannel");var V=t("@ragents/engine/src/rpc/contract","defineOperation");var ca="ragents.workspace",pa=["workspace","files"],ma="ragents.workspace.binding",La="ragents.workspace",ot=()=>({machine:"server",folder:"fresh"}),rt=/^[A-Za-z0-9_-]{8,64}$/,xa=l.String({pattern:"^[A-Za-z0-9_-]{8,64}$",description:"Stabile Kennung des Arbeitsplatzes"}),ze=l.String({minLength:1,maxLength:64,description:"Stand des Executors, den der Arbeitsplatz mitbringt"}),dt=/^[a-z0-9]+(?:[.-][a-z0-9]+)*$/,Ia=l.Array(l.Object({plugin:l.String({pattern:dt.source,maxLength:128,description:"Kennung des Plugins"}),stand:l.String({pattern:"^[0-9a-f]{64}$",description:"SHA-256 der Datei des Beitrags"})},{additionalProperties:!1}),{maxItems:64,description:"Die Beitr\xE4ge der Plugins zum Executor, in der Reihenfolge der Pluginliste des Servers"}),Fe={label:l.String({minLength:1,maxLength:120}),hostname:l.String({minLength:1}),platform:l.String({minLength:1}),folders:l.Array(l.String({minLength:1}),{maxItems:32}),runsDirectory:l.String({minLength:1,description:"Absoluter Ordner, unter dem der Arbeitsplatz die neuen Ordner je Run anlegt"}),ripgrep:l.Boolean({description:"Ob die Bash des Arbeitsplatzes rg findet"})},na=l.Object({id:l.String(),...Fe},{additionalProperties:!1}),ut=l.Object({id:xa,...Fe,executor:ze,contributions:Ia},{additionalProperties:!1}),lt=l.Object({label:Fe.label,executor:ze},{description:"Anmeldung mit einem anderen Executor-Stand in beliebiger Form; der Server lehnt sie mit workspace-executor-version ab"}),st=l.String({minLength:1,description:"Absoluter Pfad im gebundenen Ordner"});var jt={execute:V({id:"ragents.workspace.client.execute",description:"Eine Operation des Executors auf dem Arbeitsplatz ausf\xFChren, etwa ein Werkzeug, eine Dateiabfrage oder die Prozessanzeige; das Ergebnis ist ihr Wert, Fortschritt ihr JSON-Wert. stop gibt frei, was der Arbeitsplatz f\xFCr den Run h\xE4lt.",implementedBy:"client",input:l.Object({runId:l.String({minLength:1,maxLength:64,description:"Kennung des Runs"}),operation:l.String({minLength:1,maxLength:64,description:"Name der Operation, etwa read, bash, roslyn_open, files.list oder stop"}),toolCallId:l.Optional(l.String({minLength:1,maxLength:200,description:"Nur bei einem Werkzeugaufruf des Modells"})),cwd:st,env:l.Record(l.String(),l.String(),{description:"Was der Server beitr\xE4gt: Run-Marker und Git-Regeln der Sandbox"}),input:l.Unknown({description:"Die Eingabe der Operation"})},{additionalProperties:!1}),result:l.Object({value:l.Unknown()},{additionalProperties:!1})})},ye={runId:l.String({minLength:1,maxLength:64,description:"Kennung des Runs"}),root:l.Union([l.Literal("workspace"),l.Literal("files")]),path:l.String({description:"Pfad unterhalb der Wurzel; leer ist die Wurzel selbst"})},ue={browse:{list:V({id:"ragents.workspace.browse.list",description:"Ein Verzeichnis im Arbeitsverzeichnis oder in der Dateiablage eines Runs auflisten.",rights:["runs.read","runs.inspect"],input:l.Object(ye,{additionalProperties:!1}),result:be("BrowseListing")}),preview:V({id:"ragents.workspace.browse.preview",description:"Eine Datei als Text vorschauen; zu gro\xDFe und bin\xE4re Dateien nennen stattdessen den Grund.",rights:["runs.read","runs.inspect"],input:l.Object(ye,{additionalProperties:!1}),result:be("BrowsePreview")})},channels:{browse:We({id:"ragents.workspace.browse",description:"Meldet jede \xC4nderung unterhalb der beobachteten Wurzel eines Runs.",rights:["runs.read","runs.inspect"],params:l.Object({runId:ye.runId,root:ye.root},{additionalProperties:!1}),message:l.Object({changed:l.Literal(!0)},{additionalProperties:!1})})},clients:{list:V({id:"ragents.workspace.clients.list",description:"Die angemeldeten Arbeitspl\xE4tze des Aufrufers; fremde erscheinen auch mit runs.read.all nicht.",rights:["runs.read"],input:l.Object({},{additionalProperties:!1}),result:l.Array(na)}),contributions:V({id:"ragents.workspace.clients.contributions",description:"Die Beitr\xE4ge der Plugins zum Executor, die ein Arbeitsplatz vor der Anmeldung l\xE4dt und mit ihr zur\xFCckmeldet. Ein Arbeitsplatz mit anderem Executor-Stand scheitert an seinem Stand; weitere Felder z\xE4hlen nicht.",rights:["runs.write"],input:l.Object({label:Fe.label,executor:ze}),result:Ia}),register:V({id:"ragents.workspace.clients.register",description:"Einen Arbeitsplatz anmelden oder seine Ordner erneuern; die Verbindung dieser Anfrage wird sein R\xFCckweg und braucht einen Ereignisstrom. Ein Arbeitsplatz mit anderem Executor-Stand scheitert an seinem Stand, bevor die \xFCbrige Form z\xE4hlt.",rights:["runs.write"],input:l.Union([ut,lt]),result:na}),unregister:V({id:"ragents.workspace.clients.unregister",description:"Einen eigenen Arbeitsplatz abmelden; offene Auftr\xE4ge scheitern.",rights:["runs.write"],input:l.Object({id:xa},{additionalProperties:!1}),result:l.Null()})}},Me=e=>typeof e=="object"&&e!==null,j=(e,a)=>Object.keys(e).length===a.length&&a.every(o=>Object.hasOwn(e,o)),ft=e=>e==="server"||Me(e)&&j(e,["client","label"])&&typeof e.client=="string"&&rt.test(e.client)&&typeof e.label=="string",it=e=>e==="fresh"?!0:!Me(e)||typeof e.path!="string"||e.path.length===0?!1:j(e,["path"])||j(e,["path","fresh"])&&e.fresh===!0,De=e=>Me(e)&&j(e,["machine","folder"])&&ft(e.machine)&&it(e.folder)&&!(e.machine==="server"&&typeof e.folder=="object"&&"fresh"in e.folder),Ge=e=>e==="fresh"||"fresh"in e,nt=e=>{switch(e.kind){case"fresh":return j(e,["kind"])?ot():void 0;case"path":return j(e,["kind","path"])?{machine:"server",folder:{path:e.path}}:void 0;case"client":return j(e,["kind","client","label","path"])?{machine:{client:e.client,label:e.label},folder:{path:e.path}}:void 0;default:return}},Ca=e=>{if(De(e))return e;let a=Me(e)&&Object.hasOwn(e,"kind")?nt(e):void 0;return De(a)?a:void 0},Re="Leerer Ordner je Run",ct=(e,a)=>(e.machine==="server"?a.server:a.client)??Re,ga=(e,a)=>{let{machine:o,folder:u}=e,x=ct(e,a),B=u==="fresh"?x:"fresh"in u?`${u.path} (${x})`:u.path;return o==="server"?B:`${o.label}: ${B}`};var Ve=t("@ragents/web/ui","Alert");var Te=t("@ragents/web/ui","Button");var Ne=t("@ragents/web/ui","Empty");var Xe=t("@ragents/web/ui","EmptyDescription");var Ke=t("@ragents/web/ui","EmptyHeader");var Ze=t("@ragents/web/ui","EmptyMedia");var _e=t("@ragents/web/ui","EmptyTitle");var je=t("@ragents/web/ui","Input");var Qe=t("@ragents/web/ui","Label");var le=t("@ragents/web/ui","Select");var se=t("@ragents/web/ui","SelectContent");var fe=t("@ragents/web/ui","SelectItem");var ie=t("@ragents/web/ui","SelectTrigger");var ne=t("@ragents/web/ui","SelectValue");var ve=t("@ragents/web/ui","Toggle");var Je=t("react","createContext");var Q=t("react","createElement");var ce=t("react","forwardRef");var $e=t("react","useContext");var te=t("react","useEffect");var Ye=t("react","useId");var qe=t("react","useMemo");var pe=t("react","useRef");var A=t("react","useState");var ha=e=>e?.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();function Sa(e,a,o=[]){if(a==null)throw new Error("[lucide]: iconNode is required when icon name is used");return{name:ha(e),size:24,node:a,...o.length>0?{aliases:o}:{}}}var ka=e=>{let a="",o=!1;for(let u of e){if(u==="-"||u==="_"||u<=" "){o=a.length>0;continue}a.length===0?a+=u.toLowerCase():a+=o?u.toUpperCase():u,o=!1}return a};var wa=e=>{let a=ka(e);return a.charAt(0).toUpperCase()+a.slice(1)};var me=(...e)=>e.filter((a,o,u)=>!!a&&a.trim()!==""&&u.indexOf(a)===o).join(" ").trim();var N={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"};function ea(e){return e!=null}function Pa(e,a={}){let o=a.attributeNames??{},u=c=>o[c]??c,x=e.size??e.width??N.width,B=e.size??e.height??N.height,S=e.aliases?.filter(c=>typeof c=="string"&&c.trim()!=="").map(c=>`lucide-${c}`)??[],H=[...e.name?[`lucide-${e.name}`]:[],...S],p=a.className?.split(" ").filter(Boolean)??[],b=a.includeDefaultClasses===!1?me(...p):me("lucide",...H,...p),F=a.absoluteStrokeWidth?Number(a.strokeWidth??N["stroke-width"])*Number(e.size??e.width??N.width)/Number(a.size??a.width??N.width):a.strokeWidth??N["stroke-width"];return["svg",{...Object.entries(N).reduce((c,[g,i])=>(c[u(g)]=i,c),{}),..."color"in a&&a.color&&{[u("stroke")]:a.color},..."size"in a&&ea(a.size)&&{[u("width")]:a.size,[u("height")]:a.size},..."width"in a&&ea(a.width)&&{[u("width")]:a.width},..."height"in a&&ea(a.height)&&{[u("height")]:a.height},[u("stroke-width")]:F,...b&&{[u("class")]:b},[u("viewBox")]:`0 0 ${x} ${B}`,...a.hasA11yProp===!1?{[u("aria-hidden")]:"true"}:{},..."attributes"in a&&a.attributes},e.node.map(c=>{let[g,i,k]=c,m=a.nonScalingStroke?{[u("vector-effect")]:"non-scaling-stroke",...i}:i;return k?[g,m,k]:[g,m]})]}function Aa(e,a={}){return Pa(e,{...a,attributeNames:{...a.attributeNames,class:"className","stroke-width":"strokeWidth","stroke-linecap":"strokeLinecap","stroke-linejoin":"strokeLinejoin","vector-effect":"vectorEffect"}})}var Ba=e=>{for(let a in e)if(a.startsWith("aria-")||a==="role"||a==="title")return!0;return!1};var pt=Je({});var ba=()=>$e(pt);var ya=ce(({color:e,size:a,width:o,height:u,strokeWidth:x,absoluteStrokeWidth:B,nonScalingStroke:S,className:H="",children:p,iconNode:b=[],icon:F={node:b,aliases:[],size:24},...O},c)=>{let{size:g=24,strokeWidth:i=2,absoluteStrokeWidth:k=!1,nonScalingStroke:m=!1,color:w="currentColor",className:Z=""}=ba()??{},M=!!p||Ba(O),[ae,D,re=[]]=Aa(F,{color:e??w,width:o??a??g,height:u??a??g,strokeWidth:x??i,absoluteStrokeWidth:B??k,nonScalingStroke:S??m,className:me(Z,H),hasA11yProp:M,attributes:O});return Q(ae,{ref:c,...D},[...re.map(([E,W])=>Q(E,W)),...Array.isArray(p)?p:[p]])});function f(e,a=[],o=[]){let u=typeof e=="string"?Sa(e,a,o):e,x=ce(({className:B,...S},H)=>Q(ya,{ref:H,icon:u,className:B,...S}));return u.name&&(x.displayName=wa(u.name)),x}var Da={name:"braces",size:24,node:[["path",{d:"M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1",key:"ezmyqa"}],["path",{d:"M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1",key:"e1hn23"}]],aliases:["curly-braces"]};Da.node;var U=f(Da);var Fa={name:"chevron-right",size:24,node:[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]};Fa.node;var Le=f(Fa);var Ma={name:"eye-off",size:24,node:[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]};Ma.node;var xe=f(Ma);var Ra={name:"eye",size:24,node:[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]};Ra.node;var Ie=f(Ra);var Ta={name:"file-archive",size:24,node:[["path",{d:"M13.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v11.5",key:"4pqfef"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M8 12v-1",key:"1ej8lb"}],["path",{d:"M8 18v-2",key:"qcmpov"}],["path",{d:"M8 7V6",key:"1nbb54"}],["circle",{cx:"8",cy:"20",r:"2",key:"ckkr5m"}]]};Ta.node;var J=f(Ta);var va={name:"file-code-corner",size:24,node:[["path",{d:"M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35",key:"1wthlu"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m5 16-3 3 3 3",key:"331omg"}],["path",{d:"m9 22 3-3-3-3",key:"lsp7cz"}]],aliases:["file-code-2"]};va.node;var L=f(va);var qa={name:"file-cog",size:24,node:[["path",{d:"M15 8a1 1 0 0 1-1-1V2a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8z",key:"1ckgky"}],["path",{d:"M20 8v12a2 2 0 0 1-2 2h-4.182",key:"1726p0"}],["path",{d:"m3.305 19.53.923-.382",key:"ao1pio"}],["path",{d:"M4 10.592V4a2 2 0 0 1 2-2h8",key:"1foop0"}],["path",{d:"m4.228 16.852-.924-.383",key:"1fv9zy"}],["path",{d:"m5.852 15.228-.383-.923",key:"1a9hc2"}],["path",{d:"m5.852 20.772-.383.924",key:"1sh9ke"}],["path",{d:"m8.148 15.228.383-.923",key:"4yu6lf"}],["path",{d:"m8.53 21.696-.382-.924",key:"18b0s9"}],["path",{d:"m9.773 16.852.922-.383",key:"ti6xop"}],["path",{d:"m9.773 19.148.922.383",key:"rws47d"}],["circle",{cx:"7",cy:"18",r:"3",key:"lvkj7j"}]],aliases:["file-cog-2"]};qa.node;var C=f(qa);var Oa={name:"file-image",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["circle",{cx:"10",cy:"12",r:"2",key:"737tya"}],["path",{d:"m20 17-1.296-1.296a2.41 2.41 0 0 0-3.408 0L9 22",key:"wt3hpn"}]]};Oa.node;var q=f(Oa);var Ua={name:"file-terminal",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m8 16 2-2-2-2",key:"10vzyd"}],["path",{d:"M12 18h4",key:"1wd2n7"}]]};Ua.node;var $=f(Ua);var Ha={name:"file-text",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]};Ha.node;var Y=f(Ha);var Ea={name:"file",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]]};Ea.node;var Ce=f(Ea);var Wa={name:"folder-open",size:24,node:[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]};Wa.node;var ee=f(Wa);var za={name:"folder",size:24,node:[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]};za.node;var X=f(za);var Ga={name:"palette",size:24,node:[["path",{d:"M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z",key:"e79jfc"}],["circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor",key:"1okk4w"}],["circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor",key:"f64h9f"}],["circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor",key:"qy21gx"}],["circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor",key:"fotxhn"}]]};Ga.node;var ge=f(Ga);var Va={name:"refresh-cw",size:24,node:[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]};Va.node;var he=f(Va);var aa=t("@ragents/web/PluginRegistry","workspaceAccessible");var oe=t("@ragents/web/rpc","rpc");var ta=(e,a,o)=>oe.call(ue.browse.list,{runId:e,root:a,path:o}),oa=(e,a,o)=>oe.call(ue.browse.preview,{runId:e,root:a,path:o});var Na={blue:"text-info",yellow:"text-warning",green:"text-success",teal:"text-teal",orange:"text-[color-mix(in_srgb,var(--warning)_75%,var(--destructive))]",pink:"text-[color-mix(in_srgb,var(--destructive)_65%,var(--accent))]",violet:"text-primary",red:"text-destructive",muted:"text-muted-foreground"},mt={ts:{Icon:L,tone:"blue"},tsx:{Icon:L,tone:"blue"},mts:{Icon:L,tone:"blue"},cts:{Icon:L,tone:"blue"},js:{Icon:L,tone:"yellow"},jsx:{Icon:L,tone:"yellow"},mjs:{Icon:L,tone:"yellow"},cjs:{Icon:L,tone:"yellow"},cs:{Icon:L,tone:"green"},fs:{Icon:L,tone:"teal"},fsx:{Icon:L,tone:"teal"},py:{Icon:L,tone:"green"},json:{Icon:U,tone:"yellow"},md:{Icon:Y,tone:"violet"},txt:{Icon:Y,tone:"muted"},pdf:{Icon:Y,tone:"red"},html:{Icon:L,tone:"orange"},htm:{Icon:L,tone:"orange"},hbs:{Icon:L,tone:"orange"},css:{Icon:ge,tone:"pink"},png:{Icon:q,tone:"violet"},jpg:{Icon:q,tone:"violet"},jpeg:{Icon:q,tone:"violet"},gif:{Icon:q,tone:"violet"},webp:{Icon:q,tone:"violet"},svg:{Icon:q,tone:"violet"},ico:{Icon:q,tone:"violet"},sh:{Icon:$,tone:"green"},zsh:{Icon:$,tone:"green"},bash:{Icon:$,tone:"green"},yml:{Icon:C,tone:"muted"},yaml:{Icon:C,tone:"muted"},toml:{Icon:C,tone:"muted"},ini:{Icon:C,tone:"muted"},csproj:{Icon:C,tone:"blue"},fsproj:{Icon:C,tone:"teal"},sln:{Icon:C,tone:"blue"},slnx:{Icon:C,tone:"blue"},zip:{Icon:J,tone:"orange"},gz:{Icon:J,tone:"orange"},tar:{Icon:J,tone:"orange"},lock:{Icon:C,tone:"muted"}},Lt={"package.json":{Icon:U,tone:"green"},"pnpm-lock.yaml":{Icon:C,tone:"muted"},"tsconfig.json":{Icon:U,tone:"blue"},".gitignore":{Icon:C,tone:"muted"},dockerfile:{Icon:C,tone:"teal"}},Xa=(e,a,o)=>{if(a==="directory")return{Icon:o?ee:X,tone:"muted"};let u=Lt[e.toLowerCase()];if(u)return u;let x=e.includes(".")?e.toLowerCase().split(".").at(-1)??"":"";return mt[x]??{Icon:Ce,tone:"muted"}};var ra=t("@ragents/web/SourceCode","SourceCode");var da=t("react/jsx-runtime","Fragment");var r=t("react/jsx-runtime","jsx");var n=t("react/jsx-runtime","jsxs");var xt="h-auto w-full justify-start gap-1.5 rounded-none py-[3px] pr-2.5 pl-(--row-indent) text-[0.7rem] font-normal data-selected:bg-primary/12 data-selected:text-primary",It="min-w-0 px-2.5 pt-0 pb-2.5 text-xs leading-[1.45] whitespace-pre-wrap break-words",Ka=e=>({"--row-indent":`${8+e*12}px`}),Ct={workspace:"Arbeitsverzeichnis",files:"Dateiablage"},gt={workspace:"Im Arbeitsverzeichnis des Runs liegt noch nichts.",files:"In der Dateiablage des Runs liegt noch nichts."},ua=e=>e instanceof Error?e.message:String(e),Za=e=>e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`,ht=e=>{let a=new Date(e);return Number.isNaN(a.getTime())?e:a.toLocaleString("de-DE")};function _a({active:e,session:a}){let o=a.session.id,u=pe(new Map),x=aa(a.session),B=x?pa:["files"],[S,H]=A("workspace"),p=x?S:"files",b=`${o}|${p}`,[F,O]=A(()=>new Map),[c,g]=A(()=>new Set),[i,k]=A(),[m,w]=A(),[Z,M]=A(),[ae,D]=A(!1),[re,E]=A(0),[W,Ee]=A(!1),we=pe(c);we.current=c;let d=pe(b);te(()=>{if(d.current===b)return;d.current=b;let s=u.current.get(b);O(new Map),g(s?.expanded??new Set),k(s?.selected),w(void 0),M(void 0)},[b]),te(()=>{u.current.set(b,{expanded:c,selected:i})},[c,p,o,i,b]),te(()=>{if(!e||i===void 0||m!==void 0)return;let s=!0;return oa(o,p,i).then(I=>s&&w(I)).catch(()=>s&&k(void 0)),()=>{s=!1}},[e,m,p,o,i]),te(()=>{if(!e)return;let s=!0,I,P=!1,de=async G=>{if(!P){P=!0,G&&D(!0);try{let _=["",...we.current],Pe=await Promise.all(_.map(async y=>({directory:y,listing:await ta(o,p,y).catch(Be=>y===""?Promise.reject(Be):null)})));if(!s)return;let Ae=Pe.filter(y=>y.listing===null).map(y=>y.directory);O(new Map(Pe.filter(y=>y.listing!==null).map(y=>[y.directory,y.listing]))),Ae.length>0&&g(y=>new Set([...y].filter(Be=>!Ae.some(ia=>Be===ia||Be.startsWith(`${ia}/`))))),M(void 0)}catch(_){s&&M(ua(_))}finally{P=!1,s&&(G&&D(!1),I!==void 0&&window.clearTimeout(I),I=window.setTimeout(()=>{de(!1)},3e4))}}},h=oe.subscribe(ue.channels.browse,{runId:o,root:p},()=>{de(!1)});return de(!0),()=>{s=!1,h(),I!==void 0&&window.clearTimeout(I)}},[e,re,p,o]);let T=s=>{g(I=>{let P=new Set(I);return P.has(s)?P.delete(s):P.add(s),P}),!F.has(s)&&(D(!0),ta(o,p,s).then(I=>{O(P=>new Map(P).set(s,I)),M(void 0)}).catch(I=>M(ua(I))).finally(()=>D(!1)))},z=s=>{k(s),w(void 0),D(!0),oa(o,p,s).then(I=>{w(I),M(void 0)}).catch(I=>M(ua(I))).finally(()=>D(!1))},v=(s,I)=>{let P=F.get(s);if(!P)return null;let de=W?P.entries:P.entries.filter(h=>!h.name.startsWith("."));return n(da,{children:[de.map(h=>{let G=s?`${s}/${h.name}`:h.name,_=c.has(G),{Icon:Pe,tone:Ae}=Xa(h.name,h.kind,_);return n("div",{children:[n(Te,{className:xt,"data-selected":i===G,onClick:()=>h.kind==="directory"?T(G):z(G),style:Ka(I),title:`${h.name} - ${Za(h.size)} - ${ht(h.modifiedAt)}`,variant:"ghost",children:[r("span",{className:`inline-flex w-3 flex-none items-center justify-center text-muted-foreground${_?" [&>svg]:rotate-90":""}`,children:h.kind==="directory"?r(Le,{size:11,strokeWidth:2}):null}),r(Pe,{"aria-hidden":!0,className:`flex-none ${Na[Ae]}`,size:14,strokeWidth:1.7}),r("span",{className:"min-w-0 flex-1 truncate text-left font-mono",children:h.name}),h.kind==="file"&&r("span",{className:"flex-none text-[0.64rem] text-muted-foreground tabular-nums",children:Za(h.size)})]}),h.kind==="directory"&&_&&v(G,I+1)]},G)}),P.truncated&&r("div",{className:"py-1 pr-2.5 pl-(--row-indent) text-[0.64rem] text-muted-foreground",style:Ka(I),children:"Weitere Eintr\xE4ge sind nicht gelistet."})]})},R=F.get("");return n("div",{className:"flex h-full min-h-0 flex-col",children:[n("header",{className:"flex items-center gap-2 px-2.5 py-2",children:[r("div",{className:"flex min-w-0 flex-1 gap-1",children:B.map(s=>r(ve,{onPressedChange:()=>H(s),pressed:s===p,size:"sm",variant:"outline",children:Ct[s]},s))}),n("div",{className:"flex items-center gap-1",children:[r(ve,{"aria-label":W?"Versteckte Eintr\xE4ge ausblenden":"Versteckte Eintr\xE4ge anzeigen",onPressedChange:Ee,pressed:W,size:"sm",title:W?"Versteckte Eintr\xE4ge ausblenden":"Versteckte Eintr\xE4ge anzeigen",children:W?r(Ie,{size:15,strokeWidth:1.8}):r(xe,{size:15,strokeWidth:1.8})}),r(Te,{"aria-label":"Dateien aktualisieren",onClick:()=>E(s=>s+1),size:"icon",title:"Aktualisieren",variant:"ghost",children:r(he,{className:ae?"animate-spin":void 0,size:15,strokeWidth:1.8})})]})]}),Z&&r(Ve,{className:"shrink-0 rounded-none border-x-0 border-t-0 border-b-border-soft bg-destructive/8 px-2.5 py-2 text-[0.68rem]",variant:"destructive",children:Z}),R&&r("div",{className:"truncate px-2.5 pt-0.5 pb-1.5 font-mono text-[0.66rem] text-muted-foreground",title:R.location,children:R.location}),R&&R.entries.length===0&&r(Ne,{className:"min-h-30 flex-none gap-2 p-7",children:n(Ke,{children:[r(Ze,{children:r(ee,{size:15,strokeWidth:1.7})}),r(_e,{children:"Keine Dateien"}),r(Xe,{children:gt[p]})]})}),r("div",{className:"min-h-0 flex-1 overflow-auto pb-2",children:v("",0)}),i&&n("div",{className:"flex min-h-0 flex-1 flex-col border-t border-border-soft",children:[r("div",{className:"truncate px-2.5 py-1.5 font-mono text-[0.66rem] text-muted-foreground",title:i,children:i}),m&&!m.previewable&&r("div",{className:"px-2.5 pb-2 text-[0.68rem] text-muted-foreground",children:m.reason}),m&&m.previewable&&r("div",{className:"min-h-0 flex-1 overflow-auto",children:r(ra,{className:It,content:m.content,path:i})})]})]})}var Oe=t("@ragents/web/Toolbar","ToolbarCopy");var Se=t("@ragents/web/Toolbar","ToolbarItem");var Ue=t("@ragents/web/Toolbar","ToolbarLabel");var ke=t("@ragents/web/Toolbar","ToolbarText");var K="server",ja="text-[0.75rem] text-destructive",He="text-[0.66rem] font-medium text-muted-foreground",Ja=e=>e instanceof Error?e.message:String(e),St=e=>{let a=e;return typeof a=="object"&&a!==null&&typeof a.id=="string"&&typeof a.label=="string"&&typeof a.hostname=="string"&&typeof a.platform=="string"&&Array.isArray(a.folders)&&a.folders.every(o=>typeof o=="string")&&typeof a.runsDirectory=="string"&&typeof a.ripgrep=="boolean"},$a=e=>{let a=e;return typeof a=="object"&&a!==null&&typeof a.server=="string"&&(a.client===null||typeof a.client=="string")},kt=(e,a)=>{let o=e;if(typeof o!="object"||o===null||o.kind!=="workspace-binding"||!Array.isArray(o.clients)||!o.clients.every(St)||!$a(o.fresh)||typeof o.serverFolders!="boolean")throw new Error(`Die Startoption ${a} liefert keine Arbeitsbereich-Darstellung`);return{kind:"workspace-binding",clients:o.clients,fresh:o.fresh,serverFolders:o.serverFolders}},Ya=(e,a)=>{let o=Ca(e);if(!o)throw new Error(`Der Wert der Startoption ${a} ist keine Arbeitsbereich-Bindung`);return o},la=e=>e.machine===K?K:e.machine.client,sa=e=>Ge(e.folder)?"fresh":"existing",fa=e=>{let{folder:a}=e;return Ge(a)?"":a.path},wt=(e,a)=>la(e)===la(a)&&sa(e)===sa(a)&&fa(e)===fa(a),Pt=(e,a,o)=>{let{machine:u}=a,x=o==="all"?e.clients:[],B=u===K||x.some(S=>S.id===u.client)?[]:[{value:u.client,label:e.clients.some(S=>S.id===u.client)?`Arbeitsplatz ${u.label}`:`Arbeitsplatz ${u.label} (nicht verbunden)`}];return[{value:K,label:"Server"},...x.map(S=>({value:S.id,label:`Arbeitsplatz ${S.label}`})),...B]},Qa=(e,a)=>{let o={value:"existing",label:"Vorhandener Ordner"};return a===K?[{value:"fresh",label:e.fresh.server},...e.serverFolders?[o]:[]]:[...e.fresh.client===null?[]:[{value:"fresh",label:e.fresh.client}],o]},At=e=>{let a=e;if(!(typeof a!="object"||a===null||typeof a.summary!="string"||!De(a.binding)))return{binding:a.binding,summary:a.summary}},Bt=e=>{try{return{presentation:kt(e.presentation,e.id),binding:Ya(e.value,e.id)}}catch(a){return{message:Ja(a)}}};function et({disabled:e,error:a,machines:o,option:u,setValue:x}){let[B,S]=A(void 0),[H,p]=A(void 0),[b,F]=A(void 0),O=Ye(),c=qe(()=>Bt(u),[u]);if("message"in c)return r("p",{className:ja,role:"alert",children:c.message});let{presentation:g,binding:i}=c,k=B??la(i),m=H??sa(i),w=b??fa(i),Z=Pt(g,i,o),M=Qa(g,k),ae=g.clients.find(d=>d.id===k),D=m==="existing"?ae?.folders.map(d=>({value:d,label:d}))??[]:[],re=(d,T,z)=>{let v=g.clients.find(s=>s.id===d)?.label??(i.machine!==K&&i.machine.client===d?i.machine.label:d),R=d===K?K:{client:d,label:v};return T==="fresh"?{machine:R,folder:"fresh"}:z===""?void 0:{machine:R,folder:{path:z}}},E=(d,T,z)=>{let v=re(d,T,z);v&&!wt(v,i)&&x(v)},W=d=>{let T=Qa(g,d).map(R=>R.value),z=T.includes(m)?m:T[0],v=w===""?g.clients.find(R=>R.id===d)?.folders[0]??"":w;S(d),p(z),F(v),E(d,z,v)},Ee=d=>{let T=w===""?ae?.folders[0]??"":w;p(d),F(T),E(k,d,T)},we=d=>{F(d),E(k,m,d)};return n("div",{className:"flex w-full flex-col items-start gap-2",children:[r("span",{className:"text-[0.72rem] font-semibold text-muted-foreground",children:"Arbeitsbereich"}),n("div",{className:"flex w-full flex-wrap items-end gap-2",children:[n("div",{className:"flex flex-col gap-1",children:[r("span",{className:He,children:"Rechner"}),n(le,{disabled:e,items:Z,onValueChange:d=>{d!==null&&W(d)},value:k,children:[r(ie,{"aria-label":"Rechner des Arbeitsbereichs",className:"min-w-0 max-w-full",size:"sm",children:r(ne,{})}),r(se,{children:Z.map(d=>r(fe,{value:d.value,children:d.label},d.value))})]})]}),n("div",{className:"flex flex-col gap-1",children:[r("span",{className:He,children:"Ordner"}),n(le,{disabled:e,items:M,onValueChange:d=>{d!==null&&Ee(d)},value:m,children:[r(ie,{"aria-label":"Ordner des Arbeitsbereichs",className:"min-w-0 max-w-full",size:"sm",children:r(ne,{})}),r(se,{children:M.map(d=>r(fe,{value:d.value,children:d.label},d.value))})]})]}),m==="existing"&&n("div",{className:"flex min-w-[15rem] flex-1 flex-col gap-1",children:[r(Qe,{className:He,htmlFor:O,children:"Absoluter Pfad"}),r(je,{className:"h-7 text-sm",disabled:e,id:O,onBlur:()=>E(k,m,w),onChange:d=>F(d.target.value),onKeyDown:d=>{d.key==="Enter"&&E(k,m,w)},placeholder:"/Users/name/projekt",value:w})]}),D.length>0&&n("div",{className:"flex flex-col gap-1",children:[r("span",{className:He,children:"Angebotener Ordner"}),n(le,{disabled:e,items:D,onValueChange:d=>{d!==null&&we(d)},value:D.some(d=>d.value===w)?w:null,children:[r(ie,{"aria-label":"Angebotener Ordner",className:"min-w-0 max-w-full",size:"sm",children:r(ne,{placeholder:"\xDCbernehmen"})}),r(se,{children:D.map(d=>r(fe,{value:d.value,children:d.label},d.value))})]})]})]}),a&&r("p",{className:ja,role:"alert",children:a})]})}var bt=e=>{let a=e;return typeof a=="object"&&a!==null&&$a(a.fresh)?a.fresh:{server:Re,client:Re}};function at({option:e}){if(!e.locked)return null;let a;try{a=Ya(e.value,e.id)}catch(u){return r(Se,{title:Ja(u),children:r(ke,{children:"Arbeitsbereich unlesbar"})})}let o=ga(a,bt(e.presentation));return r(Se,{title:`Arbeitsbereich: ${o}`,children:n(Oe,{children:[r(Ue,{children:"Arbeitsbereich"}),r(ke,{children:o})]})})}function tt({placement:e,session:a}){let o=At(a.metadata?.[La]);if(!o)return null;if(e==="list"){let{machine:u,folder:x}=o.binding;return u==="server"&&x==="fresh"?null:n("span",{className:"flex max-w-full items-center gap-1.5 overflow-hidden pl-px text-xs text-muted-foreground",title:`Arbeitsbereich: ${o.summary}`,children:[r(X,{"aria-hidden":!0,className:"size-3 flex-none"}),r("span",{className:"truncate",children:o.summary})]})}return n(Se,{title:`Arbeitsbereich: ${o.summary}`,children:[r(X,{"aria-hidden":!0,className:"size-3.5"}),n(Oe,{children:[r(Ue,{children:"Arbeitsbereich"}),r(ke,{children:o.summary})]})]})}var yt="ragents.workspace.files";function Dt(){return n("svg",{"aria-hidden":!0,fill:"none",height:"15",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.7",viewBox:"0 0 24 24",width:"15",children:[r("path",{d:"M3 6.5A1.5 1.5 0 0 1 4.5 5h4L10 7h9.5A1.5 1.5 0 0 1 21 8.5v9a1.5 1.5 0 0 1-1.5 1.5h-15A1.5 1.5 0 0 1 3 17.5z"}),r("path",{d:"M3 11h18"})]})}var Nu={id:ca,workspaceTabs:[{readRight:"runs.inspect",id:yt,label:"Dateien",order:260,Icon:Dt,Panel:_a}],startOptions:[{id:ma,Control:et,Badge:at}],sessionMetadata:[{id:"ragents.workspace.binding",order:90,Metadata:tt}]};export{yt as WORKSPACE_FILES_TAB_ID,Nu as webPlugin};
|
|
1
|
+
var t=(e,a)=>{let o=globalThis.__ragentsHostModules?.[e];if(o===void 0)throw new Error(`The host does not provide ${e}`);if(!(a in o))throw new Error(`The host does not provide ${a} from ${e}; the bundle was built against a newer host`);return o[a]};var l=t("typebox","Type");var ye=t("@ragents/engine/src/http/contracts","openJson");var Ee=t("@ragents/engine/src/rpc/contract","defineChannel");var z=t("@ragents/engine/src/rpc/contract","defineOperation");var ca="ragents.workspace",pa=["workspace","files"],ma="ragents.workspace.binding",La="ragents.workspace",ot=()=>({machine:"server",folder:"fresh"}),rt=/^[A-Za-z0-9_-]{8,64}$/,xa=l.String({pattern:"^[A-Za-z0-9_-]{8,64}$",description:"Stable ID of the workstation"}),Ge=l.String({minLength:1,maxLength:64,description:"Version of the executor that the workstation brings"}),ut=/^[a-z0-9]+(?:[.-][a-z0-9]+)*$/,Ia=l.Array(l.Object({plugin:l.String({pattern:ut.source,maxLength:128,description:"ID of the plugin"}),stand:l.String({pattern:"^[0-9a-f]{64}$",description:"SHA-256 of the contribution file"})},{additionalProperties:!1}),{maxItems:64,description:"The plugins' contributions to the executor, in the order of the server's plugin list"}),Me={label:l.String({minLength:1,maxLength:120}),hostname:l.String({minLength:1}),platform:l.String({minLength:1}),folders:l.Array(l.String({minLength:1}),{maxItems:32}),runsDirectory:l.String({minLength:1,description:"Absolute folder under which the workstation creates the new folders per run"}),ripgrep:l.Boolean({description:"Whether the workstation's bash finds rg"})},na=l.Object({id:l.String(),...Me},{additionalProperties:!1}),dt=l.Object({id:xa,...Me,executor:Ge,contributions:Ia},{additionalProperties:!1}),lt=l.Object({label:Me.label,executor:Ge},{description:"Sign-in with a different executor version in any shape; the server rejects it with workspace-executor-version"}),st=l.String({minLength:1,description:"Absolute path in the bound folder"});var jt={execute:z({id:"ragents.workspace.client.execute",description:"Run an operation of the executor on the workstation, such as a tool, a file query, or the process display; the result is its value, progress its JSON value. stop releases what the workstation holds for the run.",implementedBy:"client",input:l.Object({runId:l.String({minLength:1,maxLength:64,description:"ID of the run"}),operation:l.String({minLength:1,maxLength:64,description:"Name of the operation, such as read, bash, roslyn_open, files.list, or stop"}),toolCallId:l.Optional(l.String({minLength:1,maxLength:200,description:"Only for a tool call of the model"})),cwd:st,env:l.Record(l.String(),l.String(),{description:"What the server contributes: run marker and git rules of the sandbox"}),input:l.Unknown({description:"The input of the operation"})},{additionalProperties:!1}),result:l.Object({value:l.Unknown()},{additionalProperties:!1})})},De={runId:l.String({minLength:1,maxLength:64,description:"ID of the run"}),root:l.Union([l.Literal("workspace"),l.Literal("files")]),path:l.String({description:"Path below the root; empty is the root itself"})},de={browse:{list:z({id:"ragents.workspace.browse.list",description:"List a directory in the workspace or in the file store of a run.",rights:["runs.read","runs.inspect"],input:l.Object(De,{additionalProperties:!1}),result:ye("BrowseListing")}),preview:z({id:"ragents.workspace.browse.preview",description:"Preview a file as text; files that are too large or binary state the reason instead.",rights:["runs.read","runs.inspect"],input:l.Object(De,{additionalProperties:!1}),result:ye("BrowsePreview")})},channels:{browse:Ee({id:"ragents.workspace.browse",description:"Reports every change below the observed root of a run.",rights:["runs.read","runs.inspect"],params:l.Object({runId:De.runId,root:De.root},{additionalProperties:!1}),message:l.Object({changed:l.Literal(!0)},{additionalProperties:!1})})},clients:{list:z({id:"ragents.workspace.clients.list",description:"The caller's signed-in workstations; other users' workstations do not appear even with runs.read.all.",rights:["runs.read"],input:l.Object({},{additionalProperties:!1}),result:l.Array(na)}),contributions:z({id:"ragents.workspace.clients.contributions",description:"The plugins' contributions to the executor that a workstation loads before sign-in and reports back with it. A workstation with a different executor version fails on its version; other fields do not matter.",rights:["runs.write"],input:l.Object({label:Me.label,executor:Ge}),result:Ia}),register:z({id:"ragents.workspace.clients.register",description:"Sign in a workstation or renew its folders; the connection of this request becomes its return path and needs an event stream. A workstation with a different executor version fails on its version before the rest of the shape matters.",rights:["runs.write"],input:l.Union([dt,lt]),result:na}),unregister:z({id:"ragents.workspace.clients.unregister",description:"Sign out one of your own workstations; open tasks fail.",rights:["runs.write"],input:l.Object({id:xa},{additionalProperties:!1}),result:l.Null()})}},be=e=>typeof e=="object"&&e!==null,j=(e,a)=>Object.keys(e).length===a.length&&a.every(o=>Object.hasOwn(e,o)),ft=e=>e==="server"||be(e)&&j(e,["client","label"])&&typeof e.client=="string"&&rt.test(e.client)&&typeof e.label=="string",it=e=>e==="fresh"?!0:!be(e)||typeof e.path!="string"||e.path.length===0?!1:j(e,["path"])||j(e,["path","fresh"])&&e.fresh===!0,Fe=e=>be(e)&&j(e,["machine","folder"])&&ft(e.machine)&&it(e.folder)&&!(e.machine==="server"&&typeof e.folder=="object"&&"fresh"in e.folder),Ve=e=>e==="fresh"||"fresh"in e,nt=e=>{switch(e.kind){case"fresh":return j(e,["kind"])?ot():void 0;case"path":return j(e,["kind","path"])?{machine:"server",folder:{path:e.path}}:void 0;case"client":return j(e,["kind","client","label","path"])?{machine:{client:e.client,label:e.label},folder:{path:e.path}}:void 0;default:return}},Ca=e=>{if(Fe(e))return e;let a=be(e)&&Object.hasOwn(e,"kind")?nt(e):void 0;return Fe(a)?a:void 0},Re="Empty folder per run",ct=(e,a)=>(e.machine==="server"?a.server:a.client)??Re,ha=(e,a)=>{let{machine:o,folder:d}=e,x=ct(e,a),B=d==="fresh"?x:"fresh"in d?`${d.path} (${x})`:d.path;return o==="server"?B:`${o.label}: ${B}`};var ze=t("@ragents/web/ui","Alert");var Te=t("@ragents/web/ui","Button");var Ne=t("@ragents/web/ui","Empty");var Xe=t("@ragents/web/ui","EmptyDescription");var Ke=t("@ragents/web/ui","EmptyHeader");var Ze=t("@ragents/web/ui","EmptyMedia");var _e=t("@ragents/web/ui","EmptyTitle");var je=t("@ragents/web/ui","Input");var Qe=t("@ragents/web/ui","Label");var le=t("@ragents/web/ui","Select");var se=t("@ragents/web/ui","SelectContent");var fe=t("@ragents/web/ui","SelectItem");var ie=t("@ragents/web/ui","SelectTrigger");var ne=t("@ragents/web/ui","SelectValue");var ve=t("@ragents/web/ui","Toggle");var Je=t("react","createContext");var Q=t("react","createElement");var ce=t("react","forwardRef");var $e=t("react","useContext");var te=t("react","useEffect");var Ye=t("react","useId");var qe=t("react","useMemo");var pe=t("react","useRef");var A=t("react","useState");var ga=e=>e?.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();function Sa(e,a,o=[]){if(a==null)throw new Error("[lucide]: iconNode is required when icon name is used");return{name:ga(e),size:24,node:a,...o.length>0?{aliases:o}:{}}}var ka=e=>{let a="",o=!1;for(let d of e){if(d==="-"||d==="_"||d<=" "){o=a.length>0;continue}a.length===0?a+=d.toLowerCase():a+=o?d.toUpperCase():d,o=!1}return a};var wa=e=>{let a=ka(e);return a.charAt(0).toUpperCase()+a.slice(1)};var me=(...e)=>e.filter((a,o,d)=>!!a&&a.trim()!==""&&d.indexOf(a)===o).join(" ").trim();var N={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"};function ea(e){return e!=null}function Pa(e,a={}){let o=a.attributeNames??{},d=c=>o[c]??c,x=e.size??e.width??N.width,B=e.size??e.height??N.height,S=e.aliases?.filter(c=>typeof c=="string"&&c.trim()!=="").map(c=>`lucide-${c}`)??[],H=[...e.name?[`lucide-${e.name}`]:[],...S],p=a.className?.split(" ").filter(Boolean)??[],y=a.includeDefaultClasses===!1?me(...p):me("lucide",...H,...p),M=a.absoluteStrokeWidth?Number(a.strokeWidth??N["stroke-width"])*Number(e.size??e.width??N.width)/Number(a.size??a.width??N.width):a.strokeWidth??N["stroke-width"];return["svg",{...Object.entries(N).reduce((c,[h,i])=>(c[d(h)]=i,c),{}),..."color"in a&&a.color&&{[d("stroke")]:a.color},..."size"in a&&ea(a.size)&&{[d("width")]:a.size,[d("height")]:a.size},..."width"in a&&ea(a.width)&&{[d("width")]:a.width},..."height"in a&&ea(a.height)&&{[d("height")]:a.height},[d("stroke-width")]:M,...y&&{[d("class")]:y},[d("viewBox")]:`0 0 ${x} ${B}`,...a.hasA11yProp===!1?{[d("aria-hidden")]:"true"}:{},..."attributes"in a&&a.attributes},e.node.map(c=>{let[h,i,k]=c,m=a.nonScalingStroke?{[d("vector-effect")]:"non-scaling-stroke",...i}:i;return k?[h,m,k]:[h,m]})]}function Aa(e,a={}){return Pa(e,{...a,attributeNames:{...a.attributeNames,class:"className","stroke-width":"strokeWidth","stroke-linecap":"strokeLinecap","stroke-linejoin":"strokeLinejoin","vector-effect":"vectorEffect"}})}var Ba=e=>{for(let a in e)if(a.startsWith("aria-")||a==="role"||a==="title")return!0;return!1};var pt=Je({});var ya=()=>$e(pt);var Da=ce(({color:e,size:a,width:o,height:d,strokeWidth:x,absoluteStrokeWidth:B,nonScalingStroke:S,className:H="",children:p,iconNode:y=[],icon:M={node:y,aliases:[],size:24},...O},c)=>{let{size:h=24,strokeWidth:i=2,absoluteStrokeWidth:k=!1,nonScalingStroke:m=!1,color:w="currentColor",className:Z=""}=ya()??{},b=!!p||Ba(O),[ae,F,re=[]]=Aa(M,{color:e??w,width:o??a??h,height:d??a??h,strokeWidth:x??i,absoluteStrokeWidth:B??k,nonScalingStroke:S??m,className:me(Z,H),hasA11yProp:b,attributes:O});return Q(ae,{ref:c,...F},[...re.map(([W,E])=>Q(W,E)),...Array.isArray(p)?p:[p]])});function f(e,a=[],o=[]){let d=typeof e=="string"?Sa(e,a,o):e,x=ce(({className:B,...S},H)=>Q(Da,{ref:H,icon:d,className:B,...S}));return d.name&&(x.displayName=wa(d.name)),x}var Fa={name:"braces",size:24,node:[["path",{d:"M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1",key:"ezmyqa"}],["path",{d:"M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1",key:"e1hn23"}]],aliases:["curly-braces"]};Fa.node;var U=f(Fa);var Ma={name:"chevron-right",size:24,node:[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]};Ma.node;var Le=f(Ma);var ba={name:"eye-off",size:24,node:[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]};ba.node;var xe=f(ba);var Ra={name:"eye",size:24,node:[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]};Ra.node;var Ie=f(Ra);var Ta={name:"file-archive",size:24,node:[["path",{d:"M13.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v11.5",key:"4pqfef"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M8 12v-1",key:"1ej8lb"}],["path",{d:"M8 18v-2",key:"qcmpov"}],["path",{d:"M8 7V6",key:"1nbb54"}],["circle",{cx:"8",cy:"20",r:"2",key:"ckkr5m"}]]};Ta.node;var J=f(Ta);var va={name:"file-code-corner",size:24,node:[["path",{d:"M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35",key:"1wthlu"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m5 16-3 3 3 3",key:"331omg"}],["path",{d:"m9 22 3-3-3-3",key:"lsp7cz"}]],aliases:["file-code-2"]};va.node;var L=f(va);var qa={name:"file-cog",size:24,node:[["path",{d:"M15 8a1 1 0 0 1-1-1V2a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8z",key:"1ckgky"}],["path",{d:"M20 8v12a2 2 0 0 1-2 2h-4.182",key:"1726p0"}],["path",{d:"m3.305 19.53.923-.382",key:"ao1pio"}],["path",{d:"M4 10.592V4a2 2 0 0 1 2-2h8",key:"1foop0"}],["path",{d:"m4.228 16.852-.924-.383",key:"1fv9zy"}],["path",{d:"m5.852 15.228-.383-.923",key:"1a9hc2"}],["path",{d:"m5.852 20.772-.383.924",key:"1sh9ke"}],["path",{d:"m8.148 15.228.383-.923",key:"4yu6lf"}],["path",{d:"m8.53 21.696-.382-.924",key:"18b0s9"}],["path",{d:"m9.773 16.852.922-.383",key:"ti6xop"}],["path",{d:"m9.773 19.148.922.383",key:"rws47d"}],["circle",{cx:"7",cy:"18",r:"3",key:"lvkj7j"}]],aliases:["file-cog-2"]};qa.node;var C=f(qa);var Oa={name:"file-image",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["circle",{cx:"10",cy:"12",r:"2",key:"737tya"}],["path",{d:"m20 17-1.296-1.296a2.41 2.41 0 0 0-3.408 0L9 22",key:"wt3hpn"}]]};Oa.node;var q=f(Oa);var Ua={name:"file-terminal",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m8 16 2-2-2-2",key:"10vzyd"}],["path",{d:"M12 18h4",key:"1wd2n7"}]]};Ua.node;var $=f(Ua);var Ha={name:"file-text",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]};Ha.node;var Y=f(Ha);var Wa={name:"file",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]]};Wa.node;var Ce=f(Wa);var Ea={name:"folder-open",size:24,node:[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]};Ea.node;var ee=f(Ea);var Ga={name:"folder",size:24,node:[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]};Ga.node;var X=f(Ga);var Va={name:"palette",size:24,node:[["path",{d:"M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z",key:"e79jfc"}],["circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor",key:"1okk4w"}],["circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor",key:"f64h9f"}],["circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor",key:"qy21gx"}],["circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor",key:"fotxhn"}]]};Va.node;var he=f(Va);var za={name:"refresh-cw",size:24,node:[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]};za.node;var ge=f(za);var aa=t("@ragents/web/PluginRegistry","workspaceAccessible");var oe=t("@ragents/web/rpc","rpc");var ta=(e,a,o)=>oe.call(de.browse.list,{runId:e,root:a,path:o}),oa=(e,a,o)=>oe.call(de.browse.preview,{runId:e,root:a,path:o});var Na={blue:"text-info",yellow:"text-warning",green:"text-success",teal:"text-teal",orange:"text-[color-mix(in_srgb,var(--warning)_75%,var(--destructive))]",pink:"text-[color-mix(in_srgb,var(--destructive)_65%,var(--accent))]",violet:"text-primary",red:"text-destructive",muted:"text-muted-foreground"},mt={ts:{Icon:L,tone:"blue"},tsx:{Icon:L,tone:"blue"},mts:{Icon:L,tone:"blue"},cts:{Icon:L,tone:"blue"},js:{Icon:L,tone:"yellow"},jsx:{Icon:L,tone:"yellow"},mjs:{Icon:L,tone:"yellow"},cjs:{Icon:L,tone:"yellow"},cs:{Icon:L,tone:"green"},fs:{Icon:L,tone:"teal"},fsx:{Icon:L,tone:"teal"},py:{Icon:L,tone:"green"},json:{Icon:U,tone:"yellow"},md:{Icon:Y,tone:"violet"},txt:{Icon:Y,tone:"muted"},pdf:{Icon:Y,tone:"red"},html:{Icon:L,tone:"orange"},htm:{Icon:L,tone:"orange"},hbs:{Icon:L,tone:"orange"},css:{Icon:he,tone:"pink"},png:{Icon:q,tone:"violet"},jpg:{Icon:q,tone:"violet"},jpeg:{Icon:q,tone:"violet"},gif:{Icon:q,tone:"violet"},webp:{Icon:q,tone:"violet"},svg:{Icon:q,tone:"violet"},ico:{Icon:q,tone:"violet"},sh:{Icon:$,tone:"green"},zsh:{Icon:$,tone:"green"},bash:{Icon:$,tone:"green"},yml:{Icon:C,tone:"muted"},yaml:{Icon:C,tone:"muted"},toml:{Icon:C,tone:"muted"},ini:{Icon:C,tone:"muted"},csproj:{Icon:C,tone:"blue"},fsproj:{Icon:C,tone:"teal"},sln:{Icon:C,tone:"blue"},slnx:{Icon:C,tone:"blue"},zip:{Icon:J,tone:"orange"},gz:{Icon:J,tone:"orange"},tar:{Icon:J,tone:"orange"},lock:{Icon:C,tone:"muted"}},Lt={"package.json":{Icon:U,tone:"green"},"pnpm-lock.yaml":{Icon:C,tone:"muted"},"tsconfig.json":{Icon:U,tone:"blue"},".gitignore":{Icon:C,tone:"muted"},dockerfile:{Icon:C,tone:"teal"}},Xa=(e,a,o)=>{if(a==="directory")return{Icon:o?ee:X,tone:"muted"};let d=Lt[e.toLowerCase()];if(d)return d;let x=e.includes(".")?e.toLowerCase().split(".").at(-1)??"":"";return mt[x]??{Icon:Ce,tone:"muted"}};var ra=t("@ragents/web/SourceCode","SourceCode");var ua=t("react/jsx-runtime","Fragment");var r=t("react/jsx-runtime","jsx");var n=t("react/jsx-runtime","jsxs");var xt="h-auto w-full justify-start gap-1.5 rounded-none py-[3px] pr-2.5 pl-(--row-indent) text-[0.7rem] font-normal data-selected:bg-primary/12 data-selected:text-primary",It="min-w-0 px-2.5 pt-0 pb-2.5 text-xs leading-[1.45] whitespace-pre-wrap break-words",Ka=e=>({"--row-indent":`${8+e*12}px`}),Ct={workspace:"Working directory",files:"File storage"},ht={workspace:"There is nothing in the run's working directory yet.",files:"There is nothing in the run's file storage yet."},da=e=>e instanceof Error?e.message:String(e),Za=e=>e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`,gt=e=>{let a=new Date(e);return Number.isNaN(a.getTime())?e:a.toLocaleString("en-US")};function _a({active:e,session:a}){let o=a.session.id,d=pe(new Map),x=aa(a.session),B=x?pa:["files"],[S,H]=A("workspace"),p=x?S:"files",y=`${o}|${p}`,[M,O]=A(()=>new Map),[c,h]=A(()=>new Set),[i,k]=A(),[m,w]=A(),[Z,b]=A(),[ae,F]=A(!1),[re,W]=A(0),[E,We]=A(!1),we=pe(c);we.current=c;let u=pe(y);te(()=>{if(u.current===y)return;u.current=y;let s=d.current.get(y);O(new Map),h(s?.expanded??new Set),k(s?.selected),w(void 0),b(void 0)},[y]),te(()=>{d.current.set(y,{expanded:c,selected:i})},[c,p,o,i,y]),te(()=>{if(!e||i===void 0||m!==void 0)return;let s=!0;return oa(o,p,i).then(I=>s&&w(I)).catch(()=>s&&k(void 0)),()=>{s=!1}},[e,m,p,o,i]),te(()=>{if(!e)return;let s=!0,I,P=!1,ue=async V=>{if(!P){P=!0,V&&F(!0);try{let _=["",...we.current],Pe=await Promise.all(_.map(async D=>({directory:D,listing:await ta(o,p,D).catch(Be=>D===""?Promise.reject(Be):null)})));if(!s)return;let Ae=Pe.filter(D=>D.listing===null).map(D=>D.directory);O(new Map(Pe.filter(D=>D.listing!==null).map(D=>[D.directory,D.listing]))),Ae.length>0&&h(D=>new Set([...D].filter(Be=>!Ae.some(ia=>Be===ia||Be.startsWith(`${ia}/`))))),b(void 0)}catch(_){s&&b(da(_))}finally{P=!1,s&&(V&&F(!1),I!==void 0&&window.clearTimeout(I),I=window.setTimeout(()=>{ue(!1)},3e4))}}},g=oe.subscribe(de.channels.browse,{runId:o,root:p},()=>{ue(!1)});return ue(!0),()=>{s=!1,g(),I!==void 0&&window.clearTimeout(I)}},[e,re,p,o]);let T=s=>{h(I=>{let P=new Set(I);return P.has(s)?P.delete(s):P.add(s),P}),!M.has(s)&&(F(!0),ta(o,p,s).then(I=>{O(P=>new Map(P).set(s,I)),b(void 0)}).catch(I=>b(da(I))).finally(()=>F(!1)))},G=s=>{k(s),w(void 0),F(!0),oa(o,p,s).then(I=>{w(I),b(void 0)}).catch(I=>b(da(I))).finally(()=>F(!1))},v=(s,I)=>{let P=M.get(s);if(!P)return null;let ue=E?P.entries:P.entries.filter(g=>!g.name.startsWith("."));return n(ua,{children:[ue.map(g=>{let V=s?`${s}/${g.name}`:g.name,_=c.has(V),{Icon:Pe,tone:Ae}=Xa(g.name,g.kind,_);return n("div",{children:[n(Te,{className:xt,"data-selected":i===V,onClick:()=>g.kind==="directory"?T(V):G(V),style:Ka(I),title:`${g.name} - ${Za(g.size)} - ${gt(g.modifiedAt)}`,variant:"ghost",children:[r("span",{className:`inline-flex w-3 flex-none items-center justify-center text-muted-foreground${_?" [&>svg]:rotate-90":""}`,children:g.kind==="directory"?r(Le,{size:11,strokeWidth:2}):null}),r(Pe,{"aria-hidden":!0,className:`flex-none ${Na[Ae]}`,size:14,strokeWidth:1.7}),r("span",{className:"min-w-0 flex-1 truncate text-left font-mono",children:g.name}),g.kind==="file"&&r("span",{className:"flex-none text-[0.64rem] text-muted-foreground tabular-nums",children:Za(g.size)})]}),g.kind==="directory"&&_&&v(V,I+1)]},V)}),P.truncated&&r("div",{className:"py-1 pr-2.5 pl-(--row-indent) text-[0.64rem] text-muted-foreground",style:Ka(I),children:"Further entries are not listed."})]})},R=M.get("");return n("div",{className:"flex h-full min-h-0 flex-col",children:[n("header",{className:"flex items-center gap-2 px-2.5 py-2",children:[r("div",{className:"flex min-w-0 flex-1 gap-1",children:B.map(s=>r(ve,{onPressedChange:()=>H(s),pressed:s===p,size:"sm",variant:"outline",children:Ct[s]},s))}),n("div",{className:"flex items-center gap-1",children:[r(ve,{"aria-label":E?"Hide hidden entries":"Show hidden entries",onPressedChange:We,pressed:E,size:"sm",title:E?"Hide hidden entries":"Show hidden entries",children:E?r(Ie,{size:15,strokeWidth:1.8}):r(xe,{size:15,strokeWidth:1.8})}),r(Te,{"aria-label":"Refresh files",onClick:()=>W(s=>s+1),size:"icon",title:"Refresh",variant:"ghost",children:r(ge,{className:ae?"animate-spin":void 0,size:15,strokeWidth:1.8})})]})]}),Z&&r(ze,{className:"shrink-0 rounded-none border-x-0 border-t-0 border-b-border-soft bg-destructive/8 px-2.5 py-2 text-[0.68rem]",variant:"destructive",children:Z}),R&&r("div",{className:"truncate px-2.5 pt-0.5 pb-1.5 font-mono text-[0.66rem] text-muted-foreground",title:R.location,children:R.location}),R&&R.entries.length===0&&r(Ne,{className:"min-h-30 flex-none gap-2 p-7",children:n(Ke,{children:[r(Ze,{children:r(ee,{size:15,strokeWidth:1.7})}),r(_e,{children:"No files"}),r(Xe,{children:ht[p]})]})}),r("div",{className:"min-h-0 flex-1 overflow-auto pb-2",children:v("",0)}),i&&n("div",{className:"flex min-h-0 flex-1 flex-col border-t border-border-soft",children:[r("div",{className:"truncate px-2.5 py-1.5 font-mono text-[0.66rem] text-muted-foreground",title:i,children:i}),m&&!m.previewable&&r("div",{className:"px-2.5 pb-2 text-[0.68rem] text-muted-foreground",children:m.reason}),m&&m.previewable&&r("div",{className:"min-h-0 flex-1 overflow-auto",children:r(ra,{className:It,content:m.content,path:i})})]})]})}var Oe=t("@ragents/web/Toolbar","ToolbarCopy");var Se=t("@ragents/web/Toolbar","ToolbarItem");var Ue=t("@ragents/web/Toolbar","ToolbarLabel");var ke=t("@ragents/web/Toolbar","ToolbarText");var K="server",ja="text-[0.75rem] text-destructive",He="text-[0.66rem] font-medium text-muted-foreground",Ja=e=>e instanceof Error?e.message:String(e),St=e=>{let a=e;return typeof a=="object"&&a!==null&&typeof a.id=="string"&&typeof a.label=="string"&&typeof a.hostname=="string"&&typeof a.platform=="string"&&Array.isArray(a.folders)&&a.folders.every(o=>typeof o=="string")&&typeof a.runsDirectory=="string"&&typeof a.ripgrep=="boolean"},$a=e=>{let a=e;return typeof a=="object"&&a!==null&&typeof a.server=="string"&&(a.client===null||typeof a.client=="string")},kt=(e,a)=>{let o=e;if(typeof o!="object"||o===null||o.kind!=="workspace-binding"||!Array.isArray(o.clients)||!o.clients.every(St)||!$a(o.fresh)||typeof o.serverFolders!="boolean")throw new Error(`The start option ${a} does not provide a workspace presentation`);return{kind:"workspace-binding",clients:o.clients,fresh:o.fresh,serverFolders:o.serverFolders}},Ya=(e,a)=>{let o=Ca(e);if(!o)throw new Error(`The value of the start option ${a} is not a workspace binding`);return o},la=e=>e.machine===K?K:e.machine.client,sa=e=>Ve(e.folder)?"fresh":"existing",fa=e=>{let{folder:a}=e;return Ve(a)?"":a.path},wt=(e,a)=>la(e)===la(a)&&sa(e)===sa(a)&&fa(e)===fa(a),Pt=(e,a,o)=>{let{machine:d}=a,x=o==="all"?e.clients:[],B=d===K||x.some(S=>S.id===d.client)?[]:[{value:d.client,label:e.clients.some(S=>S.id===d.client)?`Workstation ${d.label}`:`Workstation ${d.label} (not connected)`}];return[{value:K,label:"Server"},...x.map(S=>({value:S.id,label:`Workstation ${S.label}`})),...B]},Qa=(e,a)=>{let o={value:"existing",label:"Existing folder"};return a===K?[{value:"fresh",label:e.fresh.server},...e.serverFolders?[o]:[]]:[...e.fresh.client===null?[]:[{value:"fresh",label:e.fresh.client}],o]},At=e=>{let a=e;if(!(typeof a!="object"||a===null||typeof a.summary!="string"||!Fe(a.binding)))return{binding:a.binding,summary:a.summary}},Bt=e=>{try{return{presentation:kt(e.presentation,e.id),binding:Ya(e.value,e.id)}}catch(a){return{message:Ja(a)}}};function et({disabled:e,error:a,machines:o,option:d,setValue:x}){let[B,S]=A(void 0),[H,p]=A(void 0),[y,M]=A(void 0),O=Ye(),c=qe(()=>Bt(d),[d]);if("message"in c)return r("p",{className:ja,role:"alert",children:c.message});let{presentation:h,binding:i}=c,k=B??la(i),m=H??sa(i),w=y??fa(i),Z=Pt(h,i,o),b=Qa(h,k),ae=h.clients.find(u=>u.id===k),F=m==="existing"?ae?.folders.map(u=>({value:u,label:u}))??[]:[],re=(u,T,G)=>{let v=h.clients.find(s=>s.id===u)?.label??(i.machine!==K&&i.machine.client===u?i.machine.label:u),R=u===K?K:{client:u,label:v};return T==="fresh"?{machine:R,folder:"fresh"}:G===""?void 0:{machine:R,folder:{path:G}}},W=(u,T,G)=>{let v=re(u,T,G);v&&!wt(v,i)&&x(v)},E=u=>{let T=Qa(h,u).map(R=>R.value),G=T.includes(m)?m:T[0],v=w===""?h.clients.find(R=>R.id===u)?.folders[0]??"":w;S(u),p(G),M(v),W(u,G,v)},We=u=>{let T=w===""?ae?.folders[0]??"":w;p(u),M(T),W(k,u,T)},we=u=>{M(u),W(k,m,u)};return n("div",{className:"flex w-full flex-col items-start gap-2",children:[r("span",{className:"text-[0.72rem] font-semibold text-muted-foreground",children:"Workspace"}),n("div",{className:"flex w-full flex-wrap items-end gap-2",children:[n("div",{className:"flex flex-col gap-1",children:[r("span",{className:He,children:"Machine"}),n(le,{disabled:e,items:Z,onValueChange:u=>{u!==null&&E(u)},value:k,children:[r(ie,{"aria-label":"Workspace machine",className:"min-w-0 max-w-full",size:"sm",children:r(ne,{})}),r(se,{children:Z.map(u=>r(fe,{value:u.value,children:u.label},u.value))})]})]}),n("div",{className:"flex flex-col gap-1",children:[r("span",{className:He,children:"Folder"}),n(le,{disabled:e,items:b,onValueChange:u=>{u!==null&&We(u)},value:m,children:[r(ie,{"aria-label":"Workspace folder",className:"min-w-0 max-w-full",size:"sm",children:r(ne,{})}),r(se,{children:b.map(u=>r(fe,{value:u.value,children:u.label},u.value))})]})]}),m==="existing"&&n("div",{className:"flex min-w-[15rem] flex-1 flex-col gap-1",children:[r(Qe,{className:He,htmlFor:O,children:"Absolute path"}),r(je,{className:"h-7 text-sm",disabled:e,id:O,onBlur:()=>W(k,m,w),onChange:u=>M(u.target.value),onKeyDown:u=>{u.key==="Enter"&&W(k,m,w)},placeholder:"/Users/name/project",value:w})]}),F.length>0&&n("div",{className:"flex flex-col gap-1",children:[r("span",{className:He,children:"Offered folder"}),n(le,{disabled:e,items:F,onValueChange:u=>{u!==null&&we(u)},value:F.some(u=>u.value===w)?w:null,children:[r(ie,{"aria-label":"Offered folder",className:"min-w-0 max-w-full",size:"sm",children:r(ne,{placeholder:"Apply"})}),r(se,{children:F.map(u=>r(fe,{value:u.value,children:u.label},u.value))})]})]})]}),a&&r("p",{className:ja,role:"alert",children:a})]})}var yt=e=>{let a=e;return typeof a=="object"&&a!==null&&$a(a.fresh)?a.fresh:{server:Re,client:Re}};function at({option:e}){if(!e.locked)return null;let a;try{a=Ya(e.value,e.id)}catch(d){return r(Se,{title:Ja(d),children:r(ke,{children:"Workspace unreadable"})})}let o=ha(a,yt(e.presentation));return r(Se,{title:`Workspace: ${o}`,children:n(Oe,{children:[r(Ue,{children:"Workspace"}),r(ke,{children:o})]})})}function tt({placement:e,session:a}){let o=At(a.metadata?.[La]);if(!o)return null;if(e==="list"){let{machine:d,folder:x}=o.binding;return d==="server"&&x==="fresh"?null:n("span",{className:"flex max-w-full items-center gap-1.5 overflow-hidden pl-px text-xs text-muted-foreground",title:`Workspace: ${o.summary}`,children:[r(X,{"aria-hidden":!0,className:"size-3 flex-none"}),r("span",{className:"truncate",children:o.summary})]})}return n(Se,{title:`Workspace: ${o.summary}`,children:[r(X,{"aria-hidden":!0,className:"size-3.5"}),n(Oe,{children:[r(Ue,{children:"Workspace"}),r(ke,{children:o.summary})]})]})}var Dt="ragents.workspace.files";function Ft(){return n("svg",{"aria-hidden":!0,fill:"none",height:"15",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.7",viewBox:"0 0 24 24",width:"15",children:[r("path",{d:"M3 6.5A1.5 1.5 0 0 1 4.5 5h4L10 7h9.5A1.5 1.5 0 0 1 21 8.5v9a1.5 1.5 0 0 1-1.5 1.5h-15A1.5 1.5 0 0 1 3 17.5z"}),r("path",{d:"M3 11h18"})]})}var Nd={id:ca,workspaceTabs:[{readRight:"runs.inspect",id:Dt,label:"Files",order:260,Icon:Ft,Panel:_a}],startOptions:[{id:ma,Control:et,Badge:at}],sessionMetadata:[{id:"ragents.workspace.binding",order:90,Metadata:tt}]};export{Dt as WORKSPACE_FILES_TAB_ID,Nd as webPlugin};
|
|
2
2
|
/*! Bundled license information:
|
|
3
3
|
|
|
4
4
|
lucide-react/dist/esm/shared/src/utils/toKebabCase.mjs:
|