@stigmer/react 0.0.36 → 0.0.40
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 +4 -88
- package/__tests__/hooks.test.d.ts +2 -0
- package/__tests__/hooks.test.d.ts.map +1 -0
- package/__tests__/hooks.test.js +18 -0
- package/__tests__/hooks.test.js.map +1 -0
- package/agent/AgentDetailView.d.ts +80 -0
- package/agent/AgentDetailView.d.ts.map +1 -0
- package/agent/AgentDetailView.js +184 -0
- package/agent/AgentDetailView.js.map +1 -0
- package/agent/AgentEnvForm.d.ts +83 -0
- package/agent/AgentEnvForm.d.ts.map +1 -0
- package/agent/AgentEnvForm.js +31 -0
- package/agent/AgentEnvForm.js.map +1 -0
- package/agent/AgentPicker.d.ts +44 -0
- package/agent/AgentPicker.d.ts.map +1 -0
- package/agent/AgentPicker.js +121 -0
- package/agent/AgentPicker.js.map +1 -0
- package/agent/agentSetupReducer.d.ts +123 -0
- package/agent/agentSetupReducer.d.ts.map +1 -0
- package/agent/agentSetupReducer.js +86 -0
- package/agent/agentSetupReducer.js.map +1 -0
- package/agent/index.d.ts +19 -8
- package/agent/index.d.ts.map +1 -1
- package/agent/index.js +10 -6
- package/agent/index.js.map +1 -1
- package/agent/useAgent.d.ts +48 -0
- package/agent/useAgent.d.ts.map +1 -0
- package/agent/useAgent.js +82 -0
- package/agent/useAgent.js.map +1 -0
- package/agent/useAgentCount.d.ts +49 -0
- package/agent/useAgentCount.d.ts.map +1 -0
- package/agent/useAgentCount.js +32 -0
- package/agent/useAgentCount.js.map +1 -0
- package/agent/useAgentList.d.ts +62 -0
- package/agent/useAgentList.d.ts.map +1 -0
- package/agent/useAgentList.js +38 -0
- package/agent/useAgentList.js.map +1 -0
- package/agent/useAgentSearch.d.ts +23 -0
- package/agent/useAgentSearch.d.ts.map +1 -0
- package/agent/useAgentSearch.js +28 -0
- package/agent/useAgentSearch.js.map +1 -0
- package/agent/useAgentSetup.d.ts +115 -0
- package/agent/useAgentSetup.d.ts.map +1 -0
- package/agent/useAgentSetup.js +279 -0
- package/agent/useAgentSetup.js.map +1 -0
- package/agent/useDefaultAgent.d.ts +29 -0
- package/agent/useDefaultAgent.d.ts.map +1 -0
- package/agent/useDefaultAgent.js +60 -0
- package/agent/useDefaultAgent.js.map +1 -0
- package/agent-instance/buildPersonalInstanceInput.d.ts +20 -0
- package/agent-instance/buildPersonalInstanceInput.d.ts.map +1 -0
- package/agent-instance/buildPersonalInstanceInput.js +29 -0
- package/agent-instance/buildPersonalInstanceInput.js.map +1 -0
- package/agent-instance/index.d.ts +9 -0
- package/agent-instance/index.d.ts.map +1 -0
- package/agent-instance/index.js +5 -0
- package/agent-instance/index.js.map +1 -0
- package/agent-instance/useAgentInstance.d.ts +35 -0
- package/agent-instance/useAgentInstance.d.ts.map +1 -0
- package/agent-instance/useAgentInstance.js +67 -0
- package/agent-instance/useAgentInstance.js.map +1 -0
- package/agent-instance/useAgentInstanceList.d.ts +29 -0
- package/agent-instance/useAgentInstanceList.d.ts.map +1 -0
- package/agent-instance/useAgentInstanceList.js +74 -0
- package/agent-instance/useAgentInstanceList.js.map +1 -0
- package/agent-instance/useCreateAgentInstance.d.ts +44 -0
- package/agent-instance/useCreateAgentInstance.d.ts.map +1 -0
- package/agent-instance/useCreateAgentInstance.js +60 -0
- package/agent-instance/useCreateAgentInstance.js.map +1 -0
- package/agent-instance/usePersonalAgentInstance.d.ts +93 -0
- package/agent-instance/usePersonalAgentInstance.d.ts.map +1 -0
- package/agent-instance/usePersonalAgentInstance.js +103 -0
- package/agent-instance/usePersonalAgentInstance.js.map +1 -0
- package/api-key/ApiKeyCreatedAlert.d.ts +33 -0
- package/api-key/ApiKeyCreatedAlert.d.ts.map +1 -0
- package/api-key/ApiKeyCreatedAlert.js +61 -0
- package/api-key/ApiKeyCreatedAlert.js.map +1 -0
- package/api-key/ApiKeyListPanel.d.ts +30 -0
- package/api-key/ApiKeyListPanel.d.ts.map +1 -0
- package/api-key/ApiKeyListPanel.js +126 -0
- package/api-key/ApiKeyListPanel.js.map +1 -0
- package/api-key/CreateApiKeyForm.d.ts +35 -0
- package/api-key/CreateApiKeyForm.d.ts.map +1 -0
- package/api-key/CreateApiKeyForm.js +81 -0
- package/api-key/CreateApiKeyForm.js.map +1 -0
- package/api-key/index.d.ts +13 -0
- package/api-key/index.d.ts.map +1 -0
- package/api-key/index.js +7 -0
- package/api-key/index.js.map +1 -0
- package/api-key/useApiKeyList.d.ts +28 -0
- package/api-key/useApiKeyList.d.ts.map +1 -0
- package/api-key/useApiKeyList.js +52 -0
- package/api-key/useApiKeyList.js.map +1 -0
- package/api-key/useCreateApiKey.d.ts +40 -0
- package/api-key/useCreateApiKey.d.ts.map +1 -0
- package/api-key/useCreateApiKey.js +56 -0
- package/api-key/useCreateApiKey.js.map +1 -0
- package/api-key/useDeleteApiKey.d.ts +26 -0
- package/api-key/useDeleteApiKey.d.ts.map +1 -0
- package/api-key/useDeleteApiKey.js +43 -0
- package/api-key/useDeleteApiKey.js.map +1 -0
- package/attachment/AttachmentChipList.d.ts +24 -0
- package/attachment/AttachmentChipList.d.ts.map +1 -0
- package/attachment/AttachmentChipList.js +45 -0
- package/attachment/AttachmentChipList.js.map +1 -0
- package/attachment/attachment-utils.d.ts +32 -0
- package/attachment/attachment-utils.d.ts.map +1 -0
- package/attachment/attachment-utils.js +104 -0
- package/attachment/attachment-utils.js.map +1 -0
- package/attachment/index.d.ts +6 -0
- package/attachment/index.d.ts.map +1 -0
- package/attachment/index.js +4 -0
- package/attachment/index.js.map +1 -0
- package/attachment/useAttachments.d.ts +113 -0
- package/attachment/useAttachments.d.ts.map +1 -0
- package/attachment/useAttachments.js +175 -0
- package/attachment/useAttachments.js.map +1 -0
- package/composer/ComposerToolbar.d.ts +37 -0
- package/composer/ComposerToolbar.d.ts.map +1 -0
- package/composer/ComposerToolbar.js +24 -0
- package/composer/ComposerToolbar.js.map +1 -0
- package/composer/ConfigureMenu.d.ts +37 -0
- package/composer/ConfigureMenu.d.ts.map +1 -0
- package/composer/ConfigureMenu.js +53 -0
- package/composer/ConfigureMenu.js.map +1 -0
- package/composer/ContextChip.d.ts +22 -0
- package/composer/ContextChip.d.ts.map +1 -0
- package/composer/ContextChip.js +19 -0
- package/composer/ContextChip.js.map +1 -0
- package/composer/ContextPopover.d.ts +10 -0
- package/composer/ContextPopover.d.ts.map +1 -0
- package/composer/ContextPopover.js +11 -0
- package/composer/ContextPopover.js.map +1 -0
- package/composer/SessionComposer.d.ts +269 -0
- package/composer/SessionComposer.d.ts.map +1 -0
- package/composer/SessionComposer.js +580 -0
- package/composer/SessionComposer.js.map +1 -0
- package/composer/icons.d.ts +15 -0
- package/composer/icons.d.ts.map +1 -0
- package/composer/icons.js +42 -0
- package/composer/icons.js.map +1 -0
- package/composer/index.d.ts +5 -0
- package/composer/index.d.ts.map +1 -0
- package/composer/index.js +3 -0
- package/composer/index.js.map +1 -0
- package/composer/useComposer.d.ts +74 -0
- package/composer/useComposer.d.ts.map +1 -0
- package/composer/useComposer.js +94 -0
- package/composer/useComposer.js.map +1 -0
- package/environment/CreateEnvironmentForm.d.ts +31 -0
- package/environment/CreateEnvironmentForm.d.ts.map +1 -0
- package/environment/CreateEnvironmentForm.js +57 -0
- package/environment/CreateEnvironmentForm.js.map +1 -0
- package/environment/EnvVarForm.d.ts +134 -0
- package/environment/EnvVarForm.d.ts.map +1 -0
- package/environment/EnvVarForm.js +122 -0
- package/environment/EnvVarForm.js.map +1 -0
- package/environment/EnvironmentListPanel.d.ts +51 -0
- package/environment/EnvironmentListPanel.d.ts.map +1 -0
- package/environment/EnvironmentListPanel.js +96 -0
- package/environment/EnvironmentListPanel.js.map +1 -0
- package/environment/EnvironmentVariableEditor.d.ts +43 -0
- package/environment/EnvironmentVariableEditor.d.ts.map +1 -0
- package/environment/EnvironmentVariableEditor.js +269 -0
- package/environment/EnvironmentVariableEditor.js.map +1 -0
- package/environment/diffEnvSpec.d.ts +34 -0
- package/environment/diffEnvSpec.d.ts.map +1 -0
- package/environment/diffEnvSpec.js +44 -0
- package/environment/diffEnvSpec.js.map +1 -0
- package/environment/index.d.ts +28 -0
- package/environment/index.d.ts.map +1 -0
- package/environment/index.js +15 -0
- package/environment/index.js.map +1 -0
- package/environment/useCreateEnvironment.d.ts +43 -0
- package/environment/useCreateEnvironment.d.ts.map +1 -0
- package/environment/useCreateEnvironment.js +59 -0
- package/environment/useCreateEnvironment.js.map +1 -0
- package/environment/useEnvironment.d.ts +37 -0
- package/environment/useEnvironment.d.ts.map +1 -0
- package/environment/useEnvironment.js +69 -0
- package/environment/useEnvironment.js.map +1 -0
- package/environment/useEnvironmentList.d.ts +31 -0
- package/environment/useEnvironmentList.d.ts.map +1 -0
- package/environment/useEnvironmentList.js +88 -0
- package/environment/useEnvironmentList.js.map +1 -0
- package/environment/usePersonalEnvironment.d.ts +100 -0
- package/environment/usePersonalEnvironment.d.ts.map +1 -0
- package/environment/usePersonalEnvironment.js +168 -0
- package/environment/usePersonalEnvironment.js.map +1 -0
- package/environment/useRemoveEnvironmentVariables.d.ts +45 -0
- package/environment/useRemoveEnvironmentVariables.d.ts.map +1 -0
- package/environment/useRemoveEnvironmentVariables.js +57 -0
- package/environment/useRemoveEnvironmentVariables.js.map +1 -0
- package/environment/useRevealSecretValue.d.ts +66 -0
- package/environment/useRevealSecretValue.d.ts.map +1 -0
- package/environment/useRevealSecretValue.js +92 -0
- package/environment/useRevealSecretValue.js.map +1 -0
- package/environment/useSessionEnvPool.d.ts +80 -0
- package/environment/useSessionEnvPool.d.ts.map +1 -0
- package/environment/useSessionEnvPool.js +72 -0
- package/environment/useSessionEnvPool.js.map +1 -0
- package/environment/useUpdateEnvironment.d.ts +43 -0
- package/environment/useUpdateEnvironment.d.ts.map +1 -0
- package/environment/useUpdateEnvironment.js +59 -0
- package/environment/useUpdateEnvironment.js.map +1 -0
- package/environment/useUpdateEnvironmentVariables.d.ts +53 -0
- package/environment/useUpdateEnvironmentVariables.d.ts.map +1 -0
- package/environment/useUpdateEnvironmentVariables.js +71 -0
- package/environment/useUpdateEnvironmentVariables.js.map +1 -0
- package/error/ErrorMessage.d.ts +33 -0
- package/error/ErrorMessage.d.ts.map +1 -0
- package/error/ErrorMessage.js +60 -0
- package/error/ErrorMessage.js.map +1 -0
- package/error/SecretFlowErrorGuide.d.ts +41 -0
- package/error/SecretFlowErrorGuide.d.ts.map +1 -0
- package/error/SecretFlowErrorGuide.js +87 -0
- package/error/SecretFlowErrorGuide.js.map +1 -0
- package/error/index.d.ts +5 -0
- package/error/index.d.ts.map +1 -0
- package/error/index.js +3 -0
- package/error/index.js.map +1 -0
- package/execution/ApprovalCard.d.ts +35 -0
- package/execution/ApprovalCard.d.ts.map +1 -0
- package/execution/ApprovalCard.js +192 -0
- package/execution/ApprovalCard.js.map +1 -0
- package/execution/ArtifactCard.d.ts +70 -0
- package/execution/ArtifactCard.d.ts.map +1 -0
- package/execution/ArtifactCard.js +109 -0
- package/execution/ArtifactCard.js.map +1 -0
- package/execution/ArtifactPreviewModal.d.ts +77 -0
- package/execution/ArtifactPreviewModal.d.ts.map +1 -0
- package/execution/ArtifactPreviewModal.js +310 -0
- package/execution/ArtifactPreviewModal.js.map +1 -0
- package/execution/ArtifactsWidget.d.ts +63 -0
- package/execution/ArtifactsWidget.d.ts.map +1 -0
- package/execution/ArtifactsWidget.js +61 -0
- package/execution/ArtifactsWidget.js.map +1 -0
- package/execution/ExecutionCostSummary.d.ts +47 -0
- package/execution/ExecutionCostSummary.d.ts.map +1 -0
- package/execution/ExecutionCostSummary.js +77 -0
- package/execution/ExecutionCostSummary.js.map +1 -0
- package/execution/ExecutionPhaseBadge.d.ts +20 -0
- package/execution/ExecutionPhaseBadge.d.ts.map +1 -0
- package/execution/ExecutionPhaseBadge.js +112 -0
- package/execution/ExecutionPhaseBadge.js.map +1 -0
- package/execution/ExecutionProgress.d.ts +32 -0
- package/execution/ExecutionProgress.d.ts.map +1 -0
- package/execution/ExecutionProgress.js +96 -0
- package/execution/ExecutionProgress.js.map +1 -0
- package/execution/FilePathContext.d.ts +22 -0
- package/execution/FilePathContext.d.ts.map +1 -0
- package/execution/FilePathContext.js +6 -0
- package/execution/FilePathContext.js.map +1 -0
- package/execution/FilePathLink.d.ts +26 -0
- package/execution/FilePathLink.d.ts.map +1 -0
- package/execution/FilePathLink.js +64 -0
- package/execution/FilePathLink.js.map +1 -0
- package/execution/FollowUpInput.d.ts +55 -0
- package/execution/FollowUpInput.d.ts.map +1 -0
- package/execution/FollowUpInput.js +95 -0
- package/execution/FollowUpInput.js.map +1 -0
- package/execution/MessageEntry.d.ts +25 -0
- package/execution/MessageEntry.d.ts.map +1 -0
- package/execution/MessageEntry.js +46 -0
- package/execution/MessageEntry.js.map +1 -0
- package/execution/MessageThread.d.ts +88 -0
- package/execution/MessageThread.d.ts.map +1 -0
- package/execution/MessageThread.js +157 -0
- package/execution/MessageThread.js.map +1 -0
- package/execution/SessionVariablesInput.d.ts +47 -0
- package/execution/SessionVariablesInput.d.ts.map +1 -0
- package/execution/SessionVariablesInput.js +80 -0
- package/execution/SessionVariablesInput.js.map +1 -0
- package/execution/SubAgentSection.d.ts +23 -0
- package/execution/SubAgentSection.d.ts.map +1 -0
- package/execution/SubAgentSection.js +103 -0
- package/execution/SubAgentSection.js.map +1 -0
- package/execution/ToolCallDetail.d.ts +32 -0
- package/execution/ToolCallDetail.d.ts.map +1 -0
- package/execution/ToolCallDetail.js +204 -0
- package/execution/ToolCallDetail.js.map +1 -0
- package/execution/ToolCallGroup.d.ts +45 -0
- package/execution/ToolCallGroup.d.ts.map +1 -0
- package/execution/ToolCallGroup.js +160 -0
- package/execution/ToolCallGroup.js.map +1 -0
- package/execution/ToolCallItem.d.ts +39 -0
- package/execution/ToolCallItem.d.ts.map +1 -0
- package/execution/ToolCallItem.js +164 -0
- package/execution/ToolCallItem.js.map +1 -0
- package/execution/__tests__/ExecutionCostSummary.test.d.ts +2 -0
- package/execution/__tests__/ExecutionCostSummary.test.d.ts.map +1 -0
- package/execution/__tests__/ExecutionCostSummary.test.js +255 -0
- package/execution/__tests__/ExecutionCostSummary.test.js.map +1 -0
- package/execution/__tests__/execution-phases.test.d.ts +2 -0
- package/execution/__tests__/execution-phases.test.d.ts.map +1 -0
- package/execution/__tests__/execution-phases.test.js +25 -0
- package/execution/__tests__/execution-phases.test.js.map +1 -0
- package/execution/__tests__/useExecutionStream.test.d.ts +2 -0
- package/execution/__tests__/useExecutionStream.test.d.ts.map +1 -0
- package/execution/__tests__/useExecutionStream.test.js +190 -0
- package/execution/__tests__/useExecutionStream.test.js.map +1 -0
- package/execution/__tests__/useExecutionUsage.test.d.ts +2 -0
- package/execution/__tests__/useExecutionUsage.test.d.ts.map +1 -0
- package/execution/__tests__/useExecutionUsage.test.js +303 -0
- package/execution/__tests__/useExecutionUsage.test.js.map +1 -0
- package/execution/artifact-utils.d.ts +58 -0
- package/execution/artifact-utils.d.ts.map +1 -0
- package/execution/artifact-utils.js +123 -0
- package/execution/artifact-utils.js.map +1 -0
- package/execution/execution-phases.d.ts +7 -0
- package/execution/execution-phases.d.ts.map +1 -0
- package/execution/execution-phases.js +15 -0
- package/execution/execution-phases.js.map +1 -0
- package/execution/file-path-resolver.d.ts +63 -0
- package/execution/file-path-resolver.d.ts.map +1 -0
- package/execution/file-path-resolver.js +121 -0
- package/execution/file-path-resolver.js.map +1 -0
- package/execution/index.d.ts +55 -0
- package/execution/index.d.ts.map +1 -0
- package/execution/index.js +29 -0
- package/execution/index.js.map +1 -0
- package/execution/tool-categories.d.ts +36 -0
- package/execution/tool-categories.d.ts.map +1 -0
- package/execution/tool-categories.js +110 -0
- package/execution/tool-categories.js.map +1 -0
- package/execution/useArtifactContent.d.ts +75 -0
- package/execution/useArtifactContent.d.ts.map +1 -0
- package/execution/useArtifactContent.js +102 -0
- package/execution/useArtifactContent.js.map +1 -0
- package/execution/useCreateAgentExecution.d.ts +84 -0
- package/execution/useCreateAgentExecution.d.ts.map +1 -0
- package/execution/useCreateAgentExecution.js +79 -0
- package/execution/useCreateAgentExecution.js.map +1 -0
- package/execution/useExecutionArtifacts.d.ts +42 -0
- package/execution/useExecutionArtifacts.d.ts.map +1 -0
- package/execution/useExecutionArtifacts.js +43 -0
- package/execution/useExecutionArtifacts.js.map +1 -0
- package/execution/useExecutionStream.d.ts +62 -0
- package/execution/useExecutionStream.d.ts.map +1 -0
- package/execution/useExecutionStream.js +99 -0
- package/execution/useExecutionStream.js.map +1 -0
- package/execution/useExecutionUsage.d.ts +45 -0
- package/execution/useExecutionUsage.d.ts.map +1 -0
- package/execution/useExecutionUsage.js +157 -0
- package/execution/useExecutionUsage.js.map +1 -0
- package/execution/useSessionVariables.d.ts +102 -0
- package/execution/useSessionVariables.d.ts.map +1 -0
- package/execution/useSessionVariables.js +102 -0
- package/execution/useSessionVariables.js.map +1 -0
- package/execution/useSubmitApproval.d.ts +39 -0
- package/execution/useSubmitApproval.d.ts.map +1 -0
- package/execution/useSubmitApproval.js +62 -0
- package/execution/useSubmitApproval.js.map +1 -0
- package/github/GitHubRepoPicker.d.ts +24 -0
- package/github/GitHubRepoPicker.d.ts.map +1 -0
- package/github/GitHubRepoPicker.js +248 -0
- package/github/GitHubRepoPicker.js.map +1 -0
- package/github/index.d.ts +4 -0
- package/github/index.d.ts.map +1 -0
- package/github/index.js +4 -0
- package/github/index.js.map +1 -0
- package/github/useGitHubConnection.d.ts +72 -0
- package/github/useGitHubConnection.d.ts.map +1 -0
- package/github/useGitHubConnection.js +268 -0
- package/github/useGitHubConnection.js.map +1 -0
- package/github/useGitHubRepos.d.ts +39 -0
- package/github/useGitHubRepos.d.ts.map +1 -0
- package/github/useGitHubRepos.js +135 -0
- package/github/useGitHubRepos.js.map +1 -0
- package/index.d.ts +34 -0
- package/index.d.ts.map +1 -1
- package/index.js +33 -0
- package/index.js.map +1 -1
- package/internal/ScrollFade.d.ts +15 -0
- package/internal/ScrollFade.d.ts.map +1 -0
- package/internal/ScrollFade.js +24 -0
- package/internal/ScrollFade.js.map +1 -0
- package/internal/markdown-components.d.ts +18 -0
- package/internal/markdown-components.d.ts.map +1 -0
- package/internal/markdown-components.js +78 -0
- package/internal/markdown-components.js.map +1 -0
- package/internal/slug.d.ts +32 -0
- package/internal/slug.d.ts.map +1 -0
- package/internal/slug.js +41 -0
- package/internal/slug.js.map +1 -0
- package/internal/toError.d.ts +16 -0
- package/internal/toError.d.ts.map +1 -0
- package/internal/toError.js +22 -0
- package/internal/toError.js.map +1 -0
- package/internal/useScrollShadows.d.ts +22 -0
- package/internal/useScrollShadows.d.ts.map +1 -0
- package/internal/useScrollShadows.js +40 -0
- package/internal/useScrollShadows.js.map +1 -0
- package/library/ResourceCountCard.d.ts +104 -0
- package/library/ResourceCountCard.d.ts.map +1 -0
- package/library/ResourceCountCard.js +80 -0
- package/library/ResourceCountCard.js.map +1 -0
- package/library/ResourceListView.d.ts +123 -0
- package/library/ResourceListView.d.ts.map +1 -0
- package/library/ResourceListView.js +208 -0
- package/library/ResourceListView.js.map +1 -0
- package/library/ScopeToggle.d.ts +38 -0
- package/library/ScopeToggle.d.ts.map +1 -0
- package/library/ScopeToggle.js +61 -0
- package/library/ScopeToggle.js.map +1 -0
- package/library/VisibilityToggle.d.ts +41 -0
- package/library/VisibilityToggle.d.ts.map +1 -0
- package/library/VisibilityToggle.js +80 -0
- package/library/VisibilityToggle.js.map +1 -0
- package/library/detect-skill-package.d.ts +79 -0
- package/library/detect-skill-package.d.ts.map +1 -0
- package/library/detect-skill-package.js +113 -0
- package/library/detect-skill-package.js.map +1 -0
- package/library/detect-stigmer-resource.d.ts +66 -0
- package/library/detect-stigmer-resource.d.ts.map +1 -0
- package/library/detect-stigmer-resource.js +77 -0
- package/library/detect-stigmer-resource.js.map +1 -0
- package/library/index.d.ts +24 -0
- package/library/index.d.ts.map +1 -0
- package/library/index.js +13 -0
- package/library/index.js.map +1 -0
- package/library/parse-resource-yaml.d.ts +59 -0
- package/library/parse-resource-yaml.d.ts.map +1 -0
- package/library/parse-resource-yaml.js +397 -0
- package/library/parse-resource-yaml.js.map +1 -0
- package/library/serialize-resource-yaml.d.ts +50 -0
- package/library/serialize-resource-yaml.d.ts.map +1 -0
- package/library/serialize-resource-yaml.js +294 -0
- package/library/serialize-resource-yaml.js.map +1 -0
- package/library/useApplyResource.d.ts +115 -0
- package/library/useApplyResource.d.ts.map +1 -0
- package/library/useApplyResource.js +124 -0
- package/library/useApplyResource.js.map +1 -0
- package/library/useDetectSkillPackage.d.ts +54 -0
- package/library/useDetectSkillPackage.d.ts.map +1 -0
- package/library/useDetectSkillPackage.js +59 -0
- package/library/useDetectSkillPackage.js.map +1 -0
- package/library/useDetectStigmerResource.d.ts +30 -0
- package/library/useDetectStigmerResource.d.ts.map +1 -0
- package/library/useDetectStigmerResource.js +35 -0
- package/library/useDetectStigmerResource.js.map +1 -0
- package/library/useUpdateVisibility.d.ts +40 -0
- package/library/useUpdateVisibility.d.ts.map +1 -0
- package/library/useUpdateVisibility.js +67 -0
- package/library/useUpdateVisibility.js.map +1 -0
- package/mcp-server/McpServerConfigPanel.d.ts +116 -0
- package/mcp-server/McpServerConfigPanel.d.ts.map +1 -0
- package/mcp-server/McpServerConfigPanel.js +72 -0
- package/mcp-server/McpServerConfigPanel.js.map +1 -0
- package/mcp-server/McpServerDetailView.d.ts +54 -0
- package/mcp-server/McpServerDetailView.d.ts.map +1 -0
- package/mcp-server/McpServerDetailView.js +138 -0
- package/mcp-server/McpServerDetailView.js.map +1 -0
- package/mcp-server/McpServerPicker.d.ts +158 -0
- package/mcp-server/McpServerPicker.d.ts.map +1 -0
- package/mcp-server/McpServerPicker.js +265 -0
- package/mcp-server/McpServerPicker.js.map +1 -0
- package/mcp-server/McpToolSelector.d.ts +44 -0
- package/mcp-server/McpToolSelector.d.ts.map +1 -0
- package/mcp-server/McpToolSelector.js +75 -0
- package/mcp-server/McpToolSelector.js.map +1 -0
- package/mcp-server/index.d.ts +18 -2
- package/mcp-server/index.d.ts.map +1 -1
- package/mcp-server/index.js +9 -2
- package/mcp-server/index.js.map +1 -1
- package/mcp-server/mcpServerSetupReducer.d.ts +138 -0
- package/mcp-server/mcpServerSetupReducer.d.ts.map +1 -0
- package/mcp-server/mcpServerSetupReducer.js +163 -0
- package/mcp-server/mcpServerSetupReducer.js.map +1 -0
- package/mcp-server/useMcpServer.d.ts +48 -0
- package/mcp-server/useMcpServer.d.ts.map +1 -0
- package/mcp-server/useMcpServer.js +82 -0
- package/mcp-server/useMcpServer.js.map +1 -0
- package/mcp-server/useMcpServerCount.d.ts +49 -0
- package/mcp-server/useMcpServerCount.d.ts.map +1 -0
- package/mcp-server/useMcpServerCount.js +32 -0
- package/mcp-server/useMcpServerCount.js.map +1 -0
- package/mcp-server/useMcpServerList.d.ts +62 -0
- package/mcp-server/useMcpServerList.d.ts.map +1 -0
- package/mcp-server/useMcpServerList.js +38 -0
- package/mcp-server/useMcpServerList.js.map +1 -0
- package/mcp-server/useMcpServerSearch.d.ts +18 -0
- package/mcp-server/useMcpServerSearch.d.ts.map +1 -0
- package/mcp-server/useMcpServerSearch.js +23 -0
- package/mcp-server/useMcpServerSearch.js.map +1 -0
- package/mcp-server/useMcpServerSetup.d.ts +162 -0
- package/mcp-server/useMcpServerSetup.d.ts.map +1 -0
- package/mcp-server/useMcpServerSetup.js +269 -0
- package/mcp-server/useMcpServerSetup.js.map +1 -0
- package/models/ModelSelector.d.ts +22 -0
- package/models/ModelSelector.d.ts.map +1 -0
- package/models/ModelSelector.js +59 -0
- package/models/ModelSelector.js.map +1 -0
- package/models/index.d.ts +7 -0
- package/models/index.d.ts.map +1 -0
- package/models/index.js +4 -0
- package/models/index.js.map +1 -0
- package/models/registry.d.ts +22 -0
- package/models/registry.d.ts.map +1 -0
- package/models/registry.js +43 -0
- package/models/registry.js.map +1 -0
- package/models/useModelRegistry.d.ts +18 -0
- package/models/useModelRegistry.d.ts.map +1 -0
- package/models/useModelRegistry.js +40 -0
- package/models/useModelRegistry.js.map +1 -0
- package/organization/CreateOrganizationForm.d.ts +28 -0
- package/organization/CreateOrganizationForm.d.ts.map +1 -0
- package/organization/CreateOrganizationForm.js +91 -0
- package/organization/CreateOrganizationForm.js.map +1 -0
- package/organization/index.d.ts +5 -0
- package/organization/index.d.ts.map +1 -0
- package/organization/index.js +3 -0
- package/organization/index.js.map +1 -0
- package/organization/useCreateOrganization.d.ts +34 -0
- package/organization/useCreateOrganization.d.ts.map +1 -0
- package/organization/useCreateOrganization.js +50 -0
- package/organization/useCreateOrganization.js.map +1 -0
- package/package.json +12 -40
- package/search/index.d.ts +7 -0
- package/search/index.d.ts.map +1 -0
- package/search/index.js +4 -0
- package/search/index.js.map +1 -0
- package/search/useResourceCount.d.ts +42 -0
- package/search/useResourceCount.d.ts.map +1 -0
- package/search/useResourceCount.js +58 -0
- package/search/useResourceCount.js.map +1 -0
- package/search/useResourceList.d.ts +48 -0
- package/search/useResourceList.d.ts.map +1 -0
- package/search/useResourceList.js +73 -0
- package/search/useResourceList.js.map +1 -0
- package/search/useResourceSearch.d.ts +27 -0
- package/search/useResourceSearch.d.ts.map +1 -0
- package/search/useResourceSearch.js +55 -0
- package/search/useResourceSearch.js.map +1 -0
- package/session/__tests__/group-sessions.test.d.ts +2 -0
- package/session/__tests__/group-sessions.test.d.ts.map +1 -0
- package/session/__tests__/group-sessions.test.js +91 -0
- package/session/__tests__/group-sessions.test.js.map +1 -0
- package/session/__tests__/useSessionConversation.test.d.ts +2 -0
- package/session/__tests__/useSessionConversation.test.d.ts.map +1 -0
- package/session/__tests__/useSessionConversation.test.js +209 -0
- package/session/__tests__/useSessionConversation.test.js.map +1 -0
- package/session/group-sessions.d.ts +20 -0
- package/session/group-sessions.d.ts.map +1 -0
- package/session/group-sessions.js +61 -0
- package/session/group-sessions.js.map +1 -0
- package/session/index.d.ts +17 -6
- package/session/index.d.ts.map +1 -1
- package/session/index.js +10 -5
- package/session/index.js.map +1 -1
- package/session/useAgentRefFromSession.d.ts +28 -0
- package/session/useAgentRefFromSession.d.ts.map +1 -0
- package/session/useAgentRefFromSession.js +73 -0
- package/session/useAgentRefFromSession.js.map +1 -0
- package/session/useCreateSession.d.ts +73 -0
- package/session/useCreateSession.d.ts.map +1 -0
- package/session/useCreateSession.js +87 -0
- package/session/useCreateSession.js.map +1 -0
- package/session/useSession.d.ts +17 -0
- package/session/useSession.d.ts.map +1 -0
- package/session/useSession.js +46 -0
- package/session/useSession.js.map +1 -0
- package/session/useSessionConversation.d.ts +151 -0
- package/session/useSessionConversation.d.ts.map +1 -0
- package/session/useSessionConversation.js +282 -0
- package/session/useSessionConversation.js.map +1 -0
- package/session/useSessionExecutions.d.ts +20 -0
- package/session/useSessionExecutions.d.ts.map +1 -0
- package/session/useSessionExecutions.js +57 -0
- package/session/useSessionExecutions.js.map +1 -0
- package/session/useSessionList.d.ts +25 -0
- package/session/useSessionList.d.ts.map +1 -0
- package/session/useSessionList.js +57 -0
- package/session/useSessionList.js.map +1 -0
- package/session/useUpdateSession.d.ts +22 -0
- package/session/useUpdateSession.d.ts.map +1 -0
- package/session/useUpdateSession.js +38 -0
- package/session/useUpdateSession.js.map +1 -0
- package/skill/SkillDetailView.d.ts +62 -0
- package/skill/SkillDetailView.d.ts.map +1 -0
- package/skill/SkillDetailView.js +157 -0
- package/skill/SkillDetailView.js.map +1 -0
- package/skill/SkillPicker.d.ts +26 -0
- package/skill/SkillPicker.d.ts.map +1 -0
- package/skill/SkillPicker.js +102 -0
- package/skill/SkillPicker.js.map +1 -0
- package/skill/index.d.ts +12 -2
- package/skill/index.d.ts.map +1 -1
- package/skill/index.js +6 -2
- package/skill/index.js.map +1 -1
- package/skill/useSkill.d.ts +49 -0
- package/skill/useSkill.d.ts.map +1 -0
- package/skill/useSkill.js +83 -0
- package/skill/useSkill.js.map +1 -0
- package/skill/useSkillCount.d.ts +49 -0
- package/skill/useSkillCount.d.ts.map +1 -0
- package/skill/useSkillCount.js +32 -0
- package/skill/useSkillCount.js.map +1 -0
- package/skill/useSkillList.d.ts +62 -0
- package/skill/useSkillList.d.ts.map +1 -0
- package/skill/useSkillList.js +38 -0
- package/skill/useSkillList.js.map +1 -0
- package/skill/useSkillSearch.d.ts +18 -0
- package/skill/useSkillSearch.d.ts.map +1 -0
- package/skill/useSkillSearch.js +23 -0
- package/skill/useSkillSearch.js.map +1 -0
- package/src/__tests__/hooks.test.tsx +28 -0
- package/src/agent/AgentDetailView.tsx +738 -0
- package/src/agent/AgentEnvForm.tsx +113 -0
- package/src/agent/AgentPicker.tsx +342 -0
- package/src/agent/agentSetupReducer.ts +234 -0
- package/src/agent/index.ts +43 -11
- package/src/agent/useAgent.ts +103 -0
- package/src/agent/useAgentCount.ts +68 -0
- package/src/agent/useAgentList.ts +84 -0
- package/src/agent/useAgentSearch.ts +43 -0
- package/src/agent/useAgentSetup.ts +434 -0
- package/src/agent/useDefaultAgent.ts +77 -0
- package/src/agent-instance/buildPersonalInstanceInput.ts +40 -0
- package/src/agent-instance/index.ts +11 -0
- package/src/agent-instance/useAgentInstance.ts +87 -0
- package/src/agent-instance/useAgentInstanceList.ts +99 -0
- package/src/agent-instance/useCreateAgentInstance.ts +75 -0
- package/src/agent-instance/usePersonalAgentInstance.ts +185 -0
- package/src/api-key/ApiKeyCreatedAlert.tsx +184 -0
- package/src/api-key/ApiKeyListPanel.tsx +359 -0
- package/src/api-key/CreateApiKeyForm.tsx +250 -0
- package/src/api-key/index.ts +12 -0
- package/src/api-key/useApiKeyList.ts +68 -0
- package/src/api-key/useCreateApiKey.ts +71 -0
- package/src/api-key/useDeleteApiKey.ts +57 -0
- package/src/attachment/AttachmentChipList.tsx +189 -0
- package/src/attachment/attachment-utils.ts +114 -0
- package/src/attachment/index.ts +17 -0
- package/src/attachment/useAttachments.ts +293 -0
- package/src/composer/ComposerToolbar.tsx +169 -0
- package/src/composer/ConfigureMenu.tsx +237 -0
- package/src/composer/ContextChip.tsx +104 -0
- package/src/composer/ContextPopover.tsx +54 -0
- package/src/composer/SessionComposer.tsx +1188 -0
- package/src/composer/icons.tsx +253 -0
- package/src/composer/index.ts +8 -0
- package/src/composer/useComposer.ts +163 -0
- package/src/environment/CreateEnvironmentForm.tsx +188 -0
- package/src/environment/EnvVarForm.tsx +475 -0
- package/src/environment/EnvironmentListPanel.tsx +258 -0
- package/src/environment/EnvironmentVariableEditor.tsx +811 -0
- package/src/environment/diffEnvSpec.ts +50 -0
- package/src/environment/index.ts +43 -0
- package/src/environment/useCreateEnvironment.ts +74 -0
- package/src/environment/useEnvironment.ts +89 -0
- package/src/environment/useEnvironmentList.ts +112 -0
- package/src/environment/usePersonalEnvironment.ts +285 -0
- package/src/environment/useRemoveEnvironmentVariables.ts +86 -0
- package/src/environment/useRevealSecretValue.ts +141 -0
- package/src/environment/useSessionEnvPool.ts +151 -0
- package/src/environment/useUpdateEnvironment.ts +74 -0
- package/src/environment/useUpdateEnvironmentVariables.ts +106 -0
- package/src/error/ErrorMessage.tsx +225 -0
- package/src/error/SecretFlowErrorGuide.tsx +189 -0
- package/src/error/index.ts +5 -0
- package/src/execution/ApprovalCard.tsx +499 -0
- package/src/execution/ArtifactCard.tsx +275 -0
- package/src/execution/ArtifactPreviewModal.tsx +942 -0
- package/src/execution/ArtifactsWidget.tsx +128 -0
- package/src/execution/ExecutionCostSummary.tsx +172 -0
- package/src/execution/ExecutionPhaseBadge.tsx +223 -0
- package/src/execution/ExecutionProgress.tsx +191 -0
- package/src/execution/FilePathContext.tsx +32 -0
- package/src/execution/FilePathLink.tsx +147 -0
- package/src/execution/FollowUpInput.tsx +220 -0
- package/src/execution/MessageEntry.tsx +120 -0
- package/src/execution/MessageThread.tsx +343 -0
- package/src/execution/SessionVariablesInput.tsx +374 -0
- package/src/execution/SubAgentSection.tsx +243 -0
- package/src/execution/ToolCallDetail.tsx +452 -0
- package/src/execution/ToolCallGroup.tsx +342 -0
- package/src/execution/ToolCallItem.tsx +426 -0
- package/src/execution/__tests__/ExecutionCostSummary.test.tsx +416 -0
- package/src/execution/__tests__/execution-phases.test.ts +31 -0
- package/src/execution/__tests__/useExecutionStream.test.tsx +242 -0
- package/src/execution/__tests__/useExecutionUsage.test.tsx +408 -0
- package/src/execution/artifact-utils.ts +136 -0
- package/src/execution/execution-phases.ts +16 -0
- package/src/execution/file-path-resolver.ts +171 -0
- package/src/execution/index.ts +97 -0
- package/src/execution/tool-categories.ts +171 -0
- package/src/execution/useArtifactContent.ts +156 -0
- package/src/execution/useCreateAgentExecution.ts +137 -0
- package/src/execution/useExecutionArtifacts.ts +58 -0
- package/src/execution/useExecutionStream.ts +149 -0
- package/src/execution/useExecutionUsage.ts +213 -0
- package/src/execution/useSessionVariables.ts +189 -0
- package/src/execution/useSubmitApproval.ts +98 -0
- package/src/github/GitHubRepoPicker.tsx +568 -0
- package/src/github/index.ts +19 -0
- package/src/github/useGitHubConnection.ts +368 -0
- package/src/github/useGitHubRepos.ts +197 -0
- package/src/index.ts +392 -0
- package/src/internal/ScrollFade.tsx +29 -0
- package/src/internal/markdown-components.tsx +197 -0
- package/src/internal/slug.ts +41 -0
- package/src/internal/toError.ts +19 -0
- package/src/internal/useScrollShadows.ts +54 -0
- package/src/library/ResourceCountCard.tsx +187 -0
- package/src/library/ResourceListView.tsx +698 -0
- package/src/library/ScopeToggle.tsx +121 -0
- package/src/library/VisibilityToggle.tsx +205 -0
- package/src/library/detect-skill-package.ts +162 -0
- package/src/library/detect-stigmer-resource.ts +130 -0
- package/src/library/index.ts +51 -0
- package/src/library/parse-resource-yaml.ts +611 -0
- package/src/library/serialize-resource-yaml.ts +407 -0
- package/src/library/useApplyResource.ts +211 -0
- package/src/library/useDetectSkillPackage.ts +91 -0
- package/src/library/useDetectStigmerResource.ts +45 -0
- package/src/library/useUpdateVisibility.ts +94 -0
- package/src/mcp-server/McpServerConfigPanel.tsx +265 -0
- package/src/mcp-server/McpServerDetailView.tsx +606 -0
- package/src/mcp-server/McpServerPicker.tsx +857 -0
- package/src/mcp-server/McpToolSelector.tsx +243 -0
- package/src/mcp-server/index.ts +44 -3
- package/src/mcp-server/mcpServerSetupReducer.ts +308 -0
- package/src/mcp-server/useMcpServer.ts +103 -0
- package/src/mcp-server/useMcpServerCount.ts +68 -0
- package/src/mcp-server/useMcpServerList.ts +84 -0
- package/src/mcp-server/useMcpServerSearch.ts +38 -0
- package/src/mcp-server/useMcpServerSetup.ts +487 -0
- package/src/models/ModelSelector.tsx +132 -0
- package/src/models/index.ts +6 -0
- package/src/models/registry.ts +60 -0
- package/src/models/useModelRegistry.ts +58 -0
- package/src/organization/CreateOrganizationForm.tsx +269 -0
- package/src/organization/index.ts +4 -0
- package/src/organization/useCreateOrganization.ts +65 -0
- package/src/search/index.ts +18 -0
- package/src/search/useResourceCount.ts +102 -0
- package/src/search/useResourceList.ts +128 -0
- package/src/search/useResourceSearch.ts +90 -0
- package/src/session/__tests__/group-sessions.test.ts +113 -0
- package/src/session/__tests__/useSessionConversation.test.tsx +305 -0
- package/src/session/group-sessions.ts +80 -0
- package/src/session/index.ts +33 -10
- package/src/session/useAgentRefFromSession.ts +94 -0
- package/src/session/useCreateSession.ts +142 -0
- package/src/session/useSession.ts +60 -0
- package/src/session/useSessionConversation.ts +515 -0
- package/src/session/useSessionExecutions.ts +77 -0
- package/src/session/useSessionList.ts +90 -0
- package/src/session/useUpdateSession.ts +54 -0
- package/src/skill/SkillDetailView.tsx +503 -0
- package/src/skill/SkillPicker.tsx +331 -0
- package/src/skill/index.ts +23 -3
- package/src/skill/useSkill.ts +105 -0
- package/src/skill/useSkillCount.ts +68 -0
- package/src/skill/useSkillList.ts +84 -0
- package/src/skill/useSkillSearch.ts +38 -0
- package/src/styles.css +2 -0
- package/src/workspace/FolderBrowser.tsx +568 -0
- package/src/workspace/WorkspaceEditor.tsx +480 -0
- package/src/workspace/WorkspaceSummary.tsx +109 -0
- package/src/workspace/index.ts +17 -0
- package/src/workspace/useFolderListing.ts +126 -0
- package/src/workspace/useWorkspaceEntries.ts +98 -0
- package/styles.css +1 -1
- package/workspace/FolderBrowser.d.ts +26 -0
- package/workspace/FolderBrowser.d.ts.map +1 -0
- package/workspace/FolderBrowser.js +179 -0
- package/workspace/FolderBrowser.js.map +1 -0
- package/workspace/WorkspaceEditor.d.ts +30 -0
- package/workspace/WorkspaceEditor.d.ts.map +1 -0
- package/workspace/WorkspaceEditor.js +116 -0
- package/workspace/WorkspaceEditor.js.map +1 -0
- package/workspace/WorkspaceSummary.d.ts +30 -0
- package/workspace/WorkspaceSummary.d.ts.map +1 -0
- package/workspace/WorkspaceSummary.js +53 -0
- package/workspace/WorkspaceSummary.js.map +1 -0
- package/workspace/index.d.ts +11 -0
- package/workspace/index.d.ts.map +1 -0
- package/workspace/index.js +6 -0
- package/workspace/index.js.map +1 -0
- package/workspace/useFolderListing.d.ts +35 -0
- package/workspace/useFolderListing.d.ts.map +1 -0
- package/workspace/useFolderListing.js +86 -0
- package/workspace/useFolderListing.js.map +1 -0
- package/workspace/useWorkspaceEntries.d.ts +28 -0
- package/workspace/useWorkspaceEntries.d.ts.map +1 -0
- package/workspace/useWorkspaceEntries.js +66 -0
- package/workspace/useWorkspaceEntries.js.map +1 -0
- package/agent/components/AgentCard.d.ts +0 -9
- package/agent/components/AgentCard.d.ts.map +0 -1
- package/agent/components/AgentCard.js +0 -26
- package/agent/components/AgentCard.js.map +0 -1
- package/agent/components/AgentOverview.d.ts +0 -7
- package/agent/components/AgentOverview.d.ts.map +0 -1
- package/agent/components/AgentOverview.js +0 -36
- package/agent/components/AgentOverview.js.map +0 -1
- package/agent/components/AgentPicker.d.ts +0 -17
- package/agent/components/AgentPicker.d.ts.map +0 -1
- package/agent/components/AgentPicker.js +0 -86
- package/agent/components/AgentPicker.js.map +0 -1
- package/agent/hooks/useAgentSearch.d.ts +0 -28
- package/agent/hooks/useAgentSearch.d.ts.map +0 -1
- package/agent/hooks/useAgentSearch.js +0 -63
- package/agent/hooks/useAgentSearch.js.map +0 -1
- package/agent-execution/components/ApprovalControls.d.ts +0 -10
- package/agent-execution/components/ApprovalControls.d.ts.map +0 -1
- package/agent-execution/components/ApprovalControls.js +0 -19
- package/agent-execution/components/ApprovalControls.js.map +0 -1
- package/agent-execution/components/ExecutionStatus.d.ts +0 -8
- package/agent-execution/components/ExecutionStatus.d.ts.map +0 -1
- package/agent-execution/components/ExecutionStatus.js +0 -14
- package/agent-execution/components/ExecutionStatus.js.map +0 -1
- package/agent-execution/components/ExecutionStream.d.ts +0 -16
- package/agent-execution/components/ExecutionStream.d.ts.map +0 -1
- package/agent-execution/components/ExecutionStream.js +0 -39
- package/agent-execution/components/ExecutionStream.js.map +0 -1
- package/agent-execution/components/MessageEntry.d.ts +0 -17
- package/agent-execution/components/MessageEntry.d.ts.map +0 -1
- package/agent-execution/components/MessageEntry.js +0 -36
- package/agent-execution/components/MessageEntry.js.map +0 -1
- package/agent-execution/components/MessageInput.d.ts +0 -10
- package/agent-execution/components/MessageInput.d.ts.map +0 -1
- package/agent-execution/components/MessageInput.js +0 -27
- package/agent-execution/components/MessageInput.js.map +0 -1
- package/agent-execution/components/OutputBlock.d.ts +0 -9
- package/agent-execution/components/OutputBlock.d.ts.map +0 -1
- package/agent-execution/components/OutputBlock.js +0 -15
- package/agent-execution/components/OutputBlock.js.map +0 -1
- package/agent-execution/components/SubAgentCard.d.ts +0 -11
- package/agent-execution/components/SubAgentCard.d.ts.map +0 -1
- package/agent-execution/components/SubAgentCard.js +0 -19
- package/agent-execution/components/SubAgentCard.js.map +0 -1
- package/agent-execution/components/ToolCallCard.d.ts +0 -11
- package/agent-execution/components/ToolCallCard.d.ts.map +0 -1
- package/agent-execution/components/ToolCallCard.js +0 -25
- package/agent-execution/components/ToolCallCard.js.map +0 -1
- package/agent-execution/helpers.d.ts +0 -35
- package/agent-execution/helpers.d.ts.map +0 -1
- package/agent-execution/helpers.js +0 -157
- package/agent-execution/helpers.js.map +0 -1
- package/agent-execution/hooks/useAgentExecution.d.ts +0 -21
- package/agent-execution/hooks/useAgentExecution.d.ts.map +0 -1
- package/agent-execution/hooks/useAgentExecution.js +0 -99
- package/agent-execution/hooks/useAgentExecution.js.map +0 -1
- package/agent-execution/hooks/useApproval.d.ts +0 -12
- package/agent-execution/hooks/useApproval.d.ts.map +0 -1
- package/agent-execution/hooks/useApproval.js +0 -32
- package/agent-execution/hooks/useApproval.js.map +0 -1
- package/agent-execution/index.d.ts +0 -14
- package/agent-execution/index.d.ts.map +0 -1
- package/agent-execution/index.js +0 -15
- package/agent-execution/index.js.map +0 -1
- package/catalog/components/ResourceSearchCard.d.ts +0 -23
- package/catalog/components/ResourceSearchCard.d.ts.map +0 -1
- package/catalog/components/ResourceSearchCard.js +0 -36
- package/catalog/components/ResourceSearchCard.js.map +0 -1
- package/catalog/index.d.ts +0 -4
- package/catalog/index.d.ts.map +0 -1
- package/catalog/index.js +0 -5
- package/catalog/index.js.map +0 -1
- package/catalog/internal/time.d.ts +0 -13
- package/catalog/internal/time.d.ts.map +0 -1
- package/catalog/internal/time.js +0 -41
- package/catalog/internal/time.js.map +0 -1
- package/internal/badge.d.ts +0 -8
- package/internal/badge.d.ts.map +0 -1
- package/internal/badge.js +0 -34
- package/internal/badge.js.map +0 -1
- package/internal/button.d.ts +0 -9
- package/internal/button.d.ts.map +0 -1
- package/internal/button.js +0 -36
- package/internal/button.js.map +0 -1
- package/internal/collapsible.d.ts +0 -6
- package/internal/collapsible.d.ts.map +0 -1
- package/internal/collapsible.js +0 -14
- package/internal/collapsible.js.map +0 -1
- package/internal/section.d.ts +0 -8
- package/internal/section.d.ts.map +0 -1
- package/internal/section.js +0 -6
- package/internal/section.js.map +0 -1
- package/internal/textarea.d.ts +0 -4
- package/internal/textarea.d.ts.map +0 -1
- package/internal/textarea.js +0 -9
- package/internal/textarea.js.map +0 -1
- package/mcp-server/hooks/useMcpServerSearch.d.ts +0 -25
- package/mcp-server/hooks/useMcpServerSearch.d.ts.map +0 -1
- package/mcp-server/hooks/useMcpServerSearch.js +0 -57
- package/mcp-server/hooks/useMcpServerSearch.js.map +0 -1
- package/session/components/AgentSessionHistory.d.ts +0 -8
- package/session/components/AgentSessionHistory.d.ts.map +0 -1
- package/session/components/AgentSessionHistory.js +0 -11
- package/session/components/AgentSessionHistory.js.map +0 -1
- package/session/components/SessionCard.d.ts +0 -8
- package/session/components/SessionCard.d.ts.map +0 -1
- package/session/components/SessionCard.js +0 -57
- package/session/components/SessionCard.js.map +0 -1
- package/session/hooks/useAgentSessionList.d.ts +0 -21
- package/session/hooks/useAgentSessionList.d.ts.map +0 -1
- package/session/hooks/useAgentSessionList.js +0 -90
- package/session/hooks/useAgentSessionList.js.map +0 -1
- package/skill/hooks/useSkillSearch.d.ts +0 -25
- package/skill/hooks/useSkillSearch.d.ts.map +0 -1
- package/skill/hooks/useSkillSearch.js +0 -57
- package/skill/hooks/useSkillSearch.js.map +0 -1
- package/src/agent/components/AgentCard.tsx +0 -125
- package/src/agent/components/AgentOverview.tsx +0 -209
- package/src/agent/components/AgentPicker.tsx +0 -255
- package/src/agent/hooks/useAgentSearch.ts +0 -94
- package/src/agent-execution/components/ApprovalControls.tsx +0 -99
- package/src/agent-execution/components/ExecutionStatus.tsx +0 -33
- package/src/agent-execution/components/ExecutionStream.tsx +0 -148
- package/src/agent-execution/components/MessageEntry.tsx +0 -125
- package/src/agent-execution/components/MessageInput.tsx +0 -70
- package/src/agent-execution/components/OutputBlock.tsx +0 -43
- package/src/agent-execution/components/SubAgentCard.tsx +0 -138
- package/src/agent-execution/components/ToolCallCard.tsx +0 -153
- package/src/agent-execution/helpers.ts +0 -193
- package/src/agent-execution/hooks/useAgentExecution.ts +0 -147
- package/src/agent-execution/hooks/useApproval.ts +0 -56
- package/src/agent-execution/index.ts +0 -46
- package/src/catalog/components/ResourceSearchCard.tsx +0 -137
- package/src/catalog/index.ts +0 -6
- package/src/catalog/internal/time.ts +0 -40
- package/src/internal/badge.tsx +0 -52
- package/src/internal/button.tsx +0 -60
- package/src/internal/collapsible.tsx +0 -21
- package/src/internal/section.tsx +0 -18
- package/src/internal/textarea.tsx +0 -23
- package/src/mcp-server/hooks/useMcpServerSearch.ts +0 -79
- package/src/session/components/AgentSessionHistory.tsx +0 -109
- package/src/session/components/SessionCard.tsx +0 -113
- package/src/session/hooks/useAgentSessionList.ts +0 -117
- package/src/skill/hooks/useSkillSearch.ts +0 -79
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { useCallback } from "react";
|
|
4
|
+
import { useStigmer } from "../hooks";
|
|
5
|
+
import { useResourceCount, type ResourceListScope } from "../search";
|
|
6
|
+
|
|
7
|
+
export interface UseMcpServerCountOptions {
|
|
8
|
+
/** Text query to filter MCP servers before counting. */
|
|
9
|
+
readonly query?: string;
|
|
10
|
+
/**
|
|
11
|
+
* Controls which MCP servers are counted.
|
|
12
|
+
*
|
|
13
|
+
* - `"org"` — only MCP servers owned by the given organization.
|
|
14
|
+
* - `"all"` — includes public/platform MCP servers.
|
|
15
|
+
*
|
|
16
|
+
* @default "org"
|
|
17
|
+
*/
|
|
18
|
+
readonly scope?: ResourceListScope;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export interface UseMcpServerCountReturn {
|
|
22
|
+
/**
|
|
23
|
+
* Total number of MCP servers matching the current filters. `undefined`
|
|
24
|
+
* until the first successful fetch completes.
|
|
25
|
+
*/
|
|
26
|
+
readonly count: number | undefined;
|
|
27
|
+
readonly isLoading: boolean;
|
|
28
|
+
readonly error: string | null;
|
|
29
|
+
/** Re-fetch the count with the same parameters. */
|
|
30
|
+
readonly refetch: () => void;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Data hook that fetches the total count of MCP servers.
|
|
35
|
+
*
|
|
36
|
+
* Issues a minimal `stigmer.mcpServer.list()` call to retrieve only the
|
|
37
|
+
* total count — no MCP server entries are returned or stored. Useful for
|
|
38
|
+
* summary cards, badges, and dashboard widgets.
|
|
39
|
+
*
|
|
40
|
+
* For the full paginated MCP server list, use {@link useMcpServerList} instead.
|
|
41
|
+
*
|
|
42
|
+
* Pass `null` as `org` to skip fetching (stable no-op).
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```tsx
|
|
46
|
+
* const { count, isLoading } = useMcpServerCount("acme");
|
|
47
|
+
* ```
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```tsx
|
|
51
|
+
* // Count all accessible MCP servers including public/platform ones
|
|
52
|
+
* const { count } = useMcpServerCount("acme", { scope: "all" });
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
export function useMcpServerCount(
|
|
56
|
+
org: string | null,
|
|
57
|
+
options?: UseMcpServerCountOptions,
|
|
58
|
+
): UseMcpServerCountReturn {
|
|
59
|
+
const stigmer = useStigmer();
|
|
60
|
+
|
|
61
|
+
const listFn = useCallback(
|
|
62
|
+
(params: Parameters<typeof stigmer.mcpServer.list>[0]) =>
|
|
63
|
+
stigmer.mcpServer.list(params),
|
|
64
|
+
[stigmer],
|
|
65
|
+
);
|
|
66
|
+
|
|
67
|
+
return useResourceCount(listFn, org, options);
|
|
68
|
+
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { useCallback } from "react";
|
|
4
|
+
import type { SearchResult } from "@stigmer/protos/ai/stigmer/search/v1/io_pb";
|
|
5
|
+
import { useStigmer } from "../hooks";
|
|
6
|
+
import { useResourceList, type ResourceListScope } from "../search";
|
|
7
|
+
|
|
8
|
+
export interface UseMcpServerListOptions {
|
|
9
|
+
/** Maximum MCP servers per page. @default 20 */
|
|
10
|
+
readonly pageSize?: number;
|
|
11
|
+
/** Page number (1-indexed). @default 1 */
|
|
12
|
+
readonly page?: number;
|
|
13
|
+
/** Text query to filter MCP servers by name, description, or tags. */
|
|
14
|
+
readonly query?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Controls which MCP servers are visible.
|
|
17
|
+
*
|
|
18
|
+
* - `"org"` — only MCP servers owned by the given organization.
|
|
19
|
+
* - `"all"` — includes public/platform MCP servers.
|
|
20
|
+
*
|
|
21
|
+
* @default "org"
|
|
22
|
+
*/
|
|
23
|
+
readonly scope?: ResourceListScope;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface UseMcpServerListReturn {
|
|
27
|
+
/** Paginated MCP server entries for the current page. */
|
|
28
|
+
readonly mcpServers: readonly SearchResult[];
|
|
29
|
+
/** Total number of MCP servers matching the current filters. */
|
|
30
|
+
readonly totalCount: number;
|
|
31
|
+
/** Total pages available at the current page size. */
|
|
32
|
+
readonly totalPages: number;
|
|
33
|
+
/** The current page number (mirrors the `page` option). */
|
|
34
|
+
readonly currentPage: number;
|
|
35
|
+
readonly isLoading: boolean;
|
|
36
|
+
readonly error: string | null;
|
|
37
|
+
/** Re-fetch the current page with the same parameters. */
|
|
38
|
+
readonly refetch: () => void;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Data hook that fetches a paginated list of MCP servers for the Library.
|
|
43
|
+
*
|
|
44
|
+
* Wraps `stigmer.mcpServer.list()` with pagination, scope filtering,
|
|
45
|
+
* and text search. All parameters are externally controlled — the
|
|
46
|
+
* consumer manages page state, query debouncing, and scope toggling.
|
|
47
|
+
*
|
|
48
|
+
* For picker/type-ahead search with internal debouncing and query
|
|
49
|
+
* state management, use {@link useMcpServerSearch} instead.
|
|
50
|
+
*
|
|
51
|
+
* Pass `null` as `org` to skip fetching (stable no-op).
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* ```tsx
|
|
55
|
+
* const { mcpServers, totalCount, isLoading } = useMcpServerList("acme", {
|
|
56
|
+
* page: 1,
|
|
57
|
+
* pageSize: 20,
|
|
58
|
+
* scope: "org",
|
|
59
|
+
* });
|
|
60
|
+
* ```
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```tsx
|
|
64
|
+
* // Show all MCP servers including public/platform ones
|
|
65
|
+
* const { mcpServers } = useMcpServerList("acme", { scope: "all" });
|
|
66
|
+
* ```
|
|
67
|
+
*/
|
|
68
|
+
export function useMcpServerList(
|
|
69
|
+
org: string | null,
|
|
70
|
+
options?: UseMcpServerListOptions,
|
|
71
|
+
): UseMcpServerListReturn {
|
|
72
|
+
const stigmer = useStigmer();
|
|
73
|
+
|
|
74
|
+
const listFn = useCallback(
|
|
75
|
+
(params: Parameters<typeof stigmer.mcpServer.list>[0]) =>
|
|
76
|
+
stigmer.mcpServer.list(params),
|
|
77
|
+
[stigmer],
|
|
78
|
+
);
|
|
79
|
+
|
|
80
|
+
const { entries, totalCount, totalPages, currentPage, isLoading, error, refetch } =
|
|
81
|
+
useResourceList(listFn, org, options);
|
|
82
|
+
|
|
83
|
+
return { mcpServers: entries, totalCount, totalPages, currentPage, isLoading, error, refetch };
|
|
84
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { useCallback } from "react";
|
|
4
|
+
import { useStigmer } from "../hooks";
|
|
5
|
+
import {
|
|
6
|
+
useResourceSearch,
|
|
7
|
+
type UseResourceSearchOptions,
|
|
8
|
+
type UseResourceSearchReturn,
|
|
9
|
+
} from "../search";
|
|
10
|
+
|
|
11
|
+
export type UseMcpServerSearchOptions = UseResourceSearchOptions;
|
|
12
|
+
export type UseMcpServerSearchReturn = UseResourceSearchReturn;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Data hook that searches MCP servers available in the given organization.
|
|
16
|
+
*
|
|
17
|
+
* Wraps `stigmer.mcpServer.list()` with debounced search, loading/error
|
|
18
|
+
* tracking, and cancellation-safe fetching. Platform builders use this
|
|
19
|
+
* when they want full control over rendering; the {@link McpServerPicker}
|
|
20
|
+
* styled component uses it internally.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```tsx
|
|
24
|
+
* const { results, isLoading, query, setQuery } = useMcpServerSearch("acme");
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export function useMcpServerSearch(
|
|
28
|
+
org: string,
|
|
29
|
+
options?: UseMcpServerSearchOptions,
|
|
30
|
+
): UseMcpServerSearchReturn {
|
|
31
|
+
const stigmer = useStigmer();
|
|
32
|
+
const listFn = useCallback(
|
|
33
|
+
(params: Parameters<typeof stigmer.mcpServer.list>[0]) =>
|
|
34
|
+
stigmer.mcpServer.list(params),
|
|
35
|
+
[stigmer],
|
|
36
|
+
);
|
|
37
|
+
return useResourceSearch(listFn, org, options);
|
|
38
|
+
}
|
|
@@ -0,0 +1,487 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { useCallback, useEffect, useMemo, useReducer, useRef } from "react";
|
|
4
|
+
import type { EnvVarInput, McpServerUsageInput, ResourceRef } from "@stigmer/sdk";
|
|
5
|
+
import type { McpServer } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/api_pb";
|
|
6
|
+
import type { DiscoveredTool } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/status_pb";
|
|
7
|
+
import { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
|
|
8
|
+
import { useStigmer } from "../hooks";
|
|
9
|
+
import { usePersonalEnvironment } from "../environment/usePersonalEnvironment";
|
|
10
|
+
import { diffEnvSpec } from "../environment/diffEnvSpec";
|
|
11
|
+
import { toError } from "../internal/toError";
|
|
12
|
+
import {
|
|
13
|
+
mcpServerSetupReducer,
|
|
14
|
+
INITIAL_MCP_SETUP_STATE,
|
|
15
|
+
toServerKey,
|
|
16
|
+
} from "./mcpServerSetupReducer";
|
|
17
|
+
|
|
18
|
+
// ---------------------------------------------------------------------------
|
|
19
|
+
// Public types (re-exported from mcpServerSetupReducer for convenience)
|
|
20
|
+
// ---------------------------------------------------------------------------
|
|
21
|
+
|
|
22
|
+
export type {
|
|
23
|
+
McpServerSetupEntry,
|
|
24
|
+
McpServerSetupPhase,
|
|
25
|
+
McpServerSetupState,
|
|
26
|
+
} from "./mcpServerSetupReducer";
|
|
27
|
+
|
|
28
|
+
export { toServerKey } from "./mcpServerSetupReducer";
|
|
29
|
+
|
|
30
|
+
export interface SubmitMcpEnvVarsOptions {
|
|
31
|
+
/**
|
|
32
|
+
* When `true` (default), the provided values are saved to the user's
|
|
33
|
+
* personal environment. Subsequent sessions using the same MCP server
|
|
34
|
+
* will reuse these credentials.
|
|
35
|
+
*
|
|
36
|
+
* When `false`, the values are collected as `pendingRuntimeEnv` for
|
|
37
|
+
* this session only — no data is persisted and no network calls are
|
|
38
|
+
* made. The runtime env is passed to execution creation.
|
|
39
|
+
*
|
|
40
|
+
* @default true
|
|
41
|
+
*/
|
|
42
|
+
readonly saveForFuture?: boolean;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export interface UseMcpServerSetupReturn {
|
|
46
|
+
/**
|
|
47
|
+
* Per-server setup state, keyed by `"org/slug"` (see {@link toServerKey}).
|
|
48
|
+
*
|
|
49
|
+
* Each entry tracks an individual MCP server through the setup
|
|
50
|
+
* lifecycle: `loading → needsSetup → submitting → ready` (or
|
|
51
|
+
* `loading → ready` when no credentials are required).
|
|
52
|
+
*/
|
|
53
|
+
readonly entries: Readonly<Record<string, import("./mcpServerSetupReducer").McpServerSetupEntry>>;
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Add an MCP server to the setup flow.
|
|
57
|
+
*
|
|
58
|
+
* Fetches the full server resource, checks `env_spec` against the
|
|
59
|
+
* personal environment, and resolves the entry to either `ready`
|
|
60
|
+
* (no credentials needed or all present) or `needsSetup` (missing
|
|
61
|
+
* variables). Also extracts discovered tools and approval policies
|
|
62
|
+
* for the tool selector.
|
|
63
|
+
*
|
|
64
|
+
* If the server is already in entries, its entry is reset to
|
|
65
|
+
* `loading` and re-evaluated.
|
|
66
|
+
*/
|
|
67
|
+
readonly addServer: (ref: ResourceRef) => Promise<void>;
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Remove an MCP server from the setup flow.
|
|
71
|
+
*
|
|
72
|
+
* Removes the entry from state. Safe to call for servers not in
|
|
73
|
+
* entries (no-op).
|
|
74
|
+
*/
|
|
75
|
+
readonly removeServer: (ref: ResourceRef) => void;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Complete credential collection for a server in `needsSetup` status.
|
|
79
|
+
*
|
|
80
|
+
* Behavior depends on `options.saveForFuture`:
|
|
81
|
+
* - `true` (default) — Saves values to the personal environment via
|
|
82
|
+
* `addVariables`. The server transitions to `ready`.
|
|
83
|
+
* - `false` — Accumulates values into {@link pendingRuntimeEnv}
|
|
84
|
+
* without API calls. The server transitions to `ready` immediately.
|
|
85
|
+
*
|
|
86
|
+
* Must only be called when the entry is in `needsSetup` status.
|
|
87
|
+
*/
|
|
88
|
+
readonly submitEnvVars: (
|
|
89
|
+
ref: ResourceRef,
|
|
90
|
+
values: Record<string, EnvVarInput>,
|
|
91
|
+
options?: SubmitMcpEnvVarsOptions,
|
|
92
|
+
) => Promise<void>;
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* Update the enabled tools for a server in `ready` status.
|
|
96
|
+
*
|
|
97
|
+
* Dispatches directly to the reducer. Safe to call frequently
|
|
98
|
+
* (e.g., from tool selector checkboxes).
|
|
99
|
+
*/
|
|
100
|
+
readonly setEnabledTools: (ref: ResourceRef, tools: string[]) => void;
|
|
101
|
+
|
|
102
|
+
/** Clear the error on a specific server entry without changing its phase. */
|
|
103
|
+
readonly clearError: (ref: ResourceRef) => void;
|
|
104
|
+
|
|
105
|
+
/** Reset all entries and pending runtime env to initial state. */
|
|
106
|
+
readonly reset: () => void;
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* `true` when every selected server is in `ready` status, or when
|
|
110
|
+
* no servers are selected. `false` during `loading`, `needsSetup`,
|
|
111
|
+
* or `submitting` for any entry.
|
|
112
|
+
*
|
|
113
|
+
* Use this for submission blocking in the session composer.
|
|
114
|
+
*/
|
|
115
|
+
readonly allReady: boolean;
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Count of entries in `needsSetup` status — servers that require
|
|
119
|
+
* user-provided credentials before the session can be created.
|
|
120
|
+
*/
|
|
121
|
+
readonly needsSetupCount: number;
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* Accumulated one-time env vars from servers whose credentials were
|
|
125
|
+
* submitted with `saveForFuture: false`.
|
|
126
|
+
*
|
|
127
|
+
* Consumed imperatively at session creation time and merged into
|
|
128
|
+
* the execution's `runtimeEnv`. Cleared on {@link reset}.
|
|
129
|
+
*/
|
|
130
|
+
readonly pendingRuntimeEnv: Record<string, EnvVarInput>;
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* Ready servers as `McpServerUsageInput[]` for session creation.
|
|
134
|
+
*
|
|
135
|
+
* Derived from entries: only `ready` entries are included. When a
|
|
136
|
+
* server's `enabledTools` matches all discovered tools, `enabledTools`
|
|
137
|
+
* is omitted (API convention for "all tools").
|
|
138
|
+
*/
|
|
139
|
+
readonly usageInputs: McpServerUsageInput[];
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
// ---------------------------------------------------------------------------
|
|
143
|
+
// Helpers
|
|
144
|
+
// ---------------------------------------------------------------------------
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Compute the initial enabled tools for a server based on its spec
|
|
148
|
+
* defaults and discovered capabilities.
|
|
149
|
+
*
|
|
150
|
+
* If `default_enabled_tools` is non-empty, uses that subset. Otherwise,
|
|
151
|
+
* enables all discovered tools (empty array when nothing is discovered —
|
|
152
|
+
* equivalent to "all" at runtime).
|
|
153
|
+
*/
|
|
154
|
+
function computeDefaultEnabledTools(
|
|
155
|
+
mcpServer: McpServer,
|
|
156
|
+
discoveredTools: DiscoveredTool[],
|
|
157
|
+
): string[] {
|
|
158
|
+
const defaults = mcpServer.spec?.defaultEnabledTools;
|
|
159
|
+
if (defaults && defaults.length > 0) return [...defaults];
|
|
160
|
+
return discoveredTools.map(t => t.name);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
// ---------------------------------------------------------------------------
|
|
164
|
+
// Hook
|
|
165
|
+
// ---------------------------------------------------------------------------
|
|
166
|
+
|
|
167
|
+
/**
|
|
168
|
+
* Layer 2 behavior hook that orchestrates the setup flow for multiple
|
|
169
|
+
* MCP servers selected in the {@link McpServerPicker}.
|
|
170
|
+
*
|
|
171
|
+
* When a user toggles an MCP server ON, this hook fetches the server's
|
|
172
|
+
* full resource, checks its `env_spec` against the personal environment
|
|
173
|
+
* (via {@link diffEnvSpec}), and determines whether credentials are
|
|
174
|
+
* needed. It also extracts discovered tools and approval policies for
|
|
175
|
+
* the tool selector UI.
|
|
176
|
+
*
|
|
177
|
+
* The hook supports two credential delivery paths via the `saveForFuture`
|
|
178
|
+
* option on {@link submitEnvVars}:
|
|
179
|
+
* - **Saved** — secrets are persisted to the personal environment for
|
|
180
|
+
* reuse across sessions.
|
|
181
|
+
* - **One-time** — secrets are collected as `pendingRuntimeEnv` for a
|
|
182
|
+
* single execution, with no data persisted.
|
|
183
|
+
*
|
|
184
|
+
* State is managed by `useReducer(mcpServerSetupReducer)` — a per-server
|
|
185
|
+
* state machine with four phases:
|
|
186
|
+
* `loading → needsSetup → submitting → ready`.
|
|
187
|
+
*
|
|
188
|
+
* Composes {@link usePersonalEnvironment} for credential persistence and
|
|
189
|
+
* the Stigmer client for MCP server queries.
|
|
190
|
+
*
|
|
191
|
+
* Mirrors the architecture of {@link useAgentSetup} but adapted for
|
|
192
|
+
* multi-server orchestration (N independent entries vs. single agent).
|
|
193
|
+
*
|
|
194
|
+
* Pass `null` as `org` to disable all operations (stable no-op).
|
|
195
|
+
*
|
|
196
|
+
* @param org - Organization slug. Pass `null` to disable.
|
|
197
|
+
* @param poolKeys - Optional set of env-var keys already available
|
|
198
|
+
* from the session env pool (manual secrets, one-time env vars from
|
|
199
|
+
* other components). When provided, servers whose `env_spec` keys
|
|
200
|
+
* are fully covered by `poolKeys` + personal env auto-resolve to
|
|
201
|
+
* `ready` without prompting. Reactive — when `poolKeys` changes,
|
|
202
|
+
* `needsSetup` entries are re-evaluated.
|
|
203
|
+
*
|
|
204
|
+
* @example
|
|
205
|
+
* ```tsx
|
|
206
|
+
* const {
|
|
207
|
+
* entries,
|
|
208
|
+
* addServer,
|
|
209
|
+
* submitEnvVars,
|
|
210
|
+
* setEnabledTools,
|
|
211
|
+
* allReady,
|
|
212
|
+
* usageInputs,
|
|
213
|
+
* } = useMcpServerSetup("acme", pool.availableKeys);
|
|
214
|
+
*
|
|
215
|
+
* // When user toggles a server ON in the picker:
|
|
216
|
+
* await addServer({ org: "acme", slug: "github", kind: ApiResourceKind.mcp_server });
|
|
217
|
+
*
|
|
218
|
+
* // If the entry resolves to "needsSetup":
|
|
219
|
+
* await submitEnvVars(ref, { GITHUB_TOKEN: { value: "ghp_...", isSecret: true } });
|
|
220
|
+
*
|
|
221
|
+
* // Customize tools for a ready server:
|
|
222
|
+
* setEnabledTools(ref, ["create_issue", "list_issues"]);
|
|
223
|
+
*
|
|
224
|
+
* // At session creation:
|
|
225
|
+
* const session = await createSession({ mcpServerUsages: usageInputs });
|
|
226
|
+
* ```
|
|
227
|
+
*/
|
|
228
|
+
export function useMcpServerSetup(
|
|
229
|
+
org: string | null,
|
|
230
|
+
poolKeys?: Set<string>,
|
|
231
|
+
): UseMcpServerSetupReturn {
|
|
232
|
+
const stigmer = useStigmer();
|
|
233
|
+
const personalEnv = usePersonalEnvironment(org);
|
|
234
|
+
|
|
235
|
+
const [entries, dispatch] = useReducer(
|
|
236
|
+
mcpServerSetupReducer,
|
|
237
|
+
INITIAL_MCP_SETUP_STATE,
|
|
238
|
+
);
|
|
239
|
+
|
|
240
|
+
const runtimeEnvRef = useRef<Record<string, EnvVarInput>>({});
|
|
241
|
+
const entriesRef = useRef(entries);
|
|
242
|
+
entriesRef.current = entries;
|
|
243
|
+
|
|
244
|
+
// -------------------------------------------------------------------------
|
|
245
|
+
// addServer
|
|
246
|
+
// -------------------------------------------------------------------------
|
|
247
|
+
|
|
248
|
+
const addServer = useCallback(
|
|
249
|
+
async (ref: ResourceRef): Promise<void> => {
|
|
250
|
+
if (!org) {
|
|
251
|
+
throw new Error(
|
|
252
|
+
"useMcpServerSetup: cannot add server when org is null.",
|
|
253
|
+
);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
const key = toServerKey(ref);
|
|
257
|
+
dispatch({ type: "ADD_SERVER", key });
|
|
258
|
+
|
|
259
|
+
try {
|
|
260
|
+
const mcpServer = await stigmer.mcpServer.getByReference(ref);
|
|
261
|
+
|
|
262
|
+
const discoveredTools =
|
|
263
|
+
mcpServer.status?.discoveredCapabilities?.tools ?? [];
|
|
264
|
+
const toolApprovals = mcpServer.spec?.defaultToolApprovals ?? [];
|
|
265
|
+
const envSpecData = mcpServer.spec?.envSpec?.data;
|
|
266
|
+
|
|
267
|
+
if (!envSpecData || Object.keys(envSpecData).length === 0) {
|
|
268
|
+
dispatch({
|
|
269
|
+
type: "RESOLVE_READY",
|
|
270
|
+
key,
|
|
271
|
+
mcpServer,
|
|
272
|
+
discoveredTools,
|
|
273
|
+
toolApprovals,
|
|
274
|
+
enabledTools: computeDefaultEnabledTools(
|
|
275
|
+
mcpServer,
|
|
276
|
+
discoveredTools,
|
|
277
|
+
),
|
|
278
|
+
});
|
|
279
|
+
return;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
const existingKeys = new Set(
|
|
283
|
+
Object.keys(personalEnv.environment?.spec?.data ?? {}),
|
|
284
|
+
);
|
|
285
|
+
const missingVariables = diffEnvSpec(envSpecData, existingKeys, poolKeys);
|
|
286
|
+
|
|
287
|
+
if (missingVariables.length === 0) {
|
|
288
|
+
dispatch({
|
|
289
|
+
type: "RESOLVE_READY",
|
|
290
|
+
key,
|
|
291
|
+
mcpServer,
|
|
292
|
+
discoveredTools,
|
|
293
|
+
toolApprovals,
|
|
294
|
+
enabledTools: computeDefaultEnabledTools(
|
|
295
|
+
mcpServer,
|
|
296
|
+
discoveredTools,
|
|
297
|
+
),
|
|
298
|
+
});
|
|
299
|
+
return;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
dispatch({
|
|
303
|
+
type: "RESOLVE_NEEDS_SETUP",
|
|
304
|
+
key,
|
|
305
|
+
mcpServer,
|
|
306
|
+
missingVariables,
|
|
307
|
+
discoveredTools,
|
|
308
|
+
toolApprovals,
|
|
309
|
+
});
|
|
310
|
+
} catch (err) {
|
|
311
|
+
dispatch({ type: "SET_ERROR", key, error: toError(err) });
|
|
312
|
+
}
|
|
313
|
+
},
|
|
314
|
+
[org, stigmer, personalEnv, poolKeys],
|
|
315
|
+
);
|
|
316
|
+
|
|
317
|
+
// -------------------------------------------------------------------------
|
|
318
|
+
// removeServer
|
|
319
|
+
// -------------------------------------------------------------------------
|
|
320
|
+
|
|
321
|
+
const removeServer = useCallback((ref: ResourceRef): void => {
|
|
322
|
+
dispatch({ type: "REMOVE_SERVER", key: toServerKey(ref) });
|
|
323
|
+
}, []);
|
|
324
|
+
|
|
325
|
+
// -------------------------------------------------------------------------
|
|
326
|
+
// submitEnvVars
|
|
327
|
+
// -------------------------------------------------------------------------
|
|
328
|
+
|
|
329
|
+
const submitEnvVars = useCallback(
|
|
330
|
+
async (
|
|
331
|
+
ref: ResourceRef,
|
|
332
|
+
values: Record<string, EnvVarInput>,
|
|
333
|
+
options?: SubmitMcpEnvVarsOptions,
|
|
334
|
+
): Promise<void> => {
|
|
335
|
+
if (!org) {
|
|
336
|
+
throw new Error(
|
|
337
|
+
"useMcpServerSetup: cannot submit env vars when org is null.",
|
|
338
|
+
);
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
const key = toServerKey(ref);
|
|
342
|
+
const entry = entries[key];
|
|
343
|
+
|
|
344
|
+
if (!entry || entry.status !== "needsSetup") {
|
|
345
|
+
throw new Error(
|
|
346
|
+
"useMcpServerSetup: submitEnvVars requires the server to be in " +
|
|
347
|
+
`'needsSetup' status. Server '${key}' is ` +
|
|
348
|
+
`${entry ? `in '${entry.status}' status` : "not selected"}. ` +
|
|
349
|
+
"Call addServer() first and wait for it to resolve.",
|
|
350
|
+
);
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
const { mcpServer, discoveredTools } = entry;
|
|
354
|
+
const enabledTools = computeDefaultEnabledTools(
|
|
355
|
+
mcpServer,
|
|
356
|
+
discoveredTools,
|
|
357
|
+
);
|
|
358
|
+
const saveForFuture = options?.saveForFuture ?? true;
|
|
359
|
+
|
|
360
|
+
dispatch({ type: "SUBMIT_START", key });
|
|
361
|
+
|
|
362
|
+
if (!saveForFuture) {
|
|
363
|
+
Object.assign(runtimeEnvRef.current, values);
|
|
364
|
+
dispatch({ type: "SUBMIT_DONE", key, enabledTools });
|
|
365
|
+
return;
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
try {
|
|
369
|
+
await personalEnv.getOrCreate();
|
|
370
|
+
await personalEnv.addVariables(values);
|
|
371
|
+
dispatch({ type: "SUBMIT_DONE", key, enabledTools });
|
|
372
|
+
} catch (err) {
|
|
373
|
+
dispatch({ type: "SUBMIT_FAIL", key, error: toError(err) });
|
|
374
|
+
}
|
|
375
|
+
},
|
|
376
|
+
[org, entries, personalEnv],
|
|
377
|
+
);
|
|
378
|
+
|
|
379
|
+
// -------------------------------------------------------------------------
|
|
380
|
+
// setEnabledTools
|
|
381
|
+
// -------------------------------------------------------------------------
|
|
382
|
+
|
|
383
|
+
const setEnabledTools = useCallback(
|
|
384
|
+
(ref: ResourceRef, tools: string[]): void => {
|
|
385
|
+
dispatch({
|
|
386
|
+
type: "SET_ENABLED_TOOLS",
|
|
387
|
+
key: toServerKey(ref),
|
|
388
|
+
enabledTools: tools,
|
|
389
|
+
});
|
|
390
|
+
},
|
|
391
|
+
[],
|
|
392
|
+
);
|
|
393
|
+
|
|
394
|
+
// -------------------------------------------------------------------------
|
|
395
|
+
// clearError / reset
|
|
396
|
+
// -------------------------------------------------------------------------
|
|
397
|
+
|
|
398
|
+
const clearError = useCallback((ref: ResourceRef): void => {
|
|
399
|
+
dispatch({ type: "CLEAR_ERROR", key: toServerKey(ref) });
|
|
400
|
+
}, []);
|
|
401
|
+
|
|
402
|
+
const reset = useCallback((): void => {
|
|
403
|
+
dispatch({ type: "RESET" });
|
|
404
|
+
runtimeEnvRef.current = {};
|
|
405
|
+
}, []);
|
|
406
|
+
|
|
407
|
+
// -------------------------------------------------------------------------
|
|
408
|
+
// Pool re-evaluation — auto-resolve needsSetup entries when pool changes
|
|
409
|
+
// -------------------------------------------------------------------------
|
|
410
|
+
|
|
411
|
+
useEffect(() => {
|
|
412
|
+
if (!poolKeys || poolKeys.size === 0) return;
|
|
413
|
+
|
|
414
|
+
const personalKeys = new Set(
|
|
415
|
+
Object.keys(personalEnv.environment?.spec?.data ?? {}),
|
|
416
|
+
);
|
|
417
|
+
|
|
418
|
+
for (const [key, entry] of Object.entries(entriesRef.current)) {
|
|
419
|
+
if (entry.status !== "needsSetup") continue;
|
|
420
|
+
|
|
421
|
+
const envSpecData = entry.mcpServer.spec?.envSpec?.data;
|
|
422
|
+
if (!envSpecData) continue;
|
|
423
|
+
|
|
424
|
+
const missingVariables = diffEnvSpec(envSpecData, personalKeys, poolKeys);
|
|
425
|
+
const enabledTools = computeDefaultEnabledTools(
|
|
426
|
+
entry.mcpServer,
|
|
427
|
+
entry.discoveredTools,
|
|
428
|
+
);
|
|
429
|
+
dispatch({ type: "POOL_RESOLVE", key, missingVariables, enabledTools });
|
|
430
|
+
}
|
|
431
|
+
}, [poolKeys, personalEnv.environment]);
|
|
432
|
+
|
|
433
|
+
// -------------------------------------------------------------------------
|
|
434
|
+
// Derived state
|
|
435
|
+
// -------------------------------------------------------------------------
|
|
436
|
+
|
|
437
|
+
const allReady = useMemo(() => {
|
|
438
|
+
const values = Object.values(entries);
|
|
439
|
+
return values.length === 0 || values.every(e => e.status === "ready");
|
|
440
|
+
}, [entries]);
|
|
441
|
+
|
|
442
|
+
const needsSetupCount = useMemo(
|
|
443
|
+
() =>
|
|
444
|
+
Object.values(entries).filter(e => e.status === "needsSetup").length,
|
|
445
|
+
[entries],
|
|
446
|
+
);
|
|
447
|
+
|
|
448
|
+
const usageInputs = useMemo(() => {
|
|
449
|
+
const result: McpServerUsageInput[] = [];
|
|
450
|
+
|
|
451
|
+
for (const [serverKey, entry] of Object.entries(entries)) {
|
|
452
|
+
if (entry.status !== "ready") continue;
|
|
453
|
+
|
|
454
|
+
const allNames = entry.discoveredTools.map(t => t.name);
|
|
455
|
+
const isAllEnabled =
|
|
456
|
+
allNames.length === 0 ||
|
|
457
|
+
(entry.enabledTools.length === allNames.length &&
|
|
458
|
+
entry.enabledTools.every(name => allNames.includes(name)));
|
|
459
|
+
|
|
460
|
+
const separatorIdx = serverKey.indexOf("/");
|
|
461
|
+
result.push({
|
|
462
|
+
mcpServerRef: {
|
|
463
|
+
org: serverKey.slice(0, separatorIdx),
|
|
464
|
+
slug: serverKey.slice(separatorIdx + 1),
|
|
465
|
+
kind: ApiResourceKind.mcp_server,
|
|
466
|
+
},
|
|
467
|
+
enabledTools: isAllEnabled ? undefined : [...entry.enabledTools],
|
|
468
|
+
});
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
return result;
|
|
472
|
+
}, [entries]);
|
|
473
|
+
|
|
474
|
+
return {
|
|
475
|
+
entries,
|
|
476
|
+
addServer,
|
|
477
|
+
removeServer,
|
|
478
|
+
submitEnvVars,
|
|
479
|
+
setEnabledTools,
|
|
480
|
+
clearError,
|
|
481
|
+
reset,
|
|
482
|
+
allReady,
|
|
483
|
+
needsSetupCount,
|
|
484
|
+
pendingRuntimeEnv: runtimeEnvRef.current,
|
|
485
|
+
usageInputs,
|
|
486
|
+
};
|
|
487
|
+
}
|