@squadrules/mcp 4.8.6
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 +22 -0
- package/README.md +350 -0
- package/dist/.tsbuildinfo +1 -0
- package/dist/bootstrap.d.ts +10 -0
- package/dist/bootstrap.d.ts.map +1 -0
- package/dist/bootstrap.js +61 -0
- package/dist/bootstrap.js.map +1 -0
- package/dist/cli/api-client.d.ts +112 -0
- package/dist/cli/api-client.d.ts.map +1 -0
- package/dist/cli/api-client.js +259 -0
- package/dist/cli/api-client.js.map +1 -0
- package/dist/cli/auth-error.d.ts +19 -0
- package/dist/cli/auth-error.d.ts.map +1 -0
- package/dist/cli/auth-error.js +123 -0
- package/dist/cli/auth-error.js.map +1 -0
- package/dist/cli/client-factory.d.ts +14 -0
- package/dist/cli/client-factory.d.ts.map +1 -0
- package/dist/cli/client-factory.js +53 -0
- package/dist/cli/client-factory.js.map +1 -0
- package/dist/cli/commands/attest.d.ts +6 -0
- package/dist/cli/commands/attest.d.ts.map +1 -0
- package/dist/cli/commands/attest.js +55 -0
- package/dist/cli/commands/attest.js.map +1 -0
- package/dist/cli/commands/begin.d.ts +6 -0
- package/dist/cli/commands/begin.d.ts.map +1 -0
- package/dist/cli/commands/begin.js +27 -0
- package/dist/cli/commands/begin.js.map +1 -0
- package/dist/cli/commands/cli-train.d.ts +6 -0
- package/dist/cli/commands/cli-train.d.ts.map +1 -0
- package/dist/cli/commands/cli-train.js +276 -0
- package/dist/cli/commands/cli-train.js.map +1 -0
- package/dist/cli/commands/delete-metadata.d.ts +3 -0
- package/dist/cli/commands/delete-metadata.d.ts.map +1 -0
- package/dist/cli/commands/delete-metadata.js +3 -0
- package/dist/cli/commands/delete-metadata.js.map +1 -0
- package/dist/cli/commands/delete.d.ts +6 -0
- package/dist/cli/commands/delete.d.ts.map +1 -0
- package/dist/cli/commands/delete.js +24 -0
- package/dist/cli/commands/delete.js.map +1 -0
- package/dist/cli/commands/export.d.ts +21 -0
- package/dist/cli/commands/export.d.ts.map +1 -0
- package/dist/cli/commands/export.js +109 -0
- package/dist/cli/commands/export.js.map +1 -0
- package/dist/cli/commands/login.d.ts +16 -0
- package/dist/cli/commands/login.d.ts.map +1 -0
- package/dist/cli/commands/login.js +226 -0
- package/dist/cli/commands/login.js.map +1 -0
- package/dist/cli/commands/logout.d.ts +6 -0
- package/dist/cli/commands/logout.d.ts.map +1 -0
- package/dist/cli/commands/logout.js +17 -0
- package/dist/cli/commands/logout.js.map +1 -0
- package/dist/cli/commands/search.d.ts +6 -0
- package/dist/cli/commands/search.d.ts.map +1 -0
- package/dist/cli/commands/search.js +25 -0
- package/dist/cli/commands/search.js.map +1 -0
- package/dist/cli/commands/serve.d.ts +18 -0
- package/dist/cli/commands/serve.d.ts.map +1 -0
- package/dist/cli/commands/serve.js +165 -0
- package/dist/cli/commands/serve.js.map +1 -0
- package/dist/cli/commands/spaces.d.ts +6 -0
- package/dist/cli/commands/spaces.d.ts.map +1 -0
- package/dist/cli/commands/spaces.js +25 -0
- package/dist/cli/commands/spaces.js.map +1 -0
- package/dist/cli/commands/token.d.ts +6 -0
- package/dist/cli/commands/token.d.ts.map +1 -0
- package/dist/cli/commands/token.js +45 -0
- package/dist/cli/commands/token.js.map +1 -0
- package/dist/cli/commands/update.d.ts +6 -0
- package/dist/cli/commands/update.d.ts.map +1 -0
- package/dist/cli/commands/update.js +88 -0
- package/dist/cli/commands/update.js.map +1 -0
- package/dist/cli/config-file-internals.d.ts +23 -0
- package/dist/cli/config-file-internals.d.ts.map +1 -0
- package/dist/cli/config-file-internals.js +45 -0
- package/dist/cli/config-file-internals.js.map +1 -0
- package/dist/cli/config-file-write.d.ts +10 -0
- package/dist/cli/config-file-write.d.ts.map +1 -0
- package/dist/cli/config-file-write.js +168 -0
- package/dist/cli/config-file-write.js.map +1 -0
- package/dist/cli/config-file.d.ts +30 -0
- package/dist/cli/config-file.d.ts.map +1 -0
- package/dist/cli/config-file.js +200 -0
- package/dist/cli/config-file.js.map +1 -0
- package/dist/cli/config.d.ts +13 -0
- package/dist/cli/config.d.ts.map +1 -0
- package/dist/cli/config.js +24 -0
- package/dist/cli/config.js.map +1 -0
- package/dist/cli/download-export-ref.d.ts +7 -0
- package/dist/cli/download-export-ref.d.ts.map +1 -0
- package/dist/cli/download-export-ref.js +19 -0
- package/dist/cli/download-export-ref.js.map +1 -0
- package/dist/cli/fetch-error.d.ts +18 -0
- package/dist/cli/fetch-error.d.ts.map +1 -0
- package/dist/cli/fetch-error.js +38 -0
- package/dist/cli/fetch-error.js.map +1 -0
- package/dist/cli/format-next-call.d.ts +2 -0
- package/dist/cli/format-next-call.d.ts.map +1 -0
- package/dist/cli/format-next-call.js +63 -0
- package/dist/cli/format-next-call.js.map +1 -0
- package/dist/cli/index.d.ts +6 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +8 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/keyring.d.ts +73 -0
- package/dist/cli/keyring.d.ts.map +1 -0
- package/dist/cli/keyring.js +257 -0
- package/dist/cli/keyring.js.map +1 -0
- package/dist/cli/oauth-refresh.d.ts +32 -0
- package/dist/cli/oauth-refresh.d.ts.map +1 -0
- package/dist/cli/oauth-refresh.js +91 -0
- package/dist/cli/oauth-refresh.js.map +1 -0
- package/dist/cli/output.d.ts +10 -0
- package/dist/cli/output.d.ts.map +1 -0
- package/dist/cli/output.js +23 -0
- package/dist/cli/output.js.map +1 -0
- package/dist/cli/program.d.ts +3 -0
- package/dist/cli/program.d.ts.map +1 -0
- package/dist/cli/program.js +64 -0
- package/dist/cli/program.js.map +1 -0
- package/dist/cli/resolve-api-base.d.ts +7 -0
- package/dist/cli/resolve-api-base.d.ts.map +1 -0
- package/dist/cli/resolve-api-base.js +14 -0
- package/dist/cli/resolve-api-base.js.map +1 -0
- package/dist/cli/rewrite-login-url.d.ts +7 -0
- package/dist/cli/rewrite-login-url.d.ts.map +1 -0
- package/dist/cli/rewrite-login-url.js +34 -0
- package/dist/cli/rewrite-login-url.js.map +1 -0
- package/dist/cli/safe-http-url.d.ts +8 -0
- package/dist/cli/safe-http-url.d.ts.map +1 -0
- package/dist/cli/safe-http-url.js +28 -0
- package/dist/cli/safe-http-url.js.map +1 -0
- package/dist/cli/skill-zip-local-write.d.ts +22 -0
- package/dist/cli/skill-zip-local-write.d.ts.map +1 -0
- package/dist/cli/skill-zip-local-write.js +69 -0
- package/dist/cli/skill-zip-local-write.js.map +1 -0
- package/dist/cli/upload-guards.d.ts +7 -0
- package/dist/cli/upload-guards.d.ts.map +1 -0
- package/dist/cli/upload-guards.js +96 -0
- package/dist/cli/upload-guards.js.map +1 -0
- package/dist/config/adapter-markdown-size-limits.d.ts +20 -0
- package/dist/config/adapter-markdown-size-limits.d.ts.map +1 -0
- package/dist/config/adapter-markdown-size-limits.js +26 -0
- package/dist/config/adapter-markdown-size-limits.js.map +1 -0
- package/dist/config/env-alias.d.ts +56 -0
- package/dist/config/env-alias.d.ts.map +1 -0
- package/dist/config/env-alias.js +112 -0
- package/dist/config/env-alias.js.map +1 -0
- package/dist/config/export-download-settings.d.ts +4 -0
- package/dist/config/export-download-settings.d.ts.map +1 -0
- package/dist/config/export-download-settings.js +45 -0
- package/dist/config/export-download-settings.js.map +1 -0
- package/dist/config/export-zip-settings.d.ts +16 -0
- package/dist/config/export-zip-settings.d.ts.map +1 -0
- package/dist/config/export-zip-settings.js +28 -0
- package/dist/config/export-zip-settings.js.map +1 -0
- package/dist/config.d.ts +165 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +321 -0
- package/dist/config.js.map +1 -0
- package/dist/constants/builtin-search-meta.d.ts +14 -0
- package/dist/constants/builtin-search-meta.d.ts.map +1 -0
- package/dist/constants/builtin-search-meta.js +32 -0
- package/dist/constants/builtin-search-meta.js.map +1 -0
- package/dist/embed-docs/mem/README.md +140 -0
- package/dist/embed-docs/mem/adapter-migration.md +202 -0
- package/dist/embed-docs/mem/bulk-insert-adapters-via-cli.md +152 -0
- package/dist/embed-docs/mem/challenge-type-guide.md +278 -0
- package/dist/embed-docs/mem/create-new-protocol.md +346 -0
- package/dist/embed-docs/mem/phase-critic-guide.md +199 -0
- package/dist/embed-docs/mem/phase-critic.md +210 -0
- package/dist/embed-docs/mem/protocol-linking-guide.md +231 -0
- package/dist/embed-docs/mem/refine-search.md +93 -0
- package/dist/embed-docs/mem/skill-format-guide.md +280 -0
- package/dist/http/bearer-validate.d.ts +25 -0
- package/dist/http/bearer-validate.d.ts.map +1 -0
- package/dist/http/bearer-validate.js +173 -0
- package/dist/http/bearer-validate.js.map +1 -0
- package/dist/http/export-skill-zip-http.d.ts +5 -0
- package/dist/http/export-skill-zip-http.d.ts.map +1 -0
- package/dist/http/export-skill-zip-http.js +29 -0
- package/dist/http/export-skill-zip-http.js.map +1 -0
- package/dist/http/http-api-attest.d.ts +7 -0
- package/dist/http/http-api-attest.d.ts.map +1 -0
- package/dist/http/http-api-attest.js +33 -0
- package/dist/http/http-api-attest.js.map +1 -0
- package/dist/http/http-api-begin-step.d.ts +8 -0
- package/dist/http/http-api-begin-step.d.ts.map +1 -0
- package/dist/http/http-api-begin-step.js +33 -0
- package/dist/http/http-api-begin-step.js.map +1 -0
- package/dist/http/http-api-begin.d.ts +9 -0
- package/dist/http/http-api-begin.d.ts.map +1 -0
- package/dist/http/http-api-begin.js +34 -0
- package/dist/http/http-api-begin.js.map +1 -0
- package/dist/http/http-api-delete.d.ts +7 -0
- package/dist/http/http-api-delete.d.ts.map +1 -0
- package/dist/http/http-api-delete.js +33 -0
- package/dist/http/http-api-delete.js.map +1 -0
- package/dist/http/http-api-dump.d.ts +8 -0
- package/dist/http/http-api-dump.d.ts.map +1 -0
- package/dist/http/http-api-dump.js +50 -0
- package/dist/http/http-api-dump.js.map +1 -0
- package/dist/http/http-api-me.d.ts +7 -0
- package/dist/http/http-api-me.d.ts.map +1 -0
- package/dist/http/http-api-me.js +43 -0
- package/dist/http/http-api-me.js.map +1 -0
- package/dist/http/http-api-routes.d.ts +13 -0
- package/dist/http/http-api-routes.d.ts.map +1 -0
- package/dist/http/http-api-routes.js +32 -0
- package/dist/http/http-api-routes.js.map +1 -0
- package/dist/http/http-api-snapshot.d.ts +4 -0
- package/dist/http/http-api-snapshot.d.ts.map +1 -0
- package/dist/http/http-api-snapshot.js +35 -0
- package/dist/http/http-api-snapshot.js.map +1 -0
- package/dist/http/http-api-spaces.d.ts +8 -0
- package/dist/http/http-api-spaces.d.ts.map +1 -0
- package/dist/http/http-api-spaces.js +28 -0
- package/dist/http/http-api-spaces.js.map +1 -0
- package/dist/http/http-api-train-json.d.ts +8 -0
- package/dist/http/http-api-train-json.d.ts.map +1 -0
- package/dist/http/http-api-train-json.js +153 -0
- package/dist/http/http-api-train-json.js.map +1 -0
- package/dist/http/http-api-train-raw.d.ts +8 -0
- package/dist/http/http-api-train-raw.d.ts.map +1 -0
- package/dist/http/http-api-train-raw.js +199 -0
- package/dist/http/http-api-train-raw.js.map +1 -0
- package/dist/http/http-api-update.d.ts +7 -0
- package/dist/http/http-api-update.d.ts.map +1 -0
- package/dist/http/http-api-update.js +33 -0
- package/dist/http/http-api-update.js.map +1 -0
- package/dist/http/http-auth-callback.d.ts +12 -0
- package/dist/http/http-auth-callback.d.ts.map +1 -0
- package/dist/http/http-auth-callback.js +175 -0
- package/dist/http/http-auth-callback.js.map +1 -0
- package/dist/http/http-auth-middleware.d.ts +29 -0
- package/dist/http/http-auth-middleware.d.ts.map +1 -0
- package/dist/http/http-auth-middleware.js +285 -0
- package/dist/http/http-auth-middleware.js.map +1 -0
- package/dist/http/http-auth-oidc-redirect.d.ts +24 -0
- package/dist/http/http-auth-oidc-redirect.d.ts.map +1 -0
- package/dist/http/http-auth-oidc-redirect.js +80 -0
- package/dist/http/http-auth-oidc-redirect.js.map +1 -0
- package/dist/http/http-client-registration-proxy.d.ts +3 -0
- package/dist/http/http-client-registration-proxy.d.ts.map +1 -0
- package/dist/http/http-client-registration-proxy.js +146 -0
- package/dist/http/http-client-registration-proxy.js.map +1 -0
- package/dist/http/http-error-handlers.d.ts +7 -0
- package/dist/http/http-error-handlers.d.ts.map +1 -0
- package/dist/http/http-error-handlers.js +50 -0
- package/dist/http/http-error-handlers.js.map +1 -0
- package/dist/http/http-export-artifact-download-routes.d.ts +4 -0
- package/dist/http/http-export-artifact-download-routes.d.ts.map +1 -0
- package/dist/http/http-export-artifact-download-routes.js +49 -0
- package/dist/http/http-export-artifact-download-routes.js.map +1 -0
- package/dist/http/http-export-download-routes.d.ts +5 -0
- package/dist/http/http-export-download-routes.d.ts.map +1 -0
- package/dist/http/http-export-download-routes.js +35 -0
- package/dist/http/http-export-download-routes.js.map +1 -0
- package/dist/http/http-health-routes.d.ts +9 -0
- package/dist/http/http-health-routes.d.ts.map +1 -0
- package/dist/http/http-health-routes.js +106 -0
- package/dist/http/http-health-routes.js.map +1 -0
- package/dist/http/http-mcp-cors.d.ts +3 -0
- package/dist/http/http-mcp-cors.d.ts.map +1 -0
- package/dist/http/http-mcp-cors.js +27 -0
- package/dist/http/http-mcp-cors.js.map +1 -0
- package/dist/http/http-mcp-handler.d.ts +19 -0
- package/dist/http/http-mcp-handler.d.ts.map +1 -0
- package/dist/http/http-mcp-handler.js +291 -0
- package/dist/http/http-mcp-handler.js.map +1 -0
- package/dist/http/http-metrics-middleware.d.ts +7 -0
- package/dist/http/http-metrics-middleware.d.ts.map +1 -0
- package/dist/http/http-metrics-middleware.js +56 -0
- package/dist/http/http-metrics-middleware.js.map +1 -0
- package/dist/http/http-route-errors.d.ts +3 -0
- package/dist/http/http-route-errors.d.ts.map +1 -0
- package/dist/http/http-route-errors.js +26 -0
- package/dist/http/http-route-errors.js.map +1 -0
- package/dist/http/http-server-config.d.ts +13 -0
- package/dist/http/http-server-config.d.ts.map +1 -0
- package/dist/http/http-server-config.js +67 -0
- package/dist/http/http-server-config.js.map +1 -0
- package/dist/http/http-server-startup.d.ts +9 -0
- package/dist/http/http-server-startup.d.ts.map +1 -0
- package/dist/http/http-server-startup.js +26 -0
- package/dist/http/http-server-startup.js.map +1 -0
- package/dist/http/http-server.d.ts +4 -0
- package/dist/http/http-server.d.ts.map +1 -0
- package/dist/http/http-server.js +47 -0
- package/dist/http/http-server.js.map +1 -0
- package/dist/http/http-ui-static.d.ts +9 -0
- package/dist/http/http-ui-static.d.ts.map +1 -0
- package/dist/http/http-ui-static.js +88 -0
- package/dist/http/http-ui-static.js.map +1 -0
- package/dist/http/http-well-known.d.ts +23 -0
- package/dist/http/http-well-known.d.ts.map +1 -0
- package/dist/http/http-well-known.js +167 -0
- package/dist/http/http-well-known.js.map +1 -0
- package/dist/http/http-www-authenticate.d.ts +11 -0
- package/dist/http/http-www-authenticate.d.ts.map +1 -0
- package/dist/http/http-www-authenticate.js +42 -0
- package/dist/http/http-www-authenticate.js.map +1 -0
- package/dist/http/mcp-audit-emit.d.ts +30 -0
- package/dist/http/mcp-audit-emit.d.ts.map +1 -0
- package/dist/http/mcp-audit-emit.js +98 -0
- package/dist/http/mcp-audit-emit.js.map +1 -0
- package/dist/http/mcp-ui-offerings-auth-jsonrpc.d.ts +10 -0
- package/dist/http/mcp-ui-offerings-auth-jsonrpc.d.ts.map +1 -0
- package/dist/http/mcp-ui-offerings-auth-jsonrpc.js +28 -0
- package/dist/http/mcp-ui-offerings-auth-jsonrpc.js.map +1 -0
- package/dist/http/oidc-profile-claims.d.ts +77 -0
- package/dist/http/oidc-profile-claims.d.ts.map +1 -0
- package/dist/http/oidc-profile-claims.js +257 -0
- package/dist/http/oidc-profile-claims.js.map +1 -0
- package/dist/http/oidc-scopes.d.ts +3 -0
- package/dist/http/oidc-scopes.d.ts.map +1 -0
- package/dist/http/oidc-scopes.js +21 -0
- package/dist/http/oidc-scopes.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +159 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp-apps/activate-widget-html.d.ts +6 -0
- package/dist/mcp-apps/activate-widget-html.d.ts.map +1 -0
- package/dist/mcp-apps/activate-widget-html.js +29 -0
- package/dist/mcp-apps/activate-widget-html.js.map +1 -0
- package/dist/mcp-apps/activate-widget-inline-css.d.ts +2 -0
- package/dist/mcp-apps/activate-widget-inline-css.d.ts.map +1 -0
- package/dist/mcp-apps/activate-widget-inline-css.js +185 -0
- package/dist/mcp-apps/activate-widget-inline-css.js.map +1 -0
- package/dist/mcp-apps/activate-widget-inline-script.d.ts +2 -0
- package/dist/mcp-apps/activate-widget-inline-script.d.ts.map +1 -0
- package/dist/mcp-apps/activate-widget-inline-script.js +452 -0
- package/dist/mcp-apps/activate-widget-inline-script.js.map +1 -0
- package/dist/mcp-apps/forward-widget-html.d.ts +6 -0
- package/dist/mcp-apps/forward-widget-html.d.ts.map +1 -0
- package/dist/mcp-apps/forward-widget-html.js +34 -0
- package/dist/mcp-apps/forward-widget-html.js.map +1 -0
- package/dist/mcp-apps/forward-widget-inline-css.d.ts +2 -0
- package/dist/mcp-apps/forward-widget-inline-css.d.ts.map +1 -0
- package/dist/mcp-apps/forward-widget-inline-css.js +170 -0
- package/dist/mcp-apps/forward-widget-inline-css.js.map +1 -0
- package/dist/mcp-apps/forward-widget-inline-script.d.ts +2 -0
- package/dist/mcp-apps/forward-widget-inline-script.d.ts.map +1 -0
- package/dist/mcp-apps/forward-widget-inline-script.js +520 -0
- package/dist/mcp-apps/forward-widget-inline-script.js.map +1 -0
- package/dist/mcp-apps/kairos-logo-embedded.d.ts +3 -0
- package/dist/mcp-apps/kairos-logo-embedded.d.ts.map +1 -0
- package/dist/mcp-apps/kairos-logo-embedded.js +3 -0
- package/dist/mcp-apps/kairos-logo-embedded.js.map +1 -0
- package/dist/mcp-apps/kairos-server-ui-capability.d.ts +12 -0
- package/dist/mcp-apps/kairos-server-ui-capability.d.ts.map +1 -0
- package/dist/mcp-apps/kairos-server-ui-capability.js +13 -0
- package/dist/mcp-apps/kairos-server-ui-capability.js.map +1 -0
- package/dist/mcp-apps/kairos-ui-constants.d.ts +97 -0
- package/dist/mcp-apps/kairos-ui-constants.d.ts.map +1 -0
- package/dist/mcp-apps/kairos-ui-constants.js +100 -0
- package/dist/mcp-apps/kairos-ui-constants.js.map +1 -0
- package/dist/mcp-apps/list-offerings-for-ui.d.ts +42 -0
- package/dist/mcp-apps/list-offerings-for-ui.d.ts.map +1 -0
- package/dist/mcp-apps/list-offerings-for-ui.js +214 -0
- package/dist/mcp-apps/list-offerings-for-ui.js.map +1 -0
- package/dist/mcp-apps/mcp-widget-chrome-inline-css.d.ts +6 -0
- package/dist/mcp-apps/mcp-widget-chrome-inline-css.d.ts.map +1 -0
- package/dist/mcp-apps/mcp-widget-chrome-inline-css.js +99 -0
- package/dist/mcp-apps/mcp-widget-chrome-inline-css.js.map +1 -0
- package/dist/mcp-apps/mcp-widget-presentation-inject.d.ts +5 -0
- package/dist/mcp-apps/mcp-widget-presentation-inject.d.ts.map +1 -0
- package/dist/mcp-apps/mcp-widget-presentation-inject.js +8 -0
- package/dist/mcp-apps/mcp-widget-presentation-inject.js.map +1 -0
- package/dist/mcp-apps/register-activate-ui-resources.d.ts +4 -0
- package/dist/mcp-apps/register-activate-ui-resources.d.ts.map +1 -0
- package/dist/mcp-apps/register-activate-ui-resources.js +33 -0
- package/dist/mcp-apps/register-activate-ui-resources.js.map +1 -0
- package/dist/mcp-apps/register-forward-ui-resources.d.ts +4 -0
- package/dist/mcp-apps/register-forward-ui-resources.d.ts.map +1 -0
- package/dist/mcp-apps/register-forward-ui-resources.js +33 -0
- package/dist/mcp-apps/register-forward-ui-resources.js.map +1 -0
- package/dist/mcp-apps/register-spaces-ui-resources.d.ts +4 -0
- package/dist/mcp-apps/register-spaces-ui-resources.d.ts.map +1 -0
- package/dist/mcp-apps/register-spaces-ui-resources.js +33 -0
- package/dist/mcp-apps/register-spaces-ui-resources.js.map +1 -0
- package/dist/mcp-apps/spaces-mcp-app-widget-html.d.ts +14 -0
- package/dist/mcp-apps/spaces-mcp-app-widget-html.d.ts.map +1 -0
- package/dist/mcp-apps/spaces-mcp-app-widget-html.js +409 -0
- package/dist/mcp-apps/spaces-mcp-app-widget-html.js.map +1 -0
- package/dist/mcp-apps/spaces-widget-html.d.ts +22 -0
- package/dist/mcp-apps/spaces-widget-html.d.ts.map +1 -0
- package/dist/mcp-apps/spaces-widget-html.js +65 -0
- package/dist/mcp-apps/spaces-widget-html.js.map +1 -0
- package/dist/mcp-apps/widget-inline-minify.d.ts +4 -0
- package/dist/mcp-apps/widget-inline-minify.d.ts.map +1 -0
- package/dist/mcp-apps/widget-inline-minify.js +16 -0
- package/dist/mcp-apps/widget-inline-minify.js.map +1 -0
- package/dist/me-response.d.ts +19 -0
- package/dist/me-response.d.ts.map +1 -0
- package/dist/me-response.js +2 -0
- package/dist/me-response.js.map +1 -0
- package/dist/metrics-server.d.ts +14 -0
- package/dist/metrics-server.d.ts.map +1 -0
- package/dist/metrics-server.js +41 -0
- package/dist/metrics-server.js.map +1 -0
- package/dist/resources/docs-resources.d.ts +2 -0
- package/dist/resources/docs-resources.d.ts.map +1 -0
- package/dist/resources/docs-resources.js +47 -0
- package/dist/resources/docs-resources.js.map +1 -0
- package/dist/resources/embedded-mcp-resources.d.ts +85 -0
- package/dist/resources/embedded-mcp-resources.d.ts.map +1 -0
- package/dist/resources/embedded-mcp-resources.js +154 -0
- package/dist/resources/embedded-mcp-resources.js.map +1 -0
- package/dist/resources/mem-dir-utils.d.ts +6 -0
- package/dist/resources/mem-dir-utils.d.ts.map +1 -0
- package/dist/resources/mem-dir-utils.js +44 -0
- package/dist/resources/mem-dir-utils.js.map +1 -0
- package/dist/resources/mem-resources-boot.d.ts +11 -0
- package/dist/resources/mem-resources-boot.d.ts.map +1 -0
- package/dist/resources/mem-resources-boot.js +127 -0
- package/dist/resources/mem-resources-boot.js.map +1 -0
- package/dist/resources/mem-uuid-mapper.d.ts +9 -0
- package/dist/resources/mem-uuid-mapper.d.ts.map +1 -0
- package/dist/resources/mem-uuid-mapper.js +63 -0
- package/dist/resources/mem-uuid-mapper.js.map +1 -0
- package/dist/resources/prompt-resources.d.ts +8 -0
- package/dist/resources/prompt-resources.d.ts.map +1 -0
- package/dist/resources/prompt-resources.js +56 -0
- package/dist/resources/prompt-resources.js.map +1 -0
- package/dist/resources/resource-bootstrap.d.ts +7 -0
- package/dist/resources/resource-bootstrap.d.ts.map +1 -0
- package/dist/resources/resource-bootstrap.js +33 -0
- package/dist/resources/resource-bootstrap.js.map +1 -0
- package/dist/server.d.ts +4 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +102 -0
- package/dist/server.js.map +1 -0
- package/dist/services/activate-refinement-store.d.ts +9 -0
- package/dist/services/activate-refinement-store.d.ts.map +1 -0
- package/dist/services/activate-refinement-store.js +46 -0
- package/dist/services/activate-refinement-store.js.map +1 -0
- package/dist/services/adapter-layer-count.d.ts +19 -0
- package/dist/services/adapter-layer-count.d.ts.map +1 -0
- package/dist/services/adapter-layer-count.js +23 -0
- package/dist/services/adapter-layer-count.js.map +1 -0
- package/dist/services/adapter-navigation.d.ts +15 -0
- package/dist/services/adapter-navigation.d.ts.map +1 -0
- package/dist/services/adapter-navigation.js +102 -0
- package/dist/services/adapter-navigation.js.map +1 -0
- package/dist/services/code-block-processor.d.ts +40 -0
- package/dist/services/code-block-processor.d.ts.map +1 -0
- package/dist/services/code-block-processor.js +169 -0
- package/dist/services/code-block-processor.js.map +1 -0
- package/dist/services/embedding/audit.d.ts +35 -0
- package/dist/services/embedding/audit.d.ts.map +1 -0
- package/dist/services/embedding/audit.js +146 -0
- package/dist/services/embedding/audit.js.map +1 -0
- package/dist/services/embedding/bm25-tokenizer.d.ts +21 -0
- package/dist/services/embedding/bm25-tokenizer.d.ts.map +1 -0
- package/dist/services/embedding/bm25-tokenizer.js +47 -0
- package/dist/services/embedding/bm25-tokenizer.js.map +1 -0
- package/dist/services/embedding/config.d.ts +11 -0
- package/dist/services/embedding/config.d.ts.map +1 -0
- package/dist/services/embedding/config.js +32 -0
- package/dist/services/embedding/config.js.map +1 -0
- package/dist/services/embedding/health.d.ts +5 -0
- package/dist/services/embedding/health.d.ts.map +1 -0
- package/dist/services/embedding/health.js +112 -0
- package/dist/services/embedding/health.js.map +1 -0
- package/dist/services/embedding/providers.d.ts +24 -0
- package/dist/services/embedding/providers.d.ts.map +1 -0
- package/dist/services/embedding/providers.js +331 -0
- package/dist/services/embedding/providers.js.map +1 -0
- package/dist/services/embedding/service.d.ts +41 -0
- package/dist/services/embedding/service.d.ts.map +1 -0
- package/dist/services/embedding/service.js +272 -0
- package/dist/services/embedding/service.js.map +1 -0
- package/dist/services/embedding/types.d.ts +17 -0
- package/dist/services/embedding/types.d.ts.map +1 -0
- package/dist/services/embedding/types.js +2 -0
- package/dist/services/embedding/types.js.map +1 -0
- package/dist/services/execution-trace-store.d.ts +54 -0
- package/dist/services/execution-trace-store.d.ts.map +1 -0
- package/dist/services/execution-trace-store.js +248 -0
- package/dist/services/execution-trace-store.js.map +1 -0
- package/dist/services/export-artifact-download-capability-store.d.ts +19 -0
- package/dist/services/export-artifact-download-capability-store.d.ts.map +1 -0
- package/dist/services/export-artifact-download-capability-store.js +15 -0
- package/dist/services/export-artifact-download-capability-store.js.map +1 -0
- package/dist/services/export-artifact-download-capability.d.ts +19 -0
- package/dist/services/export-artifact-download-capability.d.ts.map +1 -0
- package/dist/services/export-artifact-download-capability.js +79 -0
- package/dist/services/export-artifact-download-capability.js.map +1 -0
- package/dist/services/export-download-capability-store.d.ts +20 -0
- package/dist/services/export-download-capability-store.d.ts.map +1 -0
- package/dist/services/export-download-capability-store.js +15 -0
- package/dist/services/export-download-capability-store.js.map +1 -0
- package/dist/services/export-download-capability.d.ts +20 -0
- package/dist/services/export-download-capability.d.ts.map +1 -0
- package/dist/services/export-download-capability.js +81 -0
- package/dist/services/export-download-capability.js.map +1 -0
- package/dist/services/forward-runtime-store.d.ts +21 -0
- package/dist/services/forward-runtime-store.d.ts.map +1 -0
- package/dist/services/forward-runtime-store.js +58 -0
- package/dist/services/forward-runtime-store.js.map +1 -0
- package/dist/services/id-generator.d.ts +66 -0
- package/dist/services/id-generator.d.ts.map +1 -0
- package/dist/services/id-generator.js +112 -0
- package/dist/services/id-generator.js.map +1 -0
- package/dist/services/key-value-store-factory.d.ts +8 -0
- package/dist/services/key-value-store-factory.d.ts.map +1 -0
- package/dist/services/key-value-store-factory.js +16 -0
- package/dist/services/key-value-store-factory.js.map +1 -0
- package/dist/services/key-value-store.d.ts +28 -0
- package/dist/services/key-value-store.d.ts.map +1 -0
- package/dist/services/key-value-store.js +6 -0
- package/dist/services/key-value-store.js.map +1 -0
- package/dist/services/memory/activation-pattern-payload.d.ts +8 -0
- package/dist/services/memory/activation-pattern-payload.d.ts.map +1 -0
- package/dist/services/memory/activation-pattern-payload.js +89 -0
- package/dist/services/memory/activation-pattern-payload.js.map +1 -0
- package/dist/services/memory/activation-search-backfill.d.ts +3 -0
- package/dist/services/memory/activation-search-backfill.d.ts.map +1 -0
- package/dist/services/memory/activation-search-backfill.js +89 -0
- package/dist/services/memory/activation-search-backfill.js.map +1 -0
- package/dist/services/memory/activation-search-fields.d.ts +20 -0
- package/dist/services/memory/activation-search-fields.d.ts.map +1 -0
- package/dist/services/memory/activation-search-fields.js +57 -0
- package/dist/services/memory/activation-search-fields.js.map +1 -0
- package/dist/services/memory/adapter-builder.d.ts +4 -0
- package/dist/services/memory/adapter-builder.d.ts.map +1 -0
- package/dist/services/memory/adapter-builder.js +229 -0
- package/dist/services/memory/adapter-builder.js.map +1 -0
- package/dist/services/memory/adapter-contract-blocks.d.ts +25 -0
- package/dist/services/memory/adapter-contract-blocks.d.ts.map +1 -0
- package/dist/services/memory/adapter-contract-blocks.js +98 -0
- package/dist/services/memory/adapter-contract-blocks.js.map +1 -0
- package/dist/services/memory/artifact-metadata.d.ts +7 -0
- package/dist/services/memory/artifact-metadata.d.ts.map +1 -0
- package/dist/services/memory/artifact-metadata.js +70 -0
- package/dist/services/memory/artifact-metadata.js.map +1 -0
- package/dist/services/memory/memory-accessors.d.ts +13 -0
- package/dist/services/memory/memory-accessors.d.ts.map +1 -0
- package/dist/services/memory/memory-accessors.js +32 -0
- package/dist/services/memory/memory-accessors.js.map +1 -0
- package/dist/services/memory/qdrant-point-to-memory.d.ts +8 -0
- package/dist/services/memory/qdrant-point-to-memory.d.ts.map +1 -0
- package/dist/services/memory/qdrant-point-to-memory.js +79 -0
- package/dist/services/memory/qdrant-point-to-memory.js.map +1 -0
- package/dist/services/memory/store-adapter-default-handler.d.ts +10 -0
- package/dist/services/memory/store-adapter-default-handler.d.ts.map +1 -0
- package/dist/services/memory/store-adapter-default-handler.js +190 -0
- package/dist/services/memory/store-adapter-default-handler.js.map +1 -0
- package/dist/services/memory/store-adapter-header-handler.d.ts +9 -0
- package/dist/services/memory/store-adapter-header-handler.d.ts.map +1 -0
- package/dist/services/memory/store-adapter-header-handler.js +156 -0
- package/dist/services/memory/store-adapter-header-handler.js.map +1 -0
- package/dist/services/memory/store-adapter-helpers.d.ts +41 -0
- package/dist/services/memory/store-adapter-helpers.d.ts.map +1 -0
- package/dist/services/memory/store-adapter-helpers.js +180 -0
- package/dist/services/memory/store-adapter-helpers.js.map +1 -0
- package/dist/services/memory/store-adapter.d.ts +29 -0
- package/dist/services/memory/store-adapter.d.ts.map +1 -0
- package/dist/services/memory/store-adapter.js +88 -0
- package/dist/services/memory/store-adapter.js.map +1 -0
- package/dist/services/memory/store-artifact.d.ts +5 -0
- package/dist/services/memory/store-artifact.d.ts.map +1 -0
- package/dist/services/memory/store-artifact.js +252 -0
- package/dist/services/memory/store-artifact.js.map +1 -0
- package/dist/services/memory/store-init.d.ts +3 -0
- package/dist/services/memory/store-init.d.ts.map +1 -0
- package/dist/services/memory/store-init.js +289 -0
- package/dist/services/memory/store-init.js.map +1 -0
- package/dist/services/memory/store-methods.d.ts +29 -0
- package/dist/services/memory/store-methods.d.ts.map +1 -0
- package/dist/services/memory/store-methods.js +241 -0
- package/dist/services/memory/store-methods.js.map +1 -0
- package/dist/services/memory/store-title-similarity-search.d.ts +16 -0
- package/dist/services/memory/store-title-similarity-search.d.ts.map +1 -0
- package/dist/services/memory/store-title-similarity-search.js +50 -0
- package/dist/services/memory/store-title-similarity-search.js.map +1 -0
- package/dist/services/memory/store.d.ts +40 -0
- package/dist/services/memory/store.d.ts.map +1 -0
- package/dist/services/memory/store.js +122 -0
- package/dist/services/memory/store.js.map +1 -0
- package/dist/services/memory/validate-adapter-markdown-size.d.ts +24 -0
- package/dist/services/memory/validate-adapter-markdown-size.d.ts.map +1 -0
- package/dist/services/memory/validate-adapter-markdown-size.js +95 -0
- package/dist/services/memory/validate-adapter-markdown-size.js.map +1 -0
- package/dist/services/memory/validate-protocol-structure.d.ts +21 -0
- package/dist/services/memory/validate-protocol-structure.d.ts.map +1 -0
- package/dist/services/memory/validate-protocol-structure.js +171 -0
- package/dist/services/memory/validate-protocol-structure.js.map +1 -0
- package/dist/services/memory-store.d.ts +36 -0
- package/dist/services/memory-store.d.ts.map +1 -0
- package/dist/services/memory-store.js +183 -0
- package/dist/services/memory-store.js.map +1 -0
- package/dist/services/metrics/agent-metrics.d.ts +12 -0
- package/dist/services/metrics/agent-metrics.d.ts.map +1 -0
- package/dist/services/metrics/agent-metrics.js +34 -0
- package/dist/services/metrics/agent-metrics.js.map +1 -0
- package/dist/services/metrics/anomaly-metrics.d.ts +3 -0
- package/dist/services/metrics/anomaly-metrics.d.ts.map +1 -0
- package/dist/services/metrics/anomaly-metrics.js +9 -0
- package/dist/services/metrics/anomaly-metrics.js.map +1 -0
- package/dist/services/metrics/embedding-metrics.d.ts +12 -0
- package/dist/services/metrics/embedding-metrics.d.ts.map +1 -0
- package/dist/services/metrics/embedding-metrics.js +41 -0
- package/dist/services/metrics/embedding-metrics.js.map +1 -0
- package/dist/services/metrics/export-metrics.d.ts +21 -0
- package/dist/services/metrics/export-metrics.d.ts.map +1 -0
- package/dist/services/metrics/export-metrics.js +50 -0
- package/dist/services/metrics/export-metrics.js.map +1 -0
- package/dist/services/metrics/http-metrics.d.ts +12 -0
- package/dist/services/metrics/http-metrics.d.ts.map +1 -0
- package/dist/services/metrics/http-metrics.js +41 -0
- package/dist/services/metrics/http-metrics.js.map +1 -0
- package/dist/services/metrics/mcp-metrics.d.ts +16 -0
- package/dist/services/metrics/mcp-metrics.d.ts.map +1 -0
- package/dist/services/metrics/mcp-metrics.js +55 -0
- package/dist/services/metrics/mcp-metrics.js.map +1 -0
- package/dist/services/metrics/memory-metrics.d.ts +10 -0
- package/dist/services/metrics/memory-metrics.d.ts.map +1 -0
- package/dist/services/metrics/memory-metrics.js +28 -0
- package/dist/services/metrics/memory-metrics.js.map +1 -0
- package/dist/services/metrics/qdrant-metrics.d.ts +11 -0
- package/dist/services/metrics/qdrant-metrics.d.ts.map +1 -0
- package/dist/services/metrics/qdrant-metrics.js +35 -0
- package/dist/services/metrics/qdrant-metrics.js.map +1 -0
- package/dist/services/metrics/registry.d.ts +9 -0
- package/dist/services/metrics/registry.d.ts.map +1 -0
- package/dist/services/metrics/registry.js +19 -0
- package/dist/services/metrics/registry.js.map +1 -0
- package/dist/services/metrics/system-metrics.d.ts +10 -0
- package/dist/services/metrics/system-metrics.d.ts.map +1 -0
- package/dist/services/metrics/system-metrics.js +35 -0
- package/dist/services/metrics/system-metrics.js.map +1 -0
- package/dist/services/oidc-state-store.d.ts +29 -0
- package/dist/services/oidc-state-store.d.ts.map +1 -0
- package/dist/services/oidc-state-store.js +42 -0
- package/dist/services/oidc-state-store.js.map +1 -0
- package/dist/services/proof-of-work-store.d.ts +66 -0
- package/dist/services/proof-of-work-store.d.ts.map +1 -0
- package/dist/services/proof-of-work-store.js +141 -0
- package/dist/services/proof-of-work-store.js.map +1 -0
- package/dist/services/qdrant/connection.d.ts +24 -0
- package/dist/services/qdrant/connection.d.ts.map +1 -0
- package/dist/services/qdrant/connection.js +126 -0
- package/dist/services/qdrant/connection.js.map +1 -0
- package/dist/services/qdrant/index.d.ts +3 -0
- package/dist/services/qdrant/index.d.ts.map +1 -0
- package/dist/services/qdrant/index.js +4 -0
- package/dist/services/qdrant/index.js.map +1 -0
- package/dist/services/qdrant/initialization.d.ts +26 -0
- package/dist/services/qdrant/initialization.d.ts.map +1 -0
- package/dist/services/qdrant/initialization.js +179 -0
- package/dist/services/qdrant/initialization.js.map +1 -0
- package/dist/services/qdrant/listing.d.ts +26 -0
- package/dist/services/qdrant/listing.d.ts.map +1 -0
- package/dist/services/qdrant/listing.js +88 -0
- package/dist/services/qdrant/listing.js.map +1 -0
- package/dist/services/qdrant/memory-retrieval.d.ts +54 -0
- package/dist/services/qdrant/memory-retrieval.d.ts.map +1 -0
- package/dist/services/qdrant/memory-retrieval.js +278 -0
- package/dist/services/qdrant/memory-retrieval.js.map +1 -0
- package/dist/services/qdrant/memory-store.d.ts +16 -0
- package/dist/services/qdrant/memory-store.d.ts.map +1 -0
- package/dist/services/qdrant/memory-store.js +108 -0
- package/dist/services/qdrant/memory-store.js.map +1 -0
- package/dist/services/qdrant/memory-updates.d.ts +8 -0
- package/dist/services/qdrant/memory-updates.d.ts.map +1 -0
- package/dist/services/qdrant/memory-updates.js +205 -0
- package/dist/services/qdrant/memory-updates.js.map +1 -0
- package/dist/services/qdrant/protocol.d.ts +16 -0
- package/dist/services/qdrant/protocol.d.ts.map +1 -0
- package/dist/services/qdrant/protocol.js +48 -0
- package/dist/services/qdrant/protocol.js.map +1 -0
- package/dist/services/qdrant/quality.d.ts +14 -0
- package/dist/services/qdrant/quality.d.ts.map +1 -0
- package/dist/services/qdrant/quality.js +99 -0
- package/dist/services/qdrant/quality.js.map +1 -0
- package/dist/services/qdrant/resources.d.ts +7 -0
- package/dist/services/qdrant/resources.d.ts.map +1 -0
- package/dist/services/qdrant/resources.js +123 -0
- package/dist/services/qdrant/resources.js.map +1 -0
- package/dist/services/qdrant/reward-propagation.d.ts +7 -0
- package/dist/services/qdrant/reward-propagation.d.ts.map +1 -0
- package/dist/services/qdrant/reward-propagation.js +62 -0
- package/dist/services/qdrant/reward-propagation.js.map +1 -0
- package/dist/services/qdrant/search.d.ts +22 -0
- package/dist/services/qdrant/search.d.ts.map +1 -0
- package/dist/services/qdrant/search.js +76 -0
- package/dist/services/qdrant/search.js.map +1 -0
- package/dist/services/qdrant/service.d.ts +96 -0
- package/dist/services/qdrant/service.d.ts.map +1 -0
- package/dist/services/qdrant/service.js +107 -0
- package/dist/services/qdrant/service.js.map +1 -0
- package/dist/services/qdrant/snapshots.d.ts +19 -0
- package/dist/services/qdrant/snapshots.d.ts.map +1 -0
- package/dist/services/qdrant/snapshots.js +130 -0
- package/dist/services/qdrant/snapshots.js.map +1 -0
- package/dist/services/qdrant/types.d.ts +39 -0
- package/dist/services/qdrant/types.d.ts.map +1 -0
- package/dist/services/qdrant/types.js +2 -0
- package/dist/services/qdrant/types.js.map +1 -0
- package/dist/services/qdrant/undici-compat.d.ts +8 -0
- package/dist/services/qdrant/undici-compat.d.ts.map +1 -0
- package/dist/services/qdrant/undici-compat.js +23 -0
- package/dist/services/qdrant/undici-compat.js.map +1 -0
- package/dist/services/qdrant/utils.d.ts +20 -0
- package/dist/services/qdrant/utils.d.ts.map +1 -0
- package/dist/services/qdrant/utils.js +121 -0
- package/dist/services/qdrant/utils.js.map +1 -0
- package/dist/services/redis-cache.d.ts +50 -0
- package/dist/services/redis-cache.d.ts.map +1 -0
- package/dist/services/redis-cache.js +237 -0
- package/dist/services/redis-cache.js.map +1 -0
- package/dist/services/redis.d.ts +46 -0
- package/dist/services/redis.d.ts.map +1 -0
- package/dist/services/redis.js +272 -0
- package/dist/services/redis.js.map +1 -0
- package/dist/services/reward-evals.d.ts +29 -0
- package/dist/services/reward-evals.d.ts.map +1 -0
- package/dist/services/reward-evals.js +116 -0
- package/dist/services/reward-evals.js.map +1 -0
- package/dist/services/reward-metrics.d.ts +20 -0
- package/dist/services/reward-metrics.d.ts.map +1 -0
- package/dist/services/reward-metrics.js +72 -0
- package/dist/services/reward-metrics.js.map +1 -0
- package/dist/services/stats/bonuses.d.ts +28 -0
- package/dist/services/stats/bonuses.d.ts.map +1 -0
- package/dist/services/stats/bonuses.js +96 -0
- package/dist/services/stats/bonuses.js.map +1 -0
- package/dist/services/stats/healer.d.ts +6 -0
- package/dist/services/stats/healer.d.ts.map +1 -0
- package/dist/services/stats/healer.js +24 -0
- package/dist/services/stats/healer.js.map +1 -0
- package/dist/services/stats/model-stats.d.ts +53 -0
- package/dist/services/stats/model-stats.d.ts.map +1 -0
- package/dist/services/stats/model-stats.js +238 -0
- package/dist/services/stats/model-stats.js.map +1 -0
- package/dist/services/stats/protocol.d.ts +11 -0
- package/dist/services/stats/protocol.d.ts.map +1 -0
- package/dist/services/stats/protocol.js +55 -0
- package/dist/services/stats/protocol.js.map +1 -0
- package/dist/services/stats/scoring.d.ts +19 -0
- package/dist/services/stats/scoring.d.ts.map +1 -0
- package/dist/services/stats/scoring.js +102 -0
- package/dist/services/stats/scoring.js.map +1 -0
- package/dist/services/stats/types.d.ts +39 -0
- package/dist/services/stats/types.d.ts.map +1 -0
- package/dist/services/stats/types.js +8 -0
- package/dist/services/stats/types.js.map +1 -0
- package/dist/squadrules-mcp-4.8.6.tgz +0 -0
- package/dist/stdio/stdio-server.d.ts +3 -0
- package/dist/stdio/stdio-server.d.ts.map +1 -0
- package/dist/stdio/stdio-server.js +12 -0
- package/dist/stdio/stdio-server.js.map +1 -0
- package/dist/tools/activate.d.ts +11 -0
- package/dist/tools/activate.d.ts.map +1 -0
- package/dist/tools/activate.js +228 -0
- package/dist/tools/activate.js.map +1 -0
- package/dist/tools/activate_schema.d.ts +73 -0
- package/dist/tools/activate_schema.d.ts.map +1 -0
- package/dist/tools/activate_schema.js +102 -0
- package/dist/tools/activate_schema.js.map +1 -0
- package/dist/tools/artifact-catalog.d.ts +17 -0
- package/dist/tools/artifact-catalog.d.ts.map +1 -0
- package/dist/tools/artifact-catalog.js +82 -0
- package/dist/tools/artifact-catalog.js.map +1 -0
- package/dist/tools/artifact-mime.d.ts +9 -0
- package/dist/tools/artifact-mime.d.ts.map +1 -0
- package/dist/tools/artifact-mime.js +40 -0
- package/dist/tools/artifact-mime.js.map +1 -0
- package/dist/tools/artifact-relative-path.d.ts +7 -0
- package/dist/tools/artifact-relative-path.d.ts.map +1 -0
- package/dist/tools/artifact-relative-path.js +29 -0
- package/dist/tools/artifact-relative-path.js.map +1 -0
- package/dist/tools/delete.d.ts +6 -0
- package/dist/tools/delete.d.ts.map +1 -0
- package/dist/tools/delete.js +103 -0
- package/dist/tools/delete.js.map +1 -0
- package/dist/tools/delete_schema.d.ts +19 -0
- package/dist/tools/delete_schema.d.ts.map +1 -0
- package/dist/tools/delete_schema.js +25 -0
- package/dist/tools/delete_schema.js.map +1 -0
- package/dist/tools/dump.d.ts +9 -0
- package/dist/tools/dump.d.ts.map +1 -0
- package/dist/tools/dump.js +171 -0
- package/dist/tools/dump.js.map +1 -0
- package/dist/tools/dump_schema.d.ts +18 -0
- package/dist/tools/dump_schema.d.ts.map +1 -0
- package/dist/tools/dump_schema.js +18 -0
- package/dist/tools/dump_schema.js.map +1 -0
- package/dist/tools/export-resolve-adapter.d.ts +7 -0
- package/dist/tools/export-resolve-adapter.d.ts.map +1 -0
- package/dist/tools/export-resolve-adapter.js +37 -0
- package/dist/tools/export-resolve-adapter.js.map +1 -0
- package/dist/tools/export-reward-jsonl.d.ts +64 -0
- package/dist/tools/export-reward-jsonl.d.ts.map +1 -0
- package/dist/tools/export-reward-jsonl.js +118 -0
- package/dist/tools/export-reward-jsonl.js.map +1 -0
- package/dist/tools/export-selection.d.ts +8 -0
- package/dist/tools/export-selection.d.ts.map +1 -0
- package/dist/tools/export-selection.js +59 -0
- package/dist/tools/export-selection.js.map +1 -0
- package/dist/tools/export-skill-items.d.ts +14 -0
- package/dist/tools/export-skill-items.d.ts.map +1 -0
- package/dist/tools/export-skill-items.js +42 -0
- package/dist/tools/export-skill-items.js.map +1 -0
- package/dist/tools/export-source.d.ts +8 -0
- package/dist/tools/export-source.d.ts.map +1 -0
- package/dist/tools/export-source.js +82 -0
- package/dist/tools/export-source.js.map +1 -0
- package/dist/tools/export-telemetry.d.ts +14 -0
- package/dist/tools/export-telemetry.d.ts.map +1 -0
- package/dist/tools/export-telemetry.js +80 -0
- package/dist/tools/export-telemetry.js.map +1 -0
- package/dist/tools/export.d.ts +14 -0
- package/dist/tools/export.d.ts.map +1 -0
- package/dist/tools/export.js +261 -0
- package/dist/tools/export.js.map +1 -0
- package/dist/tools/export_schema.d.ts +84 -0
- package/dist/tools/export_schema.d.ts.map +1 -0
- package/dist/tools/export_schema.js +123 -0
- package/dist/tools/export_schema.js.map +1 -0
- package/dist/tools/forward-helpers.d.ts +8 -0
- package/dist/tools/forward-helpers.d.ts.map +1 -0
- package/dist/tools/forward-helpers.js +22 -0
- package/dist/tools/forward-helpers.js.map +1 -0
- package/dist/tools/forward-register.d.ts +8 -0
- package/dist/tools/forward-register.d.ts.map +1 -0
- package/dist/tools/forward-register.js +52 -0
- package/dist/tools/forward-register.js.map +1 -0
- package/dist/tools/forward-tool-error.d.ts +3 -0
- package/dist/tools/forward-tool-error.d.ts.map +1 -0
- package/dist/tools/forward-tool-error.js +9 -0
- package/dist/tools/forward-tool-error.js.map +1 -0
- package/dist/tools/forward-trace.d.ts +8 -0
- package/dist/tools/forward-trace.d.ts.map +1 -0
- package/dist/tools/forward-trace.js +187 -0
- package/dist/tools/forward-trace.js.map +1 -0
- package/dist/tools/forward-view.d.ts +55 -0
- package/dist/tools/forward-view.d.ts.map +1 -0
- package/dist/tools/forward-view.js +279 -0
- package/dist/tools/forward-view.js.map +1 -0
- package/dist/tools/forward.d.ts +5 -0
- package/dist/tools/forward.d.ts.map +1 -0
- package/dist/tools/forward.js +206 -0
- package/dist/tools/forward.js.map +1 -0
- package/dist/tools/forward_schema.d.ts +274 -0
- package/dist/tools/forward_schema.d.ts.map +1 -0
- package/dist/tools/forward_schema.js +309 -0
- package/dist/tools/forward_schema.js.map +1 -0
- package/dist/tools/kairos-challenge-display.d.ts +4 -0
- package/dist/tools/kairos-challenge-display.d.ts.map +1 -0
- package/dist/tools/kairos-challenge-display.js +86 -0
- package/dist/tools/kairos-challenge-display.js.map +1 -0
- package/dist/tools/kairos-genesis-proof-hash.d.ts +3 -0
- package/dist/tools/kairos-genesis-proof-hash.d.ts.map +1 -0
- package/dist/tools/kairos-genesis-proof-hash.js +4 -0
- package/dist/tools/kairos-genesis-proof-hash.js.map +1 -0
- package/dist/tools/kairos-uri.d.ts +28 -0
- package/dist/tools/kairos-uri.d.ts.map +1 -0
- package/dist/tools/kairos-uri.js +105 -0
- package/dist/tools/kairos-uri.js.map +1 -0
- package/dist/tools/local-artifact-dir-contract.d.ts +16 -0
- package/dist/tools/local-artifact-dir-contract.d.ts.map +1 -0
- package/dist/tools/local-artifact-dir-contract.js +24 -0
- package/dist/tools/local-artifact-dir-contract.js.map +1 -0
- package/dist/tools/mcp-contract-match.d.ts +21 -0
- package/dist/tools/mcp-contract-match.d.ts.map +1 -0
- package/dist/tools/mcp-contract-match.js +78 -0
- package/dist/tools/mcp-contract-match.js.map +1 -0
- package/dist/tools/mcp-loose-input-schema.d.ts +8 -0
- package/dist/tools/mcp-loose-input-schema.d.ts.map +1 -0
- package/dist/tools/mcp-loose-input-schema.js +10 -0
- package/dist/tools/mcp-loose-input-schema.js.map +1 -0
- package/dist/tools/mcp-runtime-error.d.ts +19 -0
- package/dist/tools/mcp-runtime-error.d.ts.map +1 -0
- package/dist/tools/mcp-runtime-error.js +34 -0
- package/dist/tools/mcp-runtime-error.js.map +1 -0
- package/dist/tools/mcp-tool-input-teaching.d.ts +12 -0
- package/dist/tools/mcp-tool-input-teaching.d.ts.map +1 -0
- package/dist/tools/mcp-tool-input-teaching.js +259 -0
- package/dist/tools/mcp-tool-input-teaching.js.map +1 -0
- package/dist/tools/next-missing-proof-payload.d.ts +24 -0
- package/dist/tools/next-missing-proof-payload.d.ts.map +1 -0
- package/dist/tools/next-missing-proof-payload.js +36 -0
- package/dist/tools/next-missing-proof-payload.js.map +1 -0
- package/dist/tools/next-pow-challenge-shape.d.ts +4 -0
- package/dist/tools/next-pow-challenge-shape.d.ts.map +1 -0
- package/dist/tools/next-pow-challenge-shape.js +49 -0
- package/dist/tools/next-pow-challenge-shape.js.map +1 -0
- package/dist/tools/next-pow-helpers.d.ts +9 -0
- package/dist/tools/next-pow-helpers.d.ts.map +1 -0
- package/dist/tools/next-pow-helpers.js +259 -0
- package/dist/tools/next-pow-helpers.js.map +1 -0
- package/dist/tools/next-previous-step.d.ts +36 -0
- package/dist/tools/next-previous-step.d.ts.map +1 -0
- package/dist/tools/next-previous-step.js +134 -0
- package/dist/tools/next-previous-step.js.map +1 -0
- package/dist/tools/next-proof-types.d.ts +45 -0
- package/dist/tools/next-proof-types.d.ts.map +1 -0
- package/dist/tools/next-proof-types.js +2 -0
- package/dist/tools/next-proof-types.js.map +1 -0
- package/dist/tools/next.d.ts +9 -0
- package/dist/tools/next.d.ts.map +1 -0
- package/dist/tools/next.js +205 -0
- package/dist/tools/next.js.map +1 -0
- package/dist/tools/next_schema.d.ts +148 -0
- package/dist/tools/next_schema.d.ts.map +1 -0
- package/dist/tools/next_schema.js +99 -0
- package/dist/tools/next_schema.js.map +1 -0
- package/dist/tools/review-evidence-check.d.ts +12 -0
- package/dist/tools/review-evidence-check.d.ts.map +1 -0
- package/dist/tools/review-evidence-check.js +23 -0
- package/dist/tools/review-evidence-check.js.map +1 -0
- package/dist/tools/reward.d.ts +9 -0
- package/dist/tools/reward.d.ts.map +1 -0
- package/dist/tools/reward.js +133 -0
- package/dist/tools/reward.js.map +1 -0
- package/dist/tools/reward_schema.d.ts +61 -0
- package/dist/tools/reward_schema.d.ts.map +1 -0
- package/dist/tools/reward_schema.js +42 -0
- package/dist/tools/reward_schema.js.map +1 -0
- package/dist/tools/search.d.ts +11 -0
- package/dist/tools/search.d.ts.map +1 -0
- package/dist/tools/search.js +197 -0
- package/dist/tools/search.js.map +1 -0
- package/dist/tools/search_output.d.ts +55 -0
- package/dist/tools/search_output.d.ts.map +1 -0
- package/dist/tools/search_output.js +161 -0
- package/dist/tools/search_output.js.map +1 -0
- package/dist/tools/search_schema.d.ts +32 -0
- package/dist/tools/search_schema.d.ts.map +1 -0
- package/dist/tools/search_schema.js +47 -0
- package/dist/tools/search_schema.js.map +1 -0
- package/dist/tools/shell-challenge-invocation.d.ts +32 -0
- package/dist/tools/shell-challenge-invocation.d.ts.map +1 -0
- package/dist/tools/shell-challenge-invocation.js +113 -0
- package/dist/tools/shell-challenge-invocation.js.map +1 -0
- package/dist/tools/skill-export/artifact-files.d.ts +18 -0
- package/dist/tools/skill-export/artifact-files.d.ts.map +1 -0
- package/dist/tools/skill-export/artifact-files.js +67 -0
- package/dist/tools/skill-export/artifact-files.js.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/default-rules.d.ts +4 -0
- package/dist/tools/skill-export/artifact-sanitization/default-rules.d.ts.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/default-rules.js +6 -0
- package/dist/tools/skill-export/artifact-sanitization/default-rules.js.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/extension-mime-map.d.ts +12 -0
- package/dist/tools/skill-export/artifact-sanitization/extension-mime-map.d.ts.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/extension-mime-map.js +25 -0
- package/dist/tools/skill-export/artifact-sanitization/extension-mime-map.js.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/index.d.ts +5 -0
- package/dist/tools/skill-export/artifact-sanitization/index.d.ts.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/index.js +4 -0
- package/dist/tools/skill-export/artifact-sanitization/index.js.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/normalize-mime.d.ts +3 -0
- package/dist/tools/skill-export/artifact-sanitization/normalize-mime.d.ts.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/normalize-mime.js +9 -0
- package/dist/tools/skill-export/artifact-sanitization/normalize-mime.js.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/rules/extension-mime-consistency.d.ts +7 -0
- package/dist/tools/skill-export/artifact-sanitization/rules/extension-mime-consistency.d.ts.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/rules/extension-mime-consistency.js +54 -0
- package/dist/tools/skill-export/artifact-sanitization/rules/extension-mime-consistency.js.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/run-sanitization.d.ts +7 -0
- package/dist/tools/skill-export/artifact-sanitization/run-sanitization.d.ts.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/run-sanitization.js +22 -0
- package/dist/tools/skill-export/artifact-sanitization/run-sanitization.js.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/types.d.ts +22 -0
- package/dist/tools/skill-export/artifact-sanitization/types.d.ts.map +1 -0
- package/dist/tools/skill-export/artifact-sanitization/types.js +7 -0
- package/dist/tools/skill-export/artifact-sanitization/types.js.map +1 -0
- package/dist/tools/skill-export/assemble-skill-item.d.ts +21 -0
- package/dist/tools/skill-export/assemble-skill-item.d.ts.map +1 -0
- package/dist/tools/skill-export/assemble-skill-item.js +68 -0
- package/dist/tools/skill-export/assemble-skill-item.js.map +1 -0
- package/dist/tools/skill-export/build-skill-md.d.ts +9 -0
- package/dist/tools/skill-export/build-skill-md.d.ts.map +1 -0
- package/dist/tools/skill-export/build-skill-md.js +20 -0
- package/dist/tools/skill-export/build-skill-md.js.map +1 -0
- package/dist/tools/skill-export/derive-metadata.d.ts +29 -0
- package/dist/tools/skill-export/derive-metadata.d.ts.map +1 -0
- package/dist/tools/skill-export/derive-metadata.js +81 -0
- package/dist/tools/skill-export/derive-metadata.js.map +1 -0
- package/dist/tools/skill-export/enumerate-space-adapters.d.ts +16 -0
- package/dist/tools/skill-export/enumerate-space-adapters.d.ts.map +1 -0
- package/dist/tools/skill-export/enumerate-space-adapters.js +45 -0
- package/dist/tools/skill-export/enumerate-space-adapters.js.map +1 -0
- package/dist/tools/skill-export/scan-diagnostics.d.ts +9 -0
- package/dist/tools/skill-export/scan-diagnostics.d.ts.map +1 -0
- package/dist/tools/skill-export/scan-diagnostics.js +20 -0
- package/dist/tools/skill-export/scan-diagnostics.js.map +1 -0
- package/dist/tools/skill-export/sha256.d.ts +2 -0
- package/dist/tools/skill-export/sha256.d.ts.map +1 -0
- package/dist/tools/skill-export/sha256.js +5 -0
- package/dist/tools/skill-export/sha256.js.map +1 -0
- package/dist/tools/skill-export/sha256sums.d.ts +14 -0
- package/dist/tools/skill-export/sha256sums.d.ts.map +1 -0
- package/dist/tools/skill-export/sha256sums.js +32 -0
- package/dist/tools/skill-export/sha256sums.js.map +1 -0
- package/dist/tools/skill-export/types.d.ts +26 -0
- package/dist/tools/skill-export/types.d.ts.map +1 -0
- package/dist/tools/skill-export/types.js +5 -0
- package/dist/tools/skill-export/types.js.map +1 -0
- package/dist/tools/skill-export/zip-bundle.d.ts +28 -0
- package/dist/tools/skill-export/zip-bundle.d.ts.map +1 -0
- package/dist/tools/skill-export/zip-bundle.js +54 -0
- package/dist/tools/skill-export/zip-bundle.js.map +1 -0
- package/dist/tools/spaces.d.ts +44 -0
- package/dist/tools/spaces.d.ts.map +1 -0
- package/dist/tools/spaces.js +205 -0
- package/dist/tools/spaces.js.map +1 -0
- package/dist/tools/spaces_schema.d.ts +36 -0
- package/dist/tools/spaces_schema.d.ts.map +1 -0
- package/dist/tools/spaces_schema.js +46 -0
- package/dist/tools/spaces_schema.js.map +1 -0
- package/dist/tools/tool-registry.d.ts +496 -0
- package/dist/tools/tool-registry.d.ts.map +1 -0
- package/dist/tools/tool-registry.js +86 -0
- package/dist/tools/tool-registry.js.map +1 -0
- package/dist/tools/train-artifact-adapter-uri.d.ts +3 -0
- package/dist/tools/train-artifact-adapter-uri.d.ts.map +1 -0
- package/dist/tools/train-artifact-adapter-uri.js +27 -0
- package/dist/tools/train-artifact-adapter-uri.js.map +1 -0
- package/dist/tools/train-mime.d.ts +3 -0
- package/dist/tools/train-mime.d.ts.map +1 -0
- package/dist/tools/train-mime.js +18 -0
- package/dist/tools/train-mime.js.map +1 -0
- package/dist/tools/train-output-adapter-uri.d.ts +8 -0
- package/dist/tools/train-output-adapter-uri.d.ts.map +1 -0
- package/dist/tools/train-output-adapter-uri.js +29 -0
- package/dist/tools/train-output-adapter-uri.js.map +1 -0
- package/dist/tools/train-store.d.ts +15 -0
- package/dist/tools/train-store.d.ts.map +1 -0
- package/dist/tools/train-store.js +111 -0
- package/dist/tools/train-store.js.map +1 -0
- package/dist/tools/train.d.ts +11 -0
- package/dist/tools/train.d.ts.map +1 -0
- package/dist/tools/train.js +310 -0
- package/dist/tools/train.js.map +1 -0
- package/dist/tools/train_schema.d.ts +60 -0
- package/dist/tools/train_schema.d.ts.map +1 -0
- package/dist/tools/train_schema.js +196 -0
- package/dist/tools/train_schema.js.map +1 -0
- package/dist/tools/tune-cache-invalidation.d.ts +8 -0
- package/dist/tools/tune-cache-invalidation.d.ts.map +1 -0
- package/dist/tools/tune-cache-invalidation.js +12 -0
- package/dist/tools/tune-cache-invalidation.js.map +1 -0
- package/dist/tools/tune-execute.d.ts +4 -0
- package/dist/tools/tune-execute.d.ts.map +1 -0
- package/dist/tools/tune-execute.js +293 -0
- package/dist/tools/tune-execute.js.map +1 -0
- package/dist/tools/tune-messages.d.ts +6 -0
- package/dist/tools/tune-messages.d.ts.map +1 -0
- package/dist/tools/tune-messages.js +14 -0
- package/dist/tools/tune-messages.js.map +1 -0
- package/dist/tools/tune-verify.d.ts +16 -0
- package/dist/tools/tune-verify.d.ts.map +1 -0
- package/dist/tools/tune-verify.js +18 -0
- package/dist/tools/tune-verify.js.map +1 -0
- package/dist/tools/tune.d.ts +9 -0
- package/dist/tools/tune.d.ts.map +1 -0
- package/dist/tools/tune.js +54 -0
- package/dist/tools/tune.js.map +1 -0
- package/dist/tools/tune_schema.d.ts +27 -0
- package/dist/tools/tune_schema.d.ts.map +1 -0
- package/dist/tools/tune_schema.js +61 -0
- package/dist/tools/tune_schema.js.map +1 -0
- package/dist/tools/update.d.ts +5 -0
- package/dist/tools/update.d.ts.map +1 -0
- package/dist/tools/update.js +69 -0
- package/dist/tools/update.js.map +1 -0
- package/dist/tools/update_schema.d.ts +21 -0
- package/dist/tools/update_schema.d.ts.map +1 -0
- package/dist/tools/update_schema.js +24 -0
- package/dist/tools/update_schema.js.map +1 -0
- package/dist/types/index.d.ts +60 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +21 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/memory.d.ts +114 -0
- package/dist/types/memory.d.ts.map +1 -0
- package/dist/types/memory.js +2 -0
- package/dist/types/memory.js.map +1 -0
- package/dist/ui/assets/AccountPage-DBrqe8KI.js +1 -0
- package/dist/ui/assets/ChallengeCard-gY-n7rwI.js +1 -0
- package/dist/ui/assets/ErrorAlert-BQMph5Nh.js +1 -0
- package/dist/ui/assets/HomePage-DIKsxKaH.js +1 -0
- package/dist/ui/assets/KairosPage-n5qbiyxb.js +1 -0
- package/dist/ui/assets/NotFoundPage-Dz-PKC4R.js +1 -0
- package/dist/ui/assets/ProtocolDetailPage-C20Yd3q6.js +1 -0
- package/dist/ui/assets/ProtocolEditPage-hc87ZsgM.js +5 -0
- package/dist/ui/assets/RichTextEditor-uun0UIVc.js +1 -0
- package/dist/ui/assets/RunGuidedPage-BbyHZjPU.js +1 -0
- package/dist/ui/assets/RunsPage-BijmxS6f.js +1 -0
- package/dist/ui/assets/SkillBundlePage-BsndXJaC.js +1 -0
- package/dist/ui/assets/SpaceSelect-DDhPkDXU.js +1 -0
- package/dist/ui/assets/StepFlowGraph-DsL5lsIq.js +1 -0
- package/dist/ui/assets/SurfaceCard-CRidnDLP.js +1 -0
- package/dist/ui/assets/api-BgTb-tmJ.js +1 -0
- package/dist/ui/assets/export-skill-zip-CIyOWxuI.js +4 -0
- package/dist/ui/assets/index-D7zMHqYN.js +8 -0
- package/dist/ui/assets/index-fBTJW4Qq.css +2 -0
- package/dist/ui/assets/kairos-mcp-DNiKVgiO.svg +24 -0
- package/dist/ui/assets/react-CR5VJ85Q.js +9 -0
- package/dist/ui/assets/rolldown-runtime-hePW80VL.js +1 -0
- package/dist/ui/assets/tiptap-74Cp-fci.js +204 -0
- package/dist/ui/assets/useRunSession-062hqhcN.js +1 -0
- package/dist/ui/assets/vendor-DGTQ2S8W.js +31 -0
- package/dist/ui/favicon.svg +24 -0
- package/dist/ui/index.html +39 -0
- package/dist/ui/logo.svg +24 -0
- package/dist/utils/audit-log-events.d.ts +6 -0
- package/dist/utils/audit-log-events.d.ts.map +1 -0
- package/dist/utils/audit-log-events.js +59 -0
- package/dist/utils/audit-log-events.js.map +1 -0
- package/dist/utils/audit-mcp-summary.d.ts +25 -0
- package/dist/utils/audit-mcp-summary.d.ts.map +1 -0
- package/dist/utils/audit-mcp-summary.js +172 -0
- package/dist/utils/audit-mcp-summary.js.map +1 -0
- package/dist/utils/audit-secret-patterns.d.ts +9 -0
- package/dist/utils/audit-secret-patterns.d.ts.map +1 -0
- package/dist/utils/audit-secret-patterns.js +24 -0
- package/dist/utils/audit-secret-patterns.js.map +1 -0
- package/dist/utils/build-version.d.ts +15 -0
- package/dist/utils/build-version.d.ts.map +1 -0
- package/dist/utils/build-version.js +46 -0
- package/dist/utils/build-version.js.map +1 -0
- package/dist/utils/concurrency-limit.d.ts +19 -0
- package/dist/utils/concurrency-limit.d.ts.map +1 -0
- package/dist/utils/concurrency-limit.js +78 -0
- package/dist/utils/concurrency-limit.js.map +1 -0
- package/dist/utils/dump-markdown.d.ts +16 -0
- package/dist/utils/dump-markdown.d.ts.map +1 -0
- package/dist/utils/dump-markdown.js +62 -0
- package/dist/utils/dump-markdown.js.map +1 -0
- package/dist/utils/frontmatter.d.ts +20 -0
- package/dist/utils/frontmatter.d.ts.map +1 -0
- package/dist/utils/frontmatter.js +43 -0
- package/dist/utils/frontmatter.js.map +1 -0
- package/dist/utils/global-error-handlers.d.ts +7 -0
- package/dist/utils/global-error-handlers.d.ts.map +1 -0
- package/dist/utils/global-error-handlers.js +61 -0
- package/dist/utils/global-error-handlers.js.map +1 -0
- package/dist/utils/kairos-local-artifact-dirs.d.ts +13 -0
- package/dist/utils/kairos-local-artifact-dirs.d.ts.map +1 -0
- package/dist/utils/kairos-local-artifact-dirs.js +35 -0
- package/dist/utils/kairos-local-artifact-dirs.js.map +1 -0
- package/dist/utils/kairos-user-dirs.d.ts +62 -0
- package/dist/utils/kairos-user-dirs.d.ts.map +1 -0
- package/dist/utils/kairos-user-dirs.js +165 -0
- package/dist/utils/kairos-user-dirs.js.map +1 -0
- package/dist/utils/log-core.d.ts +11 -0
- package/dist/utils/log-core.d.ts.map +1 -0
- package/dist/utils/log-core.js +78 -0
- package/dist/utils/log-core.js.map +1 -0
- package/dist/utils/mcp-tool-doc-runtime.d.ts +6 -0
- package/dist/utils/mcp-tool-doc-runtime.d.ts.map +1 -0
- package/dist/utils/mcp-tool-doc-runtime.js +16 -0
- package/dist/utils/mcp-tool-doc-runtime.js.map +1 -0
- package/dist/utils/memory-body.d.ts +7 -0
- package/dist/utils/memory-body.d.ts.map +1 -0
- package/dist/utils/memory-body.js +25 -0
- package/dist/utils/memory-body.js.map +1 -0
- package/dist/utils/memory-store-utils.d.ts +14 -0
- package/dist/utils/memory-store-utils.d.ts.map +1 -0
- package/dist/utils/memory-store-utils.js +83 -0
- package/dist/utils/memory-store-utils.js.map +1 -0
- package/dist/utils/normalize-redis-url.d.ts +2 -0
- package/dist/utils/normalize-redis-url.d.ts.map +1 -0
- package/dist/utils/normalize-redis-url.js +18 -0
- package/dist/utils/normalize-redis-url.js.map +1 -0
- package/dist/utils/protected-space-write-guard.d.ts +3 -0
- package/dist/utils/protected-space-write-guard.d.ts.map +1 -0
- package/dist/utils/protected-space-write-guard.js +14 -0
- package/dist/utils/protected-space-write-guard.js.map +1 -0
- package/dist/utils/protocol-slug.d.ts +39 -0
- package/dist/utils/protocol-slug.d.ts.map +1 -0
- package/dist/utils/protocol-slug.js +74 -0
- package/dist/utils/protocol-slug.js.map +1 -0
- package/dist/utils/qdrant-collection-utils.d.ts +11 -0
- package/dist/utils/qdrant-collection-utils.d.ts.map +1 -0
- package/dist/utils/qdrant-collection-utils.js +65 -0
- package/dist/utils/qdrant-collection-utils.js.map +1 -0
- package/dist/utils/qdrant-query-utils.d.ts +6 -0
- package/dist/utils/qdrant-query-utils.d.ts.map +1 -0
- package/dist/utils/qdrant-query-utils.js +23 -0
- package/dist/utils/qdrant-query-utils.js.map +1 -0
- package/dist/utils/qdrant-utils.d.ts +5 -0
- package/dist/utils/qdrant-utils.d.ts.map +1 -0
- package/dist/utils/qdrant-utils.js +5 -0
- package/dist/utils/qdrant-utils.js.map +1 -0
- package/dist/utils/qdrant-vector-management.d.ts +25 -0
- package/dist/utils/qdrant-vector-management.d.ts.map +1 -0
- package/dist/utils/qdrant-vector-management.js +284 -0
- package/dist/utils/qdrant-vector-management.js.map +1 -0
- package/dist/utils/qdrant-vector-types.d.ts +31 -0
- package/dist/utils/qdrant-vector-types.d.ts.map +1 -0
- package/dist/utils/qdrant-vector-types.js +49 -0
- package/dist/utils/qdrant-vector-types.js.map +1 -0
- package/dist/utils/resolve-space-param.d.ts +28 -0
- package/dist/utils/resolve-space-param.d.ts.map +1 -0
- package/dist/utils/resolve-space-param.js +97 -0
- package/dist/utils/resolve-space-param.js.map +1 -0
- package/dist/utils/space-display.d.ts +12 -0
- package/dist/utils/space-display.d.ts.map +1 -0
- package/dist/utils/space-display.js +45 -0
- package/dist/utils/space-display.js.map +1 -0
- package/dist/utils/space-filter.d.ts +22 -0
- package/dist/utils/space-filter.d.ts.map +1 -0
- package/dist/utils/space-filter.js +35 -0
- package/dist/utils/space-filter.js.map +1 -0
- package/dist/utils/structured-logger.d.ts +53 -0
- package/dist/utils/structured-logger.d.ts.map +1 -0
- package/dist/utils/structured-logger.js +297 -0
- package/dist/utils/structured-logger.js.map +1 -0
- package/dist/utils/tenant-context.d.ts +93 -0
- package/dist/utils/tenant-context.d.ts.map +1 -0
- package/dist/utils/tenant-context.js +247 -0
- package/dist/utils/tenant-context.js.map +1 -0
- package/dist/utils/uri-builder.d.ts +37 -0
- package/dist/utils/uri-builder.d.ts.map +1 -0
- package/dist/utils/uri-builder.js +60 -0
- package/dist/utils/uri-builder.js.map +1 -0
- package/dist/utils/version-compare.d.ts +10 -0
- package/dist/utils/version-compare.d.ts.map +1 -0
- package/dist/utils/version-compare.js +31 -0
- package/dist/utils/version-compare.js.map +1 -0
- package/dist/utils/zod-to-jsonschema.d.ts +4 -0
- package/dist/utils/zod-to-jsonschema.d.ts.map +1 -0
- package/dist/utils/zod-to-jsonschema.js +25 -0
- package/dist/utils/zod-to-jsonschema.js.map +1 -0
- package/package.json +240 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{a as t,g as n,s as r,y as i}from"./vendor-DGTQ2S8W.js";import{i as a,t as o}from"./react-CR5VJ85Q.js";import{t as s}from"./api-BgTb-tmJ.js";import{n as c,r as l,t as u}from"./SpaceSelect-DDhPkDXU.js";import{t as d}from"./ErrorAlert-BQMph5Nh.js";var f=e(a(),1);async function p(e,t){let n={query:e.trim()},r=t?.space?.trim();r&&(n.space=r),t?.max_choices!=null&&(n.max_choices=t.max_choices);let i=await s(`/api/activate`,{method:`POST`,body:JSON.stringify(n)});if(!i.ok){let e=await i.json().catch(()=>({}));throw Error(e.message??i.statusText)}return await i.json()}function m(e,t,n){let r=e.trim();return{queryKey:[`activate`,r,(n?.space?.trim()??``)||null,n?.max_choices??null],queryFn:()=>p(r,n),enabled:t&&r.length>0}}function h(e,t,r){return n(m(e,t,r))}var g=o();function _(){return(0,g.jsx)(`ul`,{className:`list-none p-0 m-0 space-y-2`,role:`list`,"aria-hidden":`true`,children:[1,2,3].map(e=>(0,g.jsxs)(`li`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-4 flex justify-between items-start gap-4`,children:[(0,g.jsxs)(`div`,{className:`flex-1 min-w-0 space-y-2`,children:[(0,g.jsx)(`div`,{className:`h-5 w-3/4 rounded bg-[var(--color-border)] animate-pulse`}),(0,g.jsx)(`div`,{className:`h-4 w-1/2 rounded bg-[var(--color-border)] animate-pulse`}),(0,g.jsx)(`div`,{className:`h-5 w-16 rounded bg-[var(--color-border)] animate-pulse`})]}),(0,g.jsx)(`div`,{className:`h-10 w-20 rounded-[var(--radius-md)] bg-[var(--color-border)] animate-pulse flex-shrink-0`})]},e))})}function v(e){return typeof e!=`number`||Number.isNaN(e)?0:Math.round(Math.max(0,Math.min(e,1))*100)}var y=`ABCDEFGHIJKLMNOPQRSTUVWXYZ`.split(``);function b(e){let t=[];for(let n of e??[])for(let e of n.adapters??[])t.push({adapter_id:e.adapter_id,title:e.title,layer_count:e.layer_count,slug:e.slug,uri:e.uri,space_name:n.name,space_type:n.type});let n=new Map,r=[];for(let e of t){let t=(e.adapter_id??``).trim();if(!t){r.push(e);continue}let i=n.get(t);i?(e.layer_count??0)>(i.layer_count??0)&&n.set(t,e):n.set(t,e)}let i=[...n.values(),...r],a={};for(let e of y)a[e]=0;for(let e of i){let t=(e.title??``).trim().charAt(0).toUpperCase();y.includes(t)&&(a[t]=(a[t]??0)+1)}return{browseAdapters:i,countsByLetter:a}}function x(e){let{t:n,spacesLoading:r,browseAdapters:i,countsByLetter:a}=e,[o,s]=(0,f.useState)(null),l=(0,f.useMemo)(()=>o?i.filter(e=>(e.title??``).trim().charAt(0).toUpperCase()===o).sort((e,t)=>(e.title??``).localeCompare(t.title??``,void 0,{sensitivity:`base`})):[],[i,o]),u=i.length>0;return(0,g.jsxs)(`section`,{"aria-labelledby":`browse-by-label-heading`,children:[(0,g.jsx)(`h2`,{id:`browse-by-label-heading`,className:`text-lg font-semibold text-[var(--color-text-heading)] mb-3`,children:n(`kairos.browseByLabel`)}),(0,g.jsx)(`p`,{className:`text-sm text-[var(--color-text-muted)] mb-4`,children:n(`kairos.browseByLetterHint`)}),!r&&!u?(0,g.jsx)(`p`,{className:`text-sm text-[var(--color-text-muted)]`,children:n(`kairos.browseEmpty`)}):null,!r&&u?(0,g.jsx)(`div`,{className:`flex flex-wrap gap-2 mb-4`,role:`group`,"aria-label":n(`kairos.browseByLabel`),children:y.map(e=>{let t=a[e]??0;return(0,g.jsxs)(`button`,{type:`button`,onClick:()=>s(t=>t===e?null:e),"aria-expanded":o===e,"aria-controls":`browse-letter-panel-${e}`,"aria-pressed":o===e,"aria-label":n(`kairos.letterCount`,{letter:e,count:t}),className:`min-h-[var(--layout-touch-target)] min-w-[var(--layout-touch-target)] inline-flex items-center justify-center rounded-[var(--radius-md)] border px-3 py-2 text-sm font-medium transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2 ${o===e?`border-[var(--color-primary)] bg-[var(--color-surface-elevated)] text-[var(--color-primary)]`:`border-[var(--color-border)] bg-[var(--color-surface)] text-[var(--color-text)] hover:bg-[var(--color-surface-elevated)]`}`,children:[e,`: `,t]},e)})}):null,o&&!r&&u?(0,g.jsxs)(`div`,{id:`browse-letter-panel-${o}`,role:`region`,"aria-labelledby":`browse-letter-panel-heading`,"aria-live":`polite`,className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-5`,children:[(0,g.jsx)(`h3`,{id:`browse-letter-panel-heading`,className:`text-base font-semibold text-[var(--color-text-heading)] mb-3`,children:n(`kairos.labelsStartingWith`,{letter:o})}),l.length===0?(0,g.jsx)(`p`,{className:`text-sm text-[var(--color-text-muted)]`,children:n(`kairos.noLabelsForLetter`)}):(0,g.jsx)(`ul`,{className:`m-0 list-none space-y-2 p-0`,role:`list`,"aria-label":n(`kairos.labelsStartingWith`,{letter:o}),children:l.map(e=>(0,g.jsxs)(`li`,{className:`flex flex-col gap-3 rounded-[var(--radius-sm)] border border-[var(--color-border)] bg-[var(--color-surface)] p-3 sm:flex-row sm:items-center sm:justify-between`,children:[(0,g.jsxs)(`div`,{className:`min-w-0 flex flex-col gap-1`,children:[(0,g.jsx)(`span`,{className:`font-medium text-[var(--color-text-heading)]`,children:e.title}),(0,g.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,g.jsx)(c,{type:e.space_type}),(0,g.jsx)(`span`,{className:`text-xs text-[var(--color-text-muted)]`,children:e.space_name})]})]}),(0,g.jsx)(`div`,{className:`flex-shrink-0`,children:(0,g.jsx)(t,{to:`/protocols/${encodeURIComponent(e.uri)}`,"aria-label":n(`kairos.viewProtocol`,{title:e.title}),className:`min-h-[var(--layout-touch-target)] min-w-[var(--layout-touch-target)] inline-flex items-center justify-center px-4 py-2 rounded-[var(--radius-md)] font-medium bg-[var(--color-primary)] text-white no-underline hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:n(`kairos.view`)})})]},e.adapter_id))})]}):null]})}function S(e){let{t:n,choices:r,topScore:i,roleBadgeClass:a}=e;return(0,g.jsxs)(g.Fragment,{children:[r.length>0&&(0,g.jsx)(`p`,{id:`kairos-results-summary`,className:`text-sm text-[var(--color-text-muted)] mb-4`,"aria-live":`polite`,role:`status`,children:n(`kairos.foundMatches`,{count:r.length,top:i==null?0:Math.round(i)})}),(0,g.jsx)(`ul`,{className:`list-none p-0 m-0 space-y-2`,role:`list`,"aria-label":n(`kairos.resultsLabel`),children:r.map(e=>(0,g.jsxs)(`li`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-5 flex justify-between items-start gap-4`,children:[(0,g.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,g.jsx)(`span`,{className:`font-medium text-[var(--color-text-heading)] block`,children:e.label}),(0,g.jsxs)(`div`,{className:`text-sm text-[var(--color-text-muted)] mt-1`,children:[e.adapter_name??(e.role===`refine`?n(`kairos.refineMeta`):e.role===`create`?n(`kairos.createMeta`):``),e.role===`match`&&e.space_name!=null&&e.space_name.length>0&&(0,g.jsxs)(g.Fragment,{children:[` `,`· `,n(`kairos.spaceLabel`),`: `,e.space_name]}),e.activation_score!=null&&` · ${n(`kairos.score`)}: ${v(e.activation_score)}%`,e.adapter_version&&` · ${n(`kairos.version`)}: ${e.adapter_version}`]}),(0,g.jsx)(`span`,{className:`inline-block mt-1 text-xs uppercase tracking-wide px-2 py-0.5 rounded ${a[e.role]??`bg-[var(--color-surface)] text-[var(--color-text-muted)]`}`,"aria-label":`Role: ${e.role}`,children:e.role}),e.tags?.length>0&&(0,g.jsx)(`div`,{className:`flex flex-wrap gap-1 mt-2`,"aria-label":n(`kairos.tagsLabel`),children:e.tags.slice(0,8).map(e=>(0,g.jsx)(`span`,{className:`inline-block text-xs px-2 py-0.5 rounded bg-[var(--color-surface)] border border-[var(--color-border)] text-[var(--color-text-muted)]`,children:e},e))})]}),(0,g.jsxs)(`div`,{className:`flex-shrink-0`,children:[e.role===`match`&&(0,g.jsx)(t,{to:`/protocols/${encodeURIComponent(e.uri)}`,"aria-label":n(`kairos.viewProtocol`,{title:e.label}),className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center px-4 py-2 rounded-[var(--radius-md)] font-medium bg-[var(--color-primary)] text-white no-underline hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:n(`kairos.view`)}),e.role===`refine`&&(0,g.jsx)(t,{to:`/protocols/${encodeURIComponent(e.uri)}`,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center px-4 py-2 rounded-[var(--radius-md)] font-medium bg-[var(--color-primary)] text-white no-underline hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:n(`kairos.refineSearch`)}),e.role===`create`&&(0,g.jsx)(t,{to:`/protocols/new`,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center px-4 py-2 rounded-[var(--radius-md)] font-medium bg-[var(--color-primary)] text-white no-underline hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:n(`kairos.createNew`)})]})]},e.uri))})]})}var C={match:`bg-[var(--badge-match-bg)] text-[var(--badge-match-fg)]`,refine:`bg-[var(--badge-refine-bg)] text-[var(--badge-refine-fg)]`,create:`bg-[var(--badge-create-bg)] text-[var(--badge-create-fg)]`};function w(){let{t:e}=i(),[n,a]=r(),o=n.get(`q`)??``,s=n.get(`space`)??``,[c,p]=(0,f.useState)(o),[m,y]=(0,f.useState)(o),[w,T]=(0,f.useState)(s),[E,D]=(0,f.useState)(s),O=E.trim(),{data:k,isLoading:A,isError:j,error:M,refetch:N}=h(m,!!m,{...O?{space:O}:{}}),P=!m,{data:F,isLoading:I,isError:L,error:R,refetch:z}=l(!0,{includeAdapterTitles:P});(0,f.useEffect)(()=>{let e=n.get(`q`)??``,t=n.get(`space`)??``;p(e),y(e),T(t),D(t)},[n]);let B=e=>{e.preventDefault(),y(c),D(w);let t={};c.trim()&&(t.q=c.trim()),w.trim()&&(t.space=w.trim()),a(t,{replace:!0})},V=k?.choices??[],H={match:0,refine:1,create:2},U=V.slice().sort((e,t)=>{let n=(H[e.role]??99)-(H[t.role]??99);if(n!==0)return n;let r=e.activation_score??-1;return(t.activation_score??-1)-r}),W=U.length>0?Math.max(...U.map(e=>v(e.activation_score))):null,{browseAdapters:G,countsByLetter:K}=(0,f.useMemo)(()=>b(F?.spaces),[F?.spaces]);return(0,g.jsxs)(`div`,{children:[(0,g.jsx)(`h1`,{className:`text-[var(--color-text-heading)] text-2xl font-semibold mb-1`,children:e(`kairos.title`)}),(0,g.jsx)(`p`,{className:`text-sm text-[var(--color-text-muted)] mb-6`,children:e(`kairos.searchHint`)}),(0,g.jsxs)(`section`,{className:`mb-8`,"aria-labelledby":`browse-search-label`,children:[(0,g.jsx)(`h2`,{id:`browse-search-label`,className:`sr-only`,children:e(`kairos.searchLabel`)}),(0,g.jsxs)(`form`,{onSubmit:B,"aria-label":e(`kairos.searchLabel`),children:[(0,g.jsx)(`label`,{htmlFor:`kairos-search-query`,className:`block font-medium text-[var(--color-text-heading)] mb-2`,children:e(`kairos.searchLabel`)}),(0,g.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-[1fr_auto] md:items-end mb-4`,children:[(0,g.jsxs)(`div`,{children:[(0,g.jsx)(`input`,{id:`kairos-search-query`,type:`search`,value:c,onChange:e=>p(e.target.value),placeholder:e(`kairos.searchPlaceholder`),"aria-describedby":`kairos-search-hint`,className:`w-full min-h-[44px] px-4 py-2 border border-[var(--color-border)] rounded-[var(--radius-md)] text-[var(--color-text)] bg-[var(--color-surface)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`}),(0,g.jsx)(`p`,{id:`kairos-search-hint`,className:`text-sm text-[var(--color-text-muted)] mt-2`,children:e(`kairos.searchHintShort`)})]}),(0,g.jsx)(`div`,{className:`flex md:pb-0 pb-0`,children:(0,g.jsx)(`button`,{type:`submit`,className:`min-h-[44px] min-w-[44px] px-4 py-2 rounded-[var(--radius-md)] font-medium bg-[var(--color-primary)] text-white border-0 cursor-pointer hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`kairos.search`)})})]}),(0,g.jsxs)(`div`,{className:`max-w-md mb-6`,children:[(0,g.jsx)(`label`,{htmlFor:`kairos-activate-space`,className:`block text-sm font-medium text-[var(--color-text-heading)] mb-2`,children:e(`kairos.scopeSpaceLabel`)}),(0,g.jsx)(u,{id:`kairos-activate-space`,spaces:F?.spaces,value:w,onChange:T,includeAllOption:!0,disabled:I,"aria-describedby":`kairos-search-hint`})]})]})]}),j&&(0,g.jsx)(d,{message:M instanceof Error?M.message:String(M),onRetry:()=>N(),showGoBack:!0}),P&&L&&(0,g.jsx)(d,{message:R instanceof Error?R.message:String(R),onRetry:()=>z(),showGoBack:!0}),A&&m&&(0,g.jsxs)(`div`,{className:`mb-4`,"aria-live":`polite`,"aria-busy":`true`,children:[(0,g.jsx)(`p`,{className:`sr-only`,children:e(`kairos.loading`)}),(0,g.jsx)(_,{})]}),P&&I&&(0,g.jsxs)(`div`,{className:`mb-4`,"aria-live":`polite`,"aria-busy":`true`,children:[(0,g.jsx)(`p`,{className:`sr-only`,children:e(`kairos.loading`)}),(0,g.jsx)(_,{})]}),!A&&!j&&!(P&&L)&&(0,g.jsx)(g.Fragment,{children:m?U.length===0?(0,g.jsxs)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-6`,role:`status`,"aria-live":`polite`,children:[(0,g.jsx)(`p`,{className:`text-[var(--color-text-muted)] mb-4`,children:e(`kairos.empty`)}),(0,g.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,g.jsx)(t,{to:`/kairos`,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center px-4 py-2 rounded-[var(--radius-md)] font-medium border border-[var(--color-border)] text-[var(--color-text)] no-underline hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`kairos.refineSearch`)}),(0,g.jsx)(t,{to:`/protocols/new`,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center px-4 py-2 rounded-[var(--radius-md)] font-medium bg-[var(--color-primary)] text-white border-0 no-underline hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`kairos.createNew`)})]})]}):m?(0,g.jsx)(S,{t:e,choices:U,topScore:W,roleBadgeClass:C}):null:(0,g.jsx)(x,{t:e,spacesLoading:I,browseAdapters:G,countsByLetter:K})})]})}export{w as KairosPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{y as e}from"./vendor-DGTQ2S8W.js";import{t}from"./react-CR5VJ85Q.js";import{t as n}from"./ErrorAlert-BQMph5Nh.js";var r=t();function i(){let{t}=e();return(0,r.jsxs)(`div`,{children:[(0,r.jsx)(`h1`,{className:`text-[var(--color-text-heading)] text-2xl font-semibold mb-4`,children:t(`notFound.title`)}),(0,r.jsx)(n,{message:t(`notFound.message`),showGoBack:!0})]})}export{i as NotFoundPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{a as t,m as n,y as r}from"./vendor-DGTQ2S8W.js";import{i,t as a}from"./react-CR5VJ85Q.js";import{t as o}from"./SurfaceCard-CRidnDLP.js";import{a as s,n as c,r as l,s as u,t as d}from"./export-skill-zip-CIyOWxuI.js";import{n as f}from"./ChallengeCard-gY-n7rwI.js";import{n as p,t as m}from"./StepFlowGraph-DsL5lsIq.js";var h=e(i(),1),g=a();function _({value:e,label:t,className:n}){let{t:i}=r(),[a,o]=(0,h.useState)(!1),s=(0,h.useCallback)(async()=>{try{await navigator.clipboard.writeText(e),o(!0),setTimeout(()=>o(!1),2e3)}catch{}},[e]);return(0,g.jsx)(`button`,{type:`button`,onClick:s,className:n,"aria-label":a?i(`run.copied`):t,title:t,children:i(a?`run.copied`:`run.copy`)})}function v(e){return e.body.replace(/\n```json\s*[\s\S]*?```\s*$/g,``).trim()}function y(){let{t:e}=r(),{uri:i}=n(),{data:a,isLoading:y,isError:b,error:x}=u(i?decodeURIComponent(i):void 0,!0),[S,C]=(0,h.useState)(!1),[w,T]=(0,h.useState)(null);if(y&&!a)return(0,g.jsx)(`p`,{className:`text-[var(--color-text-muted)]`,children:e(`protocol.loading`)});if(b||!a)return(0,g.jsxs)(`div`,{role:`alert`,className:`p-4 rounded-[var(--radius-md)] bg-[var(--color-error-bg)] text-[var(--color-error)]`,children:[x instanceof Error?x.message:e(`protocol.notFound`),(0,g.jsx)(t,{to:`/`,className:`block mt-2 text-[var(--color-primary)] underline hover:no-underline focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`notFound.goHome`)})]});let{title:E,steps:D,triggers:O,completion:k}=s(a.content),A=E.replace(/[^a-zA-Z0-9]+/g,`-`).replace(/^-|-$/g,``)||`protocol`,j=()=>{let e=new Blob([a.content],{type:`text/markdown;charset=utf-8`}),t=URL.createObjectURL(e),n=document.createElement(`a`);n.href=t,n.download=`${A}.md`,n.click(),URL.revokeObjectURL(t)},M=async()=>{if(a?.uri){T(null),C(!0);try{let{blob:e,skill_bundle_manifest:t}=await d(a.uri),n=c(t,A);l(e,n)}catch(e){T(e instanceof Error?e.message:String(e))}finally{C(!1)}}},N=`min-h-[44px] min-w-[44px] inline-flex items-center justify-center px-4 py-2 rounded-[var(--radius-md)] font-medium border border-[var(--color-border)] text-[var(--color-text)] bg-[var(--color-surface)] no-underline hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`;return(0,g.jsxs)(`div`,{children:[(0,g.jsx)(`h1`,{className:`text-[var(--color-text-heading)] text-2xl font-semibold mb-1`,children:E}),(0,g.jsxs)(`div`,{className:`mb-4 flex flex-wrap items-center gap-2`,children:[(0,g.jsxs)(`p`,{className:`text-sm text-[var(--color-text-muted)] m-0`,children:[(0,g.jsxs)(`span`,{className:`sr-only`,children:[e(`protocol.uri`),`: `]}),(0,g.jsx)(`code`,{className:`break-all rounded bg-[var(--color-surface-elevated)] px-2 py-0.5 text-xs`,children:a.uri}),(0,g.jsxs)(`span`,{className:`ml-2`,children:[`· `,e(`protocol.readOnly`)]}),a.space_name!=null&&a.space_name.length>0?(0,g.jsxs)(`span`,{className:`ml-2 block w-full sm:inline sm:w-auto`,children:[`· `,e(`protocol.spaceLabel`),`: `,a.space_name]}):null]}),(0,g.jsx)(_,{value:a.uri,label:e(`protocol.copyUri`),className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center px-3 py-1.5 text-sm font-medium rounded-[var(--radius-md)] border border-[var(--color-border)] text-[var(--color-text)] bg-[var(--color-surface)] hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`})]}),(0,g.jsxs)(`div`,{className:`mb-6 flex flex-wrap gap-2`,children:[(0,g.jsx)(t,{to:`/protocols/${encodeURIComponent(a.uri)}/run`,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center px-4 py-2 rounded-[var(--radius-md)] font-medium bg-[var(--color-primary)] text-white no-underline hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`protocol.runGuided`)}),(0,g.jsx)(t,{to:`/protocols/${encodeURIComponent(a.uri)}/edit`,className:N,children:e(`protocol.edit`)}),(0,g.jsx)(t,{to:`/protocols/new`,className:N,children:e(`protocol.duplicate`)})]}),(0,g.jsxs)(`div`,{className:`mb-6 grid gap-4 xl:grid-cols-[1.6fr_1fr]`,children:[(0,g.jsx)(o,{title:e(`protocol.howToUse`),subtitle:e(`protocol.howToUseInProduct`),children:(0,g.jsxs)(`p`,{className:`text-sm text-[var(--color-text-muted)] m-0`,children:[e(`protocol.howToUseCopy`),` `,(0,g.jsx)(`a`,{href:`https://github.com/jakub-plichcinski/kairos-mcp#readme`,target:`_blank`,rel:`noopener noreferrer`,className:`text-[var(--color-primary)] underline hover:no-underline focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`protocol.docsLink`)})]})}),(0,g.jsx)(o,{title:e(`protocol.exportCardTitle`),subtitle:e(`protocol.exportCardSubtitle`),children:(0,g.jsxs)(`div`,{className:`w-full max-w-[22rem] rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-3`,children:[(0,g.jsx)(`div`,{className:`mb-2 text-sm font-medium text-[var(--color-text-heading)]`,children:e(`protocol.download`)}),(0,g.jsxs)(`button`,{type:`button`,onClick:j,className:`flex min-h-[44px] w-full items-center justify-between rounded-[var(--radius-md)] px-3 text-left text-sm text-[var(--color-text)] hover:bg-[var(--color-surface-elevated)]`,children:[(0,g.jsx)(`span`,{children:e(`protocol.downloadAsMarkdown`)}),(0,g.jsx)(`span`,{className:`text-[var(--color-text-muted)]`,children:`.md`})]}),(0,g.jsxs)(`button`,{type:`button`,onClick:()=>void M(),disabled:S,className:`mt-1 flex min-h-[44px] w-full items-center justify-between rounded-[var(--radius-md)] px-3 text-left text-sm text-[var(--color-text)] hover:bg-[var(--color-surface-elevated)] disabled:opacity-60`,children:[(0,g.jsx)(`span`,{children:e(`protocol.downloadAsSkill`)}),(0,g.jsx)(`span`,{className:`text-[var(--color-text-muted)]`,children:`.zip`})]}),w?(0,g.jsx)(`p`,{className:`mt-2 text-xs text-[var(--color-error)] m-0`,role:`alert`,children:w}):null,(0,g.jsxs)(t,{to:`/protocols/${encodeURIComponent(a.uri)}/skill`,className:`mt-1 flex min-h-[44px] w-full items-center justify-between rounded-[var(--radius-md)] px-3 text-left text-sm text-[var(--color-text)] no-underline hover:bg-[var(--color-surface-elevated)]`,children:[(0,g.jsx)(`span`,{children:e(`protocol.editAsSkill`)}),(0,g.jsx)(`span`,{className:`text-[var(--color-text-muted)]`,children:`bundle`})]}),(0,g.jsx)(`p`,{className:`mt-3 text-xs leading-5 text-[var(--color-text-muted)] m-0`,children:e(`protocol.exportFooter`)})]})})]}),(0,g.jsxs)(`section`,{className:`mb-6`,"aria-labelledby":`flow-heading`,children:[(0,g.jsx)(`h2`,{id:`flow-heading`,className:`mb-2 text-lg font-semibold text-[var(--color-text-heading)]`,children:e(`protocol.stepFlow`)}),(0,g.jsx)(m,{steps:D.map(e=>({label:e.label}))})]}),(0,g.jsxs)(`section`,{"aria-labelledby":`steps-heading`,className:`mb-6`,children:[(0,g.jsx)(`h2`,{id:`steps-heading`,className:`mb-2 text-lg font-semibold text-[var(--color-text-heading)]`,children:e(`protocol.steps`)}),(0,g.jsx)(`ul`,{className:`m-0 list-none divide-y divide-[var(--color-border)] rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-0`,children:D.map((e,t)=>{let n=v(e);return(0,g.jsxs)(`li`,{className:`p-4`,children:[(0,g.jsxs)(`strong`,{className:`block text-[var(--color-text-heading)]`,children:[t+1,`. `,e.label]}),(0,g.jsx)(`div`,{className:`mt-1 text-sm text-[var(--color-text-muted)] break-words`,children:e.summary}),(0,g.jsx)(`div`,{className:`mt-3`,children:(0,g.jsx)(f,{type:e.type,payload:e.challengePayload})}),n?(0,g.jsx)(`div`,{className:`mt-3 border-t border-[var(--color-border)] pt-3`,children:(0,g.jsx)(p,{content:n})}):null]},t)})})]}),(O||k)&&(0,g.jsxs)(`div`,{className:`grid gap-4 lg:grid-cols-2`,children:[O?(0,g.jsx)(o,{title:e(`protocol.triggers`),children:(0,g.jsx)(`div`,{className:`max-w-none text-sm text-[var(--color-text)]`,children:(0,g.jsx)(p,{content:O})})}):null,k?(0,g.jsx)(o,{title:e(`protocol.completion`),children:(0,g.jsx)(`div`,{className:`max-w-none text-sm text-[var(--color-text)]`,children:(0,g.jsx)(p,{content:k})})}):null]})]})}export{y as ProtocolDetailPage};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{a as t,m as n,p as r,t as i,y as a}from"./vendor-DGTQ2S8W.js";import{i as o,t as s}from"./react-CR5VJ85Q.js";import{t as c}from"./api-BgTb-tmJ.js";import{r as l,t as u}from"./SpaceSelect-DDhPkDXU.js";import{t as d}from"./SurfaceCard-CRidnDLP.js";import{a as f,i as p,n as m,o as h,r as g,s as _,t as v}from"./export-skill-zip-CIyOWxuI.js";import{t as y}from"./ChallengeCard-gY-n7rwI.js";import{t as b}from"./RichTextEditor-uun0UIVc.js";var x=e(o(),1),S=i().min(1,`Protocol content is required`).refine(e=>e.includes(`# `),`Protocol must have an H1 title`).refine(e=>/(^|\n)##\s+Activation Patterns\b/i.test(e),`Include an "Activation Patterns" section (H2)`).refine(e=>/(^|\n)##\s+Reward Signal\b/i.test(e),`Include a "Reward Signal" section (H2)`),C={label:`Step`,bodyMarkdown:`What the user or agent does in this step.`,type:`comment`,comment:{min_length:10}},w=[`shell`,`mcp`,`user_input`,`comment`],T=/^(?:kairos|squadrules):\/\/adapter\/[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,E=s();function D({t:e,fileInputRef:n,onUpload:r,isNew:i,decodedUri:a}){return(0,E.jsx)(d,{className:`mb-8`,title:e(`protocolEdit.importCardTitle`),subtitle:e(`protocolEdit.uploadHint`),children:(0,E.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,E.jsx)(`input`,{ref:n,type:`file`,accept:`.md,text/markdown`,onChange:r,className:`sr-only`,id:`protocol-upload`,"aria-label":e(`protocolEdit.upload`)}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>n.current?.click(),className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-2 text-sm font-medium text-[var(--color-text)] hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`protocolEdit.upload`)}),!i&&a&&(0,E.jsx)(t,{to:`/protocols/${encodeURIComponent(a)}/skill`,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-2 text-sm font-medium text-[var(--color-text)] no-underline hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`protocol.editAsSkill`)})]})})}function O({t:e,preview:n,skillFolderSlug:r,isNew:i,decodedUri:a}){let[o,s]=(0,x.useState)(!1),[c,l]=(0,x.useState)(null);return(0,E.jsxs)(`div`,{className:`space-y-4`,"aria-label":e(`protocolEdit.previewLabel`),children:[(0,E.jsxs)(d,{title:e(`protocolEdit.previewRenderedTitle`),subtitle:e(`protocolEdit.previewRenderedSubtitle`),children:[(0,E.jsx)(`div`,{className:`text-lg font-semibold text-[var(--color-text-heading)]`,children:n.title}),(0,E.jsx)(`div`,{className:`mt-3 space-y-3`,children:n.steps.length===0?(0,E.jsx)(`div`,{className:`text-sm text-[var(--color-text-muted)]`,children:e(`protocolEdit.previewNoSteps`)}):n.steps.slice(0,20).map((t,n)=>(0,E.jsxs)(`div`,{className:`rounded-[var(--radius-sm)] border border-[var(--color-border)] bg-[var(--color-surface)] p-3`,children:[(0,E.jsx)(`div`,{className:`font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.previewStepLine`,{n:n+1,label:t.label})}),(0,E.jsx)(`div`,{className:`mt-1 text-sm text-[var(--color-text-muted)]`,children:y[t.type]??t.type})]},`${t.label}:${n}`))}),(0,E.jsxs)(`div`,{className:`mt-4 border-t border-[var(--color-border)] pt-4 text-sm text-[var(--color-text-muted)]`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsxs)(`strong`,{className:`text-[var(--color-text-heading)]`,children:[e(`protocol.triggers`),`:`]}),` `,n.triggers?e(`protocolEdit.present`):e(`protocolEdit.missing`)]}),(0,E.jsxs)(`div`,{className:`mt-1`,children:[(0,E.jsxs)(`strong`,{className:`text-[var(--color-text-heading)]`,children:[e(`protocol.completion`),`:`]}),` `,n.completion?e(`protocolEdit.present`):e(`protocolEdit.missing`)]})]})]}),!i&&a?(0,E.jsxs)(d,{title:e(`protocolEdit.skillShortcutTitle`),subtitle:e(`protocolEdit.skillShortcutSubtitle`),children:[(0,E.jsxs)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-3`,children:[(0,E.jsxs)(`div`,{className:`font-medium text-[var(--color-text-heading)]`,children:[r,`-skill/`]}),(0,E.jsxs)(`div`,{className:`mt-2 font-mono text-sm text-[var(--color-text-muted)]`,children:[`Skill.md`,(0,E.jsx)(`br`,{}),`references/`,(0,E.jsx)(`br`,{}),`\xA0\xA0KAIROS.md`]})]}),(0,E.jsxs)(`div`,{className:`mt-3 flex flex-wrap gap-2`,children:[(0,E.jsx)(t,{to:`/protocols/${encodeURIComponent(a)}/skill`,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-2 text-sm font-medium text-[var(--color-text)] no-underline hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`protocol.editAsSkill`)}),(0,E.jsx)(`button`,{type:`button`,disabled:o,onClick:()=>{(async()=>{if(a){l(null),s(!0);try{let{blob:e,skill_bundle_manifest:t}=await v(a),n=m(t,r);g(e,n)}catch(e){l(e instanceof Error?e.message:String(e))}finally{s(!1)}}})()},className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center rounded-[var(--radius-md)] bg-[var(--color-primary)] px-4 py-2 text-sm font-medium text-white hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2 disabled:opacity-60`,children:e(`protocol.downloadAsSkill`)}),c?(0,E.jsx)(`p`,{className:`mt-2 m-0 text-xs text-[var(--color-error)]`,role:`alert`,children:c}):null]})]}):null]})}function k({t:e,isNew:t,spaces:n,spacesLoading:r,targetSpace:i,setTargetSpace:a,forkSourceUri:o,setForkSourceUri:s,moveSpace:c,setMoveSpace:l}){return(0,E.jsx)(`section`,{className:`mb-8 space-y-5 rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-5`,children:t?(0,E.jsxs)(E.Fragment,{children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{htmlFor:`protocol-target-space`,className:`mb-2 block font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.targetSpaceLabel`)}),(0,E.jsx)(u,{id:`protocol-target-space`,spaces:n,value:i,onChange:a,disabled:r}),(0,E.jsx)(`p`,{className:`mt-2 text-sm text-[var(--color-text-muted)]`,children:e(`protocolEdit.targetSpaceHint`)})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{htmlFor:`protocol-fork-source`,className:`mb-2 block font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.forkSourceLabel`)}),(0,E.jsx)(`input`,{id:`protocol-fork-source`,type:`text`,value:o,onChange:e=>s(e.target.value),placeholder:e(`protocolEdit.forkSourcePlaceholder`),autoComplete:`off`,className:`min-h-[44px] w-full max-w-2xl rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-3 text-sm text-[var(--color-text)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`}),(0,E.jsx)(`p`,{className:`mt-2 text-sm text-[var(--color-text-muted)]`,children:e(`protocolEdit.forkSourceHint`)})]})]}):(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{htmlFor:`protocol-move-space`,className:`mb-2 block font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.moveSpaceLabel`)}),(0,E.jsx)(u,{id:`protocol-move-space`,spaces:n,value:c,onChange:l,disabled:r}),(0,E.jsx)(`p`,{className:`mt-2 text-sm text-[var(--color-text-muted)]`,children:e(`protocolEdit.moveSpaceHint`)})]})})}var A=`min-h-[44px] w-full rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-3 text-sm text-[var(--color-text)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,j=`min-h-[44px] w-full rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] px-4 py-3 text-sm text-[var(--color-text)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`;function M({t:e,step:t,index:n,stepsLength:r,uploadKey:i,challengeTypeLabel:a,setStep:o,removeStep:s}){return(0,E.jsxs)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-5 space-y-5`,children:[(0,E.jsxs)(`div`,{className:`mb-4 flex flex-wrap items-center justify-between gap-2`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`div`,{className:`text-sm font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.stepHeading`,{n:n+1})}),(0,E.jsx)(`div`,{className:`text-sm text-[var(--color-text-muted)]`,children:e(`protocolEdit.stepEditorHint`)})]}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>s(n),disabled:r<=1,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-2 text-sm font-medium text-[var(--color-text)] hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2 disabled:opacity-50`,children:e(`protocolEdit.removeStep`)})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{className:`mb-2 block font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.stepLabel`)}),(0,E.jsx)(`input`,{type:`text`,value:t.label,onChange:e=>o(n,{label:e.target.value}),className:A})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`div`,{className:`mb-2 font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.challengeType`)}),(0,E.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:w.map(e=>(0,E.jsx)(`button`,{type:`button`,"aria-pressed":t.type===e,onClick:()=>o(n,{type:e,shell:e===`shell`?{cmd:t.shell?.cmd??``,timeout_seconds:t.shell?.timeout_seconds??30,interpreter:t.shell?.interpreter,workdir:t.shell?.workdir,flags:t.shell?.flags??[],args:t.shell?.args??[]}:void 0,mcp:e===`mcp`?{tool_name:t.mcp?.tool_name??``}:void 0,user_input:e===`user_input`?{prompt:t.user_input?.prompt??``}:void 0,comment:e===`comment`?{min_length:t.comment?.min_length??10}:void 0}),className:`min-h-[44px] rounded-[var(--radius-md)] px-4 text-sm font-medium ${t.type===e?`bg-[var(--color-primary)] text-white`:`border border-[var(--color-border)] bg-[var(--color-surface)] text-[var(--color-text)]`}`,children:a[e]},e))})]}),(0,E.jsx)(`div`,{children:(0,E.jsx)(b,{label:e(`protocolEdit.stepContent`),value:t.bodyMarkdown,onChange:e=>o(n,{bodyMarkdown:e}),contentKey:i})}),(0,E.jsxs)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-4`,children:[(0,E.jsx)(`div`,{className:`mb-3 text-sm font-medium text-[var(--color-text-heading)]`,children:`Challenge fields`}),(0,E.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2`,children:[t.type===`shell`&&(0,E.jsxs)(E.Fragment,{children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{className:`mb-2 block text-sm font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.shellCmd`)}),(0,E.jsx)(`input`,{type:`text`,value:t.shell?.cmd??``,onChange:e=>o(n,{shell:{cmd:e.target.value,timeout_seconds:t.shell?.timeout_seconds??30,interpreter:t.shell?.interpreter,workdir:t.shell?.workdir,flags:t.shell?.flags??[],args:t.shell?.args??[]}}),className:j})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{className:`mb-2 block text-sm font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.shellTimeout`)}),(0,E.jsx)(`input`,{type:`number`,min:1,value:t.shell?.timeout_seconds??30,onChange:e=>o(n,{shell:{cmd:t.shell?.cmd??``,timeout_seconds:Math.max(1,Number(e.target.value)||30),interpreter:t.shell?.interpreter,workdir:t.shell?.workdir,flags:t.shell?.flags??[],args:t.shell?.args??[]}}),className:j})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{className:`mb-2 block text-sm font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.shellInterpreter`)}),(0,E.jsx)(`input`,{type:`text`,value:t.shell?.interpreter??``,onChange:e=>o(n,{shell:{cmd:t.shell?.cmd??``,timeout_seconds:t.shell?.timeout_seconds??30,interpreter:e.target.value||void 0,workdir:t.shell?.workdir,flags:t.shell?.flags??[],args:t.shell?.args??[]}}),className:j})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{className:`mb-2 block text-sm font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.shellWorkdir`)}),(0,E.jsx)(`input`,{type:`text`,value:t.shell?.workdir??``,onChange:e=>o(n,{shell:{cmd:t.shell?.cmd??``,timeout_seconds:t.shell?.timeout_seconds??30,interpreter:t.shell?.interpreter,workdir:e.target.value||void 0,flags:t.shell?.flags??[],args:t.shell?.args??[]}}),className:j})]}),(0,E.jsxs)(`div`,{className:`sm:col-span-2`,children:[(0,E.jsx)(`label`,{className:`mb-2 block text-sm font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.shellFlags`)}),(0,E.jsx)(`textarea`,{rows:3,value:(t.shell?.flags??[]).join(`
|
|
2
|
+
`),onChange:e=>o(n,{shell:{cmd:t.shell?.cmd??``,timeout_seconds:t.shell?.timeout_seconds??30,interpreter:t.shell?.interpreter,workdir:t.shell?.workdir,flags:e.target.value.split(`
|
|
3
|
+
`).map(e=>e.trim()).filter(Boolean),args:t.shell?.args??[]}}),className:`w-full rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] px-4 py-3 text-sm text-[var(--color-text)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`})]}),(0,E.jsxs)(`div`,{className:`sm:col-span-2`,children:[(0,E.jsx)(`label`,{className:`mb-2 block text-sm font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.shellArgs`)}),(0,E.jsx)(`textarea`,{rows:3,value:(t.shell?.args??[]).join(`
|
|
4
|
+
`),onChange:e=>o(n,{shell:{cmd:t.shell?.cmd??``,timeout_seconds:t.shell?.timeout_seconds??30,interpreter:t.shell?.interpreter,workdir:t.shell?.workdir,flags:t.shell?.flags??[],args:e.target.value.split(`
|
|
5
|
+
`).map(e=>e.trim()).filter(Boolean)}}),className:`w-full rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] px-4 py-3 text-sm text-[var(--color-text)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`})]})]}),t.type===`mcp`&&(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{className:`mb-2 block text-sm font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.mcpToolName`)}),(0,E.jsx)(`input`,{type:`text`,value:t.mcp?.tool_name??``,onChange:e=>o(n,{mcp:{tool_name:e.target.value}}),className:j})]}),t.type===`user_input`&&(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{className:`mb-2 block text-sm font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.userInputPrompt`)}),(0,E.jsx)(`input`,{type:`text`,value:t.user_input?.prompt??``,onChange:e=>o(n,{user_input:{prompt:e.target.value}}),className:j})]}),t.type===`comment`&&(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{className:`mb-2 block text-sm font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.commentMinLength`)}),(0,E.jsx)(`input`,{type:`number`,min:1,value:t.comment?.min_length??10,onChange:e=>o(n,{comment:{min_length:Math.max(1,parseInt(e.target.value,10)||10)}}),className:j})]})]})]})]})}function N(){let{t:e}=a(),{uri:i}=n(),o=r(),s=i?decodeURIComponent(i):void 0,u=!s,{data:d,isLoading:m}=_(s,!u),[g,v]=(0,x.useState)({protocolLabel:``,triggersMarkdown:``,steps:[{...C}],completionMarkdown:``}),[y,w]=(0,x.useState)(()=>String(Date.now())),[A,j]=(0,x.useState)(!1),[N,P]=(0,x.useState)(null),[F,I]=(0,x.useState)(null),L=(0,x.useRef)(null),R=(0,x.useRef)(``),[z,B]=(0,x.useState)(``),[V,H]=(0,x.useState)(``),[U,W]=(0,x.useState)(``),{data:G,isLoading:K}=l(!0,{});(0,x.useEffect)(()=>{u&&(B(``),W(``))},[u]),(0,x.useEffect)(()=>{if(!u)return;let e=G?.spaces?.find(e=>e.type===`personal`);B(t=>t===``&&e?e.space_id:t)},[u,G?.spaces]),(0,x.useEffect)(()=>{if(u||!d)return;let e=typeof d.space_id==`string`?d.space_id.trim():``;R.current=e,H(e)},[u,d]),(0,x.useEffect)(()=>{if(d?.content)try{v(h(d.content)),w(String(Date.now()))}catch{v({protocolLabel:d.label||`Protocol`,triggersMarkdown:``,steps:[{...C}],completionMarkdown:``})}},[d]);let q=e=>{let t=e.target.files?.[0];if(!t)return;let n=new FileReader;n.onload=()=>{let e=typeof n.result==`string`?n.result:``;try{v(h(e)),w(String(Date.now())),I(null),P(null)}catch{P(`Could not parse the uploaded file. Use valid protocol markdown.`)}},n.readAsText(t,`UTF-8`),e.target.value=``},J=(e,t)=>{v(n=>({...n,[e]:t}))},Y=(e,t)=>{v(n=>({...n,steps:n.steps.map((n,r)=>r===e?typeof t==`function`?t(n):{...n,...t}:n)}))},X=()=>{v(e=>({...e,steps:[...e.steps,{...C,label:`Step ${e.steps.length+1}`}]}))},Z=e=>{v(t=>({...t,steps:t.steps.filter((t,n)=>n!==e)}))},Q=async t=>{t.preventDefault(),P(null),I(null);let n=p(g),r=S.safeParse(n);if(!r.success){I(r.error.issues[0]?.message??`Invalid`);return}let i=U.trim();if(i&&!T.test(i)){I(e(`protocolEdit.forkUriInvalid`));return}j(!0);try{if(u){let e=z.trim()||`personal`,t=await c(`/api/train`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({content:n,llm_model_id:`kairos-ui`,force_update:!1,space:e,...i?{source_adapter_uri:i}:{}})});if(!t.ok){let e=await t.json().catch(()=>({}));throw Error(e.message??t.statusText)}let r=await t.json(),a=r.items?.[0]?.adapter_uri,s=r.items?.[0]?.uri;o(a?`/protocols/${encodeURIComponent(a)}`:s?`/protocols/${encodeURIComponent(s)}`:`/`)}else{let e=R.current.trim(),t=V.trim(),r={uris:[s],content:[n]};t&&t!==e&&(r.space=t);let i=await c(`/api/tune`,{method:`POST`,body:JSON.stringify(r)});if(!i.ok){let e=await i.json().catch(()=>({}));throw Error(e.message??i.statusText)}o(`/protocols/${encodeURIComponent(s)}`)}}catch(e){P(e instanceof Error?e.message:String(e))}finally{j(!1)}},$=(()=>{try{return f(p(g))}catch{return{title:g.protocolLabel||`Protocol`,steps:[],triggers:``,completion:``}}})();if(!u&&m&&!d)return(0,E.jsx)(`p`,{className:`text-[var(--color-text-muted)]`,children:e(`protocol.loading`)});let ee={shell:e(`protocolEdit.challengeShell`),mcp:e(`protocolEdit.challengeMcp`),user_input:e(`protocolEdit.challengeUserInput`),comment:e(`protocolEdit.challengeComment`)},te=(g.protocolLabel.trim()||$.title||`skill`).replace(/[^a-zA-Z0-9]+/g,`-`).replace(/^-|-$/g,``).toLowerCase()||`skill`;return(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`h1`,{className:`mb-1 text-2xl font-semibold text-[var(--color-text-heading)]`,children:e(u?`protocolEdit.newTitle`:`protocolEdit.editTitle`)}),(0,E.jsx)(`p`,{className:`mb-6 text-sm text-[var(--color-text-muted)]`,children:e(`protocolEdit.hint`)}),(0,E.jsx)(k,{t:e,isNew:u,spaces:G?.spaces,spacesLoading:K,targetSpace:z,setTargetSpace:B,forkSourceUri:U,setForkSourceUri:W,moveSpace:V,setMoveSpace:H}),(0,E.jsx)(D,{t:e,fileInputRef:L,onUpload:q,isNew:u,decodedUri:s}),(0,E.jsx)(`form`,{onSubmit:Q,"aria-label":e(`protocolEdit.formLabel`),children:(0,E.jsxs)(`div`,{className:`mb-6 grid gap-6 xl:grid-cols-[1.45fr_1fr]`,children:[(0,E.jsxs)(`div`,{className:`space-y-6`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{htmlFor:`protocol-label`,className:`mb-2 block font-medium text-[var(--color-text-heading)]`,children:e(`protocolEdit.protocolLabel`)}),(0,E.jsx)(`input`,{id:`protocol-label`,type:`text`,value:g.protocolLabel,onChange:e=>J(`protocolLabel`,e.target.value),className:`min-h-[44px] w-full rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-3 text-sm text-[var(--color-text)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`})]}),(0,E.jsx)(b,{label:e(`protocolEdit.triggersLabel`),hint:e(`protocolEdit.triggersEditorHint`),value:g.triggersMarkdown,onChange:e=>J(`triggersMarkdown`,e),contentKey:y}),g.steps.map((t,n)=>(0,E.jsx)(M,{t:e,step:t,index:n,stepsLength:g.steps.length,uploadKey:y,challengeTypeLabel:ee,setStep:Y,removeStep:Z},n)),(0,E.jsx)(`button`,{type:`button`,onClick:X,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-2 text-sm font-medium text-[var(--color-text)] hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`protocolEdit.addStep`)}),(0,E.jsx)(b,{label:e(`protocolEdit.completionLabel`),value:g.completionMarkdown,onChange:e=>J(`completionMarkdown`,e),contentKey:y}),F&&(0,E.jsx)(`p`,{className:`text-sm text-[var(--color-error)]`,role:`alert`,children:F}),N&&(0,E.jsx)(`div`,{className:`rounded-[var(--radius-md)] bg-[var(--color-error-bg)] p-4 text-[var(--color-error)]`,role:`alert`,children:N}),(0,E.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,E.jsx)(`button`,{type:`submit`,disabled:A,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center rounded-[var(--radius-md)] bg-[var(--color-primary)] px-4 py-2 font-medium text-white hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2 disabled:opacity-60`,children:e(A?`protocolEdit.saving`:`protocolEdit.save`)}),(0,E.jsx)(t,{to:u?`/`:`/protocols/${encodeURIComponent(s)}`,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-2 font-medium text-[var(--color-text)] no-underline hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`protocolEdit.cancel`)})]})]}),(0,E.jsx)(O,{t:e,preview:$,skillFolderSlug:te,isNew:u,decodedUri:s})]})})]})}export{N as ProtocolEditPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,t as n}from"./react-CR5VJ85Q.js";import{a as r,c as i,i as a,l as o,n as s,o as c,r as l,s as u,t as d}from"./tiptap-74Cp-fci.js";var f=e(t(),1);function p(){return[c.configure({link:!1,heading:{levels:[2,3,4]}}),u.configure({openOnClick:!1,autolink:!1}),s.configure({resizable:!1}),r,l,a,d.configure({markedOptions:{gfm:!0,breaks:!1}})]}var m=n(),h=`min-h-[11rem] px-4 py-3 text-sm leading-6 text-[var(--color-text)] focus:outline-none prose prose-sm max-w-none [&_table]:my-3 [&_table]:w-full [&_table]:border-collapse [&_th]:border [&_th]:border-[var(--color-border)] [&_th]:bg-[var(--color-surface-elevated)] [&_th]:px-2 [&_th]:py-1.5 [&_td]:border [&_td]:border-[var(--color-border)] [&_td]:px-2 [&_td]:py-1.5`;function g({children:e,className:t=`h-4 w-4`}){return(0,m.jsx)(`svg`,{"aria-hidden":`true`,viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`,className:t,children:e})}function _(){return(0,m.jsxs)(g,{children:[(0,m.jsx)(`circle`,{cx:`3`,cy:`4`,r:`1`,fill:`currentColor`,stroke:`none`}),(0,m.jsx)(`circle`,{cx:`3`,cy:`8`,r:`1`,fill:`currentColor`,stroke:`none`}),(0,m.jsx)(`circle`,{cx:`3`,cy:`12`,r:`1`,fill:`currentColor`,stroke:`none`}),(0,m.jsx)(`path`,{d:`M6 4h7`}),(0,m.jsx)(`path`,{d:`M6 8h7`}),(0,m.jsx)(`path`,{d:`M6 12h7`})]})}function v(){return(0,m.jsxs)(g,{children:[(0,m.jsx)(`path`,{d:`M6 10L4.5 11.5a2.5 2.5 0 1 1-3.5-3.5L2.5 6.5`}),(0,m.jsx)(`path`,{d:`M10 6l1.5-1.5a2.5 2.5 0 1 1 3.5 3.5L13.5 9.5`}),(0,m.jsx)(`path`,{d:`M5.5 10.5l5-5`})]})}function y(){return(0,m.jsxs)(g,{children:[(0,m.jsx)(`path`,{d:`M5.5 5.5A2.5 2.5 0 0 0 3 8v2.5h3V8H4.5`}),(0,m.jsx)(`path`,{d:`M11.5 5.5A2.5 2.5 0 0 0 9 8v2.5h3V8h-1.5`})]})}function b(){return(0,m.jsxs)(g,{children:[(0,m.jsx)(`path`,{d:`M6 5.5l2 5-2 5`}),(0,m.jsx)(`path`,{d:`M10 5.5l2 5-2 5`})]})}function x(){return(0,m.jsxs)(g,{children:[(0,m.jsx)(`path`,{d:`M6 4L2.5 8L6 12`}),(0,m.jsx)(`path`,{d:`M10 4l3.5 4L10 12`}),(0,m.jsx)(`path`,{d:`M8.75 3.5L7.25 12.5`})]})}function S(){return(0,m.jsxs)(g,{children:[(0,m.jsx)(`path`,{d:`M2 3h12v2H2V3z`}),(0,m.jsx)(`path`,{d:`M2 7h12v1H2V7z`}),(0,m.jsx)(`path`,{d:`M2 11h12v1H2v-1z`}),(0,m.jsx)(`path`,{d:`M2 15h12v1H2v-1z`}),(0,m.jsx)(`path`,{d:`M2 4v11`}),(0,m.jsx)(`path`,{d:`M6 4v11`}),(0,m.jsx)(`path`,{d:`M10 4v11`}),(0,m.jsx)(`path`,{d:`M14 4v11`})]})}function C({label:e,ariaLabel:t,active:n,onClick:r}){return(0,m.jsx)(`button`,{type:`button`,"aria-label":t,title:t,onClick:r,className:`inline-flex min-h-[36px] min-w-[36px] items-center justify-center rounded-[var(--radius-sm)] border px-3 text-xs font-medium transition-colors ${n?`border-[var(--color-primary)] bg-[var(--color-primary)] text-white`:`border-[var(--color-border)] bg-[var(--color-surface)] text-[var(--color-text-muted)] hover:bg-[var(--color-surface)] hover:text-[var(--color-text)]`}`,children:e})}function w({editor:e}){return e?(0,m.jsxs)(`div`,{className:`flex flex-wrap gap-2 border-b border-[var(--color-border)] bg-[var(--color-surface-elevated)] px-3 py-2`,children:[(0,m.jsx)(C,{label:(0,m.jsx)(`span`,{className:`text-base leading-none`,children:`¶`}),ariaLabel:`Paragraph`,active:e.isActive(`paragraph`),onClick:()=>e.chain().focus().setParagraph().run()}),(0,m.jsx)(C,{label:(0,m.jsx)(`strong`,{className:`text-sm font-semibold`,children:`B`}),ariaLabel:`Bold`,active:e.isActive(`bold`),onClick:()=>e.chain().focus().toggleBold().run()}),(0,m.jsx)(C,{label:(0,m.jsx)(`em`,{className:`text-sm`,children:`I`}),ariaLabel:`Italic`,active:e.isActive(`italic`),onClick:()=>e.chain().focus().toggleItalic().run()}),(0,m.jsx)(C,{label:(0,m.jsx)(_,{}),ariaLabel:`Bullet list`,active:e.isActive(`bulletList`),onClick:()=>e.chain().focus().toggleBulletList().run()}),(0,m.jsx)(C,{label:(0,m.jsx)(`span`,{className:`text-sm font-semibold`,children:`1.`}),ariaLabel:`Numbered list`,active:e.isActive(`orderedList`),onClick:()=>e.chain().focus().toggleOrderedList().run()}),(0,m.jsx)(C,{label:(0,m.jsx)(v,{}),ariaLabel:`Link`,active:e.isActive(`link`),onClick:()=>{let t=e.getAttributes(`link`).href,n=window.prompt(`Enter URL`,t??`https://`);if(n==null)return;let r=n.trim();if(!r){e.chain().focus().unsetLink().run();return}e.chain().focus().extendMarkRange(`link`).setLink({href:r}).run()}}),(0,m.jsx)(C,{label:(0,m.jsx)(y,{}),ariaLabel:`Quote`,active:e.isActive(`blockquote`),onClick:()=>e.chain().focus().toggleBlockquote().run()}),(0,m.jsx)(C,{label:(0,m.jsx)(b,{}),ariaLabel:`Inline code`,active:e.isActive(`code`),onClick:()=>e.chain().focus().toggleCode().run()}),(0,m.jsx)(C,{label:(0,m.jsx)(x,{}),ariaLabel:`Code block`,active:e.isActive(`codeBlock`),onClick:()=>e.chain().focus().toggleCodeBlock().run()}),(0,m.jsx)(C,{label:(0,m.jsx)(S,{}),ariaLabel:`Insert table`,active:e.isActive(`table`),onClick:()=>e.chain().focus().insertTable({rows:3,cols:3,withHeaderRow:!0}).run()})]}):null}function T({value:e,onChange:t,label:n,hint:r,id:a,contentKey:s}){let c=(0,f.useRef)(s),l=(0,f.useRef)(null),u=(0,f.useRef)(e),d=(0,f.useRef)(t);u.current=e,d.current=t;let g=o({key:s??`default`,immediatelyRender:!1,extensions:p(),content:e,contentType:`markdown`,editorProps:{attributes:{class:h}},onUpdate:({editor:e})=>{let t=e.getMarkdown?.()??``;l.current=t,t!==u.current&&d.current(t)}});return(0,f.useEffect)(()=>{if(g){if(s!==c.current){c.current=s,l.current=e,g.commands.setContent(e,!1,{contentType:`markdown`});return}e!==l.current&&(l.current=e,g.commands.setContent(e,!1,{contentType:`markdown`}))}},[s,e,g]),(0,m.jsxs)(`div`,{children:[n&&(0,m.jsx)(`label`,{htmlFor:a,className:`mb-2 block font-medium text-[var(--color-text-heading)]`,children:n}),(0,m.jsxs)(`div`,{className:`overflow-hidden rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)]`,children:[(0,m.jsx)(w,{editor:g}),(0,m.jsx)(i,{editor:g})]}),r&&(0,m.jsx)(`p`,{className:`mt-2 text-sm text-[var(--color-text-muted)]`,children:r})]})}export{T as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{a as t,h as n,m as r,s as i,y as a}from"./vendor-DGTQ2S8W.js";import{i as o,t as s}from"./react-CR5VJ85Q.js";import{t as c}from"./api-BgTb-tmJ.js";import{t as l}from"./SurfaceCard-CRidnDLP.js";import{t as u}from"./ErrorAlert-BQMph5Nh.js";import{n as d}from"./ChallengeCard-gY-n7rwI.js";import{n as f,t as p}from"./StepFlowGraph-DsL5lsIq.js";import{n as m,t as h}from"./useRunSession-062hqhcN.js";var g=e(o(),1),_=s();function v(e){let t=e.trim();return t?JSON.parse(t):null}function y({contract:e,disabled:t,onSubmit:n}){let{t:r}=a(),i=e.type,[o,s]=(0,g.useState)(0),[c,l]=(0,g.useState)(``),[u,d]=(0,g.useState)(``),[f,p]=(0,g.useState)(``),m=e.mcp?.tool_name??``,[h,y]=(0,g.useState)(!0),[b,x]=(0,g.useState)(``),[S,C]=(0,g.useState)(``),w=e.user_input?.prompt??``,[T,E]=(0,g.useState)(``),D=e.comment?.min_length??10,[O,k]=(0,g.useState)(``),[A,j]=(0,g.useState)(null);(0,g.useEffect)(()=>{j(null),s(0),l(``),d(``),p(``),y(!0),x(``),C(``),E(``),k(``)},[i,m,w,D]);let M=(0,g.useMemo)(()=>i===`tensor`?f.trim().length>0:i===`shell`?Number.isFinite(o):i===`mcp`?m.trim().length>0:i===`user_input`?T.trim().length>0:i===`comment`&&O.trim().length>=D,[i,o,m,T,O,D]);return(0,_.jsxs)(`form`,{onSubmit:t=>{if(t.preventDefault(),j(null),M)try{if(i===`tensor`){let t=v(f);n({type:i,tensor:{name:e.tensor?.output.name??`tensor`,value:t}});return}if(i===`shell`){n({type:i,shell:{exit_code:o,...c.trim()?{stdout:c}:{},...u.trim()?{stderr:u}:{}}});return}if(i===`mcp`){let e=v(b),t=v(S);n({type:i,mcp:{tool_name:m,...e===null?{}:{arguments:e},result:t,success:h}});return}if(i===`user_input`){n({type:i,user_input:{confirmation:T.trim(),timestamp:new Date().toISOString()}});return}if(i===`comment`){n({type:i,comment:{text:O.trim()}});return}}catch(e){j(e instanceof Error?e.message:String(e))}},"aria-label":r(`run.solutionFormLabel`),children:[A&&(0,_.jsx)(`div`,{className:`mb-4 p-4 rounded-[var(--radius-md)] bg-[var(--color-error-bg)] text-[var(--color-error)]`,role:`alert`,children:A}),i===`shell`&&(0,_.jsxs)(`div`,{className:`space-y-4`,children:[(0,_.jsxs)(`div`,{children:[(0,_.jsx)(`label`,{htmlFor:`run-shell-exit-code`,className:`block font-medium text-[var(--color-text-heading)] mb-2`,children:r(`run.shell.exitCode`)}),(0,_.jsx)(`input`,{id:`run-shell-exit-code`,type:`number`,inputMode:`numeric`,value:o,onChange:e=>s(Number(e.target.value)),className:`w-full min-h-[44px] px-4 py-2 border border-[var(--color-border)] rounded-[var(--radius-md)] text-[var(--color-text)] bg-[var(--color-surface)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,disabled:t,required:!0})]}),(0,_.jsxs)(`div`,{children:[(0,_.jsx)(`label`,{htmlFor:`run-shell-stdout`,className:`block font-medium text-[var(--color-text-heading)] mb-2`,children:r(`run.shell.stdout`)}),(0,_.jsx)(`textarea`,{id:`run-shell-stdout`,value:c,onChange:e=>l(e.target.value),className:`w-full min-h-[8rem] px-4 py-3 border border-[var(--color-border)] rounded-[var(--radius-md)] text-[var(--color-text)] bg-[var(--color-surface)] font-mono text-sm resize-y`,disabled:t})]}),(0,_.jsxs)(`div`,{children:[(0,_.jsx)(`label`,{htmlFor:`run-shell-stderr`,className:`block font-medium text-[var(--color-text-heading)] mb-2`,children:r(`run.shell.stderr`)}),(0,_.jsx)(`textarea`,{id:`run-shell-stderr`,value:u,onChange:e=>d(e.target.value),className:`w-full min-h-[6rem] px-4 py-3 border border-[var(--color-border)] rounded-[var(--radius-md)] text-[var(--color-text)] bg-[var(--color-surface)] font-mono text-sm resize-y`,disabled:t})]})]}),i===`tensor`&&(0,_.jsxs)(`div`,{className:`space-y-4`,children:[(0,_.jsxs)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-4`,children:[(0,_.jsx)(`div`,{className:`text-sm text-[var(--color-text-muted)]`,children:`Output tensor`}),(0,_.jsxs)(`div`,{className:`font-medium text-[var(--color-text-heading)]`,children:[e.tensor?.output.name??`tensor`,` (`,e.tensor?.output.type??`unknown`,`)`]}),e.tensor?.required_inputs?.length?(0,_.jsxs)(`div`,{className:`text-sm text-[var(--color-text-muted)] mt-2`,children:[`Required inputs: `,e.tensor.required_inputs.join(`, `)]}):null]}),(0,_.jsxs)(`div`,{children:[(0,_.jsx)(`label`,{htmlFor:`run-tensor-value`,className:`block font-medium text-[var(--color-text-heading)] mb-2`,children:`Tensor value (JSON)`}),(0,_.jsx)(`textarea`,{id:`run-tensor-value`,value:f,onChange:e=>p(e.target.value),placeholder:`"example string" or ["item1", "item2"]`,className:`w-full min-h-[10rem] px-4 py-3 border border-[var(--color-border)] rounded-[var(--radius-md)] text-[var(--color-text)] bg-[var(--color-surface)] font-mono text-sm resize-y`,disabled:t,required:!0})]})]}),i===`mcp`&&(0,_.jsxs)(`div`,{className:`space-y-4`,children:[(0,_.jsxs)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-4`,children:[(0,_.jsx)(`div`,{className:`text-sm text-[var(--color-text-muted)]`,children:r(`run.mcp.toolName`)}),(0,_.jsx)(`div`,{className:`font-medium text-[var(--color-text-heading)] break-all`,children:m||r(`run.mcp.toolMissing`)})]}),(0,_.jsxs)(`label`,{className:`inline-flex items-center gap-2 min-h-[44px]`,children:[(0,_.jsx)(`input`,{type:`checkbox`,checked:h,onChange:e=>y(e.target.checked),disabled:t,className:`h-4 w-4`}),(0,_.jsx)(`span`,{className:`text-sm text-[var(--color-text)]`,children:r(`run.mcp.success`)})]}),(0,_.jsxs)(`div`,{children:[(0,_.jsx)(`label`,{htmlFor:`run-mcp-args`,className:`block font-medium text-[var(--color-text-heading)] mb-2`,children:r(`run.mcp.arguments`)}),(0,_.jsx)(`textarea`,{id:`run-mcp-args`,value:b,onChange:e=>x(e.target.value),placeholder:`{ "example": true }`,className:`w-full min-h-[6rem] px-4 py-3 border border-[var(--color-border)] rounded-[var(--radius-md)] text-[var(--color-text)] bg-[var(--color-surface)] font-mono text-sm resize-y`,disabled:t})]}),(0,_.jsxs)(`div`,{children:[(0,_.jsx)(`label`,{htmlFor:`run-mcp-result`,className:`block font-medium text-[var(--color-text-heading)] mb-2`,children:r(`run.mcp.result`)}),(0,_.jsx)(`textarea`,{id:`run-mcp-result`,value:S,onChange:e=>C(e.target.value),placeholder:`{ "ok": true }`,className:`w-full min-h-[10rem] px-4 py-3 border border-[var(--color-border)] rounded-[var(--radius-md)] text-[var(--color-text)] bg-[var(--color-surface)] font-mono text-sm resize-y`,disabled:t,required:!0})]})]}),i===`user_input`&&(0,_.jsxs)(`div`,{className:`space-y-4`,children:[(0,_.jsxs)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-4`,children:[(0,_.jsx)(`div`,{className:`text-sm text-[var(--color-text-muted)]`,children:r(`run.userInput.prompt`)}),(0,_.jsx)(`div`,{className:`font-medium text-[var(--color-text-heading)]`,children:w||r(`run.userInput.promptMissing`)})]}),(0,_.jsxs)(`div`,{children:[(0,_.jsx)(`label`,{htmlFor:`run-user-confirmation`,className:`block font-medium text-[var(--color-text-heading)] mb-2`,children:r(`run.userInput.confirmation`)}),(0,_.jsx)(`textarea`,{id:`run-user-confirmation`,value:T,onChange:e=>E(e.target.value),className:`w-full min-h-[6rem] px-4 py-3 border border-[var(--color-border)] rounded-[var(--radius-md)] text-[var(--color-text)] bg-[var(--color-surface)] resize-y`,disabled:t,required:!0})]})]}),i===`comment`&&(0,_.jsxs)(`div`,{className:`space-y-2`,children:[(0,_.jsxs)(`div`,{className:`text-sm text-[var(--color-text-muted)]`,children:[r(`run.comment.minLength`,{count:D}),` · `,r(`run.comment.count`,{count:O.length})]}),(0,_.jsxs)(`div`,{children:[(0,_.jsx)(`label`,{htmlFor:`run-comment-text`,className:`block font-medium text-[var(--color-text-heading)] mb-2`,children:r(`run.comment.text`)}),(0,_.jsx)(`textarea`,{id:`run-comment-text`,value:O,onChange:e=>k(e.target.value),className:`w-full min-h-[10rem] px-4 py-3 border border-[var(--color-border)] rounded-[var(--radius-md)] text-[var(--color-text)] bg-[var(--color-surface)] resize-y`,disabled:t,required:!0,"aria-invalid":O.trim().length>0&&O.trim().length<D})]})]}),(0,_.jsx)(`button`,{type:`submit`,disabled:t||!M,className:`mt-4 min-h-[44px] min-w-[44px] px-4 py-2 rounded-[var(--radius-md)] font-medium bg-[var(--color-primary)] text-white border-0 cursor-pointer disabled:opacity-60 disabled:cursor-not-allowed hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:r(`run.submitStep`)})]})}function b(e){let t=e.type;if(t===`shell`){let t=e.shell?.cmd;return{type:`shell`,...t?{payload:{cmd:t}}:{}}}if(t===`mcp`){let t=e.mcp?.tool_name,n=e.mcp?.arguments,r=n!==void 0&&typeof n==`object`&&!!n&&!Array.isArray(n);return{type:`mcp`,...t||r?{payload:{...t?{tool_name:t}:{},...r?{arguments:n}:{}}}:{}}}if(t===`user_input`){let t=e.user_input?.prompt;return{type:`user_input`,...t?{payload:{prompt:t}}:{}}}if(t===`comment`){let t=e.comment?.min_length;return{type:`comment`,...t==null?{}:{payload:{min_length:t}}}}return{type:t}}function x(e,t){let n=e.history.length,r=e.status===`running`,i=!!e.current_layer,a=e.status===`ready_to_reward`||e.status===`completed`||e.status===`error`,o=a?Math.max(n,1):Math.max(n+(r&&i?1:0),+!!r)||1;return{flowSteps:Array.from({length:o},(e,n)=>({label:t(n+1)})),currentFlowIndex:r&&i?n:void 0,displayCurrent:r&&i?n+1:a?o:Math.max(n,1),displayTotal:o}}function S({run:e,rewardOutcome:t,setRewardOutcome:n,rewardFeedback:r,setRewardFeedback:i,copyStatus:o,onCopy:s,onSubmitStep:c,onReward:l,isForwardStepPending:u,isForwardStartPending:m,isRewardPending:h}){let{t:g}=a(),{flowSteps:v,currentFlowIndex:S,displayCurrent:C,displayTotal:w}=x(e,e=>g(`run.flowStepN`,{n:e})),T=b(e.contract);return(0,_.jsxs)(_.Fragment,{children:[(0,_.jsxs)(`section`,{className:`mb-6`,"aria-labelledby":`run-flow-heading`,children:[(0,_.jsx)(`h2`,{id:`run-flow-heading`,className:`mb-2 text-lg font-semibold text-[var(--color-text-heading)]`,children:g(`run.progressHeading`)}),(0,_.jsx)(p,{steps:v,currentIndex:S})]}),(0,_.jsxs)(`div`,{className:`mb-4 flex flex-wrap items-center gap-2 text-sm text-[var(--color-text-muted)]`,role:`status`,children:[(0,_.jsx)(`span`,{className:`font-medium text-[var(--color-text-heading)]`,children:g(`run.stepProgress`,{current:C,total:w})}),(0,_.jsx)(`span`,{"aria-hidden":!0,children:`·`}),(0,_.jsx)(`span`,{children:g(`run.sessionBadge`)})]}),e.last_message&&(0,_.jsxs)(`div`,{className:`mb-4 rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-4`,role:`status`,"aria-live":`polite`,children:[(0,_.jsx)(`div`,{className:`text-sm text-[var(--color-text-muted)]`,children:g(`run.serverMessage`)}),(0,_.jsx)(`div`,{className:`text-[var(--color-text)]`,children:e.last_message})]}),(0,_.jsxs)(`section`,{"aria-labelledby":`run-current-step`,className:`mb-6`,children:[(0,_.jsx)(`h2`,{id:`run-current-step`,className:`mb-2 text-lg font-semibold text-[var(--color-text-heading)]`,children:g(`run.currentStepHeading`)}),(0,_.jsx)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-4`,children:e.current_layer?(0,_.jsxs)(_.Fragment,{children:[(0,_.jsxs)(`div`,{className:`mb-2 text-sm text-[var(--color-text-muted)]`,children:[g(`run.layerUri`),`: `,(0,_.jsx)(`span`,{className:`font-mono break-all`,children:e.current_layer.uri})]}),e.current_layer.content?(0,_.jsx)(`div`,{className:`prose prose-sm max-w-none text-[var(--color-text)]`,children:(0,_.jsx)(f,{content:e.current_layer.content})}):(0,_.jsx)(`p`,{className:`m-0 text-sm text-[var(--color-text-muted)]`,children:g(`run.noLayerContent`)})]}):(0,_.jsx)(`p`,{className:`m-0 text-sm text-[var(--color-text-muted)]`,children:g(`run.noLayerContent`)})})]}),(0,_.jsxs)(`section`,{"aria-labelledby":`run-challenge`,className:`mb-6`,children:[(0,_.jsx)(`h2`,{id:`run-challenge`,className:`mb-2 text-lg font-semibold text-[var(--color-text-heading)]`,children:g(`run.challengeHeading`)}),(0,_.jsx)(d,{type:T.type,payload:T.payload}),e.contract.type===`shell`&&e.contract.shell?.cmd&&(0,_.jsxs)(`div`,{className:`mt-2`,children:[(0,_.jsx)(`button`,{type:`button`,onClick:()=>s(e.contract.shell.cmd),className:`min-h-[44px] min-w-[44px] rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-2 text-sm font-medium text-[var(--color-text)] hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:g(`run.copyShellCommand`)}),o?(0,_.jsx)(`div`,{className:`mt-2 text-xs text-[var(--color-text-muted)]`,children:o}):null]}),(0,_.jsxs)(`details`,{className:`mt-4 text-sm`,children:[(0,_.jsx)(`summary`,{className:`cursor-pointer text-[var(--color-primary)]`,children:g(`run.advanced`)}),(0,_.jsxs)(`div`,{className:`mt-2 space-y-2 text-[var(--color-text-muted)]`,children:[(0,_.jsxs)(`div`,{children:[(0,_.jsx)(`span`,{className:`text-[var(--color-text-muted)]`,children:g(`run.contractType`)}),`:`,` `,(0,_.jsx)(`span`,{className:`font-medium text-[var(--color-text-heading)]`,children:e.contract.type})]}),e.contract.description&&(0,_.jsx)(`p`,{className:`m-0 text-sm`,children:e.contract.description}),e.contract.nonce&&(0,_.jsxs)(`div`,{children:[g(`run.nonce`),`: `,(0,_.jsx)(`span`,{className:`font-mono break-all`,children:e.contract.nonce})]}),e.contract.proof_hash&&(0,_.jsxs)(`div`,{children:[g(`run.proofHash`),`: `,(0,_.jsx)(`span`,{className:`font-mono break-all`,children:e.contract.proof_hash})]}),e.previous_proof_hash&&(0,_.jsxs)(`div`,{children:[g(`run.previousProofHash`),`: `,(0,_.jsx)(`span`,{className:`font-mono break-all`,children:e.previous_proof_hash})]})]})]}),e.contract.type===`tensor`&&(0,_.jsxs)(`div`,{className:`mt-4 rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-4`,children:[(0,_.jsx)(`div`,{className:`text-sm text-[var(--color-text-muted)]`,children:`Tensor output`}),(0,_.jsxs)(`div`,{className:`font-medium text-[var(--color-text-heading)]`,children:[e.contract.tensor?.output.name??`tensor`,` (`,e.contract.tensor?.output.type??`unknown`,`)`]}),e.contract.tensor?.required_inputs?.length?(0,_.jsxs)(`div`,{className:`mt-2 text-sm text-[var(--color-text-muted)]`,children:[`Required inputs: `,e.contract.tensor.required_inputs.join(`, `)]}):null]})]}),e.status!==`completed`&&e.status!==`ready_to_reward`&&(0,_.jsxs)(`section`,{"aria-labelledby":`run-solution`,className:`mb-6`,children:[(0,_.jsx)(`h2`,{id:`run-solution`,className:`mb-2 text-lg font-semibold text-[var(--color-text-heading)]`,children:g(`run.solution`)}),(0,_.jsx)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-4`,children:(0,_.jsx)(y,{contract:e.contract,disabled:u||m,onSubmit:c})})]}),e.status===`ready_to_reward`&&(0,_.jsxs)(`section`,{"aria-labelledby":`run-reward`,className:`mb-6`,children:[(0,_.jsx)(`h2`,{id:`run-reward`,className:`mb-2 text-lg font-semibold text-[var(--color-text-heading)]`,children:g(`run.reward.title`)}),(0,_.jsxs)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-4`,children:[(0,_.jsx)(`div`,{className:`mb-4 text-sm text-[var(--color-text-muted)]`,children:g(`run.reward.subtitle`)}),(0,_.jsxs)(`div`,{className:`mb-4 flex flex-wrap gap-4`,role:`radiogroup`,"aria-label":g(`run.reward.outcomeLabel`),children:[(0,_.jsxs)(`label`,{className:`inline-flex min-h-[44px] items-center gap-2`,children:[(0,_.jsx)(`input`,{type:`radio`,name:`reward-outcome`,value:`success`,checked:t===`success`,onChange:()=>n(`success`)}),(0,_.jsx)(`span`,{className:`text-sm text-[var(--color-text)]`,children:g(`run.reward.success`)})]}),(0,_.jsxs)(`label`,{className:`inline-flex min-h-[44px] items-center gap-2`,children:[(0,_.jsx)(`input`,{type:`radio`,name:`reward-outcome`,value:`failure`,checked:t===`failure`,onChange:()=>n(`failure`)}),(0,_.jsx)(`span`,{className:`text-sm text-[var(--color-text)]`,children:g(`run.reward.failure`)})]})]}),(0,_.jsxs)(`div`,{className:`mb-4`,children:[(0,_.jsx)(`label`,{htmlFor:`run-reward-feedback`,className:`mb-2 block font-medium text-[var(--color-text-heading)]`,children:g(`run.reward.feedback`)}),(0,_.jsx)(`textarea`,{id:`run-reward-feedback`,value:r,onChange:e=>i(e.target.value),className:`min-h-[8rem] w-full resize-y rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-3 text-[var(--color-text)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`})]}),(0,_.jsx)(`button`,{type:`button`,onClick:l,disabled:h,className:`min-h-[44px] min-w-[44px] cursor-pointer rounded-[var(--radius-md)] border-0 bg-[var(--color-primary)] px-4 py-2 font-medium text-white hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2 disabled:cursor-not-allowed disabled:opacity-60`,children:g(h?`run.reward.submitting`:`run.reward.submit`)})]})]}),e.history.length>0&&(0,_.jsxs)(`section`,{"aria-labelledby":`run-history`,className:`mb-6`,children:[(0,_.jsx)(`h2`,{id:`run-history`,className:`mb-2 text-lg font-semibold text-[var(--color-text-heading)]`,children:g(`run.history`)}),(0,_.jsx)(`ul`,{className:`m-0 list-none space-y-2 p-0`,"aria-label":g(`run.historyLabel`),children:e.history.slice().reverse().map((e,t)=>(0,_.jsxs)(`li`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-4`,children:[(0,_.jsxs)(`div`,{className:`text-sm text-[var(--color-text-muted)]`,children:[new Date(e.submitted_at).toLocaleString(),` · `,e.contract.type,` ·`,` `,(0,_.jsx)(`span`,{className:`font-mono break-all`,children:e.layer.uri})]}),e.server_message&&(0,_.jsx)(`div`,{className:`mt-1 text-sm text-[var(--color-text)]`,children:e.server_message})]},`${e.layer.uri}:${t}`))})]}),e.status===`completed`&&(0,_.jsxs)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--status-success-bg)] p-4 text-[var(--status-success-fg)]`,children:[(0,_.jsx)(`strong`,{className:`block`,children:g(`run.completed`)}),e.last_message&&(0,_.jsx)(`div`,{className:`mt-1 text-sm`,children:e.last_message})]})]})}async function C(e){let t=await c(`/api/forward`,{method:`POST`,body:JSON.stringify({uri:e})});if(!t.ok){let e=await t.json().catch(()=>({}));throw Error(e.message??t.statusText)}return await t.json()}function w(){return n({mutationFn:e=>C(e)})}async function T(e){let t=await c(`/api/forward`,{method:`POST`,body:JSON.stringify(e)});if(!t.ok){let e=await t.json().catch(()=>({}));throw Error(e.message??t.statusText)}return await t.json()}function E(){return n({mutationFn:e=>T(e)})}async function D(e){let t=await c(`/api/reward`,{method:`POST`,body:JSON.stringify(e)});if(!t.ok){let e=await t.json().catch(()=>({}));throw Error(e.message??t.statusText)}return await t.json()}function O(){return n({mutationFn:e=>D(e)})}function k(e){if(e)return e.match(/(?:kairos|squadrules):\/\/layer\/[0-9a-fA-F-]{36}(?:\?execution_id=[0-9a-fA-F-]{36})?/)?.[0]}function A(){return new Date().toISOString()}function j(){let{t:e}=a(),{uri:n}=r(),[o]=i(),s=n?decodeURIComponent(n):void 0,c=o.get(`session`),{session:d}=h(c),{upsert:f}=m(),p=w(),v=E(),y=O(),[b,x]=(0,g.useState)(null),[C,T]=(0,g.useState)(`success`),[D,j]=(0,g.useState)(``),[M,N]=(0,g.useState)(null);(0,g.useEffect)(()=>{d&&!b&&(x(d),T(`success`),j(``))},[d,b]);let P=e=>{x(e),f(e)},F=async()=>{if(s)try{let e=await p.mutateAsync(s),t=A(),n=`${s}:${t}`,r=e.next_action?.includes(`reward`)?`ready_to_reward`:`running`,i=k(e.next_action);P({id:n,adapter_uri:s,started_at:t,updated_at:t,status:r,current_layer:e.current_layer??null,contract:e.contract,next_action:e.next_action,last_message:e.message,previous_proof_hash:e.proof_hash,reward_uri:r===`ready_to_reward`?i:void 0,history:[]})}catch{x(null)}};return s?(0,_.jsxs)(`div`,{children:[(0,_.jsx)(`h1`,{className:`text-[var(--color-text-heading)] text-2xl font-semibold mb-1`,children:e(`run.title`)}),(0,_.jsx)(`p`,{className:`mb-4 text-sm text-[var(--color-text-muted)]`,children:e(`run.guidedIntro`)}),(0,_.jsxs)(`p`,{className:`mb-4 text-sm text-[var(--color-text-muted)]`,children:[e(`run.adapterUri`),`: `,(0,_.jsx)(`span`,{className:`font-mono break-all`,children:s})]}),(0,_.jsxs)(`div`,{className:`flex flex-wrap gap-2 mb-6`,children:[(0,_.jsx)(t,{to:`/protocols/${encodeURIComponent(s)}`,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center px-4 py-2 rounded-[var(--radius-md)] font-medium border border-[var(--color-border)] text-[var(--color-text)] no-underline hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`run.backToProtocol`)}),!b&&(0,_.jsx)(`button`,{type:`button`,onClick:F,disabled:p.isPending,className:`min-h-[44px] min-w-[44px] px-4 py-2 rounded-[var(--radius-md)] font-medium bg-[var(--color-primary)] text-white border-0 cursor-pointer disabled:opacity-60 disabled:cursor-not-allowed hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:p.isPending?e(`run.starting`):e(`run.start`)})]}),(0,_.jsx)(l,{className:`mb-6`,title:e(`run.safety.title`),children:(0,_.jsx)(`p`,{className:`m-0 text-sm text-[var(--color-text-muted)]`,children:e(`run.safety.copy`)})}),p.isError&&(0,_.jsx)(u,{message:p.error instanceof Error?p.error.message:String(p.error),onRetry:()=>F(),showGoBack:!0}),b?.status===`error`&&b.last_message&&(0,_.jsx)(`div`,{className:`mb-6`,children:(0,_.jsx)(u,{message:b.last_message,onRetry:()=>F(),showGoBack:!0})}),b&&b.status!==`error`&&(0,_.jsx)(S,{run:b,rewardOutcome:C,setRewardOutcome:T,rewardFeedback:D,setRewardFeedback:j,copyStatus:M,onCopy:async t=>{N(null);try{await navigator.clipboard.writeText(t),N(e(`run.copied`)),setTimeout(()=>N(null),1500)}catch(e){N(e instanceof Error?e.message:String(e))}},onSubmitStep:async e=>{if(!b?.current_layer)return;let t=b.contract.nonce,n=b.previous_proof_hash??b.contract.proof_hash,r={...e,...t?{nonce:t}:{},...n?{proof_hash:n}:{}};try{let e=await v.mutateAsync({uri:b.current_layer.uri,solution:r}),t=A(),n=e.next_action?.includes(`reward`)||(e.message?.toLowerCase().includes(`call reward`)??!1),i=k(e.next_action)??b.reward_uri;P({...b,updated_at:t,status:n?`ready_to_reward`:`running`,current_layer:e.current_layer??null,contract:e.contract,next_action:e.next_action,last_message:e.message,previous_proof_hash:e.proof_hash??b.previous_proof_hash,reward_uri:n?i:void 0,history:[...b.history,{layer:b.current_layer,contract:b.contract,solution:r,submitted_at:t,proof_hash:e.proof_hash,server_message:e.message}]})}catch(e){P({...b,updated_at:A(),status:`error`,last_message:e instanceof Error?e.message:String(e)})}},onReward:async()=>{if(!b)return;let t=b.reward_uri??b.current_layer?.uri;if(t)try{let n=await y.mutateAsync({uri:t,outcome:C,feedback:D.trim()||e(`run.reward.defaultFeedback`)});P({...b,updated_at:A(),status:`completed`,last_message:n.results[0]?.feedback??b.last_message})}catch(e){P({...b,updated_at:A(),status:`error`,last_message:e instanceof Error?e.message:String(e)})}},isForwardStepPending:v.isPending,isForwardStartPending:p.isPending,isRewardPending:y.isPending})]}):(0,_.jsx)(u,{message:e(`run.missingUri`),showGoBack:!0})}export{j as RunGuidedPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e,y as t}from"./vendor-DGTQ2S8W.js";import{t as n}from"./react-CR5VJ85Q.js";import{n as r}from"./useRunSession-062hqhcN.js";var i=n();function a(){let{t:n}=t(),{sessions:a,remove:o}=r();return(0,i.jsxs)(`div`,{children:[(0,i.jsx)(`h1`,{className:`text-[var(--color-text-heading)] text-2xl font-semibold mb-1`,children:n(`runs.title`)}),(0,i.jsx)(`p`,{className:`text-sm text-[var(--color-text-muted)] mb-6`,children:n(`runs.subtitle`)}),a.length===0?(0,i.jsx)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-6`,children:(0,i.jsx)(`p`,{className:`text-[var(--color-text-muted)]`,children:n(`runs.empty`)})}):(0,i.jsx)(`ul`,{className:`list-none p-0 m-0 space-y-3`,"aria-label":n(`runs.listLabel`),children:a.map(t=>(0,i.jsxs)(`li`,{className:`flex flex-col gap-3 rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-4 sm:flex-row sm:items-start sm:justify-between`,children:[(0,i.jsxs)(`div`,{className:`min-w-0`,children:[(0,i.jsx)(`div`,{className:`font-medium text-[var(--color-text-heading)] truncate`,children:t.adapter_uri}),(0,i.jsxs)(`div`,{className:`text-sm text-[var(--color-text-muted)] mt-1`,children:[n(`runs.status`),`: `,t.status,` · `,n(`runs.updated`),`: `,new Date(t.updated_at).toLocaleString(),` · `,n(`runs.stepsDone`,{count:t.history.length})]}),t.last_message&&(0,i.jsx)(`div`,{className:`text-sm text-[var(--color-text-muted)] mt-1`,children:t.last_message})]}),(0,i.jsxs)(`div`,{className:`flex flex-wrap gap-2 flex-shrink-0`,children:[(0,i.jsx)(e,{to:`/protocols/${encodeURIComponent(t.adapter_uri)}/run?session=${encodeURIComponent(t.id)}`,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center px-4 py-2 rounded-[var(--radius-md)] font-medium bg-[var(--color-primary)] text-white no-underline hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:n(`runs.resume`)}),(0,i.jsx)(`button`,{type:`button`,onClick:()=>o(t.id),className:`min-h-[44px] min-w-[44px] px-4 py-2 rounded-[var(--radius-md)] font-medium border border-[var(--color-border)] text-[var(--color-text)] bg-transparent hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:n(`runs.remove`)})]})]},t.id))})]})}export{a as RunsPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{a as t,m as n,y as r}from"./vendor-DGTQ2S8W.js";import{i,t as a}from"./react-CR5VJ85Q.js";import{t as o}from"./SurfaceCard-CRidnDLP.js";import{a as s,n as c,r as l,s as u,t as d}from"./export-skill-zip-CIyOWxuI.js";import{t as f}from"./RichTextEditor-uun0UIVc.js";var p=e(i(),1),m=a();function h(e){return`min-h-[44px] rounded-full px-4 text-sm font-medium ${e?`bg-[var(--color-primary)] text-white`:`border border-[var(--color-border)] bg-[var(--color-surface)] text-[var(--color-text)]`}`}function g(){let{t:e}=r(),{uri:i}=n(),{data:a,isLoading:g,isError:_,error:v}=u(i?decodeURIComponent(i):void 0,!0),[y,b]=(0,p.useState)(``),[x,S]=(0,p.useState)(``),[C,w]=(0,p.useState)(``),[T,E]=(0,p.useState)(!0),[D,O]=(0,p.useState)(!1),[k,A]=(0,p.useState)(null);if(g&&!a)return(0,m.jsx)(`p`,{className:`text-[var(--color-text-muted)]`,children:e(`protocol.loading`)});if(_||!a)return(0,m.jsxs)(`div`,{role:`alert`,className:`rounded-[var(--radius-md)] bg-[var(--color-error-bg)] p-4 text-[var(--color-error)]`,children:[v instanceof Error?v.message:e(`protocol.notFound`),(0,m.jsx)(t,{to:`/`,className:`mt-2 block text-[var(--color-primary)] underline hover:no-underline focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`notFound.goHome`)})]});let{title:j}=s(a.content),M=(y.trim()||j).replace(/[^a-zA-Z0-9]+/g,`-`).replace(/^-|-$/g,``)||`skill`,N=`${M}-skill`,P=async()=>{A(null),O(!0);try{let{blob:e,skill_bundle_manifest:t}=await d(a.uri),n=c(t,M);l(e,n)}catch(e){A(e instanceof Error?e.message:String(e))}finally{O(!1)}};return(0,m.jsxs)(`div`,{children:[(0,m.jsx)(`h1`,{className:`mb-1 text-2xl font-semibold text-[var(--color-text-heading)]`,children:e(`skill.title`)}),(0,m.jsx)(`p`,{className:`mb-6 text-sm text-[var(--color-text-muted)]`,children:e(`skill.subtitle`)}),(0,m.jsxs)(`div`,{className:`grid gap-4 xl:grid-cols-[1.3fr_1fr]`,children:[(0,m.jsxs)(`div`,{className:`space-y-4`,children:[(0,m.jsxs)(`div`,{children:[(0,m.jsx)(`label`,{htmlFor:`skill-name`,className:`mb-2 block font-medium text-[var(--color-text-heading)]`,children:e(`skill.skillName`)}),(0,m.jsx)(`input`,{id:`skill-name`,type:`text`,value:y,onChange:e=>b(e.target.value),placeholder:j,className:`min-h-[44px] w-full rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-3 text-sm text-[var(--color-text)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`})]}),(0,m.jsx)(f,{label:e(`skill.description`),hint:e(`skill.descriptionHint`),value:x,onChange:S,contentKey:`skill-desc`}),(0,m.jsx)(f,{label:e(`skill.whenToUse`),value:C,onChange:w,contentKey:`skill-when`}),(0,m.jsx)(o,{title:e(`skill.bundleContentsTitle`),subtitle:e(`skill.bundleContentsSubtitle`),children:(0,m.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,m.jsx)(`button`,{type:`button`,"aria-pressed":T,onClick:()=>E(e=>!e),className:h(T),children:e(`skill.includeReferences`)}),(0,m.jsx)(`button`,{type:`button`,disabled:!0,className:`${h(!1)} cursor-not-allowed opacity-50`,title:e(`skill.comingSoon`),children:e(`skill.chipReadme`)}),(0,m.jsx)(`button`,{type:`button`,disabled:!0,className:`${h(!1)} cursor-not-allowed opacity-50`,title:e(`skill.comingSoon`),children:e(`skill.chipPrompts`)})]})}),(0,m.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,m.jsx)(`button`,{type:`button`,onClick:()=>void P(),disabled:D,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center rounded-[var(--radius-md)] bg-[var(--color-primary)] px-4 py-2 font-medium text-white hover:bg-[var(--color-primary-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2 disabled:opacity-60`,children:e(`skill.downloadAsSkill`)}),k?(0,m.jsx)(`p`,{className:`m-0 text-sm text-[var(--color-error)]`,role:`alert`,children:k}):null,(0,m.jsx)(t,{to:`/protocols/${encodeURIComponent(a.uri)}`,className:`min-h-[44px] min-w-[44px] inline-flex items-center justify-center rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-4 py-2 font-medium text-[var(--color-text)] no-underline hover:bg-[var(--color-surface-elevated)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:e(`skill.backToProtocol`)})]})]}),(0,m.jsxs)(`div`,{className:`space-y-4`,children:[(0,m.jsx)(o,{title:e(`skill.bundlePreviewTitle`),subtitle:e(`skill.bundlePreviewSubtitle`),children:(0,m.jsxs)(`div`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-4 font-mono text-sm text-[var(--color-text)]`,children:[N,`.zip`,(0,m.jsx)(`br`,{}),`└── `,N,`/`,(0,m.jsx)(`br`,{}),`\xA0\xA0\xA0\xA0├── Skill.md`,(0,m.jsx)(`br`,{}),T?(0,m.jsxs)(m.Fragment,{children:[`\xA0\xA0\xA0\xA0└── references/`,(0,m.jsx)(`br`,{}),`\xA0\xA0\xA0\xA0\xA0\xA0\xA0\xA0└── KAIROS.md`]}):(0,m.jsx)(m.Fragment,{children:`\xA0\xA0\xA0\xA0└── (no references/)`})]})}),(0,m.jsx)(o,{title:e(`skill.whyExportTitle`),subtitle:e(`skill.whyExportSubtitle`),children:(0,m.jsx)(`p`,{className:`m-0 text-sm text-[var(--color-text-muted)]`,children:e(`skill.whyExportBody`)})})]})]})]})}export{g as SkillBundlePage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{g as e,y as t}from"./vendor-DGTQ2S8W.js";import{t as n}from"./react-CR5VJ85Q.js";import{t as r}from"./api-BgTb-tmJ.js";async function i(e={}){let t=await r(`/api/spaces`,{method:`POST`,body:JSON.stringify({include_adapter_titles:e.includeAdapterTitles??!1})});if(!t.ok){let e=(await t.json().catch(()=>({}))).message??t.statusText;throw Error(e)}return{spaces:(await t.json()).spaces??[]}}function a(t=!0,n={}){let r=n.includeAdapterTitles??!1;return e({queryKey:[`spaces`,{includeAdapterTitles:r}],queryFn:()=>i(n),enabled:t})}var o=n(),s={personal:`bg-[var(--badge-personal-bg)] text-[var(--badge-personal-fg)]`,group:`bg-[var(--badge-group-bg)] text-[var(--badge-group-fg)]`,app:`bg-[var(--badge-app-bg)] text-[var(--badge-app-fg)]`,other:`bg-[var(--badge-other-bg)] text-[var(--badge-other-fg)]`};function c({id:e,spaces:n,value:r,onChange:i,includeAllOption:a=!1,disabled:s=!1,"aria-describedby":c}){let{t:l}=t(),u=n??[];return(0,o.jsxs)(`select`,{id:e,value:r,disabled:s||u.length===0&&!a,onChange:e=>i(e.target.value),"aria-describedby":c,className:`min-h-[44px] w-full max-w-md rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] px-3 py-2 text-[var(--color-text)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] focus-visible:outline-offset-2`,children:[a?(0,o.jsx)(`option`,{value:``,children:l(`spaces.filterAll`)}):null,u.map(e=>(0,o.jsx)(`option`,{value:e.space_id,children:e.name},e.space_id))]})}function l({type:e}){let{t:n}=t(),r=n(`spaces.type.${e}`);return(0,o.jsx)(`span`,{className:`inline-block rounded px-2 py-0.5 text-xs font-medium uppercase tracking-wide ${s[e]}`,children:r})}export{l as n,a as r,c as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e,r as t}from"./vendor-DGTQ2S8W.js";import{t as n}from"./react-CR5VJ85Q.js";var r=n(),i=`text-sm leading-6 text-[var(--color-text)] [&_p]:mt-0 [&_p:first-child]:mt-0 [&_p+p]:mt-3 [&_ul]:my-3 [&_ul]:pl-6 [&_ol]:my-3 [&_ol]:pl-6 [&_li]:my-0.5 [&_strong]:font-semibold [&_strong]:text-[var(--color-text-heading)] [&_code]:rounded [&_code]:bg-[var(--color-surface-elevated)] [&_code]:px-1.5 [&_code]:py-0.5 [&_code]:text-xs [&_code]:font-mono [&_pre]:my-3 [&_pre]:overflow-x-auto [&_pre]:rounded-[var(--radius-md)] [&_pre]:bg-[var(--color-surface-elevated)] [&_pre]:p-3 [&_pre]:text-sm [&_pre]:font-mono [&_pre]:whitespace-pre-wrap [&_pre_code]:bg-transparent [&_pre_code]:p-0 [&_pre_code]:text-inherit [&_a]:text-[var(--color-primary)] [&_a]:underline [&_a:hover]:no-underline [&_a:focus-visible]:outline [&_a:focus-visible]:outline-2 [&_a:focus-visible]:outline-[var(--color-focus-ring)] [&_a:focus-visible]:outline-offset-2 [&_blockquote]:border-l-4 [&_blockquote]:border-[var(--color-border)] [&_blockquote]:pl-4 [&_blockquote]:italic [&_blockquote]:text-[var(--color-text-muted)] [&_h1]:text-xl [&_h1]:font-semibold [&_h1]:text-[var(--color-text-heading)] [&_h1]:mt-4 [&_h1]:mb-2 [&_h2]:text-lg [&_h2]:font-semibold [&_h2]:text-[var(--color-text-heading)] [&_h2]:mt-4 [&_h2]:mb-2 [&_h3]:text-base [&_h3]:font-medium [&_h3]:text-[var(--color-text-heading)] [&_h3]:mt-3 [&_h3]:mb-1 [&_table]:my-4 [&_table]:w-full [&_table]:border-collapse [&_table]:text-left [&_th]:border [&_th]:border-[var(--color-border)] [&_th]:bg-[var(--color-surface-elevated)] [&_th]:px-3 [&_th]:py-2 [&_th]:font-semibold [&_th]:text-[var(--color-text-heading)] [&_td]:border [&_td]:border-[var(--color-border)] [&_td]:px-3 [&_td]:py-2 [&_tr]:border-b [&_tr]:border-[var(--color-border)] [&_tr:last-child]:border-b-0`;function a({content:n,className:a=``}){return n.trim()?(0,r.jsx)(`div`,{className:`${i} ${a}`.trim(),children:(0,r.jsx)(t,{remarkPlugins:[e],children:n})}):null}function o({steps:e,currentIndex:t}){let n=[`Start`,...e.map(e=>e.label),`Attest`];return(0,r.jsx)(`div`,{className:`flex flex-wrap items-center gap-1 py-3 px-4 rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)]`,role:`img`,"aria-label":`Step flow: ${n.join(`, `)}`,children:n.map((n,i)=>{let a=i>0&&i<=e.length?i-1:void 0;return(0,r.jsxs)(`div`,{className:`flex items-center gap-1`,children:[i>0&&(0,r.jsx)(`span`,{className:`px-0.5 text-[var(--color-text-muted)]`,"aria-hidden":!0,children:`→`}),(0,r.jsx)(`span`,{className:`inline-flex min-h-[32px] items-center justify-center rounded-[var(--radius-sm)] px-3 text-sm font-medium ${a!==void 0&&a===t?`bg-[var(--color-primary)] text-white ring-2 ring-[var(--color-primary)] ring-offset-2 ring-offset-[var(--color-surface)]`:`border border-[var(--color-border)] bg-[var(--color-surface)] text-[var(--color-text)]`}`,children:n})]},i)})})}export{a as n,o as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./react-CR5VJ85Q.js";var t=e();function n({title:e,subtitle:n,children:r,className:i}){return(0,t.jsxs)(`section`,{className:`rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface-elevated)] p-4 ${i??``}`,children:[(0,t.jsxs)(`div`,{className:`mb-3`,children:[(0,t.jsx)(`h2`,{className:`text-base font-semibold text-[var(--color-text-heading)]`,children:e}),n?(0,t.jsx)(`p`,{className:`mt-1 text-sm text-[var(--color-text-muted)]`,children:n}):null]}),r]})}export{n as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
async function e(e,t){let n=e.startsWith(`http`)?e:`${e}`;return fetch(n,{...t,headers:{"Content-Type":`application/json`,...t?.headers},credentials:`same-origin`})}export{e as t};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{g as e}from"./vendor-DGTQ2S8W.js";import{t}from"./api-BgTb-tmJ.js";async function n(e){let n=await t(`/api/export`,{method:`POST`,body:JSON.stringify({uri:e,format:`markdown`})});if(!n.ok){let e=(await n.json().catch(()=>({}))).message??n.statusText,t=Error(e);throw t.statusCode=n.status,t}let r=await n.json();return{content:r.content,uri:r.uri,label:r.adapter_name??`Adapter`,adapter_name:r.adapter_name??null,...r.adapter_version?{protocol_version:r.adapter_version}:{},...r.space_id!==void 0&&{space_id:r.space_id},...r.space_name!==void 0&&{space_name:r.space_name},...r.space_type!==void 0&&{space_type:r.space_type}}}function r(t,r){return e({queryKey:[`protocol`,t],queryFn:()=>n(t),enabled:!!(t&&r)})}function i(e){let t=e.split(`
|
|
2
|
+
`),n=`Protocol`,r=[],i=``,a=``,o=t.find(e=>e.startsWith(`# `));o&&(n=o.replace(/^#\s+/,``).trim());let s=e.split(/\n##\s+/);for(let e=1;e<s.length;e++){let t=s[e],n=t.split(`
|
|
3
|
+
`)[0]??``,o=n.trim(),c=t.slice(n.length).replace(/^\n+/,``).trim();if(o.toLowerCase().includes(`activation pattern`)||o.toLowerCase().includes(`natural language trigger`))i=c.replace(/\n```json[\s\S]*?```/g,``).trim();else if(o.toLowerCase().includes(`reward signal`)||o.toLowerCase().includes(`completion rule`))a=c.replace(/\n```json[\s\S]*?```/g,``).trim();else{let e=c.match(/```json\s*([\s\S]*?)```/),t=`comment`,n=`Comment`,i;if(e)try{let r=JSON.parse(e[1].trim()),a=r?.contract??r?.challenge??r;if(a?.type&&(t=String(a.type)),t===`shell`){let e=a?.shell?.cmd??a?.cmd,t=a?.shell?.interpreter;n=e?t?`Shell (${t}): ${String(e).slice(0,60)}${String(e).length>60?`…`:``}`:`Shell: ${String(e).slice(0,80)}${String(e).length>80?`…`:``}`:`Shell`,e&&(i={cmd:String(e)})}else if(t===`mcp`){let e=a?.mcp?.tool_name;n=e?`MCP: ${String(e)}`:`MCP`,e&&(i={tool_name:String(e)})}else if(t===`user_input`){let e=a?.user_input?.prompt;n=e?`User input: ${String(e)}`:`User input`,e&&(i={prompt:String(e)})}else if(t===`tensor`){let e=a?.tensor?.output?.name,t=a?.tensor?.output?.type;n=e?`Tensor: ${String(e)}${t?` (${String(t)})`:``}`:`Tensor`}else if(t===`comment`){let e=a?.comment?.min_length;n=e?`Comment: min ${Number(e)} chars`:`Comment`,e!=null&&!Number.isNaN(Number(e))&&(i={min_length:Number(e)})}else n=String(t)}catch{}n||=String(t),r.push({label:o,type:t,summary:n,body:c,challengePayload:i})}}return{title:n,steps:r,triggers:i,completion:a}}function a(e){let{title:t,steps:n,triggers:r,completion:a}=i(e);return{protocolLabel:t,triggersMarkdown:r,steps:n.map(e=>{let t=e.body.replace(/\n```json\s*[\s\S]*?```\s*$/g,``).trim(),n=`comment`,r={label:e.label,bodyMarkdown:t,type:n},i=e.body.match(/```json\s*([\s\S]*?)```/);if(i)try{let e=JSON.parse(i[1].trim()),t=e?.contract??e?.challenge??e;if(t?.type&&[`shell`,`mcp`,`user_input`,`comment`].includes(String(t.type))&&(n=t.type,r.type=n),n===`shell`){let e=t?.shell;r.shell={cmd:String(e?.cmd??t?.cmd??``).trim(),timeout_seconds:Number(e?.timeout_seconds??30),interpreter:typeof e?.interpreter==`string`?e.interpreter:void 0,workdir:typeof e?.workdir==`string`?e.workdir:void 0,flags:Array.isArray(e?.flags)?e.flags.map(String):[],args:Array.isArray(e?.args)?e.args.map(String):[]}}else n===`mcp`?r.mcp={tool_name:String(t?.mcp?.tool_name??``).trim()}:n===`user_input`?r.user_input={prompt:String(t?.user_input?.prompt??``).trim()}:n===`comment`&&(r.comment={min_length:Number(t?.comment?.min_length??10)})}catch{}return r}),completionMarkdown:a}}function o(e){let t=[];t.push(`# ${e.protocolLabel.trim()||`Protocol`}`),t.push(``),t.push(`## Activation Patterns`),t.push(``),t.push(e.triggersMarkdown.trim()||`Describe when this protocol should run.`),t.push(``);for(let n of e.steps){t.push(`## ${n.label.trim()||`Step`}`),t.push(``),t.push(n.bodyMarkdown.trim()||`Step content.`);let e={type:n.type};if(n.type===`shell`){let t={cmd:n.shell?.cmd??``,timeout_seconds:n.shell?.timeout_seconds??30},r=n.shell?.interpreter?.trim();r&&(t.interpreter=r);let i=n.shell?.workdir?.trim();i&&(t.workdir=i),n.shell?.flags?.length&&(t.flags=n.shell.flags),n.shell?.args?.length&&(t.args=n.shell.args),e.shell=t}else n.type===`mcp`?e.mcp={tool_name:n.mcp?.tool_name??``}:n.type===`user_input`?e.user_input={prompt:n.user_input?.prompt??``}:n.type===`comment`&&(e.comment={min_length:n.comment?.min_length??10});t.push(``),t.push("```json"),t.push(JSON.stringify({contract:e},null,2)),t.push("```"),t.push(``)}return t.push(`## Reward Signal`),t.push(``),t.push(e.completionMarkdown.trim()||`Describe how this adapter should be rewarded when it completes.`),t.join(`
|
|
4
|
+
`)}async function s(e){let n=await t(`/api/export`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({uri:e,format:`skill_zip`})});if(!n.ok){let e=(await n.json().catch(()=>({}))).message??n.statusText;throw Error(e)}let r=await n.json();if(r.format===`skill_zip`&&r.download_ref?.url){let e=await fetch(r.download_ref.url,{credentials:`same-origin`});if(!e.ok)throw Error(`Download failed: ${e.statusText}`);return{blob:await e.blob(),skill_bundle_manifest:r.skill_bundle_manifest}}if(r.format!==`skill_zip`||r.content_encoding!==`base64`)throw Error(`Expected a skill_zip export with download_ref or base64-encoded content.`);return{blob:c(r.content,r.content_type||`application/zip`),skill_bundle_manifest:r.skill_bundle_manifest}}function c(e,t){let n=atob(e),r=new Uint8Array(n.length);for(let e=0;e<n.length;e++)r[e]=n.charCodeAt(e);return new Blob([r],{type:t})}function l(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,r.click(),URL.revokeObjectURL(n)}function u(e,t){try{if(e){let t=JSON.parse(e).skills?.[0]?.slug;if(t&&t.length>0)return`${t}-kairos-skill.zip`}}catch{}return`${t.replace(/[^a-zA-Z0-9]+/g,`-`).replace(/^-|-$/g,``)||`kairos-skill`}-kairos-skill.zip`}export{i as a,o as i,u as n,a as o,l as r,r as s,s as t};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/HomePage-DIKsxKaH.js","assets/vendor-DGTQ2S8W.js","assets/rolldown-runtime-hePW80VL.js","assets/react-CR5VJ85Q.js","assets/tiptap-74Cp-fci.js","assets/SpaceSelect-DDhPkDXU.js","assets/api-BgTb-tmJ.js","assets/SurfaceCard-CRidnDLP.js","assets/KairosPage-n5qbiyxb.js","assets/ErrorAlert-BQMph5Nh.js","assets/RunsPage-BijmxS6f.js","assets/useRunSession-062hqhcN.js","assets/ProtocolEditPage-hc87ZsgM.js","assets/export-skill-zip-CIyOWxuI.js","assets/ChallengeCard-gY-n7rwI.js","assets/RichTextEditor-uun0UIVc.js","assets/RunGuidedPage-BbyHZjPU.js","assets/StepFlowGraph-DsL5lsIq.js","assets/SkillBundlePage-BsndXJaC.js","assets/ProtocolDetailPage-C20Yd3q6.js","assets/AccountPage-DBrqe8KI.js","assets/NotFoundPage-Dz-PKC4R.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{_ as t,b as n,c as r,d as i,f as a,i as o,l as s,o as c,u as l,v as u,x as d,y as f}from"./vendor-DGTQ2S8W.js";import{i as p,n as m,t as h}from"./react-CR5VJ85Q.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})(),d.use(n).init({lng:`en`,fallbackLng:`en`,ns:[`translation`],defaultNS:`translation`,resources:{en:{translation:{"nav.home":`Home`,"nav.kairos":`Browse`,"nav.create":`Create`,"nav.runs":`Test Run`,"nav.account":`Account`,"layout.kairosVersion":`KAIROS v{{version}}`,skipToMain:`Skip to main content`,"home.title":`Home`,"home.tagline":`Start from a clear task: browse protocols, create a new workflow, or continue protocol testing.`,"home.findCardTitle":`Find the right protocol`,"home.findCardSubtitle":`Home stays lightweight. Search and deeper discovery live in Browse.`,"home.goToBrowse":`Go to Browse`,"home.cardBrowseTitle":`Browse protocols`,"home.cardBrowseSubtitle":`Search or browse by label.`,"home.cardBrowseCta":`Open Browse`,"home.cardCreateTitle":`Create protocol`,"home.cardCreateSubtitle":`Use the rendered editor to draft a new workflow.`,"home.cardCreateCta":`Create new`,"home.cardRunsTitle":`Test Run`,"home.cardRunsSubtitle":`Resume a saved test run from this device.`,"home.cardRunsCta":`Open Test Run`,"home.spacesHeading":`Spaces`,"home.searchLabel":`Search protocols`,"home.searchPlaceholder":`e.g. deploy and test`,"home.searchHint":`Enter a query to find the best matching protocol. Results open in Browse.`,"home.statsLabel":`Space and protocol counts`,"home.stats.personalProtocols":`—`,"home.stats.personalProtocolsLabel":`Personal protocols`,"home.stats.kairosApp":`—`,"home.stats.kairosAppLabel":`Kairos app`,"home.stats.spaces":`—`,"home.stats.spacesLabel":`Spaces`,"home.stats.protocolCount":`{{count}} protocol`,"home.stats.protocolCount_plural":`{{count}} protocols`,"home.ctaPre":`Search and manage protocols in`,"home.ctaSuffix":`.`,"kairos.title":`Browse`,"kairos.searchLabel":`Activation query`,"kairos.searchPlaceholder":`e.g. deploy and test`,"kairos.searchHint":`Search or browse by label. The default view lists protocols by their label.`,"kairos.searchHintShort":`Run an activation query to rank the best matches, or browse the list below.`,"kairos.browseByLabel":`Browse by label`,"kairos.browseByLetterHint":`Click a letter to list protocols whose title starts with that letter (A–Z).`,"kairos.letterCount":`Letter {{letter}}, {{count}} protocols`,"kairos.labelsStartingWith":`Labels starting with {{letter}}`,"kairos.noLabelsForLetter":`No protocols starting with this letter.`,"kairos.browseFlatListHint":`Protocols listed by label. This is the default view when you open Browse.`,"kairos.browseEmpty":`No protocols found in your spaces yet.`,"kairos.enterQueryHint":`Enter an activation query above to find the best matching protocol. Results appear below.`,"spaces.filterAll":`All spaces`,"spaces.type.personal":`Personal`,"spaces.type.group":`Group`,"spaces.type.app":`App`,"spaces.type.other":`Other`,"kairos.scopeSpaceLabel":`Limit search to a space`,"kairos.spaceLabel":`Space`,"kairos.search":`Activate`,"kairos.loading":`Activating…`,"kairos.empty":`No matching protocols found`,"kairos.foundMatches":`Found {{count}} activation choices (top confidence: {{top}}%). View one, refine the query, or create a new protocol.`,"kairos.resultsLabel":`Activation results`,"kairos.score":`Score`,"kairos.version":`Version`,"kairos.tagsLabel":`Tags`,"kairos.refineMeta":`Refine query`,"kairos.createMeta":`Start from scratch`,"kairos.view":`View`,"kairos.viewProtocol":`View {{title}}`,"kairos.refineSearch":`Refine query`,"kairos.createNew":`Create new`,"protocol.loading":`Loading protocol…`,"protocol.notFound":`Protocol not found`,"protocol.uri":`URI`,"protocol.spaceLabel":`Space`,"protocol.readOnly":`Read-only`,"protocol.copyUri":`Copy URI`,"protocol.download":`Download`,"protocol.downloadAsMarkdown":`Download as Markdown`,"protocol.downloadAsSkill":`Download as Skill`,"protocol.editAsSkill":`Edit as Skill`,"protocol.expand":`Expand`,"protocol.collapse":`Collapse`,"protocol.edit":`Edit`,"protocol.duplicate":`Duplicate`,"protocol.runGuided":`Test Run`,"protocol.steps":`Steps`,"protocol.stepFlow":`Step flow`,"protocol.exportCardTitle":`Export`,"protocol.exportCardSubtitle":`Clear language replaces internal dump terminology.`,"protocol.exportFooter":`Skill export prepares a portable bundle for external AI tools.`,"protocol.triggers":`Activation patterns`,"protocol.completion":`Reward signal`,"protocol.howToUse":`How to use this protocol`,"protocol.howToUseInProduct":`The public UI helps people read, edit, export, and manually test protocol steps. Live AI execution still happens through MCP or CLI tooling.`,"protocol.howToUseCopy":`Use Test Run from the button above to step through this protocol in the browser. For agents or CLI, use Cursor (MCP) or the command line. See`,"protocol.docsLink":`documentation`,"runs.title":`Test Run`,"runs.subtitle":`Continue a test run you started earlier on this device.`,"runs.empty":`No runs yet.`,"runs.listLabel":`Test Run list`,"runs.status":`Status`,"runs.updated":`Updated`,"runs.stepsDone":`{{count}} steps completed`,"runs.resume":`Resume`,"runs.remove":`Remove`,"run.title":`Test Run`,"run.guidedIntro":`Step through the saved run in the browser and submit the same data the current run flow expects.`,"run.progressHeading":`Progress`,"run.currentStepHeading":`Current step`,"run.challengeHeading":`Challenge`,"run.stepProgress":`Step {{current}} of {{total}}`,"run.sessionBadge":`Active manual test session`,"run.flowStepN":`{{n}}`,"run.copyShellCommand":`Copy command`,"run.adapterUri":`Adapter URI`,"run.backToProtocol":`Back to adapter`,"run.start":`Start run`,"run.starting":`Starting…`,"run.safety.title":`Safe by default`,"run.safety.copy":`This guided run never executes shell commands in your browser. For shell challenges, run the command yourself and paste the real results.`,"run.serverMessage":`Server message`,"run.currentLayer":`Current layer`,"run.layerUri":`Layer URI`,"run.noLayerContent":`(No layer content)`,"run.contract":`Contract`,"run.contractType":`Type`,"run.advanced":`Advanced`,"run.nonce":`Nonce`,"run.proofHash":`Challenge proof_hash`,"run.previousProofHash":`Previous proof_hash`,"run.copy":`Copy`,"run.copied":`Copied`,"run.solution":`Solution`,"run.solutionFormLabel":`Submit solution`,"run.submitStep":`Submit step`,"run.shell.command":`Command`,"run.shell.invocation":`Invocation`,"run.shell.exitCode":`Exit code`,"run.shell.stdout":`Stdout`,"run.shell.stderr":`Stderr`,"run.mcp.toolName":`Tool`,"run.mcp.toolMissing":`(Missing tool name)`,"run.mcp.success":`Success`,"run.mcp.arguments":`Arguments (JSON)`,"run.mcp.result":`Result (JSON)`,"run.userInput.prompt":`Prompt`,"run.userInput.promptMissing":`(Missing prompt)`,"run.userInput.confirmation":`User confirmation`,"run.comment.minLength":`Minimum {{count}} characters`,"run.comment.count":`{{count}} typed`,"run.comment.text":`Comment`,"run.reward.title":`Reward completion`,"run.reward.subtitle":`Finalize the run outcome for reward and export quality.`,"run.reward.outcomeLabel":`Outcome`,"run.reward.success":`Success`,"run.reward.failure":`Failure`,"run.reward.feedback":`Feedback`,"run.reward.submit":`Submit reward`,"run.reward.submitting":`Submitting…`,"run.reward.defaultFeedback":`Completed guided run.`,"run.stepperProgress":`{{completed}} step(s) completed`,"run.history":`History`,"run.historyLabel":`Run history`,"run.completed":`Run completed`,"run.missingUri":`Missing adapter URI.`,"protocolEdit.newTitle":`New protocol`,"protocolEdit.editTitle":`Edit protocol`,"protocolEdit.hint":`Write as a human. The editor renders text on input and output while keeping the saved format compatible with generic Markdown.`,"protocolEdit.stepHeading":`Step {{n}}`,"protocolEdit.stepEditorHint":`Human-friendly editor with Markdown-safe formatting.`,"protocolEdit.triggersEditorHint":`Shown to humans as rendered text and serialized as Markdown-compatible content.`,"protocolEdit.previewRenderedTitle":`Rendered preview`,"protocolEdit.previewRenderedSubtitle":`Reading flow is fully rendered. Editing keeps a Markdown-safe rich text surface and this card previews section structure.`,"protocolEdit.previewStepLine":`Step {{n}}: {{label}}`,"protocolEdit.skillShortcutTitle":`Skill bundle shortcut`,"protocolEdit.skillShortcutSubtitle":`Authors can turn a protocol into a reusable skill bundle without learning repo-internal file names.`,"protocolEdit.formLabel":`Protocol form`,"protocolEdit.protocolLabel":`Protocol label`,"protocolEdit.triggersLabel":`Activation patterns`,"protocolEdit.triggersHint":`Describe when this protocol should run (e.g. deploy and test).`,"protocolEdit.stepLabel":`Step label`,"protocolEdit.stepContent":`Step content`,"protocolEdit.challengeType":`Challenge type`,"protocolEdit.addStep":`Add step`,"protocolEdit.removeStep":`Remove step`,"protocolEdit.completionLabel":`Reward signal`,"protocolEdit.challengeShell":`Shell command`,"protocolEdit.challengeMcp":`MCP tool call`,"protocolEdit.challengeUserInput":`User input`,"protocolEdit.challengeComment":`Comment`,"protocolEdit.shellCmd":`Command`,"protocolEdit.shellTimeout":`Timeout (seconds)`,"protocolEdit.shellInterpreter":`Interpreter (optional)`,"protocolEdit.shellFlags":`Flags (one per line, optional)`,"protocolEdit.shellArgs":`Args (one per line, optional)`,"protocolEdit.shellWorkdir":`Workdir (optional)`,"protocolEdit.mcpToolName":`Tool name`,"protocolEdit.userInputPrompt":`Prompt`,"protocolEdit.commentMinLength":`Minimum length (characters)`,"protocolEdit.importCardTitle":`Import existing content`,"protocolEdit.uploadHint":"Uploading a `.md` file fills this editor form. It does not publish or overwrite anything until you save.","protocolEdit.contentLabel":`Protocol content (markdown)`,"protocolEdit.previewLabel":`Protocol preview`,"protocolEdit.previewTitle":`Live preview`,"protocolEdit.previewSteps":`Steps`,"protocolEdit.previewNoSteps":`No steps yet.`,"protocolEdit.previewSections":`Key sections`,"protocolEdit.present":`present`,"protocolEdit.missing":`missing`,"protocolEdit.insertTemplate":`Insert template`,"protocolEdit.upload":`Upload .md file`,"skill.title":`Edit as Skill`,"skill.subtitle":`Prepare a skill bundle for external AI tools before downloading the zip. Protocol content stays connected to the original workflow.`,"skill.bundleContentsTitle":`Bundle contents`,"skill.bundleContentsSubtitle":`Optional protocol references can be included in a dedicated folder.`,"skill.chipReadme":`Include README snippet`,"skill.chipPrompts":`Include example prompts`,"skill.comingSoon":`Coming soon`,"skill.bundlePreviewTitle":`Bundle preview`,"skill.bundlePreviewSubtitle":`Zip root contains the skill folder so users can upload it directly.`,"skill.whyExportTitle":`Why this export exists`,"skill.whyExportSubtitle":`The bundle is for human-friendly reuse, not an internal raw dump.`,"skill.whyExportBody":`Authors can package a protocol as a portable skill with polished naming and usage guidance, then download the final zip in one step.`,"skill.skillName":`Skill name`,"skill.description":`Skill description`,"skill.descriptionHint":`Describe what the skill does and when an AI assistant should use it.`,"skill.whenToUse":`When to use it`,"skill.includeReferences":`Include references folder`,"skill.downloadAsSkill":`Download as Skill`,"skill.backToProtocol":`Back to protocol`,"protocolEdit.placeholder":`# Protocol title
|
|
3
|
+
|
|
4
|
+
## Activation Patterns
|
|
5
|
+
...
|
|
6
|
+
|
|
7
|
+
## Step 1
|
|
8
|
+
...`,"protocolEdit.contentHint":`Include: Activation Patterns (first H2), steps (H2 + optional challenge block), Reward Signal (last H2).`,"protocolEdit.targetSpaceLabel":`Save to space`,"protocolEdit.targetSpaceHint":`New protocols are stored in the space you pick (default: Personal).`,"protocolEdit.forkSourceLabel":`Fork from adapter (optional)`,"protocolEdit.forkSourcePlaceholder":`kairos://adapter/{slug}`,"protocolEdit.forkSourceHint":`Leave empty for a brand-new protocol, or paste an adapter URI to copy its markdown into the target space as a new adapter.`,"protocolEdit.forkUriInvalid":`Fork source must be a kairos://adapter/{slug} URI.`,"protocolEdit.moveSpaceLabel":`Space for this protocol`,"protocolEdit.moveSpaceHint":`Change the space and save to move every layer to the selected space (same as tune with a space parameter).`,"protocolEdit.save":`Save`,"protocolEdit.saving":`Saving…`,"protocolEdit.cancel":`Cancel`,"account.title":`Account`,"account.intro":`You are signed in. Sign out below or use the options to manage your profile.`,"account.loading":`Loading…`,"account.notSignedIn":`You are not signed in.`,"account.signIn":`Sign in`,"account.name":`Name`,"account.username":`Username`,"account.email":`Email`,"account.emailVerified":`verified`,"account.accountType":`Account type`,"account.realm":`Realm`,"account.identityProvider":`Login provider`,"account.groups":`Groups`,"account.themeTitle":`Theme`,"account.themeDescription":`Choose how KAIROS UI appearance should be rendered.`,"account.themePreferenceLabel":`Theme preference`,"account.themeOptionLight":`Light`,"account.themeOptionDark":`Dark`,"account.themeOptionSystem":`Match system`,"account.logOut":`Log out`,"notFound.title":`Page not found`,"notFound.message":`The page you requested could not be found.`,"notFound.goHome":`Go to Home`,"error.title":`Something went wrong`,"error.retry":`Retry`,"error.goBack":`Go to Home`,"error.support":`Support`}}},interpolation:{escapeValue:!1}});var g=e(p(),1),_=m(),v=`/ui/assets/kairos-mcp-DNiKVgiO.svg`,y=h(),b=e=>e.startsWith(`/protocols`)||e.startsWith(`/runs`);function x(){let{t:e}=f(),t=a().pathname,n=({isActive:e})=>`min-h-[var(--layout-touch-target)] flex items-center px-4 py-3 text-[var(--color-text)] no-underline border-l-[3px] border-transparent outline-offset-2 focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)] hover:bg-[var(--color-surface)] hover:text-[var(--color-text-heading)] ${e?`font-semibold text-[var(--color-primary)] border-l-[var(--color-primary)] bg-[var(--color-surface)]`:``}`,r=b(t)?`min(100%, var(--layout-main-max), var(--layout-main-wide))`:`min(100%, var(--layout-main-max), var(--layout-main-narrow))`;return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(`a`,{href:`#main`,className:`skip-link`,children:e(`skipToMain`)}),(0,y.jsxs)(`div`,{className:`flex min-h-screen`,children:[(0,y.jsxs)(`aside`,{className:`flex min-h-screen w-[var(--layout-sidebar-width)] flex-shrink-0 flex-col border-r border-[var(--color-border)] bg-[var(--color-surface-elevated)] py-4`,"aria-label":`Main navigation`,children:[(0,y.jsx)(`div`,{className:`px-4 pb-4`,children:(0,y.jsxs)(c,{to:`/`,end:!0,className:`flex min-h-[var(--layout-touch-target)] min-w-[var(--layout-touch-target)] items-center gap-3 rounded-md outline-offset-2 focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--color-focus-ring)]`,children:[(0,y.jsx)(`img`,{src:v,alt:``,className:`h-10 w-10 flex-shrink-0 rounded-lg object-contain`,width:`40`,height:`40`}),(0,y.jsxs)(`span`,{className:`flex flex-col leading-tight`,children:[(0,y.jsx)(`span`,{className:`font-bold text-[var(--color-text-heading)] text-lg`,children:`Kairos`}),(0,y.jsx)(`span`,{className:`font-bold text-[var(--color-text-muted)] text-xs uppercase tracking-wide`,children:`MCP`})]})]})}),(0,y.jsxs)(`nav`,{className:`flex min-h-0 flex-1 flex-col gap-0.5`,children:[(0,y.jsx)(c,{to:`/`,end:!0,"aria-current":t===`/`?`page`:void 0,className:n,children:e(`nav.home`)}),(0,y.jsx)(c,{to:`/kairos`,"aria-current":t===`/kairos`?`page`:void 0,className:n,children:e(`nav.kairos`)}),(0,y.jsx)(c,{to:`/protocols/new`,"aria-current":t===`/protocols/new`?`page`:void 0,className:n,children:e(`nav.create`)}),(0,y.jsx)(c,{to:`/runs`,"aria-current":t===`/runs`?`page`:void 0,className:n,children:e(`nav.runs`)}),(0,y.jsx)(c,{to:`/account`,"aria-current":t===`/account`?`page`:void 0,className:n,children:e(`nav.account`)})]}),(0,y.jsx)(`div`,{className:`mt-auto border-t border-[var(--color-border)] px-4 pt-3`,children:(0,y.jsx)(`p`,{className:`m-0 text-xs text-[var(--color-text-muted)]`,children:e(`layout.kairosVersion`,{version:`4.8.6`})})})]}),(0,y.jsx)(`main`,{id:`main`,className:`flex-1 mx-auto w-full py-[var(--layout-main-padding-y)] px-[var(--layout-main-padding-x)]`,style:{maxWidth:r},tabIndex:-1,children:(0,y.jsx)(s,{})})]})]})}var S=(0,g.lazy)(()=>r(()=>import(`./HomePage-DIKsxKaH.js`).then(e=>({default:e.HomePage})),__vite__mapDeps([0,1,2,3,4,5,6,7]))),C=(0,g.lazy)(()=>r(()=>import(`./KairosPage-n5qbiyxb.js`).then(e=>({default:e.KairosPage})),__vite__mapDeps([8,2,1,3,4,6,5,9]))),w=(0,g.lazy)(()=>r(()=>import(`./RunsPage-BijmxS6f.js`).then(e=>({default:e.RunsPage})),__vite__mapDeps([10,1,2,3,4,11]))),T=(0,g.lazy)(()=>r(()=>import(`./ProtocolEditPage-hc87ZsgM.js`).then(e=>({default:e.ProtocolEditPage})),__vite__mapDeps([12,2,1,3,4,6,5,7,13,14,15]))),E=(0,g.lazy)(()=>r(()=>import(`./RunGuidedPage-BbyHZjPU.js`).then(e=>({default:e.RunGuidedPage})),__vite__mapDeps([16,2,1,3,4,6,7,9,14,17,11]))),D=(0,g.lazy)(()=>r(()=>import(`./SkillBundlePage-BsndXJaC.js`).then(e=>({default:e.SkillBundlePage})),__vite__mapDeps([18,2,1,3,4,7,13,6,15]))),O=(0,g.lazy)(()=>r(()=>import(`./ProtocolDetailPage-C20Yd3q6.js`).then(e=>({default:e.ProtocolDetailPage})),__vite__mapDeps([19,2,1,3,4,7,13,6,14,17]))),k=(0,g.lazy)(()=>r(()=>import(`./AccountPage-DBrqe8KI.js`).then(e=>({default:e.AccountPage})),__vite__mapDeps([20,1,2,3,4,6]))),A=(0,g.lazy)(()=>r(()=>import(`./NotFoundPage-Dz-PKC4R.js`).then(e=>({default:e.NotFoundPage})),__vite__mapDeps([21,1,2,3,4,9])));function j(){return(0,y.jsx)(`div`,{className:`flex min-h-[12rem] items-center justify-center text-[var(--color-text-muted)]`,"aria-busy":`true`,children:`Loading…`})}function M(){return(0,y.jsx)(i,{children:(0,y.jsxs)(l,{path:`/`,element:(0,y.jsx)(x,{}),children:[(0,y.jsx)(l,{index:!0,element:(0,y.jsx)(g.Suspense,{fallback:(0,y.jsx)(j,{}),children:(0,y.jsx)(S,{})})}),(0,y.jsx)(l,{path:`kairos`,element:(0,y.jsx)(g.Suspense,{fallback:(0,y.jsx)(j,{}),children:(0,y.jsx)(C,{})})}),(0,y.jsx)(l,{path:`runs`,element:(0,y.jsx)(g.Suspense,{fallback:(0,y.jsx)(j,{}),children:(0,y.jsx)(w,{})})}),(0,y.jsx)(l,{path:`protocols/new`,element:(0,y.jsx)(g.Suspense,{fallback:(0,y.jsx)(j,{}),children:(0,y.jsx)(T,{})})}),(0,y.jsx)(l,{path:`protocols/:uri/edit`,element:(0,y.jsx)(g.Suspense,{fallback:(0,y.jsx)(j,{}),children:(0,y.jsx)(T,{})})}),(0,y.jsx)(l,{path:`protocols/:uri/run`,element:(0,y.jsx)(g.Suspense,{fallback:(0,y.jsx)(j,{}),children:(0,y.jsx)(E,{})})}),(0,y.jsx)(l,{path:`protocols/:uri/skill`,element:(0,y.jsx)(g.Suspense,{fallback:(0,y.jsx)(j,{}),children:(0,y.jsx)(D,{})})}),(0,y.jsx)(l,{path:`protocols/:uri`,element:(0,y.jsx)(g.Suspense,{fallback:(0,y.jsx)(j,{}),children:(0,y.jsx)(O,{})})}),(0,y.jsx)(l,{path:`account`,element:(0,y.jsx)(g.Suspense,{fallback:(0,y.jsx)(j,{}),children:(0,y.jsx)(k,{})})}),(0,y.jsx)(l,{path:`*`,element:(0,y.jsx)(g.Suspense,{fallback:(0,y.jsx)(j,{}),children:(0,y.jsx)(A,{})})})]})})}function N(){return(0,y.jsx)(o,{basename:`/ui`,children:(0,y.jsx)(M,{})})}var P=[`light`,`dark`],F=`kairos:ui:theme-preference`,I=`(prefers-color-scheme: dark)`,L=`system`;function R(e){return e===null?!1:e===`system`||P.includes(e)}function z(e,t){return e===`system`?t?`dark`:`light`:e}function B(){if(typeof window>`u`)return L;try{let e=window.localStorage.getItem(F);return R(e)?e:L}catch{return L}}function V(){return typeof window>`u`||typeof window.matchMedia!=`function`?!1:window.matchMedia(I).matches}function H(e){if(typeof document>`u`)return;let t=document.documentElement;t.setAttribute(`data-theme`,e),t.style.colorScheme=e===`light`?`light`:`dark`}function U(){let[e,t]=(0,g.useState)(()=>B()),[n,r]=(0,g.useState)(()=>V()),i=(0,g.useMemo)(()=>z(e,n),[e,n]);return(0,g.useEffect)(()=>{H(i)},[i]),(0,g.useEffect)(()=>{if(typeof window>`u`||e!==`system`||typeof window.matchMedia!=`function`)return;let t=window.matchMedia(I);r(t.matches);let n=e=>{r(e.matches)};return typeof t.addEventListener==`function`?(t.addEventListener(`change`,n),()=>t.removeEventListener(`change`,n)):(t.addListener(n),()=>t.removeListener(n))},[e]),(0,g.useEffect)(()=>{if(typeof window>`u`)return;let e=e=>{e.key===`kairos:ui:theme-preference`&&t(R(e.newValue)?e.newValue:L)};return window.addEventListener(`storage`,e),()=>window.removeEventListener(`storage`,e)},[]),{preference:e,effectiveTheme:i,setPreference:(0,g.useCallback)(e=>{if(t(e),typeof window<`u`)try{window.localStorage.setItem(F,e)}catch{}},[])}}var W=(0,g.createContext)(null);function G({children:e}){let t=U();return(0,y.jsx)(W.Provider,{value:t,children:e})}function K(){let e=(0,g.useContext)(W);if(!e)throw Error(`useThemePreferenceContext must be used within ThemeProvider`);return e}var q=new t;(0,_.createRoot)(document.getElementById(`root`)).render((0,y.jsx)(g.StrictMode,{children:(0,y.jsx)(u,{client:q,children:(0,y.jsx)(G,{children:(0,y.jsx)(N,{})})})}));export{R as n,K as r,P as t};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
|
|
2
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:var(--color-primary);--color-primary-hover:var(--color-primary-hover);--color-secondary:var(--color-secondary);--color-accent:var(--color-accent);--color-text:var(--color-text);--color-text-heading:var(--color-text-heading);--color-text-muted:var(--color-text-muted);--color-surface:var(--color-surface);--color-surface-elevated:var(--color-surface-elevated);--color-border:var(--color-border);--color-error:var(--color-error);--color-error-bg:var(--color-error-bg);--color-success:var(--color-success);--color-warning:var(--color-warning);--color-focus-ring:var(--color-focus-ring);--badge-shell-bg:var(--badge-shell-bg);--badge-shell-fg:var(--badge-shell-fg);--badge-mcp-bg:var(--badge-mcp-bg);--badge-mcp-fg:var(--badge-mcp-fg);--badge-user-input-bg:var(--badge-user-input-bg);--badge-user-input-fg:var(--badge-user-input-fg);--badge-comment-bg:var(--badge-comment-bg);--badge-comment-fg:var(--badge-comment-fg);--badge-match-bg:var(--badge-match-bg);--badge-match-fg:var(--badge-match-fg);--badge-refine-bg:var(--badge-refine-bg);--badge-refine-fg:var(--badge-refine-fg);--badge-create-bg:var(--badge-create-bg);--badge-create-fg:var(--badge-create-fg);--badge-personal-bg:var(--badge-personal-bg);--badge-personal-fg:var(--badge-personal-fg);--badge-group-bg:var(--badge-group-bg);--badge-group-fg:var(--badge-group-fg);--badge-app-bg:var(--badge-app-bg);--badge-app-fg:var(--badge-app-fg);--badge-other-bg:var(--badge-other-bg);--badge-other-fg:var(--badge-other-fg);--status-success-bg:var(--status-success-bg);--status-success-fg:var(--status-success-fg);--font-size-xs:var(--font-size-xs);--font-size-sm:var(--font-size-sm);--font-size-base:var(--font-size-base);--font-size-lg:var(--font-size-lg);--font-size-xl:var(--font-size-xl);--font-size-2xl:var(--font-size-2xl);--font-size-3xl:var(--font-size-3xl);--spacing-4:var(--space-4)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-0{margin:var(--space-0)}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-auto{margin-top:auto}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.ml-2{margin-left:var(--space-2)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-4{height:var(--space-4)}.h-5{height:var(--space-5)}.h-10{height:var(--space-10)}.max-h-40{max-height:calc(var(--spacing) * 40)}.min-h-0{min-height:var(--space-0)}.min-h-\[6rem\]{min-height:6rem}.min-h-\[8rem\]{min-height:8rem}.min-h-\[10rem\]{min-height:10rem}.min-h-\[11rem\]{min-height:11rem}.min-h-\[12rem\]{min-height:12rem}.min-h-\[32px\]{min-height:32px}.min-h-\[36px\]{min-height:36px}.min-h-\[44px\]{min-height:44px}.min-h-\[var\(--layout-touch-target\)\]{min-height:var(--layout-touch-target)}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-3\/4{width:75%}.w-4{width:var(--space-4)}.w-10{width:var(--space-10)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-\[var\(--layout-sidebar-width\)\]{width:var(--layout-sidebar-width)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-\[22rem\]{max-width:22rem}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:var(--space-0)}.min-w-\[36px\]{min-width:36px}.min-w-\[44px\]{min-width:44px}.min-w-\[var\(--layout-touch-target\)\]{min-width:var(--layout-touch-target)}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-y{resize:vertical}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-1) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-2) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-3) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-4) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-5) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-6) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-6) * calc(1 - var(--tw-space-y-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-\[var\(--color-border\)\]>:not(:last-child)){border-color:var(--color-border)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-\[var\(--radius-sm\)\]{border-radius:var(--radius-sm)}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-\[3px\]{border-left-style:var(--tw-border-style);border-left-width:3px}.border-\[var\(--color-border\)\]{border-color:var(--color-border)}.border-\[var\(--color-error\)\]{border-color:var(--color-error)}.border-\[var\(--color-primary\)\]{border-color:var(--color-primary)}.border-transparent{border-color:#0000}.border-l-\[var\(--color-primary\)\]{border-left-color:var(--color-primary)}.bg-\[var\(--badge-app-bg\)\]{background-color:var(--badge-app-bg)}.bg-\[var\(--badge-comment-bg\)\]{background-color:var(--badge-comment-bg)}.bg-\[var\(--badge-create-bg\)\]{background-color:var(--badge-create-bg)}.bg-\[var\(--badge-group-bg\)\]{background-color:var(--badge-group-bg)}.bg-\[var\(--badge-match-bg\)\]{background-color:var(--badge-match-bg)}.bg-\[var\(--badge-mcp-bg\)\]{background-color:var(--badge-mcp-bg)}.bg-\[var\(--badge-other-bg\)\]{background-color:var(--badge-other-bg)}.bg-\[var\(--badge-personal-bg\)\]{background-color:var(--badge-personal-bg)}.bg-\[var\(--badge-refine-bg\)\]{background-color:var(--badge-refine-bg)}.bg-\[var\(--badge-shell-bg\)\]{background-color:var(--badge-shell-bg)}.bg-\[var\(--badge-user-input-bg\)\]{background-color:var(--badge-user-input-bg)}.bg-\[var\(--color-border\)\]{background-color:var(--color-border)}.bg-\[var\(--color-error-bg\)\]{background-color:var(--color-error-bg)}.bg-\[var\(--color-primary\)\]{background-color:var(--color-primary)}.bg-\[var\(--color-surface\)\]{background-color:var(--color-surface)}.bg-\[var\(--color-surface-elevated\)\]{background-color:var(--color-surface-elevated)}.bg-\[var\(--status-success-bg\)\]{background-color:var(--status-success-bg)}.bg-surface{background-color:var(--color-surface)}.bg-transparent{background-color:#0000}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0{padding:var(--space-0)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-2{padding-inline:var(--space-2)}.px-3{padding-inline:var(--space-3)}.px-4{padding-inline:var(--space-4)}.px-\[var\(--layout-main-padding-x\)\]{padding-inline:var(--layout-main-padding-x)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:var(--space-2)}.py-3{padding-block:var(--space-3)}.py-4{padding-block:var(--space-4)}.py-\[var\(--layout-main-padding-y\)\]{padding-block:var(--layout-main-padding-y)}.pt-3{padding-top:var(--space-3)}.pt-4{padding-top:var(--space-4)}.pb-0{padding-bottom:var(--space-0)}.pb-4{padding-bottom:var(--space-4)}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-5{--tw-leading:var(--space-5);line-height:var(--space-5)}.leading-6{--tw-leading:var(--space-6);line-height:var(--space-6)}.leading-none{--tw-leading:1;line-height:1}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.text-\[var\(--badge-app-fg\)\]{color:var(--badge-app-fg)}.text-\[var\(--badge-comment-fg\)\]{color:var(--badge-comment-fg)}.text-\[var\(--badge-create-fg\)\]{color:var(--badge-create-fg)}.text-\[var\(--badge-group-fg\)\]{color:var(--badge-group-fg)}.text-\[var\(--badge-match-fg\)\]{color:var(--badge-match-fg)}.text-\[var\(--badge-mcp-fg\)\]{color:var(--badge-mcp-fg)}.text-\[var\(--badge-other-fg\)\]{color:var(--badge-other-fg)}.text-\[var\(--badge-personal-fg\)\]{color:var(--badge-personal-fg)}.text-\[var\(--badge-refine-fg\)\]{color:var(--badge-refine-fg)}.text-\[var\(--badge-shell-fg\)\]{color:var(--badge-shell-fg)}.text-\[var\(--badge-user-input-fg\)\]{color:var(--badge-user-input-fg)}.text-\[var\(--color-error\)\]{color:var(--color-error)}.text-\[var\(--color-primary\)\]{color:var(--color-primary)}.text-\[var\(--color-text\)\]{color:var(--color-text)}.text-\[var\(--color-text-heading\)\]{color:var(--color-text-heading)}.text-\[var\(--color-text-muted\)\]{color:var(--color-text-muted)}.text-\[var\(--status-success-fg\)\]{color:var(--status-success-fg)}.text-text{color:var(--color-text)}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.opacity-50{opacity:.5}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-\[var\(--color-primary\)\]{--tw-ring-color:var(--color-primary)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.ring-offset-\[var\(--color-surface\)\]{--tw-ring-offset-color:var(--color-surface)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.outline-offset-2{outline-offset:2px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:bg-\[var\(--color-primary-hover\)\]:hover{background-color:var(--color-primary-hover)}.hover\:bg-\[var\(--color-surface\)\]:hover{background-color:var(--color-surface)}.hover\:bg-\[var\(--color-surface-elevated\)\]:hover{background-color:var(--color-surface-elevated)}.hover\:text-\[var\(--color-text\)\]:hover{color:var(--color-text)}.hover\:text-\[var\(--color-text-heading\)\]:hover{color:var(--color-text-heading)}.hover\:no-underline:hover{text-decoration-line:none}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-\[var\(--color-focus-ring\)\]:focus-visible{outline-color:var(--color-focus-ring)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}@media (width>=40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:inline{display:inline}.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:items-start{align-items:flex-start}.sm\:justify-between{justify-content:space-between}}@media (width>=48rem){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.md\:flex-col{flex-direction:column}.md\:items-end{align-items:flex-end}.md\:items-stretch{align-items:stretch}.md\:pb-0{padding-bottom:var(--space-0)}}@media (width>=64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=80rem){.xl\:grid-cols-\[1\.3fr_1fr\]{grid-template-columns:1.3fr 1fr}.xl\:grid-cols-\[1\.6fr_1fr\]{grid-template-columns:1.6fr 1fr}.xl\:grid-cols-\[1\.45fr_1fr\]{grid-template-columns:1.45fr 1fr}}.\[\&_a\]\:text-\[var\(--color-primary\)\] a{color:var(--color-primary)}.\[\&_a\]\:underline a{text-decoration-line:underline}.\[\&_a\:focus-visible\]\:outline a:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.\[\&_a\:focus-visible\]\:outline-2 a:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.\[\&_a\:focus-visible\]\:outline-offset-2 a:focus-visible{outline-offset:2px}.\[\&_a\:focus-visible\]\:outline-\[var\(--color-focus-ring\)\] a:focus-visible{outline-color:var(--color-focus-ring)}.\[\&_a\:hover\]\:no-underline a:hover{text-decoration-line:none}.\[\&_blockquote\]\:border-l-4 blockquote{border-left-style:var(--tw-border-style);border-left-width:4px}.\[\&_blockquote\]\:border-\[var\(--color-border\)\] blockquote{border-color:var(--color-border)}.\[\&_blockquote\]\:pl-4 blockquote{padding-left:var(--space-4)}.\[\&_blockquote\]\:text-\[var\(--color-text-muted\)\] blockquote{color:var(--color-text-muted)}.\[\&_blockquote\]\:italic blockquote{font-style:italic}.\[\&_code\]\:rounded code{border-radius:.25rem}.\[\&_code\]\:bg-\[var\(--color-surface-elevated\)\] code{background-color:var(--color-surface-elevated)}.\[\&_code\]\:px-1\.5 code{padding-inline:calc(var(--spacing) * 1.5)}.\[\&_code\]\:py-0\.5 code{padding-block:calc(var(--spacing) * .5)}.\[\&_code\]\:font-mono code{font-family:var(--font-mono)}.\[\&_code\]\:text-xs code{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_h1\]\:mt-4 h1{margin-top:var(--space-4)}.\[\&_h1\]\:mb-2 h1{margin-bottom:var(--space-2)}.\[\&_h1\]\:text-xl h1{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.\[\&_h1\]\:font-semibold h1{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_h1\]\:text-\[var\(--color-text-heading\)\] h1{color:var(--color-text-heading)}.\[\&_h2\]\:mt-4 h2{margin-top:var(--space-4)}.\[\&_h2\]\:mb-2 h2{margin-bottom:var(--space-2)}.\[\&_h2\]\:text-lg h2{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.\[\&_h2\]\:font-semibold h2{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_h2\]\:text-\[var\(--color-text-heading\)\] h2{color:var(--color-text-heading)}.\[\&_h3\]\:mt-3 h3{margin-top:var(--space-3)}.\[\&_h3\]\:mb-1 h3{margin-bottom:var(--space-1)}.\[\&_h3\]\:text-base h3{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.\[\&_h3\]\:font-medium h3{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_h3\]\:text-\[var\(--color-text-heading\)\] h3{color:var(--color-text-heading)}.\[\&_li\]\:my-0\.5 li{margin-block:calc(var(--spacing) * .5)}.\[\&_ol\]\:my-3 ol{margin-block:var(--space-3)}.\[\&_ol\]\:pl-6 ol{padding-left:var(--space-6)}.\[\&_p\]\:mt-0 p{margin-top:var(--space-0)}.\[\&_p\+p\]\:mt-3 p+p{margin-top:var(--space-3)}.\[\&_p\:first-child\]\:mt-0 p:first-child{margin-top:var(--space-0)}.\[\&_pre\]\:my-3 pre{margin-block:var(--space-3)}.\[\&_pre\]\:overflow-x-auto pre{overflow-x:auto}.\[\&_pre\]\:rounded-\[var\(--radius-md\)\] pre{border-radius:var(--radius-md)}.\[\&_pre\]\:bg-\[var\(--color-surface-elevated\)\] pre{background-color:var(--color-surface-elevated)}.\[\&_pre\]\:p-3 pre{padding:var(--space-3)}.\[\&_pre\]\:font-mono pre{font-family:var(--font-mono)}.\[\&_pre\]\:text-sm pre{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.\[\&_pre\]\:whitespace-pre-wrap pre{white-space:pre-wrap}.\[\&_pre_code\]\:bg-transparent pre code{background-color:#0000}.\[\&_pre_code\]\:p-0 pre code{padding:var(--space-0)}.\[\&_pre_code\]\:text-inherit pre code{color:inherit}.\[\&_strong\]\:font-semibold strong{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_strong\]\:text-\[var\(--color-text-heading\)\] strong{color:var(--color-text-heading)}.\[\&_table\]\:my-3 table{margin-block:var(--space-3)}.\[\&_table\]\:my-4 table{margin-block:var(--space-4)}.\[\&_table\]\:w-full table{width:100%}.\[\&_table\]\:border-collapse table{border-collapse:collapse}.\[\&_table\]\:text-left table{text-align:left}.\[\&_td\]\:border td{border-style:var(--tw-border-style);border-width:1px}.\[\&_td\]\:border-\[var\(--color-border\)\] td{border-color:var(--color-border)}.\[\&_td\]\:px-2 td{padding-inline:var(--space-2)}.\[\&_td\]\:px-3 td{padding-inline:var(--space-3)}.\[\&_td\]\:py-1\.5 td{padding-block:calc(var(--spacing) * 1.5)}.\[\&_td\]\:py-2 td{padding-block:var(--space-2)}.\[\&_th\]\:border th{border-style:var(--tw-border-style);border-width:1px}.\[\&_th\]\:border-\[var\(--color-border\)\] th{border-color:var(--color-border)}.\[\&_th\]\:bg-\[var\(--color-surface-elevated\)\] th{background-color:var(--color-surface-elevated)}.\[\&_th\]\:px-2 th{padding-inline:var(--space-2)}.\[\&_th\]\:px-3 th{padding-inline:var(--space-3)}.\[\&_th\]\:py-1\.5 th{padding-block:calc(var(--spacing) * 1.5)}.\[\&_th\]\:py-2 th{padding-block:var(--space-2)}.\[\&_th\]\:font-semibold th{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_th\]\:text-\[var\(--color-text-heading\)\] th{color:var(--color-text-heading)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\]\:border-\[var\(--color-border\)\] tr{border-color:var(--color-border)}.\[\&_tr\:last-child\]\:border-b-0 tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&_ul\]\:my-3 ul{margin-block:var(--space-3)}.\[\&_ul\]\:pl-6 ul{padding-left:var(--space-6)}}:root{--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--font-sans:system-ui, sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.6;--letter-spacing-uppercase:.1em;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--layout-main-max:80rem;--layout-main-narrow:48rem;--layout-main-wide:72rem;--layout-sidebar-width:12rem;--layout-touch-target:44px;--layout-main-padding-x:1.5rem;--layout-main-padding-y:1.5rem;--section-gap:var(--space-8);--card-padding:var(--space-6)}html,body{background:var(--color-surface);min-height:100%;color:var(--color-text)}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{margin:0}@media (width>=1024px){:root{--layout-main-padding-x:2rem}}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}:root{--color-primary:#0d9488;--color-primary-hover:#0f766e;--color-primary-focus:#0d9488;--color-secondary:#64748b;--color-accent:#0ea5e9;--color-text:#1e293b;--color-text-heading:#0f172a;--color-text-muted:#64748b;--color-surface:#fff;--color-surface-elevated:#f8fafc;--color-border:#e2e8f0;--color-error:#dc2626;--color-error-bg:#fef2f2;--color-success:#16a34a;--color-warning:#d97706;--color-focus-ring:var(--color-primary);--badge-shell-bg:#fef3c7;--badge-shell-fg:#92400e;--badge-mcp-bg:#dbeafe;--badge-mcp-fg:#1e40af;--badge-user-input-bg:#ede9fe;--badge-user-input-fg:#5b21b6;--badge-comment-bg:#e2e8f0;--badge-comment-fg:#334155;--badge-match-bg:#dcfce7;--badge-match-fg:#166534;--badge-refine-bg:#dbeafe;--badge-refine-fg:#1e40af;--badge-create-bg:#fef3c7;--badge-create-fg:#92400e;--badge-personal-bg:#dcfce7;--badge-personal-fg:#166534;--badge-group-bg:#dbeafe;--badge-group-fg:#1e40af;--badge-app-bg:#fef3c7;--badge-app-fg:#92400e;--badge-other-bg:#f1f5f9;--badge-other-fg:#475569;--status-success-bg:#dcfce7;--status-success-fg:#166534}html[data-theme=dark]{--color-primary:#14b8a6;--color-primary-hover:#0d9488;--color-primary-focus:#2dd4bf;--color-secondary:#94a3b8;--color-accent:#38bdf8;--color-text:#e2e8f0;--color-text-heading:#f8fafc;--color-text-muted:#94a3b8;--color-surface:#0f172a;--color-surface-elevated:#1e293b;--color-border:#334155;--color-error:#f87171;--color-error-bg:#7f1d1d;--color-success:#4ade80;--color-warning:#fbbf24;--color-focus-ring:#2dd4bf;--badge-shell-bg:#78350f;--badge-shell-fg:#fde68a;--badge-mcp-bg:#1e3a8a;--badge-mcp-fg:#bfdbfe;--badge-user-input-bg:#4c1d95;--badge-user-input-fg:#ddd6fe;--badge-comment-bg:#334155;--badge-comment-fg:#cbd5e1;--badge-match-bg:#14532d;--badge-match-fg:#bbf7d0;--badge-refine-bg:#1e3a8a;--badge-refine-fg:#bfdbfe;--badge-create-bg:#78350f;--badge-create-fg:#fde68a;--badge-personal-bg:#14532d;--badge-personal-fg:#bbf7d0;--badge-group-bg:#1e3a8a;--badge-group-fg:#bfdbfe;--badge-app-bg:#78350f;--badge-app-fg:#fde68a;--badge-other-bg:#334155;--badge-other-fg:#cbd5e1;--status-success-bg:#14532d;--status-success-fg:#bbf7d0}.skip-link{top:-100%;left:var(--space-4);padding:var(--space-2) var(--space-4);background:var(--color-primary);color:#fff;font-weight:var(--font-weight-medium);z-index:100;border-radius:var(--radius-md);position:absolute}.skip-link:focus{top:var(--space-4)}.skip-link:focus:not(:focus-visible){top:-100%}.skip-link:focus-visible{top:var(--space-4)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="512" height="512" viewBox="0 0 512 512">
|
|
3
|
+
<title>KAIROS MCP Logo</title>
|
|
4
|
+
<defs>
|
|
5
|
+
<linearGradient id="grad-a" x1="64" y1="64" x2="448" y2="448" gradientUnits="userSpaceOnUse">
|
|
6
|
+
<stop offset="0" stop-color="#7C3AED"/>
|
|
7
|
+
<stop offset="0.5" stop-color="#06B6D4"/>
|
|
8
|
+
<stop offset="1" stop-color="#22C55E"/>
|
|
9
|
+
</linearGradient>
|
|
10
|
+
<linearGradient id="grad-b" x1="96" y1="416" x2="416" y2="96" gradientUnits="userSpaceOnUse">
|
|
11
|
+
<stop offset="0" stop-color="#F97316"/>
|
|
12
|
+
<stop offset="1" stop-color="#FACC15"/>
|
|
13
|
+
</linearGradient>
|
|
14
|
+
</defs>
|
|
15
|
+
<rect width="512" height="512" rx="112" fill="#08111F"/>
|
|
16
|
+
<path d="M118 336c48 0 48-160 96-160s48 160 96 160s48-160 96-160" fill="none" stroke="#223454" stroke-width="24" stroke-linecap="round"/>
|
|
17
|
+
<path d="M118 336c48 0 48-160 96-160s48 160 96 160s48-160 96-160" fill="none" stroke="url(#grad-a)" stroke-width="12" stroke-linecap="round"/>
|
|
18
|
+
<g>
|
|
19
|
+
<circle cx="118" cy="336" r="20" fill="#F8FAFC"/>
|
|
20
|
+
<circle cx="214" cy="176" r="20" fill="#F97316"/>
|
|
21
|
+
<circle cx="310" cy="336" r="20" fill="#06B6D4"/>
|
|
22
|
+
<circle cx="406" cy="176" r="20" fill="#22C55E"/>
|
|
23
|
+
</g>
|
|
24
|
+
</svg>
|