nolo-cli 0.1.23 → 0.1.29
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 +25 -3
- package/agent-runtime/dialogStatus.ts +139 -0
- package/agent-runtime/hybridRecordStore.ts +30 -9
- package/agent-runtime/index.ts +8 -0
- package/agent-runtime/localLoop.ts +12 -4
- package/agent-runtime/localToolPolicy.ts +22 -10
- package/agent-runtime/localWorkspaceTools.ts +140 -374
- package/agent-runtime/runtimeToolPolicy.ts +43 -2
- package/agent-runtime/types.ts +5 -0
- package/agentAliases.ts +12 -15
- package/agentCommandSupport.ts +77 -0
- package/agentCreateCustomCommands.ts +273 -0
- package/agentDialogsCommands.ts +226 -0
- package/agentDoctorCommands.ts +203 -0
- package/agentInternalCommandEntries.ts +43 -0
- package/agentListCommands.ts +132 -0
- package/agentListHelpers.ts +187 -0
- package/agentMachineCommands.ts +476 -0
- package/agentPullCommand.ts +9 -9
- package/agentRecordCommands.ts +141 -0
- package/agentRecordHelpers.ts +452 -0
- package/agentRunCommand.ts +35 -411
- package/agentRunLocalWorkspace.ts +182 -0
- package/agentRunParsing.ts +279 -0
- package/agentRuntimeCommands.ts +7 -701
- package/agentSuperviseCommands.ts +8 -0
- package/agentUnpublishCommands.ts +112 -0
- package/ai/agent/_executeModel.ts +42 -16
- package/ai/agent/agentSlice.ts +8 -8
- package/ai/agent/appWorkingMemory.ts +2 -2
- package/ai/agent/avatarUtils.ts +1 -1
- package/ai/agent/buildEditingContext.ts +3 -3
- package/ai/agent/buildSystemPrompt.ts +32 -6
- package/ai/agent/cleanAgentMessages.ts +1 -1
- package/ai/agent/cliChatClient.ts +41 -7
- package/ai/agent/cliExecutor.ts +308 -27
- package/ai/agent/createAgentSchema.ts +3 -3
- package/ai/agent/executeToolCall.ts +2 -2
- package/ai/agent/fetchAgentContexts.ts +3 -3
- package/ai/agent/getFullChatContextKeys.ts +4 -4
- package/ai/agent/guidedCreation/assistant.ts +82 -0
- package/ai/agent/guidedCreation/capabilities.ts +84 -0
- package/ai/agent/guidedCreation/draft.ts +62 -0
- package/ai/agent/guidedCreation/types.ts +38 -0
- package/ai/agent/hooks/fetchPublicAgents.ts +6 -6
- package/ai/agent/hooks/useAgentConfig.ts +49 -21
- package/ai/agent/hooks/useAgentDialog.ts +1 -1
- package/ai/agent/hooks/useAgentFormValidation.ts +9 -9
- package/ai/agent/hooks/usePublicAgents.ts +9 -9
- package/ai/agent/machineRunPermissions.ts +21 -3
- package/ai/agent/persistMessageWithFixedId.ts +4 -4
- package/ai/agent/planSlice.ts +1 -1
- package/ai/agent/referenceUtils.ts +4 -4
- package/ai/agent/runAgentBackground.ts +3 -3
- package/ai/agent/runAgentClientLoop.ts +12 -12
- package/ai/agent/runtimeGuidance.ts +2 -2
- package/ai/agent/server/fetchPublicAgents.ts +12 -7
- package/ai/agent/startParallelAgentStreams.ts +12 -12
- package/ai/agent/streamAgentChatTurn.ts +509 -36
- package/ai/agent/streamAgentChatTurnUtils.ts +22 -22
- package/ai/agent/utils/imageOutput.ts +2 -2
- package/ai/agent/utils/publicImageAgentMode.ts +1 -1
- package/ai/agent/utils/sortUtils.ts +1 -1
- package/ai/agent/web/useGuidedAgentCreation.ts +238 -0
- package/ai/ai.locale.ts +14 -2
- package/ai/chat/fetchUtils.native.ts +2 -2
- package/ai/chat/fetchUtils.ts +2 -2
- package/ai/chat/sendOpenAICompletionsRequest.native.ts +11 -11
- package/ai/chat/sendOpenAICompletionsRequest.ts +40 -15
- package/ai/chat/sendOpenAIResponseRequest.ts +17 -16
- package/ai/chat/shouldUseServerProxy.ts +1 -1
- package/ai/chat/updateTotalUsage.ts +1 -1
- package/ai/context/buildReferenceContext.ts +14 -14
- package/ai/context/calculateContextUsage.ts +1 -1
- package/ai/llm/generateRequestBody.ts +3 -3
- package/ai/llm/getPricing.ts +18 -4
- package/ai/llm/hooks/useModelPricing.ts +2 -2
- package/ai/llm/imagePricing.ts +1 -1
- package/ai/llm/kimi.ts +3 -0
- package/ai/llm/modelAvatar.ts +1 -0
- package/ai/llm/models.ts +3 -3
- package/ai/llm/providers.ts +9 -9
- package/ai/memory/capture.ts +1 -1
- package/ai/memory/consolidate.ts +1 -1
- package/ai/memory/delete.ts +2 -2
- package/ai/memory/query.ts +1 -1
- package/ai/memory/queryShared.ts +1 -1
- package/ai/memory/recentRelationshipRecap.ts +2 -2
- package/ai/memory/remember.ts +1 -1
- package/ai/memory/store.ts +1 -1
- package/ai/memory/storeShared.ts +2 -2
- package/ai/memory/understanding.ts +1 -1
- package/ai/messages/type.ts +1 -1
- package/ai/policy/personalizationDialog.ts +6 -6
- package/ai/policy/runtimePolicy.ts +1 -1
- package/ai/skills/referenceRuntime.ts +1 -1
- package/ai/skills/skillDiagnostics.ts +1 -1
- package/ai/skills/skillDocBuilder.ts +1 -1
- package/ai/skills/skillReferenceSummary.ts +1 -1
- package/ai/skills/skillSummaryMarker.ts +1 -1
- package/ai/taskRun/taskRunProtocol.ts +24 -10
- package/ai/token/calculatePrice.ts +5 -5
- package/ai/token/db.ts +3 -3
- package/ai/token/externalToolCost.ts +4 -4
- package/ai/token/hooks/useRecords.ts +3 -3
- package/ai/token/modelUsageQuery.ts +19 -2
- package/ai/token/openaiImageGenerationUsage.ts +2 -2
- package/ai/token/prepareTokenUsageData.ts +1 -1
- package/ai/token/query.ts +1 -1
- package/ai/token/queryUserTokens.ts +1 -1
- package/ai/token/resolveBillingTarget.ts +1 -1
- package/ai/token/saveTokenRecord.ts +5 -5
- package/ai/token/serverDialogProjection.ts +4 -4
- package/ai/token/serverTokenWriter.ts +3 -3
- package/ai/token/tokenThunks.ts +1 -1
- package/ai/tools/agent/agentTools.ts +21 -0
- package/ai/tools/agent/agentUpdateShared.ts +4 -4
- package/ai/tools/agent/callAgentTool.ts +3 -3
- package/ai/tools/agent/createAgentTool.ts +12 -12
- package/ai/tools/agent/createDialogTool.ts +3 -3
- package/ai/tools/agent/parallelBudget.ts +2 -2
- package/ai/tools/agent/prepareAgentDraftTool.ts +173 -0
- package/ai/tools/agent/presets/appBuilderPreset.ts +1 -1
- package/ai/tools/agent/runLlmTool.ts +1 -1
- package/ai/tools/agent/skillAgentPreset.ts +6 -6
- package/ai/tools/agent/updateAgentTool.ts +4 -4
- package/ai/tools/agent/updateSelfTool.ts +8 -8
- package/ai/tools/appTools.ts +3 -3
- package/ai/tools/category/createCategoryTool.ts +2 -2
- package/ai/tools/category/queryContentsByCategoryTool.ts +2 -2
- package/ai/tools/category/updateContentCategoryTool.ts +2 -2
- package/ai/tools/checkEnvTool.ts +52 -20
- package/ai/tools/convertMarxistsBookTool.ts +103 -0
- package/ai/tools/createDocTool.ts +3 -3
- package/ai/tools/createPlanTool.ts +9 -9
- package/ai/tools/createSkillDocTool.ts +4 -4
- package/ai/tools/createWorkflowTool.ts +2 -2
- package/ai/tools/deleteSpacesTool.ts +5 -5
- package/ai/tools/deleteSpacesToolModel.ts +1 -1
- package/ai/tools/doctorSkillTool.ts +3 -3
- package/ai/tools/evalSkillTool.ts +3 -3
- package/ai/tools/{execBashTool.ts → execShellTool.ts} +44 -161
- package/ai/tools/executeSqlTool.ts +1 -1
- package/ai/tools/geminiImagePreviewTool.ts +9 -9
- package/ai/tools/importDataTool.ts +2 -2
- package/ai/tools/importSkillTool.ts +4 -4
- package/ai/tools/index.ts +61 -14
- package/ai/tools/listUserSpacesTool.ts +2 -2
- package/ai/tools/localFilesTool.ts +85 -9
- package/ai/tools/marxistsOfflineBook.ts +253 -0
- package/ai/tools/modelUsageTools.ts +4 -2
- package/ai/tools/openaiImageTool.ts +9 -9
- package/ai/tools/readDocTool.ts +3 -3
- package/ai/tools/readTool.ts +40 -9
- package/ai/tools/rememberMemoryTool.ts +3 -3
- package/ai/tools/remotionVideoTool.ts +7 -7
- package/ai/tools/searchDialogMessagesTool.ts +2 -2
- package/ai/tools/searchWorkspaceTool.ts +4 -4
- package/ai/tools/table/addTableRowTool.ts +2 -2
- package/ai/tools/table/createTableTool.ts +2 -2
- package/ai/tools/table/rowTools.ts +2 -2
- package/ai/tools/table/schemaTools.ts +3 -3
- package/ai/tools/table/shareTableTool.ts +5 -5
- package/ai/tools/table/toolShared.ts +6 -6
- package/ai/tools/toolApiClient.ts +49 -6
- package/ai/tools/toolNameAliases.ts +13 -0
- package/ai/tools/toolRunSlice.ts +2 -2
- package/ai/tools/updateContentTitleTool.ts +2 -2
- package/ai/tools/updateDocTool.ts +7 -7
- package/ai/tools/updateUserPreferenceProfileTool.ts +3 -3
- package/ai/workflow/workflowExecutor.ts +3 -3
- package/ai/workflow/workflowSlice.ts +1 -1
- package/app/actions/syncAppRecord.ts +73 -0
- package/app/admin/adminPages.ts +13 -0
- package/app/colors.ts +1 -0
- package/app/constants/animationSets.ts +21 -0
- package/app/constants/appEditor.ts +99 -0
- package/app/constants/clientDownloads.ts +54 -0
- package/app/constants/desktopReleaseManifest.ts +68 -0
- package/app/constants/homeTabs.ts +15 -0
- package/app/constants/routePaths.ts +15 -0
- package/app/email/emailApiRoutes.ts +14 -0
- package/app/favorite/favoriteSlice.ts +690 -0
- package/app/favorite/type.ts +43 -0
- package/app/favorite/useAgentFavorite.ts +43 -0
- package/app/favorite/useContentFavorite.ts +41 -0
- package/app/fetchOwnedApps.ts +269 -0
- package/app/guide/quickStartGuide.ts +128 -0
- package/app/hooks/deleteDbKey.ts +233 -0
- package/app/hooks/index.ts +4 -0
- package/app/hooks/useAppDetail.ts +208 -0
- package/app/hooks/useAppVersions.ts +52 -0
- package/app/hooks/useAutoResizeTextarea.ts +29 -0
- package/app/hooks/useChatPageTitle.ts +85 -0
- package/app/hooks/useClipboardFiles.ts +20 -0
- package/app/hooks/useDesktopLocalConnectorAutostart.ts +38 -0
- package/app/hooks/useDragResize.ts +91 -0
- package/app/hooks/useElementSizeVar.ts +24 -0
- package/app/hooks/useFileDropZone.ts +52 -0
- package/app/hooks/useHasMounted.ts +11 -0
- package/app/hooks/useImageLoadFallback.ts +19 -0
- package/app/hooks/useIsMobile.ts +46 -0
- package/app/hooks/useMyApps.ts +375 -0
- package/app/hooks/useMyContentItems.ts +91 -0
- package/app/hooks/useNewMessageNotification.ts +81 -0
- package/app/hooks/usePageMeta.ts +107 -0
- package/app/hooks/useRecentlyOpened.ts +84 -0
- package/app/hooks/useUnifiedStore.ts +11 -0
- package/app/hooks/useUserNotifications.ts +197 -0
- package/app/hooks.ts +55 -0
- package/app/i18n/clientResources.ts +65 -0
- package/app/i18n/i18n.base.ts +14 -0
- package/app/i18n/i18n.config.ts +62 -0
- package/app/i18n/i18n.server.ts +13 -0
- package/app/i18n/index.ts +15 -0
- package/app/i18n/mapLanguage.ts +11 -0
- package/app/i18n/translations/appBuilder.locale.ts +453 -0
- package/app/i18n/translations/error.locale.ts +246 -0
- package/app/i18n/translations/interface.locale.ts +2174 -0
- package/app/i18n/translations/seo.locale.ts +129 -0
- package/app/i18n/types.ts +6 -0
- package/app/notifications/formatNotification.ts +134 -0
- package/app/notifications/model.ts +77 -0
- package/app/notifications/notificationSlice.ts +141 -0
- package/app/notifications/useNotificationActions.ts +67 -0
- package/app/pages/homeTabState.ts +57 -0
- package/app/pages/quickChatFlow.ts +109 -0
- package/app/pages/rechargeCheckout.ts +23 -0
- package/app/pages/usePageArt.ts +91 -0
- package/app/realtime/sharedSse.ts +182 -0
- package/app/reducer.ts +36 -0
- package/app/seo/pageMeta.ts +123 -0
- package/app/settings/config.ts +54 -0
- package/app/settings/dbActionThunks.ts +34 -0
- package/app/settings/defaultSpacePreference.ts +87 -0
- package/app/settings/navItems.ts +73 -0
- package/app/settings/prepareUserSetting.ts +11 -0
- package/app/settings/settingsRecord.ts +8 -0
- package/app/settings/web/chat-config/useAutoSaveGlobalPrompt.ts +59 -0
- package/app/settings/web/machineStatus.ts +23 -0
- package/app/settings/web/useSettingsStylesheet.ts +28 -0
- package/app/settings/web/userSecurityUtils.ts +21 -0
- package/app/stateViews/runtime.ts +86 -0
- package/app/store.ts +53 -0
- package/app/theme/colors.ts +280 -0
- package/app/theme/fontPreference.ts +77 -0
- package/app/theme/index.ts +7 -0
- package/app/theme/theme.config.ts +120 -0
- package/app/theme/themeModeBootstrap.ts +123 -0
- package/app/theme/useSystemTheme.ts +33 -0
- package/app/types/appSummary.ts +114 -0
- package/app/types.ts +358 -0
- package/app/utils/appDeploySource.ts +50 -0
- package/app/utils/appKeys.ts +55 -0
- package/app/utils/appRuntimeUrl.ts +51 -0
- package/app/utils/async.ts +28 -0
- package/app/utils/asyncMapStatus.ts +31 -0
- package/app/utils/clipboard.ts +86 -0
- package/app/utils/credits.ts +12 -0
- package/app/utils/desktopAgentRuntimeStatusClient.ts +42 -0
- package/app/utils/desktopAgentRuntimeTurnClient.ts +70 -0
- package/app/utils/desktopLocalConnectorClient.ts +83 -0
- package/app/utils/env.ts +12 -0
- package/app/utils/excelToSlate.ts +430 -0
- package/app/utils/fileReaders.ts +12 -0
- package/app/utils/fileUtils.ts +229 -0
- package/app/utils/imageUtils.native.ts +96 -0
- package/app/utils/imageUtils.ts +244 -0
- package/app/utils/ime.ts +43 -0
- package/app/utils/myContentItems.ts +290 -0
- package/app/utils/processDateRange.ts +30 -0
- package/app/utils/retryFetch.ts +61 -0
- package/app/utils/slateToExcel.ts +58 -0
- package/app/utils/toast.native.ts +42 -0
- package/app/utils/toast.ts +3 -0
- package/app/web/spaceInitGuard.ts +28 -0
- package/auth/action/signOutAction.ts +0 -0
- package/auth/action/signUpAction.ts +227 -0
- package/auth/actor.ts +16 -0
- package/auth/authSlice.ts +517 -0
- package/auth/billing.ts +130 -0
- package/auth/client/deleteUserRequest.ts +86 -0
- package/auth/client/loginRequest.ts +14 -0
- package/auth/hooks/useAuth.ts +9 -0
- package/auth/hooks/useDeleteOwnAccount.ts +50 -0
- package/auth/hooks/useDeleteOwnAccountFlow.ts +66 -0
- package/auth/hooks/useDeleteUser.ts +45 -0
- package/auth/hooks/useEnableUser.ts +50 -0
- package/auth/hooks/useFetchUsers.ts +77 -0
- package/auth/hooks/useRechargeUser.ts +82 -0
- package/auth/index.ts +1 -0
- package/auth/invite.ts +19 -0
- package/auth/locale.ts +84 -0
- package/auth/resetAuthScopedClientState.ts +27 -0
- package/auth/rn/tokenManager.ts +72 -0
- package/auth/routes.ts +127 -0
- package/auth/server/accessActivity.ts +143 -0
- package/auth/server/billingFullChainSimulator.ts +325 -0
- package/auth/server/billingUsageReport.ts +192 -0
- package/auth/server/cliLogin.ts +198 -0
- package/auth/server/creatorEarningCreditConversion.ts +515 -0
- package/auth/server/creatorEarningsLedger.ts +165 -0
- package/auth/server/creatorEarningsReport.ts +299 -0
- package/auth/server/creatorSettlementLedger.ts +386 -0
- package/auth/server/creatorSettlementReport.ts +442 -0
- package/auth/server/creatorSplitConfig.ts +191 -0
- package/auth/server/deduct.ts +270 -0
- package/auth/server/delete.ts +887 -0
- package/auth/server/disable.ts +61 -0
- package/auth/server/emailAutomation.ts +358 -0
- package/auth/server/emailAutomationConfig.ts +88 -0
- package/auth/server/emailAutomationRules.ts +94 -0
- package/auth/server/emailAutomationTemplates.ts +131 -0
- package/auth/server/emailAutomationTypes.ts +38 -0
- package/auth/server/emailDbConfig.ts +147 -0
- package/auth/server/emailDelivery.ts +960 -0
- package/auth/server/emailDeliveryGuards.ts +282 -0
- package/auth/server/emailPolicy.ts +43 -0
- package/auth/server/emailPreferences.ts +117 -0
- package/auth/server/emailProvider.ts +277 -0
- package/auth/server/emailReport.ts +439 -0
- package/auth/server/emailRuntimeConfig.ts +86 -0
- package/auth/server/emailScenarioNotifications.ts +340 -0
- package/auth/server/enable.ts +61 -0
- package/auth/server/getRechargeHistory.ts +110 -0
- package/auth/server/getUser.ts +71 -0
- package/auth/server/inviteReward.ts +295 -0
- package/auth/server/inviteRewardEmail.ts +1 -0
- package/auth/server/ledger.ts +422 -0
- package/auth/server/ledgerAudit.ts +424 -0
- package/auth/server/ledgerWitness.ts +472 -0
- package/auth/server/listusers.ts +154 -0
- package/auth/server/locks.ts +32 -0
- package/auth/server/login.ts +184 -0
- package/auth/server/productBillingSplits.ts +166 -0
- package/auth/server/productEntitlements.ts +139 -0
- package/auth/server/productPurchase.ts +382 -0
- package/auth/server/recharge.ts +284 -0
- package/auth/server/revenueShareLedger.ts +389 -0
- package/auth/server/revenueShareReport.ts +258 -0
- package/auth/server/revenueSplitPolicy.ts +119 -0
- package/auth/server/revokeSessions.ts +59 -0
- package/auth/server/route.ts +195 -0
- package/auth/server/sendEmail.ts +176 -0
- package/auth/server/shared.ts +51 -0
- package/auth/server/signup.ts +423 -0
- package/auth/server/signupIpQuota.ts +44 -0
- package/auth/server/token.ts +109 -0
- package/auth/server/tokenUsageBilling.ts +312 -0
- package/auth/server/transfer.ts +40 -0
- package/auth/server/utils.ts +200 -0
- package/auth/sessionTokenVersion.ts +38 -0
- package/auth/token.ts +63 -0
- package/auth/tokenCookie.ts +1 -0
- package/auth/types.ts +28 -0
- package/auth/utils.ts +108 -0
- package/auth/web/bootstrapAuthState.ts +60 -0
- package/auth/web/tokenManager.ts +61 -0
- package/auth/web/useRegister.ts +70 -0
- package/build.ts +16 -0
- package/buildPublish.ts +133 -0
- package/buildPublishArtifactAssembly.ts +346 -0
- package/buildPublishImportAnalysis.ts +237 -0
- package/chat/chat.locale.ts +804 -0
- package/chat/dialog/actions/addCybotAction.ts +52 -0
- package/chat/dialog/actions/addReferenceKeysAction.ts +62 -0
- package/chat/dialog/actions/builtinDialogLlm.ts +35 -0
- package/chat/dialog/actions/cleanupCliSession.ts +40 -0
- package/chat/dialog/actions/compactDialogAndForkAction.ts +47 -0
- package/chat/dialog/actions/createDialogAction.ts +372 -0
- package/chat/dialog/actions/createScheduledTaskAction.ts +78 -0
- package/chat/dialog/actions/handleSendMessageAction.ts +197 -0
- package/chat/dialog/actions/handleSendMessageResolver.ts +29 -0
- package/chat/dialog/actions/removeCybotAction.ts +6 -0
- package/chat/dialog/actions/removeDialogAgentAction.ts +44 -0
- package/chat/dialog/actions/replacePrimaryCybotAction.ts +6 -0
- package/chat/dialog/actions/setPrimaryDialogAgentAction.ts +52 -0
- package/chat/dialog/actions/updateDialogSummaryAction.ts +405 -0
- package/chat/dialog/actions/updateDialogTitleAction.ts +151 -0
- package/chat/dialog/actions/updateDialogTitlePolicy.ts +30 -0
- package/chat/dialog/actions/updateTokensAction.ts +233 -0
- package/chat/dialog/dialogAgents.ts +54 -0
- package/chat/dialog/dialogPageRenderMode.ts +182 -0
- package/chat/dialog/dialogSlice.ts +872 -0
- package/chat/dialog/dialogTitle.ts +81 -0
- package/chat/dialog/dialogTokenStats.ts +12 -0
- package/chat/dialog/dialogUrl.ts +6 -0
- package/chat/dialog/ensureDialogSpaceAction.ts +208 -0
- package/chat/dialog/goal.ts +108 -0
- package/chat/dialog/hooks/useStreamingSymbol.ts +63 -0
- package/chat/dialog/objectAssistantRegistry.ts +286 -0
- package/chat/dialog/schedule.ts +17 -0
- package/chat/dialog/useCreateDialog.ts +52 -0
- package/chat/hooks/sendPermissionResolver.ts +128 -0
- package/chat/hooks/useChatInput.ts +99 -0
- package/chat/hooks/useChatInputSeed.ts +31 -0
- package/chat/hooks/useMessageInteraction.ts +412 -0
- package/chat/hooks/useSendPermission.ts +92 -0
- package/chat/hooks/useThinkingVisibility.ts +27 -0
- package/chat/messages/browserImageUrl.ts +48 -0
- package/chat/messages/deleteMessages.ts +47 -0
- package/chat/messages/fetchAndCacheMessages.ts +119 -0
- package/chat/messages/fetchConvMsgs.ts +51 -0
- package/chat/messages/fetchMessages.ts +84 -0
- package/chat/messages/fileUrl.ts +13 -0
- package/chat/messages/generateMessageKey.ts +21 -0
- package/chat/messages/hooks/useBase64Migration.ts +115 -0
- package/chat/messages/messageAgent.ts +8 -0
- package/chat/messages/messageContent.ts +199 -0
- package/chat/messages/messageContract.ts +88 -0
- package/chat/messages/messageSlice.ts +1191 -0
- package/chat/messages/pendingAttachmentParts.ts +117 -0
- package/chat/messages/sendFirstMessage.ts +193 -0
- package/chat/messages/toolPresentation.ts +212 -0
- package/chat/messages/toolThunks.ts +625 -0
- package/chat/messages/types.ts +176 -0
- package/chat/messages/web/ChatDisplayContext.ts +14 -0
- package/chat/messages/web/ToolMessageTypes.ts +23 -0
- package/chat/messages/web/diffViewerModel.ts +61 -0
- package/chat/messages/web/groupToolEntries.ts +44 -0
- package/chat/messages/web/groupToolMessages.ts +35 -0
- package/chat/messages/web/inlineReactArtifactParser.ts +63 -0
- package/chat/messages/web/toolDisplayName.ts +22 -0
- package/chat/messages/web/useLoopStopReason.ts +43 -0
- package/chat/messages/ziweiChartDoc.ts +94 -0
- package/chat/web/docxToSlate.ts +597 -0
- package/chat/web/fileProcessor.ts +442 -0
- package/chat/web/hooks/useProgressiveDisplayCount.ts +102 -0
- package/chat/web/messageInputAgentUi.ts +189 -0
- package/chat/web/messageInputKeyBehavior.ts +53 -0
- package/chat/web/messageInputMention.ts +102 -0
- package/chat/web/messageInputSendResolver.ts +51 -0
- package/chat/web/messageSlashCommands.ts +10 -0
- package/chat/web/pdfOcrProcessor.ts +131 -0
- package/chat/web/sidebar/allViewSearch.ts +87 -0
- package/chat/web/sidebar/types.ts +12 -0
- package/chat/web/sidebar/useChatSidebarFilteredData.ts +141 -0
- package/chat/web/sidebar/useSidebarDragAndDrop.ts +56 -0
- package/cliCommandAdapters.ts +28 -0
- package/cliCommandDispatch.ts +66 -0
- package/cliCommandFactories.ts +66 -0
- package/cliCommandTypes.ts +49 -0
- package/cliEnvHelpers.ts +130 -0
- package/cliIoTypes.ts +3 -0
- package/client/agentRun.test.ts +123 -19
- package/client/agentRun.ts +62 -226
- package/client/agentRunLocalExecution.test.ts +123 -0
- package/client/agentRunLocalExecution.ts +124 -0
- package/client/agentRunRuntimeSelection.test.ts +158 -0
- package/client/agentRunRuntimeSelection.ts +155 -0
- package/client/hybridRecordStore.test.ts +42 -0
- package/client/hybridRecordStore.ts +11 -0
- package/client/localRuntimeAdapter.test.ts +189 -21
- package/client/localRuntimeAdapter.ts +84 -8
- package/client/localRuntimeDryRun.test.ts +5 -2
- package/client/profileConfig.test.ts +66 -0
- package/client/profileConfig.ts +41 -0
- package/client/streamingOutput.ts +1 -3
- package/client/taskRunPrompt.ts +7 -23
- package/commandRegistry.ts +13 -63
- package/connector-experimental/capabilities.ts +1 -0
- package/connector-experimental/daemonLauncher.ts +189 -0
- package/core/builtinAgents.ts +58 -0
- package/core/coin.ts +42 -0
- package/core/config.ts +15 -0
- package/core/crypto.ts +51 -0
- package/core/events/types.ts +145 -0
- package/core/generateKeyPairFromSeedV1.ts +15 -0
- package/core/generateMainKey.ts +22 -0
- package/core/init.ts +41 -0
- package/core/localOrigins.ts +8 -0
- package/core/password.ts +13 -0
- package/core/prefix.ts +23 -0
- package/create/editor/blockCommands.ts +118 -0
- package/create/editor/highlightExample.ts +66 -0
- package/create/editor/imageUpload.ts +66 -0
- package/create/editor/mark.ts +15 -0
- package/create/editor/plugins/normalizeChineseTypography.ts +85 -0
- package/create/editor/plugins/withBlockStructure.ts +53 -0
- package/create/editor/plugins/withChineseTypography.ts +61 -0
- package/create/editor/plugins/withLayout.ts +30 -0
- package/create/editor/plugins/withLinks.ts +13 -0
- package/create/editor/plugins/withMentions.ts +15 -0
- package/create/editor/plugins/withTables.ts +52 -0
- package/create/editor/tableCommands.ts +270 -0
- package/create/editor/theme/prism/default.ts +145 -0
- package/create/editor/theme/prism/githubDark.ts +139 -0
- package/create/editor/theme/prism/githubLight.ts +139 -0
- package/create/editor/theme/prism/index.ts +23 -0
- package/create/editor/theme/prism/okaidia.ts +197 -0
- package/create/editor/toolMentionOptions.ts +19 -0
- package/create/editor/transforms/fromMarkdown/index.ts +260 -0
- package/create/editor/transforms/fromMarkdown/inline.ts +285 -0
- package/create/editor/transforms/fromMarkdown/table.ts +130 -0
- package/create/editor/transforms/markdownToSlate.ts +24 -0
- package/create/editor/transforms/slateToRenderMarkdown.ts +218 -0
- package/create/editor/transforms/slateToSimplifiedMarkdown.ts +224 -0
- package/create/editor/transforms/slateToText.ts +33 -0
- package/create/editor/types.ts +120 -0
- package/create/editor/utils/editorFactory.ts +54 -0
- package/create/editor/utils/hasPlainCodeBlock.ts +39 -0
- package/create/editor/utils/linkCommands.ts +63 -0
- package/create/editor/utils/pdfToSlate.ts +706 -0
- package/create/editor/utils/slateUtils.ts +233 -0
- package/create/editor/utils/txtToSlate.ts +40 -0
- package/create/hooks/category.ts +82 -0
- package/create/routePaths.ts +5 -0
- package/create/space/addSpaceAction.ts +193 -0
- package/create/space/category/categoryActions.ts +427 -0
- package/create/space/changeSpaceAction.ts +36 -0
- package/create/space/constants.ts +8 -0
- package/create/space/content/addContentAction.ts +116 -0
- package/create/space/content/contentThunks.ts +90 -0
- package/create/space/content/deleteContentFromSpaceAction.ts +187 -0
- package/create/space/content/deleteMultipleContentAction.ts +112 -0
- package/create/space/content/moveContentAction.ts +285 -0
- package/create/space/content/updateContentCategoryAction.ts +154 -0
- package/create/space/content/updateContentTitleAction.ts +106 -0
- package/create/space/content/uploadAndAddFileToSpaceAction.ts +98 -0
- package/create/space/contentKeyUtils.ts +117 -0
- package/create/space/contentLabels.ts +56 -0
- package/create/space/contentTypeMeta.ts +169 -0
- package/create/space/deleteSpaceAction.ts +276 -0
- package/create/space/fetchSpaceAction.ts +70 -0
- package/create/space/fetchSpaceSidebarStateAction.ts +26 -0
- package/create/space/hooks/agentFetchRetry.ts +19 -0
- package/create/space/hooks/useAgentFetcher.ts +149 -0
- package/create/space/hooks/useGroupedContent.ts +118 -0
- package/create/space/hooks/useSpaceEvents.ts +43 -0
- package/create/space/initialSpace.ts +78 -0
- package/create/space/loadDefaultSpaceAction.ts +57 -0
- package/create/space/member/addMemberAction.ts +79 -0
- package/create/space/member/fetchUserSpaceMembershipsAction.ts +386 -0
- package/create/space/member/memberThunks.ts +47 -0
- package/create/space/member/removeMemberAction.ts +67 -0
- package/create/space/publicCatalogSpace.ts +39 -0
- package/create/space/resolvePreferredSpaceId.ts +113 -0
- package/create/space/sidebarVisibleTypes.ts +214 -0
- package/create/space/space.locale.ts +981 -0
- package/create/space/spaceAccess.ts +182 -0
- package/create/space/spaceCollapsedState.ts +54 -0
- package/create/space/spaceKeys.ts +65 -0
- package/create/space/spaceSlice.ts +328 -0
- package/create/space/spaceThunks.ts +410 -0
- package/create/space/types.ts +27 -0
- package/create/space/updateSpaceAction.ts +107 -0
- package/create/space/utils/permissions.ts +47 -0
- package/create/space/validateSpacePermission.ts +38 -0
- package/create/types.ts +21 -0
- package/create/version/appVersionReplication.ts +160 -0
- package/create/version/versionApi.ts +142 -0
- package/customCodingAgentFlow.ts +208 -0
- package/customCodingAgentRecord.ts +179 -0
- package/database/actions/agentReadResolution.ts +33 -0
- package/database/actions/cacheMergedUserData.ts +1 -1
- package/database/actions/common.ts +44 -8
- package/database/actions/fetchUserData.ts +1 -1
- package/database/actions/fileContent.ts +3 -3
- package/database/actions/patch.ts +3 -3
- package/database/actions/read.ts +115 -76
- package/database/actions/readAndWait.ts +54 -86
- package/database/actions/readOutcome.ts +45 -0
- package/database/actions/readResolution.ts +102 -0
- package/database/actions/remove.ts +2 -2
- package/database/actions/upload.ts +4 -4
- package/database/actions/upsert.ts +2 -2
- package/database/actions/write.ts +4 -4
- package/database/client/handleError.ts +1 -1
- package/database/client/queryRequest.ts +1 -1
- package/database/dbSlice.ts +2 -2
- package/database/email.ts +1 -1
- package/database/hooks/useUserData.ts +4 -4
- package/database/keys.ts +2 -2
- package/database/runtimeServerContext.ts +3 -3
- package/database/server/actorAccess.ts +1 -1
- package/database/server/coreDataProxy.ts +43 -26
- package/database/server/cybotReadonly.ts +1 -1
- package/database/server/dataHandlers.ts +1 -1
- package/database/server/delete.ts +8 -8
- package/database/server/emailRepository.ts +7 -7
- package/database/server/fileService.ts +1 -1
- package/database/server/handleTransaction.ts +2 -2
- package/database/server/patch.ts +3 -3
- package/database/server/read.ts +5 -5
- package/database/server/resourceAccess.ts +2 -2
- package/database/server/routes.ts +3 -3
- package/database/server/write.ts +5 -5
- package/database/table/deleteTable.ts +1 -1
- package/database/userPreferenceRegister.ts +2 -2
- package/dialogDataAccess.ts +186 -0
- package/dialogInternalCommandEntries.ts +11 -0
- package/dialogReadCommands.ts +179 -0
- package/dialogReadHelpers.ts +226 -0
- package/dialogStatusCommands.ts +122 -0
- package/docInternalCommandEntries.ts +20 -0
- package/hybridReadHelpers.ts +109 -0
- package/index.ts +56 -197
- package/integrations/anthropic/anthropicModels.ts +47 -0
- package/integrations/anthropic/type.ts +41 -0
- package/integrations/deepseek/models.ts +67 -0
- package/integrations/google/models.ts +298 -0
- package/integrations/openai/chatCompletionStreamMode.ts +10 -0
- package/integrations/openai/filterAndCleanMessages.ts +284 -0
- package/integrations/openai/flexTier.ts +102 -0
- package/integrations/openai/generateOpenAIRequestBody.ts +274 -0
- package/integrations/openai/generateResponseRequestBody.ts +77 -0
- package/integrations/openai/models.ts +271 -0
- package/integrations/openai/providerBodyCompatibility.ts +23 -0
- package/integrations/openai/responsesHelpers.ts +297 -0
- package/integrations/postmark/index.ts +57 -0
- package/integrations/resend/index.ts +353 -0
- package/integrations/weather/getWeather.ts +24 -0
- package/integrations/weather/index.ts +6 -0
- package/integrations/weather/routes.ts +31 -0
- package/integrations/weather/weatherApi.ts +27 -0
- package/integrations/weather/weatherConstants.ts +2 -0
- package/integrations/weather/weatherI18n.ts +50 -0
- package/integrations/weather/weatherService.ts +50 -0
- package/integrations/weather/weatherTypes.ts +140 -0
- package/integrations/weather/weatherUtils.ts +46 -0
- package/integrations/x-reader/backends/localBrowser.ts +215 -0
- package/integrations/x-reader/backends/publicFallback.ts +31 -0
- package/integrations/x-reader/backends/rawCdp.ts +218 -0
- package/integrations/x-reader/bridge/chromeBridgeManager.ts +235 -0
- package/integrations/x-reader/bridge/readXPostWithBridge.ts +73 -0
- package/integrations/x-reader/fixtureParser.ts +101 -0
- package/integrations/x-reader/index.ts +9 -0
- package/integrations/x-reader/redaction.ts +27 -0
- package/integrations/x-reader/types.ts +109 -0
- package/integrations/x-reader/visibleTextParser.ts +108 -0
- package/integrations/xai/models.ts +13 -0
- package/internalCommandEntries.ts +20 -0
- package/machineCommandPrompts.ts +77 -0
- package/machineCommandResolution.ts +43 -0
- package/machineCommands.ts +104 -853
- package/machineDaemonCommands.ts +29 -0
- package/machineHeartbeatCommands.ts +29 -0
- package/machineStatusCommands.ts +95 -0
- package/machineWatchCommands.ts +41 -0
- package/machineWsPromptMaterialization.ts +89 -0
- package/machineWsRunDispatch.ts +570 -0
- package/machineWsSession.ts +148 -0
- package/package.json +126 -4
- package/pageCreateCommands.ts +219 -0
- package/pageDeleteCommands.ts +167 -0
- package/pageReadCommands.ts +151 -0
- package/pageUpdateCommands.ts +249 -0
- package/pageWriteHelpers.ts +209 -0
- package/publishPackage.ts +36 -0
- package/render/canvas/canvasEditContext.ts +1 -1
- package/render/layout/mainLayoutViewMode.ts +1 -1
- package/render/page/createPageAction.ts +12 -12
- package/render/page/docSlice.ts +8 -8
- package/render/page/server/createPage.ts +7 -7
- package/render/page/server/handleCreatePage.ts +2 -2
- package/render/page/types.ts +2 -2
- package/render/surf/utils/groupedWeatherData.ts +1 -1
- package/render/table/createTableAction.ts +7 -7
- package/render/table/deleteTableAction.ts +4 -4
- package/render/table/fetchAndCacheTableRows.ts +2 -2
- package/render/table/tableSlice.ts +6 -6
- package/render/table/types.ts +1 -1
- package/render/table/useCreateTable.ts +2 -2
- package/render/table/useTable.ts +2 -2
- package/render/table/utils/tableSerialization.ts +1 -1
- package/runtimeDoctorCommands.ts +118 -0
- package/runtimeInternalCommandEntries.ts +15 -0
- package/runtimePassthroughCommands.ts +22 -0
- package/scriptCommandEntries.ts +31 -0
- package/scriptPassthroughHelpers.ts +28 -0
- package/secretScanHelpers.ts +31 -0
- package/server/agentEmailRegistrationRoutes.ts +29 -0
- package/server/agentRunRouteContract.ts +9 -0
- package/server/agentRunRoutes.ts +10 -0
- package/server/api/methods.ts +333 -0
- package/server/api/tableHandlers.ts +55 -0
- package/server/api/types.ts +27 -0
- package/server/apiContract.ts +88 -0
- package/server/apiRouteAdapter.ts +218 -0
- package/server/appBundler.ts +90 -0
- package/server/appRoutes.ts +92 -0
- package/server/artifactIconsRoute.ts +89 -0
- package/server/artifactRuntimeRoute.ts +136 -0
- package/server/authenticateToken.ts +73 -0
- package/server/billingLedgerRoutes.ts +48 -0
- package/server/cliChatRoutes.ts +5 -0
- package/server/cloudflareRoutes.ts +35 -0
- package/server/coreHeaders.ts +29 -0
- package/server/coreReadiness.ts +39 -0
- package/server/coreRoutes.ts +65 -0
- package/server/coreRuntime.ts +93 -0
- package/server/createResponse.ts +68 -0
- package/server/cryptoPaymentRoutes.ts +8 -0
- package/server/databaseRoutes.ts +225 -0
- package/server/desktopRuntimeRoutes.ts +120 -0
- package/server/devBuildInfo.ts +51 -0
- package/server/devReload.ts +161 -0
- package/server/devToolPathPolicy.ts +59 -0
- package/server/devToolRoutes.ts +274 -0
- package/server/email/cloudflareEmailProvider.ts +119 -0
- package/server/email/cloudflareInboundBridge.ts +121 -0
- package/server/email/cloudflareInboundWorker.ts +28 -0
- package/server/email/provider.ts +149 -0
- package/server/email/providerRegistry.ts +22 -0
- package/server/emailInboundRoutes.ts +17 -0
- package/server/entry.ts +211 -0
- package/server/handleRPCRequest.ts +117 -0
- package/server/handlers/activityStatsHandler.ts +74 -0
- package/server/handlers/agentEmailRegistrationE2EHandler.ts +406 -0
- package/server/handlers/agentEmailRegistrationE2ERoutes.ts +6 -0
- package/server/handlers/agentRun/agentLookup.ts +77 -0
- package/server/handlers/agentRun/autonomousRuntime.ts +355 -0
- package/server/handlers/agentRun/backgroundRunDialog.ts +31 -0
- package/server/handlers/agentRun/builtinAgents.ts +347 -0
- package/server/handlers/agentRun/continueDialogContext.ts +90 -0
- package/server/handlers/agentRun/debugContext.ts +58 -0
- package/server/handlers/agentRun/dialogLookup.ts +67 -0
- package/server/handlers/agentRun/foregroundStreamDialog.ts +13 -0
- package/server/handlers/agentRun/index.ts +1630 -0
- package/server/handlers/agentRun/inheritedDialogPrompt.ts +111 -0
- package/server/handlers/agentRun/localRuntimeBootstrap.ts +69 -0
- package/server/handlers/agentRun/loop.ts +2210 -0
- package/server/handlers/agentRun/machineConnector.ts +235 -0
- package/server/handlers/agentRun/machineRunAudit.ts +49 -0
- package/server/handlers/agentRun/modelUsageToolHandlers.ts +368 -0
- package/server/handlers/agentRun/referenceRuntime.ts +50 -0
- package/server/handlers/agentRun/requestContext.ts +86 -0
- package/server/handlers/agentRun/response.ts +27 -0
- package/server/handlers/agentRun/runBilling.ts +108 -0
- package/server/handlers/agentRun/runDialogPreparation.ts +55 -0
- package/server/handlers/agentRun/runtimeBinding.ts +61 -0
- package/server/handlers/agentRun/runtimeContext.ts +143 -0
- package/server/handlers/agentRun/runtimeExecutionContext.ts +153 -0
- package/server/handlers/agentRun/runtimePreparation.ts +193 -0
- package/server/handlers/agentRun/runtimeRouting.ts +88 -0
- package/server/handlers/agentRun/runtimeSystemMessages.ts +165 -0
- package/server/handlers/agentRun/saveDialog.ts +1373 -0
- package/server/handlers/agentRun/syncRunDialog.ts +90 -0
- package/server/handlers/agentRun/tableActivityProjection.ts +132 -0
- package/server/handlers/agentRun/taskRunControlPrompt.ts +122 -0
- package/server/handlers/agentRun/taskRunToolHandler.ts +579 -0
- package/server/handlers/agentRun/toolExecutor.ts +2909 -0
- package/server/handlers/agentRun/toolPolicyGuards.ts +295 -0
- package/server/handlers/agentRun/types.ts +94 -0
- package/server/handlers/agentRun/workspaceLease.ts +58 -0
- package/server/handlers/alphaTestRouteGuard.ts +30 -0
- package/server/handlers/apifyActorHandler.ts +170 -0
- package/server/handlers/appDeployFlow.ts +876 -0
- package/server/handlers/appDeployHandler.ts +4 -0
- package/server/handlers/appDeployMutationHandlers.ts +133 -0
- package/server/handlers/appDeployReadHandlers.ts +321 -0
- package/server/handlers/appDeployShared.ts +230 -0
- package/server/handlers/appDeployStatusStore.ts +178 -0
- package/server/handlers/appDomainHandler.ts +476 -0
- package/server/handlers/appLegacyInfraCleanup.ts +7 -0
- package/server/handlers/appSandboxHandler.ts +1055 -0
- package/server/handlers/appSourceReadiness.ts +75 -0
- package/server/handlers/appSpaceAccess.ts +179 -0
- package/server/handlers/applyEditHandler.ts +544 -0
- package/server/handlers/applyLineEditsHandler.ts +1058 -0
- package/server/handlers/billingLedgerAuditHandler.ts +82 -0
- package/server/handlers/billingLedgerWitnessHandler.ts +161 -0
- package/server/handlers/billingUsageReportHandler.ts +90 -0
- package/server/handlers/browserToolHandler.ts +450 -0
- package/server/handlers/cfTextToSpeechHandler.ts +137 -0
- package/server/handlers/cfWhisperHandler.ts +206 -0
- package/server/handlers/chatBillingSse.ts +79 -0
- package/server/handlers/chatHandler.ts +797 -0
- package/server/handlers/chatProxyRouting.ts +404 -0
- package/server/handlers/chatUpstreamRetry.ts +162 -0
- package/server/handlers/checkEnvHandler.ts +250 -0
- package/server/handlers/cliChatHandler.ts +266 -0
- package/server/handlers/cloudflareBrowserHandler.ts +275 -0
- package/server/handlers/cloudflareCrawlHandler.ts +260 -0
- package/server/handlers/codeSearchHandler.ts +484 -0
- package/server/handlers/connector/connectorConnectionRegistry.ts +192 -0
- package/server/handlers/connector/connectorWebSocket.ts +117 -0
- package/server/handlers/creatorEarningsReportHandler.ts +97 -0
- package/server/handlers/creatorSettlementReportHandler.ts +98 -0
- package/server/handlers/deepseekOcrHandler.ts +114 -0
- package/server/handlers/deleteMemoryHandler.ts +115 -0
- package/server/handlers/desktopAgentRuntimeAdapter.ts +307 -0
- package/server/handlers/desktopAgentRuntimeHostFacts.ts +40 -0
- package/server/handlers/desktopAgentRuntimeStatusHandler.ts +54 -0
- package/server/handlers/desktopAgentRuntimeTurnHandler.ts +165 -0
- package/server/handlers/desktopAgentRuntimeTurnService.ts +352 -0
- package/server/handlers/desktopClipboardHandler.ts +104 -0
- package/server/handlers/desktopFiles/handler.ts +159 -0
- package/server/handlers/desktopFiles/operations.ts +202 -0
- package/server/handlers/desktopFiles/sandbox.ts +62 -0
- package/server/handlers/desktopFiles/store.ts +81 -0
- package/server/handlers/desktopLlamaRuntimeHandler.ts +360 -0
- package/server/handlers/desktopLocalConnectorHandler.ts +101 -0
- package/server/handlers/desktopUpdaterHandler.ts +132 -0
- package/server/handlers/dialogEvents.ts +10 -0
- package/server/handlers/emailInboundHandler.ts +65 -0
- package/server/handlers/eventBus.ts +160 -0
- package/server/handlers/exaSearchHandler.ts +73 -0
- package/server/handlers/execShellHandler.ts +661 -0
- package/server/handlers/favoriteHandlers.ts +417 -0
- package/server/handlers/fetchWebpageHandler.ts +117 -0
- package/server/handlers/fileOutlineHandler.ts +107 -0
- package/server/handlers/geminiImagePreviewHandler.ts +612 -0
- package/server/handlers/getDialogBillingHandler.ts +151 -0
- package/server/handlers/getTransactionsHandler.ts +107 -0
- package/server/handlers/googleNativeChat.ts +572 -0
- package/server/handlers/listFilesHandler.ts +139 -0
- package/server/handlers/machines/machineAuth.ts +149 -0
- package/server/handlers/machines/machineBinding.ts +59 -0
- package/server/handlers/machines/machineHandlers.ts +279 -0
- package/server/handlers/machines/machineInstallAssets.ts +563 -0
- package/server/handlers/machines/machineRegistry.ts +89 -0
- package/server/handlers/notificationEmitter.ts +189 -0
- package/server/handlers/notificationsHandler.ts +91 -0
- package/server/handlers/olmOcrHandler.ts +115 -0
- package/server/handlers/openaiImageHandler.ts +500 -0
- package/server/handlers/providerHealthHandler.ts +36 -0
- package/server/handlers/publicHandler.ts +209 -0
- package/server/handlers/readFileHandler.ts +300 -0
- package/server/handlers/readXPostHandler.ts +180 -0
- package/server/handlers/rememberMemoryHandler.ts +69 -0
- package/server/handlers/remotionRenderHandler.ts +236 -0
- package/server/handlers/renderMarkdownHandler.ts +66 -0
- package/server/handlers/revenueShareReportHandler.ts +96 -0
- package/server/handlers/searchRepoHandler.ts +159 -0
- package/server/handlers/tableAccess.ts +34 -0
- package/server/handlers/tableToolHandlers.ts +741 -0
- package/server/handlers/typecheckWorker.ts +54 -0
- package/server/handlers/userEvents.ts +6 -0
- package/server/handlers/userSecretsHandler.ts +210 -0
- package/server/handlers/versionHandler.ts +281 -0
- package/server/handlers/versionStore.ts +176 -0
- package/server/handlers/wereadGatewayHandler.ts +48 -0
- package/server/handlers/whisperHandler.ts +158 -0
- package/server/handlers/writeFileHandler.ts +168 -0
- package/server/html/desktopReleaseManifest.server.ts +17 -0
- package/server/html/generateErrorResponse.ts +22 -0
- package/server/html/serializeState.ts +9 -0
- package/server/html/ssrPreload.ts +247 -0
- package/server/html/template.ts +275 -0
- package/server/httpCompression.ts +102 -0
- package/server/index.ts +0 -0
- package/server/liveReloadScript.ts +105 -0
- package/server/luIconNames.ts +14 -0
- package/server/machineRoutes.ts +44 -0
- package/server/mediaRoutes.ts +25 -0
- package/server/memoryRoutes.ts +14 -0
- package/server/normalizedStatusRoutes.ts +23 -0
- package/server/payments/crypto/cryptoUsdcBaseAddressPool.ts +49 -0
- package/server/payments/crypto/cryptoUsdcBaseConfig.ts +120 -0
- package/server/payments/crypto/cryptoUsdcBasePaymentProvider.ts +134 -0
- package/server/payments/crypto/cryptoUsdcBaseScanner.ts +267 -0
- package/server/payments/crypto/cryptoUsdcBaseWatcher.ts +40 -0
- package/server/payments/crypto/cryptoUsdtTronAddressPool.ts +49 -0
- package/server/payments/crypto/cryptoUsdtTronConfig.ts +120 -0
- package/server/payments/crypto/cryptoUsdtTronPaymentProvider.ts +132 -0
- package/server/payments/crypto/cryptoUsdtTronScanner.ts +313 -0
- package/server/payments/crypto/cryptoUsdtTronWatcher.ts +40 -0
- package/server/payments/paymentProvider.ts +6 -0
- package/server/payments/paymentRoutes.ts +27 -0
- package/server/payments/rechargeCredits.ts +69 -0
- package/server/payments/waffo/waffoPaymentProvider.ts +341 -0
- package/server/preview/previewCapability.ts +90 -0
- package/server/preview/previewConfig.ts +54 -0
- package/server/preview/previewGateway.ts +71 -0
- package/server/preview/previewRealtime.ts +33 -0
- package/server/providerHealthProbe.ts +198 -0
- package/server/providerHealthRoutes.ts +19 -0
- package/server/publicPaths.ts +12 -0
- package/server/publicRequestHandler.ts +15 -0
- package/server/reactAppBuilder.ts +416 -0
- package/server/realtimeRoutes.ts +69 -0
- package/server/renderStream.ts +20 -0
- package/server/routeFactory.ts +45 -0
- package/server/routes.ts +125 -0
- package/server/safeTempFile.ts +48 -0
- package/server/scheduler/scheduledTaskRuntime.ts +228 -0
- package/server/scheduler/schedulerService.ts +290 -0
- package/server/serverDrain.ts +129 -0
- package/server/services/browserSessionManager.ts +354 -0
- package/server/shareRoutes.ts +86 -0
- package/server/sqliteRoutes.ts +141 -0
- package/server/taskRunBridgeRoutes.ts +95 -0
- package/server/tasks.ts +113 -0
- package/server/waffoPaymentRoutes.ts +5 -0
- package/server/webUtilityRoutes.ts +50 -0
- package/server/workerValidator.ts +224 -0
- package/share/action.ts +225 -0
- package/share/clientTableReplication.ts +160 -0
- package/share/helpers.ts +302 -0
- package/share/keys.ts +243 -0
- package/share/link.ts +40 -0
- package/share/loadOwnerShares.ts +154 -0
- package/share/paidAccess.ts +32 -0
- package/share/publicSharePolicy.ts +27 -0
- package/share/server/fetchCommunityShares.ts +45 -0
- package/share/server/helpers.ts +202 -0
- package/share/server/importShare.ts +148 -0
- package/share/server/listCommunityShares.ts +167 -0
- package/share/server/purchaseDoc.ts +224 -0
- package/share/server/readCommunityShareCover.ts +73 -0
- package/share/server/readSharedTable.ts +139 -0
- package/share/server/tableReplication.ts +351 -0
- package/share/shareSlice.ts +53 -0
- package/share/tableShareState.ts +74 -0
- package/share/types.ts +100 -0
- package/spaceCategoryCommands.ts +263 -0
- package/spaceCommands.ts +295 -0
- package/spaceDeleteCommands.ts +312 -0
- package/spaceInternalCommandEntries.ts +19 -0
- package/spaceMutationHelpers.ts +135 -0
- package/spaceReadCommands.ts +323 -0
- package/systemInternalCommandEntries.ts +65 -0
- package/tableCommands.ts +33 -133
- package/tableDataOutput.ts +41 -0
- package/tableDataSafety.ts +26 -0
- package/tableMetaCommands.ts +307 -0
- package/tableMutationCommands.ts +266 -0
- package/tableQueryParsing.ts +90 -0
- package/tableQueryRequest.ts +53 -0
- package/taskRunActions.ts +122 -0
- package/taskRunCommand.ts +8 -214
- package/taskRunParsing.ts +86 -0
- package/taskRunPromptShared.ts +55 -0
- package/tui/session.ts +43 -372
- package/tui/tuiCatalog.ts +22 -0
- package/tui/tuiCommandInterpreter.test.ts +169 -0
- package/tui/tuiCommandInterpreter.ts +253 -0
- package/tui/tuiPresentation.test.ts +154 -0
- package/tui/tuiPresentation.ts +146 -0
- package/workflowInternalCommandEntries.ts +31 -0
|
@@ -9,6 +9,7 @@ import type {
|
|
|
9
9
|
type LocalWorkspaceToolArgs = {
|
|
10
10
|
workspaceRoot: string;
|
|
11
11
|
commandTimeoutMs?: number;
|
|
12
|
+
commandPrefix?: string[];
|
|
12
13
|
};
|
|
13
14
|
|
|
14
15
|
type WorkspaceFileArgs = {
|
|
@@ -35,6 +36,7 @@ type WorkspaceFileArgs = {
|
|
|
35
36
|
expectText?: unknown;
|
|
36
37
|
screenshotPath?: unknown;
|
|
37
38
|
metricsPath?: unknown;
|
|
39
|
+
shell?: unknown;
|
|
38
40
|
};
|
|
39
41
|
|
|
40
42
|
type OpenAiCompatibleTool = Record<string, unknown> & {
|
|
@@ -49,16 +51,12 @@ const WORKSPACE_TOOL_NAMES = [
|
|
|
49
51
|
"listFiles",
|
|
50
52
|
"readFile",
|
|
51
53
|
"writeFile",
|
|
54
|
+
"editFile",
|
|
55
|
+
"searchFiles",
|
|
52
56
|
"searchWorkspace",
|
|
53
57
|
"applyEdit",
|
|
54
58
|
"applyLineEdits",
|
|
55
59
|
"applyPatch",
|
|
56
|
-
"gitStatus",
|
|
57
|
-
"gitDiff",
|
|
58
|
-
"gitCreateBranch",
|
|
59
|
-
"gitAdd",
|
|
60
|
-
"gitCommit",
|
|
61
|
-
"commitWorkspace",
|
|
62
60
|
"runPackageScript",
|
|
63
61
|
"startPreview",
|
|
64
62
|
"getPreviewStatus",
|
|
@@ -66,28 +64,26 @@ const WORKSPACE_TOOL_NAMES = [
|
|
|
66
64
|
"releasePreview",
|
|
67
65
|
"captureVisualState",
|
|
68
66
|
"execShell",
|
|
69
|
-
"execBash",
|
|
70
67
|
] as const;
|
|
71
68
|
|
|
72
69
|
const DEFAULT_LOCAL_CODING_TOOL_NAMES = [
|
|
73
|
-
"
|
|
74
|
-
"
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"
|
|
70
|
+
"listFiles",
|
|
71
|
+
"readFile",
|
|
72
|
+
"writeFile",
|
|
73
|
+
"editFile",
|
|
74
|
+
"searchFiles",
|
|
75
|
+
] as const;
|
|
76
|
+
|
|
77
|
+
const SHELL_TOOL_NAMES = ["execShell"] as const;
|
|
78
|
+
const WORKSPACE_TOOL_NAME_SET = new Set<string>(WORKSPACE_TOOL_NAMES);
|
|
79
|
+
const REMOVED_WORKSPACE_TOOL_NAMES = new Set([
|
|
78
80
|
"gitStatus",
|
|
79
81
|
"gitDiff",
|
|
80
82
|
"gitCreateBranch",
|
|
83
|
+
"gitAdd",
|
|
84
|
+
"gitCommit",
|
|
81
85
|
"commitWorkspace",
|
|
82
|
-
|
|
83
|
-
"startPreview",
|
|
84
|
-
"getPreviewStatus",
|
|
85
|
-
"stopPreview",
|
|
86
|
-
"releasePreview",
|
|
87
|
-
"captureVisualState",
|
|
88
|
-
] as const;
|
|
89
|
-
|
|
90
|
-
const SHELL_TOOL_NAMES = ["execShell", "execBash"] as const;
|
|
86
|
+
]);
|
|
91
87
|
const DEFAULT_WORKSPACE_COMMAND_TIMEOUT_MS = 120_000;
|
|
92
88
|
|
|
93
89
|
function buildWorkspacePathProperty() {
|
|
@@ -118,7 +114,8 @@ function buildReadWorkspaceFileTool(): OpenAiCompatibleTool {
|
|
|
118
114
|
type: "function",
|
|
119
115
|
function: {
|
|
120
116
|
name: "readWorkspaceFile",
|
|
121
|
-
description:
|
|
117
|
+
description:
|
|
118
|
+
"Read a UTF-8 text file inside the workspace. Read before editing when you need the current content or exact text for replaceWorkspaceText; skip unnecessary reads for trivial known writes.",
|
|
122
119
|
parameters: {
|
|
123
120
|
type: "object",
|
|
124
121
|
properties: {
|
|
@@ -135,7 +132,8 @@ function buildWriteWorkspaceFileTool(): OpenAiCompatibleTool {
|
|
|
135
132
|
type: "function",
|
|
136
133
|
function: {
|
|
137
134
|
name: "writeWorkspaceFile",
|
|
138
|
-
description:
|
|
135
|
+
description:
|
|
136
|
+
"Write full UTF-8 file content inside the workspace. Prefer replaceWorkspaceText for small edits to existing large files; use this for new files or deliberate whole-file rewrites.",
|
|
139
137
|
parameters: {
|
|
140
138
|
type: "object",
|
|
141
139
|
properties: {
|
|
@@ -156,7 +154,8 @@ function buildReplaceWorkspaceTextTool(): OpenAiCompatibleTool {
|
|
|
156
154
|
type: "function",
|
|
157
155
|
function: {
|
|
158
156
|
name: "replaceWorkspaceText",
|
|
159
|
-
description:
|
|
157
|
+
description:
|
|
158
|
+
"Use for small, exact edits in one workspace file without constructing a patch. Read the file first when you need the exact oldText; set expectedReplacements to avoid accidental broad edits.",
|
|
160
159
|
parameters: {
|
|
161
160
|
type: "object",
|
|
162
161
|
properties: {
|
|
@@ -221,123 +220,6 @@ function buildApplyPatchTool(): OpenAiCompatibleTool {
|
|
|
221
220
|
};
|
|
222
221
|
}
|
|
223
222
|
|
|
224
|
-
function buildGitStatusTool(): OpenAiCompatibleTool {
|
|
225
|
-
return {
|
|
226
|
-
type: "function",
|
|
227
|
-
function: {
|
|
228
|
-
name: "gitStatus",
|
|
229
|
-
description: "Show concise git status for the workspace.",
|
|
230
|
-
parameters: { type: "object", properties: {} },
|
|
231
|
-
},
|
|
232
|
-
};
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
function buildGitDiffTool(): OpenAiCompatibleTool {
|
|
236
|
-
return {
|
|
237
|
-
type: "function",
|
|
238
|
-
function: {
|
|
239
|
-
name: "gitDiff",
|
|
240
|
-
description: "Show git diff for the workspace.",
|
|
241
|
-
parameters: {
|
|
242
|
-
type: "object",
|
|
243
|
-
properties: {
|
|
244
|
-
path: buildWorkspacePathProperty(),
|
|
245
|
-
staged: {
|
|
246
|
-
type: "boolean",
|
|
247
|
-
description: "When true, show staged changes.",
|
|
248
|
-
},
|
|
249
|
-
},
|
|
250
|
-
},
|
|
251
|
-
},
|
|
252
|
-
};
|
|
253
|
-
}
|
|
254
|
-
|
|
255
|
-
function buildGitCreateBranchTool(): OpenAiCompatibleTool {
|
|
256
|
-
return {
|
|
257
|
-
type: "function",
|
|
258
|
-
function: {
|
|
259
|
-
name: "gitCreateBranch",
|
|
260
|
-
description: "Create and switch to a local git branch in the workspace.",
|
|
261
|
-
parameters: {
|
|
262
|
-
type: "object",
|
|
263
|
-
properties: {
|
|
264
|
-
branch: {
|
|
265
|
-
type: "string",
|
|
266
|
-
description: "Branch name to create and check out.",
|
|
267
|
-
},
|
|
268
|
-
},
|
|
269
|
-
required: ["branch"],
|
|
270
|
-
},
|
|
271
|
-
},
|
|
272
|
-
};
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
function buildGitAddTool(): OpenAiCompatibleTool {
|
|
276
|
-
return {
|
|
277
|
-
type: "function",
|
|
278
|
-
function: {
|
|
279
|
-
name: "gitAdd",
|
|
280
|
-
description: "Stage workspace files for commit.",
|
|
281
|
-
parameters: {
|
|
282
|
-
type: "object",
|
|
283
|
-
properties: {
|
|
284
|
-
paths: {
|
|
285
|
-
type: "array",
|
|
286
|
-
items: { type: "string" },
|
|
287
|
-
description: "Workspace-relative paths to stage.",
|
|
288
|
-
},
|
|
289
|
-
},
|
|
290
|
-
required: ["paths"],
|
|
291
|
-
},
|
|
292
|
-
},
|
|
293
|
-
};
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
function buildGitCommitTool(): OpenAiCompatibleTool {
|
|
297
|
-
return {
|
|
298
|
-
type: "function",
|
|
299
|
-
function: {
|
|
300
|
-
name: "gitCommit",
|
|
301
|
-
description: "Commit staged workspace changes.",
|
|
302
|
-
parameters: {
|
|
303
|
-
type: "object",
|
|
304
|
-
properties: {
|
|
305
|
-
message: {
|
|
306
|
-
type: "string",
|
|
307
|
-
description: "Commit subject.",
|
|
308
|
-
},
|
|
309
|
-
},
|
|
310
|
-
required: ["message"],
|
|
311
|
-
},
|
|
312
|
-
},
|
|
313
|
-
};
|
|
314
|
-
}
|
|
315
|
-
|
|
316
|
-
function buildCommitWorkspaceTool(): OpenAiCompatibleTool {
|
|
317
|
-
return {
|
|
318
|
-
type: "function",
|
|
319
|
-
function: {
|
|
320
|
-
name: "commitWorkspace",
|
|
321
|
-
description: "Stage selected workspace paths, commit them, and return branch, commit hash, and clean status.",
|
|
322
|
-
parameters: {
|
|
323
|
-
type: "object",
|
|
324
|
-
properties: {
|
|
325
|
-
paths: {
|
|
326
|
-
type: "array",
|
|
327
|
-
items: { type: "string" },
|
|
328
|
-
description: "Workspace-relative paths to stage before committing.",
|
|
329
|
-
},
|
|
330
|
-
message: {
|
|
331
|
-
type: "string",
|
|
332
|
-
description: "Commit subject.",
|
|
333
|
-
},
|
|
334
|
-
},
|
|
335
|
-
required: ["paths", "message"],
|
|
336
|
-
},
|
|
337
|
-
},
|
|
338
|
-
};
|
|
339
|
-
}
|
|
340
|
-
|
|
341
223
|
function buildRunPackageScriptTool(): OpenAiCompatibleTool {
|
|
342
224
|
return {
|
|
343
225
|
type: "function",
|
|
@@ -433,7 +315,8 @@ function buildExecShellTool(toolName: string): OpenAiCompatibleTool {
|
|
|
433
315
|
type: "function",
|
|
434
316
|
function: {
|
|
435
317
|
name: toolName,
|
|
436
|
-
description:
|
|
318
|
+
description:
|
|
319
|
+
"Run a shell command in the local workspace. Commands already execute from the workspace root; do not cd into guessed paths such as /workspace, /repo, /home/user, or /home/user/workspace. Prefer one command that performs a complete verification or related git operation instead of many tiny commands. For branch setup, prefer idempotent commands such as git switch -C <branch> when replacing or recreating a benchmark branch is acceptable. Use portable POSIX commands for macOS/BSD shells; avoid GNU-only flags such as cat -A. Do not use cat -A. Do not use brittle byte-offset commands such as xxd -s -32. For separator lines, use echo or printf '%s\\n'. For text-file content or trailing-newline checks, prefer readFile over shell byte inspection when that tool is available. Do not run repeated git status, git log, git rev-parse, or branch checks after a successful command already returned the needed clean status and commit information; use one final verification command. If a command fails, use the error output to adjust the next command rather than repeating the same shape.",
|
|
437
320
|
parameters: {
|
|
438
321
|
type: "object",
|
|
439
322
|
properties: {
|
|
@@ -451,15 +334,68 @@ function buildExecShellTool(toolName: string): OpenAiCompatibleTool {
|
|
|
451
334
|
};
|
|
452
335
|
}
|
|
453
336
|
|
|
337
|
+
function wrapPowerShellCommand(command: string) {
|
|
338
|
+
return [
|
|
339
|
+
"[Console]::InputEncoding=[System.Text.Encoding]::UTF8",
|
|
340
|
+
"[Console]::OutputEncoding=[System.Text.Encoding]::UTF8",
|
|
341
|
+
"$OutputEncoding=[System.Text.Encoding]::UTF8",
|
|
342
|
+
"$PSStyle.OutputRendering='PlainText'",
|
|
343
|
+
command,
|
|
344
|
+
].join("; ");
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
function findPowerShellExecutable() {
|
|
348
|
+
return Bun.which("pwsh") || Bun.which("powershell.exe") || Bun.which("powershell");
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
function buildPowerShellCommand(command: string) {
|
|
352
|
+
const executable = findPowerShellExecutable();
|
|
353
|
+
if (!executable) throw new Error("PowerShell is not available on this machine.");
|
|
354
|
+
return [
|
|
355
|
+
executable,
|
|
356
|
+
"-NoLogo",
|
|
357
|
+
"-NoProfile",
|
|
358
|
+
"-NonInteractive",
|
|
359
|
+
"-ExecutionPolicy",
|
|
360
|
+
"Bypass",
|
|
361
|
+
"-Command",
|
|
362
|
+
wrapPowerShellCommand(command),
|
|
363
|
+
];
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
function buildBashCommand(command: string) {
|
|
367
|
+
const executable = Bun.which("bash") || Bun.which("sh");
|
|
368
|
+
if (!executable) throw new Error("bash/sh is not available on this machine.");
|
|
369
|
+
return [executable, "-lc", command];
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
function buildWorkspaceShellCommand(args: {
|
|
373
|
+
toolName: string;
|
|
374
|
+
command: string;
|
|
375
|
+
shell?: unknown;
|
|
376
|
+
}) {
|
|
377
|
+
if (args.shell === "powershell") return buildPowerShellCommand(args.command);
|
|
378
|
+
if (args.shell === "bash") return buildBashCommand(args.command);
|
|
379
|
+
return process.platform === "win32"
|
|
380
|
+
? buildPowerShellCommand(args.command)
|
|
381
|
+
: buildBashCommand(args.command);
|
|
382
|
+
}
|
|
383
|
+
|
|
454
384
|
function renameWorkspaceToolDefinition(
|
|
455
385
|
tool: OpenAiCompatibleTool,
|
|
456
386
|
name: string
|
|
457
387
|
): OpenAiCompatibleTool {
|
|
388
|
+
const description = typeof tool.function?.description === "string"
|
|
389
|
+
? tool.function.description
|
|
390
|
+
.replaceAll("replaceWorkspaceText", "editFile")
|
|
391
|
+
.replaceAll("readWorkspaceFile", "readFile")
|
|
392
|
+
: tool.function?.description;
|
|
458
393
|
return {
|
|
459
394
|
...tool,
|
|
460
395
|
function: {
|
|
461
396
|
...(tool.function ?? {}),
|
|
462
397
|
name,
|
|
398
|
+
description,
|
|
463
399
|
},
|
|
464
400
|
};
|
|
465
401
|
}
|
|
@@ -474,23 +410,24 @@ function buildWorkspaceToolDefinition(toolName: string) {
|
|
|
474
410
|
if (toolName === "writeWorkspaceFile" || toolName === "writeFile") {
|
|
475
411
|
return renameWorkspaceToolDefinition(buildWriteWorkspaceFileTool(), toolName);
|
|
476
412
|
}
|
|
477
|
-
if (
|
|
413
|
+
if (
|
|
414
|
+
toolName === "replaceWorkspaceText" ||
|
|
415
|
+
toolName === "editFile" ||
|
|
416
|
+
toolName === "applyEdit" ||
|
|
417
|
+
toolName === "applyLineEdits"
|
|
418
|
+
) {
|
|
478
419
|
return renameWorkspaceToolDefinition(buildReplaceWorkspaceTextTool(), toolName);
|
|
479
420
|
}
|
|
480
|
-
if (toolName === "searchWorkspace"
|
|
421
|
+
if (toolName === "searchWorkspace" || toolName === "searchFiles") {
|
|
422
|
+
return renameWorkspaceToolDefinition(buildSearchWorkspaceTool(), toolName);
|
|
423
|
+
}
|
|
481
424
|
if (toolName === "applyPatch") return buildApplyPatchTool();
|
|
482
|
-
if (toolName === "gitStatus") return buildGitStatusTool();
|
|
483
|
-
if (toolName === "gitDiff") return buildGitDiffTool();
|
|
484
|
-
if (toolName === "gitCreateBranch") return buildGitCreateBranchTool();
|
|
485
|
-
if (toolName === "gitAdd") return buildGitAddTool();
|
|
486
|
-
if (toolName === "gitCommit") return buildGitCommitTool();
|
|
487
|
-
if (toolName === "commitWorkspace") return buildCommitWorkspaceTool();
|
|
488
425
|
if (toolName === "runPackageScript") return buildRunPackageScriptTool();
|
|
489
426
|
if (toolName === "startPreview" || toolName === "getPreviewStatus" || toolName === "stopPreview" || toolName === "releasePreview") {
|
|
490
427
|
return buildPreviewLifecycleTool(toolName);
|
|
491
428
|
}
|
|
492
429
|
if (toolName === "captureVisualState") return buildCaptureVisualStateTool();
|
|
493
|
-
if (toolName === "execShell"
|
|
430
|
+
if (toolName === "execShell") return buildExecShellTool(toolName);
|
|
494
431
|
return null;
|
|
495
432
|
}
|
|
496
433
|
|
|
@@ -500,22 +437,40 @@ function removeRedundantWorkspaceToolAliases(toolNames: Set<string>) {
|
|
|
500
437
|
if (next.has("readWorkspaceFile")) next.delete("readFile");
|
|
501
438
|
if (next.has("writeWorkspaceFile")) next.delete("writeFile");
|
|
502
439
|
if (next.has("replaceWorkspaceText")) {
|
|
440
|
+
next.delete("editFile");
|
|
503
441
|
next.delete("applyEdit");
|
|
504
442
|
next.delete("applyLineEdits");
|
|
505
443
|
}
|
|
444
|
+
if (next.has("searchWorkspace")) next.delete("searchFiles");
|
|
506
445
|
return next;
|
|
507
446
|
}
|
|
508
447
|
|
|
448
|
+
function filterDeclaredWorkspaceToolNames(args: {
|
|
449
|
+
toolNames?: string[];
|
|
450
|
+
exposeShellTools: boolean;
|
|
451
|
+
}) {
|
|
452
|
+
return (args.toolNames ?? []).filter((toolName) =>
|
|
453
|
+
WORKSPACE_TOOL_NAME_SET.has(toolName) &&
|
|
454
|
+
!REMOVED_WORKSPACE_TOOL_NAMES.has(toolName) &&
|
|
455
|
+
(args.exposeShellTools || !SHELL_TOOL_NAMES.includes(toolName as any))
|
|
456
|
+
);
|
|
457
|
+
}
|
|
458
|
+
|
|
509
459
|
export function buildLocalWorkspaceToolset(args: {
|
|
510
460
|
declaredToolNames?: string[];
|
|
511
461
|
exposeShellTools?: boolean;
|
|
512
462
|
}) {
|
|
513
463
|
const exposeShellTools = args.exposeShellTools === true;
|
|
464
|
+
const toolNames = removeRedundantWorkspaceToolAliases(new Set([
|
|
465
|
+
...DEFAULT_LOCAL_CODING_TOOL_NAMES,
|
|
466
|
+
...(exposeShellTools ? SHELL_TOOL_NAMES : []),
|
|
467
|
+
...filterDeclaredWorkspaceToolNames({
|
|
468
|
+
toolNames: args.declaredToolNames,
|
|
469
|
+
exposeShellTools,
|
|
470
|
+
}),
|
|
471
|
+
]));
|
|
514
472
|
return {
|
|
515
|
-
toolNames: [
|
|
516
|
-
...DEFAULT_LOCAL_CODING_TOOL_NAMES,
|
|
517
|
-
...(exposeShellTools ? SHELL_TOOL_NAMES : []),
|
|
518
|
-
],
|
|
473
|
+
toolNames: [...toolNames],
|
|
519
474
|
exposeShellTools,
|
|
520
475
|
};
|
|
521
476
|
}
|
|
@@ -525,9 +480,14 @@ export function buildLocalWorkspacePolicyToolNames(args: {
|
|
|
525
480
|
exposeShellTools?: boolean;
|
|
526
481
|
}) {
|
|
527
482
|
return [...new Set([
|
|
528
|
-
...buildLocalWorkspaceToolset(
|
|
529
|
-
|
|
530
|
-
|
|
483
|
+
...buildLocalWorkspaceToolset({
|
|
484
|
+
exposeShellTools: args.exposeShellTools,
|
|
485
|
+
}).toolNames,
|
|
486
|
+
...filterDeclaredWorkspaceToolNames({
|
|
487
|
+
toolNames: args.declaredToolNames,
|
|
488
|
+
exposeShellTools: args.exposeShellTools === true,
|
|
489
|
+
}),
|
|
490
|
+
])].filter((toolName) => !REMOVED_WORKSPACE_TOOL_NAMES.has(toolName));
|
|
531
491
|
}
|
|
532
492
|
|
|
533
493
|
export function buildLocalWorkspaceOpenAiTools(args: {
|
|
@@ -538,7 +498,7 @@ export function buildLocalWorkspaceOpenAiTools(args: {
|
|
|
538
498
|
return WORKSPACE_TOOL_NAMES
|
|
539
499
|
.filter((toolName) => {
|
|
540
500
|
if (!declaredTools.has(toolName)) return false;
|
|
541
|
-
if (!args.exposeShellTools &&
|
|
501
|
+
if (!args.exposeShellTools && toolName === "execShell") {
|
|
542
502
|
return false;
|
|
543
503
|
}
|
|
544
504
|
return true;
|
|
@@ -653,26 +613,6 @@ function requireVisualWaitSelector(args: WorkspaceFileArgs) {
|
|
|
653
613
|
return selector;
|
|
654
614
|
}
|
|
655
615
|
|
|
656
|
-
function requireGitBranchName(args: WorkspaceFileArgs) {
|
|
657
|
-
const branch = typeof args.branch === "string" ? args.branch.trim() : "";
|
|
658
|
-
if (!branch) throw new Error("gitCreateBranch requires a non-empty branch.");
|
|
659
|
-
return branch;
|
|
660
|
-
}
|
|
661
|
-
|
|
662
|
-
function requireGitCommitMessage(args: WorkspaceFileArgs) {
|
|
663
|
-
const message = typeof args.message === "string" ? args.message.trim() : "";
|
|
664
|
-
if (!message) throw new Error("gitCommit requires a non-empty message.");
|
|
665
|
-
return message;
|
|
666
|
-
}
|
|
667
|
-
|
|
668
|
-
function readGitAddPaths(args: WorkspaceFileArgs) {
|
|
669
|
-
const paths = Array.isArray(args.paths)
|
|
670
|
-
? args.paths.map((value) => String(value).trim()).filter(Boolean)
|
|
671
|
-
: [];
|
|
672
|
-
if (paths.length === 0) throw new Error("gitAdd requires at least one path.");
|
|
673
|
-
return paths;
|
|
674
|
-
}
|
|
675
|
-
|
|
676
616
|
function readPackageScriptArgs(args: WorkspaceFileArgs) {
|
|
677
617
|
return Array.isArray(args.args)
|
|
678
618
|
? args.args.map((value) => String(value)).filter(Boolean)
|
|
@@ -769,10 +709,15 @@ async function runWorkspaceCommand(args: {
|
|
|
769
709
|
command: string[];
|
|
770
710
|
stdin?: string;
|
|
771
711
|
timeoutMs?: number;
|
|
712
|
+
commandPrefix?: string[];
|
|
772
713
|
}) {
|
|
773
714
|
const timeoutMs = args.timeoutMs ?? DEFAULT_WORKSPACE_COMMAND_TIMEOUT_MS;
|
|
774
715
|
const detached = process.platform !== "win32";
|
|
775
|
-
const
|
|
716
|
+
const command = [
|
|
717
|
+
...(args.commandPrefix ?? []),
|
|
718
|
+
...args.command,
|
|
719
|
+
];
|
|
720
|
+
const proc = Bun.spawn(command, {
|
|
776
721
|
cwd: resolve(args.workspaceRoot),
|
|
777
722
|
stdout: "pipe",
|
|
778
723
|
stderr: "pipe",
|
|
@@ -1050,7 +995,7 @@ async function applyPatchTool(args: {
|
|
|
1050
995
|
throw new Error(
|
|
1051
996
|
[
|
|
1052
997
|
"applyPatch failed during git apply --check.",
|
|
1053
|
-
"Use
|
|
998
|
+
"Use editFile/applyEdit for exact single-file edits when possible.",
|
|
1054
999
|
checkResult.content,
|
|
1055
1000
|
].join("\n\n")
|
|
1056
1001
|
);
|
|
@@ -1067,172 +1012,6 @@ async function applyPatchTool(args: {
|
|
|
1067
1012
|
};
|
|
1068
1013
|
}
|
|
1069
1014
|
|
|
1070
|
-
async function gitStatusTool(args: {
|
|
1071
|
-
workspaceRoot: string;
|
|
1072
|
-
}): Promise<AgentRuntimeToolResult> {
|
|
1073
|
-
const result = await runWorkspaceCommand({
|
|
1074
|
-
workspaceRoot: args.workspaceRoot,
|
|
1075
|
-
command: ["git", "status", "--short"],
|
|
1076
|
-
});
|
|
1077
|
-
return {
|
|
1078
|
-
content: result.content,
|
|
1079
|
-
metadata: { exitCode: result.exitCode },
|
|
1080
|
-
};
|
|
1081
|
-
}
|
|
1082
|
-
|
|
1083
|
-
async function gitDiffTool(args: {
|
|
1084
|
-
call: AgentRuntimeToolCallInput;
|
|
1085
|
-
workspaceRoot: string;
|
|
1086
|
-
}): Promise<AgentRuntimeToolResult> {
|
|
1087
|
-
const parsed = parseWorkspaceToolArguments(args.call.arguments);
|
|
1088
|
-
const command = ["git", "diff"];
|
|
1089
|
-
const staged = parsed.staged === true;
|
|
1090
|
-
if (staged) command.push("--staged");
|
|
1091
|
-
if (typeof parsed.path === "string" && parsed.path.trim()) {
|
|
1092
|
-
const absolutePath = resolveLocalWorkspaceToolPath({
|
|
1093
|
-
workspaceRoot: args.workspaceRoot,
|
|
1094
|
-
requestedPath: parsed.path.trim(),
|
|
1095
|
-
});
|
|
1096
|
-
command.push("--", normalizeWorkspaceRelativePath({
|
|
1097
|
-
workspaceRoot: resolve(args.workspaceRoot),
|
|
1098
|
-
targetPath: absolutePath,
|
|
1099
|
-
}));
|
|
1100
|
-
}
|
|
1101
|
-
const result = await runWorkspaceCommand({
|
|
1102
|
-
workspaceRoot: args.workspaceRoot,
|
|
1103
|
-
command,
|
|
1104
|
-
});
|
|
1105
|
-
return {
|
|
1106
|
-
content: result.content,
|
|
1107
|
-
metadata: { staged, exitCode: result.exitCode },
|
|
1108
|
-
};
|
|
1109
|
-
}
|
|
1110
|
-
|
|
1111
|
-
async function gitCreateBranchTool(args: {
|
|
1112
|
-
call: AgentRuntimeToolCallInput;
|
|
1113
|
-
workspaceRoot: string;
|
|
1114
|
-
}): Promise<AgentRuntimeToolResult> {
|
|
1115
|
-
const parsed = parseWorkspaceToolArguments(args.call.arguments);
|
|
1116
|
-
const branch = requireGitBranchName(parsed);
|
|
1117
|
-
const result = await runWorkspaceCommand({
|
|
1118
|
-
workspaceRoot: args.workspaceRoot,
|
|
1119
|
-
command: ["git", "switch", "-c", branch],
|
|
1120
|
-
});
|
|
1121
|
-
if (result.exitCode !== 0) throw new Error(result.content);
|
|
1122
|
-
return {
|
|
1123
|
-
content: result.content,
|
|
1124
|
-
metadata: { branch, exitCode: result.exitCode },
|
|
1125
|
-
};
|
|
1126
|
-
}
|
|
1127
|
-
|
|
1128
|
-
async function gitAddTool(args: {
|
|
1129
|
-
call: AgentRuntimeToolCallInput;
|
|
1130
|
-
workspaceRoot: string;
|
|
1131
|
-
}): Promise<AgentRuntimeToolResult> {
|
|
1132
|
-
const parsed = parseWorkspaceToolArguments(args.call.arguments);
|
|
1133
|
-
const paths = readGitAddPaths(parsed).map((requestedPath) => {
|
|
1134
|
-
const absolutePath = resolveLocalWorkspaceToolPath({
|
|
1135
|
-
workspaceRoot: args.workspaceRoot,
|
|
1136
|
-
requestedPath,
|
|
1137
|
-
});
|
|
1138
|
-
return normalizeWorkspaceRelativePath({
|
|
1139
|
-
workspaceRoot: resolve(args.workspaceRoot),
|
|
1140
|
-
targetPath: absolutePath,
|
|
1141
|
-
});
|
|
1142
|
-
});
|
|
1143
|
-
const result = await runWorkspaceCommand({
|
|
1144
|
-
workspaceRoot: args.workspaceRoot,
|
|
1145
|
-
command: ["git", "add", "--", ...paths],
|
|
1146
|
-
});
|
|
1147
|
-
if (result.exitCode !== 0) throw new Error(result.content);
|
|
1148
|
-
return {
|
|
1149
|
-
content: result.content,
|
|
1150
|
-
metadata: { paths, exitCode: result.exitCode },
|
|
1151
|
-
};
|
|
1152
|
-
}
|
|
1153
|
-
|
|
1154
|
-
async function gitCommitTool(args: {
|
|
1155
|
-
call: AgentRuntimeToolCallInput;
|
|
1156
|
-
workspaceRoot: string;
|
|
1157
|
-
}): Promise<AgentRuntimeToolResult> {
|
|
1158
|
-
const parsed = parseWorkspaceToolArguments(args.call.arguments);
|
|
1159
|
-
const message = requireGitCommitMessage(parsed);
|
|
1160
|
-
const result = await runWorkspaceCommand({
|
|
1161
|
-
workspaceRoot: args.workspaceRoot,
|
|
1162
|
-
command: ["git", "commit", "-m", message],
|
|
1163
|
-
});
|
|
1164
|
-
if (result.exitCode !== 0) throw new Error(result.content);
|
|
1165
|
-
return {
|
|
1166
|
-
content: result.content,
|
|
1167
|
-
metadata: { exitCode: result.exitCode },
|
|
1168
|
-
};
|
|
1169
|
-
}
|
|
1170
|
-
|
|
1171
|
-
async function commitWorkspaceTool(args: {
|
|
1172
|
-
call: AgentRuntimeToolCallInput;
|
|
1173
|
-
workspaceRoot: string;
|
|
1174
|
-
}): Promise<AgentRuntimeToolResult> {
|
|
1175
|
-
const parsed = parseWorkspaceToolArguments(args.call.arguments);
|
|
1176
|
-
const paths = readGitAddPaths(parsed).map((requestedPath) => {
|
|
1177
|
-
const absolutePath = resolveLocalWorkspaceToolPath({
|
|
1178
|
-
workspaceRoot: args.workspaceRoot,
|
|
1179
|
-
requestedPath,
|
|
1180
|
-
});
|
|
1181
|
-
return normalizeWorkspaceRelativePath({
|
|
1182
|
-
workspaceRoot: resolve(args.workspaceRoot),
|
|
1183
|
-
targetPath: absolutePath,
|
|
1184
|
-
});
|
|
1185
|
-
});
|
|
1186
|
-
const message = requireGitCommitMessage(parsed);
|
|
1187
|
-
const addResult = await runWorkspaceCommand({
|
|
1188
|
-
workspaceRoot: args.workspaceRoot,
|
|
1189
|
-
command: ["git", "add", "--", ...paths],
|
|
1190
|
-
});
|
|
1191
|
-
if (addResult.exitCode !== 0) throw new Error(addResult.content);
|
|
1192
|
-
|
|
1193
|
-
const commitResult = await runWorkspaceCommand({
|
|
1194
|
-
workspaceRoot: args.workspaceRoot,
|
|
1195
|
-
command: ["git", "commit", "-m", message],
|
|
1196
|
-
});
|
|
1197
|
-
if (commitResult.exitCode !== 0) throw new Error(commitResult.content);
|
|
1198
|
-
|
|
1199
|
-
const [branchResult, hashResult, statusResult] = await Promise.all([
|
|
1200
|
-
runWorkspaceCommand({
|
|
1201
|
-
workspaceRoot: args.workspaceRoot,
|
|
1202
|
-
command: ["git", "branch", "--show-current"],
|
|
1203
|
-
}),
|
|
1204
|
-
runWorkspaceCommand({
|
|
1205
|
-
workspaceRoot: args.workspaceRoot,
|
|
1206
|
-
command: ["git", "rev-parse", "HEAD"],
|
|
1207
|
-
}),
|
|
1208
|
-
runWorkspaceCommand({
|
|
1209
|
-
workspaceRoot: args.workspaceRoot,
|
|
1210
|
-
command: ["git", "status", "--short"],
|
|
1211
|
-
}),
|
|
1212
|
-
]);
|
|
1213
|
-
const branch = branchResult.stdout.trim();
|
|
1214
|
-
const commitHash = hashResult.stdout.trim();
|
|
1215
|
-
const status = statusResult.stdout.trim();
|
|
1216
|
-
return {
|
|
1217
|
-
content: [
|
|
1218
|
-
`branch: ${branch}`,
|
|
1219
|
-
`commit: ${commitHash}`,
|
|
1220
|
-
`status: ${status || "clean"}`,
|
|
1221
|
-
"",
|
|
1222
|
-
commitResult.content,
|
|
1223
|
-
].join("\n"),
|
|
1224
|
-
metadata: {
|
|
1225
|
-
paths,
|
|
1226
|
-
message,
|
|
1227
|
-
branch,
|
|
1228
|
-
commitHash,
|
|
1229
|
-
status,
|
|
1230
|
-
clean: status === "",
|
|
1231
|
-
exitCode: commitResult.exitCode,
|
|
1232
|
-
},
|
|
1233
|
-
};
|
|
1234
|
-
}
|
|
1235
|
-
|
|
1236
1015
|
async function runPackageScriptTool(args: {
|
|
1237
1016
|
call: AgentRuntimeToolCallInput;
|
|
1238
1017
|
workspaceRoot: string;
|
|
@@ -1401,13 +1180,19 @@ async function execShellTool(args: {
|
|
|
1401
1180
|
call: AgentRuntimeToolCallInput;
|
|
1402
1181
|
workspaceRoot: string;
|
|
1403
1182
|
commandTimeoutMs?: number;
|
|
1183
|
+
commandPrefix?: string[];
|
|
1404
1184
|
}): Promise<AgentRuntimeToolResult> {
|
|
1405
1185
|
const parsed = parseWorkspaceToolArguments(args.call.arguments);
|
|
1406
1186
|
const command = requireShellCommand(parsed, args.call.name);
|
|
1407
1187
|
const result = await runWorkspaceCommand({
|
|
1408
1188
|
workspaceRoot: args.workspaceRoot,
|
|
1409
|
-
command:
|
|
1189
|
+
command: buildWorkspaceShellCommand({
|
|
1190
|
+
toolName: args.call.name,
|
|
1191
|
+
command,
|
|
1192
|
+
shell: parsed.shell,
|
|
1193
|
+
}),
|
|
1410
1194
|
timeoutMs: args.commandTimeoutMs,
|
|
1195
|
+
commandPrefix: args.commandPrefix,
|
|
1411
1196
|
});
|
|
1412
1197
|
return {
|
|
1413
1198
|
content: result.content,
|
|
@@ -1433,6 +1218,10 @@ export function createLocalWorkspaceToolExecutors(args: LocalWorkspaceToolArgs)
|
|
|
1433
1218
|
call,
|
|
1434
1219
|
workspaceRoot: args.workspaceRoot,
|
|
1435
1220
|
}),
|
|
1221
|
+
editFile: (call: AgentRuntimeToolCallInput) => replaceWorkspaceTextTool({
|
|
1222
|
+
call,
|
|
1223
|
+
workspaceRoot: args.workspaceRoot,
|
|
1224
|
+
}),
|
|
1436
1225
|
applyEdit: (call: AgentRuntimeToolCallInput) => replaceWorkspaceTextTool({
|
|
1437
1226
|
call,
|
|
1438
1227
|
workspaceRoot: args.workspaceRoot,
|
|
@@ -1457,30 +1246,11 @@ export function createLocalWorkspaceToolExecutors(args: LocalWorkspaceToolArgs)
|
|
|
1457
1246
|
call,
|
|
1458
1247
|
workspaceRoot: args.workspaceRoot,
|
|
1459
1248
|
}),
|
|
1460
|
-
|
|
1249
|
+
searchFiles: (call: AgentRuntimeToolCallInput) => searchWorkspaceTool({
|
|
1461
1250
|
call,
|
|
1462
1251
|
workspaceRoot: args.workspaceRoot,
|
|
1463
1252
|
}),
|
|
1464
|
-
|
|
1465
|
-
workspaceRoot: args.workspaceRoot,
|
|
1466
|
-
}),
|
|
1467
|
-
gitDiff: (call: AgentRuntimeToolCallInput) => gitDiffTool({
|
|
1468
|
-
call,
|
|
1469
|
-
workspaceRoot: args.workspaceRoot,
|
|
1470
|
-
}),
|
|
1471
|
-
gitCreateBranch: (call: AgentRuntimeToolCallInput) => gitCreateBranchTool({
|
|
1472
|
-
call,
|
|
1473
|
-
workspaceRoot: args.workspaceRoot,
|
|
1474
|
-
}),
|
|
1475
|
-
gitAdd: (call: AgentRuntimeToolCallInput) => gitAddTool({
|
|
1476
|
-
call,
|
|
1477
|
-
workspaceRoot: args.workspaceRoot,
|
|
1478
|
-
}),
|
|
1479
|
-
gitCommit: (call: AgentRuntimeToolCallInput) => gitCommitTool({
|
|
1480
|
-
call,
|
|
1481
|
-
workspaceRoot: args.workspaceRoot,
|
|
1482
|
-
}),
|
|
1483
|
-
commitWorkspace: (call: AgentRuntimeToolCallInput) => commitWorkspaceTool({
|
|
1253
|
+
applyPatch: (call: AgentRuntimeToolCallInput) => applyPatchTool({
|
|
1484
1254
|
call,
|
|
1485
1255
|
workspaceRoot: args.workspaceRoot,
|
|
1486
1256
|
}),
|
|
@@ -1522,11 +1292,7 @@ export function createLocalWorkspaceToolExecutors(args: LocalWorkspaceToolArgs)
|
|
|
1522
1292
|
call,
|
|
1523
1293
|
workspaceRoot: args.workspaceRoot,
|
|
1524
1294
|
commandTimeoutMs: args.commandTimeoutMs,
|
|
1525
|
-
|
|
1526
|
-
execBash: (call: AgentRuntimeToolCallInput) => execShellTool({
|
|
1527
|
-
call,
|
|
1528
|
-
workspaceRoot: args.workspaceRoot,
|
|
1529
|
-
commandTimeoutMs: args.commandTimeoutMs,
|
|
1295
|
+
commandPrefix: args.commandPrefix,
|
|
1530
1296
|
}),
|
|
1531
1297
|
};
|
|
1532
1298
|
}
|