@apitap/core 1.6.0 → 1.6.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/dist/capture/cdp-attach.js +36 -2
- package/dist/capture/cdp-attach.js.map +1 -1
- package/dist/cli.js +59 -22
- package/dist/cli.js.map +1 -1
- package/dist/replay/engine.d.ts +7 -1
- package/dist/replay/engine.js +30 -6
- package/dist/replay/engine.js.map +1 -1
- package/dist/skill/apis-guru.js +23 -15
- package/dist/skill/apis-guru.js.map +1 -1
- package/dist/skill/generator.d.ts +18 -0
- package/dist/skill/generator.js +98 -24
- package/dist/skill/generator.js.map +1 -1
- package/dist/skill/merge.js +71 -0
- package/dist/skill/merge.js.map +1 -1
- package/dist/skill/openapi-converter.js +7 -0
- package/dist/skill/openapi-converter.js.map +1 -1
- package/dist/skill/signing.d.ts +5 -0
- package/dist/skill/signing.js +9 -0
- package/dist/skill/signing.js.map +1 -1
- package/dist/skill/store.js +9 -4
- package/dist/skill/store.js.map +1 -1
- package/dist/types.d.ts +3 -3
- package/package.json +3 -1
- package/src/capture/cdp-attach.ts +34 -2
- package/src/cli.ts +63 -22
- package/src/replay/engine.ts +36 -6
- package/src/skill/apis-guru.ts +25 -19
- package/src/skill/generator.ts +132 -25
- package/src/skill/merge.ts +72 -0
- package/src/skill/openapi-converter.ts +8 -0
- package/src/skill/signing.ts +14 -0
- package/src/skill/store.ts +8 -4
- package/src/types.ts +3 -3
package/dist/skill/merge.js
CHANGED
|
@@ -75,6 +75,36 @@ function wouldEnrich(existing, imported) {
|
|
|
75
75
|
}
|
|
76
76
|
return false;
|
|
77
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* Determine whether an imported endpoint would enrich an existing skeleton
|
|
80
|
+
* endpoint. Skeletons are enrichable by imports: imports can provide response
|
|
81
|
+
* shape (replacing the placeholder `{ type: 'unknown' }`), description,
|
|
82
|
+
* specSource, and query param metadata.
|
|
83
|
+
*/
|
|
84
|
+
function wouldEnrichSkeleton(existing, imported) {
|
|
85
|
+
// Import can replace an unknown response shape
|
|
86
|
+
const existingShape = existing.responseShape;
|
|
87
|
+
const isUnknownShape = existingShape.type === 'unknown' && !existingShape.fields;
|
|
88
|
+
if (isUnknownShape && imported.responseShape.type !== 'unknown')
|
|
89
|
+
return true;
|
|
90
|
+
if (!existing.description && imported.description)
|
|
91
|
+
return true;
|
|
92
|
+
if (!existing.specSource && imported.specSource)
|
|
93
|
+
return true;
|
|
94
|
+
// Check if any new query params would be added or enriched
|
|
95
|
+
for (const [name, specParam] of Object.entries(imported.queryParams)) {
|
|
96
|
+
if (!(name in existing.queryParams))
|
|
97
|
+
return true;
|
|
98
|
+
const ep = existing.queryParams[name];
|
|
99
|
+
if (!ep.enum && specParam.enum)
|
|
100
|
+
return true;
|
|
101
|
+
if (ep.required === undefined && specParam.required !== undefined)
|
|
102
|
+
return true;
|
|
103
|
+
if (ep.type === 'string' && specParam.type !== 'string')
|
|
104
|
+
return true;
|
|
105
|
+
}
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
78
108
|
/**
|
|
79
109
|
* Pure function — no I/O.
|
|
80
110
|
*
|
|
@@ -159,6 +189,47 @@ export function mergeSkillFile(existing, imported, importMeta) {
|
|
|
159
189
|
preserved++;
|
|
160
190
|
continue;
|
|
161
191
|
}
|
|
192
|
+
// --- Skeleton branch: import can enrich skeleton endpoints ---
|
|
193
|
+
if (existingEp.endpointProvenance === 'skeleton') {
|
|
194
|
+
if (!wouldEnrichSkeleton(existingEp, importedEp)) {
|
|
195
|
+
resultEndpoints.push({
|
|
196
|
+
...existingEp,
|
|
197
|
+
normalizedPath: normalizePath(existingEp.path),
|
|
198
|
+
});
|
|
199
|
+
const existingHasSpecData = !!(existingEp.specSource || existingEp.description);
|
|
200
|
+
const importHasSpecData = !!(importedEp.specSource || importedEp.description);
|
|
201
|
+
if (existingHasSpecData || importHasSpecData) {
|
|
202
|
+
skipped++;
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
preserved++;
|
|
206
|
+
}
|
|
207
|
+
continue;
|
|
208
|
+
}
|
|
209
|
+
const mergedQueryParams = mergeQueryParams(existingEp.queryParams, importedEp.queryParams);
|
|
210
|
+
// For skeletons, import can replace responseShape if existing is unknown
|
|
211
|
+
const existingShape = existingEp.responseShape;
|
|
212
|
+
const isUnknownShape = existingShape.type === 'unknown' && !existingShape.fields;
|
|
213
|
+
const responseShape = isUnknownShape && importedEp.responseShape.type !== 'unknown'
|
|
214
|
+
? importedEp.responseShape
|
|
215
|
+
: existingShape;
|
|
216
|
+
const enrichedSkeleton = {
|
|
217
|
+
...existingEp,
|
|
218
|
+
normalizedPath: normalizePath(existingEp.path),
|
|
219
|
+
responseShape,
|
|
220
|
+
// Augment with spec fields (only if not already present)
|
|
221
|
+
...(importedEp.description && !existingEp.description ? { description: importedEp.description } : {}),
|
|
222
|
+
...(importedEp.specSource && !existingEp.specSource ? { specSource: importedEp.specSource } : {}),
|
|
223
|
+
// Confidence = max(skeleton, import)
|
|
224
|
+
confidence: Math.max(existingEp.confidence ?? 0, importedEp.confidence ?? 0) || existingEp.confidence,
|
|
225
|
+
// Provenance stays 'skeleton'
|
|
226
|
+
endpointProvenance: 'skeleton',
|
|
227
|
+
queryParams: mergedQueryParams,
|
|
228
|
+
};
|
|
229
|
+
resultEndpoints.push(enrichedSkeleton);
|
|
230
|
+
enriched++;
|
|
231
|
+
continue;
|
|
232
|
+
}
|
|
162
233
|
// Imported endpoint matches an existing one — check if it would add anything new
|
|
163
234
|
if (!wouldEnrich(existingEp, importedEp)) {
|
|
164
235
|
resultEndpoints.push({
|
package/dist/skill/merge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/skill/merge.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/skill/merge.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,6 +22,13 @@ export function resolveRef(obj, spec, visited = new Set(), depth = 0) {
|
|
|
22
22
|
}
|
|
23
23
|
return merged;
|
|
24
24
|
}
|
|
25
|
+
// Handle oneOf/anyOf: use first option as representative
|
|
26
|
+
if (obj.oneOf && Array.isArray(obj.oneOf) && obj.oneOf.length > 0) {
|
|
27
|
+
return resolveRef(obj.oneOf[0], spec, new Set(visited), depth + 1);
|
|
28
|
+
}
|
|
29
|
+
if (obj.anyOf && Array.isArray(obj.anyOf) && obj.anyOf.length > 0) {
|
|
30
|
+
return resolveRef(obj.anyOf[0], spec, new Set(visited), depth + 1);
|
|
31
|
+
}
|
|
25
32
|
if (!obj.$ref)
|
|
26
33
|
return obj;
|
|
27
34
|
const ref = obj.$ref;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi-converter.js","sourceRoot":"","sources":["../../src/skill/openapi-converter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"openapi-converter.js","sourceRoot":"","sources":["../../src/skill/openapi-converter.ts"],"names":[],"mappings":"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"}
|
package/dist/skill/signing.d.ts
CHANGED
|
@@ -9,6 +9,11 @@ export declare function canonicalize(skill: SkillFile): string;
|
|
|
9
9
|
* Sign a skill file. Returns a new object with signature and provenance: 'self'.
|
|
10
10
|
*/
|
|
11
11
|
export declare function signSkillFile(skill: SkillFile, key: Buffer): SkillFile;
|
|
12
|
+
/**
|
|
13
|
+
* Sign a skill file with a specific provenance value.
|
|
14
|
+
* Use 'self' for captured files, 'imported-signed' for import-only files.
|
|
15
|
+
*/
|
|
16
|
+
export declare function signSkillFileAs(skill: SkillFile, key: Buffer, provenance: 'self' | 'imported-signed'): SkillFile;
|
|
12
17
|
/**
|
|
13
18
|
* Verify a skill file's signature.
|
|
14
19
|
* Returns true if the signature is valid for the given key.
|
package/dist/skill/signing.js
CHANGED
|
@@ -39,6 +39,15 @@ export function signSkillFile(skill, key) {
|
|
|
39
39
|
signature,
|
|
40
40
|
};
|
|
41
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
* Sign a skill file with a specific provenance value.
|
|
44
|
+
* Use 'self' for captured files, 'imported-signed' for import-only files.
|
|
45
|
+
*/
|
|
46
|
+
export function signSkillFileAs(skill, key, provenance) {
|
|
47
|
+
const payload = canonicalize(skill);
|
|
48
|
+
const signature = hmacSign(payload, key);
|
|
49
|
+
return { ...skill, provenance, signature };
|
|
50
|
+
}
|
|
42
51
|
/**
|
|
43
52
|
* Verify a skill file's signature.
|
|
44
53
|
* Returns true if the signature is valid for the given key.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signing.js","sourceRoot":"","sources":["../../src/skill/signing.ts"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGzD;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAgB;IAC3C,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IAC9D,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAgC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YACvE,MAAM,CAAC,GAAG,CAAC,GAAG,YAAY,CAAE,KAAiC,CAAC,GAAG,CAAC,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,KAAgB,EAAE,GAAW;IACzD,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACzC,OAAO;QACL,GAAG,KAAK;QACR,UAAU,EAAE,MAAM;QAClB,SAAS;KACV,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,KAAgB,EAAE,GAAW;IAC3D,IAAI,CAAC,KAAK,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IACnC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACpC,OAAO,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AACnD,CAAC"}
|
|
1
|
+
{"version":3,"file":"signing.js","sourceRoot":"","sources":["../../src/skill/signing.ts"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGzD;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAgB;IAC3C,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IAC9D,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAgC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YACvE,MAAM,CAAC,GAAG,CAAC,GAAG,YAAY,CAAE,KAAiC,CAAC,GAAG,CAAC,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,KAAgB,EAAE,GAAW;IACzD,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACzC,OAAO;QACL,GAAG,KAAK;QACR,UAAU,EAAE,MAAM;QAClB,SAAS;KACV,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAC7B,KAAgB,EAChB,GAAW,EACX,UAAsC;IAEtC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACzC,OAAO,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;AAC7C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,KAAgB,EAAE,GAAW;IAC3D,IAAI,CAAC,KAAK,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IACnC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACpC,OAAO,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AACnD,CAAC"}
|
package/dist/skill/store.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// src/skill/store.ts
|
|
2
|
-
import { readFile, writeFile, mkdir, readdir, access } from 'node:fs/promises';
|
|
2
|
+
import { readFile, writeFile, mkdir, readdir, access, rename } from 'node:fs/promises';
|
|
3
3
|
import { join, dirname } from 'node:path';
|
|
4
4
|
import { homedir } from 'node:os';
|
|
5
5
|
import { validateSkillFile } from './validate.js';
|
|
@@ -31,7 +31,10 @@ export async function writeSkillFile(skill, skillsDir = DEFAULT_SKILLS_DIR) {
|
|
|
31
31
|
await mkdir(skillsDir, { recursive: true, mode: 0o700 });
|
|
32
32
|
await ensureGitignore(skillsDir);
|
|
33
33
|
const filePath = skillPath(skill.domain, skillsDir);
|
|
34
|
-
|
|
34
|
+
const tmpPath = `${filePath}.${process.pid}.tmp`;
|
|
35
|
+
const content = JSON.stringify(skill, null, 2) + '\n';
|
|
36
|
+
await writeFile(tmpPath, content, { mode: 0o600 });
|
|
37
|
+
await rename(tmpPath, filePath);
|
|
35
38
|
return filePath;
|
|
36
39
|
}
|
|
37
40
|
export async function readSkillFile(domain, skillsDir = DEFAULT_SKILLS_DIR, options) {
|
|
@@ -92,8 +95,10 @@ export async function listSkillFiles(skillsDir = DEFAULT_SKILLS_DIR) {
|
|
|
92
95
|
try {
|
|
93
96
|
files = await readdir(skillsDir);
|
|
94
97
|
}
|
|
95
|
-
catch {
|
|
96
|
-
|
|
98
|
+
catch (err) {
|
|
99
|
+
if (err.code === 'ENOENT')
|
|
100
|
+
return [];
|
|
101
|
+
throw err;
|
|
97
102
|
}
|
|
98
103
|
const summaries = [];
|
|
99
104
|
const DOMAIN_RE = /^[a-zA-Z0-9][a-zA-Z0-9._-]*$/;
|
package/dist/skill/store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/skill/store.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/skill/store.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -129,7 +129,7 @@ export interface SkillEndpoint {
|
|
|
129
129
|
responseSchema?: SchemaNode;
|
|
130
130
|
normalizedPath?: string;
|
|
131
131
|
confidence?: number;
|
|
132
|
-
endpointProvenance?: 'captured' | 'openapi-import';
|
|
132
|
+
endpointProvenance?: 'captured' | 'openapi-import' | 'skeleton';
|
|
133
133
|
specSource?: string;
|
|
134
134
|
description?: string;
|
|
135
135
|
}
|
|
@@ -157,7 +157,7 @@ export interface SkillFile {
|
|
|
157
157
|
endpointsEnriched: number;
|
|
158
158
|
}>;
|
|
159
159
|
};
|
|
160
|
-
provenance: 'self' | 'imported' | 'unsigned';
|
|
160
|
+
provenance: 'self' | 'imported' | 'imported-signed' | 'unsigned';
|
|
161
161
|
signature?: string;
|
|
162
162
|
auth?: SkillAuth;
|
|
163
163
|
}
|
|
@@ -205,7 +205,7 @@ export interface SkillSummary {
|
|
|
205
205
|
skillFile: string;
|
|
206
206
|
endpointCount: number;
|
|
207
207
|
capturedAt: string;
|
|
208
|
-
provenance: 'self' | 'imported' | 'unsigned';
|
|
208
|
+
provenance: 'self' | 'imported' | 'imported-signed' | 'unsigned';
|
|
209
209
|
}
|
|
210
210
|
/** Detected web framework with predicted API patterns */
|
|
211
211
|
export interface DetectedFramework {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@apitap/core",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.2",
|
|
4
4
|
"description": "Intercept web API traffic during browsing. Generate portable skill files so AI agents can call APIs directly instead of scraping.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -50,10 +50,12 @@
|
|
|
50
50
|
],
|
|
51
51
|
"dependencies": {
|
|
52
52
|
"@modelcontextprotocol/sdk": "^1.26.0",
|
|
53
|
+
"js-yaml": "^4.1.1",
|
|
53
54
|
"playwright": "^1.58.1",
|
|
54
55
|
"zod": "^4.3.6"
|
|
55
56
|
},
|
|
56
57
|
"devDependencies": {
|
|
58
|
+
"@types/js-yaml": "^4.0.9",
|
|
57
59
|
"@types/node": "^25.2.0",
|
|
58
60
|
"tsx": "^4.21.0",
|
|
59
61
|
"typescript": "^5.9.3"
|
|
@@ -317,8 +317,40 @@ export async function attach(options: AttachOptions): Promise<AttachResult> {
|
|
|
317
317
|
).then((result) => {
|
|
318
318
|
processExchange(key, req, resp, (result.body as string) ?? '', log);
|
|
319
319
|
}).catch(() => {
|
|
320
|
-
// Body evicted
|
|
321
|
-
|
|
320
|
+
// Body evicted — write skeleton instead of full capture with empty body
|
|
321
|
+
if (!shouldCapture({ url: req.url, status: resp.status, contentType: resp.mimeType })) {
|
|
322
|
+
filteredRequests++;
|
|
323
|
+
requests.delete(key);
|
|
324
|
+
responses.delete(key);
|
|
325
|
+
return;
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
let hostname: string;
|
|
329
|
+
try { hostname = new URL(req.url).hostname; } catch {
|
|
330
|
+
requests.delete(key);
|
|
331
|
+
responses.delete(key);
|
|
332
|
+
return;
|
|
333
|
+
}
|
|
334
|
+
if (!matchesDomainGlob(hostname, domainPatterns)) {
|
|
335
|
+
filteredRequests++;
|
|
336
|
+
requests.delete(key);
|
|
337
|
+
responses.delete(key);
|
|
338
|
+
return;
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
if (!generators.has(hostname)) generators.set(hostname, new SkillGenerator());
|
|
342
|
+
const gen = generators.get(hostname)!;
|
|
343
|
+
const endpoint = gen.addSkeleton({
|
|
344
|
+
url: req.url,
|
|
345
|
+
method: req.method,
|
|
346
|
+
headers: req.headers,
|
|
347
|
+
postData: req.postData,
|
|
348
|
+
});
|
|
349
|
+
if (endpoint) {
|
|
350
|
+
log(` [skeleton] ${req.method} ${hostname} ${endpoint.path} (body evicted)`);
|
|
351
|
+
}
|
|
352
|
+
requests.delete(key);
|
|
353
|
+
responses.delete(key);
|
|
322
354
|
});
|
|
323
355
|
});
|
|
324
356
|
|
package/src/cli.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { writeSkillFile, readSkillFile, listSkillFiles } from './skill/store.js'
|
|
|
5
5
|
import { replayEndpoint, getConfidenceHint } from './replay/engine.js';
|
|
6
6
|
import { AuthManager, getMachineId } from './auth/manager.js';
|
|
7
7
|
import { deriveSigningKey } from './auth/crypto.js';
|
|
8
|
-
import { signSkillFile } from './skill/signing.js';
|
|
8
|
+
import { signSkillFile, signSkillFileAs } from './skill/signing.js';
|
|
9
9
|
import { importSkillFile } from './skill/importer.js';
|
|
10
10
|
import { resolveAndValidateUrl } from './skill/ssrf.js';
|
|
11
11
|
import { verifyEndpoints } from './capture/verifier.js';
|
|
@@ -458,6 +458,20 @@ async function handleReplay(positional: string[], flags: Record<string, string |
|
|
|
458
458
|
_skipSsrfCheck: dangerDisableSsrf,
|
|
459
459
|
});
|
|
460
460
|
|
|
461
|
+
// Auto-upgrade imported endpoints on successful replay
|
|
462
|
+
if ((result as any).upgrade && endpoint) {
|
|
463
|
+
endpoint.confidence = 1.0;
|
|
464
|
+
endpoint.endpointProvenance = 'captured';
|
|
465
|
+
// Update example with the actual successful request
|
|
466
|
+
endpoint.examples.responsePreview = typeof result.data === 'object' ? result.data : null;
|
|
467
|
+
// Re-sign and write
|
|
468
|
+
const signed = signSkillFile(skill, signingKey);
|
|
469
|
+
await writeSkillFile(signed, SKILLS_DIR);
|
|
470
|
+
if (!json) {
|
|
471
|
+
console.error(' \u2713 Endpoint upgraded to captured (confidence 1.0)');
|
|
472
|
+
}
|
|
473
|
+
}
|
|
474
|
+
|
|
461
475
|
if (json) {
|
|
462
476
|
console.log(JSON.stringify({
|
|
463
477
|
status: result.status,
|
|
@@ -465,7 +479,7 @@ async function handleReplay(positional: string[], flags: Record<string, string |
|
|
|
465
479
|
...(result.contractWarnings?.length ? { contractWarnings: result.contractWarnings } : {}),
|
|
466
480
|
}, null, 2));
|
|
467
481
|
} else {
|
|
468
|
-
const hint = endpoint ? getConfidenceHint(endpoint.confidence) : null;
|
|
482
|
+
const hint = endpoint ? getConfidenceHint(endpoint.confidence, endpoint.endpointProvenance) : null;
|
|
469
483
|
if (hint) {
|
|
470
484
|
console.error(` Note: ${hint}`);
|
|
471
485
|
}
|
|
@@ -490,17 +504,6 @@ async function handleImport(positional: string[], flags: Record<string, string |
|
|
|
490
504
|
|
|
491
505
|
const json = flags.json === true;
|
|
492
506
|
|
|
493
|
-
// Reject YAML files with helpful message
|
|
494
|
-
if (/\.ya?ml$/i.test(source)) {
|
|
495
|
-
const msg = 'YAML specs not yet supported. Convert to JSON first: npx swagger-cli bundle spec.yaml -o spec.json';
|
|
496
|
-
if (json) {
|
|
497
|
-
console.log(JSON.stringify({ success: false, reason: msg }));
|
|
498
|
-
} else {
|
|
499
|
-
console.error(`Error: ${msg}`);
|
|
500
|
-
}
|
|
501
|
-
process.exit(1);
|
|
502
|
-
}
|
|
503
|
-
|
|
504
507
|
// Load content — from URL or file
|
|
505
508
|
let rawText: string;
|
|
506
509
|
let sourceUrl: string = source;
|
|
@@ -542,18 +545,25 @@ async function handleImport(positional: string[], flags: Record<string, string |
|
|
|
542
545
|
}
|
|
543
546
|
}
|
|
544
547
|
|
|
545
|
-
// Parse JSON
|
|
548
|
+
// Parse JSON or YAML
|
|
546
549
|
let parsed: any;
|
|
547
550
|
try {
|
|
548
551
|
parsed = JSON.parse(rawText);
|
|
549
552
|
} catch {
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
553
|
+
try {
|
|
554
|
+
const yaml = await import('js-yaml');
|
|
555
|
+
parsed = yaml.load(rawText);
|
|
556
|
+
if (typeof parsed !== 'object' || parsed === null) {
|
|
557
|
+
throw new Error('YAML parsed to non-object');
|
|
558
|
+
}
|
|
559
|
+
} catch (yamlErr: any) {
|
|
560
|
+
if (json) {
|
|
561
|
+
console.log(JSON.stringify({ success: false, reason: `Invalid JSON/YAML: ${yamlErr.message}` }));
|
|
562
|
+
} else {
|
|
563
|
+
console.error(`Error: Could not parse as JSON or YAML: ${yamlErr.message}`);
|
|
564
|
+
}
|
|
565
|
+
process.exit(1);
|
|
555
566
|
}
|
|
556
|
-
process.exit(1);
|
|
557
567
|
}
|
|
558
568
|
|
|
559
569
|
// Route: OpenAPI spec vs SkillFile
|
|
@@ -631,6 +641,8 @@ async function handleOpenAPIImport(
|
|
|
631
641
|
): Promise<void> {
|
|
632
642
|
const json = flags.json === true;
|
|
633
643
|
const dryRun = flags['dry-run'] === true;
|
|
644
|
+
const update = flags.update === true;
|
|
645
|
+
const force = flags.force === true;
|
|
634
646
|
const skillsDir = SKILLS_DIR || join(APITAP_DIR, 'skills');
|
|
635
647
|
|
|
636
648
|
// Convert OpenAPI spec to endpoints
|
|
@@ -679,6 +691,15 @@ async function handleOpenAPIImport(
|
|
|
679
691
|
}
|
|
680
692
|
}
|
|
681
693
|
|
|
694
|
+
if (!force && update && existing?.metadata.importHistory?.some(h => h.specUrl === specUrl)) {
|
|
695
|
+
if (json) {
|
|
696
|
+
console.log(JSON.stringify({ success: true, skipped: true, reason: 'Already imported from this spec URL' }));
|
|
697
|
+
} else {
|
|
698
|
+
console.log(' Already imported from this spec URL. Use --force to reimport.\n');
|
|
699
|
+
}
|
|
700
|
+
return;
|
|
701
|
+
}
|
|
702
|
+
|
|
682
703
|
// Merge
|
|
683
704
|
const { skillFile, diff } = mergeSkillFile(existing, endpoints, meta);
|
|
684
705
|
|
|
@@ -705,7 +726,11 @@ async function handleOpenAPIImport(
|
|
|
705
726
|
// Sign and write
|
|
706
727
|
const machineId = await getMachineId();
|
|
707
728
|
const key = deriveSigningKey(machineId);
|
|
708
|
-
|
|
729
|
+
// Determine provenance: 'self' if file has any captured endpoints, 'imported-signed' if all from import
|
|
730
|
+
const hasCaptured = skillFile.endpoints.some(
|
|
731
|
+
ep => !ep.endpointProvenance || ep.endpointProvenance === 'captured'
|
|
732
|
+
);
|
|
733
|
+
const signed = signSkillFileAs(skillFile, key, hasCaptured ? 'self' : 'imported-signed');
|
|
709
734
|
const filePath = await writeSkillFile(signed, skillsDir);
|
|
710
735
|
|
|
711
736
|
if (json) {
|
|
@@ -737,6 +762,8 @@ function printOpenAPIDiff(
|
|
|
737
762
|
async function handleApisGuruImport(flags: Record<string, string | boolean>): Promise<void> {
|
|
738
763
|
const json = flags.json === true;
|
|
739
764
|
const dryRun = flags['dry-run'] === true;
|
|
765
|
+
const update = flags.update === true;
|
|
766
|
+
const force = flags.force === true;
|
|
740
767
|
const limit = typeof flags.limit === 'string' ? parseInt(flags.limit, 10) : 100;
|
|
741
768
|
const search = typeof flags.search === 'string' ? flags.search : undefined;
|
|
742
769
|
const skillsDir = SKILLS_DIR || join(APITAP_DIR, 'skills');
|
|
@@ -832,6 +859,16 @@ async function handleApisGuruImport(flags: Record<string, string | boolean>): Pr
|
|
|
832
859
|
}
|
|
833
860
|
}
|
|
834
861
|
|
|
862
|
+
if (!force && update && existing?.metadata.importHistory?.length) {
|
|
863
|
+
const lastImport = existing.metadata.importHistory[existing.metadata.importHistory.length - 1];
|
|
864
|
+
if (lastImport.importedAt >= entry.updated) {
|
|
865
|
+
if (!json) console.log(` [${idx}/${total}] SKIP ${domain.padEnd(24)} up to date`);
|
|
866
|
+
results.push({ index: i + 1, status: 'skip', domain, title: entry.title, endpointsAdded: 0 });
|
|
867
|
+
skippedApis++;
|
|
868
|
+
continue;
|
|
869
|
+
}
|
|
870
|
+
}
|
|
871
|
+
|
|
835
872
|
// Merge
|
|
836
873
|
const { skillFile, diff } = mergeSkillFile(existing, endpoints, meta);
|
|
837
874
|
|
|
@@ -841,7 +878,11 @@ async function handleApisGuruImport(flags: Record<string, string | boolean>): Pr
|
|
|
841
878
|
|
|
842
879
|
if (!dryRun) {
|
|
843
880
|
// Sign and write
|
|
844
|
-
|
|
881
|
+
// Determine provenance: 'self' if file has any captured endpoints, 'imported-signed' if all from import
|
|
882
|
+
const hasCaptured = skillFile.endpoints.some(
|
|
883
|
+
ep => !ep.endpointProvenance || ep.endpointProvenance === 'captured'
|
|
884
|
+
);
|
|
885
|
+
const signed = signSkillFileAs(skillFile, key, hasCaptured ? 'self' : 'imported-signed');
|
|
845
886
|
await writeSkillFile(signed, skillsDir);
|
|
846
887
|
}
|
|
847
888
|
|