@sapiom/tools 0.6.1 → 0.7.0
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 +14 -0
- package/README.md +16 -11
- package/dist/cjs/_client/index.d.ts +40 -5
- package/dist/cjs/_client/index.d.ts.map +1 -1
- package/dist/cjs/_client/index.js +21 -8
- package/dist/cjs/_client/index.js.map +1 -1
- package/dist/cjs/agent/index.d.ts.map +1 -1
- package/dist/cjs/agent/index.js +2 -3
- package/dist/cjs/agent/index.js.map +1 -1
- package/dist/cjs/client.d.ts +20 -1
- package/dist/cjs/client.d.ts.map +1 -1
- package/dist/cjs/client.js +8 -0
- package/dist/cjs/client.js.map +1 -1
- package/dist/cjs/content-generation/index.d.ts +55 -3
- package/dist/cjs/content-generation/index.d.ts.map +1 -1
- package/dist/cjs/content-generation/index.js +76 -4
- package/dist/cjs/content-generation/index.js.map +1 -1
- package/dist/cjs/index.d.ts +3 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +4 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/search/errors.d.ts +16 -0
- package/dist/cjs/search/errors.d.ts.map +1 -0
- package/dist/cjs/search/errors.js +36 -0
- package/dist/cjs/search/errors.js.map +1 -0
- package/dist/cjs/search/index.d.ts +105 -0
- package/dist/cjs/search/index.d.ts.map +1 -0
- package/dist/cjs/search/index.js +129 -0
- package/dist/cjs/search/index.js.map +1 -0
- package/dist/cjs/stub/index.d.ts.map +1 -1
- package/dist/cjs/stub/index.js +39 -1
- package/dist/cjs/stub/index.js.map +1 -1
- package/dist/esm/_client/index.d.ts +40 -5
- package/dist/esm/_client/index.d.ts.map +1 -1
- package/dist/esm/_client/index.js +21 -8
- package/dist/esm/_client/index.js.map +1 -1
- package/dist/esm/agent/index.d.ts.map +1 -1
- package/dist/esm/agent/index.js +2 -3
- package/dist/esm/agent/index.js.map +1 -1
- package/dist/esm/client.d.ts +20 -1
- package/dist/esm/client.d.ts.map +1 -1
- package/dist/esm/client.js +8 -0
- package/dist/esm/client.js.map +1 -1
- package/dist/esm/content-generation/index.d.ts +55 -3
- package/dist/esm/content-generation/index.d.ts.map +1 -1
- package/dist/esm/content-generation/index.js +74 -3
- package/dist/esm/content-generation/index.js.map +1 -1
- package/dist/esm/index.d.ts +3 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +3 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/search/errors.d.ts +16 -0
- package/dist/esm/search/errors.d.ts.map +1 -0
- package/dist/esm/search/errors.js +31 -0
- package/dist/esm/search/errors.js.map +1 -0
- package/dist/esm/search/index.d.ts +105 -0
- package/dist/esm/search/index.d.ts.map +1 -0
- package/dist/esm/search/index.js +124 -0
- package/dist/esm/search/index.js.map +1 -0
- package/dist/esm/stub/index.d.ts.map +1 -1
- package/dist/esm/stub/index.js +39 -1
- package/dist/esm/stub/index.js.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +6 -1
- package/src/content-generation/README.md +23 -2
- package/src/search/README.md +126 -0
package/dist/cjs/index.js
CHANGED
|
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.ContentGenerationHttpError = exports.contentGeneration = exports.FileStorageHttpError = exports.fileStorage = exports.OrchestrationResultSchemaError = exports.orchestrationResultSchema = exports.ORCHESTRATIONS_RESULT_SIGNAL = exports.orchestrations = exports.EXECUTION_ENVIRONMENT_BLAXEL_SANDBOX = exports.toResumePayload = exports.CodingResultSchemaError = exports.codingResultSchema = exports.CODING_RESULT_SIGNAL = exports.agent = exports.Repository = exports.repositories = exports.Sandbox = exports.sandboxes = exports.createClientFromEnv = exports.createClient = void 0;
|
|
36
|
+
exports.SearchHttpError = exports.search = exports.ContentGenerationHttpError = exports.contentGeneration = exports.FileStorageHttpError = exports.fileStorage = exports.OrchestrationResultSchemaError = exports.orchestrationResultSchema = exports.ORCHESTRATIONS_RESULT_SIGNAL = exports.orchestrations = exports.EXECUTION_ENVIRONMENT_BLAXEL_SANDBOX = exports.toResumePayload = exports.CodingResultSchemaError = exports.codingResultSchema = exports.CODING_RESULT_SIGNAL = exports.agent = exports.Repository = exports.repositories = exports.Sandbox = exports.sandboxes = exports.createClientFromEnv = exports.createClient = void 0;
|
|
37
37
|
/**
|
|
38
38
|
* `@sapiom/tools` — the typed Sapiom capability client.
|
|
39
39
|
*
|
|
@@ -81,4 +81,7 @@ Object.defineProperty(exports, "FileStorageHttpError", { enumerable: true, get:
|
|
|
81
81
|
exports.contentGeneration = __importStar(require("./content-generation/index.js"));
|
|
82
82
|
var index_js_8 = require("./content-generation/index.js");
|
|
83
83
|
Object.defineProperty(exports, "ContentGenerationHttpError", { enumerable: true, get: function () { return index_js_8.ContentGenerationHttpError; } });
|
|
84
|
+
exports.search = __importStar(require("./search/index.js"));
|
|
85
|
+
var index_js_9 = require("./search/index.js");
|
|
86
|
+
Object.defineProperty(exports, "SearchHttpError", { enumerable: true, get: function () { return index_js_9.SearchHttpError; } });
|
|
84
87
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;GAYG;AACH,yCAAgE;AAAvD,yGAAA,YAAY,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAQ1C,kEAAkD;AAClD,iDAA+C;AAAtC,mGAAA,OAAO,OAAA;AAEhB,wEAAwD;AACxD,oDAAqD;AAA5C,sGAAA,UAAU,OAAA;AAEnB,0DAA0C;AAC1C,iFAAiF;AACjF,6CAAwD;AAA/C,gHAAA,oBAAoB,OAAA;AAO7B,+EAA+E;AAC/E,2CAA2C;AAC3C,6CAK0B;AAJxB,8GAAA,kBAAkB,OAAA;AAClB,mHAAA,uBAAuB,OAAA;AACvB,2GAAA,eAAe,OAAA;AACf,gIAAA,oCAAoC,OAAA;AAGtC,4EAA4D;AAC5D,iFAAiF;AACjF,sDAAyE;AAAhE,wHAAA,4BAA4B,OAAA;AAIrC,oEAAoE;AACpE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;GAYG;AACH,yCAAgE;AAAvD,yGAAA,YAAY,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAQ1C,kEAAkD;AAClD,iDAA+C;AAAtC,mGAAA,OAAO,OAAA;AAEhB,wEAAwD;AACxD,oDAAqD;AAA5C,sGAAA,UAAU,OAAA;AAEnB,0DAA0C;AAC1C,iFAAiF;AACjF,6CAAwD;AAA/C,gHAAA,oBAAoB,OAAA;AAO7B,+EAA+E;AAC/E,2CAA2C;AAC3C,6CAK0B;AAJxB,8GAAA,kBAAkB,OAAA;AAClB,mHAAA,uBAAuB,OAAA;AACvB,2GAAA,eAAe,OAAA;AACf,gIAAA,oCAAoC,OAAA;AAGtC,4EAA4D;AAC5D,iFAAiF;AACjF,sDAAyE;AAAhE,wHAAA,4BAA4B,OAAA;AAIrC,oEAAoE;AACpE,sDAGmC;AAFjC,qHAAA,yBAAyB,OAAA;AACzB,0HAAA,8BAA8B,OAAA;AAGhC,uEAAuD;AACvD,oDAA+D;AAAtD,gHAAA,oBAAoB,OAAA;AAE7B,mFAAmE;AACnE,0DAA2E;AAAlE,sHAAA,0BAA0B,OAAA;AAEnC,4DAA4C;AAC5C,8CAAoD;AAA3C,2GAAA,eAAe,OAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error thrown by the `search` capability when a request fails (non-2xx
|
|
3
|
+
* response). Exposes `status` (HTTP status code) and `body` (parsed JSON body, or
|
|
4
|
+
* raw text when the body isn't JSON) for programmatic inspection.
|
|
5
|
+
*/
|
|
6
|
+
export declare class SearchHttpError extends Error {
|
|
7
|
+
readonly status: number;
|
|
8
|
+
readonly body: unknown;
|
|
9
|
+
constructor(message: string, status: number, body: unknown);
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Return the response when 2xx, otherwise throw a {@link SearchHttpError}.
|
|
13
|
+
* Parses the error body as JSON when possible; falls back to raw text.
|
|
14
|
+
*/
|
|
15
|
+
export declare function ensureOk(response: Response, errorPrefix: string): Promise<Response>;
|
|
16
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/search/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;gBAEX,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO;CAM3D;AAED;;;GAGG;AACH,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,QAAQ,CAAC,CAcnB"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SearchHttpError = void 0;
|
|
4
|
+
exports.ensureOk = ensureOk;
|
|
5
|
+
/**
|
|
6
|
+
* Error thrown by the `search` capability when a request fails (non-2xx
|
|
7
|
+
* response). Exposes `status` (HTTP status code) and `body` (parsed JSON body, or
|
|
8
|
+
* raw text when the body isn't JSON) for programmatic inspection.
|
|
9
|
+
*/
|
|
10
|
+
class SearchHttpError extends Error {
|
|
11
|
+
constructor(message, status, body) {
|
|
12
|
+
super(message);
|
|
13
|
+
this.name = "SearchHttpError";
|
|
14
|
+
this.status = status;
|
|
15
|
+
this.body = body;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.SearchHttpError = SearchHttpError;
|
|
19
|
+
/**
|
|
20
|
+
* Return the response when 2xx, otherwise throw a {@link SearchHttpError}.
|
|
21
|
+
* Parses the error body as JSON when possible; falls back to raw text.
|
|
22
|
+
*/
|
|
23
|
+
async function ensureOk(response, errorPrefix) {
|
|
24
|
+
if (response.ok)
|
|
25
|
+
return response;
|
|
26
|
+
let body;
|
|
27
|
+
const text = await response.text().catch(() => "");
|
|
28
|
+
try {
|
|
29
|
+
body = JSON.parse(text);
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
body = text;
|
|
33
|
+
}
|
|
34
|
+
throw new SearchHttpError(`${errorPrefix}: ${response.status} ${text}`, response.status, body);
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/search/errors.ts"],"names":[],"mappings":";;;AAqBA,4BAiBC;AAtCD;;;;GAIG;AACH,MAAa,eAAgB,SAAQ,KAAK;IAIxC,YAAY,OAAe,EAAE,MAAc,EAAE,IAAa;QACxD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAVD,0CAUC;AAED;;;GAGG;AACI,KAAK,UAAU,QAAQ,CAC5B,QAAkB,EAClB,WAAmB;IAEnB,IAAI,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC;IACjC,IAAI,IAAa,CAAC;IAClB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACnD,IAAI,CAAC;QACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,GAAG,IAAI,CAAC;IACd,CAAC;IACD,MAAM,IAAI,eAAe,CACvB,GAAG,WAAW,KAAK,QAAQ,CAAC,MAAM,IAAI,IAAI,EAAE,EAC5C,QAAQ,CAAC,MAAM,EACf,IAAI,CACL,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `search` capability — find information across the web and beyond.
|
|
3
|
+
*
|
|
4
|
+
* This is the home for Sapiom's search primitives: searching the web, reading the
|
|
5
|
+
* contents of a page, and looking up professional email addresses. Today it
|
|
6
|
+
* offers `webSearch` (search the web) and `scrape` (read a page); more operations
|
|
7
|
+
* follow.
|
|
8
|
+
*
|
|
9
|
+
* import { search } from "@sapiom/tools"; // ambient auth
|
|
10
|
+
* const hits = await search.webSearch({ query: "what is an LLM agent?" });
|
|
11
|
+
* hits.answer; // a synthesized answer
|
|
12
|
+
* const page = await search.scrape({ url: "https://example.com" });
|
|
13
|
+
* page.markdown; // the page content as markdown
|
|
14
|
+
*
|
|
15
|
+
* Or via an explicit client: `createClient({ apiKey }).search.webSearch(...)`.
|
|
16
|
+
*
|
|
17
|
+
* Failed requests throw {@link SearchHttpError} (carries `status` + parsed `body`).
|
|
18
|
+
*/
|
|
19
|
+
import { Transport } from "../_client/index.js";
|
|
20
|
+
import { SearchHttpError } from "./errors.js";
|
|
21
|
+
export { SearchHttpError };
|
|
22
|
+
/** Output formats `scrape` can return. Defaults to `["markdown"]`. */
|
|
23
|
+
export type ScrapeFormat = "markdown" | "html" | "rawHtml" | "screenshot" | "links";
|
|
24
|
+
export interface ScrapeInput {
|
|
25
|
+
/** URL of the page to read. */
|
|
26
|
+
url: string;
|
|
27
|
+
/** Which content formats to return. Defaults to `["markdown"]`. */
|
|
28
|
+
formats?: ScrapeFormat[];
|
|
29
|
+
/** Return only the main content, dropping nav/header/footer/ads. */
|
|
30
|
+
onlyMainContent?: boolean;
|
|
31
|
+
/** Milliseconds to wait before reading (for content rendered by JavaScript). */
|
|
32
|
+
waitFor?: number;
|
|
33
|
+
}
|
|
34
|
+
export interface ScrapeMetadata {
|
|
35
|
+
/** Page title. */
|
|
36
|
+
title?: string;
|
|
37
|
+
/** Page description. */
|
|
38
|
+
description?: string;
|
|
39
|
+
/** Detected page language. */
|
|
40
|
+
language?: string;
|
|
41
|
+
/** The URL the content was read from. */
|
|
42
|
+
sourceUrl?: string;
|
|
43
|
+
/** HTTP status code returned while reading the page. */
|
|
44
|
+
statusCode?: number;
|
|
45
|
+
}
|
|
46
|
+
export interface ScrapeResult {
|
|
47
|
+
/** The URL that was read (echoes the input). */
|
|
48
|
+
url: string;
|
|
49
|
+
/** Page content as markdown (present when "markdown" was requested). */
|
|
50
|
+
markdown?: string;
|
|
51
|
+
/** Cleaned HTML (present when "html" was requested). */
|
|
52
|
+
html?: string;
|
|
53
|
+
/** Raw HTML (present when "rawHtml" was requested). */
|
|
54
|
+
rawHtml?: string;
|
|
55
|
+
/** Screenshot URL (present when "screenshot" was requested). */
|
|
56
|
+
screenshot?: string;
|
|
57
|
+
/** Links found on the page (present when "links" was requested). */
|
|
58
|
+
links?: string[];
|
|
59
|
+
/** Page metadata (title, description, language, status, …). */
|
|
60
|
+
metadata: ScrapeMetadata;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Read a page and return its content. By default you get markdown; pass `formats`
|
|
64
|
+
* to also (or instead) get HTML, raw HTML, a screenshot, or the page's links.
|
|
65
|
+
*
|
|
66
|
+
* Works on HTML pages and common documents (PDF, DOCX, TXT). Failed requests throw
|
|
67
|
+
* {@link SearchHttpError}.
|
|
68
|
+
*/
|
|
69
|
+
export declare function scrape(input: ScrapeInput, transport?: Transport, baseUrl?: string): Promise<ScrapeResult>;
|
|
70
|
+
export interface WebSearchInput {
|
|
71
|
+
/** What to search for. */
|
|
72
|
+
query: string;
|
|
73
|
+
/** How thoroughly to search. Defaults to `"standard"`. */
|
|
74
|
+
depth?: "standard" | "deep";
|
|
75
|
+
/**
|
|
76
|
+
* What you want back. `"answer"` (default) returns a synthesized answer plus
|
|
77
|
+
* supporting results; `"links"` returns a list of relevant results.
|
|
78
|
+
*/
|
|
79
|
+
intent?: "answer" | "links";
|
|
80
|
+
}
|
|
81
|
+
export interface WebSearchResult {
|
|
82
|
+
/** Result title. */
|
|
83
|
+
title: string;
|
|
84
|
+
/** Result URL. */
|
|
85
|
+
url: string;
|
|
86
|
+
/** Short excerpt for the result. */
|
|
87
|
+
snippet: string;
|
|
88
|
+
}
|
|
89
|
+
export interface WebSearchResponse {
|
|
90
|
+
/** The query that was searched (echoes the input). */
|
|
91
|
+
query: string;
|
|
92
|
+
/** A synthesized answer, when `intent` is `"answer"`. */
|
|
93
|
+
answer?: string;
|
|
94
|
+
/** The results found for the query. */
|
|
95
|
+
results: WebSearchResult[];
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Search the web. By default you get a synthesized answer plus supporting
|
|
99
|
+
* results; pass `intent: "links"` for a list of relevant results, and
|
|
100
|
+
* `depth: "deep"` for a more thorough search.
|
|
101
|
+
*
|
|
102
|
+
* Failed requests throw {@link SearchHttpError}.
|
|
103
|
+
*/
|
|
104
|
+
export declare function webSearch(input: WebSearchInput, transport?: Transport, baseUrl?: string): Promise<WebSearchResponse>;
|
|
105
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/search/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,SAAS,EAAoB,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,eAAe,EAAY,MAAM,aAAa,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,CAAC;AAU3B,sEAAsE;AACtE,MAAM,MAAM,YAAY,GACpB,UAAU,GACV,MAAM,GACN,SAAS,GACT,YAAY,GACZ,OAAO,CAAC;AAEZ,MAAM,WAAW,WAAW;IAC1B,+BAA+B;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,mEAAmE;IACnE,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,oEAAoE;IACpE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gFAAgF;IAChF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,kBAAkB;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,gDAAgD;IAChD,GAAG,EAAE,MAAM,CAAC;IACZ,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,+DAA+D;IAC/D,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAkED;;;;;;GAMG;AACH,wBAAsB,MAAM,CAC1B,KAAK,EAAE,WAAW,EAClB,SAAS,GAAE,SAA8B,EACzC,OAAO,SAAmB,GACzB,OAAO,CAAC,YAAY,CAAC,CAkBvB;AAID,MAAM,WAAW,cAAc;IAC7B,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,KAAK,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC5B;;;OAGG;IACH,MAAM,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,sDAAsD;IACtD,KAAK,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,OAAO,EAAE,eAAe,EAAE,CAAC;CAC5B;AAyCD;;;;;;GAMG;AACH,wBAAsB,SAAS,CAC7B,KAAK,EAAE,cAAc,EACrB,SAAS,GAAE,SAA8B,EACzC,OAAO,SAA8B,GACpC,OAAO,CAAC,iBAAiB,CAAC,CAsB5B"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SearchHttpError = void 0;
|
|
4
|
+
exports.scrape = scrape;
|
|
5
|
+
exports.webSearch = webSearch;
|
|
6
|
+
/**
|
|
7
|
+
* `search` capability — find information across the web and beyond.
|
|
8
|
+
*
|
|
9
|
+
* This is the home for Sapiom's search primitives: searching the web, reading the
|
|
10
|
+
* contents of a page, and looking up professional email addresses. Today it
|
|
11
|
+
* offers `webSearch` (search the web) and `scrape` (read a page); more operations
|
|
12
|
+
* follow.
|
|
13
|
+
*
|
|
14
|
+
* import { search } from "@sapiom/tools"; // ambient auth
|
|
15
|
+
* const hits = await search.webSearch({ query: "what is an LLM agent?" });
|
|
16
|
+
* hits.answer; // a synthesized answer
|
|
17
|
+
* const page = await search.scrape({ url: "https://example.com" });
|
|
18
|
+
* page.markdown; // the page content as markdown
|
|
19
|
+
*
|
|
20
|
+
* Or via an explicit client: `createClient({ apiKey }).search.webSearch(...)`.
|
|
21
|
+
*
|
|
22
|
+
* Failed requests throw {@link SearchHttpError} (carries `status` + parsed `body`).
|
|
23
|
+
*/
|
|
24
|
+
const index_js_1 = require("../_client/index.js");
|
|
25
|
+
const errors_js_1 = require("./errors.js");
|
|
26
|
+
Object.defineProperty(exports, "SearchHttpError", { enumerable: true, get: function () { return errors_js_1.SearchHttpError; } });
|
|
27
|
+
const DEFAULT_BASE_URL = process.env.SAPIOM_SCRAPE_URL || "https://firecrawl.services.sapiom.ai";
|
|
28
|
+
const DEFAULT_WEB_SEARCH_BASE_URL = process.env.SAPIOM_SEARCH_URL || "https://api.sapiom.ai";
|
|
29
|
+
/** Collapse a field that may be a single value or an array down to one value. */
|
|
30
|
+
function firstOf(value) {
|
|
31
|
+
return Array.isArray(value) ? value[0] : value;
|
|
32
|
+
}
|
|
33
|
+
function mapMetadata(raw) {
|
|
34
|
+
const meta = raw ?? {};
|
|
35
|
+
const title = firstOf(meta.title);
|
|
36
|
+
const description = firstOf(meta.description);
|
|
37
|
+
// A field a caller didn't ask for comes back null — treat null as absent (`!=`)
|
|
38
|
+
// so the result only carries fields that were actually populated.
|
|
39
|
+
return {
|
|
40
|
+
...(title != null && { title }),
|
|
41
|
+
...(description != null && { description }),
|
|
42
|
+
...(meta.language != null && { language: meta.language }),
|
|
43
|
+
...(meta.sourceURL != null && { sourceUrl: meta.sourceURL }),
|
|
44
|
+
...(meta.statusCode != null && { statusCode: meta.statusCode }),
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
function mapScrape(url, raw) {
|
|
48
|
+
const data = raw.data ?? {};
|
|
49
|
+
// Unrequested formats come back null; treat null as absent (`!=`) so each
|
|
50
|
+
// format field is present only when it was actually returned.
|
|
51
|
+
return {
|
|
52
|
+
url,
|
|
53
|
+
...(data.markdown != null && { markdown: data.markdown }),
|
|
54
|
+
...(data.html != null && { html: data.html }),
|
|
55
|
+
...(data.rawHtml != null && { rawHtml: data.rawHtml }),
|
|
56
|
+
...(data.screenshot != null && { screenshot: data.screenshot }),
|
|
57
|
+
...(data.links != null && { links: data.links }),
|
|
58
|
+
metadata: mapMetadata(data.metadata),
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
// ----- Capability operations -----
|
|
62
|
+
/**
|
|
63
|
+
* Read a page and return its content. By default you get markdown; pass `formats`
|
|
64
|
+
* to also (or instead) get HTML, raw HTML, a screenshot, or the page's links.
|
|
65
|
+
*
|
|
66
|
+
* Works on HTML pages and common documents (PDF, DOCX, TXT). Failed requests throw
|
|
67
|
+
* {@link SearchHttpError}.
|
|
68
|
+
*/
|
|
69
|
+
async function scrape(input, transport = (0, index_js_1.defaultTransport)(), baseUrl = DEFAULT_BASE_URL) {
|
|
70
|
+
// `!= null` so an optional explicitly passed as null (a JS caller bypassing the
|
|
71
|
+
// types) is treated as absent rather than forwarded as a null field.
|
|
72
|
+
const body = { url: input.url };
|
|
73
|
+
if (input.formats != null)
|
|
74
|
+
body.formats = input.formats;
|
|
75
|
+
if (input.onlyMainContent != null)
|
|
76
|
+
body.onlyMainContent = input.onlyMainContent;
|
|
77
|
+
if (input.waitFor != null)
|
|
78
|
+
body.waitFor = input.waitFor;
|
|
79
|
+
const res = await (0, errors_js_1.ensureOk)(await transport.fetch(`${baseUrl}/v2/scrape`, {
|
|
80
|
+
method: "POST",
|
|
81
|
+
headers: { "content-type": "application/json" },
|
|
82
|
+
body: JSON.stringify(body),
|
|
83
|
+
}), "Failed to scrape");
|
|
84
|
+
return mapScrape(input.url, (await res.json()));
|
|
85
|
+
}
|
|
86
|
+
function mapWebSearchResult(raw) {
|
|
87
|
+
return {
|
|
88
|
+
title: raw.title ?? "",
|
|
89
|
+
url: raw.url ?? "",
|
|
90
|
+
snippet: raw.snippet ?? "",
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
function mapWebSearch(query, raw) {
|
|
94
|
+
// Build the result from only the public fields. A defensive measure: any
|
|
95
|
+
// extra top-level field on the wire (e.g. bookkeeping not meant for callers)
|
|
96
|
+
// is dropped by construction rather than spread through.
|
|
97
|
+
const results = Array.isArray(raw.results)
|
|
98
|
+
? raw.results.map(mapWebSearchResult)
|
|
99
|
+
: [];
|
|
100
|
+
return {
|
|
101
|
+
query: raw.query ?? query,
|
|
102
|
+
...(raw.answer != null && { answer: raw.answer }),
|
|
103
|
+
results,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Search the web. By default you get a synthesized answer plus supporting
|
|
108
|
+
* results; pass `intent: "links"` for a list of relevant results, and
|
|
109
|
+
* `depth: "deep"` for a more thorough search.
|
|
110
|
+
*
|
|
111
|
+
* Failed requests throw {@link SearchHttpError}.
|
|
112
|
+
*/
|
|
113
|
+
async function webSearch(input, transport = (0, index_js_1.defaultTransport)(), baseUrl = DEFAULT_WEB_SEARCH_BASE_URL) {
|
|
114
|
+
// `!= null` so an optional explicitly passed as null (a JS caller bypassing the
|
|
115
|
+
// types) is treated as absent rather than forwarded as a null field.
|
|
116
|
+
const body = {
|
|
117
|
+
query: input.query,
|
|
118
|
+
intent: input.intent ?? "answer",
|
|
119
|
+
};
|
|
120
|
+
if (input.depth != null)
|
|
121
|
+
body.depth = input.depth;
|
|
122
|
+
const res = await (0, errors_js_1.ensureOk)(await transport.fetch(`${baseUrl}/v1/capabilities/web.search`, {
|
|
123
|
+
method: "POST",
|
|
124
|
+
headers: { "content-type": "application/json" },
|
|
125
|
+
body: JSON.stringify(body),
|
|
126
|
+
}, { authHeader: "x-api-key" }), "Failed to search the web");
|
|
127
|
+
return mapWebSearch(input.query, (await res.json()));
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/search/index.ts"],"names":[],"mappings":";;;AAuJA,wBAsBC;AAgFD,8BA0BC;AAvRD;;;;;;;;;;;;;;;;;GAiBG;AACH,kDAAkE;AAClE,2CAAwD;AAE/C,gGAFA,2BAAe,OAEA;AAExB,MAAM,gBAAgB,GACpB,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,sCAAsC,CAAC;AAE1E,MAAM,2BAA2B,GAC/B,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,uBAAuB,CAAC;AAgF3D,iFAAiF;AACjF,SAAS,OAAO,CAAI,KAA0B;IAC5C,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACjD,CAAC;AAED,SAAS,WAAW,CAAC,GAA4B;IAC/C,MAAM,IAAI,GAAG,GAAG,IAAI,EAAE,CAAC;IACvB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,gFAAgF;IAChF,kEAAkE;IAClE,OAAO;QACL,GAAG,CAAC,KAAK,IAAI,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;QAC/B,GAAG,CAAC,WAAW,IAAI,IAAI,IAAI,EAAE,WAAW,EAAE,CAAC;QAC3C,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACzD,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;QAC5D,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;KAChE,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,GAAW,EAAE,GAAsB;IACpD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IAC5B,0EAA0E;IAC1E,8DAA8D;IAC9D,OAAO;QACL,GAAG;QACH,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACzD,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7C,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QACtD,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/D,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QAChD,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC;KACrC,CAAC;AACJ,CAAC;AAED,oCAAoC;AAEpC;;;;;;GAMG;AACI,KAAK,UAAU,MAAM,CAC1B,KAAkB,EAClB,YAAuB,IAAA,2BAAgB,GAAE,EACzC,OAAO,GAAG,gBAAgB;IAE1B,gFAAgF;IAChF,qEAAqE;IACrE,MAAM,IAAI,GAA4B,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;IACzD,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI;QAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IACxD,IAAI,KAAK,CAAC,eAAe,IAAI,IAAI;QAC/B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI;QAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAExD,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAQ,EACxB,MAAM,SAAS,CAAC,KAAK,CAAC,GAAG,OAAO,YAAY,EAAE;QAC5C,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,CAAC,EACF,kBAAkB,CACnB,CAAC;IACF,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAsB,CAAC,CAAC;AACvE,CAAC;AAgDD,SAAS,kBAAkB,CAAC,GAAuB;IACjD,OAAO;QACL,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE;QACtB,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE;KAC3B,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CACnB,KAAa,EACb,GAAyB;IAEzB,yEAAyE;IACzE,6EAA6E;IAC7E,yDAAyD;IACzD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;QACxC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;QACrC,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;QACL,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,KAAK;QACzB,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;QACjD,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,SAAS,CAC7B,KAAqB,EACrB,YAAuB,IAAA,2BAAgB,GAAE,EACzC,OAAO,GAAG,2BAA2B;IAErC,gFAAgF;IAChF,qEAAqE;IACrE,MAAM,IAAI,GAA4B;QACpC,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,QAAQ;KACjC,CAAC;IACF,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI;QAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAElD,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAQ,EACxB,MAAM,SAAS,CAAC,KAAK,CACnB,GAAG,OAAO,6BAA6B,EACvC;QACE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,EACD,EAAE,UAAU,EAAE,WAAW,EAAE,CAC5B,EACD,0BAA0B,CAC3B,CAAC;IACF,OAAO,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAyB,CAAC,CAAC;AAC/E,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/stub/index.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/stub/index.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAe3C,4EAA4E;AAC5E,MAAM,MAAM,aAAa,GAAG,MAAM,CAChC,MAAM,EACN,OAAO,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,CAC5C,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B;;;;;OAKG;IACH,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACxB;AA0TD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAE,iBAAsB,GAAG,MAAM,CA0PrE"}
|
package/dist/cjs/stub/index.js
CHANGED
|
@@ -318,7 +318,10 @@ function createStubClient(opts = {}) {
|
|
|
318
318
|
};
|
|
319
319
|
const handle = {
|
|
320
320
|
executionId,
|
|
321
|
-
dispatch: {
|
|
321
|
+
dispatch: {
|
|
322
|
+
correlationId: executionId,
|
|
323
|
+
resultSignal: index_js_2.ORCHESTRATIONS_RESULT_SIGNAL,
|
|
324
|
+
},
|
|
322
325
|
status: () => Promise.resolve("completed"),
|
|
323
326
|
wait: () => Promise.resolve(result),
|
|
324
327
|
};
|
|
@@ -377,6 +380,41 @@ function createStubClient(opts = {}) {
|
|
|
377
380
|
],
|
|
378
381
|
}))),
|
|
379
382
|
},
|
|
383
|
+
video: {
|
|
384
|
+
create: (input) => Promise.resolve(r("contentGeneration.video.create", [input], () => ({
|
|
385
|
+
video: {
|
|
386
|
+
url: "https://content.local/stub-video.mp4",
|
|
387
|
+
contentType: "video/mp4",
|
|
388
|
+
// mirror the real stitch: a fileId only when storage was requested.
|
|
389
|
+
...(input.storage ? { fileId: "stub-file" } : {}),
|
|
390
|
+
},
|
|
391
|
+
}))),
|
|
392
|
+
},
|
|
393
|
+
},
|
|
394
|
+
search: {
|
|
395
|
+
scrape: (input) => Promise.resolve(r("search.scrape", [input], () => ({
|
|
396
|
+
url: input.url,
|
|
397
|
+
markdown: `# ${input.url}\n\n(stub) scraped content`,
|
|
398
|
+
metadata: {
|
|
399
|
+
title: "Stub Page",
|
|
400
|
+
sourceUrl: input.url,
|
|
401
|
+
statusCode: 200,
|
|
402
|
+
},
|
|
403
|
+
}))),
|
|
404
|
+
webSearch: (input) => Promise.resolve(r("search.webSearch", [input], () => ({
|
|
405
|
+
query: input.query,
|
|
406
|
+
// mirror the real shape: an answer for the default intent, omitted for "links".
|
|
407
|
+
...(input.intent === "links"
|
|
408
|
+
? {}
|
|
409
|
+
: { answer: `(stub) answer for "${input.query}"` }),
|
|
410
|
+
results: [
|
|
411
|
+
{
|
|
412
|
+
title: "Stub Result",
|
|
413
|
+
url: "https://example.com",
|
|
414
|
+
snippet: `(stub) result for "${input.query}"`,
|
|
415
|
+
},
|
|
416
|
+
],
|
|
417
|
+
}))),
|
|
380
418
|
},
|
|
381
419
|
withAttribution: () => client,
|
|
382
420
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/stub/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/stub/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,6 +41,31 @@ export interface TransportConfig {
|
|
|
41
41
|
fetch?: typeof globalThis.fetch;
|
|
42
42
|
/** Default attribution applied to every request this transport makes (see class doc). */
|
|
43
43
|
attribution?: Attribution;
|
|
44
|
+
/**
|
|
45
|
+
* Opaque per-execution workflow resume token. Forwarded as the
|
|
46
|
+
* `x-sapiom-workflow-token` header on a coding launch so the gateway can resume
|
|
47
|
+
* the paused step. The SANDBOX runtime injects it ambiently
|
|
48
|
+
* (`SAPIOM_CAPABILITY_RESUME_TOKEN`) and this is left unset; the IN-PROCESS
|
|
49
|
+
* runtime — which must not touch process-global env — passes it explicitly here.
|
|
50
|
+
* When omitted, falls back to the env var, so both runtimes work.
|
|
51
|
+
*/
|
|
52
|
+
resumeToken?: string;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Which header carries the tenant credential. Sapiom has two authenticated
|
|
56
|
+
* surfaces with different conventions: most operations send `x-sapiom-api-key`
|
|
57
|
+
* (the default), while a few send `x-api-key`. A capability that targets the
|
|
58
|
+
* latter passes `authHeader: "x-api-key"`; everything else uses the default.
|
|
59
|
+
* The credential value is the same — the Transport holds it; callers never do.
|
|
60
|
+
*/
|
|
61
|
+
export type AuthHeader = "x-sapiom-api-key" | "x-api-key";
|
|
62
|
+
/** Per-request options the Transport understands, layered over a normal `RequestInit`. */
|
|
63
|
+
export interface TransportRequestOptions {
|
|
64
|
+
/**
|
|
65
|
+
* Which header carries the tenant credential. Defaults to `x-sapiom-api-key`.
|
|
66
|
+
* A capability sets this only when its destination expects a different header.
|
|
67
|
+
*/
|
|
68
|
+
authHeader?: AuthHeader;
|
|
44
69
|
}
|
|
45
70
|
/**
|
|
46
71
|
* Standalone-only ambient attribution. Read once for the process-global default
|
|
@@ -54,11 +79,17 @@ export declare class Transport {
|
|
|
54
79
|
private readonly apiKey;
|
|
55
80
|
private readonly fetchImpl;
|
|
56
81
|
private readonly attribution;
|
|
82
|
+
/**
|
|
83
|
+
* The workflow resume token to forward (see {@link TransportConfig.resumeToken}).
|
|
84
|
+
* Explicit config wins; otherwise the ambient env var, so the sandbox runtime —
|
|
85
|
+
* which injects `SAPIOM_CAPABILITY_RESUME_TOKEN` — keeps working unchanged.
|
|
86
|
+
*/
|
|
87
|
+
readonly resumeToken: string | undefined;
|
|
57
88
|
constructor(config?: TransportConfig);
|
|
58
89
|
/**
|
|
59
|
-
* A new transport sharing this one's credential and
|
|
60
|
-
* merged over the current defaults. The escape hatch for the cases
|
|
61
|
-
* process attributes to many agents/traces (a router) — not something
|
|
90
|
+
* A new transport sharing this one's credential, fetch, and resume token, with
|
|
91
|
+
* `attribution` merged over the current defaults. The escape hatch for the cases
|
|
92
|
+
* where one process attributes to many agents/traces (a router) — not something
|
|
62
93
|
* step-authoring code reaches for.
|
|
63
94
|
*/
|
|
64
95
|
withAttribution(attribution: Attribution): Transport;
|
|
@@ -67,10 +98,14 @@ export declare class Transport {
|
|
|
67
98
|
* response handling (filesystem, log streams) use this and inspect the
|
|
68
99
|
* `Response` themselves. Injects the tenant credential + attribution headers;
|
|
69
100
|
* sets no content-type.
|
|
101
|
+
*
|
|
102
|
+
* The credential rides `x-sapiom-api-key` by default; pass
|
|
103
|
+
* `{ authHeader: "x-api-key" }` for a destination that expects that header
|
|
104
|
+
* instead (the value is identical — the Transport owns the key either way).
|
|
70
105
|
*/
|
|
71
|
-
fetch(url: string, init?: RequestInit): Promise<Response>;
|
|
106
|
+
fetch(url: string, init?: RequestInit, options?: TransportRequestOptions): Promise<Response>;
|
|
72
107
|
/** Authenticated JSON request — parses the body and throws on a non-2xx status. */
|
|
73
|
-
request<T>(url: string, init?: RequestInit): Promise<T>;
|
|
108
|
+
request<T>(url: string, init?: RequestInit, options?: TransportRequestOptions): Promise<T>;
|
|
74
109
|
}
|
|
75
110
|
export declare function defaultTransport(): Transport;
|
|
76
111
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,uFAAuF;IACvF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B,8FAA8F;IAC9F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,yFAAyF;IACzF,WAAW,CAAC,EAAE,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,uFAAuF;IACvF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B,8FAA8F;IAC9F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,yFAAyF;IACzF,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,kBAAkB,GAAG,WAAW,CAAC;AAI1D,0FAA0F;AAC1F,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAYD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,IAAI,WAAW,CAShD;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;IACpD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;gBAE7B,MAAM,GAAE,eAAoB;IAUxC;;;;;OAKG;IACH,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS;IASpD;;;;;;;;;OASG;IACG,KAAK,CACT,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,WAAgB,EACtB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,QAAQ,CAAC;IAiBpB,mFAAmF;IAC7E,OAAO,CAAC,CAAC,EACb,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,WAAgB,EACtB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,CAAC,CAAC;CAmBd;AAID,wBAAgB,gBAAgB,IAAI,SAAS,CAE5C"}
|
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
* attribution argument: that absence keeps LLM-authored step code from setting
|
|
19
19
|
* (and getting wrong) context it doesn't own.
|
|
20
20
|
*/
|
|
21
|
+
const DEFAULT_AUTH_HEADER = "x-sapiom-api-key";
|
|
21
22
|
function attributionToHeaders(a) {
|
|
22
23
|
const h = {};
|
|
23
24
|
if (a.agentName)
|
|
@@ -56,11 +57,15 @@ export class Transport {
|
|
|
56
57
|
this.apiKey = config.apiKey ?? process.env.SAPIOM_API_KEY ?? undefined;
|
|
57
58
|
this.fetchImpl = config.fetch ?? globalThis.fetch;
|
|
58
59
|
this.attribution = config.attribution ?? {};
|
|
60
|
+
this.resumeToken =
|
|
61
|
+
config.resumeToken ??
|
|
62
|
+
process.env.SAPIOM_CAPABILITY_RESUME_TOKEN ??
|
|
63
|
+
undefined;
|
|
59
64
|
}
|
|
60
65
|
/**
|
|
61
|
-
* A new transport sharing this one's credential and
|
|
62
|
-
* merged over the current defaults. The escape hatch for the cases
|
|
63
|
-
* process attributes to many agents/traces (a router) — not something
|
|
66
|
+
* A new transport sharing this one's credential, fetch, and resume token, with
|
|
67
|
+
* `attribution` merged over the current defaults. The escape hatch for the cases
|
|
68
|
+
* where one process attributes to many agents/traces (a router) — not something
|
|
64
69
|
* step-authoring code reaches for.
|
|
65
70
|
*/
|
|
66
71
|
withAttribution(attribution) {
|
|
@@ -68,6 +73,7 @@ export class Transport {
|
|
|
68
73
|
apiKey: this.apiKey,
|
|
69
74
|
fetch: this.fetchImpl,
|
|
70
75
|
attribution: { ...this.attribution, ...attribution },
|
|
76
|
+
resumeToken: this.resumeToken,
|
|
71
77
|
});
|
|
72
78
|
}
|
|
73
79
|
/**
|
|
@@ -75,8 +81,12 @@ export class Transport {
|
|
|
75
81
|
* response handling (filesystem, log streams) use this and inspect the
|
|
76
82
|
* `Response` themselves. Injects the tenant credential + attribution headers;
|
|
77
83
|
* sets no content-type.
|
|
84
|
+
*
|
|
85
|
+
* The credential rides `x-sapiom-api-key` by default; pass
|
|
86
|
+
* `{ authHeader: "x-api-key" }` for a destination that expects that header
|
|
87
|
+
* instead (the value is identical — the Transport owns the key either way).
|
|
78
88
|
*/
|
|
79
|
-
async fetch(url, init = {}) {
|
|
89
|
+
async fetch(url, init = {}, options = {}) {
|
|
80
90
|
if (!this.apiKey) {
|
|
81
91
|
throw new Error("@sapiom/tools: no tenant credential. Pass createClient({ apiKey }) for standalone use, " +
|
|
82
92
|
"or run inside a Sapiom workflow (the engine injects SAPIOM_API_KEY).");
|
|
@@ -84,18 +94,21 @@ export class Transport {
|
|
|
84
94
|
return this.fetchImpl(url, {
|
|
85
95
|
...init,
|
|
86
96
|
headers: {
|
|
87
|
-
|
|
97
|
+
[options.authHeader ?? DEFAULT_AUTH_HEADER]: this.apiKey,
|
|
88
98
|
...attributionToHeaders(this.attribution),
|
|
89
99
|
...(init.headers ?? {}),
|
|
90
100
|
},
|
|
91
101
|
});
|
|
92
102
|
}
|
|
93
103
|
/** Authenticated JSON request — parses the body and throws on a non-2xx status. */
|
|
94
|
-
async request(url, init = {}) {
|
|
104
|
+
async request(url, init = {}, options = {}) {
|
|
95
105
|
const res = await this.fetch(url, {
|
|
96
106
|
...init,
|
|
97
|
-
headers: {
|
|
98
|
-
|
|
107
|
+
headers: {
|
|
108
|
+
"content-type": "application/json",
|
|
109
|
+
...(init.headers ?? {}),
|
|
110
|
+
},
|
|
111
|
+
}, options);
|
|
99
112
|
if (!res.ok) {
|
|
100
113
|
throw new Error(`${init.method ?? "GET"} ${url} → ${res.status} ${await res.text()}`);
|
|
101
114
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_client/index.ts"],"names":[],"mappings":"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"}
|