@schlenkr/ragents 0.1.5 → 0.1.6
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/README.md +18 -11
- package/apps/server/package.json +8 -6
- package/apps/server/src/access-projection.ts +3 -3
- package/apps/server/src/access-service.ts +19 -8
- package/apps/server/src/access-session.ts +6 -2
- package/apps/server/src/api/contracts.ts +19 -18
- package/apps/server/src/api/core-methods.ts +45 -26
- package/apps/server/src/api/delivery.ts +4 -4
- package/apps/server/src/api/reference.ts +1 -1
- package/apps/server/src/api/rights.ts +86 -7
- package/apps/server/src/chat-context.ts +1 -1
- package/apps/server/src/chat-handler.ts +14 -7
- package/apps/server/src/config-file.ts +25 -6
- package/apps/server/src/config.ts +4 -4
- package/apps/server/src/data-directory.ts +1 -1
- package/apps/server/src/folder-install.ts +115 -0
- package/apps/server/src/host-api.json +1256 -0
- package/apps/server/src/host-api.ts +190 -0
- package/apps/server/src/host-resolution-hooks.mjs +50 -1
- package/apps/server/src/host-resolution.ts +26 -1
- package/apps/server/src/host-version.ts +41 -0
- package/apps/server/src/host-web.ts +59 -0
- package/apps/server/src/layout.ts +1 -1
- package/apps/server/src/main.ts +3 -2
- package/apps/server/src/missing-environment.ts +47 -0
- package/apps/server/src/parent-watch.ts +37 -0
- package/apps/server/src/plugin-build/build.ts +650 -0
- package/apps/server/src/plugin-build/host-api-names.ts +185 -0
- package/apps/server/src/plugin-build/plugin-description.ts +118 -0
- package/apps/server/src/plugin-build/typecheck.ts +66 -0
- package/{plugins/ragents.actor-programs/server → apps/server/src/plugin-support/actor-programs}/app-project.ts +16 -15
- package/{plugins/ragents.actor-programs/server → apps/server/src/plugin-support/actor-programs}/client-compiler.ts +4 -4
- package/{plugins/ragents.actor-programs/server → apps/server/src/plugin-support/actor-programs}/client-contracts.ts +4 -4
- package/apps/server/src/plugin-support/actor-programs/client-runtime.ts +27 -0
- package/{plugins/ragents.actor-programs → apps/server/src/plugin-support/actor-programs}/contract.ts +3 -3
- package/apps/server/src/plugin-support/actor-programs/service.ts +1 -1
- package/{plugins/ragents.actor-programs/server → apps/server/src/plugin-support/actor-programs}/tailwind.ts +2 -3
- package/{plugins/ragents.actor-programs → apps/server/src/plugin-support/actor-programs}/workflow/index.ts +48 -48
- package/apps/server/src/plugin-support/agent-tool.ts +10 -5
- package/apps/server/src/plugin-support/http.ts +1 -1
- package/apps/server/src/plugin-support/language-server/contract.ts +37 -6
- package/apps/server/src/plugin-support/language-server/plugin.ts +18 -8
- package/apps/server/src/plugin-support/language-server/snapshot-method.ts +32 -7
- package/apps/server/src/plugin-support/language-server/tools.ts +59 -15
- package/apps/server/src/plugin-support/model-aliases.ts +77 -0
- package/apps/server/src/plugin-support/model-choice.ts +17 -7
- package/apps/server/src/plugin-support/model-completion.ts +58 -0
- package/apps/server/src/plugin-support/model-upstreams.ts +2 -2
- package/apps/server/src/plugin-support/native-typescript-executor.ts +10 -7
- package/apps/server/src/plugin-support/plugin-config.ts +1 -1
- package/apps/server/src/plugin-support/plugin-folder.ts +4 -1
- package/apps/server/src/plugin-support/plugin-module.ts +1 -1
- package/apps/server/src/plugin-support/plugins-root.ts +6 -10
- package/apps/server/src/plugin-support/process-sandbox.ts +312 -0
- package/apps/server/src/plugin-support/product-model-settings-contract.ts +14 -5
- package/apps/server/src/plugin-support/product-model-settings.ts +10 -9
- package/{plugins/ragents.product/server/relay.ts → apps/server/src/plugin-support/product-relay.ts} +2 -2
- package/apps/server/src/plugin-support/product-start-options.ts +8 -3
- package/apps/server/src/plugin-support/prompt.ts +1 -1
- package/apps/server/src/plugin-support/provision.ts +6 -0
- package/apps/server/src/plugin-support/run-scripts.ts +16 -2
- package/apps/server/src/plugin-support/skills.ts +32 -16
- package/apps/server/src/plugin-support/start-entries-contract.ts +12 -3
- package/apps/server/src/plugin-support/start-options-contract.ts +5 -1
- package/apps/server/src/plugin-support/thinking-level.ts +6 -1
- package/apps/server/src/plugin-support/tool-availability.ts +1 -7
- package/apps/server/src/plugin-support/workspace-ownership.ts +12 -6
- package/apps/server/src/plugin-support/workspace-sandbox-host.ts +184 -37
- package/apps/server/src/profile/bundle-manifest.ts +183 -0
- package/apps/server/src/profile/compose.ts +19 -10
- package/apps/server/src/profile/plugin-discovery.ts +98 -46
- package/apps/server/src/profile/provisioning.ts +30 -26
- package/apps/server/src/profile-target.ts +3 -0
- package/apps/server/src/provider.ts +182 -99
- package/apps/server/src/ragents/actor-chat-history.ts +23 -22
- package/apps/server/src/ragents/chat-projection.ts +25 -14
- package/apps/server/src/ragents/chat-text-positions.ts +4 -4
- package/apps/server/src/ragents/coordinator.ts +27 -1
- package/apps/server/src/ragents/document-store.ts +1 -1
- package/apps/server/src/ragents/engine.ts +69 -36
- package/apps/server/src/ragents/global-chat.ts +26 -13
- package/apps/server/src/ragents/host-services.ts +15 -6
- package/apps/server/src/ragents/journal-chat-events.ts +31 -15
- package/apps/server/src/ragents/product-runtime.ts +1 -1
- package/apps/server/src/ragents/run-owner.ts +17 -0
- package/apps/server/src/ragents/runtime-bridge.ts +1 -1
- package/apps/server/src/ragents/session.ts +181 -82
- package/apps/server/src/ragents/start-option-state.ts +1 -1
- package/apps/server/src/ragents/typescript-tools.ts +35 -27
- package/apps/server/src/ragents/workspace-runtime.ts +74 -8
- package/apps/server/src/rpc/dispatcher.ts +17 -8
- package/apps/server/src/rpc/http-transport.ts +1 -3
- package/apps/server/src/rpc/stdio-transport.ts +1 -1
- package/apps/server/src/run-preparation-contract.ts +1 -1
- package/apps/server/src/run-preparation-input.ts +1 -1
- package/apps/server/src/run-preparation.ts +13 -20
- package/apps/server/src/run-transfer.ts +2 -2
- package/apps/server/src/server.ts +112 -33
- package/apps/server/src/settings.ts +7 -8
- package/apps/server/src/title-compactor.ts +5 -8
- package/apps/server/src/title-settings.ts +3 -3
- package/apps/server/src/web-bundles.ts +79 -0
- package/apps/server/src/web-stylesheet.ts +85 -0
- package/apps/server/tsconfig.json +4 -4
- package/apps/server/tsconfig.plugin.json +58 -0
- package/apps/web/dist/assets/highlighted-body-KPVGNVTW-B9qYBARS.js +1 -0
- package/apps/web/dist/assets/main-BCjvD2Hh.js +6 -0
- package/apps/web/dist/assets/mermaid-HWGCJPDP-BPn4aV2r.css +1 -0
- package/apps/web/dist/assets/mermaid-HWGCJPDP-CvYYFK_n.js +478 -0
- package/apps/web/dist/assets/runPanel-CG7kRMJh.js +21 -0
- package/apps/web/dist/help/guide-access.html +199 -0
- package/apps/web/dist/help/guide-access.md +84 -0
- package/apps/web/dist/help/guide-clients.html +421 -0
- package/apps/web/dist/help/guide-clients.md +336 -0
- package/apps/web/dist/help/guide-distributed.html +320 -0
- package/apps/web/dist/help/guide-distributed.md +225 -0
- package/apps/web/dist/help/guide-functions.html +231 -0
- package/apps/web/dist/help/guide-functions.md +127 -0
- package/apps/web/dist/help/guide-getting-started.html +230 -0
- package/apps/web/dist/help/guide-getting-started.md +123 -0
- package/apps/web/dist/help/guide-ideas.html +183 -0
- package/apps/web/dist/help/guide-ideas.md +71 -0
- package/apps/web/dist/help/guide-plugins.html +450 -0
- package/apps/web/dist/help/guide-plugins.md +341 -0
- package/apps/web/dist/help/guide-programs.html +359 -0
- package/apps/web/dist/help/guide-programs.md +271 -0
- package/apps/web/dist/help/guide-runtime.html +338 -0
- package/apps/web/dist/help/guide-runtime.md +225 -0
- package/apps/web/dist/help/guide.html +133 -0
- package/apps/web/dist/help/guide.md +13 -0
- package/apps/web/dist/help/homepage-bullets.js +12 -0
- package/apps/web/dist/help/homepage-distributed.js +261 -0
- package/apps/web/dist/help/homepage-plugins.js +30 -0
- package/apps/web/dist/help/homepage-scenes.js +368 -0
- package/apps/web/dist/help/homepage-stickers.js +69 -0
- package/apps/web/dist/help/homepage-story-nav.js +11 -0
- package/apps/web/dist/help/homepage-subnav.js +61 -0
- package/apps/web/dist/help/homepage.css +833 -0
- package/apps/web/dist/help/index.html +1167 -0
- package/apps/web/dist/help/mini-app.css +7056 -0
- package/apps/web/dist/help/mini-app.html +15 -0
- package/apps/web/dist/help/mini-app.js +131 -0
- package/apps/web/dist/help/screenshots/release-checklist-vscode.png +0 -0
- package/apps/web/dist/help/screenshots/release-checklist-web.png +0 -0
- package/apps/web/dist/help/scroll-vendor.js +73 -0
- package/apps/web/dist/help/site.css +63 -0
- package/apps/web/dist/help/site.js +103 -0
- package/apps/web/dist/host-web.json +143 -0
- package/apps/web/dist/index.html +15 -0
- package/apps/web/dist/run-panel.html +15 -0
- package/apps/web/package.json +2 -2
- package/apps/web/src/App.tsx +8 -6
- package/apps/web/src/Overview.tsx +5 -5
- package/apps/web/src/PluginActivation.ts +25 -5
- package/apps/web/src/PluginChat.tsx +163 -129
- package/apps/web/src/PluginFailureNotice.tsx +15 -0
- package/apps/web/src/PluginRegistry.tsx +106 -68
- package/apps/web/src/RunPreparationChat.tsx +40 -28
- package/apps/web/src/RunStore.ts +2 -2
- package/apps/web/src/SettingsModal.tsx +37 -37
- package/apps/web/src/StartOptions.tsx +81 -26
- package/apps/web/src/StartSelection.tsx +111 -0
- package/apps/web/src/StartTiles.tsx +73 -0
- package/apps/web/src/{CanvasShortcuts.tsx → SurfaceShortcuts.tsx} +2 -2
- package/apps/web/src/ThemeSettings.tsx +1 -1
- package/apps/web/src/WorkspacePanel.tsx +4 -4
- package/apps/web/src/access-session.ts +4 -1
- package/{plugins/ragents.orchestration/web → apps/web/src}/actor-conversation.ts +3 -3
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/DataTable.tsx +9 -9
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/FilePicker.tsx +4 -4
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/FlowDiagram.tsx +16 -14
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/FlowDiagramRenderer.tsx +3 -3
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/Form.tsx +12 -12
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/Layout.tsx +1 -1
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/MessageList.tsx +5 -5
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/Viewers.tsx +8 -7
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/WorkflowDiagram.tsx +1 -1
- package/apps/web/src/actor-programs/client-ui/chat-contracts.d.ts +64 -0
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/contracts.d.ts +2 -2
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/file-selection.ts +5 -5
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/index.tsx +22 -16
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/layout-contracts.d.ts +1 -1
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/message-list-contracts.d.ts +2 -2
- package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/workflow-diagram-contracts.d.ts +1 -1
- package/apps/web/src/api.ts +43 -22
- package/apps/web/src/chat/QuasselHost.tsx +12 -0
- package/apps/web/src/chat/StoppedActorNotice.tsx +39 -0
- package/apps/web/src/chat/chat-target.ts +14 -5
- package/apps/web/src/chat/requests.ts +13 -5
- package/apps/web/src/chat/useAttachmentCapabilities.ts +2 -2
- package/apps/web/src/chat/useChat.ts +8 -7
- package/apps/web/src/chat/user-location.ts +1 -1
- package/apps/web/src/chat-view-settings.tsx +49 -0
- package/apps/web/src/host-modules.ts +90 -0
- package/apps/web/src/language-server/api.ts +24 -0
- package/{plugins/ragents.lsp-roslyn/web → apps/web/src/language-server}/language-server-plugin.tsx +133 -6
- package/apps/web/src/main.tsx +4 -2
- package/apps/web/src/offered-machines.ts +11 -0
- package/apps/web/src/panel/ConnectionsPage.tsx +117 -0
- package/apps/web/src/panel/LoginForm.tsx +9 -9
- package/apps/web/src/panel/PanelDialogs.tsx +44 -27
- package/apps/web/src/panel/PanelHeader.tsx +11 -0
- package/apps/web/src/panel/PanelPage.tsx +8 -5
- package/apps/web/src/panel/RunLine.tsx +48 -0
- package/apps/web/src/panel/RunsPage.tsx +84 -0
- package/apps/web/src/panel/StartPage.tsx +163 -0
- package/apps/web/src/panel/connection-state.ts +40 -0
- package/apps/web/src/panel/contract.ts +64 -21
- package/apps/web/src/panel/page-props.ts +6 -0
- package/apps/web/src/plugin-bootstrap.ts +60 -31
- package/{plugins/ragents.product/web → apps/web/src/product}/ModelControl.tsx +3 -3
- package/{plugins/ragents.product/web → apps/web/src/product}/ProductModelSettings.tsx +7 -7
- package/{plugins/ragents.product/web → apps/web/src/product}/SystemPromptControl.tsx +3 -3
- package/{plugins/ragents.product/web → apps/web/src/product}/model-settings.ts +3 -3
- package/{plugins/ragents.product/web → apps/web/src/product}/start-options.tsx +2 -2
- package/apps/web/src/rpc/client.ts +28 -6
- package/apps/web/src/run-panel/RunPanelApp.tsx +334 -0
- package/apps/web/src/{column/ColumnRunHeader.tsx → run-panel/RunPanelHeader.tsx} +2 -2
- package/apps/web/src/{column/ColumnMenu.tsx → run-panel/RunPanelMenu.tsx} +4 -4
- package/apps/web/src/run-panel/RunPanelRail.tsx +38 -0
- package/apps/web/src/run-panel/RunPanelWorkspace.tsx +55 -0
- package/apps/web/src/{column → run-panel}/clipboard.ts +21 -10
- package/apps/web/src/run-panel/host-contract.ts +123 -0
- package/apps/web/src/{column → run-panel}/host.ts +31 -23
- package/apps/web/src/run-panel/input-bridge.ts +75 -0
- package/apps/web/src/run-panel/keyboard.ts +53 -0
- package/apps/web/src/run-panel/run-panel-location.ts +35 -0
- package/apps/web/src/{column → run-panel}/use-session-list.ts +3 -3
- package/apps/web/src/run-panel/workspace-state.ts +43 -0
- package/apps/web/src/{column.tsx → run-panel.tsx} +20 -13
- package/apps/web/src/run-preparation.ts +1 -1
- package/{plugins/ragents.orchestration/web → apps/web/src}/run-view.ts +25 -7
- package/apps/web/src/settings-contributions.ts +16 -18
- package/apps/web/src/title-model-settings.ts +1 -1
- package/apps/web/src/toolLine.ts +1 -1
- package/apps/web/src/ui/ListDetail.tsx +1 -1
- package/apps/web/src/ui/dialog.tsx +5 -5
- package/apps/web/src/ui/frame.css +1 -0
- package/apps/web/src/ui/index.ts +5 -0
- package/apps/web/src/ui/popover.tsx +2 -2
- package/apps/web/src/ui/quassel.css +41 -0
- package/apps/web/src/ui/relative-time.ts +36 -0
- package/apps/web/src/ui/startup-notice.tsx +22 -0
- package/apps/web/src/ui/state-icon.tsx +60 -0
- package/apps/web/src/ui/state-vocabulary.ts +31 -0
- package/apps/web/src/ui/stop-button.tsx +22 -0
- package/apps/web/src/ui/tailwind.css +2 -3
- package/apps/web/src/ui/theme.css +19 -19
- package/apps/web/tsconfig.json +4 -5
- package/apps/web/tsconfig.plugin.json +44 -0
- package/bundles/ragents.activity/ragents-bundle.json +38 -0
- package/bundles/ragents.activity/server/index.js +14 -0
- package/bundles/ragents.activity/server/index.js.map +7 -0
- package/bundles/ragents.activity/web/classes.json +1 -0
- package/bundles/ragents.activity/web/index.js +2 -0
- package/bundles/ragents.activity/web/index.js.map +7 -0
- package/bundles/ragents.actor-programs/prompt.hbs +80 -0
- package/bundles/ragents.actor-programs/ragents-bundle.json +214 -0
- package/bundles/ragents.actor-programs/server/index.js +2071 -0
- package/bundles/ragents.actor-programs/server/index.js.map +7 -0
- package/bundles/ragents.actor-programs/summary.hbs +17 -0
- package/bundles/ragents.actor-programs/web/classes.json +1 -0
- package/bundles/ragents.actor-programs/web/index.js +27 -0
- package/bundles/ragents.actor-programs/web/index.js.map +7 -0
- package/bundles/ragents.ask/ask.hbs +4 -0
- package/bundles/ragents.ask/ragents-bundle.json +97 -0
- package/bundles/ragents.ask/server/chunks/chunk-PDJO75SQ.js +13 -0
- package/bundles/ragents.ask/server/chunks/chunk-PDJO75SQ.js.map +7 -0
- package/bundles/ragents.ask/server/exports/server/contract.js +11 -0
- package/bundles/ragents.ask/server/exports/server/contract.js.map +7 -0
- package/bundles/ragents.ask/server/index.js +279 -0
- package/bundles/ragents.ask/server/index.js.map +7 -0
- package/bundles/ragents.ask/web/chunks/chunk-4VXWWEG7.js +2 -0
- package/bundles/ragents.ask/web/chunks/chunk-4VXWWEG7.js.map +7 -0
- package/bundles/ragents.ask/web/chunks/chunk-HGFDGTNC.js +2 -0
- package/bundles/ragents.ask/web/chunks/chunk-HGFDGTNC.js.map +7 -0
- package/bundles/ragents.ask/web/chunks/chunk-V7W3QDVS.js +25 -0
- package/bundles/ragents.ask/web/chunks/chunk-V7W3QDVS.js.map +7 -0
- package/bundles/ragents.ask/web/chunks/chunk-VUBJDIKQ.js +2 -0
- package/bundles/ragents.ask/web/chunks/chunk-VUBJDIKQ.js.map +7 -0
- package/bundles/ragents.ask/web/classes.json +1 -0
- package/bundles/ragents.ask/web/exports/ask-payload.js +2 -0
- package/bundles/ragents.ask/web/exports/ask-payload.js.map +7 -0
- package/bundles/ragents.ask/web/exports/web/QuestionCard.js +2 -0
- package/bundles/ragents.ask/web/exports/web/QuestionCard.js.map +7 -0
- package/bundles/ragents.ask/web/exports/web/api.js +2 -0
- package/bundles/ragents.ask/web/exports/web/api.js.map +7 -0
- package/bundles/ragents.ask/web/index.js +2 -0
- package/bundles/ragents.ask/web/index.js.map +7 -0
- package/bundles/ragents.browser/ragents-bundle.json +53 -0
- package/bundles/ragents.browser/server/chunks/chunk-2GKLLCBE.js +11 -0
- package/bundles/ragents.browser/server/chunks/chunk-2GKLLCBE.js.map +7 -0
- package/bundles/ragents.browser/server/exports/server/contract.js +9 -0
- package/bundles/ragents.browser/server/exports/server/contract.js.map +7 -0
- package/bundles/ragents.browser/server/index.js +479 -0
- package/bundles/ragents.browser/server/index.js.map +7 -0
- package/bundles/ragents.browser/skills/browser-testing/SKILL.md +38 -0
- package/bundles/ragents.documents/prompt.hbs +18 -0
- package/bundles/ragents.documents/ragents-bundle.json +120 -0
- package/bundles/ragents.documents/server/chunks/chunk-QIECRZ7C.js +37 -0
- package/bundles/ragents.documents/server/chunks/chunk-QIECRZ7C.js.map +7 -0
- package/bundles/ragents.documents/server/exports/contract.js +11 -0
- package/bundles/ragents.documents/server/exports/contract.js.map +7 -0
- package/bundles/ragents.documents/server/index.js +290 -0
- package/bundles/ragents.documents/server/index.js.map +7 -0
- package/bundles/ragents.documents/web/classes.json +1 -0
- package/bundles/ragents.documents/web/index.js +26 -0
- package/bundles/ragents.documents/web/index.js.map +7 -0
- package/bundles/ragents.lsp-fsharp/ragents-bundle.json +49 -0
- package/bundles/ragents.lsp-fsharp/server/index.js +82 -0
- package/bundles/ragents.lsp-fsharp/server/index.js.map +7 -0
- package/bundles/ragents.lsp-fsharp/web/classes.json +1 -0
- package/bundles/ragents.lsp-fsharp/web/index.js +2 -0
- package/bundles/ragents.lsp-fsharp/web/index.js.map +7 -0
- package/bundles/ragents.lsp-roslyn/ragents-bundle.json +61 -0
- package/bundles/ragents.lsp-roslyn/server/index.js +208 -0
- package/bundles/ragents.lsp-roslyn/server/index.js.map +7 -0
- package/bundles/ragents.lsp-roslyn/web/classes.json +1 -0
- package/bundles/ragents.lsp-roslyn/web/index.js +2 -0
- package/bundles/ragents.lsp-roslyn/web/index.js.map +7 -0
- package/bundles/ragents.lsp-typescript/ragents-bundle.json +36 -0
- package/bundles/ragents.lsp-typescript/server/index.js +13 -0
- package/bundles/ragents.lsp-typescript/server/index.js.map +7 -0
- package/bundles/ragents.lsp-typescript/web/classes.json +1 -0
- package/bundles/ragents.lsp-typescript/web/index.js +2 -0
- package/bundles/ragents.lsp-typescript/web/index.js.map +7 -0
- package/bundles/ragents.model-relay/ragents-bundle.json +33 -0
- package/bundles/ragents.model-relay/server/index.js +230 -0
- package/bundles/ragents.model-relay/server/index.js.map +7 -0
- package/bundles/ragents.orchestration/orchestration.hbs +106 -0
- package/bundles/ragents.orchestration/ragents-bundle.json +194 -0
- package/bundles/ragents.orchestration/server/index.js +277 -0
- package/bundles/ragents.orchestration/server/index.js.map +7 -0
- package/bundles/ragents.orchestration/web/chunks/chunk-ODMMQGX2.js +2 -0
- package/bundles/ragents.orchestration/web/chunks/chunk-ODMMQGX2.js.map +7 -0
- package/bundles/ragents.orchestration/web/chunks/chunk-OQYCNYXN.js +2 -0
- package/bundles/ragents.orchestration/web/chunks/chunk-OQYCNYXN.js.map +7 -0
- package/bundles/ragents.orchestration/web/chunks/chunk-OSKPH6SZ.js +2 -0
- package/bundles/ragents.orchestration/web/chunks/chunk-OSKPH6SZ.js.map +7 -0
- package/bundles/ragents.orchestration/web/chunks/chunk-XGPPQCZR.js +2 -0
- package/bundles/ragents.orchestration/web/chunks/chunk-XGPPQCZR.js.map +7 -0
- package/bundles/ragents.orchestration/web/classes.json +1 -0
- package/bundles/ragents.orchestration/web/exports/web/program-slot.js +2 -0
- package/bundles/ragents.orchestration/web/exports/web/program-slot.js.map +7 -0
- package/bundles/ragents.orchestration/web/exports/web/surface-entities.js +2 -0
- package/bundles/ragents.orchestration/web/exports/web/surface-entities.js.map +7 -0
- package/bundles/ragents.orchestration/web/exports/web/tile-docking.js +2 -0
- package/bundles/ragents.orchestration/web/exports/web/tile-docking.js.map +7 -0
- package/bundles/ragents.orchestration/web/index.js +51 -0
- package/bundles/ragents.orchestration/web/index.js.map +7 -0
- package/bundles/ragents.overseer/ragents-bundle.json +144 -0
- package/bundles/ragents.overseer/server/index.js +652 -0
- package/bundles/ragents.overseer/server/index.js.map +7 -0
- package/bundles/ragents.overseer/web/classes.json +1 -0
- package/bundles/ragents.overseer/web/index.js +25 -0
- package/bundles/ragents.overseer/web/index.js.map +7 -0
- package/bundles/ragents.processes/ragents-bundle.json +93 -0
- package/bundles/ragents.processes/server/index.js +204 -0
- package/bundles/ragents.processes/server/index.js.map +7 -0
- package/bundles/ragents.processes/web/classes.json +1 -0
- package/bundles/ragents.processes/web/index.js +4 -0
- package/bundles/ragents.processes/web/index.js.map +7 -0
- package/bundles/ragents.product/preamble.hbs +9 -0
- package/bundles/ragents.product/ragents-bundle.json +93 -0
- package/bundles/ragents.product/server/index.js +208 -0
- package/bundles/ragents.product/server/index.js.map +7 -0
- package/bundles/ragents.product/web/classes.json +1 -0
- package/bundles/ragents.product/web/index.js +2 -0
- package/bundles/ragents.product/web/index.js.map +7 -0
- package/bundles/ragents.profile-distribution/ragents-bundle.json +64 -0
- package/bundles/ragents.profile-distribution/server/index.js +241 -0
- package/bundles/ragents.profile-distribution/server/index.js.map +7 -0
- package/bundles/ragents.reference/ragents-bundle.json +39 -0
- package/bundles/ragents.reference/run-scripts/balcony-wizard/RUN.md +27 -0
- package/bundles/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/package.json +10 -0
- package/bundles/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/src/client.tsx +80 -0
- package/bundles/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/src/conversation.ts +82 -0
- package/bundles/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/tests/conversation.test.ts +154 -0
- package/bundles/ragents.reference/run-scripts/balcony-wizard/package.json +9 -0
- package/bundles/ragents.reference/run-scripts/balcony-wizard/src/server.ts +32 -0
- package/bundles/ragents.reference/run-scripts/balcony-wizard/tests/program.test.ts +59 -0
- package/bundles/ragents.reference/run-scripts/conversation-circle/RUN.md +13 -0
- package/bundles/ragents.reference/run-scripts/conversation-circle/package.json +9 -0
- package/bundles/ragents.reference/run-scripts/conversation-circle/src/server.ts +81 -0
- package/bundles/ragents.reference/run-scripts/conversation-circle/tests/helpers.ts +26 -0
- package/bundles/ragents.reference/run-scripts/conversation-circle/tests/program.test.ts +34 -0
- package/bundles/ragents.reference/run-scripts/learning-afternoon/RUN.md +24 -0
- package/bundles/ragents.reference/run-scripts/learning-afternoon/package.json +10 -0
- package/bundles/ragents.reference/run-scripts/learning-afternoon/prompts/experiment.md +1 -0
- package/bundles/ragents.reference/run-scripts/learning-afternoon/prompts/helper.md +5 -0
- package/bundles/ragents.reference/run-scripts/learning-afternoon/prompts/quiz.md +1 -0
- package/bundles/ragents.reference/run-scripts/learning-afternoon/src/client.tsx +27 -0
- package/bundles/ragents.reference/run-scripts/learning-afternoon/src/server.ts +137 -0
- package/bundles/ragents.reference/run-scripts/learning-afternoon/src/state.ts +38 -0
- package/bundles/ragents.reference/run-scripts/learning-afternoon/src/view.tsx +42 -0
- package/bundles/ragents.reference/run-scripts/learning-afternoon/src/workflow.ts +38 -0
- package/bundles/ragents.reference/run-scripts/learning-afternoon/tests/program.test.ts +218 -0
- package/bundles/ragents.reference/run-scripts/moderated-round/RUN.md +12 -0
- package/bundles/ragents.reference/run-scripts/moderated-round/package.json +9 -0
- package/bundles/ragents.reference/run-scripts/moderated-round/src/server.ts +60 -0
- package/bundles/ragents.reference/run-scripts/moderated-round/tests/helpers.ts +26 -0
- package/bundles/ragents.reference/run-scripts/moderated-round/tests/program.test.ts +24 -0
- package/bundles/ragents.reference/run-scripts/shared-actor-list/RUN.md +18 -0
- package/bundles/ragents.reference/run-scripts/shared-actor-list/actors/shared-list/package.json +16 -0
- package/bundles/ragents.reference/run-scripts/shared-actor-list/actors/shared-list/src/client.tsx +39 -0
- package/bundles/ragents.reference/run-scripts/shared-actor-list/actors/shared-list/src/contract.ts +15 -0
- package/bundles/ragents.reference/run-scripts/shared-actor-list/actors/shared-list/src/server.ts +14 -0
- package/bundles/ragents.reference/run-scripts/shared-actor-list/actors/shared-list/tests/program.test.ts +13 -0
- package/bundles/ragents.reference/run-scripts/shared-actor-list/package.json +9 -0
- package/bundles/ragents.reference/run-scripts/shared-actor-list/src/server.ts +65 -0
- package/bundles/ragents.reference/run-scripts/shared-actor-list/tests/helpers.ts +26 -0
- package/bundles/ragents.reference/run-scripts/shared-actor-list/tests/program.test.ts +42 -0
- package/bundles/ragents.reference/run-scripts/word-game/RUN.md +25 -0
- package/bundles/ragents.reference/run-scripts/word-game/package.json +11 -0
- package/bundles/ragents.reference/run-scripts/word-game/src/client.tsx +27 -0
- package/bundles/ragents.reference/run-scripts/word-game/src/contract.ts +23 -0
- package/bundles/ragents.reference/run-scripts/word-game/src/server.ts +105 -0
- package/bundles/ragents.reference/run-scripts/word-game/src/state.ts +22 -0
- package/bundles/ragents.reference/run-scripts/word-game/src/view.tsx +54 -0
- package/bundles/ragents.reference/run-scripts/word-game/tests/program.test.ts +252 -0
- package/bundles/ragents.reference/server/index.js +16 -0
- package/bundles/ragents.reference/server/index.js.map +7 -0
- package/bundles/ragents.reference/skills/100-shared-actor-list/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/110-all-card-slots/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/150-editorial-workbench/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/160-learning-companion/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/170-photo-collection/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/180-decision-workbench/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/190-review-queue/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/20-circle-of-four/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/200-typescript-diagnostics/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/210-moderator-handover/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/220-actor-approval-list/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/230-shared-state-views/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/240-live-result-list/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/250-balcony-wizard/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/30-llm-without-runtime-knowledge/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/35-actor-input-fifo/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/40-subscription-matrix/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/50-subscription-removal/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/60-stop-in-the-circle/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/65-artifact-least-privilege/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/70-headless-counter/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/75-lsp-demo/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/80-actor-text-analysis/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/90-actor-notes/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/95-hello-world/SKILL.md +12 -0
- package/bundles/ragents.reference/skills/decision-brief/SKILL.md +33 -0
- package/bundles/ragents.reference/skills/learning-sprint/SKILL.md +33 -0
- package/bundles/ragents.reference/web/classes.json +1 -0
- package/bundles/ragents.reference/web/index.js +2 -0
- package/bundles/ragents.reference/web/index.js.map +7 -0
- package/bundles/ragents.todo/ragents-bundle.json +48 -0
- package/bundles/ragents.todo/server/index.js +108 -0
- package/bundles/ragents.todo/server/index.js.map +7 -0
- package/bundles/ragents.todo/web/classes.json +1 -0
- package/bundles/ragents.todo/web/index.js +2 -0
- package/bundles/ragents.todo/web/index.js.map +7 -0
- package/bundles/ragents.transcript/ragents-bundle.json +34 -0
- package/bundles/ragents.transcript/server/index.js +102 -0
- package/bundles/ragents.transcript/server/index.js.map +7 -0
- package/bundles/ragents.watch/ragents-bundle.json +39 -0
- package/bundles/ragents.watch/server/chunks/chunk-FHAM6OML.js +11 -0
- package/bundles/ragents.watch/server/chunks/chunk-FHAM6OML.js.map +7 -0
- package/bundles/ragents.watch/server/chunks/chunk-RPBX3J4P.js +10 -0
- package/bundles/ragents.watch/server/chunks/chunk-RPBX3J4P.js.map +7 -0
- package/bundles/ragents.watch/server/exports/contract.js +9 -0
- package/bundles/ragents.watch/server/exports/contract.js.map +7 -0
- package/bundles/ragents.watch/server/exports/server/contract.js +9 -0
- package/bundles/ragents.watch/server/exports/server/contract.js.map +7 -0
- package/bundles/ragents.watch/server/index.js +482 -0
- package/bundles/ragents.watch/server/index.js.map +7 -0
- package/bundles/ragents.workspace/prompt.hbs +7 -0
- package/bundles/ragents.workspace/ragents-bundle.json +148 -0
- package/bundles/ragents.workspace/server/index.js +1049 -0
- package/bundles/ragents.workspace/server/index.js.map +7 -0
- package/bundles/ragents.workspace/web/classes.json +1 -0
- package/bundles/ragents.workspace/web/index.js +39 -0
- package/bundles/ragents.workspace/web/index.js.map +7 -0
- package/package.json +4 -15
- package/packages/agent/dist/core/agent-session-runtime.d.ts +33 -0
- package/packages/agent/dist/core/agent-session-services.d.ts +35 -0
- package/packages/agent/dist/core/agent-session.d.ts +234 -0
- package/packages/agent/dist/core/agent-settings.d.ts +27 -0
- package/packages/agent/dist/core/auth-guidance.d.ts +4 -0
- package/packages/agent/dist/core/compaction/compaction.d.ts +116 -0
- package/packages/agent/dist/core/compaction/index.d.ts +6 -0
- package/packages/agent/dist/core/compaction/utils.d.ts +39 -0
- package/packages/agent/dist/core/defaults.d.ts +3 -0
- package/packages/agent/dist/core/extensions/index.d.ts +11 -0
- package/packages/agent/dist/core/extensions/loader.d.ts +12 -0
- package/packages/agent/dist/core/extensions/runner.d.ts +39 -0
- package/packages/agent/dist/core/extensions/types.d.ts +156 -0
- package/packages/agent/dist/core/extensions/wrapper.d.ts +12 -0
- package/packages/agent/dist/core/messages.d.ts +37 -0
- package/packages/agent/dist/core/model-runtime.d.ts +32 -0
- package/packages/agent/dist/core/provider-composer.d.ts +25 -0
- package/packages/agent/dist/core/resource-loader.d.ts +39 -0
- package/packages/agent/dist/core/sdk.d.ts +38 -0
- package/packages/agent/dist/core/session-manager.d.ts +189 -0
- package/packages/agent/dist/core/skills.d.ts +20 -0
- package/packages/agent/dist/core/source-info.d.ts +16 -0
- package/packages/agent/dist/core/system-prompt.d.ts +21 -0
- package/packages/agent/dist/core/tools/bash.d.ts +63 -0
- package/packages/agent/dist/core/tools/edit-diff.d.ts +98 -0
- package/packages/agent/dist/core/tools/edit.d.ts +41 -0
- package/packages/agent/dist/core/tools/file-mutation-queue.d.ts +6 -0
- package/packages/agent/dist/core/tools/index.d.ts +5 -0
- package/packages/agent/dist/core/tools/output-accumulator.d.ts +58 -0
- package/packages/agent/dist/core/tools/path-utils.d.ts +8 -0
- package/packages/agent/dist/core/tools/read.d.ts +33 -0
- package/packages/agent/dist/core/tools/truncate.d.ts +61 -0
- package/packages/agent/dist/core/tools/write.d.ts +23 -0
- package/packages/agent/dist/index.d.ts +13 -0
- package/packages/agent/dist/loop/agent-loop.d.ts +13 -0
- package/packages/agent/dist/loop/agent.d.ts +103 -0
- package/packages/agent/dist/loop/index.d.ts +5 -0
- package/packages/agent/dist/loop/types.d.ts +333 -0
- package/packages/agent/dist/loop/uuid.d.ts +2 -0
- package/packages/agent/dist/utils/child-process.d.ts +17 -0
- package/packages/agent/dist/utils/exif-orientation.d.ts +5 -0
- package/packages/agent/dist/utils/frontmatter.d.ts +8 -0
- package/packages/agent/dist/utils/image-convert.d.ts +2 -0
- package/packages/agent/dist/utils/image-process.d.ts +18 -0
- package/packages/agent/dist/utils/image-resize-core.d.ts +30 -0
- package/packages/agent/dist/utils/image-resize-worker.d.ts +2 -0
- package/packages/agent/dist/utils/image-resize.d.ts +16 -0
- package/packages/agent/dist/utils/mime.d.ts +3 -0
- package/packages/agent/dist/utils/paths.d.ts +15 -0
- package/packages/agent/dist/utils/photon.d.ts +21 -0
- package/packages/agent/dist/utils/shell.d.ts +17 -0
- package/packages/agent/dist/utils/sleep.d.ts +5 -0
- package/packages/agent/package.json +3 -32
- package/packages/agent/src/core/agent-session-runtime.ts +15 -469
- package/packages/agent/src/core/agent-session-services.ts +17 -167
- package/packages/agent/src/core/agent-session.ts +154 -2403
- package/packages/agent/src/core/agent-settings.ts +20 -0
- package/packages/agent/src/core/auth-guidance.ts +0 -4
- package/packages/agent/src/core/compaction/compaction.ts +4 -33
- package/packages/agent/src/core/compaction/index.ts +0 -1
- package/packages/agent/src/core/compaction/utils.ts +2 -2
- package/packages/agent/src/core/defaults.ts +1 -1
- package/packages/agent/src/core/extensions/index.ts +6 -117
- package/packages/agent/src/core/extensions/loader.ts +21 -605
- package/packages/agent/src/core/extensions/runner.ts +48 -969
- package/packages/agent/src/core/extensions/types.ts +35 -1298
- package/packages/agent/src/core/extensions/wrapper.ts +13 -34
- package/packages/agent/src/core/messages.ts +5 -109
- package/packages/agent/src/core/model-runtime.ts +109 -467
- package/packages/agent/src/core/provider-composer.ts +21 -451
- package/packages/agent/src/core/resource-loader.ts +18 -822
- package/packages/agent/src/core/sdk.ts +46 -281
- package/packages/agent/src/core/session-manager.ts +11 -891
- package/packages/agent/src/core/skills.ts +8 -440
- package/packages/agent/src/core/source-info.ts +0 -12
- package/packages/agent/src/core/system-prompt.ts +2 -41
- package/packages/agent/src/core/tools/bash.ts +20 -32
- package/packages/agent/src/core/tools/edit-diff.ts +0 -60
- package/packages/agent/src/core/tools/edit.ts +2 -18
- package/packages/agent/src/core/tools/index.ts +4 -130
- package/packages/agent/src/core/tools/output-accumulator.ts +33 -5
- package/packages/agent/src/core/tools/path-utils.ts +2 -49
- package/packages/agent/src/core/tools/read.ts +4 -12
- package/packages/agent/src/core/tools/truncate.ts +0 -15
- package/packages/agent/src/core/tools/write.ts +1 -8
- package/packages/agent/src/index.ts +11 -272
- package/packages/{agent-core/src → agent/src/loop}/agent-loop.ts +127 -273
- package/packages/{agent-core/src → agent/src/loop}/agent.ts +12 -164
- package/packages/{agent-core/src → agent/src/loop}/types.ts +6 -105
- package/packages/agent/src/utils/child-process.ts +0 -13
- package/packages/agent/src/utils/image-convert.ts +0 -25
- package/packages/agent/src/utils/paths.ts +1 -71
- package/packages/agent/src/utils/shell.ts +13 -156
- package/packages/ai/dist/api/ai-sdk-messages.d.ts +9 -0
- package/packages/ai/dist/api/ai-sdk-transport.d.ts +13 -0
- package/packages/ai/dist/api/ai-sdk.d.ts +13 -0
- package/packages/ai/dist/api/ai-sdk.lazy.d.ts +3 -0
- package/packages/ai/dist/api/lazy.d.ts +15 -0
- package/packages/ai/dist/api/simple-options.d.ts +4 -0
- package/packages/ai/dist/api/transform-messages.d.ts +8 -0
- package/packages/ai/dist/api-registry.d.ts +25 -0
- package/packages/ai/dist/auth/context.d.ts +4 -0
- package/packages/ai/dist/auth/helpers.d.ts +4 -0
- package/packages/ai/dist/auth/resolve.d.ts +19 -0
- package/packages/ai/dist/auth/types.d.ts +51 -0
- package/packages/ai/dist/env-api-keys.d.ts +8 -0
- package/packages/ai/dist/index.d.ts +19 -0
- package/packages/ai/dist/models.d.ts +71 -0
- package/packages/ai/dist/models.generated.d.ts +8021 -0
- package/packages/ai/dist/providers/all.d.ts +15 -0
- package/packages/ai/dist/providers/faux.d.ts +97 -0
- package/packages/ai/dist/providers/openrouter.d.ts +3 -0
- package/packages/ai/dist/providers/openrouter.models.d.ts +8019 -0
- package/packages/ai/dist/types.d.ts +541 -0
- package/packages/ai/dist/utils/diagnostics.d.ts +13 -0
- package/packages/ai/dist/utils/error-body.d.ts +25 -0
- package/packages/ai/dist/utils/estimate.d.ts +17 -0
- package/packages/ai/dist/utils/event-stream.d.ts +21 -0
- package/packages/ai/dist/utils/headers.d.ts +2 -0
- package/packages/ai/dist/utils/json-parse.d.ts +16 -0
- package/packages/ai/dist/utils/overflow.d.ts +54 -0
- package/packages/ai/dist/utils/provider-env.d.ts +7 -0
- package/packages/ai/dist/utils/retry.d.ts +12 -0
- package/packages/ai/dist/utils/sanitize-unicode.d.ts +22 -0
- package/packages/ai/dist/utils/typebox-helpers.d.ts +17 -0
- package/packages/ai/dist/utils/validation.d.ts +10 -0
- package/packages/ai/package.json +2 -6
- package/packages/ai/src/api/ai-sdk-transport.ts +2 -2
- package/packages/ai/src/api/simple-options.ts +0 -34
- package/packages/ai/src/api-registry.ts +1 -12
- package/packages/ai/src/auth/context.ts +1 -30
- package/packages/ai/src/auth/helpers.ts +3 -34
- package/packages/ai/src/auth/resolve.ts +10 -108
- package/packages/ai/src/auth/types.ts +9 -176
- package/packages/ai/src/index.ts +1 -13
- package/packages/ai/src/models.ts +41 -407
- package/packages/ai/src/providers/all.ts +3 -31
- package/packages/ai/src/providers/openrouter.models.ts +14 -0
- package/packages/ai/src/types.ts +0 -104
- package/packages/ai/src/utils/diagnostics.ts +0 -32
- package/packages/ai/src/utils/headers.ts +0 -11
- package/packages/ai/src/utils/overflow.ts +0 -7
- package/packages/ai/src/utils/validation.ts +0 -15
- package/packages/ragents/package.json +3 -6
- package/packages/ragents/src/access.ts +2 -1
- package/packages/ragents/src/agents/actor-input.ts +14 -18
- package/packages/ragents/src/agents/catalog.ts +3 -3
- package/packages/ragents/src/agents/plugins.ts +0 -4
- package/packages/ragents/src/agents/scheduler.ts +232 -78
- package/packages/ragents/src/agents/schemas.ts +1 -36
- package/packages/ragents/src/agents/tool-orientation.ts +1 -1
- package/packages/ragents/src/agents/tools.ts +72 -73
- package/packages/ragents/src/agents/toolset.ts +5 -5
- package/packages/ragents/src/agents/turn.ts +2 -14
- package/packages/ragents/src/agents/workspaces.ts +18 -0
- package/packages/ragents/src/domain/actor-reference.ts +22 -0
- package/packages/ragents/src/domain/driver.ts +0 -9
- package/packages/ragents/src/domain/event-semantics.ts +62 -74
- package/packages/ragents/src/domain/event-validation.ts +22 -21
- package/packages/ragents/src/domain/events.ts +19 -7
- package/packages/ragents/src/domain/json.ts +2 -0
- package/packages/ragents/src/domain/model.ts +40 -18
- package/packages/ragents/src/domain/projection.ts +43 -15
- package/packages/ragents/src/domain/schema-errors.ts +3 -3
- package/packages/ragents/src/drivers/agent-hooks.ts +40 -0
- package/packages/ragents/src/drivers/agent-runtime.ts +118 -186
- package/packages/ragents/src/drivers/agent.ts +5 -20
- package/packages/ragents/src/drivers/attachments.ts +4 -24
- package/packages/ragents/src/drivers/skill-preload.ts +4 -16
- package/packages/ragents/src/drivers/types.ts +20 -3
- package/packages/ragents/src/http/contracts.ts +16 -3
- package/packages/ragents/src/http/methods.ts +32 -33
- package/packages/ragents/src/index.ts +5 -15
- package/packages/ragents/src/plugin-host.ts +151 -105
- package/packages/ragents/src/plugin-types.ts +86 -23
- package/packages/ragents/src/rpc/peer.ts +6 -0
- package/packages/ragents/src/runtime/decisions/actions.ts +40 -37
- package/packages/ragents/src/runtime/decisions/actors.ts +90 -51
- package/packages/ragents/src/runtime/decisions/artifacts.ts +2 -2
- package/packages/ragents/src/runtime/decisions/inputs.ts +3 -3
- package/packages/ragents/src/runtime/decisions/subscriptions.ts +9 -7
- package/packages/ragents/src/runtime/decisions/turns.ts +37 -4
- package/packages/ragents/src/runtime/guards.ts +12 -21
- package/packages/ragents/src/runtime/journal-storage.ts +4 -2
- package/packages/ragents/src/runtime/journal.ts +1 -1
- package/packages/ragents/src/runtime/orchestration.ts +31 -14
- package/packages/ragents/src/runtime/serial-queue.ts +24 -0
- package/packages/ragents/src/runtime/stop.ts +19 -44
- package/packages/ragents/src/script/mediators.ts +4 -5
- package/packages/ragents/src/typescript/index.ts +2 -0
- package/packages/ragents/src/typescript/run-context.ts +10 -8
- package/packages/ragents/src/typescript/snippet.ts +7 -6
- package/packages/workspace-executor/package.json +2 -2
- package/packages/workspace-executor/src/bash-launch.ts +45 -0
- package/packages/workspace-executor/src/browser/contract.ts +71 -0
- package/packages/workspace-executor/src/browser/module.ts +74 -0
- package/packages/workspace-executor/src/browser/pages.ts +298 -0
- package/packages/workspace-executor/src/browser/playwright.ts +52 -0
- package/packages/workspace-executor/src/commands.ts +170 -0
- package/packages/workspace-executor/src/context.ts +34 -6
- package/packages/workspace-executor/src/errors.ts +12 -0
- package/packages/workspace-executor/src/executor.ts +62 -104
- package/packages/workspace-executor/src/files.ts +287 -0
- package/packages/workspace-executor/src/index.ts +82 -18
- package/packages/workspace-executor/src/language-server/adapters/roslyn.ts +1 -0
- package/packages/workspace-executor/src/language-server/contract.ts +14 -0
- package/packages/workspace-executor/src/language-server/host.ts +82 -26
- package/packages/workspace-executor/src/language-server/module.ts +107 -0
- package/packages/workspace-executor/src/language-server/workspace-solutions.ts +90 -0
- package/packages/workspace-executor/src/managed-process.ts +1 -1
- package/packages/workspace-executor/src/module.ts +35 -0
- package/packages/workspace-executor/src/modules.ts +25 -0
- package/packages/workspace-executor/src/paths.ts +57 -5
- package/packages/workspace-executor/src/process-sandbox.ts +16 -0
- package/packages/workspace-executor/src/processes/module.ts +48 -0
- package/{plugins/ragents.processes/server → packages/workspace-executor/src/processes}/process-table.ts +80 -57
- package/packages/workspace-executor/src/processes/scanner.ts +106 -0
- package/{plugins/ragents.processes/server → packages/workspace-executor/src/processes}/snapshot.ts +23 -11
- package/{plugins/ragents.processes/server → packages/workspace-executor/src/processes}/terminator.ts +19 -20
- package/packages/workspace-executor/src/run-folders.ts +33 -0
- package/packages/workspace-executor/src/safe-environment.ts +14 -0
- package/packages/workspace-executor/src/sandbox-tools.ts +206 -36
- package/packages/workspace-executor/src/shell-platform.ts +2 -2
- package/plugins/package.json +1 -1
- package/plugins/ragents.activity/ragents-plugin.json +3 -0
- package/plugins/ragents.activity/server/index.ts +2 -2
- package/plugins/ragents.activity/web/ActivityHeader.tsx +2 -2
- package/plugins/ragents.activity/web/activity.ts +1 -1
- package/plugins/ragents.activity/web/index.tsx +1 -1
- package/plugins/ragents.actor-programs/prompt.hbs +8 -7
- package/plugins/ragents.actor-programs/ragents-plugin.json +3 -0
- package/plugins/ragents.actor-programs/server/agent-tools.ts +3 -3
- package/{apps/server/src/plugin-support/actor-programs → plugins/ragents.actor-programs/server}/capability-resolver.ts +1 -16
- package/plugins/ragents.actor-programs/server/controls-template.ts +5 -18
- package/plugins/ragents.actor-programs/server/controls-tool.ts +8 -11
- package/plugins/ragents.actor-programs/server/index.ts +10 -10
- package/{apps/server/src/plugin-support/actor-programs → plugins/ragents.actor-programs/server}/limits.ts +4 -4
- package/plugins/ragents.actor-programs/server/methods.ts +2 -2
- package/{apps/server/src/plugin-support/actor-programs → plugins/ragents.actor-programs/server}/operations.ts +2 -4
- package/plugins/ragents.actor-programs/server/project-diagnostics.ts +65 -70
- package/plugins/ragents.actor-programs/server/prompts.ts +4 -4
- package/plugins/ragents.actor-programs/server/routes.ts +14 -8
- package/plugins/ragents.actor-programs/server/runtime.ts +132 -55
- package/plugins/ragents.actor-programs/server/templates.ts +35 -80
- package/plugins/ragents.actor-programs/server/test-report.ts +106 -0
- package/plugins/ragents.actor-programs/server/tool-contributor.ts +4 -4
- package/plugins/ragents.actor-programs/summary.hbs +1 -1
- package/plugins/ragents.actor-programs/web/ActorViewFrame.tsx +15 -10
- package/plugins/ragents.actor-programs/web/AppsPanel.tsx +47 -30
- package/plugins/ragents.actor-programs/web/EmbeddedApps.tsx +15 -17
- package/plugins/ragents.actor-programs/web/FullscreenHost.tsx +3 -3
- package/plugins/ragents.actor-programs/web/FunctionForm.tsx +3 -3
- package/plugins/ragents.actor-programs/web/ProgramSource.tsx +12 -3
- package/plugins/ragents.actor-programs/web/api.ts +5 -5
- package/plugins/ragents.actor-programs/web/bridge.ts +2 -3
- package/plugins/ragents.actor-programs/web/chat-state.ts +9 -8
- package/plugins/ragents.actor-programs/web/index.tsx +7 -17
- package/plugins/ragents.actor-programs/web/program-state.ts +3 -3
- package/plugins/ragents.actor-programs/web/state-revision.ts +2 -2
- package/plugins/ragents.ask/ask-payload.ts +25 -0
- package/plugins/ragents.ask/contract.ts +2 -2
- package/plugins/ragents.ask/ragents-plugin.json +7 -0
- package/plugins/ragents.ask/server/answer-method.ts +1 -1
- package/plugins/ragents.ask/server/ask-service.ts +43 -19
- package/plugins/ragents.ask/server/ask-tool.ts +2 -2
- package/plugins/ragents.ask/server/contract.ts +9 -1
- package/plugins/ragents.ask/server/index.ts +8 -10
- package/plugins/ragents.ask/server/tool-contributor.ts +3 -3
- package/plugins/ragents.ask/web/AskActionView.tsx +36 -0
- package/{apps/web/src/chat → plugins/ragents.ask/web}/QuestionCard.tsx +7 -5
- package/plugins/ragents.ask/web/QuestionSection.tsx +22 -21
- package/plugins/ragents.ask/web/api.ts +1 -1
- package/plugins/ragents.ask/web/index.tsx +11 -8
- package/plugins/ragents.browser/provision.ts +9 -8
- package/plugins/ragents.browser/ragents-plugin.json +6 -0
- package/plugins/ragents.browser/server/browser.ts +165 -286
- package/plugins/ragents.browser/server/contract.ts +8 -19
- package/plugins/ragents.browser/server/index.ts +8 -7
- package/plugins/ragents.browser/server/tools.ts +29 -37
- package/plugins/ragents.browser/skills/browser-testing/SKILL.md +3 -1
- package/plugins/ragents.documents/contract.ts +4 -2
- package/plugins/ragents.documents/ragents-plugin.json +6 -0
- package/plugins/ragents.documents/server/config.ts +1 -1
- package/plugins/ragents.documents/server/document-write-tool.ts +2 -2
- package/plugins/ragents.documents/server/files-route.ts +2 -3
- package/plugins/ragents.documents/server/index.ts +10 -11
- package/plugins/ragents.documents/server/show-document-tool.ts +2 -2
- package/plugins/ragents.documents/server/store.ts +3 -3
- package/plugins/ragents.documents/server/tool-contributor.ts +3 -3
- package/plugins/ragents.documents/web/DocumentViewer.tsx +5 -6
- package/plugins/ragents.documents/web/api.ts +1 -1
- package/plugins/ragents.documents/web/index.tsx +4 -4
- package/plugins/ragents.lsp-fsharp/provision.ts +2 -2
- package/plugins/ragents.lsp-fsharp/ragents-plugin.json +3 -0
- package/plugins/ragents.lsp-fsharp/server/index.ts +3 -3
- package/plugins/ragents.lsp-fsharp/web/index.tsx +1 -1
- package/plugins/ragents.lsp-roslyn/provision.ts +2 -2
- package/plugins/ragents.lsp-roslyn/ragents-plugin.json +3 -0
- package/plugins/ragents.lsp-roslyn/server/index.ts +47 -8
- package/plugins/ragents.lsp-roslyn/server/solution-on-start.ts +145 -0
- package/plugins/ragents.lsp-roslyn/web/index.tsx +1 -1
- package/plugins/ragents.lsp-typescript/ragents-plugin.json +3 -0
- package/plugins/ragents.lsp-typescript/server/index.ts +3 -3
- package/plugins/ragents.lsp-typescript/web/index.tsx +1 -1
- package/plugins/ragents.model-relay/ragents-plugin.json +3 -0
- package/plugins/ragents.model-relay/server/config.ts +5 -31
- package/plugins/ragents.model-relay/server/index.ts +5 -6
- package/plugins/ragents.model-relay/server/relay.ts +8 -9
- package/plugins/ragents.orchestration/contract.ts +13 -14
- package/plugins/ragents.orchestration/orchestration.hbs +4 -3
- package/plugins/ragents.orchestration/ragents-plugin.json +6 -0
- package/plugins/ragents.orchestration/server/index.ts +13 -16
- package/plugins/ragents.orchestration/server/run-stop-tool.ts +4 -4
- package/plugins/ragents.orchestration/server/{canvas-tool.ts → surface-tool.ts} +42 -43
- package/plugins/ragents.orchestration/surface.hbs +34 -0
- package/plugins/ragents.orchestration/tiled-layout.ts +16 -16
- package/plugins/ragents.orchestration/web/ActorChat.tsx +16 -14
- package/plugins/ragents.orchestration/web/ActorChatControls.tsx +23 -26
- package/plugins/ragents.orchestration/web/ActorChatPreview.tsx +5 -6
- package/plugins/ragents.orchestration/web/ActorPopout.tsx +7 -5
- package/plugins/ragents.orchestration/web/ActorShortcut.tsx +16 -16
- package/plugins/ragents.orchestration/web/{ActorCanvasControls.tsx → ActorSurfaceControls.tsx} +23 -28
- package/plugins/ragents.orchestration/web/ActorTile.tsx +2 -2
- package/plugins/ragents.orchestration/web/Center.tsx +47 -55
- package/plugins/ragents.orchestration/web/DocumentsSection.tsx +4 -4
- package/plugins/ragents.orchestration/web/ExecutionsPanel.tsx +7 -7
- package/plugins/ragents.orchestration/web/FlowInspector.tsx +24 -42
- package/plugins/ragents.orchestration/web/JournalStatus.tsx +8 -8
- package/plugins/ragents.orchestration/web/MaterialBody.tsx +5 -5
- package/plugins/ragents.orchestration/web/StopRunButton.tsx +6 -6
- package/plugins/ragents.orchestration/web/SurfaceStartup.tsx +8 -0
- package/plugins/ragents.orchestration/web/{CanvasTiles.tsx → SurfaceTiles.tsx} +18 -18
- package/plugins/ragents.orchestration/web/{TiledCanvas.tsx → TiledSurface.tsx} +22 -22
- package/plugins/ragents.orchestration/web/actor-header-settings.ts +2 -2
- package/plugins/ragents.orchestration/web/api.ts +4 -10
- package/plugins/ragents.orchestration/web/constants.ts +0 -1
- package/plugins/ragents.orchestration/web/executions.ts +3 -3
- package/plugins/ragents.orchestration/web/index.tsx +19 -124
- package/plugins/ragents.orchestration/web/program-slot.ts +14 -0
- package/plugins/ragents.orchestration/web/run-panel/AddresseeControl.tsx +95 -0
- package/plugins/ragents.orchestration/web/run-panel/AddresseeTree.tsx +109 -0
- package/plugins/ragents.orchestration/web/{column/RunColumn.tsx → run-panel/RunPanel.tsx} +211 -83
- package/plugins/ragents.orchestration/web/{column/ColumnSettings.tsx → run-panel/RunPanelSettings.tsx} +13 -13
- package/plugins/ragents.orchestration/web/run-panel/addressee-tree.ts +165 -0
- package/plugins/ragents.orchestration/web/{column/column-actors.ts → run-panel/run-panel-actors.ts} +14 -13
- package/plugins/ragents.orchestration/web/run-panel/run-panel-settings.ts +47 -0
- package/plugins/ragents.orchestration/web/run-panel/run-panel-startup.ts +30 -0
- package/plugins/ragents.orchestration/web/run-panel/run-panel-state.ts +71 -0
- package/plugins/ragents.orchestration/web/{column → run-panel}/sheet-status.ts +4 -4
- package/plugins/ragents.orchestration/web/{canvas-stage.ts → surface-entities.ts} +2 -2
- package/plugins/ragents.orchestration/web/{canvas-startup.ts → surface-startup.ts} +7 -10
- package/plugins/ragents.orchestration/web/surface-view-settings.ts +42 -0
- package/plugins/ragents.orchestration/web/tile-docking.ts +14 -14
- package/plugins/ragents.orchestration/web/tiled-view-settings.ts +26 -26
- package/plugins/ragents.overseer/contract.ts +20 -14
- package/plugins/ragents.overseer/ragents-plugin.json +3 -0
- package/plugins/ragents.overseer/server/api.ts +34 -23
- package/plugins/ragents.overseer/server/coordinator-prompt.ts +3 -3
- package/plugins/ragents.overseer/server/coordinator.ts +19 -0
- package/plugins/ragents.overseer/server/index.ts +39 -27
- package/plugins/ragents.overseer/server/orientation.ts +4 -5
- package/plugins/ragents.overseer/server/quick-answer.ts +5 -4
- package/plugins/ragents.overseer/server/reset-method.ts +4 -3
- package/plugins/ragents.overseer/server/run-directory.ts +5 -5
- package/plugins/ragents.overseer/server/settings-method.ts +1 -1
- package/plugins/ragents.overseer/server/settings.ts +6 -6
- package/plugins/ragents.overseer/server/user-location.ts +20 -19
- package/plugins/ragents.overseer/web/ModelSettings.tsx +4 -4
- package/plugins/ragents.overseer/web/chat-display.ts +1 -1
- package/plugins/ragents.overseer/web/index.tsx +51 -26
- 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/ragents-plugin.json +3 -0
- package/plugins/ragents.processes/server/index.ts +13 -19
- package/plugins/ragents.processes/server/methods.ts +18 -20
- package/plugins/ragents.processes/server/observer.ts +64 -104
- package/plugins/ragents.processes/server/run-processes.ts +24 -0
- package/plugins/ragents.processes/web/ProcessHeader.tsx +13 -16
- package/plugins/ragents.processes/web/index.tsx +2 -1
- package/plugins/ragents.processes/web/processes.ts +1 -1
- package/plugins/ragents.product/ragents-plugin.json +3 -0
- package/plugins/ragents.product/server/config.ts +12 -13
- package/plugins/ragents.product/server/index.ts +15 -16
- package/plugins/ragents.product/server/runtime.ts +2 -2
- package/plugins/ragents.product/web/index.tsx +3 -3
- package/plugins/ragents.profile-distribution/contract.ts +6 -9
- package/plugins/ragents.profile-distribution/ragents-plugin.json +3 -0
- package/plugins/ragents.profile-distribution/server/archive.ts +26 -51
- package/plugins/ragents.profile-distribution/server/config.ts +2 -2
- package/plugins/ragents.profile-distribution/server/index.ts +9 -16
- package/plugins/ragents.reference/examples.ts +1 -1
- package/plugins/ragents.reference/ragents-plugin.json +3 -0
- package/plugins/ragents.reference/run-scripts/balcony-wizard/RUN.md +2 -2
- package/plugins/ragents.reference/run-scripts/balcony-wizard/actors/balcony-app/src/client.tsx +1 -1
- package/plugins/ragents.reference/run-scripts/balcony-wizard/src/server.ts +1 -1
- package/plugins/ragents.reference/run-scripts/balcony-wizard/tests/program.test.ts +4 -4
- package/plugins/ragents.reference/run-scripts/conversation-circle/RUN.md +1 -1
- package/plugins/ragents.reference/run-scripts/conversation-circle/src/server.ts +1 -1
- package/plugins/ragents.reference/run-scripts/conversation-circle/tests/helpers.ts +1 -1
- package/plugins/ragents.reference/run-scripts/learning-afternoon/RUN.md +2 -2
- package/plugins/ragents.reference/run-scripts/learning-afternoon/src/client.tsx +1 -1
- package/plugins/ragents.reference/run-scripts/learning-afternoon/src/server.ts +1 -1
- package/plugins/ragents.reference/run-scripts/learning-afternoon/src/state.ts +2 -2
- package/plugins/ragents.reference/run-scripts/learning-afternoon/src/view.tsx +11 -11
- package/plugins/ragents.reference/run-scripts/learning-afternoon/src/workflow.ts +15 -15
- package/plugins/ragents.reference/run-scripts/learning-afternoon/tests/program.test.ts +3 -8
- package/plugins/ragents.reference/run-scripts/moderated-round/src/server.ts +1 -1
- 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 +2 -2
- package/plugins/ragents.reference/run-scripts/shared-actor-list/actors/shared-list/src/client.tsx +6 -6
- package/plugins/ragents.reference/run-scripts/shared-actor-list/src/server.ts +3 -3
- package/plugins/ragents.reference/run-scripts/shared-actor-list/tests/helpers.ts +1 -1
- package/plugins/ragents.reference/run-scripts/word-game/RUN.md +1 -1
- package/plugins/ragents.reference/run-scripts/word-game/src/client.tsx +1 -1
- package/plugins/ragents.reference/run-scripts/word-game/src/server.ts +1 -2
- package/plugins/ragents.reference/run-scripts/word-game/src/state.ts +6 -6
- package/plugins/ragents.reference/run-scripts/word-game/src/view.tsx +14 -14
- package/plugins/ragents.reference/run-scripts/word-game/tests/program.test.ts +4 -5
- package/plugins/ragents.reference/server/index.ts +2 -2
- package/plugins/ragents.reference/skills/160-learning-companion/SKILL.md +1 -1
- package/plugins/ragents.reference/skills/240-live-result-list/SKILL.md +1 -1
- package/plugins/ragents.reference/skills/250-balcony-wizard/SKILL.md +1 -1
- package/plugins/ragents.reference/skills/90-actor-notes/SKILL.md +1 -1
- package/plugins/ragents.reference/skills/95-hello-world/SKILL.md +2 -2
- package/plugins/ragents.reference/skills/decision-brief/SKILL.md +2 -2
- package/plugins/ragents.reference/walkthroughs.ts +19 -19
- package/plugins/ragents.reference/web/StartGuides.tsx +2 -2
- package/plugins/ragents.reference/web/index.tsx +1 -1
- package/plugins/ragents.todo/ragents-plugin.json +3 -0
- package/plugins/ragents.todo/server/index.ts +2 -2
- package/plugins/ragents.todo/server/todo-tool.ts +4 -5
- package/plugins/ragents.todo/server/tool-contributor.ts +2 -2
- package/plugins/ragents.todo/web/TodoSection.tsx +3 -3
- package/plugins/ragents.todo/web/index.ts +1 -1
- package/plugins/ragents.transcript/ragents-plugin.json +3 -0
- package/plugins/ragents.transcript/server/index.ts +4 -4
- package/plugins/ragents.transcript/server/transcript.ts +2 -3
- package/plugins/ragents.watch/ragents-plugin.json +6 -0
- package/plugins/ragents.watch/server/condition.ts +2 -2
- package/plugins/ragents.watch/server/contract.ts +1 -1
- package/plugins/ragents.watch/server/functions.ts +3 -3
- package/plugins/ragents.watch/server/index.ts +3 -3
- package/plugins/ragents.watch/server/observation.ts +6 -6
- package/plugins/ragents.watch/server/service.ts +5 -5
- package/plugins/ragents.workspace/client/workspace-client.ts +129 -58
- package/plugins/ragents.workspace/contract.ts +98 -35
- package/plugins/ragents.workspace/prompt.hbs +1 -8
- package/plugins/ragents.workspace/ragents-plugin.json +3 -0
- package/plugins/ragents.workspace/server/binding.ts +122 -39
- package/plugins/ragents.workspace/server/browse-route.ts +96 -103
- package/plugins/ragents.workspace/server/clients.ts +236 -68
- package/plugins/ragents.workspace/server/config.ts +30 -0
- package/plugins/ragents.workspace/server/index.ts +61 -26
- package/plugins/ragents.workspace/server/runtime.ts +271 -46
- package/{apps/server/src/plugin-support → plugins/ragents.workspace/server}/shell-platform.ts +3 -5
- package/{apps/server/src/plugin-support → plugins/ragents.workspace/server}/workspace-tool-naming.ts +7 -1
- package/plugins/ragents.workspace/web/FileBrowser.tsx +11 -8
- package/plugins/ragents.workspace/web/WorkspaceBinding.tsx +115 -61
- package/plugins/ragents.workspace/web/api.ts +1 -1
- package/plugins/ragents.workspace/web/index.tsx +1 -1
- package/ragents.config.core.ts +2 -7
- package/ragents.config.showcase.ts +2 -5
- package/scripts/agent/agent-cli.ts +265 -107
- package/scripts/agent/journal.ts +3 -1
- package/scripts/agent/turn-control.ts +19 -0
- package/scripts/package/build-package.ts +68 -13
- package/scripts/package/ragents.mjs +4 -2
- package/scripts/plugin/build-builtin-plugins.ts +52 -0
- package/scripts/plugin/plugin-cli.ts +99 -0
- package/scripts/provision/run-provision.ts +20 -18
- package/scripts/remote/connect.ts +75 -53
- package/scripts/remote/start.ts +2 -3
- package/scripts/workspace-client/run-workspace-client.ts +15 -9
- package/apps/server/agent-home/settings.json +0 -3
- package/apps/server/src/chat-attachments.ts +0 -52
- package/apps/server/src/chat-events.ts +0 -185
- package/apps/server/src/plugin-support/asset-path.ts +0 -4
- package/apps/server/src/profile/plugin-list.ts +0 -19
- package/apps/server/src/web-build.ts +0 -82
- package/apps/web/column.html +0 -12
- package/apps/web/index.html +0 -12
- package/apps/web/src/StartSurface.tsx +0 -161
- package/apps/web/src/chat/ChatInputToolbar.tsx +0 -488
- package/apps/web/src/chat/ChatMessages.tsx +0 -666
- package/apps/web/src/chat/ChatPanel.tsx +0 -61
- package/apps/web/src/chat/DetailModeSwitch.tsx +0 -58
- package/apps/web/src/chat/Markdown.tsx +0 -104
- package/apps/web/src/chat/StepPopover.tsx +0 -82
- package/apps/web/src/chat/WorkingScenes.tsx +0 -235
- package/apps/web/src/chat/attachments.ts +0 -53
- package/apps/web/src/chat/chat-scroll.ts +0 -41
- package/apps/web/src/chat/texts.ts +0 -61
- package/apps/web/src/chat/types.ts +0 -26
- package/apps/web/src/column/ColumnApp.tsx +0 -234
- package/apps/web/src/column/column-location.ts +0 -30
- package/apps/web/src/column/host-contract.ts +0 -93
- package/apps/web/src/panel/OverviewPage.tsx +0 -215
- package/apps/web/src/panel/SettingsPage.tsx +0 -98
- package/apps/web/src/panel/target-state.ts +0 -78
- package/apps/web/src/plugin-discovery.ts +0 -5
- package/apps/web/src/virtual-plugins.d.ts +0 -3
- package/apps/web/vite.config.ts +0 -140
- package/packages/agent/src/config.ts +0 -161
- package/packages/agent/src/core/auth-storage.ts +0 -271
- package/packages/agent/src/core/bash-executor.ts +0 -156
- package/packages/agent/src/core/compaction/branch-summarization.ts +0 -372
- package/packages/agent/src/core/diagnostics.ts +0 -15
- package/packages/agent/src/core/event-bus.ts +0 -33
- package/packages/agent/src/core/exec.ts +0 -107
- package/packages/agent/src/core/experimental.ts +0 -3
- package/packages/agent/src/core/footer-data-provider.ts +0 -388
- package/packages/agent/src/core/http-dispatcher.ts +0 -106
- package/packages/agent/src/core/index.ts +0 -78
- package/packages/agent/src/core/model-config.ts +0 -287
- package/packages/agent/src/core/model-registry.ts +0 -126
- package/packages/agent/src/core/model-resolver.ts +0 -675
- package/packages/agent/src/core/output-guard.ts +0 -108
- package/packages/agent/src/core/package-manager.ts +0 -2441
- package/packages/agent/src/core/prompt-templates.ts +0 -284
- package/packages/agent/src/core/resolve-config-value.ts +0 -287
- package/packages/agent/src/core/runtime-credentials.ts +0 -48
- package/packages/agent/src/core/session-cwd.ts +0 -59
- package/packages/agent/src/core/settings-manager.ts +0 -1212
- package/packages/agent/src/core/slash-commands.ts +0 -41
- package/packages/agent/src/core/timings.ts +0 -50
- package/packages/agent/src/core/tools/tool-definition-wrapper.ts +0 -45
- package/packages/agent/src/core/trust-manager.ts +0 -244
- package/packages/agent/src/utils/ansi.ts +0 -60
- package/packages/agent/src/utils/fs-watch.ts +0 -30
- package/packages/agent/src/utils/git.ts +0 -226
- package/packages/agent/src/utils/json.ts +0 -6
- package/packages/agent/src/utils/tools-manager.ts +0 -63
- package/packages/agent-core/package.json +0 -32
- package/packages/ai/src/api/openrouter-images.lazy.ts +0 -10
- package/packages/ai/src/api/openrouter-images.ts +0 -98
- package/packages/ai/src/auth/credential-store.ts +0 -51
- package/packages/ai/src/compat/extension-oauth-types.ts +0 -45
- package/packages/ai/src/image-models.generated.ts +0 -533
- package/packages/ai/src/images-models.ts +0 -274
- package/packages/ai/src/models-store.ts +0 -38
- package/packages/ai/src/oauth.ts +0 -10
- package/packages/ai/src/providers/openrouter-images.ts +0 -14
- package/packages/ai/src/session-resources.ts +0 -24
- package/packages/ai/src/utils/abort-signals.ts +0 -41
- package/packages/ai/src/utils/deferred-tools.ts +0 -39
- package/packages/ai/src/utils/hash.ts +0 -13
- package/packages/ai/src/utils/node-http-proxy.ts +0 -112
- package/plugins/ragents.actor-programs/server/client-runtime.ts +0 -16
- package/plugins/ragents.ask/web/constants.ts +0 -1
- package/plugins/ragents.lsp-roslyn/web/api.ts +0 -10
- package/plugins/ragents.orchestration/web/CanvasStartup.tsx +0 -14
- package/plugins/ragents.orchestration/web/canvas-view-settings.ts +0 -42
- package/plugins/ragents.orchestration/web/column/AddresseeControl.tsx +0 -116
- package/plugins/ragents.orchestration/web/column/column-settings.ts +0 -47
- package/plugins/ragents.orchestration/web/column/column-state.ts +0 -68
- package/plugins/ragents.orchestration/web/contract.ts +0 -25
- package/plugins/ragents.product/model-settings-contract.ts +0 -10
- package/plugins/ragents.profile-distribution/server/web.ts +0 -24
- /package/{plugins/ragents.actor-programs/server → apps/server/src/plugin-support/actor-programs}/authoring-contracts.ts +0 -0
- /package/{plugins/ragents.actor-programs/server → apps/server/src/plugin-support/actor-programs}/runtime-libraries.ts +0 -0
- /package/{plugins/ragents.actor-programs → apps/server/src/plugin-support/actor-programs}/workflow/prompt-reader.ts +0 -0
- /package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/file-contracts.d.ts +0 -0
- /package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/flow-diagram-contracts.d.ts +0 -0
- /package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/flow-diagram.css +0 -0
- /package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/form-contracts.d.ts +0 -0
- /package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/frame-layout.ts +0 -0
- /package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/table-contracts.d.ts +0 -0
- /package/{plugins/ragents.actor-programs → apps/web/src/actor-programs}/client-ui/viewer-contracts.d.ts +0 -0
- /package/{plugins/ragents.orchestration/canvas.hbs → bundles/ragents.orchestration/surface.hbs} +0 -0
- /package/packages/{agent-core/src → agent/src/loop}/index.ts +0 -0
- /package/packages/{agent-core/src → agent/src/loop}/uuid.ts +0 -0
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en" data-theme="light"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><meta name="description" content="Distributed work: public documentation for RAgents."><title>Distributed work - RAgents</title><link rel="alternate" type="text/markdown" href="guide-distributed.md"><style>/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
|
|
3
|
+
:root, :host {
|
|
4
|
+
--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
5
|
+
}
|
|
6
|
+
:root {
|
|
7
|
+
color-scheme: light;
|
|
8
|
+
--radius: 0.5rem;
|
|
9
|
+
--background: #f3f2f7;
|
|
10
|
+
--foreground: #34303d;
|
|
11
|
+
--card: #e7eaf2;
|
|
12
|
+
--primary: #79638d;
|
|
13
|
+
--primary-foreground: #ffffff;
|
|
14
|
+
--secondary: #e1ddeb;
|
|
15
|
+
--muted-foreground: #62586e;
|
|
16
|
+
--accent: #dcd0e8;
|
|
17
|
+
--destructive: #a94360;
|
|
18
|
+
--destructive-soft: #f5e1e9;
|
|
19
|
+
--success: #3b705f;
|
|
20
|
+
--success-soft: #e1eee8;
|
|
21
|
+
--warning: #925d37;
|
|
22
|
+
--warning-soft: #f3e4d8;
|
|
23
|
+
--info: #4b648a;
|
|
24
|
+
--teal: #356c70;
|
|
25
|
+
--env-lightness: 0.55;
|
|
26
|
+
--env-chroma: 0.12;
|
|
27
|
+
--border: #c9c4d5;
|
|
28
|
+
--border-soft: #dad6e3;
|
|
29
|
+
--border-strong: #a397b2;
|
|
30
|
+
--shell: #cbd6e4;
|
|
31
|
+
--app: #dce3ed;
|
|
32
|
+
--surface: #e8e2e6;
|
|
33
|
+
--surface-dot: #79aab43b;
|
|
34
|
+
--surface-glow-mint: #92cfbfad;
|
|
35
|
+
--surface-glow-blue: #8bbfe5a6;
|
|
36
|
+
--surface-light: #ffffffb3;
|
|
37
|
+
--surface-backdrop: radial-gradient(ellipse at 48% 38%, #ffffff80, transparent 48%),
|
|
38
|
+
radial-gradient(ellipse at 4% 88%, #9ccfc5b3, transparent 58%),
|
|
39
|
+
radial-gradient(ellipse at 96% 12%, #9ec6e4b3, transparent 56%),
|
|
40
|
+
radial-gradient(ellipse at 28% 0%, #c4b0dfb3, transparent 58%),
|
|
41
|
+
radial-gradient(ellipse at 88% 100%, #efd3c6a6, transparent 52%),
|
|
42
|
+
linear-gradient(135deg, #edf0f2, #e1dbe8);
|
|
43
|
+
--backdrop: #00000066;
|
|
44
|
+
--glass-agent: #eec4b1;
|
|
45
|
+
--glass-primary: #dcd0e8;
|
|
46
|
+
--glass-script: #e9dca1;
|
|
47
|
+
--glass-app: #e7edf2;
|
|
48
|
+
--glass-edge: #a498aa;
|
|
49
|
+
--glass-icon: #e8dfed;
|
|
50
|
+
--glass-head: #ede5ef;
|
|
51
|
+
--glass-group: #e7edf240;
|
|
52
|
+
--bar-shadow: 0 2px 5px #49384e14, 0 8px 20px #49384e12;
|
|
53
|
+
--status-shadow: 0 -2px 5px #49384e14, 0 -8px 20px #49384e12;
|
|
54
|
+
--pop-shadow: 0 12px 36px #49384e26;
|
|
55
|
+
--card-shadow: 0 12px 22px #49384e2c;
|
|
56
|
+
--workspace-shadow: -2px 0 5px #49384e14, -8px 0 20px #49384e1f;
|
|
57
|
+
--glass-icon-shadow: 1px 2px 4px #51465725;
|
|
58
|
+
}
|
|
59
|
+
:root[data-theme="dark"] {
|
|
60
|
+
color-scheme: dark;
|
|
61
|
+
--background: #292735;
|
|
62
|
+
--foreground: #e9e2ed;
|
|
63
|
+
--card: #2b303e;
|
|
64
|
+
--primary: #bda6cf;
|
|
65
|
+
--primary-foreground: #2d2235;
|
|
66
|
+
--secondary: #373247;
|
|
67
|
+
--muted-foreground: #b6a9bd;
|
|
68
|
+
--accent: #4b3d59;
|
|
69
|
+
--destructive: #ffa2b0;
|
|
70
|
+
--destructive-soft: #482d3b;
|
|
71
|
+
--success: #8dceae;
|
|
72
|
+
--success-soft: #233f37;
|
|
73
|
+
--warning: #e7bd81;
|
|
74
|
+
--warning-soft: #43382b;
|
|
75
|
+
--info: #9dbade;
|
|
76
|
+
--teal: #8ec9c4;
|
|
77
|
+
--env-lightness: 0.79;
|
|
78
|
+
--env-chroma: 0.1;
|
|
79
|
+
--border: #555065;
|
|
80
|
+
--border-soft: #403c50;
|
|
81
|
+
--border-strong: #8e809f;
|
|
82
|
+
--shell: #242e40;
|
|
83
|
+
--app: #212632;
|
|
84
|
+
--surface: #29232e;
|
|
85
|
+
--surface-dot: #7cafbc30;
|
|
86
|
+
--surface-glow-mint: #317d686b;
|
|
87
|
+
--surface-glow-blue: #417daa80;
|
|
88
|
+
--surface-light: #80bfc71f;
|
|
89
|
+
--surface-backdrop: radial-gradient(ellipse at 48% 38%, #64577333, transparent 48%),
|
|
90
|
+
radial-gradient(ellipse at 4% 88%, #2c625e99, transparent 58%),
|
|
91
|
+
radial-gradient(ellipse at 96% 12%, #355674a6, transparent 56%),
|
|
92
|
+
radial-gradient(ellipse at 28% 0%, #59446f99, transparent 58%),
|
|
93
|
+
radial-gradient(ellipse at 88% 100%, #694c443d, transparent 52%),
|
|
94
|
+
linear-gradient(135deg, #252b35, #302735);
|
|
95
|
+
--backdrop: #00000099;
|
|
96
|
+
--glass-agent: #594039;
|
|
97
|
+
--glass-primary: #47394f;
|
|
98
|
+
--glass-script: #4d462b;
|
|
99
|
+
--glass-app: #303943;
|
|
100
|
+
--glass-edge: #8a7994;
|
|
101
|
+
--glass-icon: #47394f;
|
|
102
|
+
--glass-head: #39303f;
|
|
103
|
+
--glass-group: #bda6cf08;
|
|
104
|
+
--bar-shadow: 0 2px 5px #00000033, 0 8px 20px #00000040;
|
|
105
|
+
--status-shadow: 0 -2px 5px #00000033, 0 -8px 20px #00000040;
|
|
106
|
+
--pop-shadow: 0 12px 36px #00000055;
|
|
107
|
+
--card-shadow: 0 12px 22px #00000055;
|
|
108
|
+
--workspace-shadow: -2px 0 5px #00000033, -8px 0 20px #0000004d;
|
|
109
|
+
--glass-icon-shadow: 1px 2px 4px #00000040;
|
|
110
|
+
}
|
|
111
|
+
@layer base {
|
|
112
|
+
body {
|
|
113
|
+
background: var(--app);
|
|
114
|
+
color: var(--foreground);
|
|
115
|
+
font-family: var(--font-sans);
|
|
116
|
+
font-size: 14px;
|
|
117
|
+
line-height: 1.5;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
*{box-sizing:border-box}body{margin:0;background:var(--app);color:var(--foreground);font:16px/1.65 var(--font-sans)}a{color:#1467b0;text-underline-offset:4px}a:hover{color:var(--foreground)}:focus-visible{outline:3px solid var(--primary);outline-offset:4px}main,body>footer{padding-block:24px}nav{display:flex;gap:12px 24px;flex-wrap:wrap}h1{font-size:clamp(38px,7vw,66px);line-height:1.1;letter-spacing:-.04em;margin:16px 0 24px}h2{font-size:30px;line-height:1.2;margin:0 0 20px;letter-spacing:-.02em}h3{font-size:20px;line-height:1.4}p{max-width:76ch}.intro{padding:36px 0 44px}.eyebrow{font:12px var(--font-mono);text-transform:uppercase;letter-spacing:.1em}.lead{font-size:20px;line-height:1.6}.stats{font:13px var(--font-mono);margin:24px 0}.section-nav{border-top:1px solid var(--border);padding:20px 0}main>section{padding:44px 0;border-top:1px solid var(--border)}article{min-width:0;padding:24px 0;border-top:1px solid var(--border-soft)}article h3{margin:0 0 8px;overflow-wrap:anywhere}.meta,.example-context{font:12px/1.7 var(--font-mono);color:#536b80;overflow-wrap:anywhere}details{margin:14px 0;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--background)}summary{cursor:pointer;padding:12px 16px;font-weight:600}details>p,details>div,details>table{margin:16px}pre{max-width:100%;overflow:auto;padding:20px;background:var(--card);font:12px/1.7 var(--font-mono);tab-size:2;margin:0}code{font-family:var(--font-mono);font-size:.9em;overflow-wrap:anywhere}pre code{font-size:inherit;overflow-wrap:normal}label{display:block;font-weight:600;margin-bottom:6px}input[type=search],select{font:inherit;color:inherit;border:1px solid var(--border);border-radius:6px;background:var(--background);padding:10px 12px;max-width:100%}input[type=search]{width:100%}.tool-label{display:block;font-size:13px;font-weight:400;color:#536b80;margin-top:3px}[data-tool]{padding:0;border:0}[data-tool]>details{margin:8px 0}[data-tool]>details>a{display:inline-block;margin:0 16px 16px}[data-tool]>details>details{margin:16px}.filter-row{display:flex;gap:16px;flex-wrap:wrap;align-items:end}.filter-row>div:first-child{flex:1;min-width:min(280px,100%)}.note{padding:16px 20px;background:var(--card);border-left:3px solid var(--primary)}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:10px;overflow-wrap:anywhere}th{font-weight:600}.table-wrap{overflow:auto}body>footer{padding-top:30px;padding-bottom:60px;border-top:1px solid var(--border)}[hidden]{display:none!important}@media(max-width:600px){h2{font-size:26px}main>section{padding:32px 0}pre{padding:14px;font-size:11px}.lead{font-size:18px}}
|
|
123
|
+
</style><style>
|
|
124
|
+
.guide-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:44px;align-items:start;padding-block:12px 32px}.guide-sidebar{position:sticky;top:calc(var(--header-height,80px) + 16px);max-height:calc(100dvh - var(--header-height,80px) - 32px);overflow:auto}.guide-chapters{display:grid;gap:16px;font-size:13px;line-height:1.4}.guide-chapters a{display:block;padding:6px 10px;text-decoration:none;border-radius:6px}.guide-nav-group{display:grid;gap:2px}.guide-nav-group>p{margin:0 10px 4px;font-size:11px;font-weight:700;color:#536b80}.guide-chapters [aria-current]{background:var(--card);color:var(--foreground);font-weight:600}.guide-mobile-nav{display:none}.guide-body{padding:0;border:0}.guide-title{margin:0 0 20px}.guide-title h1{font-size:32px;line-height:1.2;letter-spacing:-.025em;margin:6px 0 10px}.guide-title p{margin:0;font-size:15px}.guide-title .eyebrow{font-size:11px}.guide-body h2{font-size:24px;margin-top:32px;scroll-margin-top:20px}.guide-body h3{margin-top:24px}.guide-body pre{margin:20px 0}.guide-body li{margin-block:8px}.guide-body table{display:block;overflow:auto}.guide-body blockquote{margin-inline:0;padding:8px 20px;border-left:3px solid var(--primary);background:var(--card)}.guide-source{margin-top:40px;font-size:13px;color:#536b80}.guide-next{justify-content:space-between;border-top:1px solid var(--border);padding:20px 0;margin-top:24px}.guide-index{max-width:80ch;padding-left:24px}.guide-index li{padding:8px 0 16px 8px;border-bottom:1px solid var(--border)}.guide-index h2{font-size:20px;margin:0 0 6px}.guide-index p{margin-block:0}.guide-page-nav{margin:0 0 24px;font-size:13px}.guide-page-nav summary{padding:8px 12px}.guide-page-nav nav{display:grid;gap:8px;padding:4px 12px 12px}@media(max-width:850px){.guide-layout{grid-template-columns:1fr;gap:18px;padding-top:0}.guide-sidebar{display:none}.guide-mobile-nav{display:block;margin:0}.guide-mobile-nav summary{padding:10px 12px;font-size:14px}.guide-mobile-nav .guide-chapters{padding:0 12px 12px}.guide-title h1{font-size:28px}.guide-body h2{margin-top:28px}}@media print{.guide-layout{display:block}.guide-sidebar,.guide-mobile-nav,.guide-next{display:none}}
|
|
125
|
+
</style><link rel="stylesheet" href="site.css"><script src="site.js" defer></script></head><body><a class="skip" href="#main">Skip to content</a><header class="masthead shell">
|
|
126
|
+
<a class="brand" href="index.html#main" aria-label="RAgents, back to top"><svg class="brand-icon" aria-hidden="true" viewBox="0 0 787 787"><path id="ragents-mark" fill="currentColor" fill-rule="evenodd" d="M368.5 750.9C366.3 750.3 358.9 749.5 352.0 749.0C334.5 747.8 322.0 743.4 307.5 733.2C296.2 725.2 206.9 639.0 201.7 630.9C200.6 629.3 199.4 623.8 198.5 617.4C197.2 607.2 196.5 596.8 194.0 550.5C193.5 540.6 192.8 531.5 192.4 530.3C192.1 529.0 189.5 526.4 186.8 524.5C179.8 519.4 178.0 515.1 178.0 502.4L178.0 492.2L175.0 491.0C170.5 489.1 161.0 478.4 156.8 470.5C146.0 449.8 138.5 409.7 139.2 375.7C139.5 357.1 140.3 354.0 146.7 344.8C149.7 340.4 149.4 339.7 142.3 334.9C135.2 330.0 134.7 328.1 134.2 306.9C133.6 281.6 134.5 280.0 151.6 277.7L160.1 276.5L159.3 268.5C157.8 253.3 158.4 210.6 160.3 198.0C167.2 153.3 183.0 118.8 207.4 95.3C239.3 64.4 297.6 42.0 359.3 37.0C375.9 35.7 410.4 35.7 426.7 37.1C490.2 42.4 550.0 66.4 582.7 99.6C606.6 123.9 623.1 163.0 628.1 206.9C629.1 215.8 628.9 264.5 627.8 274.0C627.5 276.3 627.8 276.5 635.7 277.6C653.6 280.2 656.2 286.2 653.0 316.8C651.8 328.2 650.5 330.8 643.5 336.0C640.5 338.2 638.0 340.3 638.0 340.6C638.0 340.8 639.5 343.3 641.4 346.0C647.7 355.1 648.5 359.2 648.4 380.0C648.1 433.8 633.2 480.1 612.8 490.9L608.5 493.2L608.8 501.8C609.3 513.1 607.6 517.5 600.5 523.7C593.7 529.5 593.4 530.7 592.0 559.6C589.8 605.2 588.0 625.3 585.4 630.3C582.2 636.4 502.3 715.1 484.3 729.7C469.1 742.1 452.8 748.3 430.5 750.2C413.2 751.6 373.5 752.1 368.5 750.9ZM411.7 734.7C412.4 734.3 412.6 733.0 412.1 731.2L411.4 728.5L393.2 728.2C375.6 728.0 375.0 728.0 374.9 730.0C374.8 731.1 374.7 732.5 374.6 733.2C374.5 733.9 375.6 734.7 377.0 735.1C380.2 736.1 410.1 735.7 411.7 734.7ZM361.1 715.3C363.8 704.6 366.2 696.8 367.2 695.8C368.8 694.2 371.4 694.0 393.2 694.0C406.6 694.0 418.0 694.4 418.6 694.8C420.6 696.1 421.7 699.4 425.6 715.9C428.0 726.3 429.9 732.4 430.8 732.8C435.2 734.5 460.2 724.8 467.5 718.5L470.5 716.0L467.5 717.2C462.2 719.2 446.2 718.7 440.8 716.3C435.2 713.8 433.9 711.9 429.9 700.9C423.5 683.1 417.8 669.1 416.7 668.1C415.2 666.9 377.6 665.4 373.7 666.4C369.9 667.3 368.8 669.5 360.6 690.9C356.5 701.4 352.5 711.1 351.5 712.6C348.4 717.4 342.1 719.3 330.4 718.8C324.8 718.6 320.4 718.8 320.6 719.2C321.8 721.1 335.0 727.5 342.8 730.1C357.4 734.8 356.1 735.9 361.1 715.3ZM407.3 711.0C406.8 709.0 406.1 709.0 393.1 709.2C381.1 709.5 379.5 709.7 379.2 711.2C378.9 712.9 380.1 713.0 393.3 713.0C407.4 713.0 407.8 712.9 407.3 711.0ZM337.9 700.6C338.4 700.0 341.8 691.6 345.4 682.0C353.4 660.8 355.7 656.2 359.3 653.6C362.0 651.6 363.7 651.5 392.3 651.2C432.3 650.9 429.1 649.1 439.5 677.0C443.1 686.6 446.6 695.8 447.2 697.3C447.8 698.8 449.7 700.8 451.3 701.7L454.4 703.3L451.7 700.1C447.8 695.4 446.8 690.7 447.2 678.8C447.5 668.7 447.7 667.9 450.8 663.5L454.0 658.9L454.0 645.1C454.0 621.2 457.4 606.9 464.3 601.9L468.3 599.0L464.9 599.6C463.0 600.0 460.3 601.3 458.8 602.6C455.2 605.6 451.1 606.8 441.5 607.9C437.1 608.4 431.5 609.6 429.0 610.6C424.2 612.4 414.2 612.7 376.5 611.9C360.0 611.5 358.2 611.3 354.7 609.2C351.9 607.6 349.3 607.0 345.2 607.0C337.6 607.0 332.3 605.4 327.8 601.9C325.7 600.3 322.9 599.0 321.3 599.0L318.5 599.0L321.6 600.9C328.8 605.3 331.9 617.0 332.7 643.0C333.2 657.4 333.5 659.9 335.2 662.3C342.1 672.0 341.5 690.9 334.0 700.1L331.0 703.9L333.9 702.9C335.6 702.3 337.3 701.3 337.9 700.6ZM286.2 664.0C287.6 661.5 290.8 658.1 293.2 656.3C300.5 651.1 302.7 640.5 299.5 626.0C298.7 622.4 298.1 616.0 298.0 611.7C298.0 604.3 298.2 603.7 300.9 600.9C303.5 598.4 304.6 598.0 309.7 598.0L315.5 598.0L312.2 596.3C310.4 595.5 307.7 593.3 306.1 591.5C304.5 589.7 302.2 587.9 300.9 587.5C296.2 586.1 290.2 582.0 288.2 578.8L286.1 575.5L284.7 579.0C281.7 586.4 281.7 586.8 284.7 587.2C287.3 587.5 287.5 587.8 287.8 592.9C288.0 595.9 287.6 599.5 287.0 601.0C286.0 603.3 286.5 605.2 290.0 614.6C294.1 625.2 294.2 625.8 293.8 635.0C293.4 644.0 293.0 645.3 287.3 658.5C279.2 677.0 278.3 680.6 280.7 683.2C282.5 685.2 282.5 685.0 283.0 676.9C283.4 670.2 284.0 667.6 286.2 664.0ZM506.5 677.2C505.9 674.6 502.8 666.6 499.7 659.4C490.6 638.2 490.1 632.9 495.6 617.5C497.5 612.0 500.5 603.7 502.2 599.0C505.4 590.1 505.3 587.2 502.0 578.6L500.9 575.7L498.6 579.1C496.3 582.4 487.7 588.0 484.8 588.0C484.0 588.0 482.4 589.4 481.1 591.1C479.9 592.7 477.5 594.9 475.9 595.9L472.9 597.7L478.5 598.2C489.1 599.1 491.0 605.4 487.0 626.5C484.8 638.3 484.9 640.5 487.6 649.2C488.7 652.6 490.1 654.5 492.5 656.0C499.6 660.4 504.0 669.4 504.0 679.8C504.0 685.1 504.1 685.3 505.9 683.6C507.6 682.0 507.7 681.4 506.5 677.2ZM547.0 643.3C559.3 630.8 569.8 619.1 570.5 617.5C572.0 614.0 573.5 599.2 575.1 572.5C576.9 540.7 576.0 540.1 571.6 570.5C569.5 585.4 567.1 599.1 566.3 601.0C565.4 603.2 556.0 613.2 540.4 628.5L515.8 652.5L518.4 658.7C519.8 662.2 521.0 665.7 521.0 666.5C521.0 669.4 524.5 666.3 547.0 643.3ZM267.4 659.9C268.8 656.3 270.0 652.9 270.0 652.3C270.0 651.7 259.2 640.7 245.9 627.9C232.7 615.1 221.2 603.4 220.5 601.9C219.7 600.5 217.5 588.8 215.6 575.9C209.8 537.9 210.0 538.8 210.6 554.0C211.3 573.9 213.9 607.7 215.1 613.6C216.0 618.5 217.0 619.6 240.2 642.8C253.5 656.1 264.4 666.9 264.6 666.7C264.7 666.6 265.9 663.5 267.4 659.9ZM531.9 606.2C532.5 603.2 533.0 598.9 533.0 596.8L533.0 593.0L527.0 593.0C521.3 593.0 521.0 593.1 521.0 595.5C521.0 596.9 518.3 605.3 515.1 614.3C511.8 623.2 508.9 631.4 508.5 632.5C508.1 633.6 512.9 629.4 519.3 623.1C530.2 612.3 530.8 611.5 531.9 606.2ZM272.5 617.4C269.4 609.2 266.6 600.4 266.3 597.8L265.7 593.0L259.9 593.0C256.7 593.0 253.9 593.4 253.6 593.9C253.2 594.4 253.5 598.4 254.1 602.7L255.3 610.5L266.3 621.7C272.4 627.9 277.5 632.8 277.7 632.6C277.9 632.4 275.5 625.6 272.5 617.4ZM417.7 596.4C422.2 595.5 423.0 593.5 423.0 583.0L423.0 573.2L413.2 573.7C399.8 574.4 400.9 573.3 401.2 585.2C401.5 595.0 401.6 595.5 404.0 596.7C406.3 597.9 411.1 597.8 417.7 596.4ZM384.2 595.3C386.4 593.3 386.9 575.2 384.8 574.5C384.1 574.3 378.9 573.9 373.2 573.5L363.0 572.9L363.0 581.4C363.0 594.7 364.8 596.8 376.4 596.9C380.6 597.0 382.9 596.5 384.2 595.3ZM240.3 574.9C241.2 571.9 243.6 566.8 245.6 563.5L249.2 557.5L248.0 550.0C245.6 534.6 238.0 490.3 236.9 485.2L235.9 480.0L230.9 480.0C223.9 480.0 219.4 477.8 212.5 471.0L206.5 465.1L206.4 471.9L206.3 478.8L210.2 479.3C223.5 481.1 230.3 496.7 225.4 514.1C223.9 519.4 223.9 520.6 226.0 535.1C231.4 573.4 234.2 589.6 235.8 592.0C237.5 594.5 237.5 594.4 238.1 587.4C238.5 583.5 239.5 577.9 240.3 574.9ZM552.0 589.2C552.6 587.2 555.3 570.5 558.0 552.2C562.6 520.3 562.8 518.7 561.3 514.4C559.0 507.6 559.9 493.6 562.9 488.6C565.9 483.9 571.7 480.0 576.9 479.3L581.0 478.7L581.0 471.6L581.0 464.5L575.7 470.1C568.4 477.9 565.9 479.3 557.7 479.9L550.6 480.5L548.8 490.5C547.8 496.0 544.8 513.3 542.1 529.0L537.1 557.5L540.0 561.9C545.0 569.4 548.7 582.3 549.0 592.8C549.0 595.2 550.9 593.0 552.0 589.2ZM447.0 588.5C449.2 586.2 449.5 585.0 449.9 576.9L450.2 567.9L446.4 568.6C437.7 570.2 438.0 569.7 438.0 581.6L438.0 592.2L441.2 591.6C443.0 591.2 445.6 589.8 447.0 588.5ZM348.0 580.6C348.0 569.1 348.5 569.8 340.6 568.4L336.8 567.7L337.1 577.0C337.5 585.6 337.7 586.3 340.3 588.6C341.8 589.9 344.2 591.0 345.6 591.0C348.0 591.0 348.0 591.0 348.0 580.6ZM467.9 578.7C469.3 576.6 470.8 561.0 469.7 561.0C469.4 561.0 467.9 561.5 466.5 562.2C464.1 563.3 464.0 563.6 464.0 572.6C464.0 582.4 464.8 583.7 467.9 578.7ZM321.8 562.5C321.6 562.4 320.4 561.9 319.1 561.5L316.8 560.8L317.1 568.8C317.4 575.0 317.9 577.3 319.5 579.0L321.5 581.2L321.8 572.0C321.9 566.9 321.9 562.6 321.8 562.5ZM267.9 575.0C268.9 571.9 268.4 566.0 267.0 566.0C266.1 566.0 259.0 575.0 259.0 576.1C259.0 576.9 261.4 577.7 264.7 577.9C266.2 578.0 267.1 577.1 267.9 575.0ZM527.4 577.2C528.1 576.0 520.8 566.0 519.5 566.4C518.1 566.8 517.7 572.1 518.9 575.3C519.8 577.5 520.6 578.0 523.4 578.0C525.3 578.0 527.1 577.6 527.4 577.2ZM487.0 558.2C487.0 554.3 486.6 552.9 485.8 553.2C484.9 553.5 484.4 556.2 484.3 561.1C484.0 568.0 484.1 568.3 485.5 566.0C486.3 564.6 486.9 561.1 487.0 558.2ZM302.0 559.5C302.0 555.8 301.6 553.0 301.0 553.0C299.9 553.0 299.7 560.1 300.6 563.8C301.6 567.5 302.0 566.3 302.0 559.5ZM284.6 548.2C283.2 522.4 282.9 499.0 284.0 497.1C286.5 492.4 297.7 490.6 306.6 493.5C308.5 494.1 308.8 493.3 311.5 481.8C314.8 467.9 314.8 467.1 312.4 463.5C309.3 458.7 308.6 458.7 288.4 465.2C278.0 468.5 269.1 471.5 268.7 472.0C268.2 472.4 271.3 491.9 275.4 515.4C279.6 538.9 283.0 558.3 283.0 558.5C283.0 558.8 283.5 559.0 284.1 559.0C284.8 559.0 284.9 555.5 284.6 548.2ZM385.8 550.0C386.5 531.9 384.1 527.7 372.5 526.5C366.5 525.8 365.5 526.0 364.3 527.6C362.5 530.1 362.4 554.3 364.2 555.8C365.7 556.9 377.9 558.9 382.5 558.6L385.5 558.5L385.8 550.0ZM419.8 557.1L422.5 556.4L422.8 542.6C423.1 525.9 422.9 525.6 415.1 526.5C402.6 527.9 401.0 530.3 401.0 547.5L401.0 559.2L409.1 558.5C413.6 558.1 418.4 557.5 419.8 557.1ZM506.4 542.8C507.9 533.8 511.4 514.4 514.1 499.5C516.8 484.7 518.6 472.3 518.2 471.9C517.8 471.5 509.0 468.5 498.6 465.1C484.4 460.6 479.2 459.3 477.9 460.1C475.5 461.3 473.0 466.2 473.0 469.5C473.0 471.7 477.0 489.5 478.5 493.7C478.8 494.6 479.7 494.6 482.4 493.5C489.8 490.4 500.0 492.2 502.5 497.1C504.5 500.8 504.6 534.2 502.7 537.9C501.4 540.5 501.5 559.0 502.9 559.0C503.3 559.0 504.9 551.7 506.4 542.8ZM347.5 526.3C346.8 523.5 339.6 521.0 337.7 522.9C336.0 524.6 335.4 546.6 337.0 548.5C337.7 549.4 340.3 550.6 342.9 551.4L347.5 552.7L347.8 540.6C347.9 533.9 347.8 527.5 347.5 526.3ZM444.1 551.9C449.6 550.0 449.8 549.5 450.2 536.3C450.5 522.1 450.1 521.2 444.3 523.0C438.4 524.9 438.0 525.9 438.0 540.2C438.0 554.2 437.9 553.9 444.1 551.9ZM471.4 539.5C472.2 537.3 472.2 517.5 471.3 516.7C470.9 516.3 469.4 517.2 467.8 518.7C465.1 521.3 465.0 521.6 465.0 532.7L465.0 544.1L467.9 542.6C469.5 541.7 471.0 540.3 471.4 539.5ZM318.9 518.4C317.6 517.1 316.3 516.0 315.8 516.0C314.8 516.0 314.7 538.1 315.8 539.6C316.2 540.2 317.4 541.2 318.5 541.8C320.4 542.8 320.5 542.5 320.8 531.8C321.0 521.5 320.9 520.5 318.9 518.4ZM488.8 518.7C489.0 510.2 488.9 509.7 487.6 512.0C485.6 515.3 485.3 531.1 487.2 529.2C488.0 528.4 488.6 524.4 488.8 518.7ZM299.1 511.2C298.3 510.0 298.1 511.5 298.0 517.2C298.0 527.7 299.4 530.6 299.8 520.7C300.0 516.5 299.6 512.2 299.1 511.2ZM408.2 511.5C414.4 510.7 421.8 510.0 424.5 510.0C427.2 510.0 432.4 509.1 435.8 508.0C439.3 506.9 445.0 506.0 448.5 506.0C452.6 506.0 455.1 505.5 455.9 504.6C456.5 503.8 458.3 502.7 459.9 502.0L462.7 500.9L460.3 491.2C457.5 479.5 456.3 463.2 457.9 457.3C460.5 448.0 467.9 443.1 479.6 443.0C485.7 443.0 489.8 444.0 507.1 449.6C540.9 460.4 554.0 464.1 555.8 463.1C556.8 462.6 565.1 454.5 574.3 445.2C586.8 432.6 590.9 427.9 590.4 426.6C589.8 425.1 589.5 425.1 588.1 426.3C585.0 429.1 572.0 435.0 564.8 436.9C540.1 443.5 497.9 443.1 473.8 435.9C438.4 425.4 417.1 399.2 405.0 351.2C403.6 345.9 400.2 343.5 393.9 343.5C386.0 343.5 384.3 345.6 379.9 360.1C362.0 419.5 331.1 442.0 267.3 442.0C237.5 442.0 213.7 436.7 199.8 426.8C197.0 424.9 197.0 424.9 197.0 426.9C197.0 428.9 227.3 461.0 231.1 463.1C232.9 464.0 251.2 458.9 288.3 447.1C302.2 442.6 312.1 441.7 318.3 444.4C322.6 446.1 327.6 452.0 328.9 456.7C331.3 465.2 329.4 483.0 324.4 499.2C324.1 500.4 324.4 501.0 325.3 501.0C326.1 501.0 327.9 501.9 329.3 503.0C331.0 504.4 333.3 505.0 336.8 505.0C339.5 505.0 345.7 506.1 350.4 507.5C355.2 508.9 361.6 510.0 364.9 510.0C371.8 510.0 389.3 512.5 391.7 513.9C392.8 514.5 394.1 514.5 395.2 513.9C396.1 513.4 401.9 512.3 408.2 511.5ZM366.2 486.0C361.0 484.8 359.6 482.8 353.6 468.6C345.8 450.0 345.8 449.6 355.9 424.9C370.3 389.6 375.9 376.7 377.5 375.1C378.7 373.8 382.0 373.4 392.9 373.2C406.2 372.9 406.8 372.9 409.3 375.2C411.1 376.8 415.9 387.4 425.4 410.9C442.1 451.9 441.8 449.5 432.9 469.8C425.9 485.9 425.7 486.0 413.5 486.8C404.6 487.3 405.2 487.6 398.5 479.2C394.6 474.5 392.1 475.0 386.5 481.5L381.8 487.0L375.7 486.9C372.3 486.8 368.0 486.4 366.2 486.0ZM190.6 468.1C188.8 454.9 177.0 428.2 169.5 420.3C165.1 415.8 165.0 415.7 163.0 417.5C159.8 420.4 159.8 422.1 163.0 434.6C167.3 451.4 173.3 463.5 181.1 471.2L187.2 477.4L189.2 475.0C190.8 473.0 191.1 471.6 190.6 468.1ZM607.1 471.1C615.1 462.8 624.5 440.6 626.6 425.2C627.1 421.4 626.8 420.0 625.3 418.1C623.4 415.8 623.3 415.8 620.7 417.5C611.3 423.6 593.7 465.1 597.1 473.2C598.8 477.3 601.7 476.7 607.1 471.1ZM382.5 461.4L385.9 460.8L386.2 451.6L386.5 442.5L393.5 442.5L400.5 442.5L401.0 451.4C401.5 460.3 401.5 460.4 404.4 461.1C406.0 461.6 408.8 463.4 410.6 465.1C412.5 466.9 414.2 468.2 414.4 467.9C414.6 467.7 416.4 463.5 418.4 458.7L422.1 449.8L410.4 421.2C396.1 385.9 397.7 388.8 393.4 389.2C389.3 389.5 390.6 387.0 374.5 426.7L365.1 449.9L368.1 457.2C369.8 461.2 371.6 465.5 372.1 466.8C373.0 469.1 373.0 469.1 376.1 465.6C378.0 463.4 380.4 461.8 382.5 461.4ZM172.2 391.0C165.9 377.7 165.8 377.6 158.5 381.9C155.6 383.6 155.5 383.9 155.8 389.6C156.3 400.4 155.9 400.0 164.8 400.0C171.5 400.0 173.3 400.4 177.7 402.9C177.8 403.0 175.3 397.6 172.2 391.0ZM623.3 400.0L630.7 400.0L631.4 395.4C632.8 384.6 632.5 383.7 626.7 380.8L621.5 378.2L615.5 390.5L609.5 402.8L612.7 401.4C614.5 400.6 619.3 400.0 623.3 400.0ZM609.6 357.0C618.5 333.9 621.0 329.6 629.5 322.7C636.4 317.2 636.5 317.0 637.4 306.5C638.4 294.2 638.6 294.4 611.4 291.5C586.2 288.9 551.7 289.9 516.6 294.3C507.3 295.4 508.8 295.5 540.1 295.5C568.5 295.5 574.5 295.8 580.2 297.2C593.1 300.5 599.9 305.1 604.3 313.4C606.2 316.9 606.5 319.5 606.8 332.2C607.2 348.3 605.2 362.2 600.6 375.6C599.3 379.4 597.9 383.4 597.5 384.5C594.8 392.9 603.3 373.5 609.6 357.0ZM187.5 377.9C182.9 365.1 180.6 351.7 180.6 336.0C180.5 313.9 183.5 307.2 196.4 301.1C207.4 295.8 217.4 294.7 251.0 295.2L280.5 295.5L266.5 293.8C244.1 291.1 226.7 290.0 207.4 290.0C184.6 290.0 153.3 293.3 150.6 296.0C149.4 297.2 149.7 311.4 151.1 315.7C151.6 317.4 153.3 319.6 154.7 320.5C164.9 327.2 169.0 333.8 177.6 356.9C182.9 371.1 189.0 385.3 189.6 384.7C189.8 384.6 188.8 381.5 187.5 377.9ZM430.5 368.4C425.2 352.0 424.3 327.1 428.8 319.7C433.0 313.0 441.1 308.7 457.5 304.4C470.5 301.1 466.7 301.5 440.1 306.2C417.0 310.4 416.1 310.5 394.0 310.5C372.0 310.5 371.0 310.4 347.7 306.2C320.6 301.4 317.7 301.1 330.9 304.5C349.1 309.2 357.7 315.0 360.5 324.4C363.3 333.8 361.6 355.1 357.0 368.4C355.9 371.7 355.2 374.5 355.4 374.7C355.9 375.3 362.6 357.2 365.0 348.5C370.0 330.4 374.6 327.0 394.0 327.0C412.4 327.0 417.6 330.8 422.0 347.2C424.2 355.4 431.9 376.4 432.5 375.8C432.7 375.6 431.8 372.3 430.5 368.4ZM155.8 316.0C153.2 314.0 153.0 313.3 153.0 307.2C153.0 297.4 154.7 296.0 166.3 296.0C177.0 296.0 179.0 297.7 179.0 306.9C179.0 316.1 177.6 317.4 166.6 317.8C159.5 318.1 158.2 317.9 155.8 316.0ZM612.5 316.8C609.0 314.9 608.0 312.8 608.0 306.9C608.0 297.7 609.6 296.5 621.5 296.5C630.5 296.5 631.3 296.7 633.1 298.9C636.9 303.5 635.2 314.7 630.3 316.9C627.2 318.3 615.1 318.3 612.5 316.8ZM409.4 293.9C409.7 293.7 410.3 289.8 410.9 285.2C412.9 269.2 416.5 266.2 448.6 253.5C489.0 237.5 529.6 225.0 541.3 225.0L545.5 225.0L550.3 196.4C553.0 180.7 554.9 167.5 554.6 167.2C554.3 166.9 554.0 167.8 554.0 169.2C554.0 173.3 549.8 180.1 546.0 182.1C539.3 185.7 518.3 184.3 509.4 179.7C505.1 177.5 500.3 171.7 499.1 167.3C497.2 160.6 497.8 137.8 500.2 123.5C502.2 111.0 502.3 110.6 500.5 109.5C499.5 109.0 497.0 107.1 495.1 105.3C491.5 102.2 491.5 102.1 491.5 94.2C491.5 81.0 495.3 77.5 508.7 78.2C517.9 78.6 521.0 81.2 521.0 88.4C521.0 98.4 521.1 98.5 534.3 105.1C557.6 116.8 558.0 117.3 558.0 133.8C558.0 140.0 557.5 148.2 556.9 152.1C554.7 166.6 556.7 160.4 559.9 142.8C563.7 122.4 564.0 121.6 568.2 118.0L571.2 115.4L563.7 108.3C545.4 90.9 514.8 74.9 480.1 64.6L475.0 63.1L469.7 73.8L464.4 84.5L467.7 90.5C472.8 99.9 472.5 102.0 461.7 134.5C450.7 167.5 450.1 168.6 441.5 177.0L434.9 183.5L428.7 183.5C425.3 183.5 406.8 183.4 387.7 183.2L352.8 183.0L346.4 176.8C342.8 173.4 339.1 169.2 338.0 167.5C337.0 165.8 331.8 151.6 326.6 136.0C315.4 102.9 315.0 99.9 320.0 90.0L323.0 84.1L318.0 73.6C314.4 65.9 312.6 63.0 311.3 63.0C310.3 63.0 303.0 65.2 295.0 67.9C263.2 78.5 239.2 91.8 220.8 108.8L215.0 114.2L219.1 117.9C222.9 121.2 223.3 122.2 225.1 130.9C227.3 141.7 238.3 203.4 240.2 216.0L241.5 224.5L246.0 224.8C258.3 225.5 266.7 227.5 297.5 237.7C320.3 245.2 340.6 253.0 355.8 260.1C371.7 267.5 375.3 272.2 376.7 287.4C377.2 293.4 377.5 293.9 379.9 294.4C383.3 294.9 408.7 294.6 409.4 293.9ZM361.0 289.8C361.0 289.1 360.0 286.7 358.7 284.5C356.1 279.7 347.1 274.9 324.0 265.7C298.1 255.5 252.9 241.0 246.8 241.0C241.7 241.0 214.0 267.6 214.0 272.6C214.0 273.3 219.2 273.9 229.5 274.4C257.6 275.6 302.8 281.0 341.5 287.9C360.5 291.3 361.0 291.4 361.0 289.8ZM447.8 287.5C493.8 279.8 529.3 275.6 557.5 274.4C566.0 274.0 573.0 273.4 573.0 273.0C573.0 269.2 569.4 264.8 556.8 253.5L542.7 240.8L538.6 241.4C526.1 243.4 453.0 269.3 437.2 277.4C431.5 280.3 428.2 283.7 427.0 287.8C426.5 289.6 426.4 291.0 426.7 291.0C426.9 291.0 436.5 289.4 447.8 287.5ZM192.0 274.0L197.7 274.0L198.4 268.1C198.8 264.9 200.0 259.7 201.0 256.6C206.3 241.7 199.6 182.4 191.5 172.4L189.1 169.5L186.1 172.5C178.1 180.3 171.8 228.4 174.9 257.5C176.9 276.3 176.5 275.3 181.8 274.6C184.3 274.3 188.9 274.0 192.0 274.0ZM610.4 272.8C614.9 252.2 613.5 212.8 607.4 188.0C603.6 172.7 600.2 168.0 596.1 172.4C587.2 181.8 580.7 242.9 586.8 259.7C588.0 263.1 589.0 267.7 589.0 269.9L589.0 273.9L596.8 274.3C601.0 274.4 605.7 274.7 607.2 274.8C609.3 275.0 610.1 274.5 610.4 272.8ZM360.2 257.2C359.1 256.3 355.5 251.0 352.1 245.6C346.9 237.1 346.0 235.0 346.0 230.9C346.0 224.7 347.7 223.0 353.8 223.0C359.8 223.0 359.6 222.8 366.4 233.8L372.3 243.0L393.7 243.0L415.0 243.0L417.8 238.4C425.5 225.3 427.2 223.5 432.2 223.2C439.5 222.7 441.0 224.0 441.0 230.7C441.0 235.9 440.5 237.0 434.4 246.7C430.7 252.4 426.9 257.5 425.9 258.0C424.9 258.6 411.2 259.0 393.2 259.0C365.1 259.0 362.0 258.8 360.2 257.2ZM224.9 233.7C226.0 232.3 225.4 221.0 224.3 221.0C224.0 221.0 222.5 221.9 220.9 223.1C218.2 225.0 218.0 225.6 218.0 232.1L218.0 239.1L220.8 237.1C222.4 236.0 224.2 234.5 224.9 233.7ZM566.3 223.4C563.1 220.8 562.6 221.3 561.6 228.0C560.9 232.2 561.1 232.6 564.7 235.6L568.5 238.8L568.8 232.2C569.1 226.1 568.9 225.5 566.3 223.4ZM220.3 196.7C208.7 128.4 207.3 123.9 200.9 134.3C198.1 138.6 191.0 152.5 191.0 153.5C191.0 153.8 192.5 154.0 194.4 154.0C204.6 154.0 211.4 167.1 215.1 194.3L216.3 203.1L218.5 201.0C219.9 199.7 220.6 198.1 220.3 196.7ZM575.1 178.5C579.2 161.4 584.8 154.0 593.6 154.0L596.0 154.0L592.9 147.8C591.2 144.3 588.2 138.9 586.3 135.7L582.8 129.9L580.5 132.0C578.1 134.3 577.0 138.9 570.0 178.5C566.5 198.4 566.5 198.8 568.7 201.3C570.4 203.1 570.5 202.9 571.7 195.4C572.4 191.0 574.0 183.4 575.1 178.5ZM244.5 183.0C240.8 181.9 237.5 179.0 235.5 175.0C233.3 170.8 230.0 150.4 229.3 136.9C228.3 118.2 229.9 116.2 256.1 103.5C261.2 101.0 265.7 98.4 266.2 97.7C266.6 97.1 267.0 93.5 267.0 89.8C267.0 83.6 267.2 83.0 270.1 80.6C272.8 78.3 274.0 78.0 281.4 78.0C290.7 78.0 293.4 79.2 295.6 84.6C299.1 93.0 296.4 103.6 289.7 108.0C286.1 110.3 285.9 110.7 286.4 114.0C290.5 138.3 290.9 160.2 287.5 168.7C283.8 178.0 273.7 183.0 257.5 183.6C252.0 183.8 246.1 183.5 244.5 183.0ZM536.1 166.4L538.5 163.8L532.0 157.7C528.4 154.3 522.7 150.0 519.2 148.2L513.0 144.9L513.0 149.7C513.1 159.3 517.4 164.9 526.7 167.5C533.3 169.3 533.4 169.3 536.1 166.4ZM265.3 165.2C268.1 164.0 270.7 161.9 271.9 160.0C274.0 156.5 275.6 147.2 274.3 145.9C273.0 144.6 261.5 151.6 254.9 157.7L248.9 163.3L251.2 165.7C253.9 168.6 257.9 168.5 265.3 165.2ZM430.8 161.6L436.8 155.2L445.4 129.2L454.1 103.1L452.1 99.3C448.2 91.6 448.8 91.9 431.9 90.4C408.2 88.3 353.5 89.0 341.5 91.5C340.3 91.7 338.3 94.1 336.6 97.3L333.7 102.6L342.0 127.6C350.9 154.6 351.7 156.4 358.2 162.7L362.5 167.0L385.0 167.3C397.4 167.4 411.4 167.6 416.1 167.8L424.8 168.0L430.8 161.6ZM263.2 130.7C271.9 126.6 272.0 126.5 271.5 123.5C270.1 116.5 270.8 116.6 259.7 122.1C246.1 128.9 245.0 130.0 245.0 136.7L245.0 142.0L249.7 138.4C252.2 136.5 258.3 133.0 263.2 130.7ZM542.9 134.7C543.0 130.9 540.2 128.6 528.7 122.5C518.3 117.1 517.6 117.1 516.7 123.2L516.1 127.0L523.4 130.3C527.4 132.2 533.1 135.3 536.1 137.4C542.0 141.3 542.8 141.0 542.9 134.7ZM367.6 73.9C392.0 72.8 436.6 73.8 445.9 75.6C448.5 76.1 448.8 75.8 452.4 67.6C454.6 62.8 456.1 58.8 455.9 58.6C455.0 57.7 428.4 54.0 415.5 52.9C393.1 51.0 358.3 52.9 337.0 57.1C333.7 57.7 331.0 58.4 331.0 58.5C331.0 58.6 332.8 62.6 335.1 67.4C337.8 73.2 339.6 76.0 340.5 75.6C341.2 75.4 353.4 74.6 367.6 73.9Z"/></svg>RAgents</a>
|
|
127
|
+
<nav id="main-navigation" aria-label="Main navigation">
|
|
128
|
+
<a href="index.html">Product</a>
|
|
129
|
+
<a href="guide.html" aria-current="page">Guide</a>
|
|
130
|
+
<a class="nav-github" href="https://github.com/SchlenkR/RAgents" aria-label="GitHub"><svg class="gh-icon" viewBox="0 0 24 24" aria-hidden="true"><path fill="currentColor" d="M12 2a10 10 0 0 0-3.2 19.5c.5.1.7-.2.7-.5v-1.7c-2.8.6-3.4-1.3-3.4-1.3-.5-1.2-1.1-1.5-1.1-1.5-.9-.6.1-.6.1-.6 1 .1 1.5 1 1.5 1 .9 1.6 2.4 1.1 3 .9.1-.7.4-1.1.6-1.4-2.2-.3-4.6-1.1-4.6-5 0-1.1.4-2 1-2.7-.1-.3-.4-1.3.1-2.7 0 0 .8-.3 2.8 1a9.6 9.6 0 0 1 5 0c1.9-1.3 2.8-1 2.8-1 .5 1.4.2 2.4.1 2.7.6.7 1 1.6 1 2.7 0 3.9-2.4 4.7-4.6 5 .4.3.7.9.7 1.9V21c0 .3.2.6.7.5A10 10 0 0 0 12 2Z"/></svg><span class="gh-label">GitHub</span></a>
|
|
131
|
+
</nav>
|
|
132
|
+
<button class="nav-menu" type="button" aria-expanded="false" aria-controls="main-navigation"><span data-menu-label>Menu</span><svg viewBox="0 0 24 24" aria-hidden="true"><path d="m6 9 6 6 6-6"/></svg></button>
|
|
133
|
+
</header><main class="shell" id="main"><div class="guide-layout"><aside class="guide-sidebar"><nav class="guide-chapters" aria-label="Guide navigation"><a href="guide.html">Overview</a><div class="guide-nav-group"><p>Understand</p><a href="guide-ideas.html">Core ideas</a><a href="guide-runtime.html">Actors and messages</a></div><div class="guide-nav-group"><p>Use</p><a href="guide-getting-started.html">Get started</a><a href="guide-clients.html">Web and VS Code</a><a href="guide-distributed.html" aria-current="page">Distributed work</a></div><div class="guide-nav-group"><p>Build</p><a href="guide-functions.html">Work with TypeScript</a><a href="guide-programs.html">Build mini-apps</a><a href="guide-plugins.html">Plugins and skills</a></div><div class="guide-nav-group"><p>Access</p><a href="guide-access.html">Assign permissions</a></div></nav></aside><details class="guide-mobile-nav"><summary>Guide: Distributed work</summary><nav class="guide-chapters" aria-label="Guide navigation"><a href="guide.html">Overview</a><div class="guide-nav-group"><p>Understand</p><a href="guide-ideas.html">Core ideas</a><a href="guide-runtime.html">Actors and messages</a></div><div class="guide-nav-group"><p>Use</p><a href="guide-getting-started.html">Get started</a><a href="guide-clients.html">Web and VS Code</a><a href="guide-distributed.html" aria-current="page">Distributed work</a></div><div class="guide-nav-group"><p>Build</p><a href="guide-functions.html">Work with TypeScript</a><a href="guide-programs.html">Build mini-apps</a><a href="guide-plugins.html">Plugins and skills</a></div><div class="guide-nav-group"><p>Access</p><a href="guide-access.html">Assign permissions</a></div></nav></details><article class="guide-body"><header class="guide-title"><p class="eyebrow"><a href="guide.html">Guide</a></p><h1>Distributed work</h1><p>Run the host locally or remotely, keep tools beside the project, and move runs between servers.</p></header><details class="guide-page-nav"><summary>On this page</summary><nav aria-label="On this page"><a href="#work-without-a-checkout">Work without a checkout</a><a href="#connect-to-a-server">Connect to a server</a><a href="#transfer-a-run">Transfer a run</a><a href="#work-on-windows">Work on Windows</a></nav></details><h2 id="work-without-a-checkout">Work without a checkout</h2>
|
|
134
|
+
<p>Using RAgents does not require a repository. <code>pnpm build:package</code> creates the npm package
|
|
135
|
+
<code>@schlenkr/ragents</code> from this checkout in <code>dist/ragents</code>; with <code>--pack</code>, it also creates
|
|
136
|
+
<code>dist/schlenkr-ragents-<version>.tgz</code>. The package contains the server, engine, executor, all
|
|
137
|
+
plugins, and the scripts behind its subcommands. From the documentation it includes only
|
|
138
|
+
<code>LICENSE</code> and a separate English <code>README.md</code> for the npm listing, sourced from
|
|
139
|
+
<code>scripts/package/README.md</code>. It carries the finished web interface and every built-in plugin as a
|
|
140
|
+
bundle, so nothing is built on the user's machine. Its <code>package.json</code> records the source commit as
|
|
141
|
+
<code>ragents.hostVersion</code>. Install it like any other npm package:</p>
|
|
142
|
+
<pre><code class="language-sh">npm install -g @schlenkr/ragents
|
|
143
|
+
RAGENTS_TOKEN=<token> ragents connect https://ragents.example.com
|
|
144
|
+
</code></pre>
|
|
145
|
+
<p>Only Node 22 is required: no Git, pnpm, <code>pnpm install</code>, or build. The subcommands are:</p>
|
|
146
|
+
<ul>
|
|
147
|
+
<li><code>ragents run <folder> "<task>"</code>, <code>send</code>, <code>journal</code>, and <code>stop</code> let an agent work on a project.</li>
|
|
148
|
+
<li><code>ragents connect <server-url></code> fetches a client profile with its plugin bundles, provisions
|
|
149
|
+
tools, and starts a server. It supports <code>--port <n></code>, <code>--clean</code>, and <code>--no-start</code>, like
|
|
150
|
+
<code>pnpm connect</code>.</li>
|
|
151
|
+
<li><code>ragents start <profile|path></code> starts an included profile (<code>core</code>, <code>developer</code>, or <code>showcase</code>),
|
|
152
|
+
a custom <code>ragents.config.<profile>.ts</code> anywhere on disk, or a previously fetched version.</li>
|
|
153
|
+
<li><code>ragents provision [<profile>|--workspace]</code> installs only the required tools.</li>
|
|
154
|
+
<li><code>ragents workspace-client <server-url> [folders ...]</code> registers this machine as a workspace.</li>
|
|
155
|
+
<li><code>ragents plugin build <folder...></code> builds plugin sources into bundles, with type checks; see
|
|
156
|
+
<a href="guide-plugins.html">Build and ship a plugin</a>.</li>
|
|
157
|
+
</ul>
|
|
158
|
+
<p>The package runs like the checkout, with the same files in the same places and TypeScript loaded
|
|
159
|
+
at runtime through <code>tsx</code>. On first use, the command creates the <code>node_modules/@ragents/*</code>
|
|
160
|
+
links that pnpm supplies in a checkout. This is idempotent and requires no elevated privileges.</p>
|
|
161
|
+
<h3 id="custom-profiles-and-plugins">Custom profiles and plugins</h3>
|
|
162
|
+
<p>A developer will usually keep a custom profile and plugins somewhere on disk. <code>ragents start <path></code> starts it from the package, while <code>ragents run --profile <path></code> runs it without an
|
|
163
|
+
interface for an agent. Both resolve the path in the same way:</p>
|
|
164
|
+
<pre><code class="language-sh">ragents start ~/projects/mine/ragents.config.mine.ts
|
|
165
|
+
ragents run ~/projects/mine "Build this" --profile ~/projects/mine/ragents.config.mine.ts
|
|
166
|
+
</code></pre>
|
|
167
|
+
<p>The file must be named <code>ragents.config.<profile>.ts</code>; that name becomes the profile name. Startup
|
|
168
|
+
provisions the plugin tools and then starts the server. Nothing is built: the package carries the
|
|
169
|
+
finished web interface, which is the same for every profile, and the server loads the web halves
|
|
170
|
+
of the profile's plugins from their bundles at runtime.</p>
|
|
171
|
+
<p>The server loads plugins only as bundles. The package carries its built-in plugins as bundles
|
|
172
|
+
under <code>bundles/</code>; a custom plugin is built first with <code>ragents plugin build <source-folder...></code>,
|
|
173
|
+
which writes <code>./dist/plugins/<custom-plugin-id></code> by default. The package brings everything this
|
|
174
|
+
build needs, including the type checks against the host API. The profile names that bundle by a
|
|
175
|
+
path relative to the profile file, such as <code>"./dist/plugins/<custom-plugin-id>"</code>; a source folder
|
|
176
|
+
in the profile stops the start and names the build command. A bundle imports from the host only
|
|
177
|
+
the modules of the host API list, resolved by <code>apps/server/src/host-resolution-hooks.mjs</code>, and
|
|
178
|
+
must be rebuilt when the host API changes. Its <code>web/</code> half is served under <code>/plugins/<id>/web/</code>
|
|
179
|
+
and loaded by the browser; its Tailwind classes join the one stylesheet the server compiles at
|
|
180
|
+
startup. The build tool bundles libraries such as <code>lucide-react</code> from the host, so the package
|
|
181
|
+
also includes the dependencies declared by <code>apps/web/package.json</code>. The host does not check
|
|
182
|
+
whether such a bundle still matches its sources; rebuild it before starting.</p>
|
|
183
|
+
<p>An external plugin project can use a <code>host</code> symlink to access host tools. With a package
|
|
184
|
+
installation, that link points to the package instead of a checkout. Set <code>RAGENTS_HOST</code> to the
|
|
185
|
+
appropriate location:</p>
|
|
186
|
+
<pre><code class="language-sh">export RAGENTS_HOST="$(npm root -g)/@schlenkr/ragents"
|
|
187
|
+
</code></pre>
|
|
188
|
+
<p>A script in the external repository can create the <code>host</code> symlink from that value. If that script
|
|
189
|
+
identifies a checkout by <code>pnpm-workspace.yaml</code>, it should test for something the package shares
|
|
190
|
+
instead, such as <code>apps/server/src/main.ts</code> beside <code>package.json</code>. Start with <code>ragents start <path-to-profile></code>;
|
|
191
|
+
the symlink is used only by scripts and tsconfig files in the external repository.</p>
|
|
192
|
+
<p>The VS Code extension starts the same profile from the same package. Set <code>ragents.hostPath</code> to
|
|
193
|
+
the package directory (<code><npm-prefix>/lib/node_modules/@schlenkr/ragents</code>) rather than a checkout.
|
|
194
|
+
If the setting is empty and the extension is not running from a checkout, it fetches the package
|
|
195
|
+
itself as described under Run panel and VS Code extension.</p>
|
|
196
|
+
<h2 id="connect-to-a-server">Connect to a server</h2>
|
|
197
|
+
<p>A developer can run RAgents locally with the profile and models of a central server. This
|
|
198
|
+
requires a local host with the same host API as that server: either the <code>@schlenkr/ragents</code>
|
|
199
|
+
package, which needs only Node, or this checkout with Git, Node, pnpm, <code>pnpm install</code>,
|
|
200
|
+
<code>pnpm build:agent</code>, <code>pnpm build:plugins</code>, and <code>pnpm build:web</code>. It also requires a personal token
|
|
201
|
+
for a user in the server profile with <code>profile.fetch</code> and <code>models.use</code> permissions:</p>
|
|
202
|
+
<pre><code class="language-sh">RAGENTS_TOKEN=<token> ragents connect https://ragents.example.com
|
|
203
|
+
RAGENTS_TOKEN=<token> ragents connect https://ragents.example.com --port 4720 --clean
|
|
204
|
+
RAGENTS_TOKEN=<token> ragents connect https://ragents.example.com --no-start
|
|
205
|
+
</code></pre>
|
|
206
|
+
<p>In a checkout, the same command is <code>pnpm connect <server-url></code> and uses the same implementation.</p>
|
|
207
|
+
<p><code>connect</code> fetches the client-profile description and checks the local host before it downloads
|
|
208
|
+
anything. The host must offer the host API number the server's bundles were built against, and it
|
|
209
|
+
must have a built-in bundle for every plugin the profile names by ID. The same commit is not
|
|
210
|
+
required. On a mismatch, <code>connect</code> stops and names the fix: <code>npm install -g @schlenkr/ragents@<version></code> for the package, where the server supplies the version, or the
|
|
211
|
+
server's commit plus <code>pnpm build:plugins</code> and <code>pnpm build:web</code> in a checkout. It then downloads
|
|
212
|
+
the archive, which holds only the profile file and the finished bundles it names by path,
|
|
213
|
+
verifies its SHA-256, stores the version under
|
|
214
|
+
<code>~/.local/share/ragents/remote/<host>/<profile>/profiles/<version>/</code>, and starts the server with
|
|
215
|
+
that profile. Data goes to <code>~/.local/share/ragents/remote/<host>/<profile>/data/</code>, and the web
|
|
216
|
+
interface is the local host's own; nothing is built or installed on the developer machine.
|
|
217
|
+
Existing versions are not downloaded again. <code>--clean</code> removes older ones, <code>--no-start</code> stops after
|
|
218
|
+
fetching and reports the profile and data paths, and <code>--port <n></code> overrides the profile port.
|
|
219
|
+
<code>ragents start <profile></code> can restart an included profile or the latest fetched version without
|
|
220
|
+
contacting the server. Personal <code>env(...)</code> values from the client profile, such as the relay
|
|
221
|
+
token, must exist in the shell. Between download and startup, <code>connect</code> provisions language
|
|
222
|
+
servers and the browser; a prerequisite it cannot install, such as <code>dotnet</code> or a separate Chrome,
|
|
223
|
+
stops with instructions.</p>
|
|
224
|
+
<p>The server needs <code>ragents.profile-distribution</code> with <code>CLIENT_PROFILE_FILE</code>, plus
|
|
225
|
+
<code>ragents.model-relay</code> with <code>MODEL_ALIASES</code> in its <code>host</code> section for models. Plugins the client profile names by path
|
|
226
|
+
must be bundles built with <code>ragents plugin build</code>; the server checks them at startup. Users
|
|
227
|
+
receive <code>token: env("...")</code> and the two permissions. Relay responses and all client-profile
|
|
228
|
+
content, including prompts, skills, run scripts, bundles, and configuration, are present on the
|
|
229
|
+
developer machine. Only the provider, actual model, and key remain secret. The relay replaces
|
|
230
|
+
<code>model</code> with the alias and removes <code>provider</code>, so model context, journal, catalog, and interface
|
|
231
|
+
expose only the alias.</p>
|
|
232
|
+
<h3 id="common-first-run-pitfalls">Common first-run pitfalls</h3>
|
|
233
|
+
<ul>
|
|
234
|
+
<li>Two environment variables, often with the same value, are needed: <code>connect</code> reads
|
|
235
|
+
<code>RAGENTS_TOKEN</code>, while the name used by <code>RELAY_TOKEN: env("...")</code> must also be set.</li>
|
|
236
|
+
<li><code>COMPACTION_PROVIDER: "relay"</code> with an empty <code>COMPACTION_MODEL</code> can start without a text model
|
|
237
|
+
at reasoning level <code>off</code>; automatic titles stay disabled and Settings explains why. An
|
|
238
|
+
explicitly named alias must be such a model or startup fails.</li>
|
|
239
|
+
<li>The relay must be reachable when the local server starts because it fetches the alias catalog
|
|
240
|
+
once. Alias changes require restarting the local server.</li>
|
|
241
|
+
<li>Revoking access affects the next model request immediately, not the running server process.
|
|
242
|
+
The run then ends as failed and records the relay response in the journal.</li>
|
|
243
|
+
<li>Rejected requests appear in the relay server's <code>logs/server.log</code>, not <code>relay.log</code>. The latter
|
|
244
|
+
records only forwarded calls with user, alias, target, status, and token count.</li>
|
|
245
|
+
<li>The archive carries no web interface. After updating the host package, a fetched version
|
|
246
|
+
starts with the new web interface as long as the host API stays the same. Otherwise the start
|
|
247
|
+
refuses the fetched bundles, and <code>connect</code> names the version to install.</li>
|
|
248
|
+
</ul>
|
|
249
|
+
<h2 id="transfer-a-run">Transfer a run</h2>
|
|
250
|
+
<p>A run can move from one server to another and continue there, for example from a notebook to an
|
|
251
|
+
always-on machine or from a central server to a developer for local inspection.</p>
|
|
252
|
+
<pre><code class="language-sh">RAGENTS_TOKEN=<token> pnpm run-transfer http://localhost:4723 http://server.example:4724 <runId>
|
|
253
|
+
RAGENTS_TOKEN=<token> pnpm run-transfer <source> <target> <runId> --workspace /path/to/project
|
|
254
|
+
</code></pre>
|
|
255
|
+
<p>The script exports the run from the source with <code>ragents.runs.export</code> and imports it on the target
|
|
256
|
+
with <code>ragents.runs.import</code>. If each side uses a different token, set <code>RAGENTS_SOURCE_TOKEN</code> and
|
|
257
|
+
<code>RAGENTS_TARGET_TOKEN</code>. The transfer includes the journal and payloads, model contexts under
|
|
258
|
+
<code>chat/</code>, actor programs, and all plugin storage for the run, including <code>ragents.documents</code> files
|
|
259
|
+
and the new folder of a run that works on the server. A folder on a workstation stays there, and the
|
|
260
|
+
run keeps its binding to that workstation. Running processes, language servers, and
|
|
261
|
+
browsers are not transferred; they are recreated on the target when next used.</p>
|
|
262
|
+
<p>The transfer enforces these prerequisites:</p>
|
|
263
|
+
<ul>
|
|
264
|
+
<li>Both servers use the same host version and workspace executor. There is no override.</li>
|
|
265
|
+
<li>The run is stopped, with no active turn or waiting input.</li>
|
|
266
|
+
<li>Its ID is unused on the target. An existing run, folder, or archive entry rejects the import.</li>
|
|
267
|
+
<li>A run bound to a source project folder needs <code>--workspace <path></code> pointing to an existing
|
|
268
|
+
target folder, given as an absolute path on the target server. A workspace binding is retained; that workspace reconnects to the target with
|
|
269
|
+
the same ID and as the run owner, or anonymously for an ownerless run.</li>
|
|
270
|
+
<li>The archive must stay below 16 MiB because it travels as Base64 through the message layer.
|
|
271
|
+
A workspace containing <code>node_modules</code> will exceed this; an existing folder on the server usually will not.</li>
|
|
272
|
+
</ul>
|
|
273
|
+
<p>Export copies the run. It remains on the source and must be deleted there explicitly after a
|
|
274
|
+
real move, otherwise two journals with the same ID diverge. On the target, the run appears
|
|
275
|
+
stopped and continues with the next message. Its model context still contains absolute source
|
|
276
|
+
paths; reusing one fails at the workspace boundary, while a relative path reaches the target.
|
|
277
|
+
After transfer, inspect the journal with <code>pnpm driver journal <runId></code> and plugin storage under
|
|
278
|
+
<code>${DATA_DIR}/sessions/<runId>/plugins/</code>.</p>
|
|
279
|
+
<h2 id="work-on-windows">Work on Windows</h2>
|
|
280
|
+
<p>The local host and workspace also run on Windows. Requirements are:</p>
|
|
281
|
+
<ul>
|
|
282
|
+
<li><strong>The VS Code extension for Windows</strong> brings its own bash. The Marketplace delivers a
|
|
283
|
+
<code>win32-x64</code> or <code>win32-arm64</code> build that contains a slim bash with the GNU tools (coreutils,
|
|
284
|
+
<code>grep</code>, <code>sed</code>, <code>awk</code>, <code>find</code>, <code>diff</code>, <code>patch</code>, <code>tar</code>, <code>unzip</code>, <code>cygpath</code> and more), taken from
|
|
285
|
+
a fixed Git for Windows release. The <code>bash</code> tool uses only this bash, for the workspace and for
|
|
286
|
+
the local host; an installed Git Bash or a <code>bash.exe</code> on <code>PATH</code> is never used. PowerShell and
|
|
287
|
+
<code>cmd.exe</code> are not used either.</li>
|
|
288
|
+
<li><strong>Git</strong> is your own <code>git.exe</code> on <code>PATH</code>, for example from Git for Windows. The bundled bash
|
|
289
|
+
contains no git, so your login works as usual: Git Credential Manager, <code>~/.gitconfig</code> and
|
|
290
|
+
<code>~/.ssh</code>. On your own machine the bash inherits your whole environment, except the variables of
|
|
291
|
+
VS Code itself and <code>BASH_ENV</code>/<code>ENV</code>.</li>
|
|
292
|
+
<li><strong>Without the extension</strong> (<code>ragents start</code> or <code>ragents workspace-client</code> from the npm package)
|
|
293
|
+
set <code>RAGENTS_BASH</code> to the <code>bash.exe</code> of such a bundle, for example
|
|
294
|
+
<code><extension folder>\dist\bash\win32-x64\usr\bin\bash.exe</code>. Without it every <code>bash</code> call fails
|
|
295
|
+
and names what is missing.</li>
|
|
296
|
+
<li><strong>Node.js</strong> is enough with <code>@schlenkr/ragents</code>. A checkout additionally needs <strong>pnpm</strong>, and
|
|
297
|
+
<code>pnpm install</code>, <code>pnpm build:agent</code>, and <code>scripts/start.sh</code> need a bash of your own, such as
|
|
298
|
+
Git Bash.</li>
|
|
299
|
+
<li>The <strong>.NET SDK</strong> is required when the profile includes Roslyn or FSAC. Provisioning downloads
|
|
300
|
+
the language servers; the TypeScript server comes from the host directory.</li>
|
|
301
|
+
<li>A <strong>server</strong> on Windows has no process sandbox. Its profile file must switch it off explicitly
|
|
302
|
+
with <code>PROCESS_SANDBOX: "off"</code> in the <code>ragents.workspace</code> section, otherwise startup fails. A
|
|
303
|
+
Windows workstation connected to a server needs nothing, because the sandbox applies only to
|
|
304
|
+
the server.</li>
|
|
305
|
+
</ul>
|
|
306
|
+
<p>The data directory is <code>%LOCALAPPDATA%\ragents\<profile></code> and server-provided profiles use
|
|
307
|
+
<code>%LOCALAPPDATA%\ragents\remote\<host>\<profile>\</code>. <code>DATA_DIR</code> overrides this. Startup fails when
|
|
308
|
+
<code>LOCALAPPDATA</code> is absent. Unix permissions 0700 and 0711 do not apply on Windows, where isolation
|
|
309
|
+
per run depends on the user account.</p>
|
|
310
|
+
<p>Windows has no process group for command termination, so RAgents ends the process tree with
|
|
311
|
+
<code>taskkill /T /F</code>. This is forceful and has no grace period. There is also no process table: for
|
|
312
|
+
runs using a Windows workspace, the process rail explains this limitation. Stopping a run still
|
|
313
|
+
terminates Bash process trees, while a deliberately detached service continues. Workspace tools
|
|
314
|
+
do not depend on the process rail.</p>
|
|
315
|
+
<p>Windows support has not yet been exercised on a physical Windows machine. It is implemented and
|
|
316
|
+
covered by unit tests that simulate the platform. A first real run should verify <code>pnpm connect</code>,
|
|
317
|
+
<code>read</code>, <code>edit</code>, <code>bash</code> output and cancellation, diagnostics, and a workspace through
|
|
318
|
+
<code>pnpm workspace-client</code>, and with the bundled bash <code>git fetch</code> and <code>git push</code> over HTTPS with Git
|
|
319
|
+
Credential Manager and over SSH.</p>
|
|
320
|
+
<p class="guide-source">Source: <a href="https://github.com/SchlenkR/RAgents/blob/main/docs/operations.md">docs/operations.md</a>. <a href="guide-distributed.md">This chapter as Markdown</a>.</p><p><a href="guide-access.html">Assign tokens and permissions</a></p><nav class="guide-next" aria-label="Continue reading"><a href="guide-clients.html">Previous: Web and VS Code</a><a href="guide-functions.html">Next: Work with TypeScript</a></nav></article></div></main><footer class="shell"><p>Generated from public documentation. Rebuild with <code>pnpm generate:homepage</code>. Verify with <code>pnpm check:homepage</code>.</p><nav aria-label="More pages"><a href="index.html">Homepage</a><a href="guide.html">Guide</a></nav></footer></body></html>
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
# Distributed work
|
|
2
|
+
|
|
3
|
+
Run the host locally or remotely, keep tools beside the project, and move runs between servers.
|
|
4
|
+
|
|
5
|
+
## Work without a checkout
|
|
6
|
+
|
|
7
|
+
Using RAgents does not require a repository. `pnpm build:package` creates the npm package
|
|
8
|
+
`@schlenkr/ragents` from this checkout in `dist/ragents`; with `--pack`, it also creates
|
|
9
|
+
`dist/schlenkr-ragents-<version>.tgz`. The package contains the server, engine, executor, all
|
|
10
|
+
plugins, and the scripts behind its subcommands. From the documentation it includes only
|
|
11
|
+
`LICENSE` and a separate English `README.md` for the npm listing, sourced from
|
|
12
|
+
`scripts/package/README.md`. It carries the finished web interface and every built-in plugin as a
|
|
13
|
+
bundle, so nothing is built on the user's machine. Its `package.json` records the source commit as
|
|
14
|
+
`ragents.hostVersion`. Install it like any other npm package:
|
|
15
|
+
|
|
16
|
+
```sh
|
|
17
|
+
npm install -g @schlenkr/ragents
|
|
18
|
+
RAGENTS_TOKEN=<token> ragents connect https://ragents.example.com
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Only Node 22 is required: no Git, pnpm, `pnpm install`, or build. The subcommands are:
|
|
22
|
+
|
|
23
|
+
- `ragents run <folder> "<task>"`, `send`, `journal`, and `stop` let an agent work on a project.
|
|
24
|
+
- `ragents connect <server-url>` fetches a client profile with its plugin bundles, provisions
|
|
25
|
+
tools, and starts a server. It supports `--port <n>`, `--clean`, and `--no-start`, like
|
|
26
|
+
`pnpm connect`.
|
|
27
|
+
- `ragents start <profile|path>` starts an included profile (`core`, `developer`, or `showcase`),
|
|
28
|
+
a custom `ragents.config.<profile>.ts` anywhere on disk, or a previously fetched version.
|
|
29
|
+
- `ragents provision [<profile>|--workspace]` installs only the required tools.
|
|
30
|
+
- `ragents workspace-client <server-url> [folders ...]` registers this machine as a workspace.
|
|
31
|
+
- `ragents plugin build <folder...>` builds plugin sources into bundles, with type checks; see
|
|
32
|
+
[Build and ship a plugin](guide-plugins.html).
|
|
33
|
+
|
|
34
|
+
The package runs like the checkout, with the same files in the same places and TypeScript loaded
|
|
35
|
+
at runtime through `tsx`. On first use, the command creates the `node_modules/@ragents/*`
|
|
36
|
+
links that pnpm supplies in a checkout. This is idempotent and requires no elevated privileges.
|
|
37
|
+
|
|
38
|
+
### Custom profiles and plugins
|
|
39
|
+
|
|
40
|
+
A developer will usually keep a custom profile and plugins somewhere on disk. `ragents start
|
|
41
|
+
<path>` starts it from the package, while `ragents run --profile <path>` runs it without an
|
|
42
|
+
interface for an agent. Both resolve the path in the same way:
|
|
43
|
+
|
|
44
|
+
```sh
|
|
45
|
+
ragents start ~/projects/mine/ragents.config.mine.ts
|
|
46
|
+
ragents run ~/projects/mine "Build this" --profile ~/projects/mine/ragents.config.mine.ts
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
The file must be named `ragents.config.<profile>.ts`; that name becomes the profile name. Startup
|
|
50
|
+
provisions the plugin tools and then starts the server. Nothing is built: the package carries the
|
|
51
|
+
finished web interface, which is the same for every profile, and the server loads the web halves
|
|
52
|
+
of the profile's plugins from their bundles at runtime.
|
|
53
|
+
|
|
54
|
+
The server loads plugins only as bundles. The package carries its built-in plugins as bundles
|
|
55
|
+
under `bundles/`; a custom plugin is built first with `ragents plugin build <source-folder...>`,
|
|
56
|
+
which writes `./dist/plugins/<custom-plugin-id>` by default. The package brings everything this
|
|
57
|
+
build needs, including the type checks against the host API. The profile names that bundle by a
|
|
58
|
+
path relative to the profile file, such as `"./dist/plugins/<custom-plugin-id>"`; a source folder
|
|
59
|
+
in the profile stops the start and names the build command. A bundle imports from the host only
|
|
60
|
+
the modules of the host API list, resolved by `apps/server/src/host-resolution-hooks.mjs`, and
|
|
61
|
+
must be rebuilt when the host API changes. Its `web/` half is served under `/plugins/<id>/web/`
|
|
62
|
+
and loaded by the browser; its Tailwind classes join the one stylesheet the server compiles at
|
|
63
|
+
startup. The build tool bundles libraries such as `lucide-react` from the host, so the package
|
|
64
|
+
also includes the dependencies declared by `apps/web/package.json`. The host does not check
|
|
65
|
+
whether such a bundle still matches its sources; rebuild it before starting.
|
|
66
|
+
|
|
67
|
+
An external plugin project can use a `host` symlink to access host tools. With a package
|
|
68
|
+
installation, that link points to the package instead of a checkout. Set `RAGENTS_HOST` to the
|
|
69
|
+
appropriate location:
|
|
70
|
+
|
|
71
|
+
```sh
|
|
72
|
+
export RAGENTS_HOST="$(npm root -g)/@schlenkr/ragents"
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
A script in the external repository can create the `host` symlink from that value. If that script
|
|
76
|
+
identifies a checkout by `pnpm-workspace.yaml`, it should test for something the package shares
|
|
77
|
+
instead, such as `apps/server/src/main.ts` beside `package.json`. Start with `ragents start <path-to-profile>`;
|
|
78
|
+
the symlink is used only by scripts and tsconfig files in the external repository.
|
|
79
|
+
|
|
80
|
+
The VS Code extension starts the same profile from the same package. Set `ragents.hostPath` to
|
|
81
|
+
the package directory (`<npm-prefix>/lib/node_modules/@schlenkr/ragents`) rather than a checkout.
|
|
82
|
+
If the setting is empty and the extension is not running from a checkout, it fetches the package
|
|
83
|
+
itself as described under Run panel and VS Code extension.
|
|
84
|
+
|
|
85
|
+
## Connect to a server
|
|
86
|
+
|
|
87
|
+
A developer can run RAgents locally with the profile and models of a central server. This
|
|
88
|
+
requires a local host with the same host API as that server: either the `@schlenkr/ragents`
|
|
89
|
+
package, which needs only Node, or this checkout with Git, Node, pnpm, `pnpm install`,
|
|
90
|
+
`pnpm build:agent`, `pnpm build:plugins`, and `pnpm build:web`. It also requires a personal token
|
|
91
|
+
for a user in the server profile with `profile.fetch` and `models.use` permissions:
|
|
92
|
+
|
|
93
|
+
```sh
|
|
94
|
+
RAGENTS_TOKEN=<token> ragents connect https://ragents.example.com
|
|
95
|
+
RAGENTS_TOKEN=<token> ragents connect https://ragents.example.com --port 4720 --clean
|
|
96
|
+
RAGENTS_TOKEN=<token> ragents connect https://ragents.example.com --no-start
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
In a checkout, the same command is `pnpm connect <server-url>` and uses the same implementation.
|
|
100
|
+
|
|
101
|
+
`connect` fetches the client-profile description and checks the local host before it downloads
|
|
102
|
+
anything. The host must offer the host API number the server's bundles were built against, and it
|
|
103
|
+
must have a built-in bundle for every plugin the profile names by ID. The same commit is not
|
|
104
|
+
required. On a mismatch, `connect` stops and names the fix: `npm install -g
|
|
105
|
+
@schlenkr/ragents@<version>` for the package, where the server supplies the version, or the
|
|
106
|
+
server's commit plus `pnpm build:plugins` and `pnpm build:web` in a checkout. It then downloads
|
|
107
|
+
the archive, which holds only the profile file and the finished bundles it names by path,
|
|
108
|
+
verifies its SHA-256, stores the version under
|
|
109
|
+
`~/.local/share/ragents/remote/<host>/<profile>/profiles/<version>/`, and starts the server with
|
|
110
|
+
that profile. Data goes to `~/.local/share/ragents/remote/<host>/<profile>/data/`, and the web
|
|
111
|
+
interface is the local host's own; nothing is built or installed on the developer machine.
|
|
112
|
+
Existing versions are not downloaded again. `--clean` removes older ones, `--no-start` stops after
|
|
113
|
+
fetching and reports the profile and data paths, and `--port <n>` overrides the profile port.
|
|
114
|
+
`ragents start <profile>` can restart an included profile or the latest fetched version without
|
|
115
|
+
contacting the server. Personal `env(...)` values from the client profile, such as the relay
|
|
116
|
+
token, must exist in the shell. Between download and startup, `connect` provisions language
|
|
117
|
+
servers and the browser; a prerequisite it cannot install, such as `dotnet` or a separate Chrome,
|
|
118
|
+
stops with instructions.
|
|
119
|
+
|
|
120
|
+
The server needs `ragents.profile-distribution` with `CLIENT_PROFILE_FILE`, plus
|
|
121
|
+
`ragents.model-relay` with `MODEL_ALIASES` in its `host` section for models. Plugins the client profile names by path
|
|
122
|
+
must be bundles built with `ragents plugin build`; the server checks them at startup. Users
|
|
123
|
+
receive `token: env("...")` and the two permissions. Relay responses and all client-profile
|
|
124
|
+
content, including prompts, skills, run scripts, bundles, and configuration, are present on the
|
|
125
|
+
developer machine. Only the provider, actual model, and key remain secret. The relay replaces
|
|
126
|
+
`model` with the alias and removes `provider`, so model context, journal, catalog, and interface
|
|
127
|
+
expose only the alias.
|
|
128
|
+
|
|
129
|
+
### Common first-run pitfalls
|
|
130
|
+
|
|
131
|
+
- Two environment variables, often with the same value, are needed: `connect` reads
|
|
132
|
+
`RAGENTS_TOKEN`, while the name used by `RELAY_TOKEN: env("...")` must also be set.
|
|
133
|
+
- `COMPACTION_PROVIDER: "relay"` with an empty `COMPACTION_MODEL` can start without a text model
|
|
134
|
+
at reasoning level `off`; automatic titles stay disabled and Settings explains why. An
|
|
135
|
+
explicitly named alias must be such a model or startup fails.
|
|
136
|
+
- The relay must be reachable when the local server starts because it fetches the alias catalog
|
|
137
|
+
once. Alias changes require restarting the local server.
|
|
138
|
+
- Revoking access affects the next model request immediately, not the running server process.
|
|
139
|
+
The run then ends as failed and records the relay response in the journal.
|
|
140
|
+
- Rejected requests appear in the relay server's `logs/server.log`, not `relay.log`. The latter
|
|
141
|
+
records only forwarded calls with user, alias, target, status, and token count.
|
|
142
|
+
- The archive carries no web interface. After updating the host package, a fetched version
|
|
143
|
+
starts with the new web interface as long as the host API stays the same. Otherwise the start
|
|
144
|
+
refuses the fetched bundles, and `connect` names the version to install.
|
|
145
|
+
|
|
146
|
+
## Transfer a run
|
|
147
|
+
|
|
148
|
+
A run can move from one server to another and continue there, for example from a notebook to an
|
|
149
|
+
always-on machine or from a central server to a developer for local inspection.
|
|
150
|
+
|
|
151
|
+
```sh
|
|
152
|
+
RAGENTS_TOKEN=<token> pnpm run-transfer http://localhost:4723 http://server.example:4724 <runId>
|
|
153
|
+
RAGENTS_TOKEN=<token> pnpm run-transfer <source> <target> <runId> --workspace /path/to/project
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
The script exports the run from the source with `ragents.runs.export` and imports it on the target
|
|
157
|
+
with `ragents.runs.import`. If each side uses a different token, set `RAGENTS_SOURCE_TOKEN` and
|
|
158
|
+
`RAGENTS_TARGET_TOKEN`. The transfer includes the journal and payloads, model contexts under
|
|
159
|
+
`chat/`, actor programs, and all plugin storage for the run, including `ragents.documents` files
|
|
160
|
+
and the new folder of a run that works on the server. A folder on a workstation stays there, and the
|
|
161
|
+
run keeps its binding to that workstation. Running processes, language servers, and
|
|
162
|
+
browsers are not transferred; they are recreated on the target when next used.
|
|
163
|
+
|
|
164
|
+
The transfer enforces these prerequisites:
|
|
165
|
+
|
|
166
|
+
- Both servers use the same host version and workspace executor. There is no override.
|
|
167
|
+
- The run is stopped, with no active turn or waiting input.
|
|
168
|
+
- Its ID is unused on the target. An existing run, folder, or archive entry rejects the import.
|
|
169
|
+
- A run bound to a source project folder needs `--workspace <path>` pointing to an existing
|
|
170
|
+
target folder, given as an absolute path on the target server. A workspace binding is retained; that workspace reconnects to the target with
|
|
171
|
+
the same ID and as the run owner, or anonymously for an ownerless run.
|
|
172
|
+
- The archive must stay below 16 MiB because it travels as Base64 through the message layer.
|
|
173
|
+
A workspace containing `node_modules` will exceed this; an existing folder on the server usually will not.
|
|
174
|
+
|
|
175
|
+
Export copies the run. It remains on the source and must be deleted there explicitly after a
|
|
176
|
+
real move, otherwise two journals with the same ID diverge. On the target, the run appears
|
|
177
|
+
stopped and continues with the next message. Its model context still contains absolute source
|
|
178
|
+
paths; reusing one fails at the workspace boundary, while a relative path reaches the target.
|
|
179
|
+
After transfer, inspect the journal with `pnpm driver journal <runId>` and plugin storage under
|
|
180
|
+
`${DATA_DIR}/sessions/<runId>/plugins/`.
|
|
181
|
+
|
|
182
|
+
## Work on Windows
|
|
183
|
+
|
|
184
|
+
The local host and workspace also run on Windows. Requirements are:
|
|
185
|
+
|
|
186
|
+
- **The VS Code extension for Windows** brings its own bash. The Marketplace delivers a
|
|
187
|
+
`win32-x64` or `win32-arm64` build that contains a slim bash with the GNU tools (coreutils,
|
|
188
|
+
`grep`, `sed`, `awk`, `find`, `diff`, `patch`, `tar`, `unzip`, `cygpath` and more), taken from
|
|
189
|
+
a fixed Git for Windows release. The `bash` tool uses only this bash, for the workspace and for
|
|
190
|
+
the local host; an installed Git Bash or a `bash.exe` on `PATH` is never used. PowerShell and
|
|
191
|
+
`cmd.exe` are not used either.
|
|
192
|
+
- **Git** is your own `git.exe` on `PATH`, for example from Git for Windows. The bundled bash
|
|
193
|
+
contains no git, so your login works as usual: Git Credential Manager, `~/.gitconfig` and
|
|
194
|
+
`~/.ssh`. On your own machine the bash inherits your whole environment, except the variables of
|
|
195
|
+
VS Code itself and `BASH_ENV`/`ENV`.
|
|
196
|
+
- **Without the extension** (`ragents start` or `ragents workspace-client` from the npm package)
|
|
197
|
+
set `RAGENTS_BASH` to the `bash.exe` of such a bundle, for example
|
|
198
|
+
`<extension folder>\dist\bash\win32-x64\usr\bin\bash.exe`. Without it every `bash` call fails
|
|
199
|
+
and names what is missing.
|
|
200
|
+
- **Node.js** is enough with `@schlenkr/ragents`. A checkout additionally needs **pnpm**, and
|
|
201
|
+
`pnpm install`, `pnpm build:agent`, and `scripts/start.sh` need a bash of your own, such as
|
|
202
|
+
Git Bash.
|
|
203
|
+
- The **.NET SDK** is required when the profile includes Roslyn or FSAC. Provisioning downloads
|
|
204
|
+
the language servers; the TypeScript server comes from the host directory.
|
|
205
|
+
- A **server** on Windows has no process sandbox. Its profile file must switch it off explicitly
|
|
206
|
+
with `PROCESS_SANDBOX: "off"` in the `ragents.workspace` section, otherwise startup fails. A
|
|
207
|
+
Windows workstation connected to a server needs nothing, because the sandbox applies only to
|
|
208
|
+
the server.
|
|
209
|
+
|
|
210
|
+
The data directory is `%LOCALAPPDATA%\ragents\<profile>` and server-provided profiles use
|
|
211
|
+
`%LOCALAPPDATA%\ragents\remote\<host>\<profile>\`. `DATA_DIR` overrides this. Startup fails when
|
|
212
|
+
`LOCALAPPDATA` is absent. Unix permissions 0700 and 0711 do not apply on Windows, where isolation
|
|
213
|
+
per run depends on the user account.
|
|
214
|
+
|
|
215
|
+
Windows has no process group for command termination, so RAgents ends the process tree with
|
|
216
|
+
`taskkill /T /F`. This is forceful and has no grace period. There is also no process table: for
|
|
217
|
+
runs using a Windows workspace, the process rail explains this limitation. Stopping a run still
|
|
218
|
+
terminates Bash process trees, while a deliberately detached service continues. Workspace tools
|
|
219
|
+
do not depend on the process rail.
|
|
220
|
+
|
|
221
|
+
Windows support has not yet been exercised on a physical Windows machine. It is implemented and
|
|
222
|
+
covered by unit tests that simulate the platform. A first real run should verify `pnpm connect`,
|
|
223
|
+
`read`, `edit`, `bash` output and cancellation, diagnostics, and a workspace through
|
|
224
|
+
`pnpm workspace-client`, and with the bundled bash `git fetch` and `git push` over HTTPS with Git
|
|
225
|
+
Credential Manager and over SSH.
|