@inkeep/agents-sdk 0.0.0-dev-20250910233133 → 0.0.0-dev-20250910233441
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-SMQ7HFDN.js +146 -0
- package/dist/index.cjs +2899 -0
- package/dist/index.d.cts +855 -0
- package/dist/index.d.ts +855 -11
- package/dist/index.js +2712 -10
- package/dist/tool-MDKZB6AJ.js +1 -0
- package/package.json +3 -3
- package/dist/__tests__/utils/testTenant.d.ts +0 -7
- package/dist/__tests__/utils/testTenant.d.ts.map +0 -1
- package/dist/__tests__/utils/testTenant.js +0 -10
- package/dist/__tests__/utils/testTenant.js.map +0 -1
- package/dist/agent.d.ts +0 -39
- package/dist/agent.d.ts.map +0 -1
- package/dist/agent.js +0 -513
- package/dist/agent.js.map +0 -1
- package/dist/artifact-component.d.ts +0 -27
- package/dist/artifact-component.d.ts.map +0 -1
- package/dist/artifact-component.js +0 -118
- package/dist/artifact-component.js.map +0 -1
- package/dist/builders.d.ts +0 -211
- package/dist/builders.d.ts.map +0 -1
- package/dist/builders.js +0 -244
- package/dist/builders.js.map +0 -1
- package/dist/data-component.d.ts +0 -25
- package/dist/data-component.d.ts.map +0 -1
- package/dist/data-component.js +0 -114
- package/dist/data-component.js.map +0 -1
- package/dist/environment-settings.d.ts +0 -28
- package/dist/environment-settings.d.ts.map +0 -1
- package/dist/environment-settings.js +0 -79
- package/dist/environment-settings.js.map +0 -1
- package/dist/externalAgent.d.ts +0 -58
- package/dist/externalAgent.d.ts.map +0 -1
- package/dist/externalAgent.js +0 -163
- package/dist/externalAgent.js.map +0 -1
- package/dist/graph.d.ts +0 -200
- package/dist/graph.d.ts.map +0 -1
- package/dist/graph.js +0 -1322
- package/dist/graph.js.map +0 -1
- package/dist/graphFullClient.d.ts +0 -22
- package/dist/graphFullClient.d.ts.map +0 -1
- package/dist/graphFullClient.js +0 -189
- package/dist/graphFullClient.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/module-hosted-tool-manager.d.ts +0 -37
- package/dist/module-hosted-tool-manager.d.ts.map +0 -1
- package/dist/module-hosted-tool-manager.js +0 -378
- package/dist/module-hosted-tool-manager.js.map +0 -1
- package/dist/runner.d.ts +0 -38
- package/dist/runner.d.ts.map +0 -1
- package/dist/runner.js +0 -164
- package/dist/runner.js.map +0 -1
- package/dist/tool.d.ts +0 -29
- package/dist/tool.d.ts.map +0 -1
- package/dist/tool.js +0 -122
- package/dist/tool.js.map +0 -1
- package/dist/types.d.ts +0 -286
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -39
- package/dist/types.js.map +0 -1
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { getLogger } from '@inkeep/agents-core';
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
5
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
6
|
+
var logger = getLogger("tool");
|
|
7
|
+
var Tool = class {
|
|
8
|
+
constructor(config) {
|
|
9
|
+
__publicField(this, "config");
|
|
10
|
+
__publicField(this, "baseURL");
|
|
11
|
+
__publicField(this, "tenantId");
|
|
12
|
+
__publicField(this, "initialized", false);
|
|
13
|
+
this.config = config;
|
|
14
|
+
this.baseURL = process.env.INKEEP_API_URL || "http://localhost:3002";
|
|
15
|
+
this.tenantId = config.tenantId || "default";
|
|
16
|
+
logger.info(
|
|
17
|
+
{
|
|
18
|
+
toolId: this.getId(),
|
|
19
|
+
toolName: config.name
|
|
20
|
+
},
|
|
21
|
+
"Tool constructor initialized"
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
// Compute ID from name using same slug transformation as agents
|
|
25
|
+
getId() {
|
|
26
|
+
return this.config.id;
|
|
27
|
+
}
|
|
28
|
+
getName() {
|
|
29
|
+
return this.config.name;
|
|
30
|
+
}
|
|
31
|
+
getDescription() {
|
|
32
|
+
return this.config.description || "";
|
|
33
|
+
}
|
|
34
|
+
getServerUrl() {
|
|
35
|
+
return this.config.serverUrl;
|
|
36
|
+
}
|
|
37
|
+
getActiveTools() {
|
|
38
|
+
return this.config.activeTools;
|
|
39
|
+
}
|
|
40
|
+
getCredentialReferenceId() {
|
|
41
|
+
return this.config.credential?.id;
|
|
42
|
+
}
|
|
43
|
+
// Public method to ensure tool exists in backend (with upsert behavior)
|
|
44
|
+
async init(options) {
|
|
45
|
+
if (this.initialized) return;
|
|
46
|
+
try {
|
|
47
|
+
if (!options?.skipDatabaseRegistration) {
|
|
48
|
+
await this.upsertTool();
|
|
49
|
+
}
|
|
50
|
+
logger.info(
|
|
51
|
+
{
|
|
52
|
+
toolId: this.getId()
|
|
53
|
+
},
|
|
54
|
+
"Tool initialized successfully"
|
|
55
|
+
);
|
|
56
|
+
this.initialized = true;
|
|
57
|
+
} catch (error) {
|
|
58
|
+
logger.error(
|
|
59
|
+
{
|
|
60
|
+
toolId: this.getId(),
|
|
61
|
+
error: error instanceof Error ? error.message : "Unknown error"
|
|
62
|
+
},
|
|
63
|
+
"Failed to initialize tool"
|
|
64
|
+
);
|
|
65
|
+
throw error;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
// Private method to upsert tool (create or update)
|
|
69
|
+
async upsertTool() {
|
|
70
|
+
const toolDataForUpdate = {
|
|
71
|
+
id: this.getId(),
|
|
72
|
+
name: this.config.name,
|
|
73
|
+
// Don't send description as it's not in the database schema
|
|
74
|
+
// Explicitly set to null when undefined to ensure removal
|
|
75
|
+
credentialReferenceId: this.config.credential?.id ?? null,
|
|
76
|
+
// Explicitly set headers to null when undefined to ensure removal
|
|
77
|
+
headers: this.config.headers ?? null,
|
|
78
|
+
imageUrl: this.config.imageUrl,
|
|
79
|
+
// Include image URL
|
|
80
|
+
config: {
|
|
81
|
+
type: "mcp",
|
|
82
|
+
mcp: {
|
|
83
|
+
server: {
|
|
84
|
+
url: this.config.serverUrl
|
|
85
|
+
},
|
|
86
|
+
activeTools: this.config.activeTools
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
const toolDataForCreate = {
|
|
91
|
+
...toolDataForUpdate
|
|
92
|
+
};
|
|
93
|
+
logger.info({ toolDataForCreate }, "toolDataForCreate");
|
|
94
|
+
const updateResponse = await fetch(
|
|
95
|
+
`${this.baseURL}/tenants/${this.tenantId}/crud/tools/${this.getId()}`,
|
|
96
|
+
{
|
|
97
|
+
method: "PUT",
|
|
98
|
+
headers: {
|
|
99
|
+
"Content-Type": "application/json"
|
|
100
|
+
},
|
|
101
|
+
body: JSON.stringify(toolDataForUpdate)
|
|
102
|
+
}
|
|
103
|
+
);
|
|
104
|
+
logger.info({ updateResponse }, "tool updateResponse");
|
|
105
|
+
if (updateResponse.ok) {
|
|
106
|
+
logger.info(
|
|
107
|
+
{
|
|
108
|
+
toolId: this.getId()
|
|
109
|
+
},
|
|
110
|
+
"Tool updated successfully"
|
|
111
|
+
);
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
if (updateResponse.status === 404) {
|
|
115
|
+
logger.info(
|
|
116
|
+
{
|
|
117
|
+
toolId: this.getId()
|
|
118
|
+
},
|
|
119
|
+
"Tool not found, creating new tool"
|
|
120
|
+
);
|
|
121
|
+
const createResponse = await fetch(
|
|
122
|
+
`${this.baseURL}/tenants/${this.tenantId}/crud/tools`,
|
|
123
|
+
{
|
|
124
|
+
method: "POST",
|
|
125
|
+
headers: {
|
|
126
|
+
"Content-Type": "application/json"
|
|
127
|
+
},
|
|
128
|
+
body: JSON.stringify(toolDataForCreate)
|
|
129
|
+
}
|
|
130
|
+
);
|
|
131
|
+
if (!createResponse.ok) {
|
|
132
|
+
throw new Error(`Failed to create tool: ${createResponse.status}`);
|
|
133
|
+
}
|
|
134
|
+
logger.info(
|
|
135
|
+
{
|
|
136
|
+
toolId: this.getId()
|
|
137
|
+
},
|
|
138
|
+
"Tool created successfully"
|
|
139
|
+
);
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
throw new Error(`Failed to update tool: ${updateResponse.status}`);
|
|
143
|
+
}
|
|
144
|
+
};
|
|
145
|
+
|
|
146
|
+
export { Tool, __publicField };
|