@frontmcp/sdk 1.2.1 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (256) hide show
  1. package/README.md +65 -60
  2. package/agent/agent.scope.d.ts +164 -0
  3. package/agent/agent.scope.d.ts.map +1 -1
  4. package/app/instances/app.esm.instance.d.ts.map +1 -1
  5. package/app/instances/app.remote.instance.d.ts.map +1 -1
  6. package/auth/auth-ui/auth-ui.contract.d.ts +149 -0
  7. package/auth/auth-ui/auth-ui.contract.d.ts.map +1 -0
  8. package/auth/auth-ui/auth-ui.registry.d.ts +151 -0
  9. package/auth/auth-ui/auth-ui.registry.d.ts.map +1 -0
  10. package/auth/auth-ui/auth-ui.render.d.ts +49 -0
  11. package/auth/auth-ui/auth-ui.render.d.ts.map +1 -0
  12. package/auth/auth-ui/auth-ui.state.d.ts +62 -0
  13. package/auth/auth-ui/auth-ui.state.d.ts.map +1 -0
  14. package/auth/auth-ui/index.d.ts +24 -0
  15. package/auth/auth-ui/index.d.ts.map +1 -0
  16. package/auth/auth.registry.d.ts.map +1 -1
  17. package/auth/authorized-apps.utils.d.ts +51 -0
  18. package/auth/authorized-apps.utils.d.ts.map +1 -0
  19. package/auth/consent-tools.helper.d.ts +26 -0
  20. package/auth/consent-tools.helper.d.ts.map +1 -0
  21. package/auth/consent.utils.d.ts +62 -0
  22. package/auth/consent.utils.d.ts.map +1 -0
  23. package/auth/credentials/credentials.context-extension.d.ts +63 -0
  24. package/auth/credentials/credentials.context-extension.d.ts.map +1 -0
  25. package/auth/credentials/credentials.providers.d.ts +40 -0
  26. package/auth/credentials/credentials.providers.d.ts.map +1 -0
  27. package/auth/credentials/index.d.ts +3 -0
  28. package/auth/credentials/index.d.ts.map +1 -0
  29. package/auth/flows/auth.verify.flow.d.ts.map +1 -1
  30. package/auth/flows/oauth.auth-ui.flow.d.ts +53 -0
  31. package/auth/flows/oauth.auth-ui.flow.d.ts.map +1 -0
  32. package/auth/flows/oauth.authorize.flow.d.ts +51 -9
  33. package/auth/flows/oauth.authorize.flow.d.ts.map +1 -1
  34. package/auth/flows/oauth.callback.flow.d.ts +118 -5
  35. package/auth/flows/oauth.callback.flow.d.ts.map +1 -1
  36. package/auth/flows/oauth.connect.flow.d.ts +89 -0
  37. package/auth/flows/oauth.connect.flow.d.ts.map +1 -0
  38. package/auth/flows/oauth.provider-callback.flow.d.ts +34 -4
  39. package/auth/flows/oauth.provider-callback.flow.d.ts.map +1 -1
  40. package/auth/flows/oauth.register.flow.d.ts +16 -20
  41. package/auth/flows/oauth.register.flow.d.ts.map +1 -1
  42. package/auth/flows/oauth.token.flow.d.ts +2 -2
  43. package/auth/flows/oauth.token.flow.d.ts.map +1 -1
  44. package/auth/flows/oauth.userinfo.flow.d.ts +67 -0
  45. package/auth/flows/oauth.userinfo.flow.d.ts.map +1 -0
  46. package/auth/flows/session.verify.flow.d.ts +2 -2
  47. package/auth/flows/session.verify.flow.d.ts.map +1 -1
  48. package/auth/flows/well-known.jwks.flow.d.ts +3 -3
  49. package/auth/flows/well-known.oauth-authorization-server.flow.d.ts +3 -2
  50. package/auth/flows/well-known.oauth-authorization-server.flow.d.ts.map +1 -1
  51. package/auth/flows/well-known.prm.flow.d.ts +1 -1
  52. package/auth/flows/well-known.prm.flow.d.ts.map +1 -1
  53. package/auth/instances/instance.local-primary-auth.d.ts +226 -12
  54. package/auth/instances/instance.local-primary-auth.d.ts.map +1 -1
  55. package/auth/secure-store/index.d.ts +3 -0
  56. package/auth/secure-store/index.d.ts.map +1 -0
  57. package/auth/secure-store/secure-store.context-extension.d.ts +61 -0
  58. package/auth/secure-store/secure-store.context-extension.d.ts.map +1 -0
  59. package/auth/secure-store/secure-store.providers.d.ts +36 -0
  60. package/auth/secure-store/secure-store.providers.d.ts.map +1 -0
  61. package/auth/session/session-store.factory.d.ts +25 -5
  62. package/auth/session/session-store.factory.d.ts.map +1 -1
  63. package/common/decorators/agent.decorator.d.ts +32 -0
  64. package/common/decorators/agent.decorator.d.ts.map +1 -1
  65. package/common/decorators/app.decorator.d.ts.map +1 -1
  66. package/common/decorators/front-mcp.decorator.d.ts.map +1 -1
  67. package/common/decorators/skill.decorator.d.ts +26 -9
  68. package/common/decorators/skill.decorator.d.ts.map +1 -1
  69. package/common/decorators/tool.decorator.d.ts +44 -0
  70. package/common/decorators/tool.decorator.d.ts.map +1 -1
  71. package/common/entries/scope.entry.d.ts +7 -0
  72. package/common/entries/scope.entry.d.ts.map +1 -1
  73. package/common/entries/skill.entry.d.ts +22 -1
  74. package/common/entries/skill.entry.d.ts.map +1 -1
  75. package/common/entries/tool.entry.d.ts +17 -0
  76. package/common/entries/tool.entry.d.ts.map +1 -1
  77. package/common/interfaces/internal/primary-auth-provider.interface.d.ts +18 -0
  78. package/common/interfaces/internal/primary-auth-provider.interface.d.ts.map +1 -1
  79. package/common/interfaces/skill.interface.d.ts +17 -4
  80. package/common/interfaces/skill.interface.d.ts.map +1 -1
  81. package/common/interfaces/tool.interface.d.ts +26 -0
  82. package/common/interfaces/tool.interface.d.ts.map +1 -1
  83. package/common/metadata/agent.metadata.d.ts +10 -0
  84. package/common/metadata/agent.metadata.d.ts.map +1 -1
  85. package/common/metadata/app.metadata.d.ts +472 -0
  86. package/common/metadata/app.metadata.d.ts.map +1 -1
  87. package/common/metadata/channel.metadata.d.ts +10 -0
  88. package/common/metadata/channel.metadata.d.ts.map +1 -1
  89. package/common/metadata/front-mcp.metadata.d.ts +2103 -49
  90. package/common/metadata/front-mcp.metadata.d.ts.map +1 -1
  91. package/common/metadata/index.d.ts +1 -0
  92. package/common/metadata/index.d.ts.map +1 -1
  93. package/common/metadata/output-policy.d.ts +82 -0
  94. package/common/metadata/output-policy.d.ts.map +1 -0
  95. package/common/metadata/prompt.metadata.d.ts +10 -0
  96. package/common/metadata/prompt.metadata.d.ts.map +1 -1
  97. package/common/metadata/resource.metadata.d.ts +20 -0
  98. package/common/metadata/resource.metadata.d.ts.map +1 -1
  99. package/common/metadata/skill.metadata.d.ts +55 -1
  100. package/common/metadata/skill.metadata.d.ts.map +1 -1
  101. package/common/metadata/tool-ui.metadata.d.ts +1 -1
  102. package/common/metadata/tool-ui.metadata.d.ts.map +1 -1
  103. package/common/metadata/tool.metadata.d.ts +75 -0
  104. package/common/metadata/tool.metadata.d.ts.map +1 -1
  105. package/common/records/skill.record.d.ts +2 -0
  106. package/common/records/skill.record.d.ts.map +1 -1
  107. package/common/schemas/http-output.schema.d.ts +25 -25
  108. package/common/schemas/http-output.schema.d.ts.map +1 -1
  109. package/common/tokens/app.tokens.d.ts.map +1 -1
  110. package/common/tokens/front-mcp.tokens.d.ts.map +1 -1
  111. package/common/tokens/skill.tokens.d.ts +10 -0
  112. package/common/tokens/skill.tokens.d.ts.map +1 -1
  113. package/common/tokens/tool.tokens.d.ts +1 -0
  114. package/common/tokens/tool.tokens.d.ts.map +1 -1
  115. package/common/types/auth/session.types.d.ts +2 -2
  116. package/common/types/options/auth/index.d.ts +4 -4
  117. package/common/types/options/auth/index.d.ts.map +1 -1
  118. package/common/types/options/auth/interfaces.d.ts +1 -1
  119. package/common/types/options/auth/interfaces.d.ts.map +1 -1
  120. package/common/types/options/auth/orchestrated.schema.d.ts +1 -1
  121. package/common/types/options/auth/orchestrated.schema.d.ts.map +1 -1
  122. package/common/types/options/auth/shared.schemas.d.ts +2 -2
  123. package/common/types/options/auth/shared.schemas.d.ts.map +1 -1
  124. package/common/types/options/http/index.d.ts +1 -1
  125. package/common/types/options/http/index.d.ts.map +1 -1
  126. package/common/types/options/http/interfaces.d.ts +88 -1
  127. package/common/types/options/http/interfaces.d.ts.map +1 -1
  128. package/common/types/options/http/schema.d.ts +17 -0
  129. package/common/types/options/http/schema.d.ts.map +1 -1
  130. package/common/types/options/index.d.ts +1 -0
  131. package/common/types/options/index.d.ts.map +1 -1
  132. package/common/types/options/metrics/index.d.ts +3 -0
  133. package/common/types/options/metrics/index.d.ts.map +1 -0
  134. package/common/types/options/metrics/interfaces.d.ts +154 -0
  135. package/common/types/options/metrics/interfaces.d.ts.map +1 -0
  136. package/common/types/options/metrics/schema.d.ts +33 -0
  137. package/common/types/options/metrics/schema.d.ts.map +1 -0
  138. package/common/types/options/session/schema.d.ts +3 -3
  139. package/common/types/options/sqlite/index.d.ts +2 -0
  140. package/common/types/options/sqlite/index.d.ts.map +1 -1
  141. package/common/types/options/sqlite/interfaces.d.ts +7 -2
  142. package/common/types/options/sqlite/interfaces.d.ts.map +1 -1
  143. package/common/types/options/sqlite/resolve.d.ts +29 -0
  144. package/common/types/options/sqlite/resolve.d.ts.map +1 -0
  145. package/common/types/options/sqlite/schema.d.ts +1 -1
  146. package/common/types/options/sqlite/schema.d.ts.map +1 -1
  147. package/common/types/options/transport/interfaces.d.ts +23 -7
  148. package/common/types/options/transport/interfaces.d.ts.map +1 -1
  149. package/common/types/options/transport/schema.d.ts +24 -5
  150. package/common/types/options/transport/schema.d.ts.map +1 -1
  151. package/common/utils/caller-dir.utils.d.ts +15 -0
  152. package/common/utils/caller-dir.utils.d.ts.map +1 -0
  153. package/common/utils/index.d.ts +1 -0
  154. package/common/utils/index.d.ts.map +1 -1
  155. package/direct/client.types.d.ts +10 -0
  156. package/direct/client.types.d.ts.map +1 -1
  157. package/elicitation/store/elicitation-store.factory.d.ts +19 -5
  158. package/elicitation/store/elicitation-store.factory.d.ts.map +1 -1
  159. package/errors/index.d.ts +4 -2
  160. package/errors/index.d.ts.map +1 -1
  161. package/errors/mcp.error.d.ts +79 -4
  162. package/errors/mcp.error.d.ts.map +1 -1
  163. package/errors/sdk.errors.d.ts +13 -0
  164. package/errors/sdk.errors.d.ts.map +1 -1
  165. package/errors/tool-credentials-required.error.d.ts +70 -0
  166. package/errors/tool-credentials-required.error.d.ts.map +1 -0
  167. package/esm/index.mjs +7689 -3080
  168. package/flows/flow.instance.d.ts.map +1 -1
  169. package/front-mcp/front-mcp.d.ts +61 -32
  170. package/front-mcp/front-mcp.d.ts.map +1 -1
  171. package/front-mcp/front-mcp.providers.d.ts +804 -12
  172. package/front-mcp/front-mcp.providers.d.ts.map +1 -1
  173. package/index.d.ts +35 -8
  174. package/index.d.ts.map +1 -1
  175. package/index.js +8264 -3675
  176. package/job/index.d.ts +1 -0
  177. package/job/index.d.ts.map +1 -1
  178. package/metrics/index.d.ts +4 -0
  179. package/metrics/index.d.ts.map +1 -0
  180. package/metrics/metrics.errors.d.ts +18 -0
  181. package/metrics/metrics.errors.d.ts.map +1 -0
  182. package/metrics/metrics.routes.d.ts +30 -0
  183. package/metrics/metrics.routes.d.ts.map +1 -0
  184. package/metrics/metrics.service.d.ts +66 -0
  185. package/metrics/metrics.service.d.ts.map +1 -0
  186. package/package.json +30 -11
  187. package/prompt/prompt.registry.d.ts +5 -0
  188. package/prompt/prompt.registry.d.ts.map +1 -1
  189. package/resource/resource.registry.d.ts +5 -0
  190. package/resource/resource.registry.d.ts.map +1 -1
  191. package/scope/flows/http.request.flow.d.ts +18 -1
  192. package/scope/flows/http.request.flow.d.ts.map +1 -1
  193. package/scope/optional-dependency.util.d.ts +39 -0
  194. package/scope/optional-dependency.util.d.ts.map +1 -0
  195. package/scope/scope.instance.d.ts +30 -0
  196. package/scope/scope.instance.d.ts.map +1 -1
  197. package/scope/scope.utils.d.ts.map +1 -1
  198. package/server/adapters/express.host.adapter.d.ts +16 -0
  199. package/server/adapters/express.host.adapter.d.ts.map +1 -1
  200. package/server/adapters/polyfills/browser-express-host.d.ts +3 -0
  201. package/server/adapters/polyfills/browser-express-host.d.ts.map +1 -1
  202. package/server/adapters/polyfills/node-express-host.d.ts +1 -1
  203. package/server/adapters/polyfills/node-express-host.d.ts.map +1 -1
  204. package/server/custom-routes.helper.d.ts +81 -0
  205. package/server/custom-routes.helper.d.ts.map +1 -0
  206. package/server/server.instance.d.ts +16 -0
  207. package/server/server.instance.d.ts.map +1 -1
  208. package/skill/flows/http/llm-full-txt.flow.d.ts +1 -1
  209. package/skill/flows/http/llm-txt.flow.d.ts +1 -1
  210. package/skill/flows/http/skills-api.flow.d.ts +18 -1
  211. package/skill/flows/http/skills-api.flow.d.ts.map +1 -1
  212. package/skill/flows/load-skill.flow.d.ts +7 -0
  213. package/skill/flows/load-skill.flow.d.ts.map +1 -1
  214. package/skill/flows/search-skills.flow.d.ts +13 -0
  215. package/skill/flows/search-skills.flow.d.ts.map +1 -1
  216. package/skill/index.d.ts +1 -0
  217. package/skill/index.d.ts.map +1 -1
  218. package/skill/sep-2640/resources/skill-file.resource.d.ts.map +1 -1
  219. package/skill/sep-2640/resources/skill-index.resource.d.ts.map +1 -1
  220. package/skill/sep-2640/resources/skill-md.resource.d.ts.map +1 -1
  221. package/skill/sep-2640/sep-2640.per-skill.d.ts.map +1 -1
  222. package/skill/skill-authorities.helper.d.ts +100 -0
  223. package/skill/skill-authorities.helper.d.ts.map +1 -0
  224. package/skill/skill.instance.d.ts.map +1 -1
  225. package/skill/skill.registry.d.ts +34 -0
  226. package/skill/skill.registry.d.ts.map +1 -1
  227. package/skill/skill.utils.d.ts.map +1 -1
  228. package/task/helpers/cli-task-runner.d.ts.map +1 -1
  229. package/tool/flows/call-tool.flow.d.ts +26 -1
  230. package/tool/flows/call-tool.flow.d.ts.map +1 -1
  231. package/tool/flows/tool-credentials.gate.d.ts +31 -0
  232. package/tool/flows/tool-credentials.gate.d.ts.map +1 -0
  233. package/tool/flows/tools-list.flow.d.ts.map +1 -1
  234. package/tool/tool.instance.d.ts.map +1 -1
  235. package/tool/tool.registry.d.ts +6 -0
  236. package/tool/tool.registry.d.ts.map +1 -1
  237. package/tool/ui/index.d.ts +1 -1
  238. package/tool/ui/index.d.ts.map +1 -1
  239. package/tool/ui/ui-resource.handler.d.ts.map +1 -1
  240. package/tool/ui/ui-shared.d.ts +33 -1
  241. package/tool/ui/ui-shared.d.ts.map +1 -1
  242. package/transport/adapters/transport.local.adapter.d.ts.map +1 -1
  243. package/transport/event-stores/event-store.factory.d.ts.map +1 -1
  244. package/transport/flows/handle.sse.flow.d.ts +1 -1
  245. package/transport/flows/handle.streamable-http.flow.d.ts +58 -1
  246. package/transport/flows/handle.streamable-http.flow.d.ts.map +1 -1
  247. package/transport/mcp-handlers/call-tool-request.handler.d.ts.map +1 -1
  248. package/transport/mcp-handlers/index.d.ts.map +1 -1
  249. package/transport/mcp-handlers/read-resource-request.handler.d.ts.map +1 -1
  250. package/transport/mcp-handlers/skills-list-request.handler.d.ts.map +1 -1
  251. package/transport/mcp-handlers/skills-load-request.handler.d.ts.map +1 -1
  252. package/transport/mcp-handlers/skills-search-request.handler.d.ts.map +1 -1
  253. package/transport/transport.registry.d.ts +24 -3
  254. package/transport/transport.registry.d.ts.map +1 -1
  255. package/workflow/index.d.ts +1 -0
  256. package/workflow/index.d.ts.map +1 -1
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Secure-store DI Providers (#470)
3
+ *
4
+ * Registers the per-request {@link SecureStoreAccessor} (`this.secureStore`).
5
+ * The backend is a GLOBAL singleton owned by LocalPrimaryAuth; the accessor is
6
+ * CONTEXT-scoped because it must resolve the CURRENT request's namespace (the
7
+ * authenticated `sub` for `user` scope, the transport `sessionId` for `session`
8
+ * scope) before calling the backend.
9
+ */
10
+ import { type SecureStoreBackend, type SecureStoreScope } from '@frontmcp/auth';
11
+ import { type Token } from '@frontmcp/di';
12
+ import { type ProviderType } from '../../common';
13
+ import { type FrontMcpContext } from '../../context/frontmcp-context';
14
+ /**
15
+ * GLOBAL DI token for the secure-store backend singleton. Provided by
16
+ * LocalPrimaryAuth once the backing is initialized.
17
+ */
18
+ export declare const SECURE_STORE_BACKEND: Token<SecureStoreBackend>;
19
+ /**
20
+ * Resolve the transport session id for the current request, or undefined when
21
+ * there is no session. Used for `session`-scoped secrets.
22
+ */
23
+ export declare function resolveRequestSessionId(ctx: FrontMcpContext): string | undefined;
24
+ /**
25
+ * Build the DI providers that back `this.secureStore`.
26
+ *
27
+ * @param backend - the GLOBAL secure-store backend singleton.
28
+ * @param scope - the configured namespace scope (`user` | `session` | `global`).
29
+ * @param ttlMs - optional default TTL applied to writes.
30
+ */
31
+ export declare function createSecureStoreProviders(opts: {
32
+ backend: SecureStoreBackend;
33
+ scope: SecureStoreScope;
34
+ ttlMs?: number;
35
+ }): ProviderType[];
36
+ //# sourceMappingURL=secure-store.providers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secure-store.providers.d.ts","sourceRoot":"","sources":["../../../src/auth/secure-store/secure-store.providers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAiB,KAAK,KAAK,EAAE,MAAM,cAAc,CAAC;AAEzD,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAItE;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAkD,KAAK,CAAC,kBAAkB,CAAC,CAAC;AAE7G;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CAGhF;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE;IAC/C,OAAO,EAAE,kBAAkB,CAAC;IAC5B,KAAK,EAAE,gBAAgB,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,YAAY,EAAE,CA6BjB"}
@@ -5,13 +5,23 @@
5
5
  * Supports Redis, Vercel KV, and SQLite providers.
6
6
  * Uses @frontmcp/utils storage adapters internally.
7
7
  */
8
- import { type StorageAdapter } from '@frontmcp/utils';
9
8
  import type { SessionStore } from '@frontmcp/auth';
10
- import { type FrontMcpLogger, type RedisOptions, type PubsubOptions, type SqliteOptionsInput } from '../../common';
9
+ import { type StorageAdapter } from '@frontmcp/utils';
10
+ import { type FrontMcpLogger, type PubsubOptions, type RedisOptions, type SqliteOptionsInput } from '../../common';
11
+ /**
12
+ * Discriminated input for `createSessionStore`. A SQLite-backed session
13
+ * store is requested with `{ sqlite: SqliteOptionsInput, ... }`; any
14
+ * other shape is treated as a Redis/Vercel KV configuration.
15
+ */
16
+ export type SessionStoreFactoryOptions = RedisOptions | {
17
+ sqlite: SqliteOptionsInput;
18
+ keyPrefix?: string;
19
+ defaultTtlMs?: number;
20
+ };
11
21
  /**
12
22
  * Create a session store based on configuration
13
23
  *
14
- * @param options - Storage configuration (Redis or Vercel KV)
24
+ * @param options - Storage configuration (Redis, Vercel KV, or SQLite)
15
25
  * @param logger - Optional logger instance
16
26
  * @returns A session store instance
17
27
  *
@@ -30,8 +40,15 @@ import { type FrontMcpLogger, type RedisOptions, type PubsubOptions, type Sqlite
30
40
  * provider: 'vercel-kv',
31
41
  * });
32
42
  * ```
43
+ *
44
+ * @example SQLite
45
+ * ```typescript
46
+ * const store = await createSessionStore({
47
+ * sqlite: { path: '~/.frontmcp/data/sessions.sqlite' },
48
+ * });
49
+ * ```
33
50
  */
34
- export declare function createSessionStore(options: RedisOptions, logger?: FrontMcpLogger): Promise<SessionStore>;
51
+ export declare function createSessionStore(options: SessionStoreFactoryOptions, logger?: FrontMcpLogger): Promise<SessionStore>;
35
52
  /**
36
53
  * Create a session store synchronously (for backwards compatibility)
37
54
  * Note: For Vercel KV, use createSessionStore() instead as it requires async connect
@@ -72,6 +89,9 @@ export declare function createSessionStoreSync(options: RedisOptions, logger?: F
72
89
  * });
73
90
  * ```
74
91
  */
75
- export declare function createSqliteSessionStore(options: SqliteOptionsInput, logger?: FrontMcpLogger): SessionStore;
92
+ export declare function createSqliteSessionStore(options: SqliteOptionsInput & {
93
+ keyPrefix?: string;
94
+ defaultTtlMs?: number;
95
+ }, logger?: FrontMcpLogger): SessionStore;
76
96
  export declare function createPubsubStore(options: PubsubOptions): StorageAdapter;
77
97
  //# sourceMappingURL=session-store.factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-store.factory.d.ts","sourceRoot":"","sources":["../../../src/auth/session/session-store.factory.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,YAAY,EAGjB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EAGxB,MAAM,cAAc,CAAC;AAEtB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,CAW9G;AAiDD;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,YAAY,CAuBnG;AAED;;;;;;;;;;;;;;;GAeG;AACH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,YAAY,CAQ3G;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,cAAc,CAYxE"}
1
+ {"version":3,"file":"session-store.factory.d.ts","sourceRoot":"","sources":["../../../src/auth/session/session-store.factory.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE3E,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,YAAY,EAEjB,KAAK,kBAAkB,EAExB,MAAM,cAAc,CAAC;AAGtB;;;;GAIG;AACH,MAAM,MAAM,0BAA0B,GAClC,YAAY,GACZ;IACE,MAAM,EAAE,kBAAkB,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAQN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,0BAA0B,EACnC,MAAM,CAAC,EAAE,cAAc,GACtB,OAAO,CAAC,YAAY,CAAC,CAkBvB;AAiDD;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,YAAY,CAuBnG;AAED;;;;;;;;;;;;;;;GAeG;AACH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,kBAAkB,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,EAC3E,MAAM,CAAC,EAAE,cAAc,GACtB,YAAY,CAQd;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,cAAc,CAYxE"}
@@ -112,10 +112,42 @@ type __OutputSchema = __AgentSingleOutputType | __AgentSingleOutputType[];
112
112
  * Guard fields (concurrency, rateLimit, timeout) use auto-generated Input types
113
113
  * where all fields are optional. Required fields are validated at runtime by Zod.
114
114
  * @see schemas.generated.ts in @frontmcp/guard
115
+ *
116
+ * These fields are `Omit`-ed from {@link AgentMetadata} and re-declared with the
117
+ * permissive `*Input` types. The re-declarations carry their own JSDoc so editor
118
+ * hover docs work on them (the base field docs do not survive `Omit`) — #452.
115
119
  */
116
120
  export type AgentMetadataOptions<I extends __Shape, O extends __OutputSchema> = Omit<AgentMetadata<I, O>, 'concurrency' | 'rateLimit' | 'timeout'> & {
121
+ /**
122
+ * Concurrency control for this agent — caps the number of simultaneous executions.
123
+ *
124
+ * @example
125
+ * ```typescript
126
+ * @Agent({ name: 'researcher', inputSchema: { topic: z.string() }, concurrency: { maxConcurrent: 2 } })
127
+ * ```
128
+ */
117
129
  concurrency?: ConcurrencyConfigInput;
130
+ /**
131
+ * Rate limiting for this agent — how many invocations are allowed within a time window.
132
+ *
133
+ * @example
134
+ * ```typescript
135
+ * @Agent({
136
+ * name: 'researcher',
137
+ * inputSchema: { topic: z.string() },
138
+ * rateLimit: { maxRequests: 20, windowMs: 60_000 },
139
+ * })
140
+ * ```
141
+ */
118
142
  rateLimit?: RateLimitConfigInput;
143
+ /**
144
+ * Timeout for this agent's execution — wraps the execute stage with a deadline.
145
+ *
146
+ * @example
147
+ * ```typescript
148
+ * @Agent({ name: 'researcher', inputSchema: { topic: z.string() }, timeout: { executeMs: 120_000 } })
149
+ * ```
150
+ */
119
151
  timeout?: TimeoutConfigInput;
120
152
  };
121
153
  declare module '@frontmcp/sdk' {
@@ -1 +1 @@
1
- {"version":3,"file":"agent.decorator.d.ts","sourceRoot":"","sources":["../../../src/common/decorators/agent.decorator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.decorator.d.ts","sourceRoot":"","sources":["../../../src/common/decorators/agent.decorator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"app.decorator.d.ts","sourceRoot":"","sources":["../../../src/common/decorators/app.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAI1B,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACzB,MAAM,aAAa,CAAC;AAIrB;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,iBAAS,WAAW,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,cAAc,CAsCvE;AAwFD;;GAEG;AACH,KAAK,YAAY,GAAG;IAClB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,cAAc,CAAC;IAC7C,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,iBAAiB,CAAC;IACnE,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,CAAC;CACvE,CAAC;AAEF,QAAA,MAAM,GAAG,EAA6B,YAAY,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"app.decorator.d.ts","sourceRoot":"","sources":["../../../src/common/decorators/app.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAI1B,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACzB,MAAM,aAAa,CAAC;AAQrB;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,iBAAS,WAAW,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,cAAc,CA6CvE;AAwFD;;GAEG;AACH,KAAK,YAAY,GAAG;IAClB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,cAAc,CAAC;IAC7C,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,iBAAiB,CAAC;IACnE,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,CAAC;CACvE,CAAC;AAEF,QAAA,MAAM,GAAG,EAA6B,YAAY,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"front-mcp.decorator.d.ts","sourceRoot":"","sources":["../../../src/common/decorators/front-mcp.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAM1B,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAa5E;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,gBAAgB,GAAG,SAAS,CAOhF;AAmCD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,cAAc,CA2E3E"}
1
+ {"version":3,"file":"front-mcp.decorator.d.ts","sourceRoot":"","sources":["../../../src/common/decorators/front-mcp.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAM1B,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAiB5E;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,gBAAgB,GAAG,SAAS,CAOhF;AAmCD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,cAAc,CAqG3E"}
@@ -11,13 +11,25 @@ import { type SkillEsmTargetRecord, type SkillRemoteRecord } from '../records/sk
11
11
  *
12
12
  * Aligned with the Anthropic Agent Skills specification:
13
13
  * - `name`: kebab-case, max 64 chars, no consecutive hyphens
14
- * - `description`: max 1024 chars, no XML/HTML tags
14
+ * - `description`: 1–1024 chars, non-empty
15
15
  * - Supports `license`, `compatibility`, `specMetadata`, `allowedTools`, `resources`
16
16
  *
17
+ * ## File path resolution
18
+ *
19
+ * When `instructions: { file: './…' }`, `resources.references: './…'`, or
20
+ * `resources.examples: './…'` are relative, they are resolved relative to
21
+ * the directory of the source file that declared the `@Skill` class —
22
+ * **not** the process `cwd`. The directory is captured at decoration time
23
+ * by walking the call stack. This matches the behaviour of the inline
24
+ * `skill()` helper, and works under both CJS and ESM. If the caller
25
+ * cannot be determined (e.g. an exotic loader strips stack frames), the
26
+ * framework falls back to the build-time `_skills/manifest.json` for
27
+ * bundled CLIs and otherwise to the legacy `cwd`-relative behaviour.
28
+ *
17
29
  * @param providedMetadata - Skill metadata including name, description, and instructions
18
30
  * @returns Class decorator
19
31
  *
20
- * @example Basic skill
32
+ * @example Basic skill (empty body — runtime drives loading)
21
33
  * ```typescript
22
34
  * @Skill({
23
35
  * name: 'review-pr',
@@ -25,10 +37,7 @@ import { type SkillEsmTargetRecord, type SkillRemoteRecord } from '../records/sk
25
37
  * instructions: 'Step 1: Fetch PR details...',
26
38
  * tools: ['github_get_pr', 'github_add_comment'],
27
39
  * })
28
- * class ReviewPRSkill extends SkillContext {
29
- * async loadInstructions() { return this.metadata.instructions as string; }
30
- * async build() { ... }
31
- * }
40
+ * class ReviewPRSkill extends SkillContext {}
32
41
  * ```
33
42
  *
34
43
  * @example Skill with Agent Skills spec fields
@@ -43,7 +52,7 @@ import { type SkillEsmTargetRecord, type SkillRemoteRecord } from '../records/sk
43
52
  * compatibility: 'Requires Docker 24+ and kubectl',
44
53
  * allowedTools: 'Read Edit Bash(docker build)',
45
54
  * })
46
- * class DeploySkill extends SkillContext { ... }
55
+ * class DeploySkill extends SkillContext {}
47
56
  * ```
48
57
  *
49
58
  * @example Skill with URL-based instructions
@@ -54,7 +63,7 @@ import { type SkillEsmTargetRecord, type SkillRemoteRecord } from '../records/sk
54
63
  * instructions: { url: 'https://example.com/skills/security-audit.md' },
55
64
  * tools: ['code_search', 'file_read'],
56
65
  * })
57
- * class SecurityAuditSkill extends SkillContext { ... }
66
+ * class SecurityAuditSkill extends SkillContext {}
58
67
  * ```
59
68
  */
60
69
  declare function FrontMcpSkill(providedMetadata: SkillMetadata): ClassDecorator;
@@ -65,7 +74,15 @@ declare function FrontMcpSkill(providedMetadata: SkillMetadata): ClassDecorator;
65
74
  * The skill is registered as a value record with a unique symbol token.
66
75
  *
67
76
  * Name must be kebab-case (max 64 chars, no consecutive hyphens).
68
- * Description max 1024 chars, no XML/HTML tags.
77
+ * Description: 1–1024 chars, non-empty.
78
+ *
79
+ * ## File path resolution
80
+ *
81
+ * When `instructions: { file: './…' }`, `resources.references: './…'`, or
82
+ * `resources.examples: './…'` are relative, they are resolved relative to
83
+ * the directory of the source file that called `skill()` — **not** the
84
+ * process `cwd`. The directory is captured at call time by walking the
85
+ * stack. Works under both CJS and ESM.
69
86
  *
70
87
  * @param providedMetadata - Skill metadata including name, description, and instructions
71
88
  * @returns A skill value record that can be passed to app/plugin skills array
@@ -1 +1 @@
1
- {"version":3,"file":"skill.decorator.d.ts","sourceRoot":"","sources":["../../../src/common/decorators/skill.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAK1B,OAAO,EAAuB,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAC3G,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAK9D,OAAO,EAAE,KAAK,oBAAoB,EAAE,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAI5F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,iBAAS,aAAa,CAAC,gBAAgB,EAAE,aAAa,GAAG,cAAc,CAgBtE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,iBAAS,aAAa,CAAC,gBAAgB,EAAE,aAAa,GAAG,gBAAgB,CAiBxE;AA8BD,iBAAS,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,aAAa,CAAC,GAAG,oBAAoB,CAelH;AAED,iBAAS,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,iBAAiB,CAgB/G;AAOD,KAAK,cAAc,GAAG;IACpB,CAAC,QAAQ,EAAE,aAAa,GAAG,cAAc,CAAC;IAC1C,GAAG,EAAE,OAAO,QAAQ,CAAC;IACrB,MAAM,EAAE,OAAO,WAAW,CAAC;CAC5B,CAAC;AAEF,QAAA,MAAM,KAAK,EAA+B,cAAc,CAAC;AAGzD,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,IAAI,KAAK,EAAE,CAAC;AAEvE;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAuB1E"}
1
+ {"version":3,"file":"skill.decorator.d.ts","sourceRoot":"","sources":["../../../src/common/decorators/skill.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAG1B,OAAO,EAAuB,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAC3G,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAK9D,OAAO,EAAE,KAAK,oBAAoB,EAAE,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAQ5F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH,iBAAS,aAAa,CAAC,gBAAgB,EAAE,aAAa,GAAG,cAAc,CA0BtE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,iBAAS,aAAa,CAAC,gBAAgB,EAAE,aAAa,GAAG,gBAAgB,CAiBxE;AAYD,iBAAS,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,aAAa,CAAC,GAAG,oBAAoB,CAelH;AAED,iBAAS,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,iBAAiB,CAgB/G;AAOD,KAAK,cAAc,GAAG;IACpB,CAAC,QAAQ,EAAE,aAAa,GAAG,cAAc,CAAC;IAC1C,GAAG,EAAE,OAAO,QAAQ,CAAC;IACrB,MAAM,EAAE,OAAO,WAAW,CAAC;CAC5B,CAAC;AAEF,QAAA,MAAM,KAAK,EAA+B,cAAc,CAAC;AAGzD,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,IAAI,KAAK,EAAE,CAAC;AAEvE;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAuB1E"}
@@ -75,11 +75,55 @@ O>;
75
75
  * Guard fields (concurrency, rateLimit, timeout) use auto-generated Input types
76
76
  * where all fields are optional. Required fields are validated at runtime by Zod.
77
77
  * @see schemas.generated.ts in @frontmcp/guard
78
+ *
79
+ * These four fields are `Omit`-ed from {@link ToolMetadata} and re-declared with
80
+ * the permissive `*Input` types. The re-declarations carry their own JSDoc so
81
+ * editor hover docs work on them (the base field docs do not survive `Omit`) —
82
+ * #452.
78
83
  */
79
84
  export type ToolMetadataOptions<I extends __Shape, O extends __OutputSchema> = Omit<__ToolMetadataBase<I, O>, 'concurrency' | 'rateLimit' | 'timeout' | 'ui'> & {
85
+ /**
86
+ * Concurrency control for this tool — caps the number of simultaneous executions.
87
+ *
88
+ * @example
89
+ * ```typescript
90
+ * @Tool({ name: 'deploy', inputSchema: { env: z.string() }, concurrency: { maxConcurrent: 1 } })
91
+ * ```
92
+ */
80
93
  concurrency?: ConcurrencyConfigInput;
94
+ /**
95
+ * Rate limiting for this tool — how many requests are allowed within a time window.
96
+ *
97
+ * @example
98
+ * ```typescript
99
+ * @Tool({
100
+ * name: 'search',
101
+ * inputSchema: { query: z.string() },
102
+ * rateLimit: { maxRequests: 100, windowMs: 60_000, partitionBy: 'userId' },
103
+ * })
104
+ * ```
105
+ */
81
106
  rateLimit?: RateLimitConfigInput;
107
+ /**
108
+ * Timeout for this tool's execution — wraps the execute stage with a deadline.
109
+ *
110
+ * @example
111
+ * ```typescript
112
+ * @Tool({ name: 'long-task', inputSchema: { query: z.string() }, timeout: { executeMs: 30_000 } })
113
+ * ```
114
+ */
82
115
  timeout?: TimeoutConfigInput;
116
+ /**
117
+ * Interactive widget UI for this tool's result (MCP-UI / ext-apps).
118
+ *
119
+ * Prefer the file-based form — point at a `.tsx`/`.html` widget and the build
120
+ * bundles it; the input/output types are inferred from this tool's schemas.
121
+ *
122
+ * @example
123
+ * ```typescript
124
+ * @Tool({ name: 'chart', inputSchema: { points: z.array(z.number()) }, ui: { file: './chart.widget.tsx' } })
125
+ * ```
126
+ */
83
127
  ui?: ToolUIConfig<ToolInputOf<{
84
128
  inputSchema: I;
85
129
  }>, ToolOutputOf<{
@@ -1 +1 @@
1
- {"version":3,"file":"tool.decorator.d.ts","sourceRoot":"","sources":["../../../src/common/decorators/tool.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,sBAAsB,EAAE,KAAK,oBAAoB,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAClH,OAAO,KAAK,CAAC,MAAM,oBAAoB,CAAC;AAGxC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAEL,KAAK,iBAAiB,EAEtB,KAAK,iBAAiB,EAEtB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAwBjE,MAAM,MAAM,0BAA0B,CACpC,QAAQ,SAAS,aAAa,EAC9B,SAAS,SAAS,cAAc,EAChC,EAAE,GAAG,WAAW,CAAC;IAAE,WAAW,EAAE,QAAQ,CAAA;CAAE,CAAC,EAC3C,GAAG,GAAG,YAAY,CAAC;IAAE,YAAY,EAAE,SAAS,CAAA;CAAE,CAAC,IAC7C,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC,KAAK,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;AAE7E;;GAEG;AACH,iBAAS,YAAY,CACnB,CAAC,SAAS,YAAY,EACtB,QAAQ,SAAS,aAAa,GAAG,CAAC,CAAC,aAAa,CAAC,EACjD,SAAS,SAAS,cAAc,GAAG,CAAC,CAAC,cAAc,CAAC,EACpD,gBAAgB,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,0BAA0B,CAAC,QAAQ,EAAE,SAAS,CAAC,KAAK,MAAM,IAAI,CAY/F;AA8CD,OAAO,EAAE,YAAY,EAAE,YAAY,IAAI,IAAI,EAAE,YAAY,EAAE,YAAY,IAAI,IAAI,EAAE,CAAC;AAElF;;;;;;;GAOG;AAEH,KAAK,OAAO,GAAG,CAAC,CAAC,WAAW,CAAC;AAC7B,KAAK,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAEtE,MAAM,MAAM,WAAW,CAAC,GAAG,IAAI,GAAG,SAAS;IAAE,WAAW,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAItG;;;GAGG;AACH,KAAK,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAElH;;;GAGG;AACH,KAAK,uBAAuB,CAAC,CAAC,IAE5B,CAAC,SAAS,OAAO,GACb,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,GACjC,CAAC,SAAS,OAAO,GACf,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,GACjC,CAAC,SAAS,UAAU,GAClB,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,GACpC,CAAC,SAAS,eAAe,GACvB,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,GAExC,CAAC,SAAS,QAAQ,GAChB,MAAM,GACN,CAAC,SAAS,QAAQ,GAChB,MAAM,GACN,CAAC,SAAS,SAAS,GACjB,OAAO,GACP,CAAC,SAAS,MAAM,GACd,IAAI,GAGJ,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,WAAW,GACjC,UAAU,CAAC,CAAC,CAAC,GAEb,GAAG,CAAC;AAE1B;;GAEG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,EAAE,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,KAAK,CAAC;AAEtH;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,GAAG,IAAI,GAAG,SAAS;IAAE,YAAY,EAAE,MAAM,CAAC,CAAA;CAAE,GACjE,CAAC,SAAS,SAAS,GAAG,EAAE,GACtB,sBAAsB,CAAC,CAAC,CAAC,GACzB,uBAAuB,CAAC,CAAC,CAAC,GAC5B,GAAG,CAAC;AAKR,KAAK,qBAAqB,GACtB,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,SAAS,GACT,CAAC,CAAC,SAAS,GACX,CAAC,CAAC,SAAS,GACX,CAAC,CAAC,UAAU,GACZ,CAAC,CAAC,SAAS,GACX,CAAC,CAAC,OAAO,CAAC;AACd,KAAK,iBAAiB,GAAG,OAAO,CAAC;AACjC,KAAK,iBAAiB,GAAG,OAAO,CAAC;AACjC,KAAK,oBAAoB,GAAG,UAAU,CAAC;AACvC,KAAK,wBAAwB,GAAG,eAAe,CAAC;AAChD,KAAK,sBAAsB,GACvB,CAAC,CAAC,WAAW,GACb,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAChB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GACrB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GACrD,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;AAEvE,KAAK,sBAAsB,GACvB,qBAAqB,GACrB,iBAAiB,GACjB,iBAAiB,GACjB,oBAAoB,GACpB,wBAAwB,GACxB,sBAAsB,CAAC;AAG3B,KAAK,cAAc,GAAG,sBAAsB,GAAG,sBAAsB,EAAE,CAAC;AAExE;;GAEG;AACH,KAAK,kBAAkB,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,cAAc,IAAI,YAAY,CACjF,CAAC,EAAE,gCAAgC;AACnC,CAAC,CACF,CAAC;AAEF;;;;;GAKG;AACH;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,cAAc,IAAI,IAAI,CACjF,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,EACxB,aAAa,GAAG,WAAW,GAAG,SAAS,GAAG,IAAI,CAC/C,GAAG;IACF,WAAW,CAAC,EAAE,sBAAsB,CAAC;IACrC,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,EAAE,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC;QAAE,WAAW,EAAE,CAAC,CAAA;KAAE,CAAC,EAAE,YAAY,CAAC;QAAE,YAAY,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC,CAAC;CACvF,CAAC;AAGF,KAAK,MAAM,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,GAAG,CAAC,QAAQ,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC;AAC/E,KAAK,GAAG,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,KAAK,GAAG,CAAC,EAAE,MAAM,CAAC,KAAK,GAAG,GAC7D,CAAC,GACD,CAAC,SAAS,QAAQ,MAAM,GAAG,CAAC,EAAE,MAAM,CAAC,KAAK,GAAG,GAC3C,CAAC,GACD,KAAK,CAAC;AACZ,KAAK,GAAG,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,KAAK,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,GAC/D,CAAC,GACD,CAAC,SAAS,QAAQ,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,GAC7C,CAAC,GACD,KAAK,CAAC;AAKZ,KAAK,YAAY,CAAC,CAAC,SAAS,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,SAAS;IAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,OAAO,CAAA;CAAE,GAAG,CAAC,GAAG,KAAK,CAAC;AAG5G,KAAK,YAAY,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAC7F,KAAK,OAAO,CAAC,CAAC,SAAS,MAAM,IAAI,YAAY,CAAC,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AACtG,KAAK,QAAQ,CAAC,CAAC,SAAS,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,SAAS;IAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,KAAK,CAAC;AACjG,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACtD,KAAK,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAKjD,KAAK,eAAe,CAAC,CAAC,SAAS,MAAM,IACnC,GAAG,CAAC,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,GAAG;IAAE,kBAAkB,EAAE,+BAA+B,CAAA;CAAE,CAAC;AAGjG,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,IAEnC,OAAO,CAAC,EAAE,CAAC,SAAS,IAAI,GACpB,OAAO,GAEP,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAC9B;IAAE,2BAA2B,EAAE,mCAAmC,CAAC;IAAC,mBAAmB,EAAE,EAAE,CAAA;CAAE,GAI7F,YAAY,CAAC,CAAC,CAAC,SAAS,IAAI,GAC1B,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAC9B,OAAO,GACP;IACE,2BAA2B,EAAE,2DAA2D,CAAC;IACzF,mBAAmB,EAAE,EAAE,CAAC;CACzB,GAEH,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,GACnB,EAAE,SAAS,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,GACP;IACE,2BAA2B,EAAE,qEAAqE,CAAC;IACnG,mBAAmB,EAAE,EAAE,CAAC;IACxB,qBAAqB,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;CACnC,GACH;IACE,2BAA2B,EAAE,iDAAiD,CAAC;IAC/E,mBAAmB,EAAE,EAAE,CAAC;IACxB,qBAAqB,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;CACnC,CAAC;AAGd,KAAK,YAAY,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,IAErC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,GACrB,OAAO,GAEP,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GACzC;IAAE,6BAA6B,EAAE,gCAAgC,CAAC;IAAC,oBAAoB,EAAE,GAAG,CAAA;CAAE,GAE9F,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,GAC/B,OAAO,GACP;IACE,6BAA6B,EAAE,gFAAgF,CAAC;IAChH,oBAAoB,EAAE,GAAG,CAAC;IAC1B,gCAAgC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;CACzD,CAAC;AAKZ,KAAK,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,QAAQ,MAAM,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GACtF,CAAC,GAAG,CAAC,QAAQ,MAAM,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAC5E,CAAC,SAAS,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GACpC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GACnE,KAAK,CAAC;AAEZ,OAAO,QAAQ,eAAe,CAAC;IAK7B,SAAgB,IAAI,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,cAAc,EAC9D,IAAI,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,YAAY,EAAE,CAAC,CAAA;KAAE,GACpD,CAAC,CAAC,SAAS,MAAM,EAClB,GAAG,EAAE,CAAC,GACJ,eAAe,CAAC,CAAC,CAAC,GAClB,WAAW,CAAC,CAAC,EAAE,WAAW,CAAC;QAAE,WAAW,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC,GAC/C,YAAY,CAAC,CAAC,EAAE,YAAY,CAAC;QAAE,YAAY,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC,KACjD,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC;QAAE,WAAW,EAAE,CAAC,CAAA;KAAE,CAAC,EAAE,YAAY,CAAC;QAAE,YAAY,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC,CAAC;IAIrF,SAAgB,IAAI,CAAC,CAAC,SAAS,OAAO,EACpC,IAAI,EAAE,mBAAmB,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG;QAAE,YAAY,CAAC,EAAE,KAAK,CAAA;KAAE,GAC3D,CAAC,CAAC,SAAS,MAAM,EAClB,GAAG,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,WAAW,CAAC;QAAE,WAAW,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC,KAC9G,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC;QAAE,WAAW,EAAE,CAAC,CAAA;KAAE,CAAC,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC;CACrE"}
1
+ {"version":3,"file":"tool.decorator.d.ts","sourceRoot":"","sources":["../../../src/common/decorators/tool.decorator.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { Token, Type } from '@frontmcp/di';
3
3
  import type { GuardManager } from '@frontmcp/guard';
4
4
  import type AgentRegistry from '../../agent/agent.registry';
5
5
  import type AppRegistry from '../../app/app.registry';
6
+ import type { AuthUiRegistry } from '../../auth/auth-ui';
6
7
  import type { AuthRegistry } from '../../auth/auth.registry';
7
8
  import type { ElicitationStore } from '../../elicitation/store/elicitation.store';
8
9
  import type { HaManager } from '../../ha';
@@ -38,6 +39,12 @@ export declare abstract class ScopeEntry extends BaseEntry<ScopeRecord, unknown,
38
39
  abstract get notifications(): NotificationService;
39
40
  abstract get agents(): AgentRegistry;
40
41
  abstract get toolUI(): ToolUIRegistry | undefined;
42
+ /**
43
+ * Registry of custom `@AuthUi` slot renderers + `@AuthExtra` validators (#469).
44
+ * `undefined` in CLI mode or when no custom auth UI is configured — the OAuth
45
+ * flows then serve the built-in HTML pages unchanged.
46
+ */
47
+ abstract get authUi(): AuthUiRegistry | undefined;
41
48
  abstract get transportService(): TransportService | undefined;
42
49
  haManager?: HaManager;
43
50
  abstract get rateLimitManager(): GuardManager | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"scope.entry.d.ts","sourceRoot":"","sources":["../../../src/common/entries/scope.entry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scope.entry.d.ts","sourceRoot":"","sources":["../../../src/common/entries/scope.entry.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type SkillContent, type SkillContext } from '../interfaces';
2
- import { type SkillMetadata, type SkillResources, type SkillToolRef } from '../metadata';
2
+ import { type SkillMetadata, type SkillReferencedOperation, type SkillResources, type SkillToolRef } from '../metadata';
3
3
  import { type SkillRecord } from '../records';
4
4
  import { BaseEntry, type EntryOwnerRef } from './base.entry';
5
5
  /**
@@ -87,6 +87,27 @@ export declare abstract class SkillEntry extends BaseEntry<SkillRecord, SkillCon
87
87
  * Check if the skill should be hidden from discovery.
88
88
  */
89
89
  isHidden(): boolean;
90
+ /**
91
+ * Check if this skill is always loaded — bindings derived from this skill
92
+ * are merged into every codecall:execute call regardless of the skills the
93
+ * agent passed. See SkillMetadata.alwaysLoad for guidance on when to set this.
94
+ */
95
+ isAlwaysLoaded(): boolean;
96
+ /**
97
+ * Get the OpenAPI operations this skill references in its markdown. Empty
98
+ * array for skills that haven't been through the harvester or that
99
+ * declare capabilities only via decorator `tools`.
100
+ */
101
+ getReferencedOperations(): SkillReferencedOperation[];
102
+ /**
103
+ * Whether this skill is "executable" — has at least one declared tool
104
+ * OR at least one referenced openapi operation. Skills with neither are
105
+ * pure-knowledge: discoverable via searchKnowledge, callable via execute()
106
+ * but with no tool bindings (the agentscript can only do pure computation).
107
+ */
108
+ isExecutable(): boolean;
109
+ /** Convenience inverse of {@link isExecutable}. */
110
+ isKnowledgeOnly(): boolean;
90
111
  /**
91
112
  * Get the skill's priority for search ranking.
92
113
  */
@@ -1 +1 @@
1
- {"version":3,"file":"skill.entry.d.ts","sourceRoot":"","sources":["../../../src/common/entries/skill.entry.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAoB,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3G,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7D;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B;;OAEG;IACH,KAAK,EAAE,YAAY,CAAC;IAEpB;;OAEG;IACH,cAAc,EAAE,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEnG;;;;;GAKG;AACH,8BAAsB,UAAW,SAAQ,SAAS,CAAC,WAAW,EAAE,YAAY,EAAE,aAAa,CAAC;IAC1F;;OAEG;IACH,KAAK,EAAE,aAAa,CAAC;IAErB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,cAAc,IAAI,MAAM;IAEjC;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAE5C;;;OAGG;IACH,QAAQ,CAAC,IAAI,IAAI,OAAO,CAAC,YAAY,CAAC;IAEtC;;;OAGG;IACH,WAAW,IAAI,YAAY,EAAE;IAM7B;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB;;OAEG;IACH,OAAO,IAAI,MAAM,EAAE;IAInB;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,UAAU,IAAI,MAAM,GAAG,SAAS;IAIhC;;OAEG;IACH,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAItC;;OAEG;IACH,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS;IAIrD;;OAEG;IACH,eAAe,IAAI,MAAM,GAAG,SAAS;IAIrC;;OAEG;IACH,YAAY,IAAI,cAAc,GAAG,SAAS;IAI1C;;;;;OAKG;IACH,oBAAoB,IAAI,MAAM,EAAE;IAMhC;;OAEG;IACH,YAAY,IAAI,MAAM;CAGvB"}
1
+ {"version":3,"file":"skill.entry.d.ts","sourceRoot":"","sources":["../../../src/common/entries/skill.entry.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7D;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B;;OAEG;IACH,KAAK,EAAE,YAAY,CAAC;IAEpB;;OAEG;IACH,cAAc,EAAE,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEnG;;;;;GAKG;AACH,8BAAsB,UAAW,SAAQ,SAAS,CAAC,WAAW,EAAE,YAAY,EAAE,aAAa,CAAC;IAC1F;;OAEG;IACH,KAAK,EAAE,aAAa,CAAC;IAErB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,cAAc,IAAI,MAAM;IAEjC;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAE5C;;;OAGG;IACH,QAAQ,CAAC,IAAI,IAAI,OAAO,CAAC,YAAY,CAAC;IAEtC;;;OAGG;IACH,WAAW,IAAI,YAAY,EAAE;IAM7B;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB;;OAEG;IACH,OAAO,IAAI,MAAM,EAAE;IAInB;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;;;OAIG;IACH,cAAc,IAAI,OAAO;IAIzB;;;;OAIG;IACH,uBAAuB,IAAI,wBAAwB,EAAE;IAIrD;;;;;OAKG;IACH,YAAY,IAAI,OAAO;IAMvB,mDAAmD;IACnD,eAAe,IAAI,OAAO;IAI1B;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,UAAU,IAAI,MAAM,GAAG,SAAS;IAIhC;;OAEG;IACH,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAItC;;OAEG;IACH,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS;IAIrD;;OAEG;IACH,eAAe,IAAI,MAAM,GAAG,SAAS;IAIrC;;OAEG;IACH,YAAY,IAAI,cAAc,GAAG,SAAS;IAI1C;;;;;OAKG;IACH,oBAAoB,IAAI,MAAM,EAAE;IAMhC;;OAEG;IACH,YAAY,IAAI,MAAM;CAGvB"}
@@ -80,6 +80,23 @@ export declare abstract class ToolEntry<InSchema extends ToolInputType = ToolInp
80
80
  */
81
81
  getInputJsonSchema(): Record<string, unknown> | null;
82
82
  private computeInputJsonSchema;
83
+ /** Cached output JSON Schema result (undefined = not yet computed, null = none) */
84
+ private _cachedOutputJsonSchema?;
85
+ /**
86
+ * Get the tool's output schema as JSON Schema (cached after first call).
87
+ *
88
+ * Prefers an explicit `rawOutputSchema` (the JSON Schema set by the OpenAPI adapter /
89
+ * remote tools); otherwise converts a Zod-shape or `z.object()` `outputSchema` to JSON
90
+ * Schema — symmetric with {@link getInputJsonSchema}. Returns `null` for output forms
91
+ * that have no object-typed schema to advertise: primitive / media string literals
92
+ * (`'string'`, `'image'`, …), multi-content arrays (`['string', 'image']`), and any
93
+ * schema that does not serialize to a top-level `type: 'object'` (e.g. a union) — those
94
+ * flow through `content`, not `structuredContent`, per the MCP spec.
95
+ *
96
+ * @returns JSON Schema object, or null if there is no advertisable output schema.
97
+ */
98
+ getOutputJsonSchema(): Record<string, unknown> | null;
99
+ private computeOutputJsonSchema;
83
100
  /**
84
101
  * Create a tool context (class or function wrapper).
85
102
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tool.entry.d.ts","sourceRoot":"","sources":["../../../src/common/entries/tool.entry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool.entry.d.ts","sourceRoot":"","sources":["../../../src/common/entries/tool.entry.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { type VerifyResult } from '@frontmcp/auth';
1
2
  import { type AuthOptions } from '../../types';
2
3
  import { type ServerRequest } from '../server.interface';
3
4
  /**
@@ -26,6 +27,23 @@ export declare abstract class FrontMcpAuth<Options extends AuthOptions = AuthOpt
26
27
  abstract fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
27
28
  abstract validate(request: ServerRequest): Promise<void>;
28
29
  abstract get issuer(): string;
30
+ /**
31
+ * Cryptographically verify a gateway-issued access token (public/local/remote
32
+ * "gateway" modes — i.e. NOT transparent). Gateway tokens are signed by this
33
+ * instance, so the instance is the only place that holds the verification key.
34
+ *
35
+ * The base implementation rejects everything: only auth instances that
36
+ * actually mint gateway tokens (i.e. {@link LocalPrimaryAuth}) override this
37
+ * with a real signature + expiration check. Transparent mode never calls this
38
+ * — it verifies against the upstream provider's JWKS instead.
39
+ *
40
+ * @param _token The raw bearer token (already confirmed to be a JWT).
41
+ * @param _expectedIssuer The request-derived base URL. Provided for context /
42
+ * logging; issuer equality is intentionally NOT enforced
43
+ * (proxy/tunnel setups legitimately present `iss` ≠
44
+ * baseUrl). Signature + expiration are the security core.
45
+ */
46
+ verifyGatewayToken(_token: string, _expectedIssuer: string): Promise<VerifyResult>;
29
47
  }
30
48
  export { FrontMcpAuth as Auth };
31
49
  //# sourceMappingURL=primary-auth-provider.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"primary-auth-provider.interface.d.ts","sourceRoot":"","sources":["../../../../src/common/interfaces/internal/primary-auth-provider.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAezD;;;;;;;;;;;GAWG;AACH,8BAAsB,YAAY,CAAC,OAAO,SAAS,WAAW,GAAG,WAAW;IAC1E,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;gBAER,OAAO,EAAE,OAAO;IAK5B;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAoBhB,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAE/E,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAExD,QAAQ,KAAK,MAAM,IAAI,MAAM,CAAC;CAC/B;AAED,OAAO,EAAE,YAAY,IAAI,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"primary-auth-provider.interface.d.ts","sourceRoot":"","sources":["../../../../src/common/interfaces/internal/primary-auth-provider.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAKL,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAezD;;;;;;;;;;;GAWG;AACH,8BAAsB,YAAY,CAAC,OAAO,SAAS,WAAW,GAAG,WAAW;IAC1E,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;gBAER,OAAO,EAAE,OAAO;IAK5B;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAoBhB,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAE/E,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAExD,QAAQ,KAAK,MAAM,IAAI,MAAM,CAAC;IAE9B;;;;;;;;;;;;;;;OAeG;IACH,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;CAMnF;AAED,OAAO,EAAE,YAAY,IAAI,IAAI,EAAE,CAAC"}
@@ -209,14 +209,27 @@ export declare abstract class SkillContext extends ExecutionContextBase<SkillCon
209
209
  constructor(args: SkillCtorArgs);
210
210
  /**
211
211
  * Load the skill's detailed instructions.
212
- * Resolves from inline string, file path, or URL based on metadata.
212
+ *
213
+ * The framework provides a default implementation that throws — when a
214
+ * class is decorated with `@Skill`, the runtime uses `SkillInstance` to
215
+ * load instructions from the decorator metadata, so this method is never
216
+ * called on the user class.
217
+ *
218
+ * Override this only when you construct a `SkillContext` subclass manually
219
+ * (outside the `@Skill` decorator pipeline) and need bespoke loading logic.
213
220
  */
214
- abstract loadInstructions(): Promise<string>;
221
+ loadInstructions(): Promise<string>;
215
222
  /**
216
223
  * Build the full SkillContent for this skill.
217
- * Resolves instructions and normalizes all metadata into a single object.
224
+ *
225
+ * The framework provides a default implementation that throws — when a
226
+ * class is decorated with `@Skill`, the runtime uses `SkillInstance.load()`
227
+ * to assemble the content, so this method is never called on the user class.
228
+ *
229
+ * Override this only when you construct a `SkillContext` subclass manually
230
+ * (outside the `@Skill` decorator pipeline) and need bespoke assembly logic.
218
231
  */
219
- abstract build(): Promise<SkillContent>;
232
+ build(): Promise<SkillContent>;
220
233
  /**
221
234
  * Get normalized tool references from the skill metadata.
222
235
  */
@@ -1 +1 @@
1
- {"version":3,"file":"skill.interface.d.ts","sourceRoot":"","sources":["../../../src/common/interfaces/skill.interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill.interface.d.ts","sourceRoot":"","sources":["../../../src/common/interfaces/skill.interface.ts"],"names":[],"mappings":"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"}
@@ -100,6 +100,32 @@ export declare abstract class ToolContext<InSchema extends ToolInputType = ToolI
100
100
  * ```
101
101
  */
102
102
  protected progress(progress: number, total?: number, message?: string): Promise<boolean>;
103
+ /**
104
+ * Notify subscribed clients that a resource's contents changed.
105
+ *
106
+ * Sends `notifications/resources/updated` to every session subscribed to `uri`
107
+ * (via `resources/subscribe`); a no-op for sessions that aren't subscribed. Call
108
+ * this when a tool mutates state that backs a `@Resource` so subscribers re-fetch.
109
+ *
110
+ * @param uri - The URI of the resource whose contents changed.
111
+ *
112
+ * @example
113
+ * ```typescript
114
+ * async execute(input: Input): Promise<Output> {
115
+ * await this.saveNote(input);
116
+ * this.notifyResourceUpdated(`notes://${input.id}`);
117
+ * return { ok: true };
118
+ * }
119
+ * ```
120
+ */
121
+ protected notifyResourceUpdated(uri: string): void;
122
+ /**
123
+ * Notify all connected clients that the set of available resources changed.
124
+ *
125
+ * Broadcasts `notifications/resources/list_changed` so clients re-run
126
+ * `resources/list`. Call this when a tool adds or removes resources at runtime.
127
+ */
128
+ protected notifyResourceListChanged(): void;
103
129
  /**
104
130
  * Request interactive input from the user during tool execution.
105
131
  *