@kya-os/agentshield-nextjs 0.1.29 → 0.1.31
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/create-middleware.js +591 -12
- package/dist/create-middleware.js.map +1 -1
- package/dist/create-middleware.mjs +591 -12
- package/dist/create-middleware.mjs.map +1 -1
- package/dist/edge-detector-wrapper.js +251 -12
- package/dist/edge-detector-wrapper.js.map +1 -1
- package/dist/edge-detector-wrapper.mjs +251 -12
- package/dist/edge-detector-wrapper.mjs.map +1 -1
- package/dist/index.js +591 -12
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +591 -12
- package/dist/index.mjs.map +1 -1
- package/dist/middleware.js +587 -8
- package/dist/middleware.js.map +1 -1
- package/dist/middleware.mjs +587 -8
- package/dist/middleware.mjs.map +1 -1
- package/dist/signature-verifier.js +220 -0
- package/dist/signature-verifier.js.map +1 -0
- package/dist/signature-verifier.mjs +216 -0
- package/dist/signature-verifier.mjs.map +1 -0
- package/package.json +2 -2
- package/wasm/agentshield_wasm.d.ts +121 -0
- package/wasm/agentshield_wasm.js +576 -0
- package/wasm/agentshield_wasm_bg.wasm +0 -0
- package/dist/create-middleware.d.mts +0 -16
- package/dist/create-middleware.d.ts +0 -16
- package/dist/edge-detector-wrapper.d.mts +0 -42
- package/dist/edge-detector-wrapper.d.ts +0 -42
- package/dist/edge-runtime-loader.d.mts +0 -49
- package/dist/edge-runtime-loader.d.ts +0 -49
- package/dist/edge-wasm-middleware.d.mts +0 -58
- package/dist/edge-wasm-middleware.d.ts +0 -58
- package/dist/index.d.mts +0 -19
- package/dist/index.d.ts +0 -19
- package/dist/middleware.d.mts +0 -20
- package/dist/middleware.d.ts +0 -20
- package/dist/nodejs-wasm-loader.d.mts +0 -25
- package/dist/nodejs-wasm-loader.d.ts +0 -25
- package/dist/session-tracker.d.mts +0 -55
- package/dist/session-tracker.d.ts +0 -55
- package/dist/types-BJTEUa4T.d.mts +0 -88
- package/dist/types-BJTEUa4T.d.ts +0 -88
- package/dist/wasm-middleware.d.mts +0 -62
- package/dist/wasm-middleware.d.ts +0 -62
- package/dist/wasm-setup.d.mts +0 -46
- package/dist/wasm-setup.d.ts +0 -46
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { NextRequest, NextResponse } from 'next/server';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* WASM-enabled middleware for Next.js with AgentShield
|
|
5
|
-
* Following official Next.js documentation for WebAssembly in Edge Runtime
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
interface WasmDetectionResult {
|
|
9
|
-
isAgent: boolean;
|
|
10
|
-
confidence: number;
|
|
11
|
-
agent?: string | undefined;
|
|
12
|
-
verificationMethod: 'signature' | 'pattern' | 'none';
|
|
13
|
-
riskLevel: 'low' | 'medium' | 'high';
|
|
14
|
-
timestamp: string;
|
|
15
|
-
}
|
|
16
|
-
interface AgentShieldConfig {
|
|
17
|
-
onAgentDetected?: (result: WasmDetectionResult) => void | Promise<void>;
|
|
18
|
-
blockOnHighConfidence?: boolean;
|
|
19
|
-
confidenceThreshold?: number;
|
|
20
|
-
skipPaths?: string[];
|
|
21
|
-
blockedResponse?: {
|
|
22
|
-
status?: number;
|
|
23
|
-
message?: string;
|
|
24
|
-
headers?: Record<string, string>;
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Create a WASM-enabled AgentShield middleware
|
|
29
|
-
* This must be used with proper WASM module import at the top of middleware.ts
|
|
30
|
-
*
|
|
31
|
-
* @example
|
|
32
|
-
* ```typescript
|
|
33
|
-
* // middleware.ts
|
|
34
|
-
* import wasmModule from '@kya-os/agentshield/wasm?module';
|
|
35
|
-
* import { createWasmAgentShieldMiddleware } from '@kya-os/agentshield-nextjs';
|
|
36
|
-
*
|
|
37
|
-
* const wasmInstance = await WebAssembly.instantiate(wasmModule);
|
|
38
|
-
*
|
|
39
|
-
* export const middleware = createWasmAgentShieldMiddleware({
|
|
40
|
-
* wasmInstance,
|
|
41
|
-
* onAgentDetected: (result) => {
|
|
42
|
-
* console.log(`Detected ${result.agent} with ${result.confidence * 100}% confidence`);
|
|
43
|
-
* }
|
|
44
|
-
* });
|
|
45
|
-
* ```
|
|
46
|
-
*/
|
|
47
|
-
declare function createWasmAgentShieldMiddleware(config: AgentShieldConfig & {
|
|
48
|
-
wasmInstance?: WebAssembly.Instance;
|
|
49
|
-
}): (request: NextRequest) => Promise<NextResponse<unknown>>;
|
|
50
|
-
/**
|
|
51
|
-
* Helper to load and instantiate WASM module
|
|
52
|
-
* This should be called at the top of your middleware.ts file
|
|
53
|
-
*
|
|
54
|
-
* @example
|
|
55
|
-
* ```typescript
|
|
56
|
-
* import wasmModule from '@kya-os/agentshield/wasm?module';
|
|
57
|
-
* const wasmInstance = await instantiateWasm(wasmModule);
|
|
58
|
-
* ```
|
|
59
|
-
*/
|
|
60
|
-
declare function instantiateWasm(wasmModule: WebAssembly.Module): Promise<WebAssembly.Instance>;
|
|
61
|
-
|
|
62
|
-
export { type AgentShieldConfig, type WasmDetectionResult, createWasmAgentShieldMiddleware, instantiateWasm };
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { NextRequest, NextResponse } from 'next/server';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* WASM-enabled middleware for Next.js with AgentShield
|
|
5
|
-
* Following official Next.js documentation for WebAssembly in Edge Runtime
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
interface WasmDetectionResult {
|
|
9
|
-
isAgent: boolean;
|
|
10
|
-
confidence: number;
|
|
11
|
-
agent?: string | undefined;
|
|
12
|
-
verificationMethod: 'signature' | 'pattern' | 'none';
|
|
13
|
-
riskLevel: 'low' | 'medium' | 'high';
|
|
14
|
-
timestamp: string;
|
|
15
|
-
}
|
|
16
|
-
interface AgentShieldConfig {
|
|
17
|
-
onAgentDetected?: (result: WasmDetectionResult) => void | Promise<void>;
|
|
18
|
-
blockOnHighConfidence?: boolean;
|
|
19
|
-
confidenceThreshold?: number;
|
|
20
|
-
skipPaths?: string[];
|
|
21
|
-
blockedResponse?: {
|
|
22
|
-
status?: number;
|
|
23
|
-
message?: string;
|
|
24
|
-
headers?: Record<string, string>;
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Create a WASM-enabled AgentShield middleware
|
|
29
|
-
* This must be used with proper WASM module import at the top of middleware.ts
|
|
30
|
-
*
|
|
31
|
-
* @example
|
|
32
|
-
* ```typescript
|
|
33
|
-
* // middleware.ts
|
|
34
|
-
* import wasmModule from '@kya-os/agentshield/wasm?module';
|
|
35
|
-
* import { createWasmAgentShieldMiddleware } from '@kya-os/agentshield-nextjs';
|
|
36
|
-
*
|
|
37
|
-
* const wasmInstance = await WebAssembly.instantiate(wasmModule);
|
|
38
|
-
*
|
|
39
|
-
* export const middleware = createWasmAgentShieldMiddleware({
|
|
40
|
-
* wasmInstance,
|
|
41
|
-
* onAgentDetected: (result) => {
|
|
42
|
-
* console.log(`Detected ${result.agent} with ${result.confidence * 100}% confidence`);
|
|
43
|
-
* }
|
|
44
|
-
* });
|
|
45
|
-
* ```
|
|
46
|
-
*/
|
|
47
|
-
declare function createWasmAgentShieldMiddleware(config: AgentShieldConfig & {
|
|
48
|
-
wasmInstance?: WebAssembly.Instance;
|
|
49
|
-
}): (request: NextRequest) => Promise<NextResponse<unknown>>;
|
|
50
|
-
/**
|
|
51
|
-
* Helper to load and instantiate WASM module
|
|
52
|
-
* This should be called at the top of your middleware.ts file
|
|
53
|
-
*
|
|
54
|
-
* @example
|
|
55
|
-
* ```typescript
|
|
56
|
-
* import wasmModule from '@kya-os/agentshield/wasm?module';
|
|
57
|
-
* const wasmInstance = await instantiateWasm(wasmModule);
|
|
58
|
-
* ```
|
|
59
|
-
*/
|
|
60
|
-
declare function instantiateWasm(wasmModule: WebAssembly.Module): Promise<WebAssembly.Instance>;
|
|
61
|
-
|
|
62
|
-
export { type AgentShieldConfig, type WasmDetectionResult, createWasmAgentShieldMiddleware, instantiateWasm };
|
package/dist/wasm-setup.d.mts
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* WASM Setup for AgentShield in Next.js Edge Runtime
|
|
3
|
-
*
|
|
4
|
-
* This module handles WASM initialization for cryptographic signature verification.
|
|
5
|
-
* Designed to work without top-level await to avoid Next.js middleware issues.
|
|
6
|
-
*
|
|
7
|
-
* Usage in middleware.ts:
|
|
8
|
-
* ```typescript
|
|
9
|
-
* import { setupWasm } from '@kya-os/agentshield-nextjs/wasm-setup';
|
|
10
|
-
* import { createAgentShieldMiddleware } from '@kya-os/agentshield-nextjs';
|
|
11
|
-
*
|
|
12
|
-
* export async function middleware(request: NextRequest) {
|
|
13
|
-
* // Initialize WASM inside the middleware function
|
|
14
|
-
* await setupWasm();
|
|
15
|
-
*
|
|
16
|
-
* const agentShieldMiddleware = createAgentShieldMiddleware({...});
|
|
17
|
-
* return agentShieldMiddleware(request);
|
|
18
|
-
* }
|
|
19
|
-
* ```
|
|
20
|
-
*/
|
|
21
|
-
/**
|
|
22
|
-
* Initialize WASM module for AgentShield
|
|
23
|
-
*
|
|
24
|
-
* This function:
|
|
25
|
-
* - Loads WASM in production/Edge Runtime for cryptographic verification
|
|
26
|
-
* - Skips WASM in test environments (Jest) automatically
|
|
27
|
-
* - Is safe to call multiple times (idempotent)
|
|
28
|
-
* - Handles errors gracefully with fallback to pattern detection
|
|
29
|
-
*
|
|
30
|
-
* @returns Promise that resolves when initialization is complete
|
|
31
|
-
*/
|
|
32
|
-
declare function setupWasm(): Promise<void>;
|
|
33
|
-
/**
|
|
34
|
-
* Check if WASM has been initialized
|
|
35
|
-
*
|
|
36
|
-
* @returns true if WASM setup has been attempted (success or failure)
|
|
37
|
-
*/
|
|
38
|
-
declare function isWasmInitialized(): boolean;
|
|
39
|
-
/**
|
|
40
|
-
* Reset WASM initialization state (mainly for testing)
|
|
41
|
-
*
|
|
42
|
-
* @internal
|
|
43
|
-
*/
|
|
44
|
-
declare function resetWasmState(): void;
|
|
45
|
-
|
|
46
|
-
export { isWasmInitialized, resetWasmState, setupWasm };
|
package/dist/wasm-setup.d.ts
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* WASM Setup for AgentShield in Next.js Edge Runtime
|
|
3
|
-
*
|
|
4
|
-
* This module handles WASM initialization for cryptographic signature verification.
|
|
5
|
-
* Designed to work without top-level await to avoid Next.js middleware issues.
|
|
6
|
-
*
|
|
7
|
-
* Usage in middleware.ts:
|
|
8
|
-
* ```typescript
|
|
9
|
-
* import { setupWasm } from '@kya-os/agentshield-nextjs/wasm-setup';
|
|
10
|
-
* import { createAgentShieldMiddleware } from '@kya-os/agentshield-nextjs';
|
|
11
|
-
*
|
|
12
|
-
* export async function middleware(request: NextRequest) {
|
|
13
|
-
* // Initialize WASM inside the middleware function
|
|
14
|
-
* await setupWasm();
|
|
15
|
-
*
|
|
16
|
-
* const agentShieldMiddleware = createAgentShieldMiddleware({...});
|
|
17
|
-
* return agentShieldMiddleware(request);
|
|
18
|
-
* }
|
|
19
|
-
* ```
|
|
20
|
-
*/
|
|
21
|
-
/**
|
|
22
|
-
* Initialize WASM module for AgentShield
|
|
23
|
-
*
|
|
24
|
-
* This function:
|
|
25
|
-
* - Loads WASM in production/Edge Runtime for cryptographic verification
|
|
26
|
-
* - Skips WASM in test environments (Jest) automatically
|
|
27
|
-
* - Is safe to call multiple times (idempotent)
|
|
28
|
-
* - Handles errors gracefully with fallback to pattern detection
|
|
29
|
-
*
|
|
30
|
-
* @returns Promise that resolves when initialization is complete
|
|
31
|
-
*/
|
|
32
|
-
declare function setupWasm(): Promise<void>;
|
|
33
|
-
/**
|
|
34
|
-
* Check if WASM has been initialized
|
|
35
|
-
*
|
|
36
|
-
* @returns true if WASM setup has been attempted (success or failure)
|
|
37
|
-
*/
|
|
38
|
-
declare function isWasmInitialized(): boolean;
|
|
39
|
-
/**
|
|
40
|
-
* Reset WASM initialization state (mainly for testing)
|
|
41
|
-
*
|
|
42
|
-
* @internal
|
|
43
|
-
*/
|
|
44
|
-
declare function resetWasmState(): void;
|
|
45
|
-
|
|
46
|
-
export { isWasmInitialized, resetWasmState, setupWasm };
|