@inkeep/agents-sdk 0.1.0 → 0.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/LICENSE.md +22 -17
  2. package/SUPPLEMENTAL_TERMS.md +40 -0
  3. package/dist/index.cjs +2863 -0
  4. package/dist/index.d.cts +919 -0
  5. package/dist/index.d.ts +919 -11
  6. package/dist/index.js +2840 -10
  7. package/package.json +24 -18
  8. package/dist/__tests__/utils/testTenant.d.ts +0 -7
  9. package/dist/__tests__/utils/testTenant.d.ts.map +0 -1
  10. package/dist/__tests__/utils/testTenant.js +0 -10
  11. package/dist/__tests__/utils/testTenant.js.map +0 -1
  12. package/dist/agent.d.ts +0 -47
  13. package/dist/agent.d.ts.map +0 -1
  14. package/dist/agent.js +0 -601
  15. package/dist/agent.js.map +0 -1
  16. package/dist/artifact-component.d.ts +0 -27
  17. package/dist/artifact-component.d.ts.map +0 -1
  18. package/dist/artifact-component.js +0 -117
  19. package/dist/artifact-component.js.map +0 -1
  20. package/dist/builders.d.ts +0 -211
  21. package/dist/builders.d.ts.map +0 -1
  22. package/dist/builders.js +0 -244
  23. package/dist/builders.js.map +0 -1
  24. package/dist/data-component.d.ts +0 -25
  25. package/dist/data-component.d.ts.map +0 -1
  26. package/dist/data-component.js +0 -113
  27. package/dist/data-component.js.map +0 -1
  28. package/dist/environment-settings.d.ts +0 -28
  29. package/dist/environment-settings.d.ts.map +0 -1
  30. package/dist/environment-settings.js +0 -78
  31. package/dist/environment-settings.js.map +0 -1
  32. package/dist/externalAgent.d.ts +0 -58
  33. package/dist/externalAgent.d.ts.map +0 -1
  34. package/dist/externalAgent.js +0 -161
  35. package/dist/externalAgent.js.map +0 -1
  36. package/dist/graph.d.ts +0 -200
  37. package/dist/graph.d.ts.map +0 -1
  38. package/dist/graph.js +0 -1294
  39. package/dist/graph.js.map +0 -1
  40. package/dist/graphFullClient.d.ts +0 -22
  41. package/dist/graphFullClient.d.ts.map +0 -1
  42. package/dist/graphFullClient.js +0 -189
  43. package/dist/graphFullClient.js.map +0 -1
  44. package/dist/hosted-tool-manager.d.ts +0 -28
  45. package/dist/hosted-tool-manager.d.ts.map +0 -1
  46. package/dist/hosted-tool-manager.js +0 -256
  47. package/dist/hosted-tool-manager.js.map +0 -1
  48. package/dist/index.d.ts.map +0 -1
  49. package/dist/index.js.map +0 -1
  50. package/dist/ipc-hosted-tool-manager.d.ts +0 -51
  51. package/dist/ipc-hosted-tool-manager.d.ts.map +0 -1
  52. package/dist/ipc-hosted-tool-manager.js +0 -409
  53. package/dist/ipc-hosted-tool-manager.js.map +0 -1
  54. package/dist/module-hosted-tool-manager.d.ts +0 -37
  55. package/dist/module-hosted-tool-manager.d.ts.map +0 -1
  56. package/dist/module-hosted-tool-manager.js +0 -375
  57. package/dist/module-hosted-tool-manager.js.map +0 -1
  58. package/dist/runner.d.ts +0 -38
  59. package/dist/runner.d.ts.map +0 -1
  60. package/dist/runner.js +0 -164
  61. package/dist/runner.js.map +0 -1
  62. package/dist/tool.d.ts +0 -29
  63. package/dist/tool.d.ts.map +0 -1
  64. package/dist/tool.js +0 -122
  65. package/dist/tool.js.map +0 -1
  66. package/dist/types.d.ts +0 -285
  67. package/dist/types.d.ts.map +0 -1
  68. package/dist/types.js +0 -37
  69. package/dist/types.js.map +0 -1
@@ -1,113 +0,0 @@
1
- import { generateIdFromName } from '@inkeep/agents-core';
2
- import { getLogger } from '@inkeep/agents-core';
3
- const logger = getLogger('dataComponent');
4
- export class DataComponent {
5
- config;
6
- baseURL;
7
- tenantId;
8
- projectId;
9
- initialized = false;
10
- id;
11
- constructor(config) {
12
- this.id = generateIdFromName(config.name);
13
- this.config = {
14
- ...config,
15
- id: this.id,
16
- tenantId: config.tenantId || 'default',
17
- projectId: config.projectId || 'default',
18
- };
19
- this.baseURL = process.env.INKEEP_API_URL || 'http://localhost:3002';
20
- this.tenantId = this.config.tenantId;
21
- this.projectId = this.config.projectId;
22
- logger.info({
23
- dataComponentId: this.getId(),
24
- dataComponentName: config.name,
25
- }, 'DataComponent constructor initialized');
26
- }
27
- // Compute ID from name using same slug transformation as agents
28
- getId() {
29
- return this.id;
30
- }
31
- getName() {
32
- return this.config.name;
33
- }
34
- getDescription() {
35
- return this.config.description;
36
- }
37
- getProps() {
38
- return this.config.props;
39
- }
40
- // Public method to ensure data component exists in backend (with upsert behavior)
41
- async init() {
42
- if (this.initialized)
43
- return;
44
- try {
45
- // Always attempt to upsert the data component
46
- await this.upsertDataComponent();
47
- logger.info({
48
- dataComponentId: this.getId(),
49
- }, 'DataComponent initialized successfully');
50
- this.initialized = true;
51
- }
52
- catch (error) {
53
- logger.error({
54
- dataComponentId: this.getId(),
55
- error: error instanceof Error ? error.message : 'Unknown error',
56
- }, 'Failed to initialize data component');
57
- throw error;
58
- }
59
- }
60
- // Private method to upsert data component (create or update)
61
- async upsertDataComponent() {
62
- const dataComponentData = {
63
- id: this.getId(),
64
- name: this.config.name,
65
- description: this.config.description,
66
- props: this.config.props,
67
- };
68
- logger.info({ dataComponentData }, 'dataComponentData for create/update');
69
- // First try to update (in case data component exists)
70
- const updateResponse = await fetch(`${this.baseURL}/tenants/${this.tenantId}/crud/data-components/${this.getId()}`, {
71
- method: 'PUT',
72
- headers: {
73
- 'Content-Type': 'application/json',
74
- },
75
- body: JSON.stringify(dataComponentData),
76
- });
77
- logger.info({
78
- status: updateResponse.status,
79
- dataComponentId: this.getId(),
80
- }, 'data component updateResponse');
81
- if (updateResponse.ok) {
82
- logger.info({
83
- dataComponentId: this.getId(),
84
- }, 'DataComponent updated successfully');
85
- return;
86
- }
87
- // If update failed with 404, data component doesn't exist - create it
88
- if (updateResponse.status === 404) {
89
- logger.info({
90
- dataComponentId: this.getId(),
91
- }, 'DataComponent not found, creating new data component');
92
- const createResponse = await fetch(`${this.baseURL}/tenants/${this.tenantId}/crud/data-components`, {
93
- method: 'POST',
94
- headers: {
95
- 'Content-Type': 'application/json',
96
- },
97
- body: JSON.stringify(dataComponentData),
98
- });
99
- if (!createResponse.ok) {
100
- const errorText = await createResponse.text().catch(() => 'Unknown error');
101
- throw new Error(`Failed to create data component: ${createResponse.status} ${createResponse.statusText} - ${errorText}`);
102
- }
103
- logger.info({
104
- dataComponentId: this.getId(),
105
- }, 'DataComponent created successfully');
106
- return;
107
- }
108
- // If we get here, the update failed for some other reason
109
- const errorText = await updateResponse.text().catch(() => 'Unknown error');
110
- throw new Error(`Failed to update data component: ${updateResponse.status} ${updateResponse.statusText} - ${errorText}`);
111
- }
112
- }
113
- //# sourceMappingURL=data-component.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"data-component.js","sourceRoot":"","sources":["../src/data-component.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- import type { CredentialReferenceApiInsert } from '@inkeep/agents-core';
2
- interface EnvironmentSettingsConfig {
3
- credentials?: {
4
- [settingId: string]: CredentialReferenceApiInsert;
5
- };
6
- }
7
- export type ExtractSettingKeys<T> = T extends {
8
- credentials: infer B;
9
- } ? B extends Record<string, any> ? keyof B : never : never;
10
- /**
11
- * Get all registered setting keys across all environments
12
- */
13
- export declare function getAllEnvironmentSettingKeys(): string[];
14
- /**
15
- * Create a setting helper with TypeScript autocomplete
16
- * Automatically infers environment names from object keys
17
- */
18
- export declare function createEnvironmentSettings<T extends Record<string, EnvironmentSettingsConfig>>(environments: T): {
19
- getEnvironmentSetting: <K extends string>(key: K) => Promise<CredentialReferenceApiInsert>;
20
- getEnvironmentSettingKeys: () => string[];
21
- hasEnvironmentSetting: (key: string) => key is string;
22
- };
23
- /**
24
- * Create type-safe environment configurations with setting registration
25
- */
26
- export declare function registerEnvironmentSettings<T extends EnvironmentSettingsConfig>(config: T): T;
27
- export {};
28
- //# sourceMappingURL=environment-settings.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"environment-settings.d.ts","sourceRoot":"","sources":["../src/environment-settings.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAExE,UAAU,yBAAyB;IACjC,WAAW,CAAC,EAAE;QACZ,CAAC,SAAS,EAAE,MAAM,GAAG,4BAA4B,CAAC;KACnD,CAAC;CACH;AAGD,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,WAAW,EAAE,MAAM,CAAC,CAAA;CAAE,GAClE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC3B,MAAM,CAAC,GACP,KAAK,GACP,KAAK,CAAC;AAYV;;GAEG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,EAAE,CAEvD;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,EAC3F,YAAY,EAAE,CAAC;4BAWiB,CAAC,sBACxB,CAAC,KACL,OAAO,CAAC,4BAA4B,CAAC;qCA6BT,MAAM,EAAE;iCAeV,MAAM,KAAG,GAAG,UAAe;EAa3D;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,yBAAyB,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAQ7F"}
@@ -1,78 +0,0 @@
1
- // Environment settings system for environment-agnostic entities management
2
- // Global registry to track all setting keys across environments
3
- const globalSettingKeys = new Set();
4
- /**
5
- * Register setting keys globally for autocomplete and runtime access
6
- */
7
- function registerSettingKeys(settingIds) {
8
- settingIds.forEach((id) => globalSettingKeys.add(id));
9
- }
10
- /**
11
- * Get all registered setting keys across all environments
12
- */
13
- export function getAllEnvironmentSettingKeys() {
14
- return Array.from(globalSettingKeys);
15
- }
16
- /**
17
- * Create a setting helper with TypeScript autocomplete
18
- * Automatically infers environment names from object keys
19
- */
20
- export function createEnvironmentSettings(environments) {
21
- // Keep environments in their original object structure
22
- const environmentMap = environments;
23
- const environmentNames = Object.keys(environments);
24
- const allEnvironments = Object.values(environments);
25
- return {
26
- getEnvironmentSetting: async (key) => {
27
- if (environmentNames.length === 0) {
28
- throw new Error(`No environments provided to createEnvironmentSettings().\n\n` +
29
- `You must pass environments as an object: createEnvironmentSettings({ development, production })`);
30
- }
31
- const currentEnv = process.env.NODE_ENV || 'development';
32
- // Find environment that matches the current NODE_ENV exactly
33
- const matchingEnv = environmentMap[currentEnv];
34
- if (!matchingEnv) {
35
- throw new Error(`Environment '${currentEnv}' not found.\n\n` +
36
- `Available environments: ${environmentNames.join(', ')}\n` +
37
- `Set NODE_ENV to one of the available environments or add a '${currentEnv}' environment.`);
38
- }
39
- if (!matchingEnv.credentials?.[key]) {
40
- throw new Error(`Credential environment setting '${key}' not found in environment '${currentEnv}'.\n\n`);
41
- }
42
- return matchingEnv.credentials[key];
43
- },
44
- getEnvironmentSettingKeys: () => {
45
- if (allEnvironments.length === 0)
46
- return [];
47
- if (allEnvironments.length === 1)
48
- return Object.keys(allEnvironments[0].credentials || {});
49
- // Multiple environments - intersection logic
50
- let commonKeys = new Set(Object.keys(allEnvironments[0].credentials || {}));
51
- for (let i = 1; i < allEnvironments.length; i++) {
52
- const envKeys = new Set(Object.keys(allEnvironments[i].credentials || {}));
53
- commonKeys = new Set([...commonKeys].filter((key) => envKeys.has(key)));
54
- }
55
- return Array.from(commonKeys);
56
- },
57
- hasEnvironmentSetting: (key) => {
58
- if (allEnvironments.length === 0)
59
- return false;
60
- if (allEnvironments.length === 1)
61
- return !!(allEnvironments[0].credentials && key in allEnvironments[0].credentials);
62
- // Multiple environments - must exist in ALL
63
- return allEnvironments.every((env) => env.credentials && key in env.credentials);
64
- },
65
- };
66
- }
67
- /**
68
- * Create type-safe environment configurations with setting registration
69
- */
70
- export function registerEnvironmentSettings(config) {
71
- // Register setting keys globally for autocomplete
72
- if (config.credentials) {
73
- const settingIds = Object.keys(config.credentials);
74
- registerSettingKeys(settingIds);
75
- }
76
- return config;
77
- }
78
- //# sourceMappingURL=environment-settings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"environment-settings.js","sourceRoot":"","sources":["../src/environment-settings.ts"],"names":[],"mappings":"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"}
@@ -1,58 +0,0 @@
1
- import type { CredentialReferenceSelect } from '@inkeep/agents-core';
2
- import type { ExternalAgentInterface } from './types.js';
3
- export type ExternalAgentConfig = {
4
- type?: 'external';
5
- tenantId?: string;
6
- id: string;
7
- name: string;
8
- description: string;
9
- baseUrl: string;
10
- credentialReference?: CredentialReferenceSelect;
11
- headers?: Record<string, string>;
12
- };
13
- export declare class ExternalAgent implements ExternalAgentInterface {
14
- config: ExternalAgentConfig;
15
- readonly type: "external";
16
- private initialized;
17
- private tenantId;
18
- private baseURL;
19
- constructor(config: ExternalAgentConfig);
20
- /**
21
- * Initialize the external agent by upserting it in the database
22
- */
23
- init(): Promise<void>;
24
- getId(): string;
25
- private upsertExternalAgent;
26
- /**
27
- * Get the external agent configuration
28
- */
29
- getConfig(): ExternalAgentConfig;
30
- /**
31
- * Get the external agent name
32
- */
33
- getName(): string;
34
- /**
35
- * Get the external agent base URL
36
- */
37
- getBaseUrl(): string;
38
- /**
39
- * Get the tenant ID
40
- */
41
- getTenantId(): string;
42
- getDescription(): string;
43
- getCredentialReferenceId(): string | undefined;
44
- getHeaders(): Record<string, string> | undefined;
45
- }
46
- /**
47
- * Factory function to create external agents - follows the same pattern as agent()
48
- */
49
- export declare function externalAgent(config: ExternalAgentConfig): ExternalAgent;
50
- /**
51
- * Helper function to create multiple external agents
52
- */
53
- export declare function externalAgents(configs: Record<string, ExternalAgentConfig>): Record<string, ExternalAgent>;
54
- /**
55
- * Helper to batch initialize external agents
56
- */
57
- export declare function initializeExternalAgents(builders: ExternalAgent[]): Promise<void>;
58
- //# sourceMappingURL=externalAgent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"externalAgent.d.ts","sourceRoot":"","sources":["../src/externalAgent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAIzD,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,yBAAyB,CAAC;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF,qBAAa,aAAc,YAAW,sBAAsB;IACnD,MAAM,EAAE,mBAAmB,CAAC;IACnC,SAAgB,IAAI,EAAG,UAAU,CAAU;IAC3C,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,EAAE,mBAAmB;IAevC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA4B3B,KAAK,IAAI,MAAM;YAKD,mBAAmB;IA2EjC;;OAEG;IACH,SAAS,IAAI,mBAAmB;IAIhC;;OAEG;IACH,OAAO,IAAI,MAAM;IAIjB;;OAEG;IACH,UAAU,IAAI,MAAM;IAIpB;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB,cAAc,IAAI,MAAM;IAIxB,wBAAwB,IAAI,MAAM,GAAG,SAAS;IAI9C,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS;CAGjD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG,aAAa,CAExE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAC3C,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAQ/B;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBvF"}
@@ -1,161 +0,0 @@
1
- import { getLogger } from '@inkeep/agents-core';
2
- const logger = getLogger('external-agent-builder');
3
- export class ExternalAgent {
4
- config;
5
- type = 'external';
6
- initialized = false;
7
- tenantId;
8
- baseURL;
9
- constructor(config) {
10
- this.config = { ...config, type: 'external' };
11
- this.tenantId = config.tenantId || 'default';
12
- this.baseURL = process.env.INKEEP_API_URL || 'http://localhost:3002';
13
- logger.debug({
14
- externalAgentName: this.config.name,
15
- baseUrl: this.config.baseUrl,
16
- tenantId: this.config.tenantId,
17
- }, 'External Agent constructor initialized');
18
- }
19
- /**
20
- * Initialize the external agent by upserting it in the database
21
- */
22
- async init() {
23
- if (this.initialized)
24
- return;
25
- try {
26
- // Always attempt to upsert the external agent
27
- await this.upsertExternalAgent();
28
- logger.info({
29
- externalAgentId: this.getId(),
30
- }, 'External agent initialized successfully');
31
- this.initialized = true;
32
- }
33
- catch (error) {
34
- logger.error({
35
- externalAgentId: this.getId(),
36
- error: error instanceof Error ? error.message : 'Unknown error',
37
- }, 'Failed to initialize external agent');
38
- throw error;
39
- }
40
- }
41
- // Compute ID from name using a simple slug transformation
42
- getId() {
43
- return this.config.id;
44
- }
45
- // Private method to upsert external agent (create or update)
46
- async upsertExternalAgent() {
47
- const externalAgentData = {
48
- id: this.getId(),
49
- name: this.config.name,
50
- description: this.config.description,
51
- baseUrl: this.config.baseUrl,
52
- credentialReferenceId: this.config.credentialReference?.id || undefined,
53
- headers: this.config.headers || undefined,
54
- };
55
- // First try to update (in case external agent exists)
56
- const updateResponse = await fetch(`${this.baseURL}/tenants/${this.tenantId}/crud/external-agents/${this.getId()}`, {
57
- method: 'PUT',
58
- headers: {
59
- 'Content-Type': 'application/json',
60
- },
61
- body: JSON.stringify(externalAgentData),
62
- });
63
- if (updateResponse.ok) {
64
- logger.info({
65
- externalAgentId: this.getId(),
66
- }, 'External agent updated successfully');
67
- return;
68
- }
69
- // If update failed with 404, external agent doesn't exist - create it
70
- if (updateResponse.status === 404) {
71
- logger.info({
72
- externalAgentId: this.getId(),
73
- }, 'External agent not found, creating new external agent');
74
- const createResponse = await fetch(`${this.baseURL}/tenants/${this.tenantId}/crud/external-agents`, {
75
- method: 'POST',
76
- headers: {
77
- 'Content-Type': 'application/json',
78
- },
79
- body: JSON.stringify(externalAgentData),
80
- });
81
- if (!createResponse.ok) {
82
- const errorText = await createResponse.text().catch(() => 'Unknown error');
83
- throw new Error(`Failed to create external agent: ${createResponse.status} ${createResponse.statusText} - ${errorText}`);
84
- }
85
- logger.info({
86
- externalAgentId: this.getId(),
87
- }, 'External agent created successfully');
88
- return;
89
- }
90
- // Update failed for some other reason
91
- const errorText = await updateResponse.text().catch(() => 'Unknown error');
92
- throw new Error(`Failed to update external agent: ${updateResponse.status} ${updateResponse.statusText} - ${errorText}`);
93
- }
94
- /**
95
- * Get the external agent configuration
96
- */
97
- getConfig() {
98
- return { ...this.config };
99
- }
100
- /**
101
- * Get the external agent name
102
- */
103
- getName() {
104
- return this.config.name;
105
- }
106
- /**
107
- * Get the external agent base URL
108
- */
109
- getBaseUrl() {
110
- return this.config.baseUrl;
111
- }
112
- /**
113
- * Get the tenant ID
114
- */
115
- getTenantId() {
116
- return this.tenantId;
117
- }
118
- getDescription() {
119
- return this.config.description || '';
120
- }
121
- getCredentialReferenceId() {
122
- return this.config.credentialReference?.id || undefined;
123
- }
124
- getHeaders() {
125
- return this.config.headers;
126
- }
127
- }
128
- /**
129
- * Factory function to create external agents - follows the same pattern as agent()
130
- */
131
- export function externalAgent(config) {
132
- return new ExternalAgent(config);
133
- }
134
- /**
135
- * Helper function to create multiple external agents
136
- */
137
- export function externalAgents(configs) {
138
- const builders = {};
139
- for (const [name, config] of Object.entries(configs)) {
140
- builders[name] = externalAgent(config);
141
- }
142
- return builders;
143
- }
144
- /**
145
- * Helper to batch initialize external agents
146
- */
147
- export async function initializeExternalAgents(builders) {
148
- logger.info({ count: builders.length }, 'Batch initializing external agents');
149
- const initPromises = builders.map(async (builder) => {
150
- return await builder.init();
151
- });
152
- try {
153
- await Promise.all(initPromises);
154
- logger.info({ count: builders.length }, 'All external agents initialized successfully');
155
- }
156
- catch (error) {
157
- logger.error({ error: error instanceof Error ? error.message : 'Unknown error' }, 'Failed to initialize some external agents');
158
- throw error;
159
- }
160
- }
161
- //# sourceMappingURL=externalAgent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"externalAgent.js","sourceRoot":"","sources":["../src/externalAgent.ts"],"names":[],"mappings":"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"}
package/dist/graph.d.ts DELETED
@@ -1,200 +0,0 @@
1
- import type { AgentInterface, AllAgentInterface, ExternalAgentInterface, GenerateOptions, GraphConfig, GraphInterface, MessageInput, ModelSettings, RunResult, StatusUpdateSettings, StreamResponse } from './types.js';
2
- export declare class AgentGraph implements GraphInterface {
3
- private agents;
4
- private agentMap;
5
- private defaultAgent?;
6
- private baseURL;
7
- private tenantId;
8
- private projectId;
9
- private graphId;
10
- private graphName;
11
- private graphDescription?;
12
- private initialized;
13
- private contextConfig?;
14
- private credentials?;
15
- private models?;
16
- private statusUpdateSettings?;
17
- private graphPrompt?;
18
- private stopWhen?;
19
- private dbClient;
20
- constructor(config: GraphConfig);
21
- /**
22
- * Set or update the configuration (tenantId, projectId and apiUrl)
23
- * This is used by the CLI to inject configuration from inkeep.config.ts
24
- */
25
- setConfig(tenantId: string, projectId: string, apiUrl: string): void;
26
- /**
27
- * Convert the AgentGraph to FullGraphDefinition format for the new graph endpoint
28
- */
29
- private toFullGraphDefinition;
30
- /**
31
- * Initialize all tools in all agents (especially IPCTools that need MCP server URLs)
32
- */
33
- private initializeAllTools;
34
- /**
35
- * Initialize the graph and all agents in the backend using the new graph endpoint
36
- */
37
- init(): Promise<void>;
38
- /**
39
- * Legacy initialization method - kept for backward compatibility
40
- * Initialize the graph and all agents in the backend using individual endpoints
41
- */
42
- initLegacy(): Promise<void>;
43
- /**
44
- * Generate a response using the default agent
45
- */
46
- generate(input: MessageInput, options?: GenerateOptions): Promise<string>;
47
- /**
48
- * Stream a response using the default agent
49
- */
50
- stream(input: MessageInput, options?: GenerateOptions): Promise<StreamResponse>;
51
- /**
52
- * Alias for stream() method for consistency with naming patterns
53
- */
54
- generateStream(input: MessageInput, options?: GenerateOptions): Promise<StreamResponse>;
55
- /**
56
- * Run with a specific agent from the graph
57
- */
58
- runWith(agentId: string, input: MessageInput, options?: GenerateOptions): Promise<RunResult>;
59
- /**
60
- * Get an agent by name (unified method for all agent types)
61
- */
62
- getAgent(name: string): AllAgentInterface | undefined;
63
- /**
64
- * Add an agent to the graph
65
- */
66
- addAgent(agent: AgentInterface): void;
67
- /**
68
- * Remove an agent from the graph
69
- */
70
- removeAgent(id: string): boolean;
71
- /**
72
- * Get all agents in the graph
73
- */
74
- getAgents(): AllAgentInterface[];
75
- /**
76
- * Get all agent ids (unified method for all agent types)
77
- */
78
- getAgentIds(): string[];
79
- /**
80
- * Set the default agent
81
- */
82
- setDefaultAgent(agent: AgentInterface): void;
83
- /**
84
- * Get the default agent
85
- */
86
- getDefaultAgent(): AgentInterface | undefined;
87
- /**
88
- * Get the graph ID
89
- */
90
- getId(): string;
91
- getName(): string;
92
- getDescription(): string | undefined;
93
- getTenantId(): string;
94
- /**
95
- * Get the graph's model settingsuration
96
- */
97
- getModels(): typeof this.models;
98
- /**
99
- * Set the graph's model settingsuration
100
- */
101
- setModels(models: typeof this.models): void;
102
- /**
103
- * Get the graph's prompt configuration
104
- */
105
- getGraphPrompt(): string | undefined;
106
- /**
107
- * Get the graph's stopWhen configuration
108
- */
109
- getStopWhen(): {
110
- transferCountIs?: number;
111
- };
112
- /**
113
- * Get the graph's status updates configuration
114
- */
115
- getStatusUpdateSettings(): StatusUpdateSettings | undefined;
116
- /**
117
- * Get the summarizer model from the graph's model settings
118
- */
119
- getSummarizerModel(): ModelSettings | undefined;
120
- /**
121
- * Get graph statistics
122
- */
123
- getStats(): {
124
- agentCount: number;
125
- defaultAgent: string | null;
126
- initialized: boolean;
127
- graphId: string;
128
- tenantId: string;
129
- };
130
- /**
131
- * Validate the graph configuration
132
- */
133
- validate(): {
134
- valid: boolean;
135
- errors: string[];
136
- };
137
- private _init;
138
- /**
139
- * Type guard to check if an agent is an internal AgentInterface
140
- */
141
- isInternalAgent(agent: AllAgentInterface): agent is AgentInterface;
142
- /**
143
- * Get project-level model settingsuration defaults
144
- */
145
- private getProjectModelDefaults;
146
- /**
147
- * Get project-level stopWhen configuration defaults
148
- */
149
- private getProjectStopWhenDefaults;
150
- /**
151
- * Apply model inheritance hierarchy: Project -> Graph -> Agent
152
- */
153
- private applyModelInheritance;
154
- /**
155
- * Apply stopWhen inheritance hierarchy: Project -> Graph -> Agent
156
- */
157
- private applyStopWhenInheritance;
158
- /**
159
- * Propagate graph-level model settings to agents (supporting partial inheritance)
160
- */
161
- private propagateModelSettingsToAgent;
162
- /**
163
- * Immediately propagate graph-level models to all agents during construction
164
- */
165
- private propagateImmediateModelSettings;
166
- /**
167
- * Type guard to check if an agent is an external AgentInterface
168
- */
169
- isExternalAgent(agent: AllAgentInterface): agent is ExternalAgentInterface;
170
- /**
171
- * Execute agent using the backend system instead of local runner
172
- */
173
- private executeWithBackend;
174
- /**
175
- * Parse streaming response in SSE format
176
- */
177
- private parseStreamingResponse;
178
- /**
179
- * Normalize input messages to the expected format
180
- */
181
- private normalizeMessages;
182
- private saveToDatabase;
183
- private saveRelations;
184
- private createAgentRelations;
185
- private createInternalAgentRelation;
186
- private createExternalAgentRelation;
187
- /**
188
- * Create external agents in the database
189
- */
190
- private createExternalAgents;
191
- }
192
- /**
193
- * Helper function to create graphs - OpenAI style
194
- */
195
- export declare function agentGraph(config: GraphConfig): AgentGraph;
196
- /**
197
- * Factory function to create graph from configuration file
198
- */
199
- export declare function generateGraph(configPath: string): Promise<AgentGraph>;
200
- //# sourceMappingURL=graph.d.ts.map