indusagi 0.13.5 → 0.13.7
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/LICENSE +661 -0
- package/README.md +7 -1
- package/dist/cli.js +114 -23
- package/package.json +56 -45
- package/dist/agent.js +0 -28713
- package/dist/ai.js +0 -19964
- package/dist/capabilities.js +0 -2730
- package/dist/connectors-saas.js +0 -3355
- package/dist/index.js +0 -16644
- package/dist/interop.js +0 -3247
- package/dist/knowledge/guides/authoring-an-agent.md +0 -53
- package/dist/knowledge/guides/choosing-tools.md +0 -49
- package/dist/knowledge/guides/model-selection.md +0 -51
- package/dist/knowledge/guides/writing-system-prompts.md +0 -53
- package/dist/knowledge/index.ts +0 -19
- package/dist/knowledge/loader.ts +0 -200
- package/dist/knowledge/manifest.json +0 -29
- package/dist/llmgateway.js +0 -3243
- package/dist/mcp.js +0 -1639
- package/dist/memory.js +0 -0
- package/dist/react-host/index.js +0 -101
- package/dist/react-host/ink.js +0 -97
- package/dist/react-host/jsx-runtime.js +0 -95
- package/dist/react-ink.js +0 -3834
- package/dist/runtime.js +0 -4421
- package/dist/shell-app.js +0 -12333
- package/dist/smithy.js +0 -8033
- package/dist/swarm.js +0 -8818
- package/dist/tracing.js +0 -724
- package/dist/tui.js +0 -2213
- package/dist/types/capabilities/backends/index.d.ts +0 -10
- package/dist/types/capabilities/backends/node-backends.d.ts +0 -30
- package/dist/types/capabilities/capabilities.test.d.ts +0 -14
- package/dist/types/capabilities/files/diff.d.ts +0 -49
- package/dist/types/capabilities/files/edit.d.ts +0 -21
- package/dist/types/capabilities/files/ls.d.ts +0 -16
- package/dist/types/capabilities/files/read-state-gate.d.ts +0 -69
- package/dist/types/capabilities/files/read-state-gate.test.d.ts +0 -14
- package/dist/types/capabilities/files/read.d.ts +0 -15
- package/dist/types/capabilities/files/write.d.ts +0 -16
- package/dist/types/capabilities/index.d.ts +0 -29
- package/dist/types/capabilities/kernel/backends.d.ts +0 -119
- package/dist/types/capabilities/kernel/context.d.ts +0 -52
- package/dist/types/capabilities/kernel/index.d.ts +0 -24
- package/dist/types/capabilities/kernel/output.d.ts +0 -40
- package/dist/types/capabilities/kernel/registry.d.ts +0 -61
- package/dist/types/capabilities/kernel/spec.d.ts +0 -168
- package/dist/types/capabilities/planning/todo.d.ts +0 -62
- package/dist/types/capabilities/registry.d.ts +0 -44
- package/dist/types/capabilities/search/find.d.ts +0 -33
- package/dist/types/capabilities/search/grep.d.ts +0 -30
- package/dist/types/capabilities/shell/bash.d.ts +0 -18
- package/dist/types/capabilities/shell/process.d.ts +0 -33
- package/dist/types/capabilities/web/webfetch.d.ts +0 -25
- package/dist/types/capabilities/web/websearch.d.ts +0 -23
- package/dist/types/connectors-saas/connectors-saas.test.d.ts +0 -12
- package/dist/types/connectors-saas/index.d.ts +0 -16
- package/dist/types/connectors-saas/saas/adapter/composio-backend.d.ts +0 -60
- package/dist/types/connectors-saas/saas/control/connect.d.ts +0 -114
- package/dist/types/connectors-saas/saas/control/tools.d.ts +0 -67
- package/dist/types/connectors-saas/saas/core/builder.d.ts +0 -86
- package/dist/types/connectors-saas/saas/core/cache.d.ts +0 -53
- package/dist/types/connectors-saas/saas/core/index.d.ts +0 -14
- package/dist/types/connectors-saas/saas/core/port.d.ts +0 -157
- package/dist/types/connectors-saas/saas/core/scope-planner.d.ts +0 -74
- package/dist/types/connectors-saas/saas/gateway.d.ts +0 -133
- package/dist/types/connectors-saas/saas/render/format.d.ts +0 -54
- package/dist/types/connectors-saas/saas/render/index.d.ts +0 -19
- package/dist/types/connectors-saas/saas/render/summarizers.d.ts +0 -58
- package/dist/types/facade/agent.d.ts +0 -1
- package/dist/types/facade/ai.d.ts +0 -1
- package/dist/types/facade/bot/actions/bash.d.ts +0 -71
- package/dist/types/facade/bot/actions/bash.test.d.ts +0 -1
- package/dist/types/facade/bot/actions/checkpoint.d.ts +0 -49
- package/dist/types/facade/bot/actions/checkpoint.test.d.ts +0 -1
- package/dist/types/facade/bot/actions/composio/accounts.d.ts +0 -22
- package/dist/types/facade/bot/actions/composio/client.d.ts +0 -39
- package/dist/types/facade/bot/actions/composio/connect.d.ts +0 -19
- package/dist/types/facade/bot/actions/composio/enable.d.ts +0 -25
- package/dist/types/facade/bot/actions/composio/execute.d.ts +0 -26
- package/dist/types/facade/bot/actions/composio/helpers.d.ts +0 -16
- package/dist/types/facade/bot/actions/composio/index.d.ts +0 -9
- package/dist/types/facade/bot/actions/composio/provider.d.ts +0 -8
- package/dist/types/facade/bot/actions/composio/toolkits.d.ts +0 -22
- package/dist/types/facade/bot/actions/composio/tools.d.ts +0 -28
- package/dist/types/facade/bot/actions/composio/types.d.ts +0 -137
- package/dist/types/facade/bot/actions/crew/activity-tracker.d.ts +0 -65
- package/dist/types/facade/bot/actions/crew/cleanup.d.ts +0 -50
- package/dist/types/facade/bot/actions/crew/fs-lock.d.ts +0 -11
- package/dist/types/facade/bot/actions/crew/index.d.ts +0 -11
- package/dist/types/facade/bot/actions/crew/mailbox.d.ts +0 -20
- package/dist/types/facade/bot/actions/crew/model-policy.d.ts +0 -22
- package/dist/types/facade/bot/actions/crew/names.d.ts +0 -27
- package/dist/types/facade/bot/actions/crew/protocol.d.ts +0 -74
- package/dist/types/facade/bot/actions/crew/task-store.d.ts +0 -88
- package/dist/types/facade/bot/actions/crew/team-attach-claim.d.ts +0 -35
- package/dist/types/facade/bot/actions/crew/team-config.d.ts +0 -54
- package/dist/types/facade/bot/actions/crew/worktree.d.ts +0 -39
- package/dist/types/facade/bot/actions/edit-diff.d.ts +0 -66
- package/dist/types/facade/bot/actions/edit-utils.d.ts +0 -86
- package/dist/types/facade/bot/actions/edit.d.ts +0 -59
- package/dist/types/facade/bot/actions/edit.test.d.ts +0 -1
- package/dist/types/facade/bot/actions/find.d.ts +0 -27
- package/dist/types/facade/bot/actions/find.test.d.ts +0 -1
- package/dist/types/facade/bot/actions/grep.d.ts +0 -53
- package/dist/types/facade/bot/actions/grep.test.d.ts +0 -1
- package/dist/types/facade/bot/actions/index.d.ts +0 -316
- package/dist/types/facade/bot/actions/kit/hook-runner.d.ts +0 -12
- package/dist/types/facade/bot/actions/kit/image-resize.d.ts +0 -19
- package/dist/types/facade/bot/actions/kit/mime.d.ts +0 -1
- package/dist/types/facade/bot/actions/kit/shell.d.ts +0 -12
- package/dist/types/facade/bot/actions/ls.d.ts +0 -41
- package/dist/types/facade/bot/actions/path-utils.d.ts +0 -8
- package/dist/types/facade/bot/actions/process-controller.d.ts +0 -14
- package/dist/types/facade/bot/actions/process-manager.d.ts +0 -59
- package/dist/types/facade/bot/actions/process-types.d.ts +0 -73
- package/dist/types/facade/bot/actions/process.d.ts +0 -37
- package/dist/types/facade/bot/actions/read-state.d.ts +0 -83
- package/dist/types/facade/bot/actions/read-state.test.d.ts +0 -1
- package/dist/types/facade/bot/actions/read.d.ts +0 -43
- package/dist/types/facade/bot/actions/read.test.d.ts +0 -1
- package/dist/types/facade/bot/actions/registry.d.ts +0 -20
- package/dist/types/facade/bot/actions/sandbox-backend.d.ts +0 -99
- package/dist/types/facade/bot/actions/sandbox-backend.test.d.ts +0 -1
- package/dist/types/facade/bot/actions/todo-store.d.ts +0 -76
- package/dist/types/facade/bot/actions/todo-types.d.ts +0 -72
- package/dist/types/facade/bot/actions/todo.d.ts +0 -76
- package/dist/types/facade/bot/actions/truncate.d.ts +0 -78
- package/dist/types/facade/bot/actions/webfetch.d.ts +0 -35
- package/dist/types/facade/bot/actions/websearch.d.ts +0 -37
- package/dist/types/facade/bot/actions/websearch.test.d.ts +0 -1
- package/dist/types/facade/bot/actions/write.d.ts +0 -45
- package/dist/types/facade/bot/agent-loop.d.ts +0 -30
- package/dist/types/facade/bot/agent-loop.test.d.ts +0 -1
- package/dist/types/facade/bot/agent.d.ts +0 -140
- package/dist/types/facade/bot/error-handler.d.ts +0 -7
- package/dist/types/facade/bot/event-bus.d.ts +0 -8
- package/dist/types/facade/bot/index.d.ts +0 -7
- package/dist/types/facade/bot/messages.d.ts +0 -83
- package/dist/types/facade/bot/permission-gate.test.d.ts +0 -1
- package/dist/types/facade/bot/proxy.d.ts +0 -70
- package/dist/types/facade/bot/session-manager.d.ts +0 -409
- package/dist/types/facade/bot/state-manager.d.ts +0 -21
- package/dist/types/facade/bot/telemetry.d.ts +0 -6
- package/dist/types/facade/bot/types.d.ts +0 -267
- package/dist/types/facade/mcp-core/client-pool.d.ts +0 -105
- package/dist/types/facade/mcp-core/client.d.ts +0 -213
- package/dist/types/facade/mcp-core/client.test.d.ts +0 -18
- package/dist/types/facade/mcp-core/config.d.ts +0 -60
- package/dist/types/facade/mcp-core/errors.d.ts +0 -103
- package/dist/types/facade/mcp-core/index.d.ts +0 -55
- package/dist/types/facade/mcp-core/schema-converter.d.ts +0 -67
- package/dist/types/facade/mcp-core/server.d.ts +0 -110
- package/dist/types/facade/mcp-core/tool-factory.d.ts +0 -62
- package/dist/types/facade/mcp-core/types.d.ts +0 -298
- package/dist/types/facade/mcp.d.ts +0 -1
- package/dist/types/facade/memory.d.ts +0 -1
- package/dist/types/facade/ml/adapters/amazon-bedrock.d.ts +0 -32
- package/dist/types/facade/ml/adapters/anthropic-retry.test.d.ts +0 -1
- package/dist/types/facade/ml/adapters/anthropic.d.ts +0 -78
- package/dist/types/facade/ml/adapters/azure-openai-responses.d.ts +0 -14
- package/dist/types/facade/ml/adapters/google-shared.d.ts +0 -99
- package/dist/types/facade/ml/adapters/google-vertex.d.ts +0 -14
- package/dist/types/facade/ml/adapters/google.d.ts +0 -15
- package/dist/types/facade/ml/adapters/kimi.d.ts +0 -21
- package/dist/types/facade/ml/adapters/mock.d.ts +0 -9
- package/dist/types/facade/ml/adapters/nvidia.d.ts +0 -12
- package/dist/types/facade/ml/adapters/openai-codex-responses.d.ts +0 -8
- package/dist/types/facade/ml/adapters/openai-completions.d.ts +0 -24
- package/dist/types/facade/ml/adapters/openai-responses-shared.d.ts +0 -25
- package/dist/types/facade/ml/adapters/openai-responses.d.ts +0 -12
- package/dist/types/facade/ml/adapters/openai-scaffold.d.ts +0 -3
- package/dist/types/facade/ml/adapters/register-builtins.d.ts +0 -2
- package/dist/types/facade/ml/adapters/simple-options.d.ts +0 -39
- package/dist/types/facade/ml/adapters/simple-options.test.d.ts +0 -1
- package/dist/types/facade/ml/adapters/transform-messages.d.ts +0 -23
- package/dist/types/facade/ml/api-registry.d.ts +0 -49
- package/dist/types/facade/ml/cli.d.ts +0 -2
- package/dist/types/facade/ml/env-api-keys.d.ts +0 -19
- package/dist/types/facade/ml/index.d.ts +0 -27
- package/dist/types/facade/ml/kit/auth/anthropic.d.ts +0 -17
- package/dist/types/facade/ml/kit/auth/github-copilot.d.ts +0 -22
- package/dist/types/facade/ml/kit/auth/index.d.ts +0 -50
- package/dist/types/facade/ml/kit/auth/kimi.d.ts +0 -23
- package/dist/types/facade/ml/kit/auth/oauth-page.d.ts +0 -2
- package/dist/types/facade/ml/kit/auth/openai-codex.d.ts +0 -36
- package/dist/types/facade/ml/kit/auth/pkce.d.ts +0 -12
- package/dist/types/facade/ml/kit/auth/types.d.ts +0 -67
- package/dist/types/facade/ml/kit/base-stream-handler.d.ts +0 -30
- package/dist/types/facade/ml/kit/event-stream.d.ts +0 -63
- package/dist/types/facade/ml/kit/index.d.ts +0 -14
- package/dist/types/facade/ml/kit/json-parse.d.ts +0 -23
- package/dist/types/facade/ml/kit/message-transform.d.ts +0 -32
- package/dist/types/facade/ml/kit/output-factory.d.ts +0 -8
- package/dist/types/facade/ml/kit/overflow.d.ts +0 -9
- package/dist/types/facade/ml/kit/provider-adapter.d.ts +0 -56
- package/dist/types/facade/ml/kit/provider-client-builder.d.ts +0 -36
- package/dist/types/facade/ml/kit/provider-consolidation.d.ts +0 -3
- package/dist/types/facade/ml/kit/provider-constants.d.ts +0 -34
- package/dist/types/facade/ml/kit/provider-errors.d.ts +0 -52
- package/dist/types/facade/ml/kit/sanitize-unicode.d.ts +0 -2
- package/dist/types/facade/ml/kit/stream-event-helper.d.ts +0 -38
- package/dist/types/facade/ml/kit/stream-handler-types.d.ts +0 -46
- package/dist/types/facade/ml/kit/streaming-state-manager.d.ts +0 -42
- package/dist/types/facade/ml/kit/tool-converter.d.ts +0 -49
- package/dist/types/facade/ml/kit/typebox-helpers.d.ts +0 -24
- package/dist/types/facade/ml/kit/validation.d.ts +0 -26
- package/dist/types/facade/ml/models.d.ts +0 -41
- package/dist/types/facade/ml/models.generated.d.ts +0 -12405
- package/dist/types/facade/ml/stream.d.ts +0 -27
- package/dist/types/facade/ml/types.d.ts +0 -269
- package/dist/types/index.d.ts +0 -16
- package/dist/types/interop/index.d.ts +0 -12
- package/dist/types/interop/interop.test.d.ts +0 -19
- package/dist/types/interop/protocol-bridge/bridge.d.ts +0 -52
- package/dist/types/interop/protocol-bridge/contract.d.ts +0 -249
- package/dist/types/interop/protocol-bridge/endpoint.d.ts +0 -124
- package/dist/types/interop/protocol-bridge/fleet.d.ts +0 -92
- package/dist/types/interop/protocol-bridge/host.d.ts +0 -61
- package/dist/types/interop/protocol-bridge/index.d.ts +0 -16
- package/dist/types/interop/protocol-bridge/schema.d.ts +0 -29
- package/dist/types/llmgateway/catalog/cards.d.ts +0 -18
- package/dist/types/llmgateway/catalog/cost.d.ts +0 -15
- package/dist/types/llmgateway/catalog/index.d.ts +0 -7
- package/dist/types/llmgateway/catalog/query.d.ts +0 -40
- package/dist/types/llmgateway/connectors/anthropic.d.ts +0 -35
- package/dist/types/llmgateway/connectors/azure-openai.d.ts +0 -33
- package/dist/types/llmgateway/connectors/bedrock.d.ts +0 -113
- package/dist/types/llmgateway/connectors/google-vertex.d.ts +0 -38
- package/dist/types/llmgateway/connectors/google.d.ts +0 -40
- package/dist/types/llmgateway/connectors/index.d.ts +0 -26
- package/dist/types/llmgateway/connectors/kimi.d.ts +0 -28
- package/dist/types/llmgateway/connectors/mock.d.ts +0 -37
- package/dist/types/llmgateway/connectors/nvidia.d.ts +0 -27
- package/dist/types/llmgateway/connectors/ollama.d.ts +0 -45
- package/dist/types/llmgateway/connectors/openai-chat.d.ts +0 -25
- package/dist/types/llmgateway/connectors/openai-responses.d.ts +0 -49
- package/dist/types/llmgateway/contract/connector.d.ts +0 -32
- package/dist/types/llmgateway/contract/conversation.d.ts +0 -86
- package/dist/types/llmgateway/contract/emission.d.ts +0 -55
- package/dist/types/llmgateway/contract/errors.d.ts +0 -27
- package/dist/types/llmgateway/contract/index.d.ts +0 -13
- package/dist/types/llmgateway/contract/model-card.d.ts +0 -42
- package/dist/types/llmgateway/contract/options.d.ts +0 -31
- package/dist/types/llmgateway/contract/reply.d.ts +0 -33
- package/dist/types/llmgateway/conversion/index.d.ts +0 -10
- package/dist/types/llmgateway/conversion/mappers.d.ts +0 -65
- package/dist/types/llmgateway/conversion/openai-compatible.d.ts +0 -46
- package/dist/types/llmgateway/conversion/reduce.d.ts +0 -20
- package/dist/types/llmgateway/credentials/oauth.d.ts +0 -73
- package/dist/types/llmgateway/credentials/pkce.d.ts +0 -52
- package/dist/types/llmgateway/credentials/secrets.d.ts +0 -74
- package/dist/types/llmgateway/gateway.d.ts +0 -34
- package/dist/types/llmgateway/gateway.test.d.ts +0 -14
- package/dist/types/llmgateway/index.d.ts +0 -11
- package/dist/types/llmgateway/streaming/channel.d.ts +0 -24
- package/dist/types/llmgateway/streaming/index.d.ts +0 -10
- package/dist/types/llmgateway/streaming/ndjson.d.ts +0 -17
- package/dist/types/llmgateway/streaming/sse.d.ts +0 -31
- package/dist/types/react-host/index.d.ts +0 -9
- package/dist/types/react-host/ink.d.ts +0 -5
- package/dist/types/react-host/jsx-runtime.d.ts +0 -4
- package/dist/types/react-host/loader.d.ts +0 -3
- package/dist/types/react-ink/components/ChangelogBlock.d.ts +0 -8
- package/dist/types/react-ink/components/DisplayBlockView.d.ts +0 -8
- package/dist/types/react-ink/components/Footer.d.ts +0 -11
- package/dist/types/react-ink/components/MessageList.d.ts +0 -14
- package/dist/types/react-ink/components/MessageRow.d.ts +0 -13
- package/dist/types/react-ink/components/StatusLine.d.ts +0 -18
- package/dist/types/react-ink/components/TaskPanel.d.ts +0 -11
- package/dist/types/react-ink/components/ToolEventBlock.d.ts +0 -48
- package/dist/types/react-ink/components/ToolEventBlock.test.d.ts +0 -1
- package/dist/types/react-ink/components/dialogs/DialogFrame.d.ts +0 -8
- package/dist/types/react-ink/components/dialogs/LoginDialog.d.ts +0 -14
- package/dist/types/react-ink/components/dialogs/ModelDialog.d.ts +0 -9
- package/dist/types/react-ink/components/dialogs/OAuthDialog.d.ts +0 -9
- package/dist/types/react-ink/components/dialogs/ScopedModelsDialog.d.ts +0 -9
- package/dist/types/react-ink/components/dialogs/SelectableDialog.d.ts +0 -22
- package/dist/types/react-ink/components/dialogs/SessionDialog.d.ts +0 -13
- package/dist/types/react-ink/components/dialogs/SettingsDialog.d.ts +0 -14
- package/dist/types/react-ink/components/dialogs/StartupSessionPicker.d.ts +0 -9
- package/dist/types/react-ink/components/dialogs/ThemeDialog.d.ts +0 -26
- package/dist/types/react-ink/components/dialogs/TreeDialog.d.ts +0 -8
- package/dist/types/react-ink/components/dialogs/UserMessageDialog.d.ts +0 -8
- package/dist/types/react-ink/components/messages/AssistantMessage.d.ts +0 -12
- package/dist/types/react-ink/components/messages/BashMessage.d.ts +0 -8
- package/dist/types/react-ink/components/messages/BranchSummaryMessage.d.ts +0 -8
- package/dist/types/react-ink/components/messages/CompactionMessage.d.ts +0 -8
- package/dist/types/react-ink/components/messages/CustomMessage.d.ts +0 -9
- package/dist/types/react-ink/components/messages/SkillInvocationMessage.d.ts +0 -7
- package/dist/types/react-ink/components/messages/ToolCallMessage.d.ts +0 -8
- package/dist/types/react-ink/components/messages/ToolResultBlock.d.ts +0 -12
- package/dist/types/react-ink/components/messages/UserMessage.d.ts +0 -9
- package/dist/types/react-ink/diff/Diff.d.ts +0 -22
- package/dist/types/react-ink/diff/diff.test.d.ts +0 -1
- package/dist/types/react-ink/diff/structured.d.ts +0 -41
- package/dist/types/react-ink/diff/word-diff.d.ts +0 -27
- package/dist/types/react-ink/index.d.ts +0 -42
- package/dist/types/react-ink/markdown/Markdown.d.ts +0 -23
- package/dist/types/react-ink/markdown/MarkdownTable.d.ts +0 -19
- package/dist/types/react-ink/markdown/StreamingMarkdown.d.ts +0 -34
- package/dist/types/react-ink/markdown/format-token.d.ts +0 -39
- package/dist/types/react-ink/markdown/highlight.d.ts +0 -31
- package/dist/types/react-ink/theme-adapter.d.ts +0 -66
- package/dist/types/react-ink/types.d.ts +0 -133
- package/dist/types/react-ink/utils/message-groups.d.ts +0 -25
- package/dist/types/react-ink/utils/selection-dialog.d.ts +0 -2
- package/dist/types/react-ink/utils/session-browser.d.ts +0 -27
- package/dist/types/react-ink/utils/tool-display.d.ts +0 -37
- package/dist/types/runtime/cadence/cadence.test.d.ts +0 -6
- package/dist/types/runtime/cadence/fold.d.ts +0 -48
- package/dist/types/runtime/cadence/index.d.ts +0 -12
- package/dist/types/runtime/cadence/reducer.d.ts +0 -44
- package/dist/types/runtime/conductor/agent.d.ts +0 -71
- package/dist/types/runtime/conductor/index.d.ts +0 -11
- package/dist/types/runtime/contract/config.d.ts +0 -44
- package/dist/types/runtime/contract/effect.d.ts +0 -41
- package/dist/types/runtime/contract/errors.d.ts +0 -22
- package/dist/types/runtime/contract/events.d.ts +0 -63
- package/dist/types/runtime/contract/index.d.ts +0 -18
- package/dist/types/runtime/contract/run-state.d.ts +0 -57
- package/dist/types/runtime/contract/session.d.ts +0 -42
- package/dist/types/runtime/contract/signal.d.ts +0 -49
- package/dist/types/runtime/contract/tools.d.ts +0 -45
- package/dist/types/runtime/dispatch/index.d.ts +0 -9
- package/dist/types/runtime/dispatch/scheduler.d.ts +0 -53
- package/dist/types/runtime/index.d.ts +0 -22
- package/dist/types/runtime/ledger/accumulator.d.ts +0 -44
- package/dist/types/runtime/ledger/bus.d.ts +0 -50
- package/dist/types/runtime/ledger/index.d.ts +0 -11
- package/dist/types/runtime/memory/compactor.d.ts +0 -56
- package/dist/types/runtime/memory/estimate.d.ts +0 -21
- package/dist/types/runtime/memory/index.d.ts +0 -8
- package/dist/types/runtime/runtime.test.d.ts +0 -15
- package/dist/types/runtime/store/dag.d.ts +0 -72
- package/dist/types/runtime/store/hash.d.ts +0 -18
- package/dist/types/runtime/store/index.d.ts +0 -12
- package/dist/types/runtime/store/persist.d.ts +0 -49
- package/dist/types/runtime/turn/driver.d.ts +0 -32
- package/dist/types/runtime/turn/index.d.ts +0 -8
- package/dist/types/runtime/wire/index.d.ts +0 -10
- package/dist/types/runtime/wire/projectors.d.ts +0 -53
- package/dist/types/shell-app/auth-cli/index.d.ts +0 -9
- package/dist/types/shell-app/auth-cli/oauth-cli.d.ts +0 -73
- package/dist/types/shell-app/boot/context.d.ts +0 -108
- package/dist/types/shell-app/boot/index.d.ts +0 -13
- package/dist/types/shell-app/boot/pipeline.d.ts +0 -66
- package/dist/types/shell-app/boot/stages.d.ts +0 -77
- package/dist/types/shell-app/cli.d.ts +0 -75
- package/dist/types/shell-app/config/index.d.ts +0 -11
- package/dist/types/shell-app/config/locator.d.ts +0 -85
- package/dist/types/shell-app/config/settings.d.ts +0 -91
- package/dist/types/shell-app/index.d.ts +0 -26
- package/dist/types/shell-app/invocation/flags.d.ts +0 -89
- package/dist/types/shell-app/invocation/parse.d.ts +0 -89
- package/dist/types/shell-app/locate/brand.d.ts +0 -71
- package/dist/types/shell-app/locate/index.d.ts +0 -12
- package/dist/types/shell-app/locate/locator.d.ts +0 -122
- package/dist/types/shell-app/runners/contract.d.ts +0 -116
- package/dist/types/shell-app/runners/index.d.ts +0 -15
- package/dist/types/shell-app/runners/one-shot.d.ts +0 -21
- package/dist/types/shell-app/runners/registry.d.ts +0 -34
- package/dist/types/shell-app/runners/repl.d.ts +0 -51
- package/dist/types/shell-app/runners/wire.d.ts +0 -34
- package/dist/types/shell-app/shell-app.test.d.ts +0 -14
- package/dist/types/shell-app/upgrade/index.d.ts +0 -9
- package/dist/types/shell-app/upgrade/upgrades.d.ts +0 -62
- package/dist/types/smithy/config/flag-reader.d.ts +0 -128
- package/dist/types/smithy/config/index.d.ts +0 -9
- package/dist/types/smithy/forge.d.ts +0 -135
- package/dist/types/smithy/index.d.ts +0 -36
- package/dist/types/smithy/knowledge/index.d.ts +0 -10
- package/dist/types/smithy/knowledge/loader.d.ts +0 -64
- package/dist/types/smithy/persona/blueprint.d.ts +0 -75
- package/dist/types/smithy/persona/define-agent.d.ts +0 -51
- package/dist/types/smithy/persona/index.d.ts +0 -14
- package/dist/types/smithy/persona/profiles.d.ts +0 -44
- package/dist/types/smithy/runtime/index.d.ts +0 -9
- package/dist/types/smithy/runtime/tool-ledger.d.ts +0 -130
- package/dist/types/smithy/smithy.test.d.ts +0 -20
- package/dist/types/smithy/ui/index.d.ts +0 -11
- package/dist/types/smithy/ui/transcript.d.ts +0 -183
- package/dist/types/swarm/coordinator.d.ts +0 -192
- package/dist/types/swarm/index.d.ts +0 -33
- package/dist/types/swarm/isolation/index.d.ts +0 -14
- package/dist/types/swarm/isolation/runner.d.ts +0 -61
- package/dist/types/swarm/isolation/worktree.d.ts +0 -142
- package/dist/types/swarm/kernel/faults.d.ts +0 -52
- package/dist/types/swarm/kernel/ids.d.ts +0 -25
- package/dist/types/swarm/kernel/index.d.ts +0 -26
- package/dist/types/swarm/kernel/json-cell.d.ts +0 -113
- package/dist/types/swarm/kernel/jsonl-log.d.ts +0 -81
- package/dist/types/swarm/postbox/channel.d.ts +0 -88
- package/dist/types/swarm/postbox/codecs.d.ts +0 -253
- package/dist/types/swarm/postbox/index.d.ts +0 -16
- package/dist/types/swarm/roster/index.d.ts +0 -16
- package/dist/types/swarm/roster/manifest.d.ts +0 -185
- package/dist/types/swarm/swarm.test.d.ts +0 -24
- package/dist/types/swarm/telemetry/activity.d.ts +0 -143
- package/dist/types/swarm/workboard/board.d.ts +0 -174
- package/dist/types/swarm/workboard/dep-graph.d.ts +0 -77
- package/dist/types/swarm/workboard/index.d.ts +0 -12
- package/dist/types/tracing/adapter/index.d.ts +0 -12
- package/dist/types/tracing/adapter/runtime-trace.d.ts +0 -54
- package/dist/types/tracing/channel/index.d.ts +0 -9
- package/dist/types/tracing/channel/signal.d.ts +0 -93
- package/dist/types/tracing/index.d.ts +0 -25
- package/dist/types/tracing/recorder/index.d.ts +0 -12
- package/dist/types/tracing/recorder/recorder.d.ts +0 -75
- package/dist/types/tracing/recorder/sampling.d.ts +0 -55
- package/dist/types/tracing/redaction/index.d.ts +0 -8
- package/dist/types/tracing/redaction/secret-scrubber.d.ts +0 -95
- package/dist/types/tracing/registry/hub.d.ts +0 -57
- package/dist/types/tracing/registry/index.d.ts +0 -7
- package/dist/types/tracing/signal/handle.d.ts +0 -73
- package/dist/types/tracing/signal/index.d.ts +0 -12
- package/dist/types/tracing/signal/segment.d.ts +0 -124
- package/dist/types/tracing/sinks/base.d.ts +0 -51
- package/dist/types/tracing/sinks/console.d.ts +0 -44
- package/dist/types/tracing/sinks/file.d.ts +0 -47
- package/dist/types/tracing/sinks/index.d.ts +0 -16
- package/dist/types/tracing/sinks/stream.d.ts +0 -46
- package/dist/types/tracing/tracing.test.d.ts +0 -7
- package/dist/types/ui/autocomplete.d.ts +0 -59
- package/dist/types/ui/contracts.d.ts +0 -38
- package/dist/types/ui/editor-component.d.ts +0 -100
- package/dist/types/ui/fuzzy.d.ts +0 -29
- package/dist/types/ui/index.d.ts +0 -8
- package/dist/types/ui/keybindings.d.ts +0 -62
- package/dist/types/ui/keys.d.ts +0 -171
- package/dist/types/ui/theme-types.d.ts +0 -36
- package/dist/types/ui/utils.d.ts +0 -101
- package/dist/types/ui-bridge/InteractiveApp.d.ts +0 -38
- package/dist/types/ui-bridge/adapter.d.ts +0 -90
- package/dist/types/ui-bridge/index.d.ts +0 -37
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The frozen tool kernel.
|
|
3
|
-
*
|
|
4
|
-
* Every built-in capability is authored as a declarative {@link ToolSpec}: a
|
|
5
|
-
* name, a model-facing description, a JSON-Schema parameter shape, and a single
|
|
6
|
-
* async `run`. The bespoke per-tool plumbing — advertising a descriptor to the
|
|
7
|
-
* model, coercing the model's raw arguments, running under cancellation, and
|
|
8
|
-
* shaping the result back into the runtime's tool boundary — is concentrated in
|
|
9
|
-
* one adapter, {@link defineTool}. A tool author writes only `run`; the kernel
|
|
10
|
-
* supplies the rest uniformly.
|
|
11
|
-
*
|
|
12
|
-
* The two outward contracts are imported, never redefined here: the runtime's
|
|
13
|
-
* {@link ToolCall} / {@link ToolOutcome} boundary and the gateway's
|
|
14
|
-
* {@link ToolDescriptor} / {@link JsonSchema} model-facing shape.
|
|
15
|
-
*/
|
|
16
|
-
import type { ToolCall, ToolOutcome } from "../../runtime/contract";
|
|
17
|
-
import type { ToolDescriptor, JsonSchema } from "../../llmgateway/contract";
|
|
18
|
-
import type { Fs, Shell } from "./backends";
|
|
19
|
-
import type { OutputBudget } from "./output";
|
|
20
|
-
/** A plain-text fragment a tool returns to the model. */
|
|
21
|
-
export interface TextContentBlock {
|
|
22
|
-
readonly kind: "text";
|
|
23
|
-
readonly text: string;
|
|
24
|
-
}
|
|
25
|
-
/** A structured fragment a tool returns; serialized when handed to the model. */
|
|
26
|
-
export interface JsonContentBlock {
|
|
27
|
-
readonly kind: "json";
|
|
28
|
-
readonly value: unknown;
|
|
29
|
-
}
|
|
30
|
-
/** One unit of a {@link ToolResult}: either prose or structured data. */
|
|
31
|
-
export type ToolContentBlock = TextContentBlock | JsonContentBlock;
|
|
32
|
-
/**
|
|
33
|
-
* The value a tool's `run` resolves to.
|
|
34
|
-
*
|
|
35
|
-
* `content` is the ordered set of fragments shown to the model. `isError`, when
|
|
36
|
-
* true, marks the whole result as a failure the model should be told about; the
|
|
37
|
-
* kernel propagates it onto the {@link ToolOutcome}.
|
|
38
|
-
*/
|
|
39
|
-
export interface ToolResult {
|
|
40
|
-
readonly content: ToolContentBlock[];
|
|
41
|
-
readonly isError?: boolean;
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* The per-session record a {@link ReadStateHandle} keeps for one file.
|
|
45
|
-
*
|
|
46
|
-
* It captures just enough to detect that a file has drifted on disk since it was
|
|
47
|
-
* last read: the floored modification time and byte size at read time, an
|
|
48
|
-
* optional content hash for a future exact-match fallback, and the wall-clock
|
|
49
|
-
* moment the read happened. The handle keys these by absolute path.
|
|
50
|
-
*/
|
|
51
|
-
export interface ReadStateRecord {
|
|
52
|
-
/** Last-modified time at read, epoch milliseconds (floored). */
|
|
53
|
-
readonly mtimeMs: number;
|
|
54
|
-
/** Byte size at read time. */
|
|
55
|
-
readonly size: number;
|
|
56
|
-
/** Optional content hash for an exact-equality fallback; absent today. */
|
|
57
|
-
readonly contentHash?: string;
|
|
58
|
-
/** Wall-clock moment the read was recorded, epoch milliseconds. */
|
|
59
|
-
readonly readAt: number;
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* The minimal, duck-typed handle a host may stash on {@link ToolContext.framework}
|
|
63
|
-
* under {@link READ_STATE_HANDLE_KEY} to enable the read-before-edit gate.
|
|
64
|
-
*
|
|
65
|
-
* Deliberately tiny — `get` / `set` / `has` keyed by absolute path — so the
|
|
66
|
-
* framework consumer and the product injector can agree on the *shape* without a
|
|
67
|
-
* cross-package type import. The product supplies a concrete store; the framework
|
|
68
|
-
* only ever reads/writes through these three methods.
|
|
69
|
-
*/
|
|
70
|
-
export interface ReadStateHandle {
|
|
71
|
-
/** The recorded state for a path, or undefined if it was never read. */
|
|
72
|
-
get(absPath: string): ReadStateRecord | undefined;
|
|
73
|
-
/** Record (or refresh) the state for a path. */
|
|
74
|
-
set(absPath: string, record: ReadStateRecord): void;
|
|
75
|
-
/** Whether a path has any recorded read state this session. */
|
|
76
|
-
has(absPath: string): boolean;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* The string-literal key under which a {@link ReadStateHandle} lives on
|
|
80
|
-
* {@link ToolContext.framework}.
|
|
81
|
-
*
|
|
82
|
-
* Mirrors the existing `DELEGATE_HANDLE_KEY = "delegate"` /
|
|
83
|
-
* `MEMORY_HANDLE_KEY = "memoryStore"` convention: a shared literal both the
|
|
84
|
-
* framework consumer and the product injector reference so they agree without a
|
|
85
|
-
* cross-package type import.
|
|
86
|
-
*/
|
|
87
|
-
export declare const READ_STATE_HANDLE_KEY: "readState";
|
|
88
|
-
/**
|
|
89
|
-
* Everything a tool's `run` is handed besides its own parsed input.
|
|
90
|
-
*
|
|
91
|
-
* It carries the working directory, the two coarse I/O backends, a cancellation
|
|
92
|
-
* `signal`, and the default {@link OutputBudget} a tool should apply when its
|
|
93
|
-
* output risks overflowing the model's window.
|
|
94
|
-
*
|
|
95
|
-
* `framework` is an open bag of optional host-injected handles, keyed by string
|
|
96
|
-
* literals (e.g. {@link READ_STATE_HANDLE_KEY}). It is the additive seam through
|
|
97
|
-
* which a host can opt a session into behaviors like the read-before-edit gate
|
|
98
|
-
* without changing any tool signature; when a handle is absent the tools behave
|
|
99
|
-
* exactly as they did before.
|
|
100
|
-
*/
|
|
101
|
-
export interface ToolContext {
|
|
102
|
-
readonly cwd: string;
|
|
103
|
-
readonly fs: Fs;
|
|
104
|
-
readonly shell: Shell;
|
|
105
|
-
readonly signal: AbortSignal;
|
|
106
|
-
readonly budget: OutputBudget;
|
|
107
|
-
/** Open record of optional, host-injected framework handles. */
|
|
108
|
-
readonly framework?: {
|
|
109
|
-
readonly [key: string]: unknown;
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* The declarative description of one tool.
|
|
114
|
-
*
|
|
115
|
-
* `I` is the input shape `run` expects after coercion. The kernel validates the
|
|
116
|
-
* raw call against `parameters` loosely (presence and basic typing) and hands a
|
|
117
|
-
* best-effort `I` to `run`; rigorous validation, where a tool wants it, lives in
|
|
118
|
-
* `run` itself.
|
|
119
|
-
*/
|
|
120
|
-
export interface ToolSpec<I = unknown> {
|
|
121
|
-
/** The name advertised to and invoked by the model. */
|
|
122
|
-
readonly name: string;
|
|
123
|
-
/** The model-facing description of what the tool does and when to use it. */
|
|
124
|
-
readonly description: string;
|
|
125
|
-
/** The JSON-Schema object describing the tool's parameters. */
|
|
126
|
-
readonly parameters: JsonSchema;
|
|
127
|
-
/** The tool's behavior; receives coerced input and the live context. */
|
|
128
|
-
run(input: I, ctx: ToolContext): Promise<ToolResult>;
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* A {@link ToolSpec} after {@link defineTool} has wrapped it.
|
|
132
|
-
*
|
|
133
|
-
* `descriptor()` yields the model-facing advertisement; `invoke()` is the
|
|
134
|
-
* runner-side entry point that turns a {@link ToolCall} into a
|
|
135
|
-
* {@link ToolOutcome}.
|
|
136
|
-
*/
|
|
137
|
-
export interface DefinedTool {
|
|
138
|
-
/** The tool's name (mirrors the spec, exposed for registry bookkeeping). */
|
|
139
|
-
readonly name: string;
|
|
140
|
-
/** The descriptor handed to the model on each invocation. */
|
|
141
|
-
descriptor(): ToolDescriptor;
|
|
142
|
-
/** Execute one call under the given context and normalize the result. */
|
|
143
|
-
invoke(call: ToolCall, ctx: ToolContext): Promise<ToolOutcome>;
|
|
144
|
-
/** Display label for the facade (mirrors the name). */
|
|
145
|
-
readonly label: string;
|
|
146
|
-
/** Top-level description for the facade's tool validation + the model schema. */
|
|
147
|
-
readonly description: string;
|
|
148
|
-
/** Top-level JSON-schema parameters for the facade's tool validation. */
|
|
149
|
-
readonly parameters: JsonSchema;
|
|
150
|
-
/** Facade execution entry point: run the tool and return facade-shaped content. */
|
|
151
|
-
execute(toolCallId: string, params: unknown, signal?: AbortSignal, onUpdate?: (partial: unknown) => void): Promise<{
|
|
152
|
-
content: Array<{
|
|
153
|
-
type: "text";
|
|
154
|
-
text: string;
|
|
155
|
-
}>;
|
|
156
|
-
details: Record<string, unknown>;
|
|
157
|
-
isError: boolean;
|
|
158
|
-
}>;
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Wrap a {@link ToolSpec} into a {@link DefinedTool}.
|
|
162
|
-
*
|
|
163
|
-
* The returned `invoke` coerces the call's input, honors an already-aborted
|
|
164
|
-
* signal up front, runs the spec, and folds both the success result and any
|
|
165
|
-
* thrown failure into a {@link ToolOutcome}. No spec ever has to write this
|
|
166
|
-
* boilerplate itself.
|
|
167
|
-
*/
|
|
168
|
-
export declare function defineTool<I = unknown>(spec: ToolSpec<I>): DefinedTool;
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The `todo` planning capability: a tiny, per-conversation task list the model
|
|
3
|
-
* can keep in front of itself while it works.
|
|
4
|
-
*
|
|
5
|
-
* Two cooperating tools are exposed. {@link todoSetTool} replaces the entire
|
|
6
|
-
* checklist in one shot — the caller hands over the whole array of items it wants
|
|
7
|
-
* tracked, and any previous list for that context is discarded. {@link todoReadTool}
|
|
8
|
-
* plays the list back so the model can re-read where it stands without mutating
|
|
9
|
-
* anything. Both are authored against the kernel surface alone; the backing store
|
|
10
|
-
* is plain in-process state, so no `ctx.fs` or `ctx.shell` access is needed.
|
|
11
|
-
*
|
|
12
|
-
* State lives in a single module-level {@link TodoStore} keyed by the live
|
|
13
|
-
* {@link ToolContext}. Every distinct conversation threads a distinct context
|
|
14
|
-
* object through `run`, so each conversation gets its own isolated list. The store
|
|
15
|
-
* exposes {@link TodoStore.reset} so a test can wipe all accumulated lists between
|
|
16
|
-
* cases.
|
|
17
|
-
*/
|
|
18
|
-
import type { ToolContext } from "../kernel";
|
|
19
|
-
/** The lifecycle stage of a single checklist entry. */
|
|
20
|
-
export type TodoStatus = "pending" | "active" | "done";
|
|
21
|
-
/** One line of the checklist. */
|
|
22
|
-
export interface TodoItem {
|
|
23
|
-
/** Caller-chosen stable identifier, unique within a single list. */
|
|
24
|
-
readonly id: string;
|
|
25
|
-
/** Human-readable summary of the task. */
|
|
26
|
-
readonly text: string;
|
|
27
|
-
/** Where this task sits in its lifecycle. */
|
|
28
|
-
readonly status: TodoStatus;
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* In-process home for every context's checklist.
|
|
32
|
-
*
|
|
33
|
-
* Keys are the identity of the {@link ToolContext} object handed to `run`, so two
|
|
34
|
-
* conversations never see each other's items. The class is a thin wrapper over a
|
|
35
|
-
* {@link Map}; it is deliberately minimal because the tools own all of the
|
|
36
|
-
* validation and presentation logic.
|
|
37
|
-
*/
|
|
38
|
-
export declare class TodoStore {
|
|
39
|
-
private readonly lists;
|
|
40
|
-
/** Return the list recorded for `ctx`, or an empty array if none was set yet. */
|
|
41
|
-
read(ctx: ToolContext): readonly TodoItem[];
|
|
42
|
-
/** Replace the entire list recorded for `ctx` with `items`. */
|
|
43
|
-
replace(ctx: ToolContext, items: readonly TodoItem[]): void;
|
|
44
|
-
/** Discard every stored list. Intended for test isolation only. */
|
|
45
|
-
reset(): void;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* The shared, module-level store both tools read and write.
|
|
49
|
-
*
|
|
50
|
-
* Exported so tests can call {@link TodoStore.reset} between cases and assert on
|
|
51
|
-
* stored state directly.
|
|
52
|
-
*/
|
|
53
|
-
export declare const todoStore: TodoStore;
|
|
54
|
-
/**
|
|
55
|
-
* Convenience re-export of the store's reset, so a test can wipe state with a
|
|
56
|
-
* single named import instead of reaching through the instance.
|
|
57
|
-
*/
|
|
58
|
-
export declare function reset(): void;
|
|
59
|
-
/** Replace the whole stored checklist for the calling context. */
|
|
60
|
-
export declare const todoSetTool: import("..").DefinedTool;
|
|
61
|
-
/** Play back the stored checklist for the calling context without changing it. */
|
|
62
|
-
export declare const todoReadTool: import("..").DefinedTool;
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The built-in capability assembly.
|
|
3
|
-
*
|
|
4
|
-
* The kernel ships a generic {@link ToolRegistry} and a generic
|
|
5
|
-
* {@link makeNodeContext}; this module marries the two into the concrete,
|
|
6
|
-
* batteries-included surface a host actually wires up. It registers every
|
|
7
|
-
* built-in tool, names the standard collections the agent selects between, and
|
|
8
|
-
* exposes a one-call {@link toolBox} helper that produces a runnable
|
|
9
|
-
* {@link ToolBox} backed by the real Node filesystem and shell.
|
|
10
|
-
*
|
|
11
|
-
* Three collections are defined:
|
|
12
|
-
* - `read-only` — tools that only observe the workspace and the web: read,
|
|
13
|
-
* ls, grep, find, websearch, webfetch. Safe to expose when no mutation
|
|
14
|
-
* should be possible.
|
|
15
|
-
* - `coding` — everything in `read-only` plus the mutating and stateful
|
|
16
|
-
* tools: write, edit, bash, the todo pair, and process control.
|
|
17
|
-
* - `all` — the union of every registered tool, with nothing withheld.
|
|
18
|
-
*
|
|
19
|
-
* Nothing here reaches for `node:fs` or `node:child_process` directly — the
|
|
20
|
-
* Node binding lives entirely in `backends/`, which this module merely consumes.
|
|
21
|
-
*/
|
|
22
|
-
import { ToolRegistry } from "./kernel";
|
|
23
|
-
import type { ToolBox } from "../runtime/contract";
|
|
24
|
-
/** The names of the collections this module defines. */
|
|
25
|
-
export type ToolCollection = "read-only" | "coding" | "all";
|
|
26
|
-
/**
|
|
27
|
-
* Build a fresh {@link ToolRegistry} populated with every built-in tool and the
|
|
28
|
-
* three standard collections.
|
|
29
|
-
*
|
|
30
|
-
* A new registry is minted on each call so callers never share mutable state;
|
|
31
|
-
* the tool objects themselves are stateless singletons and are safe to share.
|
|
32
|
-
*/
|
|
33
|
-
export declare function builtinRegistry(): ToolRegistry;
|
|
34
|
-
/**
|
|
35
|
-
* Produce a runnable {@link ToolBox} for the named collection, backed by the
|
|
36
|
-
* real Node filesystem and shell.
|
|
37
|
-
*
|
|
38
|
-
* The returned box advertises exactly the descriptors of the chosen collection
|
|
39
|
-
* and dispatches each call to the matching tool, minting a fresh
|
|
40
|
-
* {@link ToolContext} (rooted at `cwd`) per dispatch and threading the runtime's
|
|
41
|
-
* cancellation signal in. `cwd` defaults to the current process working
|
|
42
|
-
* directory when omitted.
|
|
43
|
-
*/
|
|
44
|
-
export declare function toolBox(collection: ToolCollection, cwd?: string): ToolBox;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Filename search capability.
|
|
3
|
-
*
|
|
4
|
-
* `find` enumerates entries beneath a starting path whose *name* matches a query.
|
|
5
|
-
* The query is interpreted as either a shell-style glob (when it contains `*` or
|
|
6
|
-
* `?`) or, failing that, a plain case-insensitive substring. The walk is a
|
|
7
|
-
* hand-rolled recursive descent over {@link ToolContext.fs}; it never touches
|
|
8
|
-
* `node:fs`, a child process, or a platform `find` binary, so it behaves the same
|
|
9
|
-
* against any backend a host plugs in (real disk, sandbox, in-memory).
|
|
10
|
-
*
|
|
11
|
-
* Results are returned as paths relative to the search root, one per line, and
|
|
12
|
-
* are pared back through {@link ToolContext.budget} so the listing can never
|
|
13
|
-
* overflow the model's window.
|
|
14
|
-
*/
|
|
15
|
-
/** Which kind of filesystem entry the caller wants back. */
|
|
16
|
-
type EntryKind = "file" | "dir";
|
|
17
|
-
/** The arguments this tool accepts from the model. */
|
|
18
|
-
export interface FindInput {
|
|
19
|
-
/** Glob pattern (with `*`/`?`) or plain substring to match against names. */
|
|
20
|
-
readonly query: string;
|
|
21
|
-
/** Directory to search beneath; defaults to the working directory. */
|
|
22
|
-
readonly path?: string;
|
|
23
|
-
/** Restrict hits to regular files (`"file"`) or directories (`"dir"`). */
|
|
24
|
-
readonly type?: EntryKind;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* The filename-search tool. Walks a path with {@link ToolContext.fs}, tests each
|
|
28
|
-
* entry's *name* against a glob or substring query, optionally filters by file
|
|
29
|
-
* vs. directory, and returns the matching root-relative paths clamped to
|
|
30
|
-
* {@link ToolContext.budget}.
|
|
31
|
-
*/
|
|
32
|
-
export declare const findTool: import("..").DefinedTool;
|
|
33
|
-
export {};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Content search capability.
|
|
3
|
-
*
|
|
4
|
-
* `grep` hunts for a regular expression inside the *text* of files beneath a
|
|
5
|
-
* starting path. The traversal is a hand-rolled recursive descent over
|
|
6
|
-
* {@link ToolContext.fs}; it never reaches for `node:fs`, a child process, or the
|
|
7
|
-
* platform `grep` binary, so it behaves identically against any backend a host
|
|
8
|
-
* cares to plug in (real disk, sandbox, in-memory).
|
|
9
|
-
*
|
|
10
|
-
* Each hit is reported as `relative/path:line` followed by the line that matched.
|
|
11
|
-
* Bulky output is pared back through {@link ToolContext.budget} so the result can
|
|
12
|
-
* never overrun the model's window.
|
|
13
|
-
*/
|
|
14
|
-
/** The arguments this tool accepts from the model. */
|
|
15
|
-
export interface GrepInput {
|
|
16
|
-
/** The regular expression to test each line against. */
|
|
17
|
-
readonly pattern: string;
|
|
18
|
-
/** Directory (or single file) to search under; defaults to the working dir. */
|
|
19
|
-
readonly path?: string;
|
|
20
|
-
/** Standard JS regex flag letters, e.g. `"i"` for case-insensitive. */
|
|
21
|
-
readonly flags?: string;
|
|
22
|
-
/** Stop after this many hits have been collected. */
|
|
23
|
-
readonly maxMatches?: number;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* The content-search tool. Walks a path with {@link ToolContext.fs}, tests each
|
|
27
|
-
* line of every readable text file against the supplied regex, and returns
|
|
28
|
-
* `path:line` hits clamped to {@link ToolContext.budget}.
|
|
29
|
-
*/
|
|
30
|
-
export declare const grepTool: import("..").DefinedTool;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The `bash` capability: run a single shell command to completion.
|
|
3
|
-
*
|
|
4
|
-
* This tool hands a one-shot command string to the kernel's {@link Shell.exec}
|
|
5
|
-
* backend, waits for it to settle, and reports back the captured standard
|
|
6
|
-
* output, standard error, and exit status as a single text block the model can
|
|
7
|
-
* read. It never reaches for `node:child_process` itself — every side effect
|
|
8
|
-
* flows through the injected {@link ToolContext.shell} seam, so a host may run it
|
|
9
|
-
* locally, sandboxed, or remotely without the tool noticing.
|
|
10
|
-
*
|
|
11
|
-
* Cancellation and a wall-clock deadline are both honored: the context's
|
|
12
|
-
* {@link ToolContext.signal} is threaded into the launch (so an aborted turn
|
|
13
|
-
* tears the command down), and a per-call `timeoutMs` caps how long a runaway
|
|
14
|
-
* command may block. Output that would overflow the model's window is trimmed
|
|
15
|
-
* through the context's {@link ToolContext.budget} before it is returned.
|
|
16
|
-
*/
|
|
17
|
-
/** The `bash` tool: a one-shot shell command runner. */
|
|
18
|
-
export declare const bashTool: import("..").DefinedTool;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The `process` capability: a controller for long-lived background commands.
|
|
3
|
-
*
|
|
4
|
-
* Where {@link bashTool} runs a single command to completion and blocks, this
|
|
5
|
-
* tool starts a command that keeps running between turns — a dev server, a file
|
|
6
|
-
* watcher, a log tail — and lets the model check in on it later. It owns a small
|
|
7
|
-
* in-module registry of live jobs (the {@link ProcessTable}); each registry
|
|
8
|
-
* entry pairs the kernel {@link ShellHandle} with a rolling capture of whatever
|
|
9
|
-
* the job has printed so far.
|
|
10
|
-
*
|
|
11
|
-
* Four verbs drive it:
|
|
12
|
-
* - `start` launches a command in the background and hands back its job id.
|
|
13
|
-
* - `list` enumerates every tracked job with its current status.
|
|
14
|
-
* - `poll` drains the output buffered since the last look and reports whether
|
|
15
|
-
* the job is still alive or how it ended.
|
|
16
|
-
* - `stop` signals a running job to terminate and forgets it.
|
|
17
|
-
*
|
|
18
|
-
* The kernel {@link ShellHandle} exposes no output streams of its own — only a
|
|
19
|
-
* pid, a kill, and an exit subscription. To capture what a background job prints
|
|
20
|
-
* without ever touching `node:child_process`, the launcher wraps the command so
|
|
21
|
-
* the platform shell redirects both streams into per-job scratch files, then
|
|
22
|
-
* reads those files back through the {@link ToolContext.fs} seam. Every side
|
|
23
|
-
* effect therefore flows through `ctx.shell` and `ctx.fs`; this module reaches
|
|
24
|
-
* for no Node API of its own.
|
|
25
|
-
*/
|
|
26
|
-
/** Clear the background-job registry; intended for test setup/teardown. */
|
|
27
|
-
export declare function resetProcessTable(): void;
|
|
28
|
-
/**
|
|
29
|
-
* The `process` tool: a registry-backed controller for background commands.
|
|
30
|
-
*
|
|
31
|
-
* Exported as a named {@link DefinedTool} so a host can register it directly.
|
|
32
|
-
*/
|
|
33
|
-
export declare const processTool: import("..").DefinedTool;
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The `webfetch` capability: pull a web page and hand the model a clean,
|
|
3
|
-
* reading-friendly rendition of it.
|
|
4
|
-
*
|
|
5
|
-
* The tool issues a single HTTP(S) GET through the platform `fetch`, reads the
|
|
6
|
-
* body as text, and runs it through a small, self-contained HTML simplifier.
|
|
7
|
-
* That simplifier is deliberately naive — it is not a real parser. It strips the
|
|
8
|
-
* non-visible machinery (script, style, template, and comment regions), turns a
|
|
9
|
-
* handful of structural tags (headings, paragraphs, list items, line breaks,
|
|
10
|
-
* anchors) into plain-text equivalents, deletes every remaining tag, decodes the
|
|
11
|
-
* common character entities, and squeezes runaway whitespace. The result reads
|
|
12
|
-
* roughly like markdown without pretending to be a faithful conversion.
|
|
13
|
-
*
|
|
14
|
-
* Two ceilings guard the size of what comes back: an optional caller-supplied
|
|
15
|
-
* `maxBytes` that bounds how much of the downloaded body is even considered, and
|
|
16
|
-
* the context's {@link OutputBudget}, which is always applied last so the model's
|
|
17
|
-
* window can never be overrun. Any failure on the network path — an unreachable
|
|
18
|
-
* host, a non-success status, a body that will not decode — is caught and
|
|
19
|
-
* returned as a flagged error result rather than thrown, so the agent loop sees a
|
|
20
|
-
* tidy message instead of a crash.
|
|
21
|
-
*
|
|
22
|
-
* Authored entirely against the kernel surface plus the platform `fetch` global;
|
|
23
|
-
* no Node module is imported here.
|
|
24
|
-
*/
|
|
25
|
-
export declare const webFetchTool: import("..").DefinedTool;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The `websearch` capability: run a web query and hand the model a ranked list
|
|
3
|
-
* of hits.
|
|
4
|
-
*
|
|
5
|
-
* The query is sent to DuckDuckGo's no-frills HTML endpoint, whose markup is
|
|
6
|
-
* lightweight enough to scrape with a couple of targeted regular expressions —
|
|
7
|
-
* no headless browser, no HTML parser dependency. Each hit is distilled to the
|
|
8
|
-
* three fields a model actually reasons over: a title, the destination URL, and
|
|
9
|
-
* a short snippet. The list is capped (by `maxResults`, with a sane default and
|
|
10
|
-
* a hard ceiling) and the whole payload is byte-bounded through the context's
|
|
11
|
-
* {@link OutputBudget} so a chatty results page can never overflow the window.
|
|
12
|
-
*
|
|
13
|
-
* Network reachability is never guaranteed, so every failure mode — a thrown
|
|
14
|
-
* fetch, a non-OK status, a body that yields nothing parseable — is turned into
|
|
15
|
-
* an `isError` {@link ToolResult} rather than an exception. The caller (and the
|
|
16
|
-
* model) always gets a well-typed result back.
|
|
17
|
-
*
|
|
18
|
-
* Authored against the kernel surface plus the Web-standard `fetch` global.
|
|
19
|
-
* There is no filesystem or shell work here, and DuckDuckGo has no kernel seam,
|
|
20
|
-
* so the only outside primitive used is `fetch` — the platform networking API,
|
|
21
|
-
* not a node-specific module.
|
|
22
|
-
*/
|
|
23
|
-
export declare const webSearchTool: import("..").DefinedTool;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Tests for the SaaS connector bridge, driven by an in-memory MOCK
|
|
3
|
-
* {@link SaasBackend}.
|
|
4
|
-
*
|
|
5
|
-
* There is deliberately NO network and NO `@composio/core` here: a fake backend
|
|
6
|
-
* exposing one toolkit ("github") with two operations stands in for the vendor
|
|
7
|
-
* catalog, so the whole bridge — gateway assembly, the content-hash enable cache,
|
|
8
|
-
* the remote-tool builder, the declarative connect rule table, and the result
|
|
9
|
-
* summarizer — is exercised against plain objects. The real adapter is covered
|
|
10
|
-
* separately; these tests pin the dependency-inverted core's behaviour.
|
|
11
|
-
*/
|
|
12
|
-
export {};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The SaaS connector bridge — public surface.
|
|
3
|
-
*
|
|
4
|
-
* One import site for the whole bridge: the stateful {@link SaasGateway} façade and
|
|
5
|
-
* its factories, the {@link SaasBackend} port plus its data vocabulary, the single
|
|
6
|
-
* vendor adapter ({@link createComposioBackend}), and the fluent {@link ScopePlanner}
|
|
7
|
-
* scope resolver. The render and control internals stay private behind the gateway;
|
|
8
|
-
* a host wires an agent up through this barrel alone.
|
|
9
|
-
*/
|
|
10
|
-
export { createSaasGateway, createComposioGateway, } from "./saas/gateway";
|
|
11
|
-
export type { SaasGateway, SaasGatewayOptions, EnableReport, ConnectReport, StatusReport, } from "./saas/gateway";
|
|
12
|
-
export type { SaasBackend, ToolkitInfo, RemoteTool, RemoteResult, ConnectedAccount, ConnectionStatus, ConnectionRequest, ConnectionState, ExecuteOptions, InitiateOptions, } from "./saas/core/index";
|
|
13
|
-
export { createComposioBackend, ComposioBackendError } from "./saas/adapter/composio-backend";
|
|
14
|
-
export type { ComposioBackendOptions } from "./saas/adapter/composio-backend";
|
|
15
|
-
export { ScopePlanner } from "./saas/core/index";
|
|
16
|
-
export type { ResolvedScope, ScopeKind } from "./saas/core/index";
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The Composio adapter — the *single* place `@composio/core` leaks into the SaaS
|
|
3
|
-
* connector bridge.
|
|
4
|
-
*
|
|
5
|
-
* Everything else in `src/connectors-saas/` talks to the {@link SaasBackend} port
|
|
6
|
-
* (see `../core/port`). This file is the lone implementation that satisfies that
|
|
7
|
-
* port by delegating to the real `Composio` SDK client and translating the
|
|
8
|
-
* vendor's richer, snake-/camel-cased catalog shapes down into our small, frozen
|
|
9
|
-
* vocabulary. Because the vendor's response types are sprawling (deeply-nested
|
|
10
|
-
* zod-inferred unions) and not worth re-deriving here, `any` is deliberately
|
|
11
|
-
* permitted at this boundary — and *only* here. The mapping helpers
|
|
12
|
-
* (`normalizeStatus`, `pickAuthUrl`, the `to*` projectors) re-narrow every value
|
|
13
|
-
* back to a typed port shape before it crosses out, so nothing untyped escapes.
|
|
14
|
-
*
|
|
15
|
-
* Method-by-method delegation:
|
|
16
|
-
* listToolkits → composio.toolkits.get({})
|
|
17
|
-
* listTools → composio.tools.getRawComposioTools({ toolkits: [slug] })
|
|
18
|
-
* execute → composio.tools.execute(slug, { userId, arguments, connectedAccountId })
|
|
19
|
-
* listConnectedAccounts → composio.connectedAccounts.list()
|
|
20
|
-
* initiateConnection → composio.toolkits.authorize(userId, slug, authConfigId?)
|
|
21
|
-
* checkConnection → composio.connectedAccounts.get(id)
|
|
22
|
-
*
|
|
23
|
-
* The Composio SDK is user-scoped: nearly every call wants a `userId`. The bridge
|
|
24
|
-
* port is single-user by design, so we thread a fixed default user through the
|
|
25
|
-
* adapter; callers that need multi-tenancy construct one backend per user.
|
|
26
|
-
*/
|
|
27
|
-
import type { SaasBackend } from "../core/port";
|
|
28
|
-
/** Options for standing up the Composio-backed {@link SaasBackend}. */
|
|
29
|
-
export interface ComposioBackendOptions {
|
|
30
|
-
/** The Composio API key the SDK client authenticates with. */
|
|
31
|
-
readonly apiKey: string;
|
|
32
|
-
/**
|
|
33
|
-
* The user scope to act under. The Composio catalog is user-scoped; the bridge
|
|
34
|
-
* port is single-user, so one fixed id is threaded through every call. Defaults
|
|
35
|
-
* to `"default"` when omitted.
|
|
36
|
-
*/
|
|
37
|
-
readonly userId?: string;
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Thrown when a backend operation cannot be satisfied through the Composio SDK in
|
|
41
|
-
* a way that maps cleanly onto the port — i.e. a genuinely unsupported request,
|
|
42
|
-
* not a transient API failure. Carries the offending method name for tracing.
|
|
43
|
-
*/
|
|
44
|
-
export declare class ComposioBackendError extends Error {
|
|
45
|
-
/** The port method that could not be satisfied (e.g. `"checkConnection"`). */
|
|
46
|
-
readonly method: string;
|
|
47
|
-
constructor(method: string, message: string, options?: {
|
|
48
|
-
cause?: unknown;
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Build the Composio-backed {@link SaasBackend}.
|
|
53
|
-
*
|
|
54
|
-
* This is the bridge's single seam onto `@composio/core`: hand it an API key and
|
|
55
|
-
* it returns an object that speaks only the port. Nothing the caller touches
|
|
56
|
-
* references a vendor type.
|
|
57
|
-
*/
|
|
58
|
-
export declare function createComposioBackend(opts: {
|
|
59
|
-
apiKey: string;
|
|
60
|
-
}): SaasBackend;
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The connection state machine, expressed as a declarative RULE TABLE.
|
|
3
|
-
*
|
|
4
|
-
* Driving an OAuth-style link from "nothing yet" to "active" is a small loop with
|
|
5
|
-
* a handful of terminal and non-terminal states. The naive way to write it is an
|
|
6
|
-
* `if`-cascade inside the poll loop — "if active return; else if failed throw;
|
|
7
|
-
* else if expired re-initiate; else wait and poll again" — which buries the policy
|
|
8
|
-
* inside control flow and is easy to get subtly wrong. We pull that policy out into
|
|
9
|
-
* {@link CONNECT_RULES}: one row per normalized {@link ConnectionStatus}, each row
|
|
10
|
-
* naming the {@link ConnectAction} the driver should take next. The poll loop then
|
|
11
|
-
* does nothing but *consult the table* and obey.
|
|
12
|
-
*
|
|
13
|
-
* {@link planConnect} is the pure function at the heart of it: state in, action
|
|
14
|
-
* out, no I/O. {@link initiateAndAwait} is the one impure driver that opens a
|
|
15
|
-
* connection through the {@link SaasBackend} port and polls it to a terminal
|
|
16
|
-
* outcome, asking {@link planConnect} at every step what to do. Because the policy
|
|
17
|
-
* is data, a test can assert the whole decision matrix without touching a backend.
|
|
18
|
-
*/
|
|
19
|
-
import type { ConnectionState, ConnectionStatus, InitiateOptions, SaasBackend } from "../core/index";
|
|
20
|
-
/**
|
|
21
|
-
* What the driver should do once it has observed a connection's current state.
|
|
22
|
-
*
|
|
23
|
-
* - `await-auth` — the user still has to act (visit `authUrl`); keep polling.
|
|
24
|
-
* - `poll` — the link is progressing on the backend; check again shortly.
|
|
25
|
-
* - `done` — the link is `active`; the carried `accountId` is ready to use.
|
|
26
|
-
* - `expired` — the attempt lapsed; the caller may re-initiate from scratch.
|
|
27
|
-
* - `failed` — the attempt terminally failed; surface the reason and stop.
|
|
28
|
-
*/
|
|
29
|
-
export type ConnectAction = {
|
|
30
|
-
readonly kind: "await-auth";
|
|
31
|
-
readonly authUrl?: string;
|
|
32
|
-
} | {
|
|
33
|
-
readonly kind: "poll";
|
|
34
|
-
} | {
|
|
35
|
-
readonly kind: "done";
|
|
36
|
-
readonly accountId?: string;
|
|
37
|
-
} | {
|
|
38
|
-
readonly kind: "expired";
|
|
39
|
-
} | {
|
|
40
|
-
readonly kind: "failed";
|
|
41
|
-
readonly reason: string;
|
|
42
|
-
};
|
|
43
|
-
/** Whether an action is one the driver stops on rather than loops past. */
|
|
44
|
-
export declare function isTerminal(action: ConnectAction): boolean;
|
|
45
|
-
/**
|
|
46
|
-
* One row of the connection decision matrix: a normalized status mapped to the
|
|
47
|
-
* action the driver should take when it observes that status. Keeping `decide` as
|
|
48
|
-
* a thunk over the live {@link ConnectionState} lets a row read the state's
|
|
49
|
-
* `accountId` / `authUrl` without the table itself needing to branch.
|
|
50
|
-
*/
|
|
51
|
-
interface ConnectRule {
|
|
52
|
-
/** The normalized status this row governs. */
|
|
53
|
-
readonly when: ConnectionStatus;
|
|
54
|
-
/** Produce the next action from the observed state. */
|
|
55
|
-
decide(state: ConnectionState): ConnectAction;
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* The connection rule table — the whole policy as data.
|
|
59
|
-
*
|
|
60
|
-
* `active` → done (carrying the linked account); `pending` → either wait for the
|
|
61
|
-
* user when an `authUrl` is outstanding, or poll the backend otherwise; `expired`
|
|
62
|
-
* and `failed` are the two terminal failure shapes. There is exactly one row per
|
|
63
|
-
* member of {@link ConnectionStatus}, so the matrix is total by construction.
|
|
64
|
-
*/
|
|
65
|
-
export declare const CONNECT_RULES: readonly ConnectRule[];
|
|
66
|
-
/**
|
|
67
|
-
* Decide the next {@link ConnectAction} for an observed {@link ConnectionState}.
|
|
68
|
-
*
|
|
69
|
-
* Pure: it consults {@link CONNECT_RULES} and applies the matching row. Because
|
|
70
|
-
* the table is total over {@link ConnectionStatus}, the only way to miss is an
|
|
71
|
-
* out-of-vocabulary status, which we treat as a terminal failure rather than a
|
|
72
|
-
* silent no-op.
|
|
73
|
-
*/
|
|
74
|
-
export declare function planConnect(state: ConnectionState): ConnectAction;
|
|
75
|
-
/** How the {@link initiateAndAwait} driver paces and bounds its polling. */
|
|
76
|
-
export interface AwaitOptions extends InitiateOptions {
|
|
77
|
-
/** Milliseconds between polls of a still-pending connection. Default 1500. */
|
|
78
|
-
readonly pollIntervalMs?: number;
|
|
79
|
-
/** Maximum number of polls before giving up with a timeout. Default 40. */
|
|
80
|
-
readonly maxPolls?: number;
|
|
81
|
-
/** Injectable delay, so tests can drive the loop without real time passing. */
|
|
82
|
-
readonly sleep?: (ms: number) => Promise<void>;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* The terminal outcome of driving a connection attempt to completion.
|
|
86
|
-
*
|
|
87
|
-
* `action` is always one for which {@link isTerminal} holds. `requestId` and the
|
|
88
|
-
* final `authUrl` (if the user still needed to act) are carried for surfacing.
|
|
89
|
-
*/
|
|
90
|
-
export interface ConnectOutcome {
|
|
91
|
-
/** The connection request that was driven. */
|
|
92
|
-
readonly requestId: string;
|
|
93
|
-
/** The toolkit the request targeted. */
|
|
94
|
-
readonly toolkit: string;
|
|
95
|
-
/** The terminal action the state machine settled on. */
|
|
96
|
-
readonly action: ConnectAction;
|
|
97
|
-
/** The most recent authorization URL observed, if any. */
|
|
98
|
-
readonly authUrl?: string;
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Open a connection to `toolkit` and poll it to a terminal state via the backend.
|
|
102
|
-
*
|
|
103
|
-
* The driver is deliberately thin: it initiates once, then loops — observe state,
|
|
104
|
-
* ask {@link planConnect}, and either stop (terminal action) or wait-and-poll
|
|
105
|
-
* (`poll` / `await-auth`). Polling is bounded by `maxPolls`; exhausting the budget
|
|
106
|
-
* yields a `failed` outcome rather than hanging. All policy lives in the rule
|
|
107
|
-
* table; this function only sequences I/O around it.
|
|
108
|
-
*
|
|
109
|
-
* Note it does *not* re-initiate on `expired` — that decision belongs to the
|
|
110
|
-
* caller, who may want to surface the lapse to the user first; the outcome simply
|
|
111
|
-
* reports `expired` so the caller can choose.
|
|
112
|
-
*/
|
|
113
|
-
export declare function initiateAndAwait(backend: SaasBackend, toolkit: string, options?: AwaitOptions): Promise<ConnectOutcome>;
|
|
114
|
-
export {};
|