@kya-os/agentshield-nextjs 0.1.34 → 0.1.35
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/index.js +36 -14
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +36 -14
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1380,14 +1380,32 @@ function createEnhancedAgentShieldMiddleware(config = {}) {
|
|
|
1380
1380
|
});
|
|
1381
1381
|
return storageInitPromise;
|
|
1382
1382
|
};
|
|
1383
|
-
let
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
if (
|
|
1387
|
-
|
|
1383
|
+
let detector = null;
|
|
1384
|
+
let detectorInitPromise = null;
|
|
1385
|
+
const getDetector = async () => {
|
|
1386
|
+
if (detector) return detector;
|
|
1387
|
+
if (detectorInitPromise) {
|
|
1388
|
+
await detectorInitPromise;
|
|
1389
|
+
return detector;
|
|
1388
1390
|
}
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
+
detectorInitPromise = (async () => {
|
|
1392
|
+
try {
|
|
1393
|
+
const wasmAvailable = await checkWasmAvailability();
|
|
1394
|
+
if (wasmAvailable) {
|
|
1395
|
+
console.log("[AgentShield] \u2705 WASM support detected - enhanced detection enabled");
|
|
1396
|
+
detector = new EdgeAgentDetectorWrapperWithWasm({ enableWasm: true });
|
|
1397
|
+
} else {
|
|
1398
|
+
console.log("[AgentShield] \u2139\uFE0F Using pattern-based detection (WASM not available)");
|
|
1399
|
+
detector = new EdgeAgentDetectorWrapper({});
|
|
1400
|
+
}
|
|
1401
|
+
} catch (error) {
|
|
1402
|
+
console.warn("[AgentShield] Failed to initialize WASM, using fallback:", error);
|
|
1403
|
+
detector = new EdgeAgentDetectorWrapper({});
|
|
1404
|
+
}
|
|
1405
|
+
})();
|
|
1406
|
+
await detectorInitPromise;
|
|
1407
|
+
return detector;
|
|
1408
|
+
};
|
|
1391
1409
|
const sessionManager = new SessionManager();
|
|
1392
1410
|
const sessionTrackingEnabled = config.sessionTracking?.enabled !== false;
|
|
1393
1411
|
return async (request) => {
|
|
@@ -1407,7 +1425,8 @@ function createEnhancedAgentShieldMiddleware(config = {}) {
|
|
|
1407
1425
|
method: request.method,
|
|
1408
1426
|
timestamp: /* @__PURE__ */ new Date()
|
|
1409
1427
|
};
|
|
1410
|
-
const
|
|
1428
|
+
const activeDetector = await getDetector();
|
|
1429
|
+
const result = await activeDetector.analyze(context);
|
|
1411
1430
|
let finalConfidence = result.confidence;
|
|
1412
1431
|
let verificationMethod = result.verificationMethod || "pattern";
|
|
1413
1432
|
if (result.isAgent) {
|
|
@@ -1492,12 +1511,15 @@ function createEnhancedAgentShieldMiddleware(config = {}) {
|
|
|
1492
1511
|
return response2;
|
|
1493
1512
|
}
|
|
1494
1513
|
case "log":
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1514
|
+
const isInteresting = finalConfidence >= 0.9 || result.detectedAgent?.name?.toLowerCase().includes("chatgpt") || result.detectedAgent?.name?.toLowerCase().includes("perplexity") || verificationMethod === "signature";
|
|
1515
|
+
if (isInteresting) {
|
|
1516
|
+
console.log(`[AgentShield] \u{1F916} AI Agent detected (${verificationMethod}):`, {
|
|
1517
|
+
agent: result.detectedAgent?.name,
|
|
1518
|
+
confidence: `${(finalConfidence * 100).toFixed(0)}%`,
|
|
1519
|
+
path: pathWithQuery,
|
|
1520
|
+
verification: verificationMethod
|
|
1521
|
+
});
|
|
1522
|
+
}
|
|
1501
1523
|
break;
|
|
1502
1524
|
}
|
|
1503
1525
|
}
|