@inkeep/agents-core 0.0.0-dev-20260220231727 → 0.0.0-dev-20260221013025

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 (42) hide show
  1. package/dist/auth/auth-schema.d.ts +139 -105
  2. package/dist/auth/auth-schema.js +3 -1
  3. package/dist/auth/auth-validation-schemas.d.ts +216 -148
  4. package/dist/auth/auth.d.ts +90 -58
  5. package/dist/auth/auth.js +22 -8
  6. package/dist/auth/permissions.d.ts +13 -13
  7. package/dist/data-access/index.d.ts +3 -3
  8. package/dist/data-access/index.js +3 -3
  9. package/dist/data-access/manage/agents.d.ts +42 -42
  10. package/dist/data-access/manage/artifactComponents.d.ts +12 -12
  11. package/dist/data-access/manage/contextConfigs.d.ts +12 -12
  12. package/dist/data-access/manage/dataComponents.d.ts +6 -6
  13. package/dist/data-access/manage/functionTools.d.ts +18 -18
  14. package/dist/data-access/manage/scope-helpers.d.ts +5 -5
  15. package/dist/data-access/manage/skills.d.ts +14 -14
  16. package/dist/data-access/manage/subAgentExternalAgentRelations.d.ts +24 -24
  17. package/dist/data-access/manage/subAgentRelations.d.ts +28 -28
  18. package/dist/data-access/manage/subAgentTeamAgentRelations.d.ts +18 -18
  19. package/dist/data-access/manage/subAgents.d.ts +18 -18
  20. package/dist/data-access/manage/tools.d.ts +24 -24
  21. package/dist/data-access/manage/triggers.d.ts +2 -2
  22. package/dist/data-access/runtime/apiKeys.d.ts +16 -16
  23. package/dist/data-access/runtime/conversations.d.ts +24 -24
  24. package/dist/data-access/runtime/messages.d.ts +9 -9
  25. package/dist/data-access/runtime/organizations.d.ts +11 -1
  26. package/dist/data-access/runtime/organizations.js +27 -1
  27. package/dist/data-access/runtime/tasks.d.ts +7 -7
  28. package/dist/data-access/runtime/users.d.ts +9 -1
  29. package/dist/data-access/runtime/users.js +20 -3
  30. package/dist/data-access/runtime/workAppSlack.d.ts +1 -1
  31. package/dist/db/manage/manage-schema.d.ts +449 -449
  32. package/dist/db/runtime/runtime-schema.d.ts +306 -289
  33. package/dist/db/runtime/runtime-schema.js +1 -0
  34. package/dist/index.d.ts +3 -3
  35. package/dist/index.js +3 -3
  36. package/dist/middleware/no-auth.d.ts +2 -2
  37. package/dist/validation/drizzle-schema-helpers.d.ts +3 -3
  38. package/dist/validation/schemas.d.ts +1811 -1811
  39. package/drizzle/runtime/0015_soft_payback.sql +3 -0
  40. package/drizzle/runtime/meta/0015_snapshot.json +3772 -0
  41. package/drizzle/runtime/meta/_journal.json +7 -0
  42. package/package.json +1 -1
@@ -57,5 +57,15 @@ interface UserProviderInfo {
57
57
  * Returns which providers each user has linked (e.g., 'credential', 'google', 'auth0').
58
58
  */
59
59
  declare const getUserProvidersFromDb: (db: AgentsRunDatabaseClient) => (userIds: string[]) => Promise<UserProviderInfo[]>;
60
+ /**
61
+ * Create an invitation directly in db
62
+ * Used when shouldAllowJoinFromWorkspace is enabled for a work_app_slack_workspaces
63
+ */
64
+ declare const createInvitationInDb: (db: AgentsRunDatabaseClient) => (data: {
65
+ organizationId: string;
66
+ email: string;
67
+ }) => Promise<{
68
+ id: string;
69
+ }>;
60
70
  //#endregion
61
- export { UserProviderInfo, addUserToOrganization, getPendingInvitationsByEmail, getUserOrganizationsFromDb, getUserProvidersFromDb, upsertOrganization };
71
+ export { UserProviderInfo, addUserToOrganization, createInvitationInDb, getPendingInvitationsByEmail, getUserOrganizationsFromDb, getUserProvidersFromDb, upsertOrganization };
@@ -1,5 +1,6 @@
1
1
  import { account, invitation, member, organization } from "../../auth/auth-schema.js";
2
2
  import { and, desc, eq, inArray, or } from "drizzle-orm";
3
+ import { generateId } from "better-auth";
3
4
 
4
5
  //#region src/data-access/runtime/organizations.ts
5
6
  /**
@@ -91,6 +92,31 @@ const getUserProvidersFromDb = (db) => async (userIds) => {
91
92
  providers: providerMap.get(userId) || []
92
93
  }));
93
94
  };
95
+ /**
96
+ * Create an invitation directly in db
97
+ * Used when shouldAllowJoinFromWorkspace is enabled for a work_app_slack_workspaces
98
+ */
99
+ const createInvitationInDb = (db) => async (data) => {
100
+ const orgSettings = (await db.select({
101
+ serviceAccountUserId: organization.serviceAccountUserId,
102
+ preferredAuthMethod: organization.preferredAuthMethod
103
+ }).from(organization).where(eq(organization.id, data.organizationId)).limit(1))[0];
104
+ if (!orgSettings?.serviceAccountUserId) throw new Error(`Organization ${data.organizationId} does not have a serviceAccountUserId configured`);
105
+ if (!orgSettings?.preferredAuthMethod) throw new Error(`Organization ${data.organizationId} does not have a preferredAuthMethod configured`);
106
+ const inviteId = generateId();
107
+ const expiresAt = new Date(Date.now() + 3600 * 1e3);
108
+ await db.insert(invitation).values({
109
+ id: inviteId,
110
+ organizationId: data.organizationId,
111
+ email: data.email,
112
+ role: "member",
113
+ status: "pending",
114
+ expiresAt,
115
+ inviterId: orgSettings.serviceAccountUserId,
116
+ authMethod: orgSettings.preferredAuthMethod
117
+ });
118
+ return { id: inviteId };
119
+ };
94
120
 
95
121
  //#endregion
96
- export { addUserToOrganization, getPendingInvitationsByEmail, getUserOrganizationsFromDb, getUserProvidersFromDb, upsertOrganization };
122
+ export { addUserToOrganization, createInvitationInDb, getPendingInvitationsByEmail, getUserOrganizationsFromDb, getUserProvidersFromDb, upsertOrganization };
@@ -7,20 +7,20 @@ import { TaskInsert, TaskSelect } from "../../types/entities.js";
7
7
  //#region src/data-access/runtime/tasks.d.ts
8
8
  declare const createTask: (db: AgentsRunDatabaseClient) => (params: TaskInsert) => Promise<{
9
9
  id: string;
10
+ tenantId: string;
11
+ projectId: string;
12
+ agentId: string;
10
13
  createdAt: string;
11
14
  updatedAt: string;
15
+ metadata: TaskMetadataConfig | null;
16
+ subAgentId: string;
17
+ status: string;
18
+ contextId: string;
12
19
  ref: {
13
20
  type: "commit" | "tag" | "branch";
14
21
  name: string;
15
22
  hash: string;
16
23
  } | null;
17
- metadata: TaskMetadataConfig | null;
18
- status: string;
19
- agentId: string;
20
- projectId: string;
21
- tenantId: string;
22
- subAgentId: string;
23
- contextId: string;
24
24
  }>;
25
25
  declare const getTask: (db: AgentsRunDatabaseClient) => (params: {
26
26
  id: string;
@@ -15,5 +15,13 @@ declare const getUserById: (db: AgentsRunDatabaseClient) => (userId: string) =>
15
15
  * Get user by email
16
16
  */
17
17
  declare const getUserByEmail: (db: AgentsRunDatabaseClient) => (email: string) => Promise<User | null>;
18
+ /**
19
+ * Get organization member by email
20
+ * Returns the user if they are a member of the specified organization
21
+ */
22
+ declare const getOrganizationMemberByEmail: (db: AgentsRunDatabaseClient) => (organizationId: string, email: string) => Promise<(User & {
23
+ role: string;
24
+ memberId: string;
25
+ }) | null>;
18
26
  //#endregion
19
- export { getUserByEmail, getUserById };
27
+ export { getOrganizationMemberByEmail, getUserByEmail, getUserById };
@@ -1,5 +1,5 @@
1
- import { user } from "../../auth/auth-schema.js";
2
- import { eq } from "drizzle-orm";
1
+ import { member, user } from "../../auth/auth-schema.js";
2
+ import { and, eq } from "drizzle-orm";
3
3
 
4
4
  //#region src/data-access/runtime/users.ts
5
5
  /**
@@ -18,6 +18,23 @@ const getUserById = (db) => async (userId) => {
18
18
  const getUserByEmail = (db) => async (email) => {
19
19
  return (await db.select().from(user).where(eq(user.email, email)).limit(1))[0] || null;
20
20
  };
21
+ /**
22
+ * Get organization member by email
23
+ * Returns the user if they are a member of the specified organization
24
+ */
25
+ const getOrganizationMemberByEmail = (db) => async (organizationId, email) => {
26
+ return (await db.select({
27
+ id: user.id,
28
+ name: user.name,
29
+ email: user.email,
30
+ emailVerified: user.emailVerified,
31
+ image: user.image,
32
+ createdAt: user.createdAt,
33
+ updatedAt: user.updatedAt,
34
+ role: member.role,
35
+ memberId: member.id
36
+ }).from(member).innerJoin(user, eq(member.userId, user.id)).where(and(eq(member.organizationId, organizationId), eq(user.email, email))).limit(1))[0] || null;
37
+ };
21
38
 
22
39
  //#endregion
23
- export { getUserByEmail, getUserById };
40
+ export { getOrganizationMemberByEmail, getUserByEmail, getUserById };
@@ -25,7 +25,7 @@ declare const findWorkAppSlackWorkspaceBySlackTeamId: (db: AgentsRunDatabaseClie
25
25
  */
26
26
  declare const findWorkAppSlackWorkspaceByNangoConnectionId: (db: AgentsRunDatabaseClient) => (nangoConnectionId: string) => Promise<WorkAppSlackWorkspaceSelect | null>;
27
27
  declare const listWorkAppSlackWorkspacesByTenant: (db: AgentsRunDatabaseClient) => (tenantId: string) => Promise<WorkAppSlackWorkspaceSelect[]>;
28
- declare const updateWorkAppSlackWorkspace: (db: AgentsRunDatabaseClient) => (id: string, data: Partial<Pick<WorkAppSlackWorkspaceInsert, "status" | "slackTeamName">>) => Promise<WorkAppSlackWorkspaceSelect | null>;
28
+ declare const updateWorkAppSlackWorkspace: (db: AgentsRunDatabaseClient) => (id: string, data: Partial<Pick<WorkAppSlackWorkspaceInsert, "status" | "slackTeamName" | "shouldAllowJoinFromWorkspace">>) => Promise<WorkAppSlackWorkspaceSelect | null>;
29
29
  declare const deleteWorkAppSlackWorkspace: (db: AgentsRunDatabaseClient) => (id: string) => Promise<boolean>;
30
30
  declare const deleteWorkAppSlackWorkspaceByNangoConnectionId: (db: AgentsRunDatabaseClient) => (nangoConnectionId: string) => Promise<boolean>;
31
31
  declare const findWorkAppSlackUserMapping: (db: AgentsRunDatabaseClient) => (tenantId: string, slackUserId: string, slackTeamId: string, clientId?: string) => Promise<WorkAppSlackUserMappingSelect | null>;