{"_id":"@aegis-protocol-defi/sdk","name":"@aegis-protocol-defi/sdk","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@aegis-protocol-defi/sdk","version":"1.0.0","description":"Security middleware for autonomous DeFi agents","main":"src/index.ts","types":"src/index.ts","scripts":{"test":"node --experimental-vm-modules test.js"},"keywords":["defi","security","ai-agent","middleware","ethereum","solana"],"license":"MIT","_id":"@aegis-protocol-defi/sdk@1.0.0","gitHead":"b3b206209f994922e3ef48c8ad61020509b4cce7","_nodeVersion":"20.19.6","_npmVersion":"10.8.2","dist":{"integrity":"sha512-t4/QkWoT9Q3UAdsMnd6FXiVE2k8si63VfLWlT90J86/tkxmltpxntJrlvEYpmAFX5PfjYhk6uQauCbRCR+00UQ==","shasum":"8e834d20b6f5488920d03d7049460d11093a647d","tarball":"https://registry.npmjs.org/@aegis-protocol-defi/sdk/-/sdk-1.0.0.tgz","fileCount":14,"unpackedSize":34610,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCtIGhkv3LHdLIh4jU6SiUf4/gxmmvnSe3fni2/Mh9wrQIgJtaHzIokK6L/OEqs2FxYAkPkSv/0RUmgTVe677OmvhA="}]},"_npmUser":{"name":"huanchiter","email":"huanchito656@gmail.com"},"directories":{},"maintainers":[{"name":"huanchiter","email":"huanchito656@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_1.0.0_1773774782415_0.7033220383577163"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-17T19:13:02.350Z","1.0.0":"2026-03-17T19:13:02.558Z","modified":"2026-03-17T19:13:02.754Z"},"maintainers":[{"name":"huanchiter","email":"huanchito656@gmail.com"}],"description":"Security middleware for autonomous DeFi agents","keywords":["defi","security","ai-agent","middleware","ethereum","solana"],"license":"MIT","readme":"# @aegis-protocol-defi/sdk\n\n[![npm version](https://img.shields.io/npm/v/@aegis-protocol-defi/sdk.svg)](https://www.npmjs.com/package/@aegis-protocol-defi/sdk)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nSecurity middleware for autonomous DeFi agents. Protect AI-powered wallets from prompt injection, exploit patterns, and anomalous transactions.\n\n## Install\n\n```bash\nnpm install @aegis-protocol-defi/sdk\n```\n\n## Quick Start\n\n```typescript\nimport { AegisGuard } from '@aegis-protocol-defi/sdk'\n\nconst guard = new AegisGuard({\n  chains: ['ethereum', 'base', 'solana'],\n  maxTransactionAmount: 10_000,\n  maxDailyLoss: 50_000,\n  maxTransactionsPerMinute: 10,\n  onThreatDetected: (result) => {\n    console.log(`Threat detected: ${result.threats[0].name}`)\n  },\n  onCircuitBreak: (status) => {\n    console.log(`Circuit breaker tripped! Total loss: ${status.totalLoss}`)\n  },\n})\n\n// Wrap an ethers.js provider\nconst protectedProvider = guard.wrapProvider(provider)\n\n// Or validate manually\nconst result = guard.validate({\n  to: '0x742d35Cc6634C0532925a3b844Bc9e7595f2bD68',\n  value: '1000',\n  data: 'transfer(address,uint256)',\n  chain: 'ethereum',\n})\n\nif (!result.safe) {\n  console.log(`Blocked: ${result.recommendation}`, result.threats)\n}\n```\n\n## API Reference\n\n### AegisGuard\n\nThe main entry point. Creates and orchestrates all security components.\n\n```typescript\nconst guard = new AegisGuard(config: AegisConfig)\n```\n\n**Methods:**\n\n| Method | Returns | Description |\n|--------|---------|-------------|\n| `wrapProvider(provider)` | `Proxy` | Wraps an EVM or Solana provider to intercept transactions |\n| `validate(tx)` | `ValidationResult` | Manually validate a transaction |\n| `getAuditLog(filter?)` | `AuditEntry[]` | Retrieve audit log entries |\n| `getCircuitBreakerStatus()` | `CircuitBreakerStatus` | Check circuit breaker state |\n| `killSwitch(reason?)` | `void` | Activate the kill switch |\n| `resume()` | `void` | Deactivate the kill switch |\n\n### Validator\n\nPattern matching and threat detection engine.\n\n```typescript\nconst validator = new Validator({\n  maxTransactionAmount: 10_000,\n  customPatterns: [],\n})\n```\n\n**Methods:**\n\n| Method | Returns | Description |\n|--------|---------|-------------|\n| `validate(tx)` | `ValidationResult` | Scan transaction for threats |\n| `addPattern(pattern)` | `void` | Add a custom threat pattern |\n\n### CircuitBreaker\n\nTracks cumulative losses and trips when limits are exceeded.\n\n```typescript\nconst cb = new CircuitBreaker({\n  maxDailyLoss: 50_000,\n  windowMs: 86_400_000,  // 24 hours (default)\n})\n```\n\n**Methods:**\n\n| Method | Returns | Description |\n|--------|---------|-------------|\n| `recordLoss(amount)` | `void` | Record a loss amount |\n| `isTripped()` | `boolean` | Check if circuit breaker is tripped |\n| `reset()` | `void` | Manually reset the circuit breaker |\n| `getStatus()` | `CircuitBreakerStatus` | Get full status |\n\n### KillSwitch\n\nEmergency stop mechanism with optional remote control.\n\n```typescript\nconst ks = new KillSwitch({\n  remoteEndpoint: 'https://api.example.com/killswitch',\n})\n```\n\n**Methods:**\n\n| Method | Returns | Description |\n|--------|---------|-------------|\n| `activate(reason)` | `void` | Activate the kill switch |\n| `deactivate()` | `void` | Deactivate the kill switch |\n| `isActive()` | `boolean` | Check if kill switch is active |\n| `checkRemote()` | `Promise<boolean>` | Check remote endpoint for kill signal |\n| `getStatus()` | `KillSwitchStatus` | Get full status |\n\n### AnomalyDetector\n\nStatistical anomaly detection using z-score analysis.\n\n```typescript\nconst detector = new AnomalyDetector({\n  windowSize: 100,       // sliding window size (default)\n  zScoreThreshold: 2.5,  // z-score threshold (default)\n})\n```\n\n**Methods:**\n\n| Method | Returns | Description |\n|--------|---------|-------------|\n| `addDataPoint(value)` | `void` | Add a data point to the window |\n| `isAnomaly(value)` | `boolean` | Check if a value is anomalous |\n| `getStats()` | `{ mean, stdDev, count }` | Get window statistics |\n\n### AuditLog\n\nTransaction audit logging with optional remote sync.\n\n```typescript\nconst log = new AuditLog({\n  maxEntries: 1000,\n  remoteEndpoint: 'https://api.example.com/audit',\n})\n```\n\n**Methods:**\n\n| Method | Returns | Description |\n|--------|---------|-------------|\n| `log(entry)` | `AuditEntry` | Add an audit entry |\n| `getEntries(filter?)` | `AuditEntry[]` | Retrieve filtered entries |\n| `flush()` | `Promise<void>` | Send pending entries to remote |\n| `clear()` | `void` | Remove all entries |\n\n## Configuration\n\n| Option | Type | Description |\n|--------|------|-------------|\n| `chains` | `string[]` | Supported chain identifiers |\n| `maxTransactionAmount` | `number` | Max allowed single transaction amount |\n| `maxDailyLoss` | `number` | Max cumulative loss before circuit breaker trips |\n| `maxTransactionsPerMinute` | `number` | Rate limit for transactions |\n| `onThreatDetected` | `(result) => void` | Callback when threat is detected |\n| `onCircuitBreak` | `(status) => void` | Callback when circuit breaker trips |\n| `killSwitchEndpoint` | `string` | Remote kill switch URL |\n| `auditLogEndpoint` | `string` | Remote audit log URL |\n\n## Threat Categories\n\n| Category | IDs | Description |\n|----------|-----|-------------|\n| Prompt Injection | INJ-001 to INJ-007 | AI prompt manipulation attacks |\n| Flash Loan | DEFI-001 | Flash loan exploit signatures |\n| Reentrancy | DEFI-002 | Reentrancy attack patterns |\n| MEV Sandwich | DEFI-003 | Price oracle manipulation |\n| Approval Exploit | DEFI-004 | Batched call exploits |\n| Session Hijack | DEFI-005 | Self-destruct / contract destruction |\n| Anomalous Amount | AMT-001 to AMT-003 | Unusual transaction amounts |\n| Unknown Recipient | ADDR-001 to ADDR-002 | Suspicious addresses |\n\n## Chain Support\n\n| Chain | Adapter | Provider Type |\n|-------|---------|---------------|\n| Ethereum | `wrapEVMProvider` | ethers.js / viem |\n| Base | `wrapEVMProvider` | ethers.js / viem |\n| Arbitrum | `wrapEVMProvider` | ethers.js / viem |\n| Solana | `wrapSolanaConnection` | @solana/web3.js |\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-5c2f20ae9047072e2cfdafa48bce359c"}