@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,168 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useCallback, useMemo, useRef, useState } from "react";
|
|
3
|
+
import { create } from "@bufbuild/protobuf";
|
|
4
|
+
import { UpdateEnvironmentVariablesRequestSchema, RemoveEnvironmentVariablesRequestSchema, } from "@stigmer/protos/ai/stigmer/agentic/environment/v1/io_pb";
|
|
5
|
+
import { EnvironmentValueSchema } from "@stigmer/protos/ai/stigmer/agentic/environment/v1/spec_pb";
|
|
6
|
+
import { useStigmer } from "../hooks";
|
|
7
|
+
import { generateSlugSuffix } from "../internal/slug";
|
|
8
|
+
import { toError } from "../internal/toError";
|
|
9
|
+
import { useEnvironmentList } from "./useEnvironmentList";
|
|
10
|
+
const PERSONAL_LABELS = {
|
|
11
|
+
"stigmer.ai/personal": "true",
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Layer 2 orchestration hook that manages the caller's personal
|
|
15
|
+
* {@link Environment} for a given organization.
|
|
16
|
+
*
|
|
17
|
+
* Encapsulates the "personal environment" convention: label
|
|
18
|
+
* (`stigmer.ai/personal: "true"`), unique slug per user, and
|
|
19
|
+
* the get-or-create lifecycle. Composes {@link useEnvironmentList}
|
|
20
|
+
* for declarative reading and the SDK client directly for mutations.
|
|
21
|
+
*
|
|
22
|
+
* Pass `null` as `org` to skip all operations (stable no-op).
|
|
23
|
+
*
|
|
24
|
+
* This is a Layer 2 **Environment Flow** hook. It provides the managed
|
|
25
|
+
* "personal environment" experience used by the Stigmer Console and
|
|
26
|
+
* any app that wants automatic credential storage. Callers who manage
|
|
27
|
+
* environments programmatically should use the Layer 1 building-block
|
|
28
|
+
* hooks instead:
|
|
29
|
+
* - {@link useCreateEnvironment} — create any environment
|
|
30
|
+
* - {@link useUpdateEnvironmentVariables} — incremental variable merge
|
|
31
|
+
* - {@link useRemoveEnvironmentVariables} — remove variables by key
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```tsx
|
|
35
|
+
* // Basic usage — read the personal environment
|
|
36
|
+
* const { environment, isLoading } = usePersonalEnvironment("acme");
|
|
37
|
+
*
|
|
38
|
+
* // Get-or-create with initial data on first use
|
|
39
|
+
* const { getOrCreate, addVariables, isMutating } =
|
|
40
|
+
* usePersonalEnvironment("acme");
|
|
41
|
+
*
|
|
42
|
+
* const env = await getOrCreate({
|
|
43
|
+
* GITHUB_TOKEN: { value: "ghp_...", isSecret: true },
|
|
44
|
+
* });
|
|
45
|
+
*
|
|
46
|
+
* // Add variables to an existing personal environment
|
|
47
|
+
* await addVariables({
|
|
48
|
+
* SLACK_TOKEN: { value: "xoxb-...", isSecret: true },
|
|
49
|
+
* });
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
export function usePersonalEnvironment(org) {
|
|
53
|
+
const stigmer = useStigmer();
|
|
54
|
+
const { environments, isLoading, error: listError, refetch } = useEnvironmentList(org, PERSONAL_LABELS);
|
|
55
|
+
const environment = useMemo(() => environments[0] ?? null, [environments]);
|
|
56
|
+
const [isMutating, setIsMutating] = useState(false);
|
|
57
|
+
const [mutationError, setMutationError] = useState(null);
|
|
58
|
+
const environmentRef = useRef(environment);
|
|
59
|
+
environmentRef.current = environment;
|
|
60
|
+
const isLoadingRef = useRef(isLoading);
|
|
61
|
+
isLoadingRef.current = isLoading;
|
|
62
|
+
const error = mutationError ?? listError;
|
|
63
|
+
const getOrCreate = useCallback(async (initialData) => {
|
|
64
|
+
if (environmentRef.current)
|
|
65
|
+
return environmentRef.current;
|
|
66
|
+
if (!org) {
|
|
67
|
+
throw new Error("usePersonalEnvironment: cannot call getOrCreate when org is null.");
|
|
68
|
+
}
|
|
69
|
+
if (isLoadingRef.current) {
|
|
70
|
+
throw new Error("usePersonalEnvironment: cannot call getOrCreate while the " +
|
|
71
|
+
"environment list is loading. Wait for isLoading to become " +
|
|
72
|
+
"false before calling getOrCreate().");
|
|
73
|
+
}
|
|
74
|
+
setIsMutating(true);
|
|
75
|
+
setMutationError(null);
|
|
76
|
+
try {
|
|
77
|
+
let data;
|
|
78
|
+
if (initialData && Object.keys(initialData).length > 0) {
|
|
79
|
+
data = initialData;
|
|
80
|
+
}
|
|
81
|
+
const created = await stigmer.environment.create({
|
|
82
|
+
name: "Personal Environment",
|
|
83
|
+
slug: `env-personal-${generateSlugSuffix()}`,
|
|
84
|
+
org,
|
|
85
|
+
labels: PERSONAL_LABELS,
|
|
86
|
+
data,
|
|
87
|
+
});
|
|
88
|
+
refetch();
|
|
89
|
+
return created;
|
|
90
|
+
}
|
|
91
|
+
catch (err) {
|
|
92
|
+
setMutationError(toError(err));
|
|
93
|
+
throw err;
|
|
94
|
+
}
|
|
95
|
+
finally {
|
|
96
|
+
setIsMutating(false);
|
|
97
|
+
}
|
|
98
|
+
}, [org, stigmer, refetch]);
|
|
99
|
+
const addVariables = useCallback(async (variables) => {
|
|
100
|
+
const env = environmentRef.current;
|
|
101
|
+
if (!env) {
|
|
102
|
+
throw new Error("usePersonalEnvironment: personal environment does not exist. " +
|
|
103
|
+
"Call getOrCreate() before addVariables().");
|
|
104
|
+
}
|
|
105
|
+
setIsMutating(true);
|
|
106
|
+
setMutationError(null);
|
|
107
|
+
try {
|
|
108
|
+
const protoVars = Object.fromEntries(Object.entries(variables).map(([k, v]) => [
|
|
109
|
+
k,
|
|
110
|
+
create(EnvironmentValueSchema, {
|
|
111
|
+
value: v.value,
|
|
112
|
+
isSecret: v.isSecret,
|
|
113
|
+
description: v.description,
|
|
114
|
+
}),
|
|
115
|
+
]));
|
|
116
|
+
const request = create(UpdateEnvironmentVariablesRequestSchema, {
|
|
117
|
+
environmentId: env.metadata.id,
|
|
118
|
+
variables: protoVars,
|
|
119
|
+
});
|
|
120
|
+
const updated = await stigmer.environment.updateVariables(request);
|
|
121
|
+
refetch();
|
|
122
|
+
return updated;
|
|
123
|
+
}
|
|
124
|
+
catch (err) {
|
|
125
|
+
setMutationError(toError(err));
|
|
126
|
+
throw err;
|
|
127
|
+
}
|
|
128
|
+
finally {
|
|
129
|
+
setIsMutating(false);
|
|
130
|
+
}
|
|
131
|
+
}, [stigmer, refetch]);
|
|
132
|
+
const removeVariables = useCallback(async (keys) => {
|
|
133
|
+
const env = environmentRef.current;
|
|
134
|
+
if (!env) {
|
|
135
|
+
throw new Error("usePersonalEnvironment: personal environment does not exist. " +
|
|
136
|
+
"Call getOrCreate() before removeVariables().");
|
|
137
|
+
}
|
|
138
|
+
setIsMutating(true);
|
|
139
|
+
setMutationError(null);
|
|
140
|
+
try {
|
|
141
|
+
const request = create(RemoveEnvironmentVariablesRequestSchema, {
|
|
142
|
+
environmentId: env.metadata.id,
|
|
143
|
+
keys,
|
|
144
|
+
});
|
|
145
|
+
const updated = await stigmer.environment.removeVariables(request);
|
|
146
|
+
refetch();
|
|
147
|
+
return updated;
|
|
148
|
+
}
|
|
149
|
+
catch (err) {
|
|
150
|
+
setMutationError(toError(err));
|
|
151
|
+
throw err;
|
|
152
|
+
}
|
|
153
|
+
finally {
|
|
154
|
+
setIsMutating(false);
|
|
155
|
+
}
|
|
156
|
+
}, [stigmer, refetch]);
|
|
157
|
+
return {
|
|
158
|
+
environment,
|
|
159
|
+
isLoading,
|
|
160
|
+
error,
|
|
161
|
+
refetch,
|
|
162
|
+
getOrCreate,
|
|
163
|
+
addVariables,
|
|
164
|
+
removeVariables,
|
|
165
|
+
isMutating,
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=usePersonalEnvironment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePersonalEnvironment.js","sourceRoot":"","sources":["../../src/environment/usePersonalEnvironment.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG5C,OAAO,EACL,uCAAuC,EACvC,uCAAuC,GACxC,MAAM,yDAAyD,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2DAA2D,CAAC;AACnG,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,eAAe,GAA2B;IAC9C,qBAAqB,EAAE,MAAM;CAC9B,CAAC;AAoEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,MAAM,UAAU,sBAAsB,CACpC,GAAkB;IAElB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,GAC1D,kBAAkB,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IAE3C,MAAM,WAAW,GAAG,OAAO,CACzB,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,EAC7B,CAAC,YAAY,CAAC,CACf,CAAC;IAEF,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvE,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IAC3C,cAAc,CAAC,OAAO,GAAG,WAAW,CAAC;IAErC,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IACvC,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC;IAEjC,MAAM,KAAK,GAAG,aAAa,IAAI,SAAS,CAAC;IAEzC,MAAM,WAAW,GAAG,WAAW,CAC7B,KAAK,EACH,WAAyC,EACnB,EAAE;QACxB,IAAI,cAAc,CAAC,OAAO;YAAE,OAAO,cAAc,CAAC,OAAO,CAAC;QAE1D,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;QACJ,CAAC;QAED,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACb,4DAA4D;gBAC1D,4DAA4D;gBAC5D,qCAAqC,CACxC,CAAC;QACJ,CAAC;QAED,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEvB,IAAI,CAAC;YACH,IAAI,IAA6C,CAAC;YAClD,IAAI,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvD,IAAI,GAAG,WAAW,CAAC;YACrB,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC;gBAC/C,IAAI,EAAE,sBAAsB;gBAC5B,IAAI,EAAE,gBAAgB,kBAAkB,EAAE,EAAE;gBAC5C,GAAG;gBACH,MAAM,EAAE,eAAe;gBACvB,IAAI;aACL,CAAC,CAAC;YAEH,OAAO,EAAE,CAAC;YACV,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,aAAa,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,EACD,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CACxB,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EACH,SAAsC,EAChB,EAAE;QACxB,MAAM,GAAG,GAAG,cAAc,CAAC,OAAO,CAAC;QACnC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CACb,+DAA+D;gBAC7D,2CAA2C,CAC9C,CAAC;QACJ,CAAC;QAED,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEvB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAClC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;gBACxC,CAAC;gBACD,MAAM,CAAC,sBAAsB,EAAE;oBAC7B,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,WAAW,EAAE,CAAC,CAAC,WAAW;iBAC3B,CAAC;aACH,CAAC,CACH,CAAC;YAEF,MAAM,OAAO,GAAG,MAAM,CAAC,uCAAuC,EAAE;gBAC9D,aAAa,EAAE,GAAG,CAAC,QAAS,CAAC,EAAE;gBAC/B,SAAS,EAAE,SAAS;aACrB,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YACnE,OAAO,EAAE,CAAC;YACV,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,aAAa,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,OAAO,CAAC,CACnB,CAAC;IAEF,MAAM,eAAe,GAAG,WAAW,CACjC,KAAK,EAAE,IAAc,EAAwB,EAAE;QAC7C,MAAM,GAAG,GAAG,cAAc,CAAC,OAAO,CAAC;QACnC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CACb,+DAA+D;gBAC7D,8CAA8C,CACjD,CAAC;QACJ,CAAC;QAED,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEvB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,CAAC,uCAAuC,EAAE;gBAC9D,aAAa,EAAE,GAAG,CAAC,QAAS,CAAC,EAAE;gBAC/B,IAAI;aACL,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YACnE,OAAO,EAAE,CAAC;YACV,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,aAAa,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,OAAO,CAAC,CACnB,CAAC;IAEF,OAAO;QACL,WAAW;QACX,SAAS;QACT,KAAK;QACL,OAAO;QACP,WAAW;QACX,YAAY;QACZ,eAAe;QACf,UAAU;KACX,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { Environment } from "@stigmer/protos/ai/stigmer/agentic/environment/v1/api_pb";
|
|
2
|
+
/**
|
|
3
|
+
* Input for removing specific variables from an environment by key.
|
|
4
|
+
*
|
|
5
|
+
* Keys that do not exist in the environment are silently ignored.
|
|
6
|
+
*/
|
|
7
|
+
export interface RemoveEnvironmentVariablesInput {
|
|
8
|
+
/** The environment resource ID. */
|
|
9
|
+
readonly environmentId: string;
|
|
10
|
+
/** Keys to remove from the environment's `spec.data`. */
|
|
11
|
+
readonly keys: string[];
|
|
12
|
+
}
|
|
13
|
+
export interface UseRemoveEnvironmentVariablesReturn {
|
|
14
|
+
readonly removeVariables: (input: RemoveEnvironmentVariablesInput) => Promise<Environment>;
|
|
15
|
+
readonly isRemovingVariables: boolean;
|
|
16
|
+
readonly error: Error | null;
|
|
17
|
+
readonly clearError: () => void;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Behavior hook that wraps `environment.removeVariables()` with
|
|
21
|
+
* loading/error state.
|
|
22
|
+
*
|
|
23
|
+
* Removes the specified keys from the environment's `spec.data`.
|
|
24
|
+
* Keys that do not exist are silently ignored. Variables not
|
|
25
|
+
* mentioned in the request are preserved unchanged.
|
|
26
|
+
*
|
|
27
|
+
* Returns the full {@link Environment} proto (with secrets redacted)
|
|
28
|
+
* so callers can immediately reference the latest state.
|
|
29
|
+
*
|
|
30
|
+
* This is a Layer 1 building-block hook for the **Environment Flow**
|
|
31
|
+
* — delete individual variables without a full-resource update cycle.
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```tsx
|
|
35
|
+
* const { removeVariables, isRemovingVariables, error } =
|
|
36
|
+
* useRemoveEnvironmentVariables();
|
|
37
|
+
*
|
|
38
|
+
* const env = await removeVariables({
|
|
39
|
+
* environmentId: "env-abc123",
|
|
40
|
+
* keys: ["DEPRECATED_KEY", "OLD_TOKEN"],
|
|
41
|
+
* });
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
export declare function useRemoveEnvironmentVariables(): UseRemoveEnvironmentVariablesReturn;
|
|
45
|
+
//# sourceMappingURL=useRemoveEnvironmentVariables.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRemoveEnvironmentVariables.d.ts","sourceRoot":"","sources":["../../src/environment/useRemoveEnvironmentVariables.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0DAA0D,CAAC;AAK5F;;;;GAIG;AACH,MAAM,WAAW,+BAA+B;IAC9C,mCAAmC;IACnC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,yDAAyD;IACzD,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,eAAe,EAAE,CACxB,KAAK,EAAE,+BAA+B,KACnC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1B,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,6BAA6B,IAAI,mCAAmC,CA8BnF"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useCallback, useState } from "react";
|
|
3
|
+
import { create } from "@bufbuild/protobuf";
|
|
4
|
+
import { RemoveEnvironmentVariablesRequestSchema } from "@stigmer/protos/ai/stigmer/agentic/environment/v1/io_pb";
|
|
5
|
+
import { useStigmer } from "../hooks";
|
|
6
|
+
import { toError } from "../internal/toError";
|
|
7
|
+
/**
|
|
8
|
+
* Behavior hook that wraps `environment.removeVariables()` with
|
|
9
|
+
* loading/error state.
|
|
10
|
+
*
|
|
11
|
+
* Removes the specified keys from the environment's `spec.data`.
|
|
12
|
+
* Keys that do not exist are silently ignored. Variables not
|
|
13
|
+
* mentioned in the request are preserved unchanged.
|
|
14
|
+
*
|
|
15
|
+
* Returns the full {@link Environment} proto (with secrets redacted)
|
|
16
|
+
* so callers can immediately reference the latest state.
|
|
17
|
+
*
|
|
18
|
+
* This is a Layer 1 building-block hook for the **Environment Flow**
|
|
19
|
+
* — delete individual variables without a full-resource update cycle.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```tsx
|
|
23
|
+
* const { removeVariables, isRemovingVariables, error } =
|
|
24
|
+
* useRemoveEnvironmentVariables();
|
|
25
|
+
*
|
|
26
|
+
* const env = await removeVariables({
|
|
27
|
+
* environmentId: "env-abc123",
|
|
28
|
+
* keys: ["DEPRECATED_KEY", "OLD_TOKEN"],
|
|
29
|
+
* });
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export function useRemoveEnvironmentVariables() {
|
|
33
|
+
const stigmer = useStigmer();
|
|
34
|
+
const [isRemovingVariables, setIsRemovingVariables] = useState(false);
|
|
35
|
+
const [error, setError] = useState(null);
|
|
36
|
+
const clearError = useCallback(() => setError(null), []);
|
|
37
|
+
const removeVariables = useCallback(async (input) => {
|
|
38
|
+
setIsRemovingVariables(true);
|
|
39
|
+
setError(null);
|
|
40
|
+
try {
|
|
41
|
+
const request = create(RemoveEnvironmentVariablesRequestSchema, {
|
|
42
|
+
environmentId: input.environmentId,
|
|
43
|
+
keys: input.keys,
|
|
44
|
+
});
|
|
45
|
+
return await stigmer.environment.removeVariables(request);
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
setError(toError(err));
|
|
49
|
+
throw err;
|
|
50
|
+
}
|
|
51
|
+
finally {
|
|
52
|
+
setIsRemovingVariables(false);
|
|
53
|
+
}
|
|
54
|
+
}, [stigmer]);
|
|
55
|
+
return { removeVariables, isRemovingVariables, error, clearError };
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=useRemoveEnvironmentVariables.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRemoveEnvironmentVariables.js","sourceRoot":"","sources":["../../src/environment/useRemoveEnvironmentVariables.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,uCAAuC,EAAE,MAAM,yDAAyD,CAAC;AAClH,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAuB9C;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,6BAA6B;IAC3C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAEzD,MAAM,eAAe,GAAG,WAAW,CACjC,KAAK,EAAE,KAAsC,EAAwB,EAAE;QACrE,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEf,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,CAAC,uCAAuC,EAAE;gBAC9D,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC,CAAC;YAEH,OAAO,MAAM,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YACvB,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;IACH,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AACrE,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
export interface UseRevealSecretValueOptions {
|
|
2
|
+
/**
|
|
3
|
+
* Milliseconds after which the revealed value is automatically cleared
|
|
4
|
+
* from component state. Prevents sensitive values from lingering in memory.
|
|
5
|
+
*
|
|
6
|
+
* - Default: `30_000` (30 seconds) — enough time to copy a value.
|
|
7
|
+
* - Set to `0` to disable auto-clear (caller is responsible for clearing).
|
|
8
|
+
*/
|
|
9
|
+
readonly autoClearMs?: number;
|
|
10
|
+
}
|
|
11
|
+
export interface UseRevealSecretValueReturn {
|
|
12
|
+
/**
|
|
13
|
+
* Fetch and reveal a single secret value from an environment.
|
|
14
|
+
* Replaces any previously revealed value. Resets error state.
|
|
15
|
+
*
|
|
16
|
+
* @param environmentId - The environment resource ID.
|
|
17
|
+
* @param key - The key within `spec.data` to reveal.
|
|
18
|
+
*/
|
|
19
|
+
readonly reveal: (environmentId: string, key: string) => Promise<void>;
|
|
20
|
+
/** The decrypted value, or `null` when not yet revealed or cleared. */
|
|
21
|
+
readonly revealedValue: string | null;
|
|
22
|
+
/** `true` while the reveal request is in-flight. */
|
|
23
|
+
readonly isRevealing: boolean;
|
|
24
|
+
/** Error message from the last failed reveal attempt, or `null`. */
|
|
25
|
+
readonly error: Error | null;
|
|
26
|
+
/** Immediately clear the revealed value and cancel any pending auto-clear timer. */
|
|
27
|
+
readonly clearRevealedValue: () => void;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Behavior hook that encapsulates the "reveal secret" interaction.
|
|
31
|
+
*
|
|
32
|
+
* Fetches a single unredacted secret value via
|
|
33
|
+
* `stigmer.environment.getSecretValue()`, holds the decrypted value in
|
|
34
|
+
* state, and auto-clears it after a configurable timeout.
|
|
35
|
+
*
|
|
36
|
+
* This is an **imperative** hook (call `reveal()` on user action),
|
|
37
|
+
* not a declarative data hook (no auto-fetch on mount). It pairs with
|
|
38
|
+
* a "reveal" / "show" button in the UI — the canonical pattern for
|
|
39
|
+
* sensitive credential display (AWS, GitHub, 1Password).
|
|
40
|
+
*
|
|
41
|
+
* Follows the headless-first pattern: pure behavior, zero rendering.
|
|
42
|
+
* Platform builders compose this hook with their own UI.
|
|
43
|
+
*
|
|
44
|
+
* This is a Layer 1 building-block hook for the **Environment Flow**.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```tsx
|
|
48
|
+
* function SecretField({ envId, secretKey }: Props) {
|
|
49
|
+
* const { reveal, revealedValue, isRevealing, clearRevealedValue } =
|
|
50
|
+
* useRevealSecretValue();
|
|
51
|
+
*
|
|
52
|
+
* return revealedValue ? (
|
|
53
|
+
* <div>
|
|
54
|
+
* <code>{revealedValue}</code>
|
|
55
|
+
* <button onClick={clearRevealedValue}>Hide</button>
|
|
56
|
+
* </div>
|
|
57
|
+
* ) : (
|
|
58
|
+
* <button onClick={() => reveal(envId, secretKey)} disabled={isRevealing}>
|
|
59
|
+
* {isRevealing ? "Revealing…" : "Reveal"}
|
|
60
|
+
* </button>
|
|
61
|
+
* );
|
|
62
|
+
* }
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export declare function useRevealSecretValue(options?: UseRevealSecretValueOptions): UseRevealSecretValueReturn;
|
|
66
|
+
//# sourceMappingURL=useRevealSecretValue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRevealSecretValue.d.ts","sourceRoot":"","sources":["../../src/environment/useRevealSecretValue.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,2BAA2B;IAC1C;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,0BAA0B;IACzC;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvE,uEAAuE;IACvE,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtC,oDAAoD;IACpD,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAE9B,oEAAoE;IACpE,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAE7B,oFAAoF;IACpF,QAAQ,CAAC,kBAAkB,EAAE,MAAM,IAAI,CAAC;CACzC;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,CAAC,EAAE,2BAA2B,GACpC,0BAA0B,CA0D5B"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
3
|
+
import { create } from "@bufbuild/protobuf";
|
|
4
|
+
import { EnvironmentSecretValueInputSchema } from "@stigmer/protos/ai/stigmer/agentic/environment/v1/io_pb";
|
|
5
|
+
import { useStigmer } from "../hooks";
|
|
6
|
+
import { toError } from "../internal/toError";
|
|
7
|
+
const DEFAULT_AUTO_CLEAR_MS = 30_000;
|
|
8
|
+
/**
|
|
9
|
+
* Behavior hook that encapsulates the "reveal secret" interaction.
|
|
10
|
+
*
|
|
11
|
+
* Fetches a single unredacted secret value via
|
|
12
|
+
* `stigmer.environment.getSecretValue()`, holds the decrypted value in
|
|
13
|
+
* state, and auto-clears it after a configurable timeout.
|
|
14
|
+
*
|
|
15
|
+
* This is an **imperative** hook (call `reveal()` on user action),
|
|
16
|
+
* not a declarative data hook (no auto-fetch on mount). It pairs with
|
|
17
|
+
* a "reveal" / "show" button in the UI — the canonical pattern for
|
|
18
|
+
* sensitive credential display (AWS, GitHub, 1Password).
|
|
19
|
+
*
|
|
20
|
+
* Follows the headless-first pattern: pure behavior, zero rendering.
|
|
21
|
+
* Platform builders compose this hook with their own UI.
|
|
22
|
+
*
|
|
23
|
+
* This is a Layer 1 building-block hook for the **Environment Flow**.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```tsx
|
|
27
|
+
* function SecretField({ envId, secretKey }: Props) {
|
|
28
|
+
* const { reveal, revealedValue, isRevealing, clearRevealedValue } =
|
|
29
|
+
* useRevealSecretValue();
|
|
30
|
+
*
|
|
31
|
+
* return revealedValue ? (
|
|
32
|
+
* <div>
|
|
33
|
+
* <code>{revealedValue}</code>
|
|
34
|
+
* <button onClick={clearRevealedValue}>Hide</button>
|
|
35
|
+
* </div>
|
|
36
|
+
* ) : (
|
|
37
|
+
* <button onClick={() => reveal(envId, secretKey)} disabled={isRevealing}>
|
|
38
|
+
* {isRevealing ? "Revealing…" : "Reveal"}
|
|
39
|
+
* </button>
|
|
40
|
+
* );
|
|
41
|
+
* }
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
export function useRevealSecretValue(options) {
|
|
45
|
+
const stigmer = useStigmer();
|
|
46
|
+
const [revealedValue, setRevealedValue] = useState(null);
|
|
47
|
+
const [isRevealing, setIsRevealing] = useState(false);
|
|
48
|
+
const [error, setError] = useState(null);
|
|
49
|
+
const autoClearMs = options?.autoClearMs ?? DEFAULT_AUTO_CLEAR_MS;
|
|
50
|
+
const timerRef = useRef(null);
|
|
51
|
+
const cancelTimer = useCallback(() => {
|
|
52
|
+
if (timerRef.current !== null) {
|
|
53
|
+
clearTimeout(timerRef.current);
|
|
54
|
+
timerRef.current = null;
|
|
55
|
+
}
|
|
56
|
+
}, []);
|
|
57
|
+
const clearRevealedValue = useCallback(() => {
|
|
58
|
+
cancelTimer();
|
|
59
|
+
setRevealedValue(null);
|
|
60
|
+
}, [cancelTimer]);
|
|
61
|
+
// Clean up timer and clear value on unmount
|
|
62
|
+
useEffect(() => {
|
|
63
|
+
return () => {
|
|
64
|
+
cancelTimer();
|
|
65
|
+
setRevealedValue(null);
|
|
66
|
+
};
|
|
67
|
+
}, [cancelTimer]);
|
|
68
|
+
const reveal = useCallback(async (environmentId, key) => {
|
|
69
|
+
cancelTimer();
|
|
70
|
+
setIsRevealing(true);
|
|
71
|
+
setError(null);
|
|
72
|
+
try {
|
|
73
|
+
const result = await stigmer.environment.getSecretValue(create(EnvironmentSecretValueInputSchema, { environmentId, key }));
|
|
74
|
+
setRevealedValue(result.value ?? null);
|
|
75
|
+
if (autoClearMs > 0) {
|
|
76
|
+
timerRef.current = setTimeout(() => {
|
|
77
|
+
setRevealedValue(null);
|
|
78
|
+
timerRef.current = null;
|
|
79
|
+
}, autoClearMs);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
catch (err) {
|
|
83
|
+
setError(toError(err));
|
|
84
|
+
setRevealedValue(null);
|
|
85
|
+
}
|
|
86
|
+
finally {
|
|
87
|
+
setIsRevealing(false);
|
|
88
|
+
}
|
|
89
|
+
}, [stigmer, autoClearMs, cancelTimer]);
|
|
90
|
+
return { reveal, revealedValue, isRevealing, error, clearRevealedValue };
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=useRevealSecretValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRevealSecretValue.js","sourceRoot":"","sources":["../../src/environment/useRevealSecretValue.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import type { EnvVarInput } from "@stigmer/sdk";
|
|
2
|
+
import type { SessionVariableEntry } from "../execution/useSessionVariables";
|
|
3
|
+
/**
|
|
4
|
+
* Inputs to the session env pool from all env-var sources.
|
|
5
|
+
*
|
|
6
|
+
* The pool aggregates keys and values from personal environment,
|
|
7
|
+
* manual session variables, agent one-time env vars, and MCP server
|
|
8
|
+
* pending runtime env. Any source can be omitted — the pool
|
|
9
|
+
* gracefully handles `undefined` inputs.
|
|
10
|
+
*/
|
|
11
|
+
export interface SessionEnvPoolInput {
|
|
12
|
+
/** Keys already saved in the user's personal environment. */
|
|
13
|
+
readonly personalEnvKeys?: Set<string>;
|
|
14
|
+
/** Manual session variable entries from {@link useSessionVariables}. */
|
|
15
|
+
readonly manualSecrets?: readonly SessionVariableEntry[];
|
|
16
|
+
/** Agent one-time runtime env (when resolution mode is `"oneTime"`). */
|
|
17
|
+
readonly agentRuntimeEnv?: Readonly<Record<string, EnvVarInput>>;
|
|
18
|
+
/** MCP server pending runtime env (accumulated one-time values). */
|
|
19
|
+
readonly mcpRuntimeEnv?: Readonly<Record<string, EnvVarInput>>;
|
|
20
|
+
}
|
|
21
|
+
export interface UseSessionEnvPoolReturn {
|
|
22
|
+
/**
|
|
23
|
+
* All env var keys currently available from any source.
|
|
24
|
+
*
|
|
25
|
+
* Includes keys from personal environment, valid manual secrets,
|
|
26
|
+
* agent one-time env, and MCP pending env. Reactive — recomputes
|
|
27
|
+
* when any source changes.
|
|
28
|
+
*/
|
|
29
|
+
readonly availableKeys: Set<string>;
|
|
30
|
+
/**
|
|
31
|
+
* Look up a value by key from the pool.
|
|
32
|
+
*
|
|
33
|
+
* Priority order (last-write-wins, matching submit merge order):
|
|
34
|
+
* 1. Personal env keys (no values available — returns sentinel)
|
|
35
|
+
* 2. Agent one-time runtime env
|
|
36
|
+
* 3. MCP server pending runtime env
|
|
37
|
+
* 4. Manual session variables (highest priority)
|
|
38
|
+
*
|
|
39
|
+
* Returns `undefined` if the key is not in the pool.
|
|
40
|
+
*/
|
|
41
|
+
readonly getAvailableValue: (key: string) => EnvVarInput | undefined;
|
|
42
|
+
/**
|
|
43
|
+
* Check if a key is satisfied by any source in the pool.
|
|
44
|
+
*
|
|
45
|
+
* Equivalent to `availableKeys.has(key)` but provided for
|
|
46
|
+
* semantic clarity.
|
|
47
|
+
*/
|
|
48
|
+
readonly isKeySatisfied: (key: string) => boolean;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Reactive computation hook that aggregates environment variable
|
|
52
|
+
* availability from all session-level sources.
|
|
53
|
+
*
|
|
54
|
+
* The pool enables cross-referencing between the session variables
|
|
55
|
+
* panel, agent env form, and MCP server env form — so a variable
|
|
56
|
+
* entered in one place is recognized as "already provided" by the
|
|
57
|
+
* others. This eliminates duplicate credential prompting.
|
|
58
|
+
*
|
|
59
|
+
* Pure computation — no side effects, no API calls. Recomputes
|
|
60
|
+
* via `useMemo` when any input source changes.
|
|
61
|
+
*
|
|
62
|
+
* Platform builders who use individual setup hooks can pass the
|
|
63
|
+
* pool's `availableKeys` to `useMcpServerSetup` and `useAgentSetup`
|
|
64
|
+
* via their `poolKeys` parameter for cross-referencing.
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```tsx
|
|
68
|
+
* const sessionVars = useSessionVariables();
|
|
69
|
+
* const personalEnv = usePersonalEnvironment(org);
|
|
70
|
+
*
|
|
71
|
+
* const pool = useSessionEnvPool({
|
|
72
|
+
* personalEnvKeys: new Set(Object.keys(personalEnv.environment?.spec?.data ?? {})),
|
|
73
|
+
* manualSecrets: sessionVars.entries,
|
|
74
|
+
* });
|
|
75
|
+
*
|
|
76
|
+
* // pool.isKeySatisfied("GITHUB_TOKEN") → true if entered anywhere
|
|
77
|
+
* ```
|
|
78
|
+
*/
|
|
79
|
+
export declare function useSessionEnvPool(input: SessionEnvPoolInput): UseSessionEnvPoolReturn;
|
|
80
|
+
//# sourceMappingURL=useSessionEnvPool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSessionEnvPool.d.ts","sourceRoot":"","sources":["../../src/environment/useSessionEnvPool.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAE7E;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAmB;IAClC,6DAA6D;IAC7D,QAAQ,CAAC,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,wEAAwE;IACxE,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACzD,wEAAwE;IACxE,QAAQ,CAAC,eAAe,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;IACjE,oEAAoE;IACpE,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;CAChE;AAED,MAAM,WAAW,uBAAuB;IACtC;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAEpC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,iBAAiB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,WAAW,GAAG,SAAS,CAAC;IAErE;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CACnD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,mBAAmB,GACzB,uBAAuB,CA8DzB"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useMemo } from "react";
|
|
3
|
+
/**
|
|
4
|
+
* Reactive computation hook that aggregates environment variable
|
|
5
|
+
* availability from all session-level sources.
|
|
6
|
+
*
|
|
7
|
+
* The pool enables cross-referencing between the session variables
|
|
8
|
+
* panel, agent env form, and MCP server env form — so a variable
|
|
9
|
+
* entered in one place is recognized as "already provided" by the
|
|
10
|
+
* others. This eliminates duplicate credential prompting.
|
|
11
|
+
*
|
|
12
|
+
* Pure computation — no side effects, no API calls. Recomputes
|
|
13
|
+
* via `useMemo` when any input source changes.
|
|
14
|
+
*
|
|
15
|
+
* Platform builders who use individual setup hooks can pass the
|
|
16
|
+
* pool's `availableKeys` to `useMcpServerSetup` and `useAgentSetup`
|
|
17
|
+
* via their `poolKeys` parameter for cross-referencing.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```tsx
|
|
21
|
+
* const sessionVars = useSessionVariables();
|
|
22
|
+
* const personalEnv = usePersonalEnvironment(org);
|
|
23
|
+
*
|
|
24
|
+
* const pool = useSessionEnvPool({
|
|
25
|
+
* personalEnvKeys: new Set(Object.keys(personalEnv.environment?.spec?.data ?? {})),
|
|
26
|
+
* manualSecrets: sessionVars.entries,
|
|
27
|
+
* });
|
|
28
|
+
*
|
|
29
|
+
* // pool.isKeySatisfied("GITHUB_TOKEN") → true if entered anywhere
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export function useSessionEnvPool(input) {
|
|
33
|
+
const { personalEnvKeys, manualSecrets, agentRuntimeEnv, mcpRuntimeEnv, } = input;
|
|
34
|
+
const valueMap = useMemo(() => {
|
|
35
|
+
const map = new Map();
|
|
36
|
+
if (agentRuntimeEnv) {
|
|
37
|
+
for (const [key, value] of Object.entries(agentRuntimeEnv)) {
|
|
38
|
+
map.set(key, value);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
if (mcpRuntimeEnv) {
|
|
42
|
+
for (const [key, value] of Object.entries(mcpRuntimeEnv)) {
|
|
43
|
+
map.set(key, value);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
if (manualSecrets) {
|
|
47
|
+
for (const entry of manualSecrets) {
|
|
48
|
+
const k = entry.key.trim();
|
|
49
|
+
if (k !== "" && entry.value.trim() !== "") {
|
|
50
|
+
map.set(k, { value: entry.value, isSecret: entry.isSecret });
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return map;
|
|
55
|
+
}, [manualSecrets, agentRuntimeEnv, mcpRuntimeEnv]);
|
|
56
|
+
const availableKeys = useMemo(() => {
|
|
57
|
+
const keys = new Set();
|
|
58
|
+
if (personalEnvKeys) {
|
|
59
|
+
for (const key of personalEnvKeys) {
|
|
60
|
+
keys.add(key);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
for (const key of valueMap.keys()) {
|
|
64
|
+
keys.add(key);
|
|
65
|
+
}
|
|
66
|
+
return keys;
|
|
67
|
+
}, [personalEnvKeys, valueMap]);
|
|
68
|
+
const getAvailableValue = useMemo(() => (key) => valueMap.get(key), [valueMap]);
|
|
69
|
+
const isKeySatisfied = useMemo(() => (key) => availableKeys.has(key), [availableKeys]);
|
|
70
|
+
return { availableKeys, getAvailableValue, isKeySatisfied };
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=useSessionEnvPool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSessionEnvPool.js","sourceRoot":"","sources":["../../src/environment/useSessionEnvPool.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAuDhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,UAAU,iBAAiB,CAC/B,KAA0B;IAE1B,MAAM,EACJ,eAAe,EACf,aAAa,EACb,eAAe,EACf,aAAa,GACd,GAAG,KAAK,CAAC;IAEV,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAuB,CAAC;QAE3C,IAAI,eAAe,EAAE,CAAC;YACpB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC3D,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YAClB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;gBACzD,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YAClB,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;gBAClC,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC3B,IAAI,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;oBAC1C,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,CAAC,aAAa,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC;IAEpD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAE/B,IAAI,eAAe,EAAE,CAAC;YACpB,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;gBAClC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;YAClC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEhC,MAAM,iBAAiB,GAAG,OAAO,CAC/B,GAAG,EAAE,CAAC,CAAC,GAAW,EAA2B,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EACjE,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF,MAAM,cAAc,GAAG,OAAO,CAC5B,GAAG,EAAE,CAAC,CAAC,GAAW,EAAW,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EACtD,CAAC,aAAa,CAAC,CAChB,CAAC;IAEF,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAC;AAC9D,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { EnvironmentInput } from "@stigmer/sdk";
|
|
2
|
+
import type { Environment } from "@stigmer/protos/ai/stigmer/agentic/environment/v1/api_pb";
|
|
3
|
+
export interface UseUpdateEnvironmentReturn {
|
|
4
|
+
readonly update: (input: EnvironmentInput) => Promise<Environment>;
|
|
5
|
+
readonly isUpdating: boolean;
|
|
6
|
+
readonly error: Error | null;
|
|
7
|
+
readonly clearError: () => void;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Behavior hook that wraps `environment.update()` with loading/error
|
|
11
|
+
* state.
|
|
12
|
+
*
|
|
13
|
+
* Updates an existing Environment resource. The caller provides a
|
|
14
|
+
* full {@link EnvironmentInput} including the environment's `name`
|
|
15
|
+
* and `org` (used by the backend to identify the resource) and all
|
|
16
|
+
* spec fields.
|
|
17
|
+
*
|
|
18
|
+
* Returns the full {@link Environment} proto including
|
|
19
|
+
* server-updated metadata (version, timestamps) so callers can
|
|
20
|
+
* immediately reference the latest state.
|
|
21
|
+
*
|
|
22
|
+
* This is a Layer 1 building-block hook for the **Environment Flow**
|
|
23
|
+
* — persistent credential storage via Environment resources. For the
|
|
24
|
+
* managed "personal environment" convenience, see
|
|
25
|
+
* {@link usePersonalEnvironment} which composes this hook with
|
|
26
|
+
* deterministic naming and label conventions.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```tsx
|
|
30
|
+
* const { update, isUpdating, error } = useUpdateEnvironment();
|
|
31
|
+
*
|
|
32
|
+
* const env = await update({
|
|
33
|
+
* name: "prod-credentials",
|
|
34
|
+
* org: "acme",
|
|
35
|
+
* description: "Production API keys",
|
|
36
|
+
* data: {
|
|
37
|
+
* API_KEY: { value: "sk-new-...", isSecret: true },
|
|
38
|
+
* },
|
|
39
|
+
* });
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
export declare function useUpdateEnvironment(): UseUpdateEnvironmentReturn;
|
|
43
|
+
//# sourceMappingURL=useUpdateEnvironment.d.ts.map
|