@tai42/api-client 15.0.0 → 16.0.1
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/dist/client/agents-client.d.ts +26 -0
- package/dist/client/agents-client.d.ts.map +1 -0
- package/dist/client/agents-client.js +19 -0
- package/dist/client/agents-client.js.map +1 -0
- package/dist/client/auth-client.d.ts +205 -0
- package/dist/client/auth-client.d.ts.map +1 -0
- package/dist/client/auth-client.js +59 -0
- package/dist/client/auth-client.js.map +1 -0
- package/dist/client/backend-client.d.ts +39 -0
- package/dist/client/backend-client.d.ts.map +1 -0
- package/dist/client/backend-client.js +22 -0
- package/dist/client/backend-client.js.map +1 -0
- package/dist/client/backup-client.d.ts +56 -0
- package/dist/client/backup-client.d.ts.map +1 -0
- package/dist/client/backup-client.js +12 -0
- package/dist/client/backup-client.js.map +1 -0
- package/dist/client/capabilities-client.d.ts +35 -0
- package/dist/client/capabilities-client.d.ts.map +1 -0
- package/dist/client/capabilities-client.js +19 -0
- package/dist/client/capabilities-client.js.map +1 -0
- package/dist/client/channels-client.d.ts +7 -0
- package/dist/client/channels-client.d.ts.map +1 -0
- package/dist/client/channels-client.js +10 -0
- package/dist/client/channels-client.js.map +1 -0
- package/dist/client/config-client.d.ts +59 -0
- package/dist/client/config-client.d.ts.map +1 -0
- package/dist/client/config-client.js +18 -0
- package/dist/client/config-client.js.map +1 -0
- package/dist/client/connectors-client.d.ts +225 -0
- package/dist/client/connectors-client.d.ts.map +1 -0
- package/dist/client/connectors-client.js +31 -0
- package/dist/client/connectors-client.js.map +1 -0
- package/dist/client/conversations-client.d.ts +399 -0
- package/dist/client/conversations-client.d.ts.map +1 -0
- package/dist/client/conversations-client.js +120 -0
- package/dist/client/conversations-client.js.map +1 -0
- package/dist/client/hooks-client.d.ts +113 -0
- package/dist/client/hooks-client.d.ts.map +1 -0
- package/dist/client/hooks-client.js +25 -0
- package/dist/client/hooks-client.js.map +1 -0
- package/dist/{client.d.ts → client/index.d.ts} +2199 -2508
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +79 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/interactions-client.d.ts +52 -0
- package/dist/client/interactions-client.d.ts.map +1 -0
- package/dist/client/interactions-client.js +84 -0
- package/dist/client/interactions-client.js.map +1 -0
- package/dist/client/login-client.d.ts +56 -0
- package/dist/client/login-client.d.ts.map +1 -0
- package/dist/client/login-client.js +103 -0
- package/dist/client/login-client.js.map +1 -0
- package/dist/client/manifest-client.d.ts +354 -0
- package/dist/client/manifest-client.d.ts.map +1 -0
- package/dist/client/manifest-client.js +76 -0
- package/dist/client/manifest-client.js.map +1 -0
- package/dist/client/marketplace-client.d.ts +274 -0
- package/dist/client/marketplace-client.d.ts.map +1 -0
- package/dist/client/marketplace-client.js +46 -0
- package/dist/client/marketplace-client.js.map +1 -0
- package/dist/client/mcp-config-schema-client.d.ts +5 -0
- package/dist/client/mcp-config-schema-client.d.ts.map +1 -0
- package/dist/client/mcp-config-schema-client.js +9 -0
- package/dist/client/mcp-config-schema-client.js.map +1 -0
- package/dist/client/notifications-client.d.ts +27 -0
- package/dist/client/notifications-client.d.ts.map +1 -0
- package/dist/client/notifications-client.js +11 -0
- package/dist/client/notifications-client.js.map +1 -0
- package/dist/client/observability-client.d.ts +103 -0
- package/dist/client/observability-client.d.ts.map +1 -0
- package/dist/client/observability-client.js +43 -0
- package/dist/client/observability-client.js.map +1 -0
- package/dist/client/plugins-client.d.ts +17 -0
- package/dist/client/plugins-client.d.ts.map +1 -0
- package/dist/client/plugins-client.js +9 -0
- package/dist/client/plugins-client.js.map +1 -0
- package/dist/client/policy-client.d.ts +37 -0
- package/dist/client/policy-client.d.ts.map +1 -0
- package/dist/client/policy-client.js +26 -0
- package/dist/client/policy-client.js.map +1 -0
- package/dist/client/presets-client.d.ts +335 -0
- package/dist/client/presets-client.d.ts.map +1 -0
- package/dist/client/presets-client.js +38 -0
- package/dist/client/presets-client.js.map +1 -0
- package/dist/client/profiles-client.d.ts +102 -0
- package/dist/client/profiles-client.d.ts.map +1 -0
- package/dist/client/profiles-client.js +37 -0
- package/dist/client/profiles-client.js.map +1 -0
- package/dist/client/schedules-client.d.ts +28 -0
- package/dist/client/schedules-client.d.ts.map +1 -0
- package/dist/client/schedules-client.js +13 -0
- package/dist/client/schedules-client.js.map +1 -0
- package/dist/client/settings-schema-client.d.ts +23 -0
- package/dist/client/settings-schema-client.d.ts.map +1 -0
- package/dist/client/settings-schema-client.js +9 -0
- package/dist/client/settings-schema-client.js.map +1 -0
- package/dist/client/states-client.d.ts +471 -0
- package/dist/client/states-client.d.ts.map +1 -0
- package/dist/client/states-client.js +144 -0
- package/dist/client/states-client.js.map +1 -0
- package/dist/client/storage-client.d.ts +40 -0
- package/dist/client/storage-client.d.ts.map +1 -0
- package/dist/client/storage-client.js +43 -0
- package/dist/client/storage-client.js.map +1 -0
- package/dist/client/sub-mcp-client.d.ts +17 -0
- package/dist/client/sub-mcp-client.d.ts.map +1 -0
- package/dist/client/sub-mcp-client.js +14 -0
- package/dist/client/sub-mcp-client.js.map +1 -0
- package/dist/client/system-client.d.ts +11 -0
- package/dist/client/system-client.d.ts.map +1 -0
- package/dist/client/system-client.js +13 -0
- package/dist/client/system-client.js.map +1 -0
- package/dist/client/templates-client.d.ts +29 -0
- package/dist/client/templates-client.d.ts.map +1 -0
- package/dist/client/templates-client.js +21 -0
- package/dist/client/templates-client.js.map +1 -0
- package/dist/client/tool-extensions-client.d.ts +54 -0
- package/dist/client/tool-extensions-client.d.ts.map +1 -0
- package/dist/client/tool-extensions-client.js +21 -0
- package/dist/client/tool-extensions-client.js.map +1 -0
- package/dist/client/tool-meta-client.d.ts +69 -0
- package/dist/client/tool-meta-client.d.ts.map +1 -0
- package/dist/client/tool-meta-client.js +38 -0
- package/dist/client/tool-meta-client.js.map +1 -0
- package/dist/client/tools-client.d.ts +83 -0
- package/dist/client/tools-client.d.ts.map +1 -0
- package/dist/client/tools-client.js +38 -0
- package/dist/client/tools-client.js.map +1 -0
- package/dist/client/transport.d.ts +13 -0
- package/dist/client/transport.d.ts.map +1 -0
- package/dist/client/transport.js +10 -0
- package/dist/client/transport.js.map +1 -0
- package/dist/client/trigger-links-client.d.ts +44 -0
- package/dist/client/trigger-links-client.d.ts.map +1 -0
- package/dist/client/trigger-links-client.js +30 -0
- package/dist/client/trigger-links-client.js.map +1 -0
- package/dist/client/web-entry-gate-client.d.ts +34 -0
- package/dist/client/web-entry-gate-client.d.ts.map +1 -0
- package/dist/client/web-entry-gate-client.js +25 -0
- package/dist/client/web-entry-gate-client.js.map +1 -0
- package/dist/generated/served-schemas.d.ts +748 -0
- package/dist/generated/served-schemas.d.ts.map +1 -0
- package/dist/generated/served-schemas.js +60 -0
- package/dist/generated/served-schemas.js.map +1 -0
- package/dist/http.d.ts.map +1 -1
- package/dist/http.js +33 -17
- package/dist/http.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/schemas/api-keys.d.ts +34 -0
- package/dist/schemas/api-keys.d.ts.map +1 -0
- package/dist/schemas/api-keys.js +22 -0
- package/dist/schemas/api-keys.js.map +1 -0
- package/dist/schemas/auth-routes.d.ts +78 -0
- package/dist/schemas/auth-routes.d.ts.map +1 -0
- package/dist/schemas/auth-routes.js +42 -0
- package/dist/schemas/auth-routes.js.map +1 -0
- package/dist/schemas/backup.d.ts +78 -0
- package/dist/schemas/backup.d.ts.map +1 -0
- package/dist/schemas/backup.js +33 -0
- package/dist/schemas/backup.js.map +1 -0
- package/dist/schemas/capabilities.d.ts +99 -0
- package/dist/schemas/capabilities.d.ts.map +1 -0
- package/dist/schemas/capabilities.js +74 -0
- package/dist/schemas/capabilities.js.map +1 -0
- package/dist/schemas/channels.d.ts +7 -0
- package/dist/schemas/channels.d.ts.map +1 -0
- package/dist/schemas/channels.js +9 -0
- package/dist/schemas/channels.js.map +1 -0
- package/dist/schemas/config.d.ts +17 -0
- package/dist/schemas/config.d.ts.map +1 -0
- package/dist/schemas/config.js +17 -0
- package/dist/schemas/config.js.map +1 -0
- package/dist/schemas/connectors.d.ts +383 -0
- package/dist/schemas/connectors.d.ts.map +1 -0
- package/dist/schemas/connectors.js +122 -0
- package/dist/schemas/connectors.js.map +1 -0
- package/dist/schemas/conversations.d.ts +600 -0
- package/dist/schemas/conversations.d.ts.map +1 -0
- package/dist/schemas/conversations.js +208 -0
- package/dist/schemas/conversations.js.map +1 -0
- package/dist/schemas/extensions.d.ts +44 -0
- package/dist/schemas/extensions.d.ts.map +1 -0
- package/dist/schemas/extensions.js +29 -0
- package/dist/schemas/extensions.js.map +1 -0
- package/dist/schemas/fleet.d.ts +271 -0
- package/dist/schemas/fleet.d.ts.map +1 -0
- package/dist/schemas/fleet.js +132 -0
- package/dist/schemas/fleet.js.map +1 -0
- package/dist/schemas/hooks.d.ts +120 -0
- package/dist/schemas/hooks.d.ts.map +1 -0
- package/dist/schemas/hooks.js +44 -0
- package/dist/schemas/hooks.js.map +1 -0
- package/dist/schemas/index.d.ts +38 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +38 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/interactions.d.ts +156 -0
- package/dist/schemas/interactions.d.ts.map +1 -0
- package/dist/schemas/interactions.js +124 -0
- package/dist/schemas/interactions.js.map +1 -0
- package/dist/schemas/login.d.ts +86 -0
- package/dist/schemas/login.d.ts.map +1 -0
- package/dist/schemas/login.js +54 -0
- package/dist/schemas/login.js.map +1 -0
- package/dist/schemas/manifest-mcp.d.ts +125 -0
- package/dist/schemas/manifest-mcp.d.ts.map +1 -0
- package/dist/schemas/manifest-mcp.js +61 -0
- package/dist/schemas/manifest-mcp.js.map +1 -0
- package/dist/schemas/marketplace.d.ts +708 -0
- package/dist/schemas/marketplace.d.ts.map +1 -0
- package/dist/schemas/marketplace.js +387 -0
- package/dist/schemas/marketplace.js.map +1 -0
- package/dist/schemas/notifications.d.ts +61 -0
- package/dist/schemas/notifications.d.ts.map +1 -0
- package/dist/schemas/notifications.js +38 -0
- package/dist/schemas/notifications.js.map +1 -0
- package/dist/schemas/observability.d.ts +114 -0
- package/dist/schemas/observability.d.ts.map +1 -0
- package/dist/schemas/observability.js +74 -0
- package/dist/schemas/observability.js.map +1 -0
- package/dist/schemas/policy.d.ts +58 -0
- package/dist/schemas/policy.d.ts.map +1 -0
- package/dist/schemas/policy.js +32 -0
- package/dist/schemas/policy.js.map +1 -0
- package/dist/schemas/presets.d.ts +258 -0
- package/dist/schemas/presets.d.ts.map +1 -0
- package/dist/schemas/presets.js +95 -0
- package/dist/schemas/presets.js.map +1 -0
- package/dist/schemas/profiles.d.ts +180 -0
- package/dist/schemas/profiles.d.ts.map +1 -0
- package/dist/schemas/profiles.js +100 -0
- package/dist/schemas/profiles.js.map +1 -0
- package/dist/schemas/roles.d.ts +125 -0
- package/dist/schemas/roles.d.ts.map +1 -0
- package/dist/schemas/roles.js +46 -0
- package/dist/schemas/roles.js.map +1 -0
- package/dist/schemas/schedules.d.ts +25 -0
- package/dist/schemas/schedules.d.ts.map +1 -0
- package/dist/schemas/schedules.js +24 -0
- package/dist/schemas/schedules.js.map +1 -0
- package/dist/schemas/served.d.ts +626 -0
- package/dist/schemas/served.d.ts.map +1 -0
- package/dist/schemas/served.js +28 -0
- package/dist/schemas/served.js.map +1 -0
- package/dist/schemas/settings-schema.d.ts +23 -0
- package/dist/schemas/settings-schema.d.ts.map +1 -0
- package/dist/schemas/settings-schema.js +25 -0
- package/dist/schemas/settings-schema.js.map +1 -0
- package/dist/schemas/shared.d.ts +20 -0
- package/dist/schemas/shared.d.ts.map +1 -0
- package/dist/schemas/shared.js +20 -0
- package/dist/schemas/shared.js.map +1 -0
- package/dist/schemas/states.d.ts +499 -0
- package/dist/schemas/states.d.ts.map +1 -0
- package/dist/schemas/states.js +220 -0
- package/dist/schemas/states.js.map +1 -0
- package/dist/schemas/storage.d.ts +37 -0
- package/dist/schemas/storage.d.ts.map +1 -0
- package/dist/schemas/storage.js +24 -0
- package/dist/schemas/storage.js.map +1 -0
- package/dist/schemas/studio-plugins.d.ts +30 -0
- package/dist/schemas/studio-plugins.d.ts.map +1 -0
- package/dist/schemas/studio-plugins.js +20 -0
- package/dist/schemas/studio-plugins.js.map +1 -0
- package/dist/schemas/sub-mcp.d.ts +29 -0
- package/dist/schemas/sub-mcp.d.ts.map +1 -0
- package/dist/schemas/sub-mcp.js +22 -0
- package/dist/schemas/sub-mcp.js.map +1 -0
- package/dist/schemas/system-kinds.d.ts +122 -0
- package/dist/schemas/system-kinds.d.ts.map +1 -0
- package/dist/schemas/system-kinds.js +40 -0
- package/dist/schemas/system-kinds.js.map +1 -0
- package/dist/schemas/templates.d.ts +26 -0
- package/dist/schemas/templates.d.ts.map +1 -0
- package/dist/schemas/templates.js +11 -0
- package/dist/schemas/templates.js.map +1 -0
- package/dist/schemas/tool-meta.d.ts +64 -0
- package/dist/schemas/tool-meta.d.ts.map +1 -0
- package/dist/schemas/tool-meta.js +44 -0
- package/dist/schemas/tool-meta.js.map +1 -0
- package/dist/schemas/tools.d.ts +62 -0
- package/dist/schemas/tools.d.ts.map +1 -0
- package/dist/schemas/tools.js +53 -0
- package/dist/schemas/tools.js.map +1 -0
- package/dist/schemas/trigger-links.d.ts +71 -0
- package/dist/schemas/trigger-links.d.ts.map +1 -0
- package/dist/schemas/trigger-links.js +46 -0
- package/dist/schemas/trigger-links.js.map +1 -0
- package/dist/schemas/web-entry.d.ts +45 -0
- package/dist/schemas/web-entry.d.ts.map +1 -0
- package/dist/schemas/web-entry.js +36 -0
- package/dist/schemas/web-entry.js.map +1 -0
- package/dist/templated-text.d.ts +30 -0
- package/dist/templated-text.d.ts.map +1 -0
- package/dist/templated-text.js +30 -0
- package/dist/templated-text.js.map +1 -0
- package/dist/tool-runs.d.ts +4 -4
- package/package.json +6 -2
- package/src/client/agents-client.ts +23 -0
- package/src/client/auth-client.ts +144 -0
- package/src/client/backend-client.ts +25 -0
- package/src/client/backup-client.ts +16 -0
- package/src/client/capabilities-client.ts +22 -0
- package/src/client/channels-client.ts +11 -0
- package/src/client/config-client.ts +21 -0
- package/src/client/connectors-client.ts +52 -0
- package/src/client/conversations-client.ts +240 -0
- package/src/client/hooks-client.ts +44 -0
- package/src/client/index.ts +122 -0
- package/src/client/interactions-client.ts +89 -0
- package/src/client/login-client.ts +109 -0
- package/src/client/manifest-client.ts +118 -0
- package/src/client/marketplace-client.ts +122 -0
- package/src/client/mcp-config-schema-client.ts +11 -0
- package/src/client/notifications-client.ts +13 -0
- package/src/client/observability-client.ts +82 -0
- package/src/client/plugins-client.ts +11 -0
- package/src/client/policy-client.ts +41 -0
- package/src/client/presets-client.ts +124 -0
- package/src/client/profiles-client.ts +51 -0
- package/src/client/schedules-client.ts +22 -0
- package/src/client/settings-schema-client.ts +11 -0
- package/src/client/states-client.ts +292 -0
- package/src/client/storage-client.ts +63 -0
- package/src/client/sub-mcp-client.ts +17 -0
- package/src/client/system-client.ts +16 -0
- package/src/client/templates-client.ts +28 -0
- package/src/client/tool-extensions-client.ts +24 -0
- package/src/client/tool-meta-client.ts +65 -0
- package/src/client/tools-client.ts +66 -0
- package/src/client/transport.ts +18 -0
- package/src/client/trigger-links-client.ts +51 -0
- package/src/client/web-entry-gate-client.ts +45 -0
- package/src/generated/served-schemas.ts +126 -0
- package/src/http.ts +48 -24
- package/src/index.ts +1 -0
- package/src/schemas/api-keys.ts +26 -0
- package/src/schemas/auth-routes.ts +48 -0
- package/src/schemas/backup.ts +42 -0
- package/src/schemas/capabilities.ts +87 -0
- package/src/schemas/channels.ts +11 -0
- package/src/schemas/config.ts +17 -0
- package/src/schemas/connectors.ts +138 -0
- package/src/schemas/conversations.ts +256 -0
- package/src/schemas/extensions.ts +34 -0
- package/src/schemas/fleet.ts +153 -0
- package/src/schemas/hooks.ts +56 -0
- package/src/schemas/index.ts +37 -0
- package/src/schemas/interactions.ts +146 -0
- package/src/schemas/login.ts +62 -0
- package/src/schemas/manifest-mcp.ts +69 -0
- package/src/schemas/marketplace.ts +447 -0
- package/src/schemas/notifications.ts +42 -0
- package/src/schemas/observability.ts +86 -0
- package/src/schemas/policy.ts +37 -0
- package/src/schemas/presets.ts +113 -0
- package/src/schemas/profiles.ts +119 -0
- package/src/schemas/roles.ts +57 -0
- package/src/schemas/schedules.ts +27 -0
- package/src/schemas/served.ts +49 -0
- package/src/schemas/settings-schema.ts +31 -0
- package/src/schemas/shared.ts +21 -0
- package/src/schemas/states.ts +272 -0
- package/src/schemas/storage.ts +31 -0
- package/src/schemas/studio-plugins.ts +21 -0
- package/src/schemas/sub-mcp.ts +24 -0
- package/src/schemas/system-kinds.ts +46 -0
- package/src/schemas/templates.ts +11 -0
- package/src/schemas/tool-meta.ts +51 -0
- package/src/schemas/tools.ts +61 -0
- package/src/schemas/trigger-links.ts +54 -0
- package/src/schemas/web-entry.ts +46 -0
- package/src/templated-text.ts +35 -0
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js +0 -920
- package/dist/client.js.map +0 -1
- package/dist/schemas.d.ts +0 -5152
- package/dist/schemas.d.ts.map +0 -1
- package/dist/schemas.js +0 -2556
- package/dist/schemas.js.map +0 -1
- package/src/client.ts +0 -1765
- package/src/schemas.ts +0 -3067
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/schemas/templates.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AACjD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;AACrF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC1F,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC3F,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACnE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/** Tool-organization overlay (folders and per-tool meta) schemas. */
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
/**
|
|
4
|
+
* One folder in the tool-organization tree (`tool_folders`). `parent_id` is `null`
|
|
5
|
+
* for a root folder and otherwise the containing folder's `id`; nesting is endless
|
|
6
|
+
* via the parent chain. Ids are UUID strings. A drift throws `ApiSchemaError`.
|
|
7
|
+
*/
|
|
8
|
+
export declare const folderRecord: z.ZodObject<{
|
|
9
|
+
id: z.ZodString;
|
|
10
|
+
name: z.ZodString;
|
|
11
|
+
parent_id: z.ZodNullable<z.ZodString>;
|
|
12
|
+
}, z.core.$strip>;
|
|
13
|
+
export type FolderRecord = z.infer<typeof folderRecord>;
|
|
14
|
+
/**
|
|
15
|
+
* The organizational overlay for one tool, keyed by `tool_name`. `display_name`
|
|
16
|
+
* overrides the rendered label (`display_name ?? name`); `folder_id` places the tool
|
|
17
|
+
* in a folder (`null` = unfiled); `tags` is the user's editable categorization,
|
|
18
|
+
* merged with the tool's read-only native tags by the UI; `badges` is the operator's
|
|
19
|
+
* editable capability-label overlay, merged with the tool's read-only plugin-declared
|
|
20
|
+
* badges by the UI (INFORMATIONAL, never an enforced gate); `hidden` is TRI-STATE —
|
|
21
|
+
* `null` = defer to the plugin declaration, `true` = force hidden, `false` = force
|
|
22
|
+
* visible. A drift throws `ApiSchemaError`.
|
|
23
|
+
*/
|
|
24
|
+
export declare const toolMetaRecord: z.ZodObject<{
|
|
25
|
+
tool_name: z.ZodString;
|
|
26
|
+
display_name: z.ZodNullable<z.ZodString>;
|
|
27
|
+
folder_id: z.ZodNullable<z.ZodString>;
|
|
28
|
+
tags: z.ZodArray<z.ZodString>;
|
|
29
|
+
badges: z.ZodArray<z.ZodString>;
|
|
30
|
+
hidden: z.ZodNullable<z.ZodBoolean>;
|
|
31
|
+
}, z.core.$strip>;
|
|
32
|
+
export type ToolMetaRecord = z.infer<typeof toolMetaRecord>;
|
|
33
|
+
/**
|
|
34
|
+
* `GET /api/tool-meta` — the whole overlay in one read: the flat folder tree plus
|
|
35
|
+
* every per-tool row. The UI builds the tree and merges the rows against the live
|
|
36
|
+
* tool list client-side. A drift throws `ApiSchemaError`.
|
|
37
|
+
*/
|
|
38
|
+
export declare const toolMetaOverlay: z.ZodObject<{
|
|
39
|
+
folders: z.ZodArray<z.ZodObject<{
|
|
40
|
+
id: z.ZodString;
|
|
41
|
+
name: z.ZodString;
|
|
42
|
+
parent_id: z.ZodNullable<z.ZodString>;
|
|
43
|
+
}, z.core.$strip>>;
|
|
44
|
+
meta: z.ZodArray<z.ZodObject<{
|
|
45
|
+
tool_name: z.ZodString;
|
|
46
|
+
display_name: z.ZodNullable<z.ZodString>;
|
|
47
|
+
folder_id: z.ZodNullable<z.ZodString>;
|
|
48
|
+
tags: z.ZodArray<z.ZodString>;
|
|
49
|
+
badges: z.ZodArray<z.ZodString>;
|
|
50
|
+
hidden: z.ZodNullable<z.ZodBoolean>;
|
|
51
|
+
}, z.core.$strip>>;
|
|
52
|
+
}, z.core.$strip>;
|
|
53
|
+
export type ToolMetaOverlay = z.infer<typeof toolMetaOverlay>;
|
|
54
|
+
/** `DELETE /api/tool-meta/tools/{tool_name}` — the dropped overlay row (idempotent). */
|
|
55
|
+
export declare const toolMetaDeleted: z.ZodObject<{
|
|
56
|
+
tool_name: z.ZodString;
|
|
57
|
+
deleted: z.ZodLiteral<true>;
|
|
58
|
+
}, z.core.$strip>;
|
|
59
|
+
/** `DELETE /api/tool-meta/folders/{folder_id}` — the removed empty folder. */
|
|
60
|
+
export declare const folderDeleted: z.ZodObject<{
|
|
61
|
+
folder_id: z.ZodString;
|
|
62
|
+
deleted: z.ZodLiteral<true>;
|
|
63
|
+
}, z.core.$strip>;
|
|
64
|
+
//# sourceMappingURL=tool-meta.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-meta.d.ts","sourceRoot":"","sources":["../../src/schemas/tool-meta.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,eAAO,MAAM,YAAY;;;;iBAIvB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAExD;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc;;;;;;;iBAOzB,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;iBAG1B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,wFAAwF;AACxF,eAAO,MAAM,eAAe;;;iBAAgE,CAAC;AAE7F,8EAA8E;AAC9E,eAAO,MAAM,aAAa;;;iBAAgE,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/** Tool-organization overlay (folders and per-tool meta) schemas. */
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
/**
|
|
4
|
+
* One folder in the tool-organization tree (`tool_folders`). `parent_id` is `null`
|
|
5
|
+
* for a root folder and otherwise the containing folder's `id`; nesting is endless
|
|
6
|
+
* via the parent chain. Ids are UUID strings. A drift throws `ApiSchemaError`.
|
|
7
|
+
*/
|
|
8
|
+
export const folderRecord = z.object({
|
|
9
|
+
id: z.string(),
|
|
10
|
+
name: z.string(),
|
|
11
|
+
parent_id: z.string().nullable(),
|
|
12
|
+
});
|
|
13
|
+
/**
|
|
14
|
+
* The organizational overlay for one tool, keyed by `tool_name`. `display_name`
|
|
15
|
+
* overrides the rendered label (`display_name ?? name`); `folder_id` places the tool
|
|
16
|
+
* in a folder (`null` = unfiled); `tags` is the user's editable categorization,
|
|
17
|
+
* merged with the tool's read-only native tags by the UI; `badges` is the operator's
|
|
18
|
+
* editable capability-label overlay, merged with the tool's read-only plugin-declared
|
|
19
|
+
* badges by the UI (INFORMATIONAL, never an enforced gate); `hidden` is TRI-STATE —
|
|
20
|
+
* `null` = defer to the plugin declaration, `true` = force hidden, `false` = force
|
|
21
|
+
* visible. A drift throws `ApiSchemaError`.
|
|
22
|
+
*/
|
|
23
|
+
export const toolMetaRecord = z.object({
|
|
24
|
+
tool_name: z.string(),
|
|
25
|
+
display_name: z.string().nullable(),
|
|
26
|
+
folder_id: z.string().nullable(),
|
|
27
|
+
tags: z.array(z.string()),
|
|
28
|
+
badges: z.array(z.string()),
|
|
29
|
+
hidden: z.boolean().nullable(),
|
|
30
|
+
});
|
|
31
|
+
/**
|
|
32
|
+
* `GET /api/tool-meta` — the whole overlay in one read: the flat folder tree plus
|
|
33
|
+
* every per-tool row. The UI builds the tree and merges the rows against the live
|
|
34
|
+
* tool list client-side. A drift throws `ApiSchemaError`.
|
|
35
|
+
*/
|
|
36
|
+
export const toolMetaOverlay = z.object({
|
|
37
|
+
folders: z.array(folderRecord),
|
|
38
|
+
meta: z.array(toolMetaRecord),
|
|
39
|
+
});
|
|
40
|
+
/** `DELETE /api/tool-meta/tools/{tool_name}` — the dropped overlay row (idempotent). */
|
|
41
|
+
export const toolMetaDeleted = z.object({ tool_name: z.string(), deleted: z.literal(true) });
|
|
42
|
+
/** `DELETE /api/tool-meta/folders/{folder_id}` — the removed empty folder. */
|
|
43
|
+
export const folderDeleted = z.object({ folder_id: z.string(), deleted: z.literal(true) });
|
|
44
|
+
//# sourceMappingURL=tool-meta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-meta.js","sourceRoot":"","sources":["../../src/schemas/tool-meta.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAGH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACzB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAGH;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;IAC9B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC;CAC9B,CAAC,CAAC;AAGH,wFAAwF;AACxF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAE7F,8EAA8E;AAC9E,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/** Tool catalog, run-result and per-tool tag response schemas. */
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
export declare const toolNames: z.ZodArray<z.ZodString>;
|
|
4
|
+
export declare const toolSchema: z.ZodObject<{
|
|
5
|
+
input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
6
|
+
output: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
7
|
+
description: z.ZodNullable<z.ZodString>;
|
|
8
|
+
}, z.core.$strip>;
|
|
9
|
+
export type ToolSchema = z.infer<typeof toolSchema>;
|
|
10
|
+
export declare const allToolSchemas: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
11
|
+
input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
12
|
+
output: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
13
|
+
description: z.ZodNullable<z.ZodString>;
|
|
14
|
+
}, z.core.$strip>>;
|
|
15
|
+
export declare const runToolResult: z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
|
|
16
|
+
/**
|
|
17
|
+
* The MEDIA content shape a direct tool run may return — fastmcp's serialized
|
|
18
|
+
* `Image`/`Audio` MediaBlock (`{ type, data: <base64>, mimeType }`). One recognised
|
|
19
|
+
* shape of the otherwise-arbitrary `runToolResult`, kept as its own schema so the
|
|
20
|
+
* viewer detects media by parse, not by ad-hoc shape check.
|
|
21
|
+
*
|
|
22
|
+
* SECURITY: the refinement pins `mimeType` to its kind — `image` MUST be `image/*`,
|
|
23
|
+
* `audio` MUST be `audio/*` — so a drifting/arbitrary mime fails the parse and is
|
|
24
|
+
* never turned into a `data:` URI (a `File` MediaBlock's distinct `EmbeddedResource`
|
|
25
|
+
* shape also fails here, by design).
|
|
26
|
+
*/
|
|
27
|
+
export declare const toolMediaResult: z.ZodObject<{
|
|
28
|
+
type: z.ZodEnum<{
|
|
29
|
+
image: "image";
|
|
30
|
+
audio: "audio";
|
|
31
|
+
}>;
|
|
32
|
+
data: z.ZodString;
|
|
33
|
+
mimeType: z.ZodString;
|
|
34
|
+
}, z.core.$strip>;
|
|
35
|
+
export type ToolMediaResult = z.infer<typeof toolMediaResult>;
|
|
36
|
+
/**
|
|
37
|
+
* The ADDITIVE per-tool native surface (`GET /api/tools/tags`). Distinct from the
|
|
38
|
+
* flat `toolNames` contract (`GET /api/tools`, unchanged): each entry carries the
|
|
39
|
+
* tool's read-only FastMCP `tags` — so the shared `ToolPicker` can group/filter its
|
|
40
|
+
* options — plus `hidden`, the tool's OWN plugin-declared visibility (read from the
|
|
41
|
+
* FastMCP `meta` under `tai42/hidden`; a tool that never declared it is not hidden).
|
|
42
|
+
* The tool_meta overlay's tri-state override is merged on top client-side; this read
|
|
43
|
+
* exposes only the declaration.
|
|
44
|
+
*
|
|
45
|
+
* `badges` are the tool's plugin-DECLARED capability labels — purely INFORMATIONAL
|
|
46
|
+
* (e.g. `network`, `filesystem`), never a gate the server enforces. The overlay's
|
|
47
|
+
* own badges are merged on top client-side; this read exposes only the declaration.
|
|
48
|
+
*/
|
|
49
|
+
export declare const toolTagEntry: z.ZodObject<{
|
|
50
|
+
name: z.ZodString;
|
|
51
|
+
tags: z.ZodArray<z.ZodString>;
|
|
52
|
+
badges: z.ZodArray<z.ZodString>;
|
|
53
|
+
hidden: z.ZodBoolean;
|
|
54
|
+
}, z.core.$strip>;
|
|
55
|
+
export declare const toolTags: z.ZodArray<z.ZodObject<{
|
|
56
|
+
name: z.ZodString;
|
|
57
|
+
tags: z.ZodArray<z.ZodString>;
|
|
58
|
+
badges: z.ZodArray<z.ZodString>;
|
|
59
|
+
hidden: z.ZodBoolean;
|
|
60
|
+
}, z.core.$strip>>;
|
|
61
|
+
export type ToolTagEntry = z.infer<typeof toolTagEntry>;
|
|
62
|
+
//# sourceMappingURL=tools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/schemas/tools.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,SAAS,yBAAsB,CAAC;AAE7C,eAAO,MAAM,UAAU;;;;iBAIrB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEpD,eAAO,MAAM,cAAc;;;;kBAAmC,CAAC;AAE/D,eAAO,MAAM,aAAa,yEAAY,CAAC;AAEvC;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe;;;;;;;iBASxB,CAAC;AACL,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,YAAY;;;;;iBAKvB,CAAC;AACH,eAAO,MAAM,QAAQ;;;;;kBAAwB,CAAC;AAC9C,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/** Tool catalog, run-result and per-tool tag response schemas. */
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { jsonSchema, jsonValue } from './shared';
|
|
4
|
+
export const toolNames = z.array(z.string());
|
|
5
|
+
export const toolSchema = z.object({
|
|
6
|
+
input: jsonSchema,
|
|
7
|
+
output: jsonSchema.nullable(),
|
|
8
|
+
description: z.string().nullable(),
|
|
9
|
+
});
|
|
10
|
+
export const allToolSchemas = z.record(z.string(), toolSchema);
|
|
11
|
+
export const runToolResult = jsonValue;
|
|
12
|
+
/**
|
|
13
|
+
* The MEDIA content shape a direct tool run may return — fastmcp's serialized
|
|
14
|
+
* `Image`/`Audio` MediaBlock (`{ type, data: <base64>, mimeType }`). One recognised
|
|
15
|
+
* shape of the otherwise-arbitrary `runToolResult`, kept as its own schema so the
|
|
16
|
+
* viewer detects media by parse, not by ad-hoc shape check.
|
|
17
|
+
*
|
|
18
|
+
* SECURITY: the refinement pins `mimeType` to its kind — `image` MUST be `image/*`,
|
|
19
|
+
* `audio` MUST be `audio/*` — so a drifting/arbitrary mime fails the parse and is
|
|
20
|
+
* never turned into a `data:` URI (a `File` MediaBlock's distinct `EmbeddedResource`
|
|
21
|
+
* shape also fails here, by design).
|
|
22
|
+
*/
|
|
23
|
+
export const toolMediaResult = z
|
|
24
|
+
.object({
|
|
25
|
+
type: z.enum(['image', 'audio']),
|
|
26
|
+
data: z.string(),
|
|
27
|
+
mimeType: z.string(),
|
|
28
|
+
})
|
|
29
|
+
.refine((media) => media.mimeType.startsWith(`${media.type}/`), {
|
|
30
|
+
message: 'media mimeType must match its media kind (image/* for image, audio/* for audio)',
|
|
31
|
+
path: ['mimeType'],
|
|
32
|
+
});
|
|
33
|
+
/**
|
|
34
|
+
* The ADDITIVE per-tool native surface (`GET /api/tools/tags`). Distinct from the
|
|
35
|
+
* flat `toolNames` contract (`GET /api/tools`, unchanged): each entry carries the
|
|
36
|
+
* tool's read-only FastMCP `tags` — so the shared `ToolPicker` can group/filter its
|
|
37
|
+
* options — plus `hidden`, the tool's OWN plugin-declared visibility (read from the
|
|
38
|
+
* FastMCP `meta` under `tai42/hidden`; a tool that never declared it is not hidden).
|
|
39
|
+
* The tool_meta overlay's tri-state override is merged on top client-side; this read
|
|
40
|
+
* exposes only the declaration.
|
|
41
|
+
*
|
|
42
|
+
* `badges` are the tool's plugin-DECLARED capability labels — purely INFORMATIONAL
|
|
43
|
+
* (e.g. `network`, `filesystem`), never a gate the server enforces. The overlay's
|
|
44
|
+
* own badges are merged on top client-side; this read exposes only the declaration.
|
|
45
|
+
*/
|
|
46
|
+
export const toolTagEntry = z.object({
|
|
47
|
+
name: z.string(),
|
|
48
|
+
tags: z.array(z.string()),
|
|
49
|
+
badges: z.array(z.string()),
|
|
50
|
+
hidden: z.boolean(),
|
|
51
|
+
});
|
|
52
|
+
export const toolTags = z.array(toolTagEntry);
|
|
53
|
+
//# sourceMappingURL=tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/schemas/tools.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEjD,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AAE7C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU,CAAC,QAAQ,EAAE;IAC7B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,aAAa,GAAG,SAAS,CAAC;AAEvC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;CACrB,CAAC;KACD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE;IAC9D,OAAO,EAAE,iFAAiF;IAC1F,IAAI,EAAE,CAAC,UAAU,CAAC;CACnB,CAAC,CAAC;AAGL;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACzB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;CACpB,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/** Trigger-link record and lifecycle response schemas. */
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
/**
|
|
4
|
+
* `POST /api/hooks/trigger-links` — a freshly minted trigger link. `trigger_path`
|
|
5
|
+
* is a relative path (`/trigger/<token>`, never an absolute URL — Studio composes
|
|
6
|
+
* the API origin); `token` is the raw token returned exactly ONCE, in this response
|
|
7
|
+
* (nothing else stores or lists it — a listed link's QR is unrecoverable by
|
|
8
|
+
* design). `expires_at` is an ISO-8601 instant, or `null` for a permanent link.
|
|
9
|
+
*/
|
|
10
|
+
export declare const triggerLinkCreated: z.ZodObject<{
|
|
11
|
+
name: z.ZodString;
|
|
12
|
+
trigger_path: z.ZodString;
|
|
13
|
+
token: z.ZodString;
|
|
14
|
+
topic: z.ZodString;
|
|
15
|
+
expires_at: z.ZodNullable<z.ZodString>;
|
|
16
|
+
}, z.core.$strip>;
|
|
17
|
+
export type TriggerLinkCreated = z.infer<typeof triggerLinkCreated>;
|
|
18
|
+
/**
|
|
19
|
+
* One listed trigger-link record (`GET /api/hooks/trigger-links` item). `tool_kwargs`
|
|
20
|
+
* is the per-link params merged last into every fire (`null` or `{}` = none);
|
|
21
|
+
* `created_by` is the ambient creator identity (`null` on an identity-less,
|
|
22
|
+
* gate-off deployment); `token_hash_prefix` is a short hash prefix for log
|
|
23
|
+
* correlation — never a raw token (none is stored).
|
|
24
|
+
*/
|
|
25
|
+
export declare const triggerLinkRecord: z.ZodObject<{
|
|
26
|
+
name: z.ZodString;
|
|
27
|
+
topic: z.ZodString;
|
|
28
|
+
execution_key: z.ZodString;
|
|
29
|
+
trigger_auth: z.ZodEnum<{
|
|
30
|
+
public: "public";
|
|
31
|
+
verifier: "verifier";
|
|
32
|
+
token: "token";
|
|
33
|
+
"token+api_key": "token+api_key";
|
|
34
|
+
"out-of-service": "out-of-service";
|
|
35
|
+
}>;
|
|
36
|
+
tool_kwargs: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
37
|
+
created_by: z.ZodNullable<z.ZodString>;
|
|
38
|
+
created_at: z.ZodString;
|
|
39
|
+
expires_at: z.ZodNullable<z.ZodString>;
|
|
40
|
+
token_hash_prefix: z.ZodString;
|
|
41
|
+
}, z.core.$strip>;
|
|
42
|
+
export type TriggerLinkRecord = z.infer<typeof triggerLinkRecord>;
|
|
43
|
+
/** `GET /api/hooks/trigger-links` — every live trigger-link record. */
|
|
44
|
+
export declare const triggerLinkList: z.ZodObject<{
|
|
45
|
+
items: z.ZodArray<z.ZodObject<{
|
|
46
|
+
name: z.ZodString;
|
|
47
|
+
topic: z.ZodString;
|
|
48
|
+
execution_key: z.ZodString;
|
|
49
|
+
trigger_auth: z.ZodEnum<{
|
|
50
|
+
public: "public";
|
|
51
|
+
verifier: "verifier";
|
|
52
|
+
token: "token";
|
|
53
|
+
"token+api_key": "token+api_key";
|
|
54
|
+
"out-of-service": "out-of-service";
|
|
55
|
+
}>;
|
|
56
|
+
tool_kwargs: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
57
|
+
created_by: z.ZodNullable<z.ZodString>;
|
|
58
|
+
created_at: z.ZodString;
|
|
59
|
+
expires_at: z.ZodNullable<z.ZodString>;
|
|
60
|
+
token_hash_prefix: z.ZodString;
|
|
61
|
+
}, z.core.$strip>>;
|
|
62
|
+
total: z.ZodNumber;
|
|
63
|
+
}, z.core.$strip>;
|
|
64
|
+
export type TriggerLinkList = z.infer<typeof triggerLinkList>;
|
|
65
|
+
/** `DELETE /api/hooks/trigger-links/{name}` — the revoked link. */
|
|
66
|
+
export declare const triggerLinkDeleted: z.ZodObject<{
|
|
67
|
+
removed: z.ZodBoolean;
|
|
68
|
+
name: z.ZodString;
|
|
69
|
+
}, z.core.$strip>;
|
|
70
|
+
export type TriggerLinkDeleted = z.infer<typeof triggerLinkDeleted>;
|
|
71
|
+
//# sourceMappingURL=trigger-links.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trigger-links.d.ts","sourceRoot":"","sources":["../../src/schemas/trigger-links.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB;;;;;;iBAM7B,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEpE;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;iBAU5B,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE,uEAAuE;AACvE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;iBAG1B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,mEAAmE;AACnE,eAAO,MAAM,kBAAkB;;;iBAAuD,CAAC;AACvF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/** Trigger-link record and lifecycle response schemas. */
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { triggerAuth } from './hooks';
|
|
4
|
+
// A trigger link is a minted, token-bearing PUBLIC URL (`GET|POST /trigger/{token}`)
|
|
5
|
+
// that resolves to a hook TOPIC and fires it. Studio mints, lists, and revokes them
|
|
6
|
+
// on the hooks page; the QR encodes the composed absolute URL.
|
|
7
|
+
/**
|
|
8
|
+
* `POST /api/hooks/trigger-links` — a freshly minted trigger link. `trigger_path`
|
|
9
|
+
* is a relative path (`/trigger/<token>`, never an absolute URL — Studio composes
|
|
10
|
+
* the API origin); `token` is the raw token returned exactly ONCE, in this response
|
|
11
|
+
* (nothing else stores or lists it — a listed link's QR is unrecoverable by
|
|
12
|
+
* design). `expires_at` is an ISO-8601 instant, or `null` for a permanent link.
|
|
13
|
+
*/
|
|
14
|
+
export const triggerLinkCreated = z.object({
|
|
15
|
+
name: z.string(),
|
|
16
|
+
trigger_path: z.string(),
|
|
17
|
+
token: z.string(),
|
|
18
|
+
topic: z.string(),
|
|
19
|
+
expires_at: z.string().nullable(),
|
|
20
|
+
});
|
|
21
|
+
/**
|
|
22
|
+
* One listed trigger-link record (`GET /api/hooks/trigger-links` item). `tool_kwargs`
|
|
23
|
+
* is the per-link params merged last into every fire (`null` or `{}` = none);
|
|
24
|
+
* `created_by` is the ambient creator identity (`null` on an identity-less,
|
|
25
|
+
* gate-off deployment); `token_hash_prefix` is a short hash prefix for log
|
|
26
|
+
* correlation — never a raw token (none is stored).
|
|
27
|
+
*/
|
|
28
|
+
export const triggerLinkRecord = z.object({
|
|
29
|
+
name: z.string(),
|
|
30
|
+
topic: z.string(),
|
|
31
|
+
execution_key: z.string().min(1),
|
|
32
|
+
trigger_auth: triggerAuth,
|
|
33
|
+
tool_kwargs: z.record(z.string(), z.unknown()).nullable(),
|
|
34
|
+
created_by: z.string().nullable(),
|
|
35
|
+
created_at: z.string(),
|
|
36
|
+
expires_at: z.string().nullable(),
|
|
37
|
+
token_hash_prefix: z.string(),
|
|
38
|
+
});
|
|
39
|
+
/** `GET /api/hooks/trigger-links` — every live trigger-link record. */
|
|
40
|
+
export const triggerLinkList = z.object({
|
|
41
|
+
items: z.array(triggerLinkRecord),
|
|
42
|
+
total: z.number(),
|
|
43
|
+
});
|
|
44
|
+
/** `DELETE /api/hooks/trigger-links/{name}` — the revoked link. */
|
|
45
|
+
export const triggerLinkDeleted = z.object({ removed: z.boolean(), name: z.string() });
|
|
46
|
+
//# sourceMappingURL=trigger-links.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trigger-links.js","sourceRoot":"","sources":["../../src/schemas/trigger-links.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,qFAAqF;AACrF,oFAAoF;AACpF,+DAA+D;AAE/D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC;AAGH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAChC,YAAY,EAAE,WAAW;IACzB,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE;CAC9B,CAAC,CAAC;AAGH,uEAAuE;AACvE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;IACjC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAGH,mEAAmE;AACnE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/** Web-channel entry-gate code response schemas. */
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
/** One minted entry code as the gate read door lists it — its hash id, its
|
|
4
|
+
* optional label, and when it was created / dies. Never a raw code. */
|
|
5
|
+
export declare const webEntryCode: z.ZodObject<{
|
|
6
|
+
code_id: z.ZodString;
|
|
7
|
+
label: z.ZodNullable<z.ZodString>;
|
|
8
|
+
created_at: z.ZodString;
|
|
9
|
+
expires_at: z.ZodNullable<z.ZodString>;
|
|
10
|
+
}, z.core.$strip>;
|
|
11
|
+
export type WebEntryCode = z.infer<typeof webEntryCode>;
|
|
12
|
+
/** `GET /api/channels/web/gates/{identity}` — the gate flag and its live codes. */
|
|
13
|
+
export declare const webEntryGate: z.ZodObject<{
|
|
14
|
+
enabled: z.ZodBoolean;
|
|
15
|
+
codes: z.ZodArray<z.ZodObject<{
|
|
16
|
+
code_id: z.ZodString;
|
|
17
|
+
label: z.ZodNullable<z.ZodString>;
|
|
18
|
+
created_at: z.ZodString;
|
|
19
|
+
expires_at: z.ZodNullable<z.ZodString>;
|
|
20
|
+
}, z.core.$strip>>;
|
|
21
|
+
}, z.core.$strip>;
|
|
22
|
+
export type WebEntryGate = z.infer<typeof webEntryGate>;
|
|
23
|
+
/** `PUT /api/channels/web/gates/{identity}` — the gate flag after the write. */
|
|
24
|
+
export declare const webEntryGateState: z.ZodObject<{
|
|
25
|
+
enabled: z.ZodBoolean;
|
|
26
|
+
}, z.core.$strip>;
|
|
27
|
+
export type WebEntryGateState = z.infer<typeof webEntryGateState>;
|
|
28
|
+
/**
|
|
29
|
+
* `POST /api/channels/web/gates/{identity}/codes` — a freshly minted code. The
|
|
30
|
+
* raw `code` rides this reply ONCE (nothing else stores or lists it — a listed
|
|
31
|
+
* code's raw value is unrecoverable by design); `code_id` is its hash id and
|
|
32
|
+
* `expires_at` an ISO-8601 instant, or `null` for a code that never expires.
|
|
33
|
+
*/
|
|
34
|
+
export declare const webEntryCodeMinted: z.ZodObject<{
|
|
35
|
+
code: z.ZodString;
|
|
36
|
+
code_id: z.ZodString;
|
|
37
|
+
expires_at: z.ZodNullable<z.ZodString>;
|
|
38
|
+
}, z.core.$strip>;
|
|
39
|
+
export type WebEntryCodeMinted = z.infer<typeof webEntryCodeMinted>;
|
|
40
|
+
/** `DELETE /api/channels/web/gates/{identity}/codes/{code_id}` — the revoked code. */
|
|
41
|
+
export declare const webEntryCodeRevoked: z.ZodObject<{
|
|
42
|
+
status: z.ZodLiteral<"revoked">;
|
|
43
|
+
}, z.core.$strip>;
|
|
44
|
+
export type WebEntryCodeRevoked = z.infer<typeof webEntryCodeRevoked>;
|
|
45
|
+
//# sourceMappingURL=web-entry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-entry.d.ts","sourceRoot":"","sources":["../../src/schemas/web-entry.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB;uEACuE;AACvE,eAAO,MAAM,YAAY;;;;;iBAKvB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAExD,mFAAmF;AACnF,eAAO,MAAM,YAAY;;;;;;;;iBAGvB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAExD,gFAAgF;AAChF,eAAO,MAAM,iBAAiB;;iBAAqC,CAAC;AACpE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB;;;;iBAI7B,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEpE,sFAAsF;AACtF,eAAO,MAAM,mBAAmB;;iBAA6C,CAAC;AAC9E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/** Web-channel entry-gate code response schemas. */
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
// The web channel's entry gate: a web route can be gated so its chat page is
|
|
4
|
+
// served only to a navigation carrying a live entry code. These four doors are
|
|
5
|
+
// keyed by the route's `our_identity`. A raw code exists only in flight (the
|
|
6
|
+
// mint reply); a listed code carries its hash id, never a raw value (none is
|
|
7
|
+
// stored).
|
|
8
|
+
/** One minted entry code as the gate read door lists it — its hash id, its
|
|
9
|
+
* optional label, and when it was created / dies. Never a raw code. */
|
|
10
|
+
export const webEntryCode = z.object({
|
|
11
|
+
code_id: z.string(),
|
|
12
|
+
label: z.string().nullable(),
|
|
13
|
+
created_at: z.string(),
|
|
14
|
+
expires_at: z.string().nullable(),
|
|
15
|
+
});
|
|
16
|
+
/** `GET /api/channels/web/gates/{identity}` — the gate flag and its live codes. */
|
|
17
|
+
export const webEntryGate = z.object({
|
|
18
|
+
enabled: z.boolean(),
|
|
19
|
+
codes: z.array(webEntryCode),
|
|
20
|
+
});
|
|
21
|
+
/** `PUT /api/channels/web/gates/{identity}` — the gate flag after the write. */
|
|
22
|
+
export const webEntryGateState = z.object({ enabled: z.boolean() });
|
|
23
|
+
/**
|
|
24
|
+
* `POST /api/channels/web/gates/{identity}/codes` — a freshly minted code. The
|
|
25
|
+
* raw `code` rides this reply ONCE (nothing else stores or lists it — a listed
|
|
26
|
+
* code's raw value is unrecoverable by design); `code_id` is its hash id and
|
|
27
|
+
* `expires_at` an ISO-8601 instant, or `null` for a code that never expires.
|
|
28
|
+
*/
|
|
29
|
+
export const webEntryCodeMinted = z.object({
|
|
30
|
+
code: z.string(),
|
|
31
|
+
code_id: z.string(),
|
|
32
|
+
expires_at: z.string().nullable(),
|
|
33
|
+
});
|
|
34
|
+
/** `DELETE /api/channels/web/gates/{identity}/codes/{code_id}` — the revoked code. */
|
|
35
|
+
export const webEntryCodeRevoked = z.object({ status: z.literal('revoked') });
|
|
36
|
+
//# sourceMappingURL=web-entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-entry.js","sourceRoot":"","sources":["../../src/schemas/web-entry.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,6EAA6E;AAC7E,+EAA+E;AAC/E,6EAA6E;AAC7E,6EAA6E;AAC7E,WAAW;AAEX;uEACuE;AACvE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC;AAGH,mFAAmF;AACnF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;IACpB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;CAC7B,CAAC,CAAC;AAGH,gFAAgF;AAChF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AAGpE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC;AAGH,sFAAsF;AACtF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* One authored-text value: either inline `content` (text written in place) or a
|
|
4
|
+
* stored template `id` (a template resource fetched and rendered), never both and
|
|
5
|
+
* never neither. `kwargs` are the render parameters and apply in BOTH cases — a
|
|
6
|
+
* prompt with placeholders needs its values whether it was typed inline or fetched.
|
|
7
|
+
* `.strict()` refuses any other key so a drifting field fails the parse loudly.
|
|
8
|
+
*
|
|
9
|
+
* This is the target the generated served-document schemas map every platform
|
|
10
|
+
* `x-tai42-templated-text` field to, so a body can never regenerate as a bare
|
|
11
|
+
* `z.string()`. It lives in its own module because the generated module imports it,
|
|
12
|
+
* and the generated module is imported back by `schemas.ts`.
|
|
13
|
+
*/
|
|
14
|
+
export declare const templatedText: z.ZodObject<{
|
|
15
|
+
content: z.ZodOptional<z.ZodString>;
|
|
16
|
+
id: z.ZodOptional<z.ZodString>;
|
|
17
|
+
kwargs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
18
|
+
}, z.core.$strict>;
|
|
19
|
+
export type TemplatedText = z.infer<typeof templatedText>;
|
|
20
|
+
/**
|
|
21
|
+
* A templated-text value that must carry a source: inline `content` is non-empty, or
|
|
22
|
+
* a stored template `id` is chosen. Used where the platform contract requires a
|
|
23
|
+
* value (e.g. a state binding's subject, an update's adapter when present).
|
|
24
|
+
*/
|
|
25
|
+
export declare const requiredTemplatedText: z.ZodObject<{
|
|
26
|
+
content: z.ZodOptional<z.ZodString>;
|
|
27
|
+
id: z.ZodOptional<z.ZodString>;
|
|
28
|
+
kwargs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
29
|
+
}, z.core.$strict>;
|
|
30
|
+
//# sourceMappingURL=templated-text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"templated-text.d.ts","sourceRoot":"","sources":["../src/templated-text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa;;;;kBAStB,CAAC;AACL,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D;;;;GAIG;AACH,eAAO,MAAM,qBAAqB;;;;kBAGjC,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* One authored-text value: either inline `content` (text written in place) or a
|
|
4
|
+
* stored template `id` (a template resource fetched and rendered), never both and
|
|
5
|
+
* never neither. `kwargs` are the render parameters and apply in BOTH cases — a
|
|
6
|
+
* prompt with placeholders needs its values whether it was typed inline or fetched.
|
|
7
|
+
* `.strict()` refuses any other key so a drifting field fails the parse loudly.
|
|
8
|
+
*
|
|
9
|
+
* This is the target the generated served-document schemas map every platform
|
|
10
|
+
* `x-tai42-templated-text` field to, so a body can never regenerate as a bare
|
|
11
|
+
* `z.string()`. It lives in its own module because the generated module imports it,
|
|
12
|
+
* and the generated module is imported back by `schemas.ts`.
|
|
13
|
+
*/
|
|
14
|
+
export const templatedText = z
|
|
15
|
+
.object({
|
|
16
|
+
content: z.string().optional(),
|
|
17
|
+
id: z.string().optional(),
|
|
18
|
+
kwargs: z.record(z.string(), z.unknown()).optional(),
|
|
19
|
+
})
|
|
20
|
+
.strict()
|
|
21
|
+
.refine((value) => (value.content === undefined) !== (value.id === undefined), {
|
|
22
|
+
message: 'A templated-text value sets exactly one of `content` or `id`.',
|
|
23
|
+
});
|
|
24
|
+
/**
|
|
25
|
+
* A templated-text value that must carry a source: inline `content` is non-empty, or
|
|
26
|
+
* a stored template `id` is chosen. Used where the platform contract requires a
|
|
27
|
+
* value (e.g. a state binding's subject, an update's adapter when present).
|
|
28
|
+
*/
|
|
29
|
+
export const requiredTemplatedText = templatedText.refine((value) => (value.id !== undefined ? value.id.length > 0 : (value.content ?? '').length > 0), { message: 'Provide inline text or choose a stored template.' });
|
|
30
|
+
//# sourceMappingURL=templated-text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"templated-text.js","sourceRoot":"","sources":["../src/templated-text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC;KAC3B,MAAM,CAAC;IACN,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CACrD,CAAC;KACD,MAAM,EAAE;KACR,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE;IAC7E,OAAO,EAAE,+DAA+D;CACzE,CAAC,CAAC;AAGL;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAC,MAAM,CACvD,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,EAC5F,EAAE,OAAO,EAAE,kDAAkD,EAAE,CAChE,CAAC"}
|
package/dist/tool-runs.d.ts
CHANGED
|
@@ -17,9 +17,9 @@ import type { ApiConfig } from './http';
|
|
|
17
17
|
/** A run's lifecycle state. `lost` = the server restarted mid-run; the result is
|
|
18
18
|
* unrecoverable. `running` is the only non-terminal state. */
|
|
19
19
|
export declare const toolRunStatus: z.ZodEnum<{
|
|
20
|
+
failed: "failed";
|
|
20
21
|
running: "running";
|
|
21
22
|
succeeded: "succeeded";
|
|
22
|
-
failed: "failed";
|
|
23
23
|
lost: "lost";
|
|
24
24
|
}>;
|
|
25
25
|
/** `POST /api/tool-runs` → the handle for the detached run. */
|
|
@@ -32,9 +32,9 @@ export declare const toolRunRecord: z.ZodObject<{
|
|
|
32
32
|
run_id: z.ZodString;
|
|
33
33
|
tool_name: z.ZodString;
|
|
34
34
|
status: z.ZodEnum<{
|
|
35
|
+
failed: "failed";
|
|
35
36
|
running: "running";
|
|
36
37
|
succeeded: "succeeded";
|
|
37
|
-
failed: "failed";
|
|
38
38
|
lost: "lost";
|
|
39
39
|
}>;
|
|
40
40
|
started_at: z.ZodString;
|
|
@@ -48,9 +48,9 @@ export declare const toolRunListItem: z.ZodObject<{
|
|
|
48
48
|
run_id: z.ZodString;
|
|
49
49
|
tool_name: z.ZodString;
|
|
50
50
|
status: z.ZodEnum<{
|
|
51
|
+
failed: "failed";
|
|
51
52
|
running: "running";
|
|
52
53
|
succeeded: "succeeded";
|
|
53
|
-
failed: "failed";
|
|
54
54
|
lost: "lost";
|
|
55
55
|
}>;
|
|
56
56
|
started_at: z.ZodString;
|
|
@@ -60,9 +60,9 @@ export declare const toolRunList: z.ZodArray<z.ZodObject<{
|
|
|
60
60
|
run_id: z.ZodString;
|
|
61
61
|
tool_name: z.ZodString;
|
|
62
62
|
status: z.ZodEnum<{
|
|
63
|
+
failed: "failed";
|
|
63
64
|
running: "running";
|
|
64
65
|
succeeded: "succeeded";
|
|
65
|
-
failed: "failed";
|
|
66
66
|
lost: "lost";
|
|
67
67
|
}>;
|
|
68
68
|
started_at: z.ZodString;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tai42/api-client",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "16.0.1",
|
|
4
4
|
"description": "Typed client for the tai42-skeleton HTTP API.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "tai42 <oss@tai42.ai>",
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
"@microsoft/api-extractor": "7.58.12",
|
|
26
26
|
"@types/node": "^22.10.5",
|
|
27
27
|
"@vitest/coverage-v8": "^5.0.0",
|
|
28
|
+
"json-schema-to-zod": "2.8.1",
|
|
28
29
|
"vitest": "^5.0.0"
|
|
29
30
|
},
|
|
30
31
|
"main": "./dist/index.js",
|
|
@@ -56,6 +57,9 @@
|
|
|
56
57
|
"format:check": "prettier --check \"src/**/*.{ts,tsx}\"",
|
|
57
58
|
"test": "vitest run",
|
|
58
59
|
"api:check": "api-extractor run --config config/api-extractor.json",
|
|
59
|
-
"api:update": "api-extractor run --local --config config/api-extractor.json"
|
|
60
|
+
"api:update": "api-extractor run --local --config config/api-extractor.json",
|
|
61
|
+
"schema:generate": "node scripts/gen-schemas.mjs",
|
|
62
|
+
"schema:check": "node scripts/gen-schemas.mjs --check",
|
|
63
|
+
"schema:refresh": "node scripts/schema-refresh.mjs"
|
|
60
64
|
}
|
|
61
65
|
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** Agent listing and streaming-run sub-client. */
|
|
2
|
+
import { agentList, streamAgentRun, streamAuthoredAgentRun } from '../agents';
|
|
3
|
+
import type { Transport } from './transport';
|
|
4
|
+
|
|
5
|
+
export function agentsClient(t: Transport) {
|
|
6
|
+
const { config, req } = t;
|
|
7
|
+
return {
|
|
8
|
+
listAgents: (signal?: AbortSignal) => req('/api/agents', agentList, { signal }),
|
|
9
|
+
// The authorable subset (agents whose `spec_runnable` is true) — the compose
|
|
10
|
+
// UI's base-agent picker. An empty `items` list ⇒ no authoring is possible.
|
|
11
|
+
listSpecRunnableAgents: (signal?: AbortSignal) =>
|
|
12
|
+
req('/api/agents/spec-runnable', agentList, { signal }),
|
|
13
|
+
// The streaming run: opens POST /api/agents/{name}/runs and yields parsed
|
|
14
|
+
// agent events. The auto-form's built value is the POST body.
|
|
15
|
+
streamAgentRun: (name: string, input: unknown, signal?: AbortSignal) =>
|
|
16
|
+
streamAgentRun(config, name, input, signal),
|
|
17
|
+
// The streaming run of an AUTHORED agent (POST /api/agents/authored/{name}/runs).
|
|
18
|
+
// The body carries only the non-baked ToolInput fields; the baked spec is
|
|
19
|
+
// resolved server-side. Reuses the same SSE parser (never EventSource).
|
|
20
|
+
streamAuthoredAgentRun: (name: string, input: unknown, signal?: AbortSignal) =>
|
|
21
|
+
streamAuthoredAgentRun(config, name, input, signal),
|
|
22
|
+
};
|
|
23
|
+
}
|