@runmark/sdk 0.1.0 → 0.1.2
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/CHANGELOG.md +9 -0
- package/README.md +348 -124
- package/dist/client.d.ts +11 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +38 -4
- package/dist/client.js.map +1 -1
- package/dist/errors.d.ts +2 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +2 -0
- package/dist/errors.js.map +1 -1
- package/dist/http.d.ts.map +1 -1
- package/dist/http.js +67 -5
- package/dist/http.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/routes.d.ts +5 -1
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +14 -2
- package/dist/routes.js.map +1 -1
- package/dist/sse.d.ts.map +1 -1
- package/dist/sse.js +10 -1
- package/dist/sse.js.map +1 -1
- package/dist/types.d.ts +85 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +11 -1
package/dist/client.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { HttpClient } from "./http.js";
|
|
2
2
|
import { parseSkyforgeEventStream } from "./sse.js";
|
|
3
|
-
import { chatStateUrl, humanActionSubmitUrl, runEventStreamUrl, sendMessageUrl, uploadedFileDeleteUrl, uploadedFilesUrl, } from "./routes.js";
|
|
3
|
+
import { agentRunCancelUrl, chatListUrl, chatStateUrl, humanActionSubmitUrl, requestLookupUrl, runEventStreamUrl, sendMessageUrl, sourceReferencesUrl, uploadedFileDeleteUrl, uploadedFilesUrl, } from "./routes.js";
|
|
4
4
|
const DEFAULT_BASE_URL = "https://api.skyforge.ai";
|
|
5
5
|
export class SkyforgeClient {
|
|
6
6
|
agentBranches;
|
|
7
|
+
chats;
|
|
7
8
|
agentRuns;
|
|
8
9
|
humanActions;
|
|
9
10
|
uploadedFiles;
|
|
@@ -26,9 +27,15 @@ export class SkyforgeClient {
|
|
|
26
27
|
this.agentBranches = {
|
|
27
28
|
getState: (params) => this.getAgentBranchState(params),
|
|
28
29
|
sendMessage: (params) => this.sendMessage(params),
|
|
30
|
+
lookupRequest: (params) => this.lookupRequest(params),
|
|
31
|
+
};
|
|
32
|
+
this.chats = {
|
|
33
|
+
list: (params) => this.listChats(params),
|
|
29
34
|
};
|
|
30
35
|
this.agentRuns = {
|
|
31
36
|
streamEvents: (params) => this.streamEvents(params),
|
|
37
|
+
getSourceReferences: (params) => this.getSourceReferences(params),
|
|
38
|
+
cancel: (params) => this.cancelAgentRun(params),
|
|
32
39
|
};
|
|
33
40
|
this.humanActions = {
|
|
34
41
|
submit: (params) => this.submitHumanAction(params),
|
|
@@ -40,24 +47,44 @@ export class SkyforgeClient {
|
|
|
40
47
|
};
|
|
41
48
|
}
|
|
42
49
|
getAgentBranchState(params) {
|
|
43
|
-
return this.http.getJson(chatStateUrl(this.baseUrl, params.agentBranchId, params.chatId), params.signal);
|
|
50
|
+
return this.http.getJson(chatStateUrl(this.baseUrl, params.agentBranchId, params.chatId, params.externalId), params.signal);
|
|
51
|
+
}
|
|
52
|
+
async listChats(params) {
|
|
53
|
+
const response = await this.http.getJson(chatListUrl(this.baseUrl, params.agentId, params.agentBranchId, params.chatId, params.externalId, params.limit, params.cursor), params.signal);
|
|
54
|
+
return normalizeChatListResponse(response);
|
|
44
55
|
}
|
|
45
56
|
sendMessage(params) {
|
|
46
57
|
return this.http.postJson(sendMessageUrl(this.baseUrl, params.agentBranchId), compactBody({
|
|
47
58
|
message: params.message,
|
|
59
|
+
active_organization_id: params.activeOrganizationId,
|
|
48
60
|
chat_id: params.chatId,
|
|
61
|
+
request_id: params.requestId,
|
|
62
|
+
external_id: params.externalId,
|
|
49
63
|
retried_from_agent_run_id: params.retriedFromAgentRunId,
|
|
50
64
|
source_user_message_id: params.sourceUserMessageId,
|
|
51
65
|
structured_context: params.structuredContext,
|
|
52
66
|
retrieval_scope: params.retrievalScope,
|
|
53
67
|
}), params.signal);
|
|
54
68
|
}
|
|
69
|
+
lookupRequest(params) {
|
|
70
|
+
return this.http.getJson(requestLookupUrl(this.baseUrl, params.agentBranchId, params.requestId), params.signal);
|
|
71
|
+
}
|
|
55
72
|
async streamEvents(params) {
|
|
56
73
|
const response = await this.http.stream(runEventStreamUrl(this.baseUrl, params.agentRunId, params.afterSequence), params.signal);
|
|
57
74
|
return parseSkyforgeEventStream(response.body);
|
|
58
75
|
}
|
|
76
|
+
getSourceReferences(params) {
|
|
77
|
+
return this.http.getJson(sourceReferencesUrl(this.baseUrl, params.agentRunId), params.signal);
|
|
78
|
+
}
|
|
79
|
+
cancelAgentRun(params) {
|
|
80
|
+
return this.http.postJson(agentRunCancelUrl(this.baseUrl, params.agentRunId), compactBody({ reason: params.reason }), params.signal);
|
|
81
|
+
}
|
|
59
82
|
submitHumanAction(params) {
|
|
60
|
-
return this.http.postJson(humanActionSubmitUrl(this.baseUrl, params.humanActionRequestId), {
|
|
83
|
+
return this.http.postJson(humanActionSubmitUrl(this.baseUrl, params.humanActionRequestId), compactBody({
|
|
84
|
+
values: params.values,
|
|
85
|
+
request_id: params.requestId,
|
|
86
|
+
active_organization_id: params.activeOrganizationId,
|
|
87
|
+
}), params.signal);
|
|
61
88
|
}
|
|
62
89
|
listUploadedFiles(params) {
|
|
63
90
|
return this.http.getJson(uploadedFilesUrl(this.baseUrl, params.agentBranchId, params.chatId), params.signal);
|
|
@@ -92,10 +119,17 @@ function toUploadBlob(file, contentType) {
|
|
|
92
119
|
function compactBody(input) {
|
|
93
120
|
return Object.fromEntries(Object.entries(input).filter(([, value]) => value !== undefined));
|
|
94
121
|
}
|
|
122
|
+
function normalizeChatListResponse(response) {
|
|
123
|
+
const { next_cursor, nextCursor, ...rest } = response;
|
|
124
|
+
return {
|
|
125
|
+
...rest,
|
|
126
|
+
nextCursor: nextCursor ?? next_cursor ?? null,
|
|
127
|
+
};
|
|
128
|
+
}
|
|
95
129
|
function assertServerEnvironment() {
|
|
96
130
|
const globalObject = globalThis;
|
|
97
131
|
if (globalObject.window !== undefined && globalObject.document !== undefined) {
|
|
98
|
-
throw new Error("@
|
|
132
|
+
throw new Error("@runmark/sdk is server-only and cannot run in a browser.");
|
|
99
133
|
}
|
|
100
134
|
}
|
|
101
135
|
//# sourceMappingURL=client.js.map
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export interface SkyforgeApiErrorOptions {
|
|
|
4
4
|
status: number;
|
|
5
5
|
statusText: string;
|
|
6
6
|
requestId?: string;
|
|
7
|
+
code?: string;
|
|
7
8
|
responseBody?: unknown;
|
|
8
9
|
responseText?: string;
|
|
9
10
|
}
|
|
@@ -13,6 +14,7 @@ export declare class SkyforgeApiError extends Error {
|
|
|
13
14
|
readonly status: number;
|
|
14
15
|
readonly statusText: string;
|
|
15
16
|
readonly requestId?: string;
|
|
17
|
+
readonly code?: string;
|
|
16
18
|
readonly responseBody?: unknown;
|
|
17
19
|
readonly responseText?: string;
|
|
18
20
|
constructor(message: string, options: SkyforgeApiErrorOptions);
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;gBAEnB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;gBAEnB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB;CAY9D"}
|
package/dist/errors.js
CHANGED
|
@@ -4,6 +4,7 @@ export class SkyforgeApiError extends Error {
|
|
|
4
4
|
status;
|
|
5
5
|
statusText;
|
|
6
6
|
requestId;
|
|
7
|
+
code;
|
|
7
8
|
responseBody;
|
|
8
9
|
responseText;
|
|
9
10
|
constructor(message, options) {
|
|
@@ -14,6 +15,7 @@ export class SkyforgeApiError extends Error {
|
|
|
14
15
|
this.status = options.status;
|
|
15
16
|
this.statusText = options.statusText;
|
|
16
17
|
this.requestId = options.requestId;
|
|
18
|
+
this.code = options.code;
|
|
17
19
|
this.responseBody = options.responseBody;
|
|
18
20
|
this.responseText = options.responseText;
|
|
19
21
|
}
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAChC,MAAM,CAAS;IACf,GAAG,CAAS;IACZ,MAAM,CAAS;IACf,UAAU,CAAS;IACnB,SAAS,CAAU;IACnB,IAAI,CAAU;IACd,YAAY,CAAW;IACvB,YAAY,CAAU;IAE/B,YAAY,OAAe,EAAE,OAAgC;QAC3D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAC3C,CAAC;CACF"}
|
package/dist/http.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAKhD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,aAAa,CAAC;CACtB;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;gBAE5B,OAAO,EAAE,iBAAiB;IAKhC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IAIzD,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IAIzE,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IAI5D,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IAU1E,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;YAepD,WAAW;IAqBzB,OAAO,CAAC,WAAW;CAMpB;AA+BD,wBAAsB,YAAY,CAChC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAOf"}
|
package/dist/http.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { SkyforgeApiError } from "./errors.js";
|
|
2
|
+
const MAX_JSON_RESPONSE_BYTES = 4 * 1024 * 1024;
|
|
3
|
+
const MAX_ERROR_RESPONSE_BYTES = 64 * 1024;
|
|
2
4
|
export class HttpClient {
|
|
3
5
|
apiKey;
|
|
4
6
|
fetchFn;
|
|
@@ -31,6 +33,11 @@ export class HttpClient {
|
|
|
31
33
|
signal,
|
|
32
34
|
});
|
|
33
35
|
await throwIfError(response, "GET", url);
|
|
36
|
+
const contentType = response.headers.get("content-type")?.toLowerCase();
|
|
37
|
+
if (contentType === undefined || !contentType.startsWith("text/event-stream")) {
|
|
38
|
+
await response.body?.cancel().catch(() => undefined);
|
|
39
|
+
throw new Error(`Skyforge GET ${url} returned an invalid event-stream content type.`);
|
|
40
|
+
}
|
|
34
41
|
return response;
|
|
35
42
|
}
|
|
36
43
|
async requestJson(method, url, body, signal) {
|
|
@@ -54,21 +61,65 @@ export class HttpClient {
|
|
|
54
61
|
}
|
|
55
62
|
}
|
|
56
63
|
async function parseJsonEnvelopeResponse(response, method, url) {
|
|
57
|
-
const text = await response.text();
|
|
58
|
-
const parsed = parseJson(text);
|
|
59
64
|
if (!response.ok) {
|
|
65
|
+
const { text } = await readLimitedText(response, MAX_ERROR_RESPONSE_BYTES);
|
|
66
|
+
const parsed = parseJson(text);
|
|
60
67
|
throw apiErrorFromResponse(response, method, url, text, parsed);
|
|
61
68
|
}
|
|
62
|
-
const
|
|
63
|
-
|
|
69
|
+
const contentType = response.headers.get("content-type")?.toLowerCase();
|
|
70
|
+
if (contentType === undefined || !contentType.includes("json")) {
|
|
71
|
+
await response.body?.cancel().catch(() => undefined);
|
|
72
|
+
throw new Error(`Skyforge ${method} ${url} returned an invalid JSON content type.`);
|
|
73
|
+
}
|
|
74
|
+
const { text, truncated } = await readLimitedText(response, MAX_JSON_RESPONSE_BYTES);
|
|
75
|
+
if (truncated) {
|
|
76
|
+
throw new Error(`Skyforge ${method} ${url} returned a JSON response larger than 4 MiB.`);
|
|
77
|
+
}
|
|
78
|
+
const parsed = parseJson(text);
|
|
79
|
+
if (!isRecord(parsed) || !("data" in parsed) || parsed.data === undefined || parsed.data === null) {
|
|
80
|
+
throw new Error(`Skyforge ${method} ${url} returned a malformed success envelope.`);
|
|
81
|
+
}
|
|
82
|
+
return parsed.data;
|
|
64
83
|
}
|
|
65
84
|
export async function throwIfError(response, method, url) {
|
|
66
85
|
if (response.ok) {
|
|
67
86
|
return;
|
|
68
87
|
}
|
|
69
|
-
const text = await response
|
|
88
|
+
const { text } = await readLimitedText(response, MAX_ERROR_RESPONSE_BYTES);
|
|
70
89
|
throw apiErrorFromResponse(response, method, url, text, parseJson(text));
|
|
71
90
|
}
|
|
91
|
+
async function readLimitedText(response, maxBytes) {
|
|
92
|
+
if (response.body === null) {
|
|
93
|
+
return { text: "", truncated: false };
|
|
94
|
+
}
|
|
95
|
+
const reader = response.body.getReader();
|
|
96
|
+
const decoder = new TextDecoder();
|
|
97
|
+
let text = "";
|
|
98
|
+
let bytesRead = 0;
|
|
99
|
+
let truncated = false;
|
|
100
|
+
try {
|
|
101
|
+
while (true) {
|
|
102
|
+
const { value, done } = await reader.read();
|
|
103
|
+
if (done) {
|
|
104
|
+
text += decoder.decode();
|
|
105
|
+
break;
|
|
106
|
+
}
|
|
107
|
+
const remaining = maxBytes - bytesRead;
|
|
108
|
+
if (value.byteLength > remaining) {
|
|
109
|
+
text += decoder.decode(value.subarray(0, Math.max(remaining, 0)), { stream: true });
|
|
110
|
+
truncated = true;
|
|
111
|
+
await reader.cancel().catch(() => undefined);
|
|
112
|
+
break;
|
|
113
|
+
}
|
|
114
|
+
bytesRead += value.byteLength;
|
|
115
|
+
text += decoder.decode(value, { stream: true });
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
finally {
|
|
119
|
+
reader.releaseLock();
|
|
120
|
+
}
|
|
121
|
+
return { text, truncated };
|
|
122
|
+
}
|
|
72
123
|
function apiErrorFromResponse(response, method, url, responseText, responseBody) {
|
|
73
124
|
return new SkyforgeApiError(errorMessage(response, responseText, responseBody), {
|
|
74
125
|
method,
|
|
@@ -76,10 +127,21 @@ function apiErrorFromResponse(response, method, url, responseText, responseBody)
|
|
|
76
127
|
status: response.status,
|
|
77
128
|
statusText: response.statusText,
|
|
78
129
|
requestId: requestId(response.headers),
|
|
130
|
+
code: errorCode(responseBody),
|
|
79
131
|
responseBody,
|
|
80
132
|
responseText,
|
|
81
133
|
});
|
|
82
134
|
}
|
|
135
|
+
function errorCode(responseBody) {
|
|
136
|
+
if (!isRecord(responseBody)) {
|
|
137
|
+
return undefined;
|
|
138
|
+
}
|
|
139
|
+
const direct = stringField(responseBody, "code");
|
|
140
|
+
if (direct !== undefined) {
|
|
141
|
+
return direct;
|
|
142
|
+
}
|
|
143
|
+
return isRecord(responseBody.error) ? stringField(responseBody.error, "code") : undefined;
|
|
144
|
+
}
|
|
83
145
|
function parseJson(text) {
|
|
84
146
|
if (text.trim().length === 0) {
|
|
85
147
|
return undefined;
|
package/dist/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { SkyforgeClient } from "./client.js";
|
|
2
2
|
export { SkyforgeApiError } from "./errors.js";
|
|
3
3
|
export { joinSkyforgeApiPath } from "./routes.js";
|
|
4
|
-
export type { DeleteUploadedFileParams, GetAgentBranchStateParams, HumanActionRequestDto, JsonObject, JsonValue, ListUploadedFilesParams, SendMessageParams, SkyforgeAgentRunEventEnvelope, SkyforgeChatMessageDto, SkyforgeChatMessageResponse, SkyforgeChatStateResponse, SkyforgeChatUploadedFileContextDto, SkyforgeChatUploadedFileListResponse, SkyforgeChatUploadedFileUploadResponse, SkyforgeClientOptions, SkyforgeFetch, StreamAgentRunEventsParams, SubmitHumanActionParams, UploadFileParams, } from "./types.js";
|
|
4
|
+
export type { CancelAgentRunParams, CancelAgentRunResponse, DeleteUploadedFileParams, GetAgentRunSourceReferencesParams, GetAgentBranchStateParams, HumanActionRequestDto, JsonObject, JsonValue, ListChatsParams, ListUploadedFilesParams, LookupAgentRunRequestParams, SendMessageParams, RagSourceReference, SkyforgeAgentRunEventEnvelope, SkyforgeAgentRunRequestLookupResponse, SkyforgeChatActiveRunDto, SkyforgeChatListItem, SkyforgeChatListResponse, SkyforgeChatMessageDto, SkyforgeChatMessageResponse, SkyforgeChatSourceReferencesResponse, SkyforgeChatStateResponse, SkyforgeChatUploadedFileContextDto, SkyforgeChatUploadedFileListResponse, SkyforgeChatUploadedFileUploadResponse, SkyforgeClientOptions, SkyforgeFetch, StreamAgentRunEventsParams, SubmitHumanActionParams, UploadFileParams, } from "./types.js";
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,YAAY,EACV,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,EACrB,UAAU,EACV,SAAS,EACT,uBAAuB,EACvB,iBAAiB,EACjB,6BAA6B,EAC7B,sBAAsB,EACtB,2BAA2B,EAC3B,yBAAyB,EACzB,kCAAkC,EAClC,oCAAoC,EACpC,sCAAsC,EACtC,qBAAqB,EACrB,aAAa,EACb,0BAA0B,EAC1B,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,YAAY,EACV,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,iCAAiC,EACjC,yBAAyB,EACzB,qBAAqB,EACrB,UAAU,EACV,SAAS,EACT,eAAe,EACf,uBAAuB,EACvB,2BAA2B,EAC3B,iBAAiB,EACjB,kBAAkB,EAClB,6BAA6B,EAC7B,qCAAqC,EACrC,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,2BAA2B,EAC3B,oCAAoC,EACpC,yBAAyB,EACzB,kCAAkC,EAClC,oCAAoC,EACpC,sCAAsC,EACtC,qBAAqB,EACrB,aAAa,EACb,0BAA0B,EAC1B,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,YAAY,CAAC"}
|
package/dist/routes.d.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
export declare function joinSkyforgeApiPath(apiBaseUrl: string, path: string): string;
|
|
2
|
-
export declare function chatStateUrl(apiBaseUrl: string, agentBranchId: string, chatId?: string): string;
|
|
2
|
+
export declare function chatStateUrl(apiBaseUrl: string, agentBranchId: string, chatId?: string, externalId?: string): string;
|
|
3
|
+
export declare function requestLookupUrl(apiBaseUrl: string, agentBranchId: string, requestId: string): string;
|
|
4
|
+
export declare function agentRunCancelUrl(apiBaseUrl: string, agentRunId: string): string;
|
|
5
|
+
export declare function chatListUrl(apiBaseUrl: string, agentId: string, agentBranchId?: string, chatId?: string, externalId?: string, limit?: number, cursor?: string): string;
|
|
3
6
|
export declare function sendMessageUrl(apiBaseUrl: string, agentBranchId: string): string;
|
|
4
7
|
export declare function humanActionSubmitUrl(apiBaseUrl: string, humanActionRequestId: string): string;
|
|
5
8
|
export declare function runEventStreamUrl(apiBaseUrl: string, agentRunId: string, afterSequence?: number): string;
|
|
9
|
+
export declare function sourceReferencesUrl(apiBaseUrl: string, agentRunId: string): string;
|
|
6
10
|
export declare function uploadedFilesUrl(apiBaseUrl: string, agentBranchId: string, chatId?: string): string;
|
|
7
11
|
export declare function uploadedFileDeleteUrl(apiBaseUrl: string, agentBranchId: string, fileContextId: string, chatId: string): string;
|
|
8
12
|
//# sourceMappingURL=routes.d.ts.map
|
package/dist/routes.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"AAIA,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAa5E;AAUD,wBAAgB,YAAY,CAC1B,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,CAQR;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAKhF;AAED,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,EAClB,oBAAoB,EAAE,MAAM,GAC3B,MAAM,CAKR;AAED,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,MAAM,CAQR;AAED,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,CAQR;AAED,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,GACb,MAAM,CAQR"}
|
|
1
|
+
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"AAIA,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAa5E;AAUD,wBAAgB,YAAY,CAC1B,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,MAAM,CAAC,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CAQR;AAED,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,GAChB,MAAM,CAKR;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAKhF;AAED,wBAAgB,WAAW,CACzB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,MAAM,EACtB,MAAM,CAAC,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,CAQR;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAKhF;AAED,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,EAClB,oBAAoB,EAAE,MAAM,GAC3B,MAAM,CAKR;AAED,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,MAAM,CAQR;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAKlF;AAED,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,CAQR;AAED,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,GACb,MAAM,CAQR"}
|
package/dist/routes.js
CHANGED
|
@@ -20,8 +20,17 @@ function appendQuery(url, query) {
|
|
|
20
20
|
.map(([key, value]) => `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`);
|
|
21
21
|
return parts.length === 0 ? url : `${url}?${parts.join("&")}`;
|
|
22
22
|
}
|
|
23
|
-
export function chatStateUrl(apiBaseUrl, agentBranchId, chatId) {
|
|
24
|
-
return appendQuery(joinSkyforgeApiPath(apiBaseUrl, `/api/skyforge-chat/agent_branches/${encodeURIComponent(agentBranchId)}/state`), { chat_id: chatId });
|
|
23
|
+
export function chatStateUrl(apiBaseUrl, agentBranchId, chatId, externalId) {
|
|
24
|
+
return appendQuery(joinSkyforgeApiPath(apiBaseUrl, `/api/skyforge-chat/agent_branches/${encodeURIComponent(agentBranchId)}/state`), { chat_id: chatId, external_id: externalId });
|
|
25
|
+
}
|
|
26
|
+
export function requestLookupUrl(apiBaseUrl, agentBranchId, requestId) {
|
|
27
|
+
return joinSkyforgeApiPath(apiBaseUrl, `/api/skyforge-chat/agent_branches/${encodeURIComponent(agentBranchId)}/requests/${encodeURIComponent(requestId)}`);
|
|
28
|
+
}
|
|
29
|
+
export function agentRunCancelUrl(apiBaseUrl, agentRunId) {
|
|
30
|
+
return joinSkyforgeApiPath(apiBaseUrl, `/api/agent_runs/${encodeURIComponent(agentRunId)}/cancel`);
|
|
31
|
+
}
|
|
32
|
+
export function chatListUrl(apiBaseUrl, agentId, agentBranchId, chatId, externalId, limit, cursor) {
|
|
33
|
+
return appendQuery(joinSkyforgeApiPath(apiBaseUrl, `/api/skyforge-chat/agents/${encodeURIComponent(agentId)}/chats`), { agent_branch_id: agentBranchId, chat_id: chatId, external_id: externalId, limit, cursor });
|
|
25
34
|
}
|
|
26
35
|
export function sendMessageUrl(apiBaseUrl, agentBranchId) {
|
|
27
36
|
return joinSkyforgeApiPath(apiBaseUrl, `/api/skyforge-chat/agent_branches/${encodeURIComponent(agentBranchId)}/messages`);
|
|
@@ -32,6 +41,9 @@ export function humanActionSubmitUrl(apiBaseUrl, humanActionRequestId) {
|
|
|
32
41
|
export function runEventStreamUrl(apiBaseUrl, agentRunId, afterSequence) {
|
|
33
42
|
return appendQuery(joinSkyforgeApiPath(apiBaseUrl, `/api/skyforge-chat/agent_runs/${encodeURIComponent(agentRunId)}/events`), { after_sequence: afterSequence });
|
|
34
43
|
}
|
|
44
|
+
export function sourceReferencesUrl(apiBaseUrl, agentRunId) {
|
|
45
|
+
return joinSkyforgeApiPath(apiBaseUrl, `/api/skyforge-chat/agent_runs/${encodeURIComponent(agentRunId)}/source-references`);
|
|
46
|
+
}
|
|
35
47
|
export function uploadedFilesUrl(apiBaseUrl, agentBranchId, chatId) {
|
|
36
48
|
return appendQuery(joinSkyforgeApiPath(apiBaseUrl, `/api/skyforge-chat/agent_branches/${encodeURIComponent(agentBranchId)}/uploaded-files`), { chat_id: chatId });
|
|
37
49
|
}
|
package/dist/routes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"AAAA,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,UAAkB,EAAE,IAAY;IAClE,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5C,IAAI,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAEzC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,IAAI,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,cAAc,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvD,CAAC;aAAM,IAAI,cAAc,KAAK,MAAM,EAAE,CAAC;YACrC,cAAc,GAAG,EAAE,CAAC;QACtB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,cAAc,EAAE,CAAC;AACzE,CAAC;AAED,SAAS,WAAW,CAAC,GAAW,EAAE,KAAkD;IAClF,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;SAChC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC;SAC1C,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;IAE5F,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,UAAkB,EAClB,aAAqB,EACrB,MAAe;
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"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"}
|
package/dist/sse.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../src/sse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../src/sse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAIhE,wBAAuB,wBAAwB,CAC7C,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,GACtC,aAAa,CAAC,6BAA6B,CAAC,CA8C9C"}
|
package/dist/sse.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
const MAX_SSE_EVENT_CHARACTERS = 1024 * 1024;
|
|
1
2
|
export async function* parseSkyforgeEventStream(body) {
|
|
2
3
|
if (body === null) {
|
|
3
|
-
|
|
4
|
+
throw new Error("Skyforge event stream response did not include a body.");
|
|
4
5
|
}
|
|
5
6
|
const reader = body.getReader();
|
|
6
7
|
const decoder = new TextDecoder();
|
|
@@ -16,7 +17,9 @@ export async function* parseSkyforgeEventStream(body) {
|
|
|
16
17
|
buffer += decoder.decode(value, { stream: true });
|
|
17
18
|
const events = drainEvents(buffer);
|
|
18
19
|
buffer = events.remainder;
|
|
20
|
+
assertEventSize(buffer);
|
|
19
21
|
for (const event of events.blocks) {
|
|
22
|
+
assertEventSize(event);
|
|
20
23
|
const parsed = parseEventBlock(event);
|
|
21
24
|
if (parsed !== undefined) {
|
|
22
25
|
yield parsed;
|
|
@@ -25,6 +28,7 @@ export async function* parseSkyforgeEventStream(body) {
|
|
|
25
28
|
}
|
|
26
29
|
buffer += decoder.decode();
|
|
27
30
|
if (buffer.trim().length > 0) {
|
|
31
|
+
assertEventSize(buffer);
|
|
28
32
|
const parsed = parseEventBlock(buffer);
|
|
29
33
|
if (parsed !== undefined) {
|
|
30
34
|
yield parsed;
|
|
@@ -38,6 +42,11 @@ export async function* parseSkyforgeEventStream(body) {
|
|
|
38
42
|
reader.releaseLock();
|
|
39
43
|
}
|
|
40
44
|
}
|
|
45
|
+
function assertEventSize(value) {
|
|
46
|
+
if (value.length > MAX_SSE_EVENT_CHARACTERS) {
|
|
47
|
+
throw new Error("Skyforge event stream event exceeded the 1 MiB safety limit.");
|
|
48
|
+
}
|
|
49
|
+
}
|
|
41
50
|
function drainEvents(buffer) {
|
|
42
51
|
const normalized = buffer.replace(/\r\n/g, "\n");
|
|
43
52
|
const parts = normalized.split("\n\n");
|
package/dist/sse.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sse.js","sourceRoot":"","sources":["../src/sse.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,wBAAwB,CAC7C,IAAuC;IAEvC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,
|
|
1
|
+
{"version":3,"file":"sse.js","sourceRoot":"","sources":["../src/sse.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -15,6 +15,15 @@ export interface RequestOptions {
|
|
|
15
15
|
export interface GetAgentBranchStateParams extends RequestOptions {
|
|
16
16
|
agentBranchId: string;
|
|
17
17
|
chatId?: string;
|
|
18
|
+
externalId?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface ListChatsParams extends RequestOptions {
|
|
21
|
+
agentId: string;
|
|
22
|
+
agentBranchId?: string;
|
|
23
|
+
chatId?: string;
|
|
24
|
+
externalId?: string;
|
|
25
|
+
limit?: number;
|
|
26
|
+
cursor?: string;
|
|
18
27
|
}
|
|
19
28
|
export interface SkyforgeChatRetrievalScopeRequest {
|
|
20
29
|
context_ids?: string[];
|
|
@@ -23,7 +32,10 @@ export interface SkyforgeChatRetrievalScopeRequest {
|
|
|
23
32
|
export interface SendMessageParams extends RequestOptions {
|
|
24
33
|
agentBranchId: string;
|
|
25
34
|
message: string;
|
|
35
|
+
activeOrganizationId?: string;
|
|
26
36
|
chatId?: string;
|
|
37
|
+
requestId?: string;
|
|
38
|
+
externalId?: string;
|
|
27
39
|
retriedFromAgentRunId?: string;
|
|
28
40
|
sourceUserMessageId?: string;
|
|
29
41
|
structuredContext?: JsonObject;
|
|
@@ -33,9 +45,22 @@ export interface StreamAgentRunEventsParams extends RequestOptions {
|
|
|
33
45
|
agentRunId: string;
|
|
34
46
|
afterSequence?: number;
|
|
35
47
|
}
|
|
48
|
+
export interface GetAgentRunSourceReferencesParams extends RequestOptions {
|
|
49
|
+
agentRunId: string;
|
|
50
|
+
}
|
|
51
|
+
export interface LookupAgentRunRequestParams extends RequestOptions {
|
|
52
|
+
agentBranchId: string;
|
|
53
|
+
requestId: string;
|
|
54
|
+
}
|
|
55
|
+
export interface CancelAgentRunParams extends RequestOptions {
|
|
56
|
+
agentRunId: string;
|
|
57
|
+
reason?: string;
|
|
58
|
+
}
|
|
36
59
|
export interface SubmitHumanActionParams extends RequestOptions {
|
|
37
60
|
humanActionRequestId: string;
|
|
38
61
|
values: JsonValue;
|
|
62
|
+
requestId?: string;
|
|
63
|
+
activeOrganizationId?: string;
|
|
39
64
|
}
|
|
40
65
|
export interface ListUploadedFilesParams extends RequestOptions {
|
|
41
66
|
agentBranchId: string;
|
|
@@ -60,6 +85,18 @@ export interface SkyforgeSuccessResponse<T> {
|
|
|
60
85
|
}
|
|
61
86
|
export type AgentRuntimeMode = "turn_based" | "run_based" | string;
|
|
62
87
|
export type SkyforgeChatMessageRole = "assistant" | "user" | "system" | "tool" | "error" | string;
|
|
88
|
+
export interface RagSourceReference {
|
|
89
|
+
source_label: string;
|
|
90
|
+
display_label: string;
|
|
91
|
+
display_order: number;
|
|
92
|
+
snippet?: string | null;
|
|
93
|
+
source_type: string;
|
|
94
|
+
freshness_status?: string | null;
|
|
95
|
+
context_id?: string | null;
|
|
96
|
+
context_release_id?: string | null;
|
|
97
|
+
embedding_id?: string | null;
|
|
98
|
+
message_id?: string | null;
|
|
99
|
+
}
|
|
63
100
|
export interface SkyforgeChatMessageDto {
|
|
64
101
|
id: string;
|
|
65
102
|
role: SkyforgeChatMessageRole;
|
|
@@ -69,6 +106,7 @@ export interface SkyforgeChatMessageDto {
|
|
|
69
106
|
group_id?: string | null;
|
|
70
107
|
is_displayable?: boolean;
|
|
71
108
|
agent_run_id?: string | null;
|
|
109
|
+
source_references?: RagSourceReference[];
|
|
72
110
|
[key: string]: unknown;
|
|
73
111
|
}
|
|
74
112
|
export interface HumanActionRequestDto {
|
|
@@ -99,20 +137,47 @@ export interface SkyforgeChatStateResponse {
|
|
|
99
137
|
agent_branch_id: string;
|
|
100
138
|
runtime_mode: AgentRuntimeMode;
|
|
101
139
|
chat_id?: string | null;
|
|
140
|
+
external_id?: string | null;
|
|
102
141
|
can_send_messages: boolean;
|
|
103
142
|
start_message?: string | null;
|
|
104
143
|
messages: SkyforgeChatMessageDto[];
|
|
105
144
|
latest_agent_run_id?: string | null;
|
|
145
|
+
active_run?: SkyforgeChatActiveRunDto | null;
|
|
106
146
|
agent_title?: string | null;
|
|
107
147
|
agent_subtitle?: string | null;
|
|
108
148
|
pending_human_actions?: HumanActionRequestDto[];
|
|
109
149
|
[key: string]: unknown;
|
|
110
150
|
}
|
|
151
|
+
export interface SkyforgeChatListItem {
|
|
152
|
+
chat_id: string;
|
|
153
|
+
agent_id: string;
|
|
154
|
+
agent_branch_id: string;
|
|
155
|
+
agent_branch_name: string;
|
|
156
|
+
external_id?: string | null;
|
|
157
|
+
chat_title?: string | null;
|
|
158
|
+
created_at: string;
|
|
159
|
+
updated_at: string;
|
|
160
|
+
[key: string]: unknown;
|
|
161
|
+
}
|
|
162
|
+
export interface SkyforgeChatListResponse {
|
|
163
|
+
chats: SkyforgeChatListItem[];
|
|
164
|
+
nextCursor?: string | null;
|
|
165
|
+
}
|
|
166
|
+
export interface SkyforgeChatActiveRunDto {
|
|
167
|
+
agent_run_id: string;
|
|
168
|
+
status: "running" | "completed" | "failed";
|
|
169
|
+
runtime_mode: AgentRuntimeMode;
|
|
170
|
+
started_at: string;
|
|
171
|
+
has_terminal_message: boolean;
|
|
172
|
+
[key: string]: unknown;
|
|
173
|
+
}
|
|
111
174
|
export interface SkyforgeChatMessageResponse {
|
|
112
175
|
runtime_mode: AgentRuntimeMode;
|
|
113
176
|
chat_id: string;
|
|
177
|
+
external_id?: string | null;
|
|
114
178
|
chat_title?: string | null;
|
|
115
179
|
agent_run_id?: string | null;
|
|
180
|
+
request_id?: string | null;
|
|
116
181
|
source_user_message_id?: string | null;
|
|
117
182
|
retried_from_agent_run_id?: string | null;
|
|
118
183
|
messages: SkyforgeChatMessageDto[];
|
|
@@ -120,6 +185,22 @@ export interface SkyforgeChatMessageResponse {
|
|
|
120
185
|
terminal: boolean;
|
|
121
186
|
[key: string]: unknown;
|
|
122
187
|
}
|
|
188
|
+
export interface SkyforgeAgentRunRequestLookupResponse {
|
|
189
|
+
request_id: string;
|
|
190
|
+
agent_run_id: string;
|
|
191
|
+
chat_id: string;
|
|
192
|
+
agent_branch_id: string;
|
|
193
|
+
status: "running" | "completed" | "failed" | string;
|
|
194
|
+
delivery_mode: "synchronous" | "asynchronous" | string;
|
|
195
|
+
terminal: boolean;
|
|
196
|
+
external_id?: string | null;
|
|
197
|
+
}
|
|
198
|
+
export interface CancelAgentRunResponse {
|
|
199
|
+
agent_run_id: string;
|
|
200
|
+
cancellation_requested: boolean;
|
|
201
|
+
terminal: boolean;
|
|
202
|
+
status: "running" | "completed" | "failed" | string;
|
|
203
|
+
}
|
|
123
204
|
export interface SkyforgeChatUploadedFileContextDto {
|
|
124
205
|
id: string;
|
|
125
206
|
chat_id: string;
|
|
@@ -157,4 +238,8 @@ export interface SkyforgeAgentRunEventEnvelope {
|
|
|
157
238
|
event: JsonObject;
|
|
158
239
|
[key: string]: unknown;
|
|
159
240
|
}
|
|
241
|
+
export interface SkyforgeChatSourceReferencesResponse {
|
|
242
|
+
agent_run_id: string;
|
|
243
|
+
source_references: RagSourceReference[];
|
|
244
|
+
}
|
|
160
245
|
//# sourceMappingURL=types.d.ts.map
|