@kya-os/agentshield-nextjs 0.3.3 → 0.3.5

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.
Files changed (110) hide show
  1. package/README.md +21 -369
  2. package/index.js +9 -0
  3. package/package.json +7 -141
  4. package/EDGE_RUNTIME_WASM_SETUP.md +0 -348
  5. package/bin/setup-edge-wasm.js +0 -525
  6. package/dist/.tsbuildinfo +0 -1
  7. package/dist/api-client.d.mts +0 -196
  8. package/dist/api-client.d.ts +0 -196
  9. package/dist/api-client.js +0 -200
  10. package/dist/api-client.js.map +0 -1
  11. package/dist/api-client.mjs +0 -196
  12. package/dist/api-client.mjs.map +0 -1
  13. package/dist/api-middleware.d.mts +0 -140
  14. package/dist/api-middleware.d.ts +0 -140
  15. package/dist/api-middleware.js +0 -511
  16. package/dist/api-middleware.js.map +0 -1
  17. package/dist/api-middleware.mjs +0 -508
  18. package/dist/api-middleware.mjs.map +0 -1
  19. package/dist/create-middleware.d.mts +0 -17
  20. package/dist/create-middleware.d.ts +0 -17
  21. package/dist/create-middleware.js +0 -1381
  22. package/dist/create-middleware.js.map +0 -1
  23. package/dist/create-middleware.mjs +0 -1358
  24. package/dist/create-middleware.mjs.map +0 -1
  25. package/dist/edge/index.d.mts +0 -110
  26. package/dist/edge/index.d.ts +0 -110
  27. package/dist/edge/index.js +0 -277
  28. package/dist/edge/index.js.map +0 -1
  29. package/dist/edge/index.mjs +0 -275
  30. package/dist/edge/index.mjs.map +0 -1
  31. package/dist/edge-detector-wrapper.d.mts +0 -34
  32. package/dist/edge-detector-wrapper.d.ts +0 -34
  33. package/dist/edge-detector-wrapper.js +0 -596
  34. package/dist/edge-detector-wrapper.js.map +0 -1
  35. package/dist/edge-detector-wrapper.mjs +0 -574
  36. package/dist/edge-detector-wrapper.mjs.map +0 -1
  37. package/dist/edge-runtime-loader.d.mts +0 -50
  38. package/dist/edge-runtime-loader.d.ts +0 -50
  39. package/dist/edge-runtime-loader.js +0 -204
  40. package/dist/edge-runtime-loader.js.map +0 -1
  41. package/dist/edge-runtime-loader.mjs +0 -201
  42. package/dist/edge-runtime-loader.mjs.map +0 -1
  43. package/dist/edge-wasm-middleware.d.mts +0 -68
  44. package/dist/edge-wasm-middleware.d.ts +0 -68
  45. package/dist/edge-wasm-middleware.js +0 -318
  46. package/dist/edge-wasm-middleware.js.map +0 -1
  47. package/dist/edge-wasm-middleware.mjs +0 -315
  48. package/dist/edge-wasm-middleware.mjs.map +0 -1
  49. package/dist/enhanced-middleware.d.mts +0 -153
  50. package/dist/enhanced-middleware.d.ts +0 -153
  51. package/dist/enhanced-middleware.js +0 -1082
  52. package/dist/enhanced-middleware.js.map +0 -1
  53. package/dist/enhanced-middleware.mjs +0 -1080
  54. package/dist/enhanced-middleware.mjs.map +0 -1
  55. package/dist/index.d.mts +0 -24
  56. package/dist/index.d.ts +0 -24
  57. package/dist/index.js +0 -2717
  58. package/dist/index.js.map +0 -1
  59. package/dist/index.mjs +0 -2662
  60. package/dist/index.mjs.map +0 -1
  61. package/dist/middleware.d.mts +0 -21
  62. package/dist/middleware.d.ts +0 -21
  63. package/dist/middleware.js +0 -1362
  64. package/dist/middleware.js.map +0 -1
  65. package/dist/middleware.mjs +0 -1339
  66. package/dist/middleware.mjs.map +0 -1
  67. package/dist/nodejs-wasm-loader.d.mts +0 -25
  68. package/dist/nodejs-wasm-loader.d.ts +0 -25
  69. package/dist/nodejs-wasm-loader.js +0 -78
  70. package/dist/nodejs-wasm-loader.js.map +0 -1
  71. package/dist/nodejs-wasm-loader.mjs +0 -68
  72. package/dist/nodejs-wasm-loader.mjs.map +0 -1
  73. package/dist/policy.d.mts +0 -162
  74. package/dist/policy.d.ts +0 -162
  75. package/dist/policy.js +0 -189
  76. package/dist/policy.js.map +0 -1
  77. package/dist/policy.mjs +0 -165
  78. package/dist/policy.mjs.map +0 -1
  79. package/dist/session-tracker.d.mts +0 -55
  80. package/dist/session-tracker.d.ts +0 -55
  81. package/dist/session-tracker.js +0 -170
  82. package/dist/session-tracker.js.map +0 -1
  83. package/dist/session-tracker.mjs +0 -167
  84. package/dist/session-tracker.mjs.map +0 -1
  85. package/dist/signature-verifier.d.mts +0 -33
  86. package/dist/signature-verifier.d.ts +0 -33
  87. package/dist/signature-verifier.js +0 -386
  88. package/dist/signature-verifier.js.map +0 -1
  89. package/dist/signature-verifier.mjs +0 -362
  90. package/dist/signature-verifier.mjs.map +0 -1
  91. package/dist/types-DVmy9NE3.d.mts +0 -105
  92. package/dist/types-DVmy9NE3.d.ts +0 -105
  93. package/dist/wasm-middleware.d.mts +0 -63
  94. package/dist/wasm-middleware.d.ts +0 -63
  95. package/dist/wasm-middleware.js +0 -98
  96. package/dist/wasm-middleware.js.map +0 -1
  97. package/dist/wasm-middleware.mjs +0 -95
  98. package/dist/wasm-middleware.mjs.map +0 -1
  99. package/dist/wasm-setup.d.mts +0 -46
  100. package/dist/wasm-setup.d.ts +0 -46
  101. package/dist/wasm-setup.js +0 -157
  102. package/dist/wasm-setup.js.map +0 -1
  103. package/dist/wasm-setup.mjs +0 -148
  104. package/dist/wasm-setup.mjs.map +0 -1
  105. package/templates/middleware-wasm-100.ts +0 -151
  106. package/wasm/agentshield_wasm.d.ts +0 -479
  107. package/wasm/agentshield_wasm.js +0 -1536
  108. package/wasm/agentshield_wasm_bg.wasm +0 -0
  109. package/wasm/package.json +0 -30
  110. package/wasm.d.ts +0 -21
package/README.md CHANGED
@@ -1,380 +1,32 @@
1
1
  # @kya-os/agentshield-nextjs
2
2
 
3
- Next.js middleware and React hooks for AgentShield AI agent detection and protection.
3
+ > **DEPRECATED renamed to `@kya-os/checkpoint-nextjs`.**
4
4
 
5
- ## Features
5
+ See the [agent-shield repo's Phase D rename context](https://github.com/Know-That-Ai/agent-shield/issues/2483).
6
6
 
7
- - 🚀 **Next.js Middleware**: Edge-compatible middleware for all routes
8
- - ⚛️ **React Hooks**: Client-side detection and monitoring
9
- - 🎯 **Flexible Actions**: Block, redirect, rewrite, or log detected agents
10
- - 🛡️ **Edge Runtime**: Optimized for Vercel Edge Functions
11
- - 📊 **Built-in Analytics**: Track detection patterns and statistics
7
+ ## Migration
12
8
 
13
- ## Installation
14
-
15
- ```bash
16
- npm install @kya-os/agentshield-nextjs
17
- ```
18
-
19
- ## Quick Start
20
-
21
- ### Middleware Setup
22
-
23
- Create `middleware.js` (or `middleware.ts`) in your project root:
24
-
25
- ```javascript
26
- import { agentShield } from '@kya-os/agentshield-nextjs';
27
-
28
- export default agentShield({
29
- onAgentDetected: 'block',
30
- confidenceThreshold: 0.8,
31
-
32
- // NEW: Session tracking (v0.1.27+)
33
- sessionTracking: {
34
- enabled: true, // Track continued sessions from AI agents
35
- },
36
- });
37
-
38
- export const config = {
39
- matcher: ['/((?!api|_next/static|_next/image|favicon.ico).*)'],
40
- };
41
- ```
42
-
43
- ### React Hooks
44
-
45
- ```javascript
46
- 'use client';
47
-
48
- import { useAgentDetection } from '@kya-os/agentshield-nextjs';
49
-
50
- export default function SecurityMonitor() {
51
- const { detect, isDetecting, lastResult } = useAgentDetection({
52
- confidenceThreshold: 0.7,
53
- });
54
-
55
- const handleCheck = async () => {
56
- const result = await detect();
57
- if (result.isAgent) {
58
- alert('Agent detected!');
59
- }
60
- };
61
-
62
- return (
63
- <div>
64
- <button onClick={handleCheck} disabled={isDetecting}>
65
- {isDetecting ? 'Checking...' : 'Check for Agents'}
66
- </button>
67
-
68
- {lastResult && (
69
- <div>
70
- <p>Is Agent: {lastResult.isAgent ? 'Yes' : 'No'}</p>
71
- <p>Confidence: {(lastResult.confidence * 100).toFixed(1)}%</p>
72
- </div>
73
- )}
74
- </div>
75
- );
76
- }
77
- ```
78
-
79
- ## Middleware Configuration
80
-
81
- ```javascript
82
- import { agentShield } from '@kya-os/agentshield-nextjs';
83
-
84
- export default agentShield({
85
- // Core detection options
86
- confidenceThreshold: 0.7,
87
- enablePatternMatching: true,
88
- enableBehaviorAnalysis: true,
89
-
90
- // Action when agent is detected
91
- onAgentDetected: 'block', // 'block' | 'redirect' | 'rewrite' | 'allow' | 'log'
92
-
93
- // Skip detection for paths
94
- skipPaths: ['/api/webhooks', /^\/admin/],
95
-
96
- // Custom responses
97
- blockedResponse: {
98
- status: 403,
99
- message: 'Access denied',
100
- },
101
- redirectUrl: '/blocked',
102
- rewriteUrl: '/blocked',
103
-
104
- // Custom handler
105
- onDetection: async (request, result) => {
106
- console.log('Agent detected:', result);
107
- // Return custom NextResponse or void
108
- },
109
- });
110
- ```
111
-
112
- ## Actions
113
-
114
- ### Block Agents
115
-
116
- ```javascript
117
- export default agentShield({
118
- onAgentDetected: 'block',
119
- blockedResponse: {
120
- status: 403,
121
- message: 'Automated access not allowed',
122
- headers: {
123
- 'Content-Type': 'application/json',
124
- 'X-Robots-Tag': 'noindex',
125
- },
126
- },
127
- });
128
- ```
129
-
130
- ### Redirect Agents
131
-
132
- ```javascript
133
- export default agentShield({
134
- onAgentDetected: 'redirect',
135
- redirectUrl: '/blocked',
136
- confidenceThreshold: 0.8,
137
- });
138
- ```
139
-
140
- ### Rewrite Requests
141
-
142
- ```javascript
143
- export default agentShield({
144
- onAgentDetected: 'rewrite',
145
- rewriteUrl: '/bot-content',
146
- confidenceThreshold: 0.6,
147
- });
148
- ```
149
-
150
- ### Custom Logic
151
-
152
- ```javascript
153
- export default agentShield({
154
- onDetection: async (request, result) => {
155
- if (result.confidence > 0.9) {
156
- // High confidence - block
157
- return NextResponse.json({ error: 'Blocked' }, { status: 403 });
158
- } else if (result.confidence > 0.5) {
159
- // Medium confidence - redirect to captcha
160
- return NextResponse.redirect(new URL('/verify', request.url));
161
- }
162
- // Low confidence - continue
163
- },
164
- });
9
+ ```diff
10
+ - "@kya-os/agentshield-nextjs": "^0.3.4"
11
+ + "@kya-os/checkpoint-nextjs": "^1.0.0"
165
12
  ```
166
13
 
167
- ## React Hooks
168
-
169
- ### useAgentDetection
170
-
171
- Client-side agent detection:
172
-
173
- ```javascript
174
- import { useAgentDetection } from '@kya-os/agentshield-nextjs';
175
-
176
- function SecurityComponent() {
177
- const { detect, isDetecting, lastResult, detector } = useAgentDetection({
178
- confidenceThreshold: 0.7,
179
- });
180
-
181
- useEffect(() => {
182
- // Auto-detect on component mount
183
- detect();
184
- }, [detect]);
185
-
186
- return (
187
- <div>
188
- {lastResult?.isAgent && (
189
- <div className='alert'>Agent detected with {lastResult.confidence} confidence</div>
190
- )}
191
- </div>
192
- );
193
- }
14
+ ```diff
15
+ - import { withCheckpoint } from '@kya-os/agentshield-nextjs';
16
+ + import { withCheckpoint } from '@kya-os/checkpoint-nextjs';
194
17
  ```
195
18
 
196
- ### useDetectionMonitor
197
-
198
- Monitor and track detection events:
199
-
200
- ```javascript
201
- import { useDetectionMonitor } from '@kya-os/agentshield-nextjs';
202
-
203
- function AnalyticsDashboard() {
204
- const { detectionHistory, getStats, clearHistory } = useDetectionMonitor(context => {
205
- // Handle each detection
206
- console.log('Detection event:', context);
207
- });
208
-
209
- const stats = getStats();
210
-
211
- return (
212
- <div>
213
- <h2>Detection Statistics</h2>
214
- <p>Total Requests: {stats.total}</p>
215
- <p>Agents Detected: {stats.detected}</p>
216
- <p>Detection Rate: {(stats.detectionRate * 100).toFixed(1)}%</p>
217
- <p>Average Confidence: {(stats.avgConfidence * 100).toFixed(1)}%</p>
218
-
219
- <button onClick={clearHistory}>Clear History</button>
220
- </div>
221
- );
222
- }
223
- ```
224
-
225
- ## API Routes Integration
226
-
227
- Protect API routes with server-side detection:
228
-
229
- ```javascript
230
- // pages/api/protected.js or app/api/protected/route.js
231
- import { AgentDetector } from '@kya-os/agentshield';
232
-
233
- const detector = new AgentDetector();
234
-
235
- export async function GET(request) {
236
- const context = {
237
- userAgent: request.headers.get('user-agent'),
238
- ip: request.ip,
239
- headers: Object.fromEntries(request.headers.entries()),
240
- };
241
-
242
- const result = await detector.analyze(context);
243
-
244
- if (result.isAgent && result.confidence > 0.7) {
245
- return NextResponse.json({ error: 'Automated access detected' }, { status: 403 });
246
- }
247
-
248
- return NextResponse.json({ data: 'Protected content' });
249
- }
250
- ```
251
-
252
- ## Advanced Usage
253
-
254
- ### Path-Specific Configuration
255
-
256
- ```javascript
257
- import { NextRequest, NextResponse } from 'next/server';
258
- import { AgentDetector } from '@kya-os/agentshield';
259
-
260
- const detector = new AgentDetector();
261
-
262
- export async function middleware(request: NextRequest) {
263
- const { pathname } = request.nextUrl;
264
-
265
- // Different thresholds for different paths
266
- let threshold = 0.7;
267
- if (pathname.startsWith('/api/')) {
268
- threshold = 0.5; // More sensitive for API
269
- } else if (pathname.startsWith('/admin/')) {
270
- threshold = 0.9; // Less sensitive for admin (humans expected)
271
- }
272
-
273
- const context = {
274
- userAgent: request.headers.get('user-agent') ?? undefined,
275
- ip: request.ip,
276
- headers: Object.fromEntries(request.headers.entries()),
277
- url: request.url,
278
- };
279
-
280
- const result = await detector.analyze(context);
281
-
282
- if (result.isAgent && result.confidence >= threshold) {
283
- return NextResponse.json(
284
- { error: 'Access denied' },
285
- { status: 403 }
286
- );
287
- }
288
-
289
- return NextResponse.next();
290
- }
291
- ```
292
-
293
- ### Server Components
294
-
295
- Use detection results in Server Components:
296
-
297
- ```javascript
298
- // app/dashboard/page.tsx
299
- import { headers } from 'next/headers';
300
- import { AgentDetector } from '@kya-os/agentshield';
301
-
302
- export default async function Dashboard() {
303
- const headersList = headers();
304
- const detector = new AgentDetector();
305
-
306
- const result = await detector.analyze({
307
- userAgent: headersList.get('user-agent') ?? undefined,
308
- headers: Object.fromEntries(headersList.entries()),
309
- });
310
-
311
- if (result.isAgent) {
312
- return <div>Automated access detected</div>;
313
- }
314
-
315
- return <div>Welcome to the dashboard!</div>;
316
- }
317
- ```
318
-
319
- ## TypeScript Support
320
-
321
- Full TypeScript support with proper types:
322
-
323
- ```typescript
324
- import { NextRequest } from 'next/server';
325
- import { agentShield, NextJSMiddlewareConfig } from '@kya-os/agentshield-nextjs';
326
-
327
- const config: NextJSMiddlewareConfig = {
328
- onAgentDetected: 'block',
329
- confidenceThreshold: 0.8,
330
- onDetection: async (request: NextRequest, result) => {
331
- // Fully typed parameters
332
- console.log(result.confidence);
333
- },
334
- };
335
-
336
- export default agentShield(config);
337
- ```
338
-
339
- ## Examples
340
-
341
- ### E-commerce Protection
342
-
343
- ```javascript
344
- // Protect product pages from scrapers
345
- export default agentShield({
346
- onAgentDetected: 'redirect',
347
- redirectUrl: '/captcha',
348
- confidenceThreshold: 0.6,
349
- skipPaths: ['/api/webhooks', '/health'],
350
- });
351
-
352
- export const config = {
353
- matcher: ['/products/:path*', '/search/:path*'],
354
- };
355
- ```
356
-
357
- ### Content Publishing
358
-
359
- ```javascript
360
- // Allow search engines, block other bots
361
- export default agentShield({
362
- onDetection: async (request, result) => {
363
- const userAgent = request.headers.get('user-agent') || '';
364
-
365
- // Allow known search engines
366
- if (/googlebot|bingbot|slurp/i.test(userAgent)) {
367
- return; // Continue
368
- }
369
-
370
- // Block other agents
371
- if (result.isAgent && result.confidence > 0.5) {
372
- return NextResponse.json({ error: 'Bot access restricted' }, { status: 403 });
373
- }
374
- },
375
- });
376
- ```
19
+ The new `withCheckpoint` factory ships under the renamed package.
20
+ Every verification decision flows through the Rust `kya-os-engine`
21
+ via WASM; the legacy TS-pattern-matching path (the 600-line
22
+ `edge-detector-wrapper.ts`) was removed in Phase D (architect Q10
23
+ deletion ratification).
377
24
 
378
- ## License
25
+ **Dual-runtime out of the box.** `withCheckpoint` works under both
26
+ Vercel Node-runtime AND Vercel Edge runtime. Pick the runtime via the
27
+ standard Next.js `export const config = { runtime: 'edge' | 'nodejs' }`
28
+ pattern.
379
29
 
380
- MIT OR Apache-2.0
30
+ For the `withAgentShield` API-based detection helper (a different
31
+ product entirely — remote API rather than local engine), the export
32
+ moved over verbatim under the new package name.
package/index.js ADDED
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+ throw new Error(
3
+ '@kya-os/agentshield-nextjs is renamed to @kya-os/checkpoint-nextjs. ' +
4
+ 'Migrate: `npm install @kya-os/checkpoint-nextjs` and replace ' +
5
+ "`from '@kya-os/agentshield-nextjs'` with `from '@kya-os/checkpoint-nextjs'`. " +
6
+ 'Use the new `withCheckpoint` factory in `middleware.ts`; the legacy ' +
7
+ '`createAgentShieldMiddleware` path was removed in Phase D. ' +
8
+ 'See https://github.com/Know-That-Ai/agent-shield/issues/2483 for context.'
9
+ );
package/package.json CHANGED
@@ -1,149 +1,15 @@
1
1
  {
2
2
  "name": "@kya-os/agentshield-nextjs",
3
- "version": "0.3.3",
4
- "description": "Next.js middleware for AgentShield AI agent detection",
5
- "keywords": [
6
- "nextjs",
7
- "middleware",
8
- "ai",
9
- "agent",
10
- "detection",
11
- "security",
12
- "react"
13
- ],
3
+ "version": "0.3.5",
4
+ "description": "DEPRECATED — renamed to @kya-os/checkpoint-nextjs. Migrate by swapping the import path.",
5
+ "deprecated": "Renamed to @kya-os/checkpoint-nextjs. Migrate: npm install @kya-os/checkpoint-nextjs && replace 'from @kya-os/agentshield-nextjs' with 'from @kya-os/checkpoint-nextjs'. See https://github.com/Know-That-Ai/agent-shield/issues/2483.",
14
6
  "license": "MIT OR Apache-2.0",
15
- "author": "KnowThat.ai",
16
- "homepage": "https://github.com/Know-That-Ai/agent-shield#readme",
17
- "repository": {
18
- "type": "git",
19
- "url": "https://github.com/Know-That-Ai/agent-shield.git",
20
- "directory": "packages/agentshield-nextjs"
21
- },
22
- "bugs": {
23
- "url": "https://github.com/Know-That-Ai/agent-shield/issues"
24
- },
25
- "main": "./dist/index.js",
26
- "module": "./dist/index.mjs",
27
- "types": "./dist/index.d.ts",
28
- "bin": {
29
- "agentshield-setup-edge": "./bin/setup-edge-wasm.js"
30
- },
31
- "exports": {
32
- ".": {
33
- "types": "./dist/index.d.ts",
34
- "import": "./dist/index.mjs",
35
- "require": "./dist/index.js"
36
- },
37
- "./edge": {
38
- "types": "./dist/edge/index.d.ts",
39
- "edge-runtime": "./dist/edge/index.mjs",
40
- "import": "./dist/edge/index.mjs",
41
- "require": "./dist/edge/index.js"
42
- },
43
- "./edge-runtime-loader": {
44
- "types": "./dist/edge-runtime-loader.d.ts",
45
- "import": "./dist/edge-runtime-loader.mjs",
46
- "require": "./dist/edge-runtime-loader.js"
47
- },
48
- "./middleware": {
49
- "types": "./dist/middleware.d.ts",
50
- "import": "./dist/middleware.mjs",
51
- "require": "./dist/middleware.js"
52
- },
53
- "./wasm-setup": {
54
- "types": "./dist/wasm-setup.d.ts",
55
- "import": "./dist/wasm-setup.mjs",
56
- "require": "./dist/wasm-setup.js"
57
- },
58
- "./wasm-middleware": {
59
- "types": "./dist/wasm-middleware.d.ts",
60
- "import": "./dist/wasm-middleware.mjs",
61
- "require": "./dist/wasm-middleware.js"
62
- },
63
- "./edge-wasm-middleware": {
64
- "types": "./dist/edge-wasm-middleware.d.ts",
65
- "import": "./dist/edge-wasm-middleware.mjs",
66
- "require": "./dist/edge-wasm-middleware.js"
67
- },
68
- "./api-client": {
69
- "types": "./dist/api-client.d.ts",
70
- "import": "./dist/api-client.mjs",
71
- "require": "./dist/api-client.js"
72
- },
73
- "./api-middleware": {
74
- "types": "./dist/api-middleware.d.ts",
75
- "import": "./dist/api-middleware.mjs",
76
- "require": "./dist/api-middleware.js"
77
- },
78
- "./policy": {
79
- "types": "./dist/policy.d.ts",
80
- "import": "./dist/policy.mjs",
81
- "require": "./dist/policy.js"
82
- },
83
- "./package.json": "./package.json"
84
- },
7
+ "main": "./index.js",
85
8
  "files": [
86
- "dist",
87
- "bin",
88
- "wasm",
89
- "wasm.d.ts",
90
- "templates",
91
- "README.md",
92
- "CHANGELOG.md",
93
- "EDGE_RUNTIME_WASM_SETUP.md"
9
+ "index.js",
10
+ "README.md"
94
11
  ],
95
- "engines": {
96
- "node": ">=18.0.0"
97
- },
98
- "devDependencies": {
99
- "@testing-library/react": "^14.2.1",
100
- "@testing-library/react-hooks": "^8.0.1",
101
- "@types/node": "^20.11.24",
102
- "@types/react": "^18.2.61",
103
- "@vitest/coverage-v8": "^1.3.1",
104
- "jsdom": "^24.0.0",
105
- "next": "^16.2.2",
106
- "react": "^18.2.0",
107
- "react-dom": "^18.2.0",
108
- "rimraf": "^5.0.5",
109
- "tsup": "^8.0.2",
110
- "typescript": "^5.4.2",
111
- "vitest": "^1.3.1"
112
- },
113
- "peerDependencies": {
114
- "next": ">=13.0.0",
115
- "react": ">=18.0.0",
116
- "@upstash/redis": ">=1.0.0"
117
- },
118
- "peerDependenciesMeta": {
119
- "@upstash/redis": {
120
- "optional": true
121
- }
122
- },
123
12
  "publishConfig": {
124
13
  "access": "public"
125
- },
126
- "sideEffects": false,
127
- "dependencies": {
128
- "@noble/ed25519": "^2.2.3",
129
- "@noble/hashes": "^2.0.1",
130
- "@kya-os/agentshield-shared": "0.3.1",
131
- "@kya-os/agentshield-wasm-runtime": "0.1.6",
132
- "@kya-os/agentshield": "0.1.42"
133
- },
134
- "scripts": {
135
- "build": "tsup",
136
- "build:watch": "tsup --watch",
137
- "predev": "pnpm --filter=@kya-os/agentshield-shared build && pnpm --filter=@kya-os/agentshield build",
138
- "dev": "tsup --watch",
139
- "clean": "rimraf dist .tsbuildinfo",
140
- "test": "vitest run",
141
- "test:watch": "vitest",
142
- "test:coverage": "vitest run --coverage",
143
- "type-check": "tsc --noEmit",
144
- "lint": "eslint src --ext .ts,.tsx",
145
- "lint:fix": "eslint src --ext .ts,.tsx --fix",
146
- "format": "prettier --write \"src/**/*.{ts,tsx,json,md}\"",
147
- "format:check": "prettier --check \"src/**/*.{ts,tsx,json,md}\""
148
14
  }
149
- }
15
+ }