@x12i/sdk 0.1.0 → 0.3.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/LICENSE +21 -0
- package/dist/client.d.ts +90 -23
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +324 -18
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +15 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +4 -0
- package/dist/registry.js.map +1 -1
- package/package.json +17 -7
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 x12i
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/dist/client.d.ts
CHANGED
|
@@ -1,53 +1,120 @@
|
|
|
1
1
|
import { ParserRegistry, type ClassifyCandidate, type FetchResult, type ParsedResult, type Parser } from "@x12i/core";
|
|
2
|
-
import { type FetchOptions } from "@x12i/fetcher";
|
|
2
|
+
import { type FetchOptions, type RetrieveOptions, type RetrieveBatchItem, type FetchCache, type SnapshotStore, type CachedRetrieveOptions, type ChangeCheckRequest, type ChangeCheckResult } from "@x12i/fetcher";
|
|
3
3
|
import { type IngestOptions, type IngestResult } from "@x12i/ingest";
|
|
4
|
+
import { type SearchConfig, type SearchProvider, type WebSearchRequest, type WebSearchResponse } from "@x12i/search";
|
|
5
|
+
import { type CrawlRequest, type CrawlResult } from "@x12i/crawl";
|
|
6
|
+
import { type ResearchPacket, type ResearchRequest } from "@x12i/research";
|
|
7
|
+
import { type ExtractRequest, type ExtractResult, type ExtractionAdapter } from "@x12i/extract";
|
|
8
|
+
import { type RunRecord, type RunStore, type ListItemsOptions, type ListItemsResult } from "@x12i/runs";
|
|
4
9
|
export interface WebAgentClientOptions {
|
|
5
|
-
/** Provide your own registry (e.g. to only register a subset of parsers). Defaults to every first-party parser. */
|
|
6
10
|
registry?: ParserRegistry;
|
|
7
|
-
/** Default fetch options applied to every call, overridable per-call. */
|
|
8
11
|
fetchOptions?: FetchOptions;
|
|
9
|
-
/**
|
|
10
|
-
* Reuse a single browser instance across calls instead of launching one
|
|
11
|
-
* per fetch. Recommended for long-lived processes (the API/MCP server).
|
|
12
|
-
* Call `.close()` when done.
|
|
13
|
-
*/
|
|
14
12
|
reuseBrowser?: boolean;
|
|
13
|
+
search?: SearchProvider | SearchConfig | null;
|
|
14
|
+
fetchCache?: FetchCache;
|
|
15
|
+
snapshotStore?: SnapshotStore;
|
|
16
|
+
runStore?: RunStore;
|
|
17
|
+
extractionAdapter?: ExtractionAdapter;
|
|
18
|
+
/** When true, client owns and closes default in-memory stores it created. */
|
|
19
|
+
ownsDefaultStores?: boolean;
|
|
20
|
+
}
|
|
21
|
+
export interface FetchSearchResultsOptions {
|
|
22
|
+
positions?: number[];
|
|
23
|
+
urls?: string[];
|
|
24
|
+
concurrency?: number;
|
|
25
|
+
continueOnError?: boolean;
|
|
26
|
+
fetchOptions?: FetchOptions;
|
|
27
|
+
signal?: AbortSignal;
|
|
28
|
+
}
|
|
29
|
+
export interface FetchedSearchPage {
|
|
30
|
+
position?: number;
|
|
31
|
+
url: string;
|
|
32
|
+
title?: string;
|
|
33
|
+
fetch?: FetchResult;
|
|
34
|
+
error?: string;
|
|
35
|
+
}
|
|
36
|
+
export interface SearchAndFetchRequest extends WebSearchRequest {
|
|
37
|
+
top?: number;
|
|
38
|
+
positions?: number[];
|
|
39
|
+
urls?: string[];
|
|
40
|
+
concurrency?: number;
|
|
41
|
+
continueOnError?: boolean;
|
|
42
|
+
fetchOptions?: FetchOptions;
|
|
43
|
+
signal?: AbortSignal;
|
|
44
|
+
}
|
|
45
|
+
export interface SearchAndFetchResult {
|
|
46
|
+
search: WebSearchResponse;
|
|
47
|
+
pages: FetchedSearchPage[];
|
|
15
48
|
}
|
|
16
49
|
/**
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* JSON using the registered parsers.
|
|
50
|
+
* Canonical programmatic surface: fetch/retrieve/research/crawl/extract/runs.
|
|
51
|
+
* CLI, REST, and MCP are thin adapters around this client.
|
|
20
52
|
*/
|
|
21
53
|
export declare class WebAgentClient {
|
|
22
54
|
readonly registry: ParserRegistry;
|
|
23
55
|
private readonly defaultFetchOptions;
|
|
24
56
|
private readonly reuseBrowser;
|
|
57
|
+
private readonly searchProvider;
|
|
25
58
|
private browserPromise;
|
|
59
|
+
readonly fetchCache: FetchCache;
|
|
60
|
+
readonly snapshotStore: SnapshotStore;
|
|
61
|
+
readonly runStore: RunStore;
|
|
62
|
+
private readonly extractionAdapter?;
|
|
63
|
+
private readonly ownsCache;
|
|
64
|
+
private readonly ownsSnapshots;
|
|
65
|
+
private readonly ownsRuns;
|
|
26
66
|
constructor(options?: WebAgentClientOptions);
|
|
27
|
-
/** Register an additional parser on this client's registry. */
|
|
28
67
|
use<T>(parser: Parser<T>): this;
|
|
29
|
-
/** Download a URL
|
|
68
|
+
/** Download a URL via Playwright (compatibility default: browser strategy). */
|
|
30
69
|
fetch(url: string, options?: FetchOptions): Promise<FetchResult>;
|
|
31
|
-
/**
|
|
70
|
+
/** Strategy-aware multi-format retrieval (default strategy: auto). */
|
|
71
|
+
retrieve(url: string, options?: RetrieveOptions): Promise<FetchResult>;
|
|
72
|
+
fetchBatch(request: {
|
|
73
|
+
urls: string[];
|
|
74
|
+
concurrency?: number;
|
|
75
|
+
continueOnError?: boolean;
|
|
76
|
+
retrieveOptions?: RetrieveOptions;
|
|
77
|
+
signal?: AbortSignal;
|
|
78
|
+
}): Promise<RetrieveBatchItem[]>;
|
|
79
|
+
retrieveCached(url: string, options?: CachedRetrieveOptions): Promise<FetchResult>;
|
|
32
80
|
classify(url: string, options?: FetchOptions): Promise<ClassifyCandidate[]>;
|
|
33
|
-
/** Fetch a URL, classify it, and parse it with the best-fit parser. */
|
|
34
81
|
parse<T = unknown>(url: string, options?: FetchOptions): Promise<ParsedResult<T>>;
|
|
35
|
-
/** Fetch a URL and force a specific parser by type id, skipping classification. */
|
|
36
82
|
parseAs<T = unknown>(type: string, url: string, options?: FetchOptions): Promise<ParsedResult<T>>;
|
|
37
|
-
/** List every registered parser's type id + description. */
|
|
38
83
|
listParsers(): {
|
|
39
84
|
type: string;
|
|
40
85
|
description?: string;
|
|
41
86
|
version?: string;
|
|
42
87
|
}[];
|
|
43
|
-
/**
|
|
44
|
-
* Ingest a curated list / README URL: follow outbound GitHub skill links
|
|
45
|
-
* one level deep and extract targeted files (SKILL.md, .md, .sh, …).
|
|
46
|
-
* Uses GitHub raw/API — not Playwright.
|
|
47
|
-
*/
|
|
48
88
|
ingest(rootUrl: string, options?: IngestOptions): Promise<IngestResult>;
|
|
89
|
+
search(request: WebSearchRequest, options?: {
|
|
90
|
+
signal?: AbortSignal;
|
|
91
|
+
}): Promise<WebSearchResponse>;
|
|
92
|
+
searchConfigured(): boolean;
|
|
93
|
+
fetchSearchResults(searchResult: WebSearchResponse, options?: FetchSearchResultsOptions): Promise<FetchedSearchPage[]>;
|
|
94
|
+
searchAndFetch(request: SearchAndFetchRequest): Promise<SearchAndFetchResult>;
|
|
95
|
+
research(request: ResearchRequest, options?: {
|
|
96
|
+
signal?: AbortSignal;
|
|
97
|
+
}): Promise<ResearchPacket>;
|
|
98
|
+
startResearch(request: ResearchRequest, opts?: {
|
|
99
|
+
idempotencyKey?: string;
|
|
100
|
+
}): Promise<RunRecord>;
|
|
101
|
+
private runResearchJob;
|
|
102
|
+
crawl(request: CrawlRequest, options?: {
|
|
103
|
+
signal?: AbortSignal;
|
|
104
|
+
}): Promise<CrawlResult>;
|
|
105
|
+
startCrawl(request: CrawlRequest, opts?: {
|
|
106
|
+
idempotencyKey?: string;
|
|
107
|
+
}): Promise<RunRecord>;
|
|
108
|
+
private runCrawlJob;
|
|
109
|
+
extract(request: ExtractRequest): Promise<ExtractResult>;
|
|
110
|
+
checkChanges(request: ChangeCheckRequest & {
|
|
111
|
+
url?: string;
|
|
112
|
+
}): Promise<ChangeCheckResult>;
|
|
113
|
+
getRun(runId: string): Promise<RunRecord | undefined>;
|
|
114
|
+
listRunItems(runId: string, options?: ListItemsOptions): Promise<ListItemsResult>;
|
|
115
|
+
cancelRun(runId: string): Promise<RunRecord>;
|
|
116
|
+
resumeRun(runId: string): Promise<RunRecord>;
|
|
49
117
|
private getBrowser;
|
|
50
|
-
/** Close the reused browser, if one was launched. No-op otherwise. */
|
|
51
118
|
close(): Promise<void>;
|
|
52
119
|
}
|
|
53
120
|
//# sourceMappingURL=client.d.ts.map
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,MAAM,EACZ,MAAM,YAAY,CAAC;AACpB,OAAO,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -1,6 +1,15 @@
|
|
|
1
|
-
import { fetchUrl, launchBrowser } from "@x12i/fetcher";
|
|
1
|
+
import { fetchUrl, launchBrowser, retrieve, retrieveBatch, retrieveWithCache, checkChanges, InMemoryFetchCache, InMemorySnapshotStore, } from "@x12i/fetcher";
|
|
2
2
|
import { ingestRepository } from "@x12i/ingest";
|
|
3
|
+
import { createSerperProvider, loadSearchConfig, search as runSearch, } from "@x12i/search";
|
|
4
|
+
import { crawl } from "@x12i/crawl";
|
|
5
|
+
import { research } from "@x12i/research";
|
|
6
|
+
import { extract, } from "@x12i/extract";
|
|
7
|
+
import { InMemoryRunStore, } from "@x12i/runs";
|
|
8
|
+
import { createHash } from "node:crypto";
|
|
3
9
|
import { createDefaultRegistry } from "./registry.js";
|
|
10
|
+
function requestHash(value) {
|
|
11
|
+
return createHash("sha256").update(JSON.stringify(value)).digest("hex").slice(0, 24);
|
|
12
|
+
}
|
|
4
13
|
/**
|
|
5
14
|
* Per-site fetch defaults so client-rendered pages actually populate before
|
|
6
15
|
* we snapshot HTML. Caller-supplied options still win (spread after this).
|
|
@@ -13,7 +22,6 @@ function siteFetchDefaults(url) {
|
|
|
13
22
|
if ((host === "openrouter.ai" || host.endsWith(".openrouter.ai")) &&
|
|
14
23
|
(path === "/rankings" || path.startsWith("/rankings/"))) {
|
|
15
24
|
return {
|
|
16
|
-
// Live leaderboard rows are CSS-grid divs, not <table>s.
|
|
17
25
|
waitForSelector: "div.grid.grid-cols-12.items-center",
|
|
18
26
|
settleMs: 500,
|
|
19
27
|
};
|
|
@@ -28,7 +36,6 @@ function siteFetchDefaults(url) {
|
|
|
28
36
|
return { waitForSelector: "article h1, h1", settleMs: 800 };
|
|
29
37
|
}
|
|
30
38
|
if (host === "g2.com" || host === "www.g2.com" || host.endsWith(".g2.com")) {
|
|
31
|
-
// G2 often serves a bot-challenge with no product <h1>; don't hard-wait.
|
|
32
39
|
return { settleMs: 1500 };
|
|
33
40
|
}
|
|
34
41
|
}
|
|
@@ -38,26 +45,40 @@ function siteFetchDefaults(url) {
|
|
|
38
45
|
return {};
|
|
39
46
|
}
|
|
40
47
|
/**
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
* JSON using the registered parsers.
|
|
48
|
+
* Canonical programmatic surface: fetch/retrieve/research/crawl/extract/runs.
|
|
49
|
+
* CLI, REST, and MCP are thin adapters around this client.
|
|
44
50
|
*/
|
|
45
51
|
export class WebAgentClient {
|
|
46
52
|
registry;
|
|
47
53
|
defaultFetchOptions;
|
|
48
54
|
reuseBrowser;
|
|
55
|
+
searchProvider;
|
|
49
56
|
browserPromise;
|
|
57
|
+
fetchCache;
|
|
58
|
+
snapshotStore;
|
|
59
|
+
runStore;
|
|
60
|
+
extractionAdapter;
|
|
61
|
+
ownsCache;
|
|
62
|
+
ownsSnapshots;
|
|
63
|
+
ownsRuns;
|
|
50
64
|
constructor(options = {}) {
|
|
51
65
|
this.registry = options.registry ?? createDefaultRegistry();
|
|
52
66
|
this.defaultFetchOptions = options.fetchOptions ?? {};
|
|
53
67
|
this.reuseBrowser = options.reuseBrowser ?? false;
|
|
68
|
+
this.searchProvider = resolveSearchProvider(options.search);
|
|
69
|
+
this.ownsCache = !options.fetchCache;
|
|
70
|
+
this.ownsSnapshots = !options.snapshotStore;
|
|
71
|
+
this.ownsRuns = !options.runStore;
|
|
72
|
+
this.fetchCache = options.fetchCache ?? new InMemoryFetchCache();
|
|
73
|
+
this.snapshotStore = options.snapshotStore ?? new InMemorySnapshotStore();
|
|
74
|
+
this.runStore = options.runStore ?? new InMemoryRunStore();
|
|
75
|
+
this.extractionAdapter = options.extractionAdapter;
|
|
54
76
|
}
|
|
55
|
-
/** Register an additional parser on this client's registry. */
|
|
56
77
|
use(parser) {
|
|
57
78
|
this.registry.register(parser);
|
|
58
79
|
return this;
|
|
59
80
|
}
|
|
60
|
-
/** Download a URL
|
|
81
|
+
/** Download a URL via Playwright (compatibility default: browser strategy). */
|
|
61
82
|
async fetch(url, options = {}) {
|
|
62
83
|
const browser = this.reuseBrowser ? await this.getBrowser() : undefined;
|
|
63
84
|
return fetchUrl(url, {
|
|
@@ -67,44 +88,329 @@ export class WebAgentClient {
|
|
|
67
88
|
browser: browser ?? options.browser,
|
|
68
89
|
});
|
|
69
90
|
}
|
|
70
|
-
/**
|
|
91
|
+
/** Strategy-aware multi-format retrieval (default strategy: auto). */
|
|
92
|
+
async retrieve(url, options = {}) {
|
|
93
|
+
const browser = this.reuseBrowser ? await this.getBrowser() : undefined;
|
|
94
|
+
return retrieve(url, {
|
|
95
|
+
...this.defaultFetchOptions,
|
|
96
|
+
...siteFetchDefaults(url),
|
|
97
|
+
strategy: "auto",
|
|
98
|
+
...options,
|
|
99
|
+
browser: browser ?? options.browser,
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
async fetchBatch(request) {
|
|
103
|
+
const browser = this.reuseBrowser ? await this.getBrowser() : undefined;
|
|
104
|
+
return retrieveBatch({
|
|
105
|
+
...request,
|
|
106
|
+
retrieveOptions: {
|
|
107
|
+
...this.defaultFetchOptions,
|
|
108
|
+
strategy: "auto",
|
|
109
|
+
...request.retrieveOptions,
|
|
110
|
+
browser: browser ?? request.retrieveOptions?.browser,
|
|
111
|
+
},
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
async retrieveCached(url, options = {}) {
|
|
115
|
+
const browser = this.reuseBrowser ? await this.getBrowser() : undefined;
|
|
116
|
+
return retrieveWithCache(url, {
|
|
117
|
+
...this.defaultFetchOptions,
|
|
118
|
+
...siteFetchDefaults(url),
|
|
119
|
+
strategy: "auto",
|
|
120
|
+
cache: this.fetchCache,
|
|
121
|
+
...options,
|
|
122
|
+
browser: browser ?? options.browser,
|
|
123
|
+
});
|
|
124
|
+
}
|
|
71
125
|
async classify(url, options = {}) {
|
|
72
126
|
const fetched = await this.fetch(url, options);
|
|
73
127
|
return this.registry.classify(fetched);
|
|
74
128
|
}
|
|
75
|
-
/** Fetch a URL, classify it, and parse it with the best-fit parser. */
|
|
76
129
|
async parse(url, options = {}) {
|
|
77
130
|
const fetched = await this.fetch(url, options);
|
|
78
131
|
return this.registry.parse(fetched);
|
|
79
132
|
}
|
|
80
|
-
/** Fetch a URL and force a specific parser by type id, skipping classification. */
|
|
81
133
|
async parseAs(type, url, options = {}) {
|
|
82
134
|
const fetched = await this.fetch(url, options);
|
|
83
135
|
return this.registry.parseAs(type, fetched);
|
|
84
136
|
}
|
|
85
|
-
/** List every registered parser's type id + description. */
|
|
86
137
|
listParsers() {
|
|
87
138
|
return this.registry.list();
|
|
88
139
|
}
|
|
89
|
-
/**
|
|
90
|
-
* Ingest a curated list / README URL: follow outbound GitHub skill links
|
|
91
|
-
* one level deep and extract targeted files (SKILL.md, .md, .sh, …).
|
|
92
|
-
* Uses GitHub raw/API — not Playwright.
|
|
93
|
-
*/
|
|
94
140
|
ingest(rootUrl, options = {}) {
|
|
95
141
|
return ingestRepository(rootUrl, options);
|
|
96
142
|
}
|
|
143
|
+
search(request, options = {}) {
|
|
144
|
+
return runSearch(request, {
|
|
145
|
+
provider: this.searchProvider ?? null,
|
|
146
|
+
signal: options.signal,
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
searchConfigured() {
|
|
150
|
+
return this.searchProvider !== undefined;
|
|
151
|
+
}
|
|
152
|
+
async fetchSearchResults(searchResult, options = {}) {
|
|
153
|
+
const targets = resolveFetchTargets(searchResult, options);
|
|
154
|
+
const concurrency = Math.max(1, options.concurrency ?? 2);
|
|
155
|
+
const continueOnError = options.continueOnError !== false;
|
|
156
|
+
const pages = [];
|
|
157
|
+
for (let i = 0; i < targets.length; i += concurrency) {
|
|
158
|
+
if (options.signal?.aborted)
|
|
159
|
+
break;
|
|
160
|
+
const batch = targets.slice(i, i + concurrency);
|
|
161
|
+
const settled = await Promise.all(batch.map(async (t) => {
|
|
162
|
+
try {
|
|
163
|
+
const fetched = await this.fetch(t.url, {
|
|
164
|
+
...options.fetchOptions,
|
|
165
|
+
});
|
|
166
|
+
return {
|
|
167
|
+
position: t.position,
|
|
168
|
+
url: t.url,
|
|
169
|
+
title: fetched.title ?? t.title,
|
|
170
|
+
fetch: fetched,
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
catch (err) {
|
|
174
|
+
const error = err instanceof Error ? err.message : String(err);
|
|
175
|
+
if (!continueOnError)
|
|
176
|
+
throw err;
|
|
177
|
+
return { position: t.position, url: t.url, title: t.title, error };
|
|
178
|
+
}
|
|
179
|
+
}));
|
|
180
|
+
pages.push(...settled);
|
|
181
|
+
}
|
|
182
|
+
return pages;
|
|
183
|
+
}
|
|
184
|
+
async searchAndFetch(request) {
|
|
185
|
+
const { top, positions, urls, concurrency, continueOnError, fetchOptions, signal, ...searchRequest } = request;
|
|
186
|
+
const searchResult = await this.search(searchRequest, { signal });
|
|
187
|
+
const pages = await this.fetchSearchResults(searchResult, {
|
|
188
|
+
positions: positions ?? (urls ? undefined : range(1, top ?? 3)),
|
|
189
|
+
urls,
|
|
190
|
+
concurrency,
|
|
191
|
+
continueOnError,
|
|
192
|
+
fetchOptions,
|
|
193
|
+
signal,
|
|
194
|
+
});
|
|
195
|
+
return { search: searchResult, pages };
|
|
196
|
+
}
|
|
197
|
+
async research(request, options = {}) {
|
|
198
|
+
const browser = this.reuseBrowser ? await this.getBrowser() : undefined;
|
|
199
|
+
const deps = {
|
|
200
|
+
searchFn: (req, opts) => this.search(req, opts),
|
|
201
|
+
retrieveFn: (url, ropts) => retrieve(url, {
|
|
202
|
+
...this.defaultFetchOptions,
|
|
203
|
+
strategy: "auto",
|
|
204
|
+
...ropts,
|
|
205
|
+
browser,
|
|
206
|
+
}),
|
|
207
|
+
registry: this.registry,
|
|
208
|
+
signal: options.signal,
|
|
209
|
+
};
|
|
210
|
+
return research(request, deps);
|
|
211
|
+
}
|
|
212
|
+
async startResearch(request, opts) {
|
|
213
|
+
const run = await this.runStore.create({
|
|
214
|
+
type: "research",
|
|
215
|
+
request,
|
|
216
|
+
requestHash: requestHash(request),
|
|
217
|
+
idempotencyKey: opts?.idempotencyKey,
|
|
218
|
+
});
|
|
219
|
+
void this.runResearchJob(run.id, request);
|
|
220
|
+
return run;
|
|
221
|
+
}
|
|
222
|
+
async runResearchJob(runId, request) {
|
|
223
|
+
await this.runStore.update(runId, { status: "planning" });
|
|
224
|
+
await this.runStore.update(runId, { status: "running", phase: "research" });
|
|
225
|
+
try {
|
|
226
|
+
const packet = await this.research(request);
|
|
227
|
+
const status = packet.status === "completed"
|
|
228
|
+
? "completed"
|
|
229
|
+
: packet.status === "failed"
|
|
230
|
+
? "failed"
|
|
231
|
+
: packet.status === "cancelled"
|
|
232
|
+
? "cancelled"
|
|
233
|
+
: packet.status === "partial"
|
|
234
|
+
? "partial"
|
|
235
|
+
: "completed_with_errors";
|
|
236
|
+
await this.runStore.update(runId, { status });
|
|
237
|
+
await this.runStore.appendItem?.(runId, {
|
|
238
|
+
kind: "packet",
|
|
239
|
+
data: packet,
|
|
240
|
+
});
|
|
241
|
+
}
|
|
242
|
+
catch (err) {
|
|
243
|
+
await this.runStore.update(runId, {
|
|
244
|
+
status: "failed",
|
|
245
|
+
errors: [
|
|
246
|
+
{
|
|
247
|
+
code: "PARSER_FAILED",
|
|
248
|
+
message: err instanceof Error ? err.message : String(err),
|
|
249
|
+
phase: "export",
|
|
250
|
+
retryable: false,
|
|
251
|
+
},
|
|
252
|
+
],
|
|
253
|
+
});
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
async crawl(request, options = {}) {
|
|
257
|
+
const browser = this.reuseBrowser ? await this.getBrowser() : undefined;
|
|
258
|
+
return crawl(request, {
|
|
259
|
+
retrieve: (url, ropts) => retrieve(url, {
|
|
260
|
+
...this.defaultFetchOptions,
|
|
261
|
+
strategy: "auto",
|
|
262
|
+
includeLinks: true,
|
|
263
|
+
...ropts,
|
|
264
|
+
browser,
|
|
265
|
+
}),
|
|
266
|
+
signal: options.signal,
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
async startCrawl(request, opts) {
|
|
270
|
+
const run = await this.runStore.create({
|
|
271
|
+
type: "crawl",
|
|
272
|
+
request,
|
|
273
|
+
requestHash: requestHash(request),
|
|
274
|
+
idempotencyKey: opts?.idempotencyKey,
|
|
275
|
+
});
|
|
276
|
+
void this.runCrawlJob(run.id, request);
|
|
277
|
+
return run;
|
|
278
|
+
}
|
|
279
|
+
async runCrawlJob(runId, request) {
|
|
280
|
+
await this.runStore.update(runId, { status: "running", phase: "crawl" });
|
|
281
|
+
try {
|
|
282
|
+
const result = await this.crawl(request);
|
|
283
|
+
await this.runStore.update(runId, {
|
|
284
|
+
status: result.terminationReason === "cancelled" ? "cancelled" : "completed",
|
|
285
|
+
usage: {
|
|
286
|
+
pagesFetched: result.usage.pagesFetched,
|
|
287
|
+
bytesFetched: result.usage.bytesFetched,
|
|
288
|
+
},
|
|
289
|
+
});
|
|
290
|
+
await this.runStore.appendItem?.(runId, {
|
|
291
|
+
kind: "crawl_result",
|
|
292
|
+
data: result,
|
|
293
|
+
});
|
|
294
|
+
}
|
|
295
|
+
catch (err) {
|
|
296
|
+
await this.runStore.update(runId, {
|
|
297
|
+
status: "failed",
|
|
298
|
+
errors: [
|
|
299
|
+
{
|
|
300
|
+
code: "PARSER_FAILED",
|
|
301
|
+
message: err instanceof Error ? err.message : String(err),
|
|
302
|
+
phase: "crawl",
|
|
303
|
+
retryable: false,
|
|
304
|
+
},
|
|
305
|
+
],
|
|
306
|
+
});
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
async extract(request) {
|
|
310
|
+
const browser = this.reuseBrowser ? await this.getBrowser() : undefined;
|
|
311
|
+
return extract(request, {
|
|
312
|
+
registry: this.registry,
|
|
313
|
+
adapter: this.extractionAdapter,
|
|
314
|
+
retrieveFn: (url, opts) => retrieve(url, {
|
|
315
|
+
...this.defaultFetchOptions,
|
|
316
|
+
strategy: "auto",
|
|
317
|
+
...opts,
|
|
318
|
+
browser,
|
|
319
|
+
}),
|
|
320
|
+
});
|
|
321
|
+
}
|
|
322
|
+
async checkChanges(request) {
|
|
323
|
+
let current = request.current;
|
|
324
|
+
if (!current && request.url) {
|
|
325
|
+
current = await this.retrieve(request.url, { strategy: "auto" });
|
|
326
|
+
if (current.canonicalUrl) {
|
|
327
|
+
await this.snapshotStore.put({
|
|
328
|
+
canonicalUrl: current.canonicalUrl,
|
|
329
|
+
markdown: current.markdown,
|
|
330
|
+
rawContentHash: current.rawContentHash,
|
|
331
|
+
normalizedContentHash: current.normalizedContentHash,
|
|
332
|
+
});
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
let previousSnapshot = request.previousSnapshot;
|
|
336
|
+
if (!previousSnapshot && !request.previous && current?.canonicalUrl) {
|
|
337
|
+
previousSnapshot = await this.snapshotStore.latestForUrl(current.canonicalUrl);
|
|
338
|
+
}
|
|
339
|
+
return checkChanges({ ...request, current, previousSnapshot });
|
|
340
|
+
}
|
|
341
|
+
getRun(runId) {
|
|
342
|
+
return this.runStore.get(runId);
|
|
343
|
+
}
|
|
344
|
+
listRunItems(runId, options) {
|
|
345
|
+
return this.runStore.listItems(runId, options);
|
|
346
|
+
}
|
|
347
|
+
cancelRun(runId) {
|
|
348
|
+
return this.runStore.requestCancel(runId);
|
|
349
|
+
}
|
|
350
|
+
async resumeRun(runId) {
|
|
351
|
+
const run = await this.runStore.get(runId);
|
|
352
|
+
if (!run)
|
|
353
|
+
throw new Error("RUN_NOT_FOUND");
|
|
354
|
+
if (!["partial", "cancelled", "failed"].includes(run.status)) {
|
|
355
|
+
throw new Error("RUN_NOT_RESUMABLE");
|
|
356
|
+
}
|
|
357
|
+
await this.runStore.update(runId, { status: "queued", cancellationRequested: false });
|
|
358
|
+
if (run.type === "research") {
|
|
359
|
+
void this.runResearchJob(runId, run.request);
|
|
360
|
+
}
|
|
361
|
+
else if (run.type === "crawl") {
|
|
362
|
+
void this.runCrawlJob(runId, run.request);
|
|
363
|
+
}
|
|
364
|
+
return (await this.runStore.get(runId));
|
|
365
|
+
}
|
|
97
366
|
async getBrowser() {
|
|
98
367
|
this.browserPromise ??= launchBrowser(this.defaultFetchOptions.executablePath);
|
|
99
368
|
return this.browserPromise;
|
|
100
369
|
}
|
|
101
|
-
/** Close the reused browser, if one was launched. No-op otherwise. */
|
|
102
370
|
async close() {
|
|
103
371
|
if (this.browserPromise) {
|
|
104
372
|
const browser = await this.browserPromise;
|
|
105
373
|
await browser.close();
|
|
106
374
|
this.browserPromise = undefined;
|
|
107
375
|
}
|
|
376
|
+
void this.ownsCache;
|
|
377
|
+
void this.ownsSnapshots;
|
|
378
|
+
void this.ownsRuns;
|
|
108
379
|
}
|
|
109
380
|
}
|
|
381
|
+
function resolveSearchProvider(search) {
|
|
382
|
+
if (search === null)
|
|
383
|
+
return undefined;
|
|
384
|
+
if (!search) {
|
|
385
|
+
return createSerperProvider(loadSearchConfig());
|
|
386
|
+
}
|
|
387
|
+
if ("search" in search && typeof search.search === "function") {
|
|
388
|
+
return search;
|
|
389
|
+
}
|
|
390
|
+
return createSerperProvider(search);
|
|
391
|
+
}
|
|
392
|
+
function resolveFetchTargets(searchResult, options) {
|
|
393
|
+
if (options.urls?.length) {
|
|
394
|
+
return options.urls.map((url) => {
|
|
395
|
+
const match = searchResult.organic.find((o) => o.url === url);
|
|
396
|
+
return { url, position: match?.position, title: match?.title };
|
|
397
|
+
});
|
|
398
|
+
}
|
|
399
|
+
const positions = options.positions?.length
|
|
400
|
+
? options.positions
|
|
401
|
+
: searchResult.organic.map((o) => o.position);
|
|
402
|
+
const out = [];
|
|
403
|
+
for (const pos of positions) {
|
|
404
|
+
const hit = searchResult.organic.find((o) => o.position === pos);
|
|
405
|
+
if (hit)
|
|
406
|
+
out.push({ url: hit.url, position: hit.position, title: hit.title });
|
|
407
|
+
}
|
|
408
|
+
return out;
|
|
409
|
+
}
|
|
410
|
+
function range(start, endInclusive) {
|
|
411
|
+
const out = [];
|
|
412
|
+
for (let i = start; i <= endInclusive; i++)
|
|
413
|
+
out.push(i);
|
|
414
|
+
return out;
|
|
415
|
+
}
|
|
110
416
|
//# 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":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,20 @@
|
|
|
1
1
|
export * from "./client.js";
|
|
2
2
|
export * from "./registry.js";
|
|
3
3
|
export * from "@x12i/core";
|
|
4
|
-
export type { FetchOptions } from "@x12i/fetcher";
|
|
4
|
+
export type { FetchOptions, RetrieveOptions, RetrieveBatchItem, FetchCache, SnapshotStore, FreshnessMode, ChangeCheckRequest, ChangeCheckResult, } from "@x12i/fetcher";
|
|
5
|
+
export { InMemoryFetchCache, InMemorySnapshotStore, retrieve, retrieveBatch, checkChanges, } from "@x12i/fetcher";
|
|
5
6
|
export type { IngestOptions, IngestResult, IngestedAsset, ExtractedFile, IngestProgressEvent, } from "@x12i/ingest";
|
|
7
|
+
export type { WebSearchRequest, WebSearchResponse, OrganicSearchResult, SearchConfig, SearchProvider, SearchErrorCode, SearchCandidate, SelectionOptions, } from "@x12i/search";
|
|
8
|
+
export { SearchError, isSearchConfigured, loadEnvFile, loadSearchConfig, searchCapabilityStatus, mergeSearchCandidates, selectCandidates, normalizeQueries, } from "@x12i/search";
|
|
9
|
+
export type { ResearchRequest, ResearchPacket } from "@x12i/research";
|
|
10
|
+
export { research } from "@x12i/research";
|
|
11
|
+
export type { CrawlRequest, CrawlResult } from "@x12i/crawl";
|
|
12
|
+
export { crawl } from "@x12i/crawl";
|
|
13
|
+
export type { ExtractRequest, ExtractResult, ExtractionAdapter, ExtractionMode, } from "@x12i/extract";
|
|
14
|
+
export { extract } from "@x12i/extract";
|
|
15
|
+
export type { EvidenceBlock } from "@x12i/evidence";
|
|
16
|
+
export { splitEvidence, rankEvidence, buildCitationMarkdown } from "@x12i/evidence";
|
|
17
|
+
export type { RunRecord, RunStore, RunStatus } from "@x12i/runs";
|
|
18
|
+
export { InMemoryRunStore, IdempotencyConflictError } from "@x12i/runs";
|
|
19
|
+
export { META_PARSER_TYPE, buildLlmBrief, createMetaParser, defaultSchemaCatalog, findSchema, metaLlmBriefParser, type MetaLlmBriefData, type PageSchema, } from "@x12i/parsers-meta";
|
|
6
20
|
//# 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,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,YAAY,EACV,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,QAAQ,EACR,aAAa,EACb,YAAY,GACb,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,aAAa,EACb,YAAY,EACZ,aAAa,EACb,aAAa,EACb,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,YAAY,EACV,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACpF,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,UAAU,EACV,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,KAAK,UAAU,GAChB,MAAM,oBAAoB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
export * from "./client.js";
|
|
2
2
|
export * from "./registry.js";
|
|
3
3
|
export * from "@x12i/core";
|
|
4
|
+
export { InMemoryFetchCache, InMemorySnapshotStore, retrieve, retrieveBatch, checkChanges, } from "@x12i/fetcher";
|
|
5
|
+
export { SearchError, isSearchConfigured, loadEnvFile, loadSearchConfig, searchCapabilityStatus, mergeSearchCandidates, selectCandidates, normalizeQueries, } from "@x12i/search";
|
|
6
|
+
export { research } from "@x12i/research";
|
|
7
|
+
export { crawl } from "@x12i/crawl";
|
|
8
|
+
export { extract } from "@x12i/extract";
|
|
9
|
+
export { splitEvidence, rankEvidence, buildCitationMarkdown } from "@x12i/evidence";
|
|
10
|
+
export { InMemoryRunStore, IdempotencyConflictError } from "@x12i/runs";
|
|
11
|
+
export { META_PARSER_TYPE, buildLlmBrief, createMetaParser, defaultSchemaCatalog, findSchema, metaLlmBriefParser, } from "@x12i/parsers-meta";
|
|
4
12
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAW3B,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,QAAQ,EACR,aAAa,EACb,YAAY,GACb,MAAM,eAAe,CAAC;AAkBvB,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAOpC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAEpF,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,UAAU,EACV,kBAAkB,GAGnB,MAAM,oBAAoB,CAAC"}
|
package/dist/registry.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAS5C;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,cAAc,CAUtD"}
|
package/dist/registry.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ParserRegistry } from "@x12i/core";
|
|
2
2
|
import { openRouterRankingsParser } from "@x12i/parser-openrouter";
|
|
3
|
+
import { metaLlmBriefParser } from "@x12i/parsers-meta";
|
|
3
4
|
import { g2ProductParser, linkedInCompanyParser, mediumArticleParser, } from "@x12i/parsers-web";
|
|
4
5
|
/**
|
|
5
6
|
* A ParserRegistry pre-loaded with every first-party parser this monorepo
|
|
@@ -12,6 +13,9 @@ export function createDefaultRegistry() {
|
|
|
12
13
|
g2ProductParser,
|
|
13
14
|
linkedInCompanyParser,
|
|
14
15
|
mediumArticleParser,
|
|
16
|
+
// Metadata fallback: declarative schemas → LLM response instructions.
|
|
17
|
+
// Keep last; its confidence stays below site-specific parsers.
|
|
18
|
+
metaLlmBriefParser,
|
|
15
19
|
]);
|
|
16
20
|
}
|
|
17
21
|
//# sourceMappingURL=registry.js.map
|
package/dist/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,IAAI,cAAc,EAAE,CAAC,WAAW,CAAC;QACtC,wBAAwB;QACxB,eAAe;QACf,qBAAqB;QACrB,mBAAmB;
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,IAAI,cAAc,EAAE,CAAC,WAAW,CAAC;QACtC,wBAAwB;QACxB,eAAe;QACf,qBAAqB;QACrB,mBAAmB;QACnB,sEAAsE;QACtE,+DAA+D;QAC/D,kBAAkB;KACnB,CAAC,CAAC;AACL,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@x12i/sdk",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Programmatic client: fetch
|
|
3
|
+
"version": "0.3.0",
|
|
4
|
+
"description": "Programmatic client: fetch, retrieve, research, crawl, extract — the CLI, REST API, and MCP server wrap this.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
@@ -13,11 +13,18 @@
|
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"playwright": "^1.49.1",
|
|
16
|
-
"@x12i/core": "0.
|
|
17
|
-
"@x12i/
|
|
18
|
-
"@x12i/ingest": "0.
|
|
19
|
-
"@x12i/
|
|
20
|
-
"@x12i/
|
|
16
|
+
"@x12i/core": "0.3.0",
|
|
17
|
+
"@x12i/fetcher": "0.3.0",
|
|
18
|
+
"@x12i/ingest": "0.3.0",
|
|
19
|
+
"@x12i/crawl": "0.3.0",
|
|
20
|
+
"@x12i/evidence": "0.3.0",
|
|
21
|
+
"@x12i/search": "0.3.0",
|
|
22
|
+
"@x12i/research": "0.3.0",
|
|
23
|
+
"@x12i/extract": "0.3.0",
|
|
24
|
+
"@x12i/runs": "0.3.0",
|
|
25
|
+
"@x12i/parser-openrouter": "0.3.0",
|
|
26
|
+
"@x12i/parsers-meta": "0.3.0",
|
|
27
|
+
"@x12i/parsers-web": "0.3.0"
|
|
21
28
|
},
|
|
22
29
|
"devDependencies": {
|
|
23
30
|
"typescript": "^5.7.3",
|
|
@@ -40,6 +47,9 @@
|
|
|
40
47
|
"bugs": {
|
|
41
48
|
"url": "https://github.com/x12i/web-agentic-tools/issues"
|
|
42
49
|
},
|
|
50
|
+
"engines": {
|
|
51
|
+
"node": ">=20"
|
|
52
|
+
},
|
|
43
53
|
"scripts": {
|
|
44
54
|
"build": "tsc -p tsconfig.json",
|
|
45
55
|
"dev": "tsc -p tsconfig.json --watch",
|