@frontmcp/sdk 0.7.2 → 0.8.0
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/agent/adapters/adapter.factory.d.ts +27 -18
- package/agent/adapters/adapter.factory.d.ts.map +1 -1
- package/agent/agent.instance.d.ts +5 -0
- package/agent/agent.instance.d.ts.map +1 -1
- package/agent/agent.scope.d.ts +54 -72
- package/agent/agent.scope.d.ts.map +1 -1
- package/agent/flows/call-agent.flow.d.ts +1 -0
- package/agent/flows/call-agent.flow.d.ts.map +1 -1
- package/app/instances/app.local.instance.d.ts +3 -0
- package/app/instances/app.local.instance.d.ts.map +1 -1
- package/app/instances/app.remote.instance.d.ts +3 -0
- package/app/instances/app.remote.instance.d.ts.map +1 -1
- package/auth/auth.registry.d.ts.map +1 -1
- package/auth/authorization/authorization.types.d.ts +7 -180
- package/auth/authorization/authorization.types.d.ts.map +1 -1
- package/auth/authorization/index.d.ts +2 -0
- package/auth/authorization/index.d.ts.map +1 -1
- package/auth/authorization/orchestrated.accessor.d.ts +161 -0
- package/auth/authorization/orchestrated.accessor.d.ts.map +1 -0
- package/auth/authorization/orchestrated.authorization.d.ts +19 -4
- package/auth/authorization/orchestrated.authorization.d.ts.map +1 -1
- package/auth/authorization/orchestrated.context-extension.d.ts +108 -0
- package/auth/authorization/orchestrated.context-extension.d.ts.map +1 -0
- package/auth/cimd/index.d.ts +14 -0
- package/auth/cimd/index.d.ts.map +1 -0
- package/auth/flows/auth.verify.flow.d.ts.map +1 -1
- package/auth/flows/oauth.authorize.flow.d.ts +30 -3
- package/auth/flows/oauth.authorize.flow.d.ts.map +1 -1
- package/auth/flows/oauth.callback.flow.d.ts +11 -3
- package/auth/flows/oauth.callback.flow.d.ts.map +1 -1
- package/auth/flows/oauth.provider-callback.flow.d.ts +118 -0
- package/auth/flows/oauth.provider-callback.flow.d.ts.map +1 -0
- package/auth/flows/oauth.register.flow.d.ts +1 -1
- package/auth/flows/oauth.token.flow.d.ts +1 -1
- package/auth/flows/session.verify.flow.d.ts +8 -0
- package/auth/flows/session.verify.flow.d.ts.map +1 -1
- package/auth/flows/well-known.jwks.flow.d.ts +3 -3
- package/auth/flows/well-known.oauth-authorization-server.flow.d.ts +3 -2
- package/auth/flows/well-known.oauth-authorization-server.flow.d.ts.map +1 -1
- package/auth/flows/well-known.prm.flow.d.ts +1 -1
- package/auth/instances/instance.local-primary-auth.d.ts +88 -1
- package/auth/instances/instance.local-primary-auth.d.ts.map +1 -1
- package/auth/machine-id.d.ts +14 -0
- package/auth/machine-id.d.ts.map +1 -1
- package/auth/session/encrypted-authorization-vault.d.ts +2 -3
- package/auth/session/encrypted-authorization-vault.d.ts.map +1 -1
- package/auth/session/federated-auth.session.d.ts +252 -0
- package/auth/session/federated-auth.session.d.ts.map +1 -0
- package/auth/session/index.d.ts +6 -2
- package/auth/session/index.d.ts.map +1 -1
- package/auth/session/orchestrated-token.store.d.ts +155 -0
- package/auth/session/orchestrated-token.store.d.ts.map +1 -0
- package/auth/session/record/session.base.d.ts +7 -7
- package/auth/session/record/session.base.d.ts.map +1 -1
- package/auth/session/record/session.mcp.d.ts +11 -0
- package/auth/session/record/session.mcp.d.ts.map +1 -0
- package/auth/session/redis-session.store.d.ts +10 -5
- package/auth/session/redis-session.store.d.ts.map +1 -1
- package/auth/session/session-crypto.d.ts +6 -9
- package/auth/session/session-crypto.d.ts.map +1 -1
- package/{store/store.factory.d.ts → auth/session/session-store.factory.d.ts} +10 -36
- package/auth/session/session-store.factory.d.ts.map +1 -0
- package/auth/session/session.service.d.ts +4 -8
- package/auth/session/session.service.d.ts.map +1 -1
- package/auth/session/session.transport.d.ts +8 -2
- package/auth/session/session.transport.d.ts.map +1 -1
- package/auth/session/session.types.d.ts +5 -5
- package/auth/session/session.types.d.ts.map +1 -1
- package/auth/session/token.refresh.d.ts +1 -2
- package/auth/session/token.refresh.d.ts.map +1 -1
- package/auth/session/transport-session.manager.d.ts +7 -6
- package/auth/session/transport-session.manager.d.ts.map +1 -1
- package/auth/session/utils/session-id.utils.d.ts +18 -1
- package/auth/session/utils/session-id.utils.d.ts.map +1 -1
- package/auth/session/vercel-kv-session.store.d.ts +16 -16
- package/auth/session/vercel-kv-session.store.d.ts.map +1 -1
- package/auth/utils/authorization-id.utils.d.ts +12 -0
- package/auth/utils/authorization-id.utils.d.ts.map +1 -0
- package/auth/utils/index.d.ts +1 -2
- package/auth/utils/index.d.ts.map +1 -1
- package/auth/vault/auth-providers.accessor.d.ts +153 -0
- package/auth/vault/auth-providers.accessor.d.ts.map +1 -0
- package/auth/vault/auth-providers.accessor.impl.d.ts +52 -0
- package/auth/vault/auth-providers.accessor.impl.d.ts.map +1 -0
- package/auth/vault/auth-providers.context-extension.d.ts +68 -0
- package/auth/vault/auth-providers.context-extension.d.ts.map +1 -0
- package/auth/vault/auth-providers.providers.d.ts +40 -0
- package/auth/vault/auth-providers.providers.d.ts.map +1 -0
- package/auth/vault/auth-providers.registry.d.ts +110 -0
- package/auth/vault/auth-providers.registry.d.ts.map +1 -0
- package/auth/vault/auth-providers.vault.d.ts +93 -0
- package/auth/vault/auth-providers.vault.d.ts.map +1 -0
- package/auth/vault/credential-cache.d.ts +13 -0
- package/auth/vault/credential-cache.d.ts.map +1 -0
- package/auth/vault/credential-loaders/eager-loader.d.ts +46 -0
- package/auth/vault/credential-loaders/eager-loader.d.ts.map +1 -0
- package/auth/vault/credential-loaders/index.d.ts +7 -0
- package/auth/vault/credential-loaders/index.d.ts.map +1 -0
- package/auth/vault/credential-loaders/lazy-loader.d.ts +53 -0
- package/auth/vault/credential-loaders/lazy-loader.d.ts.map +1 -0
- package/auth/vault/index.d.ts +56 -0
- package/auth/vault/index.d.ts.map +1 -0
- package/builtin/config/config-resolver.d.ts +162 -0
- package/builtin/config/config-resolver.d.ts.map +1 -0
- package/builtin/config/config.plugin.d.ts +63 -0
- package/builtin/config/config.plugin.d.ts.map +1 -0
- package/builtin/config/config.symbols.d.ts +7 -0
- package/builtin/config/config.symbols.d.ts.map +1 -0
- package/builtin/config/config.types.d.ts +71 -0
- package/builtin/config/config.types.d.ts.map +1 -0
- package/builtin/config/index.d.ts +68 -0
- package/builtin/config/index.d.ts.map +1 -0
- package/builtin/config/providers/config-loader.d.ts +36 -0
- package/builtin/config/providers/config-loader.d.ts.map +1 -0
- package/builtin/config/providers/config.service.d.ts +108 -0
- package/builtin/config/providers/config.service.d.ts.map +1 -0
- package/builtin/config/providers/env-loader.d.ts +76 -0
- package/builtin/config/providers/env-loader.d.ts.map +1 -0
- package/builtin/index.d.ts +7 -0
- package/builtin/index.d.ts.map +1 -0
- package/common/decorators/front-mcp.decorator.d.ts.map +1 -1
- package/common/decorators/hook.decorator.d.ts +0 -10
- package/common/decorators/hook.decorator.d.ts.map +1 -1
- package/common/decorators/index.d.ts +1 -0
- package/common/decorators/index.d.ts.map +1 -1
- package/common/decorators/skill.decorator.d.ts +105 -0
- package/common/decorators/skill.decorator.d.ts.map +1 -0
- package/common/dynamic/dynamic.adapter.d.ts +14 -4
- package/common/dynamic/dynamic.adapter.d.ts.map +1 -1
- package/common/entries/app.entry.d.ts +2 -0
- package/common/entries/app.entry.d.ts.map +1 -1
- package/common/entries/index.d.ts +1 -0
- package/common/entries/index.d.ts.map +1 -1
- package/common/entries/prompt.entry.d.ts +0 -6
- package/common/entries/prompt.entry.d.ts.map +1 -1
- package/common/entries/resource.entry.d.ts +0 -6
- package/common/entries/resource.entry.d.ts.map +1 -1
- package/common/entries/scope.entry.d.ts +2 -0
- package/common/entries/scope.entry.d.ts.map +1 -1
- package/common/entries/skill.entry.d.ts +95 -0
- package/common/entries/skill.entry.d.ts.map +1 -0
- package/common/entries/tool.entry.d.ts +17 -9
- package/common/entries/tool.entry.d.ts.map +1 -1
- package/common/interfaces/agent.interface.d.ts +35 -6
- package/common/interfaces/agent.interface.d.ts.map +1 -1
- package/common/interfaces/execution-context.interface.d.ts +14 -0
- package/common/interfaces/execution-context.interface.d.ts.map +1 -1
- package/common/interfaces/index.d.ts +1 -0
- package/common/interfaces/index.d.ts.map +1 -1
- package/common/interfaces/internal/primary-auth-provider.interface.d.ts +1 -7
- package/common/interfaces/internal/primary-auth-provider.interface.d.ts.map +1 -1
- package/common/interfaces/internal/registry.interface.d.ts +4 -1
- package/common/interfaces/internal/registry.interface.d.ts.map +1 -1
- package/common/interfaces/skill.interface.d.ts +91 -0
- package/common/interfaces/skill.interface.d.ts.map +1 -0
- package/common/interfaces/tool.interface.d.ts +39 -0
- package/common/interfaces/tool.interface.d.ts.map +1 -1
- package/common/metadata/agent.metadata.d.ts +62 -2
- package/common/metadata/agent.metadata.d.ts.map +1 -1
- package/common/metadata/app.metadata.d.ts +168 -169
- package/common/metadata/app.metadata.d.ts.map +1 -1
- package/common/metadata/front-mcp.metadata.d.ts +2182 -721
- package/common/metadata/front-mcp.metadata.d.ts.map +1 -1
- package/common/metadata/index.d.ts +1 -0
- package/common/metadata/index.d.ts.map +1 -1
- package/common/metadata/plugin.metadata.d.ts +8 -1
- package/common/metadata/plugin.metadata.d.ts.map +1 -1
- package/common/metadata/skill.metadata.d.ts +366 -0
- package/common/metadata/skill.metadata.d.ts.map +1 -0
- package/common/metadata/tool.metadata.d.ts +71 -0
- package/common/metadata/tool.metadata.d.ts.map +1 -1
- package/common/records/index.d.ts +1 -0
- package/common/records/index.d.ts.map +1 -1
- package/common/records/skill.record.d.ts +55 -0
- package/common/records/skill.record.d.ts.map +1 -0
- package/common/schemas/annotated-class.schema.d.ts +1 -0
- package/common/schemas/annotated-class.schema.d.ts.map +1 -1
- package/common/schemas/http-output.schema.d.ts +24 -24
- package/common/tokens/app.tokens.d.ts.map +1 -1
- package/common/tokens/front-mcp.tokens.d.ts.map +1 -1
- package/common/tokens/index.d.ts +1 -0
- package/common/tokens/index.d.ts.map +1 -1
- package/common/tokens/plugin.tokens.d.ts +1 -0
- package/common/tokens/plugin.tokens.d.ts.map +1 -1
- package/common/tokens/skill.tokens.d.ts +18 -0
- package/common/tokens/skill.tokens.d.ts.map +1 -0
- package/common/tokens/tool.tokens.d.ts +2 -0
- package/common/tokens/tool.tokens.d.ts.map +1 -1
- package/common/types/auth/session.types.d.ts +21 -0
- package/common/types/auth/session.types.d.ts.map +1 -1
- package/common/types/options/auth/app-auth.schema.d.ts +80 -84
- package/common/types/options/auth/app-auth.schema.d.ts.map +1 -1
- package/common/types/options/auth/index.d.ts +6 -8
- package/common/types/options/auth/index.d.ts.map +1 -1
- package/common/types/options/auth/{auth.interfaces.d.ts → interfaces.d.ts} +17 -48
- package/common/types/options/auth/interfaces.d.ts.map +1 -0
- package/common/types/options/auth/orchestrated.schema.d.ts +160 -84
- package/common/types/options/auth/orchestrated.schema.d.ts.map +1 -1
- package/common/types/options/auth/public.schema.d.ts +0 -21
- package/common/types/options/auth/public.schema.d.ts.map +1 -1
- package/common/types/options/auth/{auth.schema.d.ts → schema.d.ts} +81 -85
- package/common/types/options/auth/schema.d.ts.map +1 -0
- package/common/types/options/auth/shared.schemas.d.ts +12 -0
- package/common/types/options/auth/shared.schemas.d.ts.map +1 -1
- package/common/types/options/auth/transparent.schema.d.ts +0 -21
- package/common/types/options/auth/transparent.schema.d.ts.map +1 -1
- package/common/types/options/auth/typecheck.d.ts +2 -0
- package/common/types/options/auth/typecheck.d.ts.map +1 -0
- package/common/types/options/auth/{auth.utils.d.ts → utils.d.ts} +2 -2
- package/common/types/options/auth/utils.d.ts.map +1 -0
- package/common/types/options/elicitation/index.d.ts +4 -0
- package/common/types/options/elicitation/index.d.ts.map +1 -0
- package/common/types/options/elicitation/interfaces.d.ts +80 -0
- package/common/types/options/elicitation/interfaces.d.ts.map +1 -0
- package/common/types/options/elicitation/schema.d.ts +75 -0
- package/common/types/options/elicitation/schema.d.ts.map +1 -0
- package/common/types/options/ext-apps/index.d.ts +3 -0
- package/common/types/options/ext-apps/index.d.ts.map +1 -0
- package/common/types/options/ext-apps/interfaces.d.ts +2 -0
- package/common/types/options/ext-apps/interfaces.d.ts.map +1 -0
- package/common/types/options/ext-apps/schema.d.ts +80 -0
- package/common/types/options/ext-apps/schema.d.ts.map +1 -0
- package/common/types/options/http/index.d.ts +4 -0
- package/common/types/options/http/index.d.ts.map +1 -0
- package/common/types/options/http/interfaces.d.ts +23 -0
- package/common/types/options/http/interfaces.d.ts.map +1 -0
- package/common/types/options/http/schema.d.ts +18 -0
- package/common/types/options/http/schema.d.ts.map +1 -0
- package/common/types/options/index.d.ts +10 -6
- package/common/types/options/index.d.ts.map +1 -1
- package/common/types/options/logging/index.d.ts +5 -0
- package/common/types/options/logging/index.d.ts.map +1 -0
- package/common/types/options/logging/interfaces.d.ts +41 -0
- package/common/types/options/logging/interfaces.d.ts.map +1 -0
- package/common/types/options/logging/schema.d.ts +24 -0
- package/common/types/options/logging/schema.d.ts.map +1 -0
- package/common/types/options/pagination/index.d.ts +4 -0
- package/common/types/options/pagination/index.d.ts.map +1 -0
- package/common/types/options/pagination/interfaces.d.ts +43 -0
- package/common/types/options/pagination/interfaces.d.ts.map +1 -0
- package/common/types/options/pagination/schema.d.ts +41 -0
- package/common/types/options/pagination/schema.d.ts.map +1 -0
- package/common/types/options/redis/index.d.ts +4 -0
- package/common/types/options/redis/index.d.ts.map +1 -0
- package/common/types/options/redis/interfaces.d.ts +81 -0
- package/common/types/options/redis/interfaces.d.ts.map +1 -0
- package/common/types/options/{redis.options.d.ts → redis/schema.d.ts} +2 -2
- package/common/types/options/redis/schema.d.ts.map +1 -0
- package/common/types/options/server-info/index.d.ts +4 -0
- package/common/types/options/server-info/index.d.ts.map +1 -0
- package/common/types/options/server-info/interfaces.d.ts +27 -0
- package/common/types/options/server-info/interfaces.d.ts.map +1 -0
- package/common/types/options/{server-info.options.d.ts → server-info/schema.d.ts} +13 -10
- package/common/types/options/server-info/schema.d.ts.map +1 -0
- package/common/types/options/session/index.d.ts +4 -0
- package/common/types/options/session/index.d.ts.map +1 -0
- package/common/types/options/session/interfaces.d.ts +66 -0
- package/common/types/options/session/interfaces.d.ts.map +1 -0
- package/common/types/options/session/schema.d.ts +79 -0
- package/common/types/options/session/schema.d.ts.map +1 -0
- package/common/types/options/skills-http/index.d.ts +4 -0
- package/common/types/options/skills-http/index.d.ts.map +1 -0
- package/common/types/options/skills-http/interfaces.d.ts +321 -0
- package/common/types/options/skills-http/interfaces.d.ts.map +1 -0
- package/common/types/options/skills-http/schema.d.ts +139 -0
- package/common/types/options/skills-http/schema.d.ts.map +1 -0
- package/common/types/options/transport/index.d.ts +4 -0
- package/common/types/options/transport/index.d.ts.map +1 -0
- package/common/types/options/transport/interfaces.d.ts +354 -0
- package/common/types/options/transport/interfaces.d.ts.map +1 -0
- package/common/types/options/transport/schema.d.ts +309 -0
- package/common/types/options/transport/schema.d.ts.map +1 -0
- package/common/types/options/transport/typecheck.d.ts +2 -0
- package/common/types/options/transport/typecheck.d.ts.map +1 -0
- package/common/utils/decide-request-intent.utils.d.ts +3 -3
- package/common/utils/decide-request-intent.utils.d.ts.map +1 -1
- package/context/context-extension.d.ts +1 -28
- package/context/context-extension.d.ts.map +1 -1
- package/context/frontmcp-context-storage.d.ts.map +1 -1
- package/context/frontmcp-context.d.ts +36 -39
- package/context/frontmcp-context.d.ts.map +1 -1
- package/context/frontmcp-context.provider.d.ts +3 -9
- package/context/frontmcp-context.provider.d.ts.map +1 -1
- package/context/index.d.ts +5 -20
- package/context/index.d.ts.map +1 -1
- package/context/metadata.utils.d.ts +24 -0
- package/context/metadata.utils.d.ts.map +1 -0
- package/direct/client.types.d.ts +447 -0
- package/direct/client.types.d.ts.map +1 -0
- package/direct/connect.d.ts +188 -0
- package/direct/connect.d.ts.map +1 -0
- package/direct/direct-client.d.ts +7 -0
- package/direct/direct-client.d.ts.map +1 -0
- package/direct/direct-server.d.ts +38 -0
- package/direct/direct-server.d.ts.map +1 -0
- package/direct/direct.types.d.ts +134 -0
- package/direct/direct.types.d.ts.map +1 -0
- package/direct/index.d.ts +15 -0
- package/direct/index.d.ts.map +1 -0
- package/direct/llm-platform.d.ts +94 -0
- package/direct/llm-platform.d.ts.map +1 -0
- package/elicitation/elicitation-fallback.schema.d.ts +32 -0
- package/elicitation/elicitation-fallback.schema.d.ts.map +1 -0
- package/elicitation/elicitation.types.d.ts +160 -0
- package/elicitation/elicitation.types.d.ts.map +1 -0
- package/elicitation/flows/elicitation-request.flow.d.ts +98 -0
- package/elicitation/flows/elicitation-request.flow.d.ts.map +1 -0
- package/elicitation/flows/elicitation-result.flow.d.ts +79 -0
- package/elicitation/flows/elicitation-result.flow.d.ts.map +1 -0
- package/elicitation/flows/index.d.ts +10 -0
- package/elicitation/flows/index.d.ts.map +1 -0
- package/elicitation/helpers/elicit.helper.d.ts +65 -0
- package/elicitation/helpers/elicit.helper.d.ts.map +1 -0
- package/elicitation/helpers/extend-output-schema.d.ts +31 -0
- package/elicitation/helpers/extend-output-schema.d.ts.map +1 -0
- package/elicitation/helpers/fallback.helper.d.ts +60 -0
- package/elicitation/helpers/fallback.helper.d.ts.map +1 -0
- package/elicitation/helpers/index.d.ts +12 -0
- package/elicitation/helpers/index.d.ts.map +1 -0
- package/elicitation/helpers/validate-elicitation-content.d.ts +52 -0
- package/elicitation/helpers/validate-elicitation-content.d.ts.map +1 -0
- package/elicitation/hooks/elicitation.hooks.d.ts +66 -0
- package/elicitation/hooks/elicitation.hooks.d.ts.map +1 -0
- package/elicitation/hooks/index.d.ts +9 -0
- package/elicitation/hooks/index.d.ts.map +1 -0
- package/elicitation/index.d.ts +18 -0
- package/elicitation/index.d.ts.map +1 -0
- package/elicitation/send-elicitation-result.tool.d.ts +18 -0
- package/elicitation/send-elicitation-result.tool.d.ts.map +1 -0
- package/elicitation/store/elicitation-encryption.d.ts +134 -0
- package/elicitation/store/elicitation-encryption.d.ts.map +1 -0
- package/elicitation/store/elicitation-store.factory.d.ts +197 -0
- package/elicitation/store/elicitation-store.factory.d.ts.map +1 -0
- package/elicitation/store/elicitation.store.d.ts +191 -0
- package/elicitation/store/elicitation.store.d.ts.map +1 -0
- package/elicitation/store/encrypted-elicitation.store.d.ts +121 -0
- package/elicitation/store/encrypted-elicitation.store.d.ts.map +1 -0
- package/elicitation/store/index.d.ts +14 -0
- package/elicitation/store/index.d.ts.map +1 -0
- package/elicitation/store/storage-elicitation.store.d.ts +118 -0
- package/elicitation/store/storage-elicitation.store.d.ts.map +1 -0
- package/errors/elicitation.error.d.ts +115 -0
- package/errors/elicitation.error.d.ts.map +1 -0
- package/errors/index.d.ts +1 -0
- package/errors/index.d.ts.map +1 -1
- package/esm/index.mjs +30824 -19537
- package/esm/package.json +13 -7
- package/ext-apps/ext-apps.handler.d.ts +177 -0
- package/ext-apps/ext-apps.handler.d.ts.map +1 -0
- package/ext-apps/ext-apps.types.d.ts +273 -0
- package/ext-apps/ext-apps.types.d.ts.map +1 -0
- package/ext-apps/index.d.ts +13 -0
- package/ext-apps/index.d.ts.map +1 -0
- package/flows/flow.instance.d.ts.map +1 -1
- package/front-mcp/front-mcp.d.ts +64 -2
- package/front-mcp/front-mcp.d.ts.map +1 -1
- package/front-mcp/front-mcp.providers.d.ts +604 -236
- package/front-mcp/front-mcp.providers.d.ts.map +1 -1
- package/index.d.ts +17 -0
- package/index.d.ts.map +1 -1
- package/index.js +31066 -19707
- package/notification/index.d.ts +1 -1
- package/notification/index.d.ts.map +1 -1
- package/notification/notification.service.d.ts +18 -0
- package/notification/notification.service.d.ts.map +1 -1
- package/package.json +13 -7
- package/plugin/plugin.registry.d.ts +2 -0
- package/plugin/plugin.registry.d.ts.map +1 -1
- package/provider/provider.registry.d.ts +8 -3
- package/provider/provider.registry.d.ts.map +1 -1
- package/scope/flows/http.request.flow.d.ts +4 -0
- package/scope/flows/http.request.flow.d.ts.map +1 -1
- package/scope/scope.instance.d.ts +74 -0
- package/scope/scope.instance.d.ts.map +1 -1
- package/server/server.instance.d.ts +3 -3
- package/server/server.instance.d.ts.map +1 -1
- package/skill/auth/index.d.ts +10 -0
- package/skill/auth/index.d.ts.map +1 -0
- package/skill/auth/skill-http-auth.d.ts +112 -0
- package/skill/auth/skill-http-auth.d.ts.map +1 -0
- package/skill/cache/index.d.ts +13 -0
- package/skill/cache/index.d.ts.map +1 -0
- package/skill/cache/skill-http-cache.d.ts +144 -0
- package/skill/cache/skill-http-cache.d.ts.map +1 -0
- package/skill/cache/skill-http-cache.factory.d.ts +83 -0
- package/skill/cache/skill-http-cache.factory.d.ts.map +1 -0
- package/skill/cache/skill-http-cache.holder.d.ts +35 -0
- package/skill/cache/skill-http-cache.holder.d.ts.map +1 -0
- package/skill/errors/index.d.ts +3 -0
- package/skill/errors/index.d.ts.map +1 -0
- package/skill/errors/skill-validation.error.d.ts +110 -0
- package/skill/errors/skill-validation.error.d.ts.map +1 -0
- package/skill/errors/tool-not-allowed.error.d.ts +66 -0
- package/skill/errors/tool-not-allowed.error.d.ts.map +1 -0
- package/skill/flows/http/index.d.ts +12 -0
- package/skill/flows/http/index.d.ts.map +1 -0
- package/skill/flows/http/llm-full-txt.flow.d.ts +70 -0
- package/skill/flows/http/llm-full-txt.flow.d.ts.map +1 -0
- package/skill/flows/http/llm-txt.flow.d.ts +77 -0
- package/skill/flows/http/llm-txt.flow.d.ts.map +1 -0
- package/skill/flows/http/skills-api.flow.d.ts +81 -0
- package/skill/flows/http/skills-api.flow.d.ts.map +1 -0
- package/skill/flows/index.d.ts +13 -0
- package/skill/flows/index.d.ts.map +1 -0
- package/skill/flows/load-skill.flow.d.ts +169 -0
- package/skill/flows/load-skill.flow.d.ts.map +1 -0
- package/skill/flows/search-skills.flow.d.ts +101 -0
- package/skill/flows/search-skills.flow.d.ts.map +1 -0
- package/skill/guards/index.d.ts +2 -0
- package/skill/guards/index.d.ts.map +1 -0
- package/skill/guards/tool-authorization.guard.d.ts +87 -0
- package/skill/guards/tool-authorization.guard.d.ts.map +1 -0
- package/skill/hooks/index.d.ts +2 -0
- package/skill/hooks/index.d.ts.map +1 -0
- package/skill/hooks/skill-tool.hook.d.ts +52 -0
- package/skill/hooks/skill-tool.hook.d.ts.map +1 -0
- package/skill/index.d.ts +74 -0
- package/skill/index.d.ts.map +1 -0
- package/skill/providers/external-skill.provider.d.ts +240 -0
- package/skill/providers/external-skill.provider.d.ts.map +1 -0
- package/skill/providers/index.d.ts +12 -0
- package/skill/providers/index.d.ts.map +1 -0
- package/skill/providers/memory-skill.provider.d.ts +97 -0
- package/skill/providers/memory-skill.provider.d.ts.map +1 -0
- package/skill/session/index.d.ts +4 -0
- package/skill/session/index.d.ts.map +1 -0
- package/skill/session/skill-session-store.interface.d.ts +79 -0
- package/skill/session/skill-session-store.interface.d.ts.map +1 -0
- package/skill/session/skill-session.manager.d.ts +137 -0
- package/skill/session/skill-session.manager.d.ts.map +1 -0
- package/skill/session/skill-session.types.d.ts +303 -0
- package/skill/session/skill-session.types.d.ts.map +1 -0
- package/skill/skill-http.utils.d.ts +107 -0
- package/skill/skill-http.utils.d.ts.map +1 -0
- package/skill/skill-mode.utils.d.ts +53 -0
- package/skill/skill-mode.utils.d.ts.map +1 -0
- package/skill/skill-scope.helper.d.ts +55 -0
- package/skill/skill-scope.helper.d.ts.map +1 -0
- package/skill/skill-storage.factory.d.ts +194 -0
- package/skill/skill-storage.factory.d.ts.map +1 -0
- package/skill/skill-storage.interface.d.ts +230 -0
- package/skill/skill-storage.interface.d.ts.map +1 -0
- package/skill/skill-validator.d.ts +63 -0
- package/skill/skill-validator.d.ts.map +1 -0
- package/skill/skill.events.d.ts +88 -0
- package/skill/skill.events.d.ts.map +1 -0
- package/skill/skill.instance.d.ts +92 -0
- package/skill/skill.instance.d.ts.map +1 -0
- package/skill/skill.registry.d.ts +309 -0
- package/skill/skill.registry.d.ts.map +1 -0
- package/skill/skill.utils.d.ts +90 -0
- package/skill/skill.utils.d.ts.map +1 -0
- package/skill/sync/index.d.ts +16 -0
- package/skill/sync/index.d.ts.map +1 -0
- package/skill/sync/memory-sync-state.store.d.ts +49 -0
- package/skill/sync/memory-sync-state.store.d.ts.map +1 -0
- package/skill/sync/skill-hash.d.ts +65 -0
- package/skill/sync/skill-hash.d.ts.map +1 -0
- package/skill/sync/sync-state.interface.d.ts +125 -0
- package/skill/sync/sync-state.interface.d.ts.map +1 -0
- package/skill/tools/index.d.ts +21 -0
- package/skill/tools/index.d.ts.map +1 -0
- package/skill/tools/load-skills.tool.d.ts +76 -0
- package/skill/tools/load-skills.tool.d.ts.map +1 -0
- package/skill/tools/search-skills.tool.d.ts +61 -0
- package/skill/tools/search-skills.tool.d.ts.map +1 -0
- package/tool/flows/call-tool.flow.d.ts +1 -0
- package/tool/flows/call-tool.flow.d.ts.map +1 -1
- package/tool/flows/tools-list.flow.d.ts +15 -0
- package/tool/flows/tools-list.flow.d.ts.map +1 -1
- package/tool/tool.instance.d.ts +8 -0
- package/tool/tool.instance.d.ts.map +1 -1
- package/tool/tool.registry.d.ts +11 -0
- package/tool/tool.registry.d.ts.map +1 -1
- package/tool/tool.utils.d.ts.map +1 -1
- package/tool/ui/template-helpers.d.ts +0 -5
- package/tool/ui/template-helpers.d.ts.map +1 -1
- package/transport/adapters/streamable-http-transport.d.ts.map +1 -1
- package/transport/adapters/transport.local.adapter.d.ts +54 -9
- package/transport/adapters/transport.local.adapter.d.ts.map +1 -1
- package/transport/adapters/transport.sse.adapter.d.ts +11 -2
- package/transport/adapters/transport.sse.adapter.d.ts.map +1 -1
- package/transport/adapters/transport.streamable-http.adapter.d.ts +21 -2
- package/transport/adapters/transport.streamable-http.adapter.d.ts.map +1 -1
- package/transport/event-stores/event-store.factory.d.ts +96 -0
- package/transport/event-stores/event-store.factory.d.ts.map +1 -0
- package/transport/event-stores/index.d.ts +47 -0
- package/transport/event-stores/index.d.ts.map +1 -0
- package/transport/event-stores/memory.event-store.d.ts +51 -0
- package/transport/event-stores/memory.event-store.d.ts.map +1 -0
- package/transport/event-stores/redis.event-store.d.ts +79 -0
- package/transport/event-stores/redis.event-store.d.ts.map +1 -0
- package/transport/flows/handle.sse.flow.d.ts.map +1 -1
- package/transport/flows/handle.streamable-http.flow.d.ts +3 -1
- package/transport/flows/handle.streamable-http.flow.d.ts.map +1 -1
- package/transport/in-memory-server.d.ts +85 -0
- package/transport/in-memory-server.d.ts.map +1 -0
- package/transport/index.d.ts +47 -0
- package/transport/index.d.ts.map +1 -1
- package/transport/mcp-handlers/complete-request.handler.d.ts +3 -84
- package/transport/mcp-handlers/complete-request.handler.d.ts.map +1 -1
- package/transport/mcp-handlers/get-prompt-request.handler.d.ts +3 -128
- package/transport/mcp-handlers/get-prompt-request.handler.d.ts.map +1 -1
- package/transport/mcp-handlers/index.d.ts +463 -490
- package/transport/mcp-handlers/index.d.ts.map +1 -1
- package/transport/mcp-handlers/initialize-request.handler.d.ts.map +1 -1
- package/transport/mcp-handlers/list-prompts-request.handler.d.ts +3 -70
- package/transport/mcp-handlers/list-prompts-request.handler.d.ts.map +1 -1
- package/transport/mcp-handlers/list-resource-templates-request.handler.d.ts +3 -72
- package/transport/mcp-handlers/list-resource-templates-request.handler.d.ts.map +1 -1
- package/transport/mcp-handlers/list-resources-request.handler.d.ts +3 -72
- package/transport/mcp-handlers/list-resources-request.handler.d.ts.map +1 -1
- package/transport/mcp-handlers/list-tools-request.handler.d.ts +3 -85
- package/transport/mcp-handlers/list-tools-request.handler.d.ts.map +1 -1
- package/transport/mcp-handlers/read-resource-request.handler.d.ts +3 -61
- package/transport/mcp-handlers/read-resource-request.handler.d.ts.map +1 -1
- package/transport/mcp-handlers/skills-list-request.handler.d.ts +9 -0
- package/transport/mcp-handlers/skills-list-request.handler.d.ts.map +1 -0
- package/transport/mcp-handlers/skills-load-request.handler.d.ts +9 -0
- package/transport/mcp-handlers/skills-load-request.handler.d.ts.map +1 -0
- package/transport/mcp-handlers/skills-mcp.types.d.ts +157 -0
- package/transport/mcp-handlers/skills-mcp.types.d.ts.map +1 -0
- package/transport/mcp-handlers/skills-search-request.handler.d.ts +9 -0
- package/transport/mcp-handlers/skills-search-request.handler.d.ts.map +1 -0
- package/transport/transport.registry.d.ts +9 -1
- package/transport/transport.registry.d.ts.map +1 -1
- package/transport/transport.types.d.ts +1 -8
- package/transport/transport.types.d.ts.map +1 -1
- package/auth/jwks/dev-key-persistence.d.ts +0 -64
- package/auth/jwks/dev-key-persistence.d.ts.map +0 -1
- package/auth/jwks/index.d.ts +0 -4
- package/auth/jwks/index.d.ts.map +0 -1
- package/auth/jwks/jwks.service.d.ts +0 -58
- package/auth/jwks/jwks.service.d.ts.map +0 -1
- package/auth/jwks/jwks.types.d.ts +0 -33
- package/auth/jwks/jwks.types.d.ts.map +0 -1
- package/auth/jwks/jwks.utils.d.ts +0 -5
- package/auth/jwks/jwks.utils.d.ts.map +0 -1
- package/auth/oauth/flows/oauth.authorize.flow.d.ts +0 -32
- package/auth/oauth/flows/oauth.authorize.flow.d.ts.map +0 -1
- package/auth/oauth/flows/oauth.device-authorization.flow.d.ts +0 -47
- package/auth/oauth/flows/oauth.device-authorization.flow.d.ts.map +0 -1
- package/auth/oauth/flows/oauth.introspect.flow.d.ts +0 -27
- package/auth/oauth/flows/oauth.introspect.flow.d.ts.map +0 -1
- package/auth/oauth/flows/oauth.par.flow.d.ts +0 -28
- package/auth/oauth/flows/oauth.par.flow.d.ts.map +0 -1
- package/auth/oauth/flows/oauth.revoke.flow.d.ts +0 -26
- package/auth/oauth/flows/oauth.revoke.flow.d.ts.map +0 -1
- package/auth/oauth/flows/oauth.token.flow.d.ts +0 -58
- package/auth/oauth/flows/oauth.token.flow.d.ts.map +0 -1
- package/auth/oauth/flows/oauth.userinfo.flow.d.ts +0 -23
- package/auth/oauth/flows/oauth.userinfo.flow.d.ts.map +0 -1
- package/auth/oauth/flows/oidc.logout.flow.d.ts +0 -19
- package/auth/oauth/flows/oidc.logout.flow.d.ts.map +0 -1
- package/auth/session/authorization-vault.d.ts +0 -612
- package/auth/session/authorization-vault.d.ts.map +0 -1
- package/auth/session/authorization.store.d.ts +0 -302
- package/auth/session/authorization.store.d.ts.map +0 -1
- package/auth/session/record/session.stateful.d.ts +0 -21
- package/auth/session/record/session.stateful.d.ts.map +0 -1
- package/auth/session/record/session.stateless.d.ts +0 -18
- package/auth/session/record/session.stateless.d.ts.map +0 -1
- package/auth/session/record/session.transparent.d.ts +0 -18
- package/auth/session/record/session.transparent.d.ts.map +0 -1
- package/auth/session/session.crypto.d.ts +0 -8
- package/auth/session/session.crypto.d.ts.map +0 -1
- package/auth/session/session.schema.d.ts +0 -6
- package/auth/session/session.schema.d.ts.map +0 -1
- package/auth/session/token.store.d.ts +0 -36
- package/auth/session/token.store.d.ts.map +0 -1
- package/auth/session/token.vault.d.ts +0 -27
- package/auth/session/token.vault.d.ts.map +0 -1
- package/auth/session/vault-encryption.d.ts +0 -190
- package/auth/session/vault-encryption.d.ts.map +0 -1
- package/auth/utils/audience.validator.d.ts +0 -130
- package/auth/utils/audience.validator.d.ts.map +0 -1
- package/auth/utils/www-authenticate.utils.d.ts +0 -98
- package/auth/utils/www-authenticate.utils.d.ts.map +0 -1
- package/common/migrate/auth-transport.migrate.d.ts +0 -63
- package/common/migrate/auth-transport.migrate.d.ts.map +0 -1
- package/common/migrate/index.d.ts +0 -2
- package/common/migrate/index.d.ts.map +0 -1
- package/common/types/options/auth/auth.interfaces.d.ts.map +0 -1
- package/common/types/options/auth/auth.schema.d.ts.map +0 -1
- package/common/types/options/auth/auth.typecheck.d.ts +0 -2
- package/common/types/options/auth/auth.typecheck.d.ts.map +0 -1
- package/common/types/options/auth/auth.utils.d.ts.map +0 -1
- package/common/types/options/auth/transport.deprecated.d.ts +0 -64
- package/common/types/options/auth/transport.deprecated.d.ts.map +0 -1
- package/common/types/options/http.options.d.ts +0 -15
- package/common/types/options/http.options.d.ts.map +0 -1
- package/common/types/options/logging.options.d.ts +0 -29
- package/common/types/options/logging.options.d.ts.map +0 -1
- package/common/types/options/redis.options.d.ts.map +0 -1
- package/common/types/options/server-info.options.d.ts.map +0 -1
- package/common/types/options/session.options.d.ts +0 -148
- package/common/types/options/session.options.d.ts.map +0 -1
- package/common/types/options/transport.options.d.ts +0 -178
- package/common/types/options/transport.options.d.ts.map +0 -1
- package/context/request-context-storage.d.ts +0 -90
- package/context/request-context-storage.d.ts.map +0 -1
- package/context/request-context.d.ts +0 -185
- package/context/request-context.d.ts.map +0 -1
- package/context/request-context.provider.d.ts +0 -38
- package/context/request-context.provider.d.ts.map +0 -1
- package/context/session-key.provider.d.ts +0 -46
- package/context/session-key.provider.d.ts.map +0 -1
- package/store/adapters/store.base.adapter.d.ts +0 -22
- package/store/adapters/store.base.adapter.d.ts.map +0 -1
- package/store/adapters/store.memory.adapter.d.ts +0 -27
- package/store/adapters/store.memory.adapter.d.ts.map +0 -1
- package/store/adapters/store.redis.adapter.d.ts +0 -34
- package/store/adapters/store.redis.adapter.d.ts.map +0 -1
- package/store/adapters/store.vercel-kv.adapter.d.ts +0 -87
- package/store/adapters/store.vercel-kv.adapter.d.ts.map +0 -1
- package/store/index.d.ts +0 -11
- package/store/index.d.ts.map +0 -1
- package/store/store.factory.d.ts.map +0 -1
- package/store/store.helpers.d.ts +0 -10
- package/store/store.helpers.d.ts.map +0 -1
- package/store/store.registry.d.ts +0 -14
- package/store/store.registry.d.ts.map +0 -1
- package/store/store.tokens.d.ts +0 -4
- package/store/store.tokens.d.ts.map +0 -1
- package/store/store.types.d.ts +0 -65
- package/store/store.types.d.ts.map +0 -1
- package/store/store.utils.d.ts +0 -9
- package/store/store.utils.d.ts.map +0 -1
- package/transport/transport.event-store.d.ts +0 -11
- package/transport/transport.event-store.d.ts.map +0 -1
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skill Storage Factory
|
|
3
|
+
*
|
|
4
|
+
* Factory functions for creating skill storage providers.
|
|
5
|
+
* Supports Memory (default), VectorDB, and External backends.
|
|
6
|
+
*
|
|
7
|
+
* @module skill/skill-storage.factory
|
|
8
|
+
*/
|
|
9
|
+
import type { FrontMcpLogger } from '../common';
|
|
10
|
+
import type { ToolRegistryInterface } from '../common/interfaces/internal';
|
|
11
|
+
import type { SkillStorageProvider, SkillStorageProviderType } from './skill-storage.interface';
|
|
12
|
+
import { SkillToolValidator } from './skill-validator';
|
|
13
|
+
import { MemorySkillProviderOptions } from './providers/memory-skill.provider';
|
|
14
|
+
import type { ExternalSkillProviderBase, ExternalSkillMode } from './providers/external-skill.provider';
|
|
15
|
+
import type { SkillSyncStateStore } from './sync/sync-state.interface';
|
|
16
|
+
/**
|
|
17
|
+
* VectorDB provider options (for external vector database).
|
|
18
|
+
*/
|
|
19
|
+
export interface VectorDBSkillProviderOptions {
|
|
20
|
+
/**
|
|
21
|
+
* Embedding strategy to use.
|
|
22
|
+
* @default 'tfidf'
|
|
23
|
+
*/
|
|
24
|
+
strategy?: 'tfidf' | 'ml';
|
|
25
|
+
/**
|
|
26
|
+
* Model name for ML embeddings.
|
|
27
|
+
* @default 'Xenova/all-MiniLM-L6-v2'
|
|
28
|
+
*/
|
|
29
|
+
modelName?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Default number of search results.
|
|
32
|
+
* @default 10
|
|
33
|
+
*/
|
|
34
|
+
defaultTopK?: number;
|
|
35
|
+
/**
|
|
36
|
+
* Default minimum similarity threshold.
|
|
37
|
+
* @default 0.1
|
|
38
|
+
*/
|
|
39
|
+
defaultMinScore?: number;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* External provider configuration.
|
|
43
|
+
* Used when connecting to external skill storage (e.g., shared vector DB).
|
|
44
|
+
*/
|
|
45
|
+
export interface ExternalSkillProviderConfig {
|
|
46
|
+
/**
|
|
47
|
+
* Operating mode for the external provider.
|
|
48
|
+
*
|
|
49
|
+
* - 'read-only': Skills are fetched from external storage, no writes
|
|
50
|
+
* - 'persistent': Local skills are synced to external storage with SHA-based change detection
|
|
51
|
+
*/
|
|
52
|
+
mode: ExternalSkillMode;
|
|
53
|
+
/**
|
|
54
|
+
* Store for persisting sync state.
|
|
55
|
+
* Required for persistent mode to track which skills have been synced.
|
|
56
|
+
*/
|
|
57
|
+
syncStateStore?: SkillSyncStateStore;
|
|
58
|
+
/**
|
|
59
|
+
* Default number of search results.
|
|
60
|
+
* @default 10
|
|
61
|
+
*/
|
|
62
|
+
defaultTopK?: number;
|
|
63
|
+
/**
|
|
64
|
+
* Default minimum similarity threshold.
|
|
65
|
+
* @default 0.1
|
|
66
|
+
*/
|
|
67
|
+
defaultMinScore?: number;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Extended factory result that includes external provider when applicable.
|
|
71
|
+
*/
|
|
72
|
+
export interface ExtendedSkillStorageFactoryResult extends SkillStorageFactoryResult {
|
|
73
|
+
/**
|
|
74
|
+
* The external provider instance if type is 'external'.
|
|
75
|
+
* Provides access to sync methods and state.
|
|
76
|
+
*/
|
|
77
|
+
externalProvider?: ExternalSkillProviderBase;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Options for creating a skill storage provider.
|
|
81
|
+
*/
|
|
82
|
+
export interface SkillStorageFactoryOptions {
|
|
83
|
+
/**
|
|
84
|
+
* Provider type to use.
|
|
85
|
+
* @default 'memory'
|
|
86
|
+
*/
|
|
87
|
+
provider?: 'memory' | 'vectordb' | 'external';
|
|
88
|
+
/**
|
|
89
|
+
* Options for memory provider.
|
|
90
|
+
*/
|
|
91
|
+
memory?: Omit<MemorySkillProviderOptions, 'toolValidator'>;
|
|
92
|
+
/**
|
|
93
|
+
* Options for VectorDB provider.
|
|
94
|
+
*/
|
|
95
|
+
vectordb?: VectorDBSkillProviderOptions;
|
|
96
|
+
/**
|
|
97
|
+
* Configuration for external provider.
|
|
98
|
+
* Note: External providers require a concrete implementation to be passed.
|
|
99
|
+
*/
|
|
100
|
+
external?: ExternalSkillProviderConfig;
|
|
101
|
+
/**
|
|
102
|
+
* Custom external provider instance.
|
|
103
|
+
* Required when provider is 'external'.
|
|
104
|
+
* Must extend ExternalSkillProviderBase.
|
|
105
|
+
*/
|
|
106
|
+
externalProvider?: ExternalSkillProviderBase;
|
|
107
|
+
/**
|
|
108
|
+
* Tool registry for validating tool references.
|
|
109
|
+
* Required for tool validation in search results.
|
|
110
|
+
*/
|
|
111
|
+
toolRegistry?: ToolRegistryInterface;
|
|
112
|
+
/**
|
|
113
|
+
* Logger instance.
|
|
114
|
+
*/
|
|
115
|
+
logger?: FrontMcpLogger;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Result of creating a skill storage provider.
|
|
119
|
+
*/
|
|
120
|
+
export interface SkillStorageFactoryResult {
|
|
121
|
+
/**
|
|
122
|
+
* The created storage provider.
|
|
123
|
+
*/
|
|
124
|
+
provider: SkillStorageProvider;
|
|
125
|
+
/**
|
|
126
|
+
* The type of provider created.
|
|
127
|
+
*/
|
|
128
|
+
type: SkillStorageProviderType;
|
|
129
|
+
/**
|
|
130
|
+
* Tool validator (if tool registry was provided).
|
|
131
|
+
*/
|
|
132
|
+
toolValidator?: SkillToolValidator;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Create a skill storage provider based on configuration.
|
|
136
|
+
*
|
|
137
|
+
* @param options - Configuration options
|
|
138
|
+
* @returns The created provider with type information
|
|
139
|
+
*
|
|
140
|
+
* @example Memory provider (default)
|
|
141
|
+
* ```typescript
|
|
142
|
+
* const { provider, type } = createSkillStorageProvider({
|
|
143
|
+
* toolRegistry: scope.tools,
|
|
144
|
+
* logger,
|
|
145
|
+
* });
|
|
146
|
+
* ```
|
|
147
|
+
*
|
|
148
|
+
* @example VectorDB provider
|
|
149
|
+
* ```typescript
|
|
150
|
+
* const { provider, type } = createSkillStorageProvider({
|
|
151
|
+
* provider: 'vectordb',
|
|
152
|
+
* vectordb: { strategy: 'ml' },
|
|
153
|
+
* toolRegistry: scope.tools,
|
|
154
|
+
* logger,
|
|
155
|
+
* });
|
|
156
|
+
* ```
|
|
157
|
+
*
|
|
158
|
+
* @example External provider (read-only)
|
|
159
|
+
* ```typescript
|
|
160
|
+
* const { provider, type, externalProvider } = createSkillStorageProvider({
|
|
161
|
+
* provider: 'external',
|
|
162
|
+
* externalProvider: new MyExternalProvider({ mode: 'read-only' }),
|
|
163
|
+
* logger,
|
|
164
|
+
* });
|
|
165
|
+
* ```
|
|
166
|
+
*
|
|
167
|
+
* @example External provider (persistent)
|
|
168
|
+
* ```typescript
|
|
169
|
+
* const { provider, externalProvider } = createSkillStorageProvider({
|
|
170
|
+
* provider: 'external',
|
|
171
|
+
* externalProvider: new MyExternalProvider({
|
|
172
|
+
* mode: 'persistent',
|
|
173
|
+
* syncStateStore: new MemorySyncStateStore(),
|
|
174
|
+
* }),
|
|
175
|
+
* logger,
|
|
176
|
+
* });
|
|
177
|
+
* // Later: sync local skills
|
|
178
|
+
* await externalProvider.syncSkills(localSkills);
|
|
179
|
+
* ```
|
|
180
|
+
*/
|
|
181
|
+
export declare function createSkillStorageProvider(options?: SkillStorageFactoryOptions): ExtendedSkillStorageFactoryResult;
|
|
182
|
+
/**
|
|
183
|
+
* Create an in-memory skill storage provider explicitly.
|
|
184
|
+
*
|
|
185
|
+
* @param options - Configuration options
|
|
186
|
+
* @returns An in-memory skill storage provider
|
|
187
|
+
*/
|
|
188
|
+
export declare function createMemorySkillProvider(options?: {
|
|
189
|
+
toolRegistry?: ToolRegistryInterface;
|
|
190
|
+
defaultTopK?: number;
|
|
191
|
+
defaultMinScore?: number;
|
|
192
|
+
logger?: FrontMcpLogger;
|
|
193
|
+
}): SkillStorageFactoryResult;
|
|
194
|
+
//# sourceMappingURL=skill-storage.factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-storage.factory.d.ts","sourceRoot":"","sources":["../../src/skill/skill-storage.factory.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,KAAK,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAChG,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAuB,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AACpG,OAAO,KAAK,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAGvE;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAE1B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;;;;OAKG;IACH,IAAI,EAAE,iBAAiB,CAAC;IAExB;;;OAGG;IACH,cAAc,CAAC,EAAE,mBAAmB,CAAC;IAErC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,iCAAkC,SAAQ,yBAAyB;IAClF;;;OAGG;IACH,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;CAC9C;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAC;IAE9C;;OAEG;IACH,MAAM,CAAC,EAAE,IAAI,CAAC,0BAA0B,EAAE,eAAe,CAAC,CAAC;IAE3D;;OAEG;IACH,QAAQ,CAAC,EAAE,4BAA4B,CAAC;IAExC;;;OAGG;IACH,QAAQ,CAAC,EAAE,2BAA2B,CAAC;IAEvC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;IAE7C;;;OAGG;IACH,YAAY,CAAC,EAAE,qBAAqB,CAAC;IAErC;;OAEG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,QAAQ,EAAE,oBAAoB,CAAC;IAE/B;;OAEG;IACH,IAAI,EAAE,wBAAwB,CAAC;IAE/B;;OAEG;IACH,aAAa,CAAC,EAAE,kBAAkB,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,GAAE,0BAA+B,GACvC,iCAAiC,CA6EnC;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,GAAE;IACP,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,cAAc,CAAC;CACpB,GACL,yBAAyB,CAiB3B"}
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
import { SkillMetadata } from '../common/metadata';
|
|
2
|
+
import { SkillContent } from '../common/interfaces';
|
|
3
|
+
/**
|
|
4
|
+
* Options for searching skills.
|
|
5
|
+
*/
|
|
6
|
+
export interface SkillSearchOptions {
|
|
7
|
+
/**
|
|
8
|
+
* Maximum number of results to return.
|
|
9
|
+
* @default 10
|
|
10
|
+
*/
|
|
11
|
+
topK?: number;
|
|
12
|
+
/**
|
|
13
|
+
* Filter by specific tags.
|
|
14
|
+
*/
|
|
15
|
+
tags?: string[];
|
|
16
|
+
/**
|
|
17
|
+
* Minimum similarity score threshold (0-1).
|
|
18
|
+
* @default 0.1
|
|
19
|
+
*/
|
|
20
|
+
minScore?: number;
|
|
21
|
+
/**
|
|
22
|
+
* Only return skills where all referenced tools are available.
|
|
23
|
+
* @default false
|
|
24
|
+
*/
|
|
25
|
+
requireAllTools?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Skill IDs to exclude from results.
|
|
28
|
+
*/
|
|
29
|
+
excludeIds?: string[];
|
|
30
|
+
/**
|
|
31
|
+
* Filter by specific tools (skills must reference these tools).
|
|
32
|
+
*/
|
|
33
|
+
tools?: string[];
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Options for listing skills.
|
|
37
|
+
*/
|
|
38
|
+
export interface SkillListOptions {
|
|
39
|
+
/**
|
|
40
|
+
* Number of skills to skip (for pagination).
|
|
41
|
+
* @default 0
|
|
42
|
+
*/
|
|
43
|
+
offset?: number;
|
|
44
|
+
/**
|
|
45
|
+
* Maximum number of skills to return.
|
|
46
|
+
* @default 50
|
|
47
|
+
*/
|
|
48
|
+
limit?: number;
|
|
49
|
+
/**
|
|
50
|
+
* Filter by specific tags.
|
|
51
|
+
*/
|
|
52
|
+
tags?: string[];
|
|
53
|
+
/**
|
|
54
|
+
* Field to sort by.
|
|
55
|
+
* @default 'name'
|
|
56
|
+
*/
|
|
57
|
+
sortBy?: 'name' | 'priority' | 'createdAt';
|
|
58
|
+
/**
|
|
59
|
+
* Sort order.
|
|
60
|
+
* @default 'asc'
|
|
61
|
+
*/
|
|
62
|
+
sortOrder?: 'asc' | 'desc';
|
|
63
|
+
/**
|
|
64
|
+
* Include hidden skills in results.
|
|
65
|
+
* @default false
|
|
66
|
+
*/
|
|
67
|
+
includeHidden?: boolean;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Result from a skill search operation.
|
|
71
|
+
*/
|
|
72
|
+
export interface SkillSearchResult {
|
|
73
|
+
/**
|
|
74
|
+
* The skill metadata.
|
|
75
|
+
*/
|
|
76
|
+
metadata: SkillMetadata;
|
|
77
|
+
/**
|
|
78
|
+
* Relevance score (0-1).
|
|
79
|
+
*/
|
|
80
|
+
score: number;
|
|
81
|
+
/**
|
|
82
|
+
* Tools that are available in the current scope.
|
|
83
|
+
*/
|
|
84
|
+
availableTools: string[];
|
|
85
|
+
/**
|
|
86
|
+
* Tools that are referenced but not available.
|
|
87
|
+
*/
|
|
88
|
+
missingTools: string[];
|
|
89
|
+
/**
|
|
90
|
+
* Source of the skill ('local' or 'external').
|
|
91
|
+
*/
|
|
92
|
+
source: 'local' | 'external';
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Result from loading a skill.
|
|
96
|
+
*/
|
|
97
|
+
export interface SkillLoadResult {
|
|
98
|
+
/**
|
|
99
|
+
* The loaded skill content.
|
|
100
|
+
*/
|
|
101
|
+
skill: SkillContent;
|
|
102
|
+
/**
|
|
103
|
+
* Tools that are available in the current scope.
|
|
104
|
+
*/
|
|
105
|
+
availableTools: string[];
|
|
106
|
+
/**
|
|
107
|
+
* Tools that are referenced but not available.
|
|
108
|
+
*/
|
|
109
|
+
missingTools: string[];
|
|
110
|
+
/**
|
|
111
|
+
* True if all required tools are available.
|
|
112
|
+
*/
|
|
113
|
+
isComplete: boolean;
|
|
114
|
+
/**
|
|
115
|
+
* Warning message if tools are missing.
|
|
116
|
+
*/
|
|
117
|
+
warning?: string;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Result from listing skills.
|
|
121
|
+
*/
|
|
122
|
+
export interface SkillListResult {
|
|
123
|
+
/**
|
|
124
|
+
* List of skill metadata.
|
|
125
|
+
*/
|
|
126
|
+
skills: SkillMetadata[];
|
|
127
|
+
/**
|
|
128
|
+
* Total number of skills matching the filter.
|
|
129
|
+
*/
|
|
130
|
+
total: number;
|
|
131
|
+
/**
|
|
132
|
+
* Whether there are more skills beyond this page.
|
|
133
|
+
*/
|
|
134
|
+
hasMore: boolean;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Provider type identifier.
|
|
138
|
+
*/
|
|
139
|
+
export type SkillStorageProviderType = 'memory' | 'vectordb' | 'postgres' | 'external' | 'custom';
|
|
140
|
+
/**
|
|
141
|
+
* Interface for skill storage providers.
|
|
142
|
+
*
|
|
143
|
+
* Storage providers handle persistence and retrieval of skills,
|
|
144
|
+
* enabling both local (in-memory) and external (database) storage.
|
|
145
|
+
*/
|
|
146
|
+
export interface SkillStorageProvider {
|
|
147
|
+
/**
|
|
148
|
+
* Provider type identifier.
|
|
149
|
+
*/
|
|
150
|
+
readonly type: SkillStorageProviderType;
|
|
151
|
+
/**
|
|
152
|
+
* Initialize the storage provider.
|
|
153
|
+
* Called once during startup.
|
|
154
|
+
*/
|
|
155
|
+
initialize(): Promise<void>;
|
|
156
|
+
/**
|
|
157
|
+
* Search for skills matching a query.
|
|
158
|
+
*
|
|
159
|
+
* @param query - Search query string
|
|
160
|
+
* @param options - Search options
|
|
161
|
+
* @returns Array of matching skills with scores
|
|
162
|
+
*/
|
|
163
|
+
search(query: string, options?: SkillSearchOptions): Promise<SkillSearchResult[]>;
|
|
164
|
+
/**
|
|
165
|
+
* Load a skill by ID.
|
|
166
|
+
*
|
|
167
|
+
* @param skillId - The skill identifier
|
|
168
|
+
* @returns The loaded skill or null if not found
|
|
169
|
+
*/
|
|
170
|
+
load(skillId: string): Promise<SkillLoadResult | null>;
|
|
171
|
+
/**
|
|
172
|
+
* List skills with optional filtering and pagination.
|
|
173
|
+
*
|
|
174
|
+
* @param options - List options
|
|
175
|
+
* @returns Paginated list of skills
|
|
176
|
+
*/
|
|
177
|
+
list(options?: SkillListOptions): Promise<SkillListResult>;
|
|
178
|
+
/**
|
|
179
|
+
* Check if a skill exists.
|
|
180
|
+
*
|
|
181
|
+
* @param skillId - The skill identifier
|
|
182
|
+
* @returns True if the skill exists
|
|
183
|
+
*/
|
|
184
|
+
exists(skillId: string): Promise<boolean>;
|
|
185
|
+
/**
|
|
186
|
+
* Count skills matching optional criteria.
|
|
187
|
+
*
|
|
188
|
+
* @param options - Filter options
|
|
189
|
+
* @returns Number of matching skills
|
|
190
|
+
*/
|
|
191
|
+
count(options?: {
|
|
192
|
+
tags?: string[];
|
|
193
|
+
includeHidden?: boolean;
|
|
194
|
+
}): Promise<number>;
|
|
195
|
+
/**
|
|
196
|
+
* Dispose of resources.
|
|
197
|
+
* Called during shutdown.
|
|
198
|
+
*/
|
|
199
|
+
dispose(): Promise<void>;
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Interface for skill storage providers that support adding skills.
|
|
203
|
+
* Used by providers that can dynamically add skills (e.g., file watchers).
|
|
204
|
+
*/
|
|
205
|
+
export interface MutableSkillStorageProvider extends SkillStorageProvider {
|
|
206
|
+
/**
|
|
207
|
+
* Add a skill to the storage.
|
|
208
|
+
*
|
|
209
|
+
* @param skill - The skill content to add
|
|
210
|
+
*/
|
|
211
|
+
add(skill: SkillContent): Promise<void>;
|
|
212
|
+
/**
|
|
213
|
+
* Update an existing skill.
|
|
214
|
+
*
|
|
215
|
+
* @param skillId - The skill identifier
|
|
216
|
+
* @param skill - The updated skill content
|
|
217
|
+
*/
|
|
218
|
+
update(skillId: string, skill: SkillContent): Promise<void>;
|
|
219
|
+
/**
|
|
220
|
+
* Remove a skill from the storage.
|
|
221
|
+
*
|
|
222
|
+
* @param skillId - The skill identifier
|
|
223
|
+
*/
|
|
224
|
+
remove(skillId: string): Promise<void>;
|
|
225
|
+
/**
|
|
226
|
+
* Clear all skills from the storage.
|
|
227
|
+
*/
|
|
228
|
+
clear(): Promise<void>;
|
|
229
|
+
}
|
|
230
|
+
//# sourceMappingURL=skill-storage.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-storage.interface.d.ts","sourceRoot":"","sources":["../../src/skill/skill-storage.interface.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;IAE3C;;;OAGG;IACH,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAE3B;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,QAAQ,EAAE,aAAa,CAAC;IAExB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,cAAc,EAAE,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB;;OAEG;IACH,MAAM,EAAE,OAAO,GAAG,UAAU,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,KAAK,EAAE,YAAY,CAAC;IAEpB;;OAEG;IACH,cAAc,EAAE,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,MAAM,EAAE,aAAa,EAAE,CAAC;IAExB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;AAElG;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;IAExC;;;OAGG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAElF;;;;;OAKG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAEvD;;;;;OAKG;IACH,IAAI,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAE3D;;;;;OAKG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE1C;;;;;OAKG;IACH,KAAK,CAAC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE/E;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,2BAA4B,SAAQ,oBAAoB;IACvE;;;;OAIG;IACH,GAAG,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExC;;;;;OAKG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5D;;;;OAIG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvC;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { ToolRegistryInterface } from '../common/interfaces/internal';
|
|
2
|
+
/**
|
|
3
|
+
* Result of validating tool availability for a skill.
|
|
4
|
+
*/
|
|
5
|
+
export interface ToolValidationResult {
|
|
6
|
+
/**
|
|
7
|
+
* Tools that are available (exist and not hidden).
|
|
8
|
+
*/
|
|
9
|
+
available: string[];
|
|
10
|
+
/**
|
|
11
|
+
* Tools that don't exist in the registry.
|
|
12
|
+
*/
|
|
13
|
+
missing: string[];
|
|
14
|
+
/**
|
|
15
|
+
* Tools that exist but are hidden from discovery.
|
|
16
|
+
*/
|
|
17
|
+
hidden: string[];
|
|
18
|
+
/**
|
|
19
|
+
* True if all required tools are available (exist and not hidden).
|
|
20
|
+
*/
|
|
21
|
+
complete: boolean;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Validates tool availability for skills.
|
|
25
|
+
*
|
|
26
|
+
* This validator checks if the tools referenced by a skill are available
|
|
27
|
+
* in the current scope. It categorizes tools as available, missing, or hidden.
|
|
28
|
+
*/
|
|
29
|
+
export declare class SkillToolValidator {
|
|
30
|
+
private readonly toolRegistry;
|
|
31
|
+
constructor(toolRegistry: ToolRegistryInterface);
|
|
32
|
+
/**
|
|
33
|
+
* Validate tool availability for a list of tool names.
|
|
34
|
+
*
|
|
35
|
+
* @param toolNames - Array of tool names to validate
|
|
36
|
+
* @param requiredTools - Optional set of tool names that are required
|
|
37
|
+
* @returns Validation result with categorized tools
|
|
38
|
+
*/
|
|
39
|
+
validate(toolNames: string[], requiredTools?: Set<string>): ToolValidationResult;
|
|
40
|
+
/**
|
|
41
|
+
* Format a warning message for missing/hidden tools.
|
|
42
|
+
*
|
|
43
|
+
* @param result - Validation result
|
|
44
|
+
* @param skillName - Name of the skill (for error message)
|
|
45
|
+
* @returns Warning message or undefined if no issues
|
|
46
|
+
*/
|
|
47
|
+
formatWarning(result: ToolValidationResult, skillName: string): string | undefined;
|
|
48
|
+
/**
|
|
49
|
+
* Check if a single tool is available (exists and not hidden).
|
|
50
|
+
*
|
|
51
|
+
* @param toolName - Name of the tool to check
|
|
52
|
+
* @returns True if the tool is available
|
|
53
|
+
*/
|
|
54
|
+
isToolAvailable(toolName: string): boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Check if a single tool exists (regardless of visibility).
|
|
57
|
+
*
|
|
58
|
+
* @param toolName - Name of the tool to check
|
|
59
|
+
* @returns True if the tool exists
|
|
60
|
+
*/
|
|
61
|
+
toolExists(toolName: string): boolean;
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=skill-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-validator.d.ts","sourceRoot":"","sources":["../../src/skill/skill-validator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAC;IAElB;;OAEG;IACH,MAAM,EAAE,MAAM,EAAE,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;;GAKG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;gBAEzC,YAAY,EAAE,qBAAqB;IAI/C;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,oBAAoB;IAsDhF;;;;;;OAMG;IACH,aAAa,CAAC,MAAM,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAkBlF;;;;;OAKG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAK1C;;;;;OAKG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;CAItC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { SkillEntry } from '../common';
|
|
2
|
+
import type { SkillValidationReport } from './errors/skill-validation.error';
|
|
3
|
+
import type { SyncResult } from './sync/sync-state.interface';
|
|
4
|
+
/**
|
|
5
|
+
* Kind of skill change event.
|
|
6
|
+
*/
|
|
7
|
+
export type SkillChangeKind = 'added' | 'updated' | 'removed' | 'reset' | 'validated' | 'synced';
|
|
8
|
+
/**
|
|
9
|
+
* Scope of a skill change event.
|
|
10
|
+
* - `global`: Change affects all sessions
|
|
11
|
+
* - `session`: Change affects only a specific session
|
|
12
|
+
*/
|
|
13
|
+
export type SkillChangeScope = 'global' | 'session';
|
|
14
|
+
/**
|
|
15
|
+
* Event emitted when skills change in the registry.
|
|
16
|
+
*/
|
|
17
|
+
export type SkillChangeEvent = {
|
|
18
|
+
/**
|
|
19
|
+
* Kind of change that occurred.
|
|
20
|
+
*/
|
|
21
|
+
kind: SkillChangeKind;
|
|
22
|
+
/**
|
|
23
|
+
* Whether the change affects all sessions or a specific session.
|
|
24
|
+
*/
|
|
25
|
+
changeScope: SkillChangeScope;
|
|
26
|
+
/**
|
|
27
|
+
* Session ID if changeScope is 'session'.
|
|
28
|
+
*/
|
|
29
|
+
sessionId?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Related request ID if available.
|
|
32
|
+
*/
|
|
33
|
+
relatedRequestId?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Version number of the registry after this change.
|
|
36
|
+
*/
|
|
37
|
+
version: number;
|
|
38
|
+
/**
|
|
39
|
+
* Current snapshot of all skills after the change.
|
|
40
|
+
*/
|
|
41
|
+
snapshot: readonly SkillEntry[];
|
|
42
|
+
/**
|
|
43
|
+
* Validation report when kind is 'validated'.
|
|
44
|
+
* Contains validation results for all skills in the registry.
|
|
45
|
+
*/
|
|
46
|
+
validationReport?: SkillValidationReport;
|
|
47
|
+
/**
|
|
48
|
+
* Sync result when kind is 'synced'.
|
|
49
|
+
* Contains information about skills added/updated/removed from external storage.
|
|
50
|
+
*/
|
|
51
|
+
syncResult?: SyncResult;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Listener function type for skill change events.
|
|
55
|
+
*/
|
|
56
|
+
type SkillChangeListener = (event: SkillChangeEvent) => void;
|
|
57
|
+
/**
|
|
58
|
+
* Event emitter for skill changes.
|
|
59
|
+
*
|
|
60
|
+
* Used by SkillRegistry to notify subscribers of skill additions,
|
|
61
|
+
* removals, updates, and resets.
|
|
62
|
+
*/
|
|
63
|
+
export declare class SkillEmitter {
|
|
64
|
+
private listeners;
|
|
65
|
+
/**
|
|
66
|
+
* Register a listener for skill change events.
|
|
67
|
+
*
|
|
68
|
+
* @param listener - The listener function
|
|
69
|
+
* @returns Unsubscribe function
|
|
70
|
+
*/
|
|
71
|
+
on(listener: SkillChangeListener): () => void;
|
|
72
|
+
/**
|
|
73
|
+
* Emit a skill change event to all listeners.
|
|
74
|
+
*
|
|
75
|
+
* @param event - The change event
|
|
76
|
+
*/
|
|
77
|
+
emit(event: SkillChangeEvent): void;
|
|
78
|
+
/**
|
|
79
|
+
* Get the number of active listeners.
|
|
80
|
+
*/
|
|
81
|
+
get listenerCount(): number;
|
|
82
|
+
/**
|
|
83
|
+
* Remove all listeners.
|
|
84
|
+
*/
|
|
85
|
+
clear(): void;
|
|
86
|
+
}
|
|
87
|
+
export {};
|
|
88
|
+
//# sourceMappingURL=skill.events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill.events.d.ts","sourceRoot":"","sources":["../../src/skill/skill.events.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEjG;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEpD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC;IAEtB;;OAEG;IACH,WAAW,EAAE,gBAAgB,CAAC;IAE9B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,QAAQ,EAAE,SAAS,UAAU,EAAE,CAAC;IAEhC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;IAEzC;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,KAAK,mBAAmB,GAAG,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;AAE7D;;;;;GAKG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAkC;IAEnD;;;;;OAKG;IACH,EAAE,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM,IAAI;IAK7C;;;;OAIG;IACH,IAAI,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI;IAMnC;;OAEG;IACH,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { EntryOwnerRef, SkillEntry, SkillRecord, SkillToolRef } from '../common';
|
|
2
|
+
import { SkillContent } from '../common/interfaces';
|
|
3
|
+
import ProviderRegistry from '../provider/provider.registry';
|
|
4
|
+
import { Scope } from '../scope';
|
|
5
|
+
/**
|
|
6
|
+
* Concrete implementation of a skill that can be loaded and searched.
|
|
7
|
+
*
|
|
8
|
+
* SkillInstance handles:
|
|
9
|
+
* - Loading instructions from inline strings, files, or URLs
|
|
10
|
+
* - Building full SkillContent for LLM consumption
|
|
11
|
+
* - Caching loaded instructions for performance
|
|
12
|
+
*/
|
|
13
|
+
export declare class SkillInstance extends SkillEntry {
|
|
14
|
+
/** The provider registry this skill is bound to */
|
|
15
|
+
private readonly providersRef;
|
|
16
|
+
/** The scope this skill operates in */
|
|
17
|
+
readonly scope: Scope;
|
|
18
|
+
/** Cached instructions (loaded lazily) */
|
|
19
|
+
private cachedInstructions?;
|
|
20
|
+
/** Cached skill content (built lazily) */
|
|
21
|
+
private cachedContent?;
|
|
22
|
+
/** Tags for search indexing */
|
|
23
|
+
private readonly tags;
|
|
24
|
+
/** Priority for search ranking */
|
|
25
|
+
private readonly priority;
|
|
26
|
+
/** Whether skill is hidden from discovery */
|
|
27
|
+
private readonly hidden;
|
|
28
|
+
/** Visibility mode for skill discovery */
|
|
29
|
+
private readonly skillVisibility;
|
|
30
|
+
constructor(record: SkillRecord, providers: ProviderRegistry, owner: EntryOwnerRef);
|
|
31
|
+
protected initialize(): Promise<void>;
|
|
32
|
+
/**
|
|
33
|
+
* Get a short description of the skill.
|
|
34
|
+
*/
|
|
35
|
+
getDescription(): string;
|
|
36
|
+
/**
|
|
37
|
+
* Load the skill's instructions from the configured source.
|
|
38
|
+
* Results are cached after the first load.
|
|
39
|
+
*/
|
|
40
|
+
loadInstructions(): Promise<string>;
|
|
41
|
+
/**
|
|
42
|
+
* Load the full skill content.
|
|
43
|
+
* Results are cached after the first load.
|
|
44
|
+
*/
|
|
45
|
+
load(): Promise<SkillContent>;
|
|
46
|
+
/**
|
|
47
|
+
* Get tool references with normalized format.
|
|
48
|
+
*/
|
|
49
|
+
getToolRefs(): SkillToolRef[];
|
|
50
|
+
/**
|
|
51
|
+
* Get tool names only.
|
|
52
|
+
*/
|
|
53
|
+
getToolNames(): string[];
|
|
54
|
+
/**
|
|
55
|
+
* Get the skill's tags.
|
|
56
|
+
*/
|
|
57
|
+
getTags(): string[];
|
|
58
|
+
/**
|
|
59
|
+
* Check if the skill is hidden from discovery.
|
|
60
|
+
*/
|
|
61
|
+
isHidden(): boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Get the skill's priority for search ranking.
|
|
64
|
+
*/
|
|
65
|
+
getPriority(): number;
|
|
66
|
+
/**
|
|
67
|
+
* Get the provider registry.
|
|
68
|
+
*/
|
|
69
|
+
get providers(): ProviderRegistry;
|
|
70
|
+
/**
|
|
71
|
+
* Clear cached content (useful for hot-reload scenarios).
|
|
72
|
+
*/
|
|
73
|
+
clearCache(): void;
|
|
74
|
+
/**
|
|
75
|
+
* Create a SkillContent from metadata without async loading.
|
|
76
|
+
* Returns cached content if available, builds from inline instructions,
|
|
77
|
+
* or returns undefined if instructions require async loading.
|
|
78
|
+
*
|
|
79
|
+
* @returns SkillContent if available synchronously, undefined otherwise
|
|
80
|
+
*/
|
|
81
|
+
getContentSync(): SkillContent | undefined;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Create a SkillInstance from a SkillRecord.
|
|
85
|
+
*
|
|
86
|
+
* @param record - The skill record
|
|
87
|
+
* @param providers - Provider registry
|
|
88
|
+
* @param owner - Owner reference
|
|
89
|
+
* @returns A new SkillInstance
|
|
90
|
+
*/
|
|
91
|
+
export declare function createSkillInstance(record: SkillRecord, providers: ProviderRegistry, owner: EntryOwnerRef): SkillInstance;
|
|
92
|
+
//# sourceMappingURL=skill.instance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill.instance.d.ts","sourceRoot":"","sources":["../../src/skill/skill.instance.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAa,WAAW,EAAE,YAAY,EAAoB,MAAM,WAAW,CAAC;AAC9G,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAcjC;;;;;;;GAOG;AACH,qBAAa,aAAc,SAAQ,UAAU;IAC3C,mDAAmD;IACnD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAmB;IAEhD,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAEtB,0CAA0C;IAC1C,OAAO,CAAC,kBAAkB,CAAC,CAAS;IAEpC,0CAA0C;IAC1C,OAAO,CAAC,aAAa,CAAC,CAAqB;IAE3C,+BAA+B;IAC/B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAW;IAEhC,kCAAkC;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAElC,6CAA6C;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IAEjC,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;gBAEtC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,aAAa;cAsBlE,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAO3C;;OAEG;IACM,cAAc,IAAI,MAAM;IAIjC;;;OAGG;IACY,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAmBlD;;;OAGG;IACY,IAAI,IAAI,OAAO,CAAC,YAAY,CAAC;IAoB5C;;OAEG;IACM,WAAW,IAAI,YAAY,EAAE;IAMtC;;OAEG;IACM,YAAY,IAAI,MAAM,EAAE;IAIjC;;OAEG;IACM,OAAO,IAAI,MAAM,EAAE;IAI5B;;OAEG;IACM,QAAQ,IAAI,OAAO;IAI5B;;OAEG;IACM,WAAW,IAAI,MAAM;IAI9B;;OAEG;IACH,IAAI,SAAS,IAAI,gBAAgB,CAEhC;IAED;;OAEG;IACH,UAAU,IAAI,IAAI;IAKlB;;;;;;OAMG;IACH,cAAc,IAAI,YAAY,GAAG,SAAS;CAa3C;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,gBAAgB,EAC3B,KAAK,EAAE,aAAa,GACnB,aAAa,CAEf"}
|