@inkeep/agents-core 0.50.1 → 0.50.4

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 (60) hide show
  1. package/dist/auth/auth-schema.d.ts +105 -105
  2. package/dist/auth/auth-validation-schemas.d.ts +148 -148
  3. package/dist/auth/auth.d.ts +24 -24
  4. package/dist/auth/auth.js +8 -9
  5. package/dist/auth/authz/sync.d.ts +22 -1
  6. package/dist/auth/authz/sync.js +59 -4
  7. package/dist/auth/permissions.d.ts +9 -9
  8. package/dist/constants/models.d.ts +1 -0
  9. package/dist/constants/models.js +1 -0
  10. package/dist/constants/otel-attributes.d.ts +4 -0
  11. package/dist/constants/otel-attributes.js +4 -0
  12. package/dist/data-access/manage/agents.d.ts +43 -43
  13. package/dist/data-access/manage/artifactComponents.d.ts +12 -12
  14. package/dist/data-access/manage/contextConfigs.d.ts +12 -12
  15. package/dist/data-access/manage/dataComponents.d.ts +6 -6
  16. package/dist/data-access/manage/functionTools.d.ts +18 -18
  17. package/dist/data-access/manage/scope-helpers.d.ts +25 -0
  18. package/dist/data-access/manage/scope-helpers.js +18 -0
  19. package/dist/data-access/manage/skills.d.ts +14 -14
  20. package/dist/data-access/manage/subAgentExternalAgentRelations.d.ts +24 -24
  21. package/dist/data-access/manage/subAgentExternalAgentRelations.js +13 -12
  22. package/dist/data-access/manage/subAgentRelations.d.ts +20 -20
  23. package/dist/data-access/manage/subAgentTeamAgentRelations.d.ts +18 -18
  24. package/dist/data-access/manage/subAgents.d.ts +21 -21
  25. package/dist/data-access/manage/tools.d.ts +24 -24
  26. package/dist/data-access/manage/triggers.d.ts +2 -2
  27. package/dist/data-access/runtime/apiKeys.d.ts +16 -16
  28. package/dist/data-access/runtime/conversations.d.ts +31 -31
  29. package/dist/data-access/runtime/messages.d.ts +18 -18
  30. package/dist/data-access/runtime/tasks.d.ts +9 -9
  31. package/dist/data-access/runtime/workAppSlack.js +1 -0
  32. package/dist/db/manage/manage-schema.d.ts +449 -449
  33. package/dist/db/runtime/runtime-schema.d.ts +313 -296
  34. package/dist/db/runtime/runtime-schema.js +1 -0
  35. package/dist/index.d.ts +2 -1
  36. package/dist/index.js +2 -1
  37. package/dist/middleware/authz-meta.d.ts +15 -0
  38. package/dist/middleware/authz-meta.js +11 -0
  39. package/dist/middleware/create-protected-route.d.ts +30 -0
  40. package/dist/middleware/create-protected-route.js +20 -0
  41. package/dist/middleware/index.d.ts +5 -0
  42. package/dist/middleware/index.js +6 -0
  43. package/dist/middleware/inherited-auth.d.ts +43 -0
  44. package/dist/middleware/inherited-auth.js +50 -0
  45. package/dist/middleware/no-auth.d.ts +6 -0
  46. package/dist/middleware/no-auth.js +11 -0
  47. package/dist/types/utility.d.ts +6 -0
  48. package/dist/utils/in-process-fetch.d.ts +30 -0
  49. package/dist/utils/in-process-fetch.js +51 -0
  50. package/dist/utils/index.d.ts +2 -1
  51. package/dist/utils/index.js +2 -1
  52. package/dist/utils/slack-user-token.d.ts +11 -0
  53. package/dist/utils/slack-user-token.js +11 -3
  54. package/dist/validation/dolt-schemas.d.ts +1 -1
  55. package/dist/validation/drizzle-schema-helpers.d.ts +3 -3
  56. package/dist/validation/schemas.d.ts +1867 -1867
  57. package/drizzle/runtime/0014_odd_oracle.sql +1 -0
  58. package/drizzle/runtime/meta/0014_snapshot.json +3753 -0
  59. package/drizzle/runtime/meta/_journal.json +7 -0
  60. package/package.json +5 -1
@@ -0,0 +1,50 @@
1
+ import { registerAuthzMeta } from "./authz-meta.js";
2
+ import { createMiddleware } from "hono/factory";
3
+
4
+ //#region src/middleware/inherited-auth.ts
5
+ /**
6
+ * Documentation-only permission marker for routes whose authentication
7
+ * is already enforced by a parent `app.use()` in createApp.ts.
8
+ *
9
+ * This does NOT perform any auth check itself — it only registers
10
+ * x-authz metadata so the OpenAPI spec accurately reflects the
11
+ * auth requirement.
12
+ *
13
+ * Use this when the route lives under a path that already has
14
+ * middleware applied (e.g. `/manage/tenants/*` has `manageApiKeyOrSessionAuth`).
15
+ */
16
+ const inheritedAuth = (meta) => {
17
+ const mw = createMiddleware(async (_c, next) => {
18
+ await next();
19
+ });
20
+ registerAuthzMeta(mw, meta);
21
+ return mw;
22
+ };
23
+ /**
24
+ * Marker for routes under `/manage/tenants/*` whose auth is handled
25
+ * by `manageApiKeyOrSessionAuth()` in createApp.ts.
26
+ *
27
+ * No auth check runs at the route level — this is purely for OpenAPI documentation.
28
+ */
29
+ const inheritedManageTenantAuth = () => inheritedAuth({
30
+ resource: "organization",
31
+ permission: "member",
32
+ description: "Requires organization membership. Auth is enforced by the manageApiKeyOrSessionAuth middleware in createApp.ts."
33
+ });
34
+ /**
35
+ * Marker for routes under `/run/*` whose auth is handled
36
+ * by `runApiKeyAuth()` in createApp.ts.
37
+ *
38
+ * No auth check runs at the route level — this is purely for OpenAPI documentation.
39
+ */
40
+ const inheritedRunApiKeyAuth = () => inheritedAuth({ description: "Requires a valid API key (Bearer token). Auth is enforced by runApiKeyAuth middleware in createApp.ts." });
41
+ /**
42
+ * Marker for routes under `/work-apps/*` whose auth is handled
43
+ * by `workAppsAuth()` in createApp.ts.
44
+ *
45
+ * No auth check runs at the route level — this is purely for OpenAPI documentation.
46
+ */
47
+ const inheritedWorkAppsAuth = () => inheritedAuth({ description: "Requires work-apps authentication (OIDC token or Slack signature). Auth is enforced by workAppsAuth middleware in createApp.ts." });
48
+
49
+ //#endregion
50
+ export { inheritedAuth, inheritedManageTenantAuth, inheritedRunApiKeyAuth, inheritedWorkAppsAuth };
@@ -0,0 +1,6 @@
1
+ import * as hono3 from "hono";
2
+
3
+ //#region src/middleware/no-auth.d.ts
4
+ declare const noAuth: () => hono3.MiddlewareHandler<any, string, {}, Response>;
5
+ //#endregion
6
+ export { noAuth };
@@ -0,0 +1,11 @@
1
+ import { createMiddleware } from "hono/factory";
2
+
3
+ //#region src/middleware/no-auth.ts
4
+ const noAuth = () => {
5
+ return createMiddleware(async (_c, next) => {
6
+ await next();
7
+ });
8
+ };
9
+
10
+ //#endregion
11
+ export { noAuth };
@@ -243,6 +243,12 @@ interface BaseExecutionContext {
243
243
  type: 'user' | 'api_key';
244
244
  id: string;
245
245
  };
246
+ slack?: {
247
+ authorized: true;
248
+ authSource: 'channel' | 'workspace';
249
+ channelId?: string;
250
+ teamId: string;
251
+ };
246
252
  };
247
253
  }
248
254
  interface FullExecutionContext extends BaseExecutionContext {
@@ -0,0 +1,30 @@
1
+ //#region src/utils/in-process-fetch.d.ts
2
+ /**
3
+ * In-process fetch transport for internal self-calls.
4
+ *
5
+ * Routes requests through the Hono app's full middleware stack in-process
6
+ * rather than over the network. This guarantees same-instance execution,
7
+ * which is critical for features that rely on process-local state
8
+ * (e.g. the stream helper registry for real-time SSE streaming).
9
+ *
10
+ * Drop-in replacement for `fetch()` — same signature, same return type.
11
+ * Throws in production if the app hasn't been registered.
12
+ * Falls back to global `fetch` in test environments where the full app
13
+ * may not be initialized.
14
+ *
15
+ * **IMPORTANT**: Any code making internal A2A calls or self-referencing API
16
+ * calls within the agents service MUST use `getInProcessFetch()` instead of
17
+ * global `fetch`. Using regular `fetch` for same-service calls causes requests
18
+ * to leave the process and hit the load balancer, which may route them to a
19
+ * different instance — breaking features that depend on process-local state
20
+ * (e.g. stream helper registry, in-memory caches). This only manifests under
21
+ * load in multi-instance deployments and is extremely difficult to debug.
22
+ *
23
+ * @example
24
+ * import { getInProcessFetch } from '@inkeep/agents-core';
25
+ * const response = await getInProcessFetch()(url, init);
26
+ */
27
+ declare function registerAppFetch(fn: typeof fetch): void;
28
+ declare function getInProcessFetch(): typeof fetch;
29
+ //#endregion
30
+ export { getInProcessFetch, registerAppFetch };
@@ -0,0 +1,51 @@
1
+ import { getLogger } from "./logger.js";
2
+ import { trace } from "@opentelemetry/api";
3
+
4
+ //#region src/utils/in-process-fetch.ts
5
+ /**
6
+ * In-process fetch transport for internal self-calls.
7
+ *
8
+ * Routes requests through the Hono app's full middleware stack in-process
9
+ * rather than over the network. This guarantees same-instance execution,
10
+ * which is critical for features that rely on process-local state
11
+ * (e.g. the stream helper registry for real-time SSE streaming).
12
+ *
13
+ * Drop-in replacement for `fetch()` — same signature, same return type.
14
+ * Throws in production if the app hasn't been registered.
15
+ * Falls back to global `fetch` in test environments where the full app
16
+ * may not be initialized.
17
+ *
18
+ * **IMPORTANT**: Any code making internal A2A calls or self-referencing API
19
+ * calls within the agents service MUST use `getInProcessFetch()` instead of
20
+ * global `fetch`. Using regular `fetch` for same-service calls causes requests
21
+ * to leave the process and hit the load balancer, which may route them to a
22
+ * different instance — breaking features that depend on process-local state
23
+ * (e.g. stream helper registry, in-memory caches). This only manifests under
24
+ * load in multi-instance deployments and is extremely difficult to debug.
25
+ *
26
+ * @example
27
+ * import { getInProcessFetch } from '@inkeep/agents-core';
28
+ * const response = await getInProcessFetch()(url, init);
29
+ */
30
+ const logger = getLogger("in-process-fetch");
31
+ const GLOBAL_KEY = "__inkeep_appFetch";
32
+ function registerAppFetch(fn) {
33
+ globalThis[GLOBAL_KEY] = fn;
34
+ }
35
+ function getInProcessFetch() {
36
+ const appFetch = globalThis[GLOBAL_KEY];
37
+ if (!appFetch) {
38
+ if (process.env.ENVIRONMENT === "test" || process.env.ENVIRONMENT === "development") return fetch;
39
+ throw new Error("[in-process-fetch] App fetch not registered. Call registerAppFetch() during app initialization before handling requests.");
40
+ }
41
+ return ((input, init) => {
42
+ const url = typeof input === "string" ? input : input instanceof URL ? input.href : input.url;
43
+ const activeSpan = trace.getActiveSpan();
44
+ if (activeSpan) activeSpan.setAttribute("http.route.in_process", true);
45
+ logger.debug({ url }, "Routing request in-process");
46
+ return appFetch(input, init);
47
+ });
48
+ }
49
+
50
+ //#endregion
51
+ export { getInProcessFetch, registerAppFetch };
@@ -9,6 +9,7 @@ import { getCredentialStoreLookupKeyFromRetrievalParams } from "./credential-sto
9
9
  import { normalizeDateString, toISODateString } from "./date.js";
10
10
  import { CommonCreateErrorResponses, CommonDeleteErrorResponses, CommonGetErrorResponses, CommonUpdateErrorResponses, ERROR_DOCS_BASE_URL, ErrorCode, ErrorCodes, ErrorResponse, ProblemDetails, commonCreateErrorResponses, commonDeleteErrorResponses, commonGetErrorResponses, commonUpdateErrorResponses, createApiError, errorResponseSchema, errorSchemaFactory, handleApiError, problemDetailsSchema } from "./error.js";
11
11
  import { LLMMessage, formatMessagesForLLM, formatMessagesForLLMContext } from "./format-messages.js";
12
+ import { getInProcessFetch, registerAppFetch } from "./in-process-fetch.js";
12
13
  import { JsonTransformer } from "./JsonTransformer.js";
13
14
  import { parseEmbeddedJson } from "./json-parser.js";
14
15
  import { MockLanguageModel, createMockModel } from "./mock-provider.js";
@@ -26,4 +27,4 @@ import "./third-party-mcp-servers/index.js";
26
27
  import { flushTraces, getTracer, setSpanWithError, unwrapError } from "./tracer-factory.js";
27
28
  import { HashedHeaderValue, SignatureVerificationErrorCode, SignatureVerificationResult, TriggerAuthResult, hashAuthenticationHeaders, hashTriggerHeaderValue, validateTriggerHeaderValue, verifySignatureWithConfig, verifyTriggerAuth } from "./trigger-auth.js";
28
29
  import { _resetWaitUntilCache, getWaitUntil } from "./wait-until.js";
29
- export { ApiKeyGenerationResult, CommonCreateErrorResponses, CommonDeleteErrorResponses, CommonGetErrorResponses, CommonUpdateErrorResponses, CredentialScope, ERROR_DOCS_BASE_URL, ErrorCode, ErrorCodes, ErrorResponse, GenerateInternalServiceTokenParams, GenerateServiceTokenParams, HashedHeaderValue, InternalServiceId, InternalServiceTokenPayload, InternalServices, JsonTransformer, JwtVerifyResult, LLMMessage, LoggerFactoryConfig, McpClient, McpClientOptions, McpOAuthFlowResult, McpSSEConfig, McpServerConfig, McpStreamableHttpConfig, McpTokenExchangeResult, MockLanguageModel, ModelFactory, OAuthConfig, ParsedSSEResponse, PinoLogger, PinoLoggerConfig, ProblemDetails, ServiceTokenPayload, SignJwtOptions, SignSlackLinkTokenParams, SignSlackUserTokenParams, SignatureVerificationErrorCode, SignatureVerificationResult, SignedTempToken, SlackAccessTokenPayload, SlackAccessTokenPayloadSchema, SlackLinkTokenPayload, SlackLinkTokenPayloadSchema, TempTokenPayload, TriggerAuthResult, VerifyInternalServiceTokenResult, VerifyJwtOptions, VerifyServiceTokenResult, VerifySlackLinkTokenResult, VerifySlackUserTokenResult, _resetWaitUntilCache, buildComposioMCPUrl, commonCreateErrorResponses, commonDeleteErrorResponses, commonGetErrorResponses, commonUpdateErrorResponses, convertZodToJsonSchema, convertZodToJsonSchemaWithPreview, createApiError, createMockModel, decodeJwtPayload, detectAuthenticationRequired, errorResponseSchema, errorSchemaFactory, exchangeMcpAuthorizationCode, extractBearerToken, extractComposioServerId, extractPreviewFields, extractPublicId, fetchComposioServers, fetchSingleComposioServer, flushTraces, formatMessagesForLLM, formatMessagesForLLMContext, generateApiKey, generateId, generateInternalServiceToken, generateServiceToken, getComposioOAuthRedirectUrl, getComposioUserId, getConversationId, getCredentialStoreLookupKeyFromRetrievalParams, getJwtSecret, getLogger, getMetadataFromApiKey, getTracer, getWaitUntil, handleApiError, hasIssuer, hashApiKey, hashAuthenticationHeaders, hashTriggerHeaderValue, initiateMcpOAuthFlow, interpolateTemplate, isApiKeyExpired, isComposioMCPServerAuthenticated, isInternalServiceToken, isSlackUserToken, isThirdPartyMCPServerAuthenticated, isZodSchema, loggerFactory, maskApiKey, normalizeDateString, parseEmbeddedJson, parseSSEResponse, preview, problemDetailsSchema, setSpanWithError, signJwt, signSlackLinkToken, signSlackUserToken, signTempToken, toISODateString, unwrapError, validateApiKey, validateInternalServiceProjectAccess, validateInternalServiceTenantAccess, validateTargetAgent, validateTenantId, validateTriggerHeaderValue, verifyAuthorizationHeader, verifyInternalServiceAuthHeader, verifyInternalServiceToken, verifyJwt, verifyServiceToken, verifySignatureWithConfig, verifySlackLinkToken, verifySlackUserToken, verifyTempToken, verifyTriggerAuth };
30
+ export { ApiKeyGenerationResult, CommonCreateErrorResponses, CommonDeleteErrorResponses, CommonGetErrorResponses, CommonUpdateErrorResponses, CredentialScope, ERROR_DOCS_BASE_URL, ErrorCode, ErrorCodes, ErrorResponse, GenerateInternalServiceTokenParams, GenerateServiceTokenParams, HashedHeaderValue, InternalServiceId, InternalServiceTokenPayload, InternalServices, JsonTransformer, JwtVerifyResult, LLMMessage, LoggerFactoryConfig, McpClient, McpClientOptions, McpOAuthFlowResult, McpSSEConfig, McpServerConfig, McpStreamableHttpConfig, McpTokenExchangeResult, MockLanguageModel, ModelFactory, OAuthConfig, ParsedSSEResponse, PinoLogger, PinoLoggerConfig, ProblemDetails, ServiceTokenPayload, SignJwtOptions, SignSlackLinkTokenParams, SignSlackUserTokenParams, SignatureVerificationErrorCode, SignatureVerificationResult, SignedTempToken, SlackAccessTokenPayload, SlackAccessTokenPayloadSchema, SlackLinkTokenPayload, SlackLinkTokenPayloadSchema, TempTokenPayload, TriggerAuthResult, VerifyInternalServiceTokenResult, VerifyJwtOptions, VerifyServiceTokenResult, VerifySlackLinkTokenResult, VerifySlackUserTokenResult, _resetWaitUntilCache, buildComposioMCPUrl, commonCreateErrorResponses, commonDeleteErrorResponses, commonGetErrorResponses, commonUpdateErrorResponses, convertZodToJsonSchema, convertZodToJsonSchemaWithPreview, createApiError, createMockModel, decodeJwtPayload, detectAuthenticationRequired, errorResponseSchema, errorSchemaFactory, exchangeMcpAuthorizationCode, extractBearerToken, extractComposioServerId, extractPreviewFields, extractPublicId, fetchComposioServers, fetchSingleComposioServer, flushTraces, formatMessagesForLLM, formatMessagesForLLMContext, generateApiKey, generateId, generateInternalServiceToken, generateServiceToken, getComposioOAuthRedirectUrl, getComposioUserId, getConversationId, getCredentialStoreLookupKeyFromRetrievalParams, getInProcessFetch, getJwtSecret, getLogger, getMetadataFromApiKey, getTracer, getWaitUntil, handleApiError, hasIssuer, hashApiKey, hashAuthenticationHeaders, hashTriggerHeaderValue, initiateMcpOAuthFlow, interpolateTemplate, isApiKeyExpired, isComposioMCPServerAuthenticated, isInternalServiceToken, isSlackUserToken, isThirdPartyMCPServerAuthenticated, isZodSchema, loggerFactory, maskApiKey, normalizeDateString, parseEmbeddedJson, parseSSEResponse, preview, problemDetailsSchema, registerAppFetch, setSpanWithError, signJwt, signSlackLinkToken, signSlackUserToken, signTempToken, toISODateString, unwrapError, validateApiKey, validateInternalServiceProjectAccess, validateInternalServiceTenantAccess, validateTargetAgent, validateTenantId, validateTriggerHeaderValue, verifyAuthorizationHeader, verifyInternalServiceAuthHeader, verifyInternalServiceToken, verifyJwt, verifyServiceToken, verifySignatureWithConfig, verifySlackLinkToken, verifySlackUserToken, verifyTempToken, verifyTriggerAuth };
@@ -9,6 +9,7 @@ import { extractPublicId, generateApiKey, getMetadataFromApiKey, hashApiKey, isA
9
9
  import { normalizeDateString, toISODateString } from "./date.js";
10
10
  import { ERROR_DOCS_BASE_URL, ErrorCode, commonCreateErrorResponses, commonDeleteErrorResponses, commonGetErrorResponses, commonUpdateErrorResponses, createApiError, errorResponseSchema, errorSchemaFactory, handleApiError, problemDetailsSchema } from "./error.js";
11
11
  import { formatMessagesForLLM, formatMessagesForLLMContext } from "./format-messages.js";
12
+ import { getInProcessFetch, registerAppFetch } from "./in-process-fetch.js";
12
13
  import { JsonTransformer } from "./JsonTransformer.js";
13
14
  import { parseEmbeddedJson } from "./json-parser.js";
14
15
  import { McpClient } from "./mcp-client.js";
@@ -27,4 +28,4 @@ import { flushTraces, getTracer, setSpanWithError, unwrapError } from "./tracer-
27
28
  import { hashAuthenticationHeaders, hashTriggerHeaderValue, validateTriggerHeaderValue, verifySignatureWithConfig, verifyTriggerAuth } from "./trigger-auth.js";
28
29
  import { _resetWaitUntilCache, getWaitUntil } from "./wait-until.js";
29
30
 
30
- export { ERROR_DOCS_BASE_URL, ErrorCode, InternalServices, JsonTransformer, McpClient, MockLanguageModel, ModelFactory, PinoLogger, SlackAccessTokenPayloadSchema, SlackLinkTokenPayloadSchema, _resetWaitUntilCache, buildComposioMCPUrl, commonCreateErrorResponses, commonDeleteErrorResponses, commonGetErrorResponses, commonUpdateErrorResponses, convertZodToJsonSchema, convertZodToJsonSchemaWithPreview, createApiError, createMockModel, decodeJwtPayload, detectAuthenticationRequired, errorResponseSchema, errorSchemaFactory, exchangeMcpAuthorizationCode, extractBearerToken, extractComposioServerId, extractPreviewFields, extractPublicId, fetchComposioServers, fetchSingleComposioServer, flushTraces, formatMessagesForLLM, formatMessagesForLLMContext, generateApiKey, generateId, generateInternalServiceToken, generateServiceToken, getComposioOAuthRedirectUrl, getComposioUserId, getConversationId, getCredentialStoreLookupKeyFromRetrievalParams, getJwtSecret, getLogger, getMetadataFromApiKey, getTracer, getWaitUntil, handleApiError, hasIssuer, hashApiKey, hashAuthenticationHeaders, hashTriggerHeaderValue, initiateMcpOAuthFlow, interpolateTemplate, isApiKeyExpired, isComposioMCPServerAuthenticated, isInternalServiceToken, isSlackUserToken, isThirdPartyMCPServerAuthenticated, isZodSchema, loggerFactory, maskApiKey, normalizeDateString, parseEmbeddedJson, parseSSEResponse, preview, problemDetailsSchema, setSpanWithError, signJwt, signSlackLinkToken, signSlackUserToken, signTempToken, toISODateString, unwrapError, validateApiKey, validateInternalServiceProjectAccess, validateInternalServiceTenantAccess, validateTargetAgent, validateTenantId, validateTriggerHeaderValue, verifyAuthorizationHeader, verifyInternalServiceAuthHeader, verifyInternalServiceToken, verifyJwt, verifyServiceToken, verifySignatureWithConfig, verifySlackLinkToken, verifySlackUserToken, verifyTempToken, verifyTriggerAuth };
31
+ export { ERROR_DOCS_BASE_URL, ErrorCode, InternalServices, JsonTransformer, McpClient, MockLanguageModel, ModelFactory, PinoLogger, SlackAccessTokenPayloadSchema, SlackLinkTokenPayloadSchema, _resetWaitUntilCache, buildComposioMCPUrl, commonCreateErrorResponses, commonDeleteErrorResponses, commonGetErrorResponses, commonUpdateErrorResponses, convertZodToJsonSchema, convertZodToJsonSchemaWithPreview, createApiError, createMockModel, decodeJwtPayload, detectAuthenticationRequired, errorResponseSchema, errorSchemaFactory, exchangeMcpAuthorizationCode, extractBearerToken, extractComposioServerId, extractPreviewFields, extractPublicId, fetchComposioServers, fetchSingleComposioServer, flushTraces, formatMessagesForLLM, formatMessagesForLLMContext, generateApiKey, generateId, generateInternalServiceToken, generateServiceToken, getComposioOAuthRedirectUrl, getComposioUserId, getConversationId, getCredentialStoreLookupKeyFromRetrievalParams, getInProcessFetch, getJwtSecret, getLogger, getMetadataFromApiKey, getTracer, getWaitUntil, handleApiError, hasIssuer, hashApiKey, hashAuthenticationHeaders, hashTriggerHeaderValue, initiateMcpOAuthFlow, interpolateTemplate, isApiKeyExpired, isComposioMCPServerAuthenticated, isInternalServiceToken, isSlackUserToken, isThirdPartyMCPServerAuthenticated, isZodSchema, loggerFactory, maskApiKey, normalizeDateString, parseEmbeddedJson, parseSSEResponse, preview, problemDetailsSchema, registerAppFetch, setSpanWithError, signJwt, signSlackLinkToken, signSlackUserToken, signTempToken, toISODateString, unwrapError, validateApiKey, validateInternalServiceProjectAccess, validateInternalServiceTenantAccess, validateTargetAgent, validateTenantId, validateTriggerHeaderValue, verifyAuthorizationHeader, verifyInternalServiceAuthHeader, verifyInternalServiceToken, verifyJwt, verifyServiceToken, verifySignatureWithConfig, verifySlackLinkToken, verifySlackUserToken, verifyTempToken, verifyTriggerAuth };
@@ -24,6 +24,13 @@ declare const SlackAccessTokenPayloadSchema: z.ZodObject<{
24
24
  userId: z.ZodString;
25
25
  enterpriseId: z.ZodOptional<z.ZodString>;
26
26
  email: z.ZodOptional<z.ZodString>;
27
+ authorized: z.ZodOptional<z.ZodBoolean>;
28
+ authSource: z.ZodOptional<z.ZodEnum<{
29
+ channel: "channel";
30
+ workspace: "workspace";
31
+ }>>;
32
+ channelId: z.ZodOptional<z.ZodString>;
33
+ authorizedProjectId: z.ZodOptional<z.ZodString>;
27
34
  }, z.core.$strip>;
28
35
  }, z.core.$strip>;
29
36
  type SlackAccessTokenPayload = z.infer<typeof SlackAccessTokenPayloadSchema>;
@@ -37,6 +44,10 @@ interface SignSlackUserTokenParams {
37
44
  slackUserId: string;
38
45
  slackEnterpriseId?: string;
39
46
  slackEmail?: string;
47
+ slackAuthorized?: boolean;
48
+ slackAuthSource?: 'channel' | 'workspace';
49
+ slackChannelId?: string;
50
+ slackAuthorizedProjectId?: string;
40
51
  }
41
52
  /**
42
53
  * Result of verifying a Slack user token
@@ -27,8 +27,12 @@ const SlackAccessTokenPayloadSchema = z.object({
27
27
  teamId: z.string().min(1),
28
28
  userId: z.string().min(1),
29
29
  enterpriseId: z.string().min(1).optional(),
30
- email: z.string().email().optional()
31
- })
30
+ email: z.string().email().optional(),
31
+ authorized: z.boolean().optional(),
32
+ authSource: z.enum(["channel", "workspace"]).optional(),
33
+ channelId: z.string().min(1).optional(),
34
+ authorizedProjectId: z.string().min(1).optional()
35
+ }).refine((data) => !data.authorized || data.authorizedProjectId && data.authSource, { message: "When authorized is true, authorizedProjectId and authSource are required" })
32
36
  });
33
37
  /**
34
38
  * Sign a Slack user JWT token for calling Manage/Run APIs.
@@ -53,7 +57,11 @@ async function signSlackUserToken(params) {
53
57
  teamId: params.slackTeamId,
54
58
  userId: params.slackUserId,
55
59
  ...params.slackEnterpriseId && { enterpriseId: params.slackEnterpriseId },
56
- ...params.slackEmail && { email: params.slackEmail }
60
+ ...params.slackEmail && { email: params.slackEmail },
61
+ ...params.slackAuthorized != null && { authorized: params.slackAuthorized },
62
+ ...params.slackAuthSource && { authSource: params.slackAuthSource },
63
+ ...params.slackChannelId && { channelId: params.slackChannelId },
64
+ ...params.slackAuthorizedProjectId && { authorizedProjectId: params.slackAuthorizedProjectId }
57
65
  }
58
66
  }
59
67
  });
@@ -32,8 +32,8 @@ declare const BranchNameParamsSchema: z.ZodObject<{
32
32
  }, z.core.$strip>;
33
33
  declare const ResolvedRefSchema: z.ZodObject<{
34
34
  type: z.ZodEnum<{
35
- commit: "commit";
36
35
  tag: "tag";
36
+ commit: "commit";
37
37
  branch: "branch";
38
38
  }>;
39
39
  name: z.ZodString;
@@ -1,10 +1,10 @@
1
1
  import { z } from "@hono/zod-openapi";
2
- import * as drizzle_zod0 from "drizzle-zod";
2
+ import * as drizzle_zod361 from "drizzle-zod";
3
3
  import { AnySQLiteTable } from "drizzle-orm/sqlite-core";
4
4
 
5
5
  //#region src/validation/drizzle-schema-helpers.d.ts
6
- declare function createSelectSchemaWithModifiers<T extends AnySQLiteTable>(table: T, overrides?: Partial<Record<keyof T['_']['columns'], (schema: z.ZodTypeAny) => z.ZodTypeAny>>): drizzle_zod0.BuildSchema<"select", T["_"]["columns"], drizzle_zod0.BuildRefine<T["_"]["columns"], undefined>, undefined>;
7
- declare function createInsertSchemaWithModifiers<T extends AnySQLiteTable>(table: T, overrides?: Partial<Record<keyof T['_']['columns'], (schema: z.ZodTypeAny) => z.ZodTypeAny>>): drizzle_zod0.BuildSchema<"insert", T["_"]["columns"], drizzle_zod0.BuildRefine<Pick<T["_"]["columns"], keyof T["$inferInsert"]>, undefined>, undefined>;
6
+ declare function createSelectSchemaWithModifiers<T extends AnySQLiteTable>(table: T, overrides?: Partial<Record<keyof T['_']['columns'], (schema: z.ZodTypeAny) => z.ZodTypeAny>>): drizzle_zod361.BuildSchema<"select", T["_"]["columns"], drizzle_zod361.BuildRefine<T["_"]["columns"], undefined>, undefined>;
7
+ declare function createInsertSchemaWithModifiers<T extends AnySQLiteTable>(table: T, overrides?: Partial<Record<keyof T['_']['columns'], (schema: z.ZodTypeAny) => z.ZodTypeAny>>): drizzle_zod361.BuildSchema<"insert", T["_"]["columns"], drizzle_zod361.BuildRefine<Pick<T["_"]["columns"], keyof T["$inferInsert"]>, undefined>, undefined>;
8
8
  declare const createSelectSchema: typeof createSelectSchemaWithModifiers;
9
9
  declare const createInsertSchema: typeof createInsertSchemaWithModifiers;
10
10
  /**