{"_id":"@actaclad/agentguard","_rev":"16-29354ebfec736eeffee51bda66ef401a","name":"@actaclad/agentguard","dist-tags":{"latest":"3.2.2"},"versions":{"1.0.0":{"name":"@actaclad/agentguard","version":"1.0.0","_id":"@actaclad/agentguard@1.0.0","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"9347501ae9cc287a589f6cf48cdb9eac9649852e","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-1.0.0.tgz","fileCount":170,"integrity":"sha512-Zgk+fo2mI5z69hbwbvJumDWet3A1HrWUOzYw/G+wHlSBbS9uOZEkg9s5cCAf83iFAtrlGLx6wuoIaFJFYOPjtQ==","signatures":[{"sig":"MEQCIDAbwc2E1ozJBip//hvbtHqUFUgNlmOM4AaHVii7b+STAiBL5GH/zJ+WBR/u0U1halvJxlZFYKLcGWJ+arv9E2CaSA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":374684},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"a28177135814bf428922d7fefe50e5e35ec4e6d9","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"*","gpt-tokenizer":"^2.9.0","langfuse-langchain":"*"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_1.0.0_1785609338845_0.4404670620512052","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@actaclad/agentguard","version":"1.1.0","_id":"@actaclad/agentguard@1.1.0","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"d4b8029149cc22066d4ada504895a833eab09d7c","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-1.1.0.tgz","fileCount":174,"integrity":"sha512-Ehzo1xmJtjdY6szsDZoIl4gUL00HAn0N0Tyg/oRW99zeBcR76Fel3U5VD+DkWZzZOqG5eMXvPBDqksWWABoiKw==","signatures":[{"sig":"MEQCIHNzInbCsbiVjBxaA2UtOqE2OL0thdSZMQ9yXahmedLVAiBtUOmDL5SPVc4sMoqBleuSB8Gyc/Yqq2cmsoA5nTTU8g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":423660},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"00037ce8109c29b46ba7d80f3aed8346c1092bcd","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"*","gpt-tokenizer":"^2.9.0","langfuse-langchain":"*"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_1.1.0_1786545445183_0.36152246541263433","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@actaclad/agentguard","version":"1.1.1","_id":"@actaclad/agentguard@1.1.1","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"2b9b0ed56134ab27e972aae1c53d08fd6800fede","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-1.1.1.tgz","fileCount":174,"integrity":"sha512-tbLW6umaiBt+0d7bSrp90nZ/61a6F3Kxj3S/OXQK+yJBkGu2k8vwRpBgGBAMa8Il9CQ3gIICriGETSmhVp810A==","signatures":[{"sig":"MEUCIGF1LsG77BLi8ekmC//3ZrCoOr/Y4BbT5sowG+1+q/3dAiEAugXGo6HiUajtpqvx8E6Y/6ZVlDD/Lb8CMQBAlS9qmDo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":432865},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"9ba0171c06067301f6c3fa9bad1b8b27f322230d","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0","langfuse-langchain":"^3.38.20"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_1.1.1_1786621951394_0.7061687846233329","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@actaclad/agentguard","version":"1.2.0","_id":"@actaclad/agentguard@1.2.0","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"1c9cb9c592ff56cb7bc9c8c10f44586892696950","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-1.2.0.tgz","fileCount":178,"integrity":"sha512-YaBUZ3MJkDCTE9ThQ2SoZRsDiRzAZIoUMGjdThQT6F/MTgm/jCG4R0T8NrI5zFb2MecHg9QKCVafb/c0p3oApQ==","signatures":[{"sig":"MEQCIEFKYouNnabDe6DQ3RPK4sCJHHvX999POJYULFqaKYPqAiA1eDJqp9jiYUsW2CuayUF3SCRJsr6M3rnEGJwJvDRCTA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":460814},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"0376db20dc46e95c3d9964b1399b6371ce683e1b","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0","langfuse-langchain":"^3.38.20"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_1.2.0_1786729694531_0.9694782212278998","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@actaclad/agentguard","version":"1.2.1","_id":"@actaclad/agentguard@1.2.1","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"fdee569e00b2620ff1064bd659368c1acc1a8520","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-1.2.1.tgz","fileCount":186,"integrity":"sha512-q9u9JEH/D2QM24wj/rZnFNGyborqanD0UjkPsPaQ3dV1oJPVYM2aFWnF8JVYOBUj1wOD9n4mAiP0Tfm5vvwawg==","signatures":[{"sig":"MEQCIETwwnGUtMvpRBpW6vHdkZkM5/kFi7yv0vji50lRSJU7AiAGpay+GSpwyzRJsHQletgLJ+2y2PWk5mGwmit4NVOrTg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":489239},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"5bbba2a36582676731f544e1720f639afc01a463","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0","langfuse-langchain":"^3.38.20"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_1.2.1_1786739142393_0.3485743569572335","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@actaclad/agentguard","version":"1.2.2","_id":"@actaclad/agentguard@1.2.2","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"fbfdcb0a7d7ed8807e7505a6204ba250c0cdd773","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-1.2.2.tgz","fileCount":186,"integrity":"sha512-qZd4yOUEHG4QAzsRUCPbOUoQl0gZ7AuDWKzD2PIpMT+DELGeDGt3QPd5AftgVtuH6WRym5J+d6xJWGUB/pq5eQ==","signatures":[{"sig":"MEUCIQCk+xKRgCHpNggbaUBpTVkuBk9jyhR0UAxQ+NDx6LMgjAIgLZXtZYZD6rV69iOb++GMixORK0TMbUgdhj1JlGTrviw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":492104},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"83d190d05b8838d5bfb35cd068f26c66f95cd02f","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0","langfuse-langchain":"^3.38.20"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_1.2.2_1786745396157_0.7647403577003329","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"@actaclad/agentguard","version":"1.2.3","_id":"@actaclad/agentguard@1.2.3","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"99d5b2b7b941171b0b71954816d0402ff42dde4c","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-1.2.3.tgz","fileCount":186,"integrity":"sha512-pb8Nbxrt/rLNsnGSKwaFbF2CcG+baHhQbUdV3lckTtB1fCIqrexZ6DxNwks2uBpwxKv3J5KjuKC3TDLp1+0Wig==","signatures":[{"sig":"MEYCIQDwvDJB2f7Rbvxjt4UUxBQAMlyb22FIHW9ujvZSIgQitgIhANSvCMSv1TPrYu50hOjwXvTNPH3eROCwENcxnxXdwjOS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":495898},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"e1d357483c899e3928e16d48296df4b891812c38","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0","langfuse-langchain":"^3.38.20"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_1.2.3_1786768028242_0.2742049005159146","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@actaclad/agentguard","version":"1.3.0","_id":"@actaclad/agentguard@1.3.0","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"3207ea4c2bd9225e33835276fcd34a446375ed05","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-1.3.0.tgz","fileCount":202,"integrity":"sha512-vifnkVZkrYeLaP9bO1+zFl8C9OAyTGjxXEwpWKBF6u+QH588zrtHCBm5vZtOK5qqtXMu9OV2N9lazJAzIOq9AA==","signatures":[{"sig":"MEUCICikYHHWt6vKJCyGtELRYNkxVBPbBuGV2LRRNKeRs8UsAiEAzB24CAmvljkScrRSmgnVIsRhrB6t2Peu4y939JuttfE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":592387},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"e4a4413cacf6100aa3dab06fbcb53b617d6914d2","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@langchain/core":"1.2.5","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@langchain/core":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@langchain/core":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_1.3.0_1786791578133_0.26641980162529433","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@actaclad/agentguard","version":"1.3.1","license":"Apache-2.0","_id":"@actaclad/agentguard@1.3.1","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"a2c350ba59c34477fcf0dbc6c3b11c30a4e3ad63","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-1.3.1.tgz","fileCount":204,"integrity":"sha512-ayrXYVP/gpbWzEFgekSHq5bWip774oSrY6vjPRbVQVjRR3IiIzdExhiYlDvVFFb0nG3psfY+Kw3QhjLMATfMLA==","signatures":[{"sig":"MEUCIQDgE4HcpPe5raZRO+ltmYykt/oAOOxcgafR7X/fX9mjjgIgEIisi1mcCu+wnv5SzVgKVROscllTYGyXozAYZsIMQ8c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":607098},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"a3cd05906827cf62a73fc66c5849e4b71e89cd30","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@langchain/core":"1.2.5","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@langchain/core":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@langchain/core":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_1.3.1_1786871117883_0.6409584506092765","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@actaclad/agentguard","version":"1.4.0","license":"Apache-2.0","_id":"@actaclad/agentguard@1.4.0","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"5564e44ac9f6c66dac0979acc76312d58ffbd6fc","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-1.4.0.tgz","fileCount":204,"integrity":"sha512-Qysi360OudLfFzdCKO7TwOH76vbczTshGxHwXhr3yNKLWOvLqLitWJBoFJKympr8acbFeGs894vP9crgOh2p7A==","signatures":[{"sig":"MEQCIH8yHu7/yaIaobrKqjhefBSJdZOQSjFl8mdQZ5GKnAUgAiBSZm4wxIKQwGAHO0rOphQvuVjsv5Yk1Bag0M+TZZLXfA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":614683},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"31c47079a953eb469817ce7f110fc20dae527a09","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@langchain/core":"1.2.5","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@langchain/core":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@langchain/core":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_1.4.0_1787114880089_0.6057890046874275","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@actaclad/agentguard","version":"2.0.0","license":"Apache-2.0","_id":"@actaclad/agentguard@2.0.0","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"5950c28c8d33b8e57e628686d0ed75987d31b99e","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-2.0.0.tgz","fileCount":204,"integrity":"sha512-2r4atV0S/0pcqdr3cJqxKLTDwOPGUX0nlTsL0sx3TUkiD3pnnWQqDmplI5qkcokM37xXRkjWpw85wd+ckaj3SQ==","signatures":[{"sig":"MEQCIF2Ea7Fw6gp7SIWBZQYcXrWtqR4ac4TzLX/Qj/lMLao+AiAgZ4S/BpFMA8eoaV3409DyLO8dvlBK8YvGw4ab22dd1Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":619610},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"ba4b9c0eb645d923f5a7c4f551cb2d53da2f34e0","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@langchain/core":"1.2.5","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@langchain/core":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@langchain/core":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_2.0.0_1787719892873_0.5092005323694813","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@actaclad/agentguard","version":"3.0.0","license":"Apache-2.0","_id":"@actaclad/agentguard@3.0.0","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"6bd57dab3c4e281a5c8af88e2eed83327a120a0a","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-3.0.0.tgz","fileCount":236,"integrity":"sha512-nRbuMMx2XOowMxJLbnQu4yG7912awdjt2Ws5sXBNGqkH4bpIvbvcxTwuO03NU1u2aEWwR3NjlIuhCb+xON01xg==","signatures":[{"sig":"MEQCIGA4c+RIHyoArQ7+ADP6QNQKzCb/KzypYRUJB3qmT7OBAiAZu510bVkyeq68JOZpNWdMZt74NhqjAthHKZFqNQMDxg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":807857},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./tools":{"types":"./dist/tools.d.ts","default":"./dist/tools.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"2bb955266faf243c07e6a1b71395fce67f5feac6","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@langchain/core":"1.2.5","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@langchain/core":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@langchain/core":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_3.0.0_1788800360955_0.8125996764976098","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@actaclad/agentguard","version":"3.1.0","license":"Apache-2.0","_id":"@actaclad/agentguard@3.1.0","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"1ab636d3b13cc27b607efc21ff81df4de8495ff1","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-3.1.0.tgz","fileCount":252,"integrity":"sha512-DAyqzXFFrksrn6DKG+lp6TPqcGbsXxkzw44Jjd6doxZPqDLjuTFP6YsUt02mOou2y0Uqza/MeH4SXTPpvFqwtQ==","signatures":[{"sig":"MEYCIQDp9WLAYw4j5Is6MCL/3C1tBa3JMXsB7X1YluTHvzWacAIhANsG4xOhQg12qZ1qmuuxE0O6mEOt1Njffo8MsXGibvY8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCyWhrZCRxD+9UF5uEw/wfynD01jlP203tnHMwWataxuQIgX9G6LWY4oPQVcViQpkd2Drt00enVUOh93Jv6GbbTqkg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":894293},"main":"dist/index.js","_from":"file:actaclad-agentguard-3.1.0.tgz","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./tools":{"types":"./dist/tools.d.ts","default":"./dist/tools.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_resolved":"/private/var/folders/kr/qghvxftx1c189d5xd194s56r0000gn/T/3342306c1d6e19f3a952b525a93f7602/actaclad-agentguard-3.1.0.tgz","_integrity":"sha512-DAyqzXFFrksrn6DKG+lp6TPqcGbsXxkzw44Jjd6doxZPqDLjuTFP6YsUt02mOou2y0Uqza/MeH4SXTPpvFqwtQ==","_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@langchain/core":"1.2.5","@repo/eslint-config":"0.0.0"},"peerDependencies":{"openai":"*","@langchain/core":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@langchain/core":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_3.1.0_1790167985421_0.8414270384845823","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"@actaclad/agentguard","version":"3.2.0","license":"Apache-2.0","_id":"@actaclad/agentguard@3.2.0","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"02e6cc0fb51173ceb7c550f05f7d63e99aeb6e69","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-3.2.0.tgz","fileCount":252,"integrity":"sha512-+/Z5LMQfENHG+KLx/LtiK1qEzgor7UGcOe6c9MtpoiP39XvemMFUyQDgHweWahAP3cG7XAgrrGgPq1RXwROynw==","signatures":[{"sig":"MEUCIQDz2CqNO+HZ6ccBb/1i1kXTyU5JoqU5M0DwMZpvgTApgAIgJQASJSgM3faTbbzIjJQ27pSrDOxJ2T+MSMOoVD3YF5A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQChGBi/j6ZY8XZ7a266GDEBqMjp1Qk4H3VUn8gsc30/XQIhAL/8Pn8FEc6lkdSBGq27dMhD2iLMd90Munpn3y06hfEZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":917918},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./tools":{"types":"./dist/tools.d.ts","default":"./dist/tools.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"b1bd939eadc122ce364f3c4e2f9fcbd2b9a42759","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@langchain/core":"1.2.5","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@langchain/core":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@langchain/core":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_3.2.0_1790326750122_0.3732364973108331","host":"s3://npm-registry-packages-npm-production"}},"3.2.1":{"name":"@actaclad/agentguard","version":"3.2.1","license":"Apache-2.0","_id":"@actaclad/agentguard@3.2.1","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"dist":{"shasum":"f68e86f50128584a0fab397a8887a56162390179","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-3.2.1.tgz","fileCount":252,"integrity":"sha512-X5WD++BtBc3IH+z3/YS2rdixe6gRZ5X47Cc+gWXWwBjH8W53FySnKG6PjDcx4bgtT3bnVfH3lgpYK9AI7Y93lg==","signatures":[{"sig":"MEUCIQC0BJAeO8CLCMwLVZr6O0zy+RGEVXD+sjp8/Dskqqa98wIgfmmOyrQ6HgY5hAz40Tl2utjLlb7g1vVS8cVYF4l2qAQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHuBNm+2fKbBAMPm2n5Jyv2TNurgMeYa84+2Dzeft2cqAiEAsiMkj07QYrcJDolf6JGqRH+UPztdixFb9iGWC+hmZSo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":929113},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./tools":{"types":"./dist/tools.d.ts","default":"./dist/tools.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"9df4041fba6d2b1892a86b5cf32126d4f23bf4b3","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@langchain/core":"1.2.5","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@langchain/core":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@langchain/core":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/agentguard_3.2.1_1790343083536_0.28306862115495823","host":"s3://npm-registry-packages-npm-production"}},"3.2.2":{"_id":"@actaclad/agentguard@3.2.2","dist":{"shasum":"6a4368f76f42dbbefe181ad9c8db24d7fbc97296","tarball":"https://registry.npmjs.org/@actaclad/agentguard/-/agentguard-3.2.2.tgz","fileCount":252,"integrity":"sha512-deeogpVVkcwchuy6CwXiobc1oz13bKjGphnPdkVM8f8stTDI9Kg5tQ731xjoONv2fjoBC9SXt9N7i7B4RwbMCA==","signatures":[{"sig":"MEUCIQDqg6CxmaL4rQqsc4gk4AN4ROybqNGbNMXxAzaC8WN4pAIgbj9bKdMymfVN1Mu/hHcJIobqatrdnfjJXM7K2E0CJFU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFOkSWyvBy1tt50QWWeVuREUZrgnuPxJEbcfDqQ3quFtAiAbNn5kN97YwWHDUFsO4bAbm7sS3FWZYrN4xxBXWOofJA=="}],"unpackedSize":936078},"main":"dist/index.js","name":"@actaclad/agentguard","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","default":"./dist/mcp.js"},"./tools":{"types":"./dist/tools.d.ts","default":"./dist/tools.js"},"./bedrock":{"types":"./dist/bedrock.d.ts","default":"./dist/bedrock.js"},"./langchain":{"types":"./dist/langchain.d.ts","default":"./dist/langchain.js"},"./langgraph":{"types":"./dist/langgraph.d.ts","default":"./dist/langgraph.js"},"./guardrails-ml":{"types":"./dist/guardrails-ml.d.ts","default":"./dist/guardrails-ml.js"}},"gitHead":"9ae010a9ad51af7174264130d642c052ba2c08f0","license":"Apache-2.0","scripts":{"dev":"tsc --watch","lint":"eslint .","test":"vitest run","build":"tsc","lint:fix":"eslint . --fix","typecheck":"tsc --noEmit","test:watch":"vitest","build:check":"tsc --noEmit"},"version":"3.2.2","_npmUser":{"name":"durairajviswanathan","email":"durairaj@actaclad.com"},"_npmVersion":"11.5.1","description":"Agent Guard observability and guardrails SDK for Node.js","directories":{},"maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"sideEffects":false,"_nodeVersion":"24.6.0","dependencies":{"ajv":"^8.17.1","langfuse":"^3.38.20","gpt-tokenizer":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"openai":"^4.0.0","vitest":"^2.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@langchain/core":"1.2.5","@repo/eslint-config":"workspace:*"},"peerDependencies":{"openai":"*","@langchain/core":"*","@anthropic-ai/sdk":"*","@huggingface/transformers":"*","@modelcontextprotocol/sdk":"*","@aws-sdk/client-bedrock-runtime":"*"},"peerDependenciesMeta":{"openai":{"optional":true},"@langchain/core":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@huggingface/transformers":{"optional":true},"@modelcontextprotocol/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/agentguard_3.2.2_1790754495779_0.38648661162569486"}}},"time":{"created":"2026-08-01T18:35:38.662Z","modified":"2026-09-30T07:48:16.125Z","1.0.0":"2026-08-01T18:35:38.990Z","1.1.0":"2026-08-12T14:37:25.339Z","1.1.1":"2026-08-13T11:52:31.523Z","1.2.0":"2026-08-14T17:48:14.698Z","1.2.1":"2026-08-14T20:25:42.571Z","1.2.2":"2026-08-14T22:09:56.285Z","1.2.3":"2026-08-15T04:27:08.408Z","1.3.0":"2026-08-15T10:59:38.284Z","1.3.1":"2026-08-16T09:05:18.035Z","1.4.0":"2026-08-19T04:48:00.248Z","2.0.0":"2026-08-26T04:51:33.055Z","3.0.0":"2026-09-07T16:59:21.110Z","3.1.0":"2026-09-23T12:53:05.502Z","3.2.0":"2026-09-25T08:59:10.216Z","3.2.1":"2026-09-25T13:31:23.623Z","3.2.2":"2026-09-30T07:48:15.903Z"},"license":"Apache-2.0","description":"Agent Guard observability and guardrails SDK for Node.js","maintainers":[{"name":"durairajviswanathan","email":"durairaj@actaclad.com"}],"readme":"# @actaclad/agentguard\n\nObservability **and** runtime guardrails for AI agents in Node.js/TypeScript.\n\nOne `init()` auto-instruments your LLM clients — every call is **traced** (into\nthe AgentGuard console) and **guarded** (server-configured guardrails run on the\nprompt and the response, and can **redact** or **block**). Covers OpenAI,\nAnthropic, AWS Bedrock, LangGraph.js, MCP tools, and OpenAI voice.\n\n```bash\nnpm install @actaclad/agentguard\n```\n\n## Quick start (auto-instrumentation)\n\n```bash\n# .env\nAGENTGUARD_PUBLIC_KEY=pk-lf-...\nAGENTGUARD_SECRET_KEY=sk-lf-...\nAGENTGUARD_BASE_URL=https://<your-agentguard-host>\nAGENTGUARD_PROJECT_ID=<project-id>   # enables live guardrail-config polling\n```\n\n```ts\nimport OpenAI from \"openai\";\nimport * as agentguard from \"@actaclad/agentguard\";\n\nagentguard.init(); // once, at startup — keys/base/project from env\nagentguard.instrumentOpenAI(OpenAI); // explicit class = ESM/bundler-safe (recommended)\n\nconst openai = new OpenAI();\n// This call is now traced AND guarded — no other code changes.\nconst res = await openai.chat.completions.create({\n  model: \"gpt-4o\",\n  messages: [{ role: \"user\", content: \"summarise the crew roster\" }],\n});\n\nawait agentguard.flush(); // flush telemetry before the process exits\n```\n\nGuardrails are **configured in the AgentGuard console** and fetched live (ETag\npolling, fail-safe to last-known-good). The SDK only enforces what the server\nenables, so you tune policy without redeploying.\n\n> **Why `instrumentOpenAI(OpenAI)` and not just `init()`?** In ESM/bundled apps,\n> `require(\"openai\")` and your `import OpenAI` can resolve to different module\n> copies, so the auto-patch may miss the class you actually use. Passing the exact\n> class you imported removes that ambiguity. The same applies to\n> `instrumentAnthropic(Anthropic)`.\n\n## Providers\n\n### OpenAI (chat + voice)\n\n```ts\nimport OpenAI from \"openai\";\nagentguard.init();\nagentguard.instrumentOpenAI(OpenAI); // covers chat completions AND audio (STT/TTS)\n```\n\n- **Chat completions** — prompt runs input guardrails; response runs output\n  guardrails; streaming is scanned chunk-by-chunk.\n- **Voice** — `audio.transcriptions.create` (STT): the **transcript** runs the\n  output guardrails. `audio.speech.create` (TTS): the **input text** runs the\n  input guardrails (redact/block before synthesis).\n\n### Anthropic (incl. Bedrock/Vertex)\n\n```ts\nimport Anthropic from \"@anthropic-ai/sdk\";\nagentguard.init();\nagentguard.instrumentAnthropic(Anthropic); // also covers AnthropicBedrock / AnthropicVertex\n```\n\n### AWS Bedrock (Converse / ConverseStream / InvokeModel)\n\nTwo ways to instrument, depending on how you get your client:\n\n```ts\nimport * as Bedrock from \"@aws-sdk/client-bedrock-runtime\";\nimport {\n  instrumentBedrock,\n  instrumentBedrockClient,\n} from \"@actaclad/agentguard/bedrock\";\n\nagentguard.init();\n\n// (a) You own the client instance — add middleware to it:\nconst client = new Bedrock.BedrockRuntimeClient({ region: \"us-east-1\" });\ninstrumentBedrockClient(client);\n\n// (b) You DON'T hold the client (e.g. LangChain's ChatBedrockConverse builds its\n//     own internal one) — patch the class so EVERY client is covered:\ninstrumentBedrock(Bedrock);\n```\n\nBedrock model ids are normalized so cost matches server-side (Claude ids resolve\nto their canonical names).\n\nAzure, Bedrock and Vertex clients report their real provider (`azure`,\n`bedrock`, `vertex`). List those models under the matching provider in the\nAllowed Model List guardrail.\n\nIf your code runs the tools itself (for example a Bedrock Converse tool loop),\nwrap each call with `runTool()`. See [Tool security](#tool-security).\n\n## LangGraph.js\n\n`createLangGraphHandler()` returns a LangChain callback handler that\nreconstructs the full **graph → node → llm/tool** trace, wired to your `init()`\ncredentials with identity propagation.\n\nIt brings no LangChain packages with it. `@langchain/core` is an _optional_ peer\nused for types only — the handler satisfies LangChain's callback contract\nstructurally — so installing this SDK never adds a LangChain version to your\ntree or a resolution conflict to your install.\n\n```ts\nimport { createLangGraphHandler } from \"@actaclad/agentguard/langgraph\";\n\nagentguard.init();\nconst handler = createLangGraphHandler({ userId, sessionId, feature });\nawait graph.invoke(input, { callbacks: [handler] });\n```\n\n**One linked trace (recommended).** With both tracing (handler) and enforcement\n(instrumented model clients) active, pair them via `startTrace` so everything\nlands in a single trace instead of two:\n\n```ts\nconst session = agentguard.startTrace({ name: \"crew-triage\", userId });\nconst handler = createLangGraphHandler({ root: session.root });\nawait session.run(() => graph.invoke(input, { callbacks: [handler] }));\nconsole.log(session.url ?? session.id);\n```\n\n> Enforcement inside graph nodes comes from the **model layer**, not the handler\n> (LangChain callbacks are observe-only). `ChatOpenAI` is covered via the shared\n> `openai` package; `ChatBedrockConverse` via `instrumentBedrock(...)`.\n\n**LangGraph internals are filtered out.** LangGraph emits a run for every channel\nwrite, branch selector and wrapper sequence — in a two-node graph, six of eleven\nobservations. They are dropped so the tree reads like the graph you wrote; model\ncalls re-parent onto the node above them. Pass `traceInternals: true` to keep\nthem. The console's flow diagram is drawn from node metadata and is unaffected.\n\n**Automatic tracing (no `callbacks` argument).** `init()` registers a LangChain\nconfigure hook so every run is traced without passing a handler. In an **ESM**\napplication — Next.js, or any `\"type\": \"module\"` project — you must register it\nyourself:\n\n```ts\nimport * as agentguard from \"@actaclad/agentguard\";\nimport * as langchainContext from \"@langchain/core/context\";\n\nagentguard.init();\nagentguard.instrumentLangChain(langchainContext);\n```\n\nWe cannot do this for you, for the same reason `instrumentOpenAI` exists:\n`@langchain/core` ships separate CommonJS and ESM builds, and this SDK's\nCommonJS build reaches the wrong one. Registration must also be **synchronous**\nin your own async context, because LangChain stores configure hooks in\nAsyncLocalStorage. Passing a handler explicitly needs none of this and works\neverywhere, which is why it stays the recommended path.\n\n## Tool security\n\nAn agent reaches the outside world through two doors: the model call and the\ntool call. Instrumenting a provider covers the first. Tools are separate, and\n**an unwrapped tool is traced but not enforced** — the callback handler can see\nit and cannot stop it.\n\n```ts\nimport { guardTools, runTool } from \"@actaclad/agentguard/tools\";\nimport { instrumentMcpClient } from \"@actaclad/agentguard/mcp\";\n\nagentguard.init();\n\nconst tools = guardTools([search, refundOrder]); // LangChain / LangGraph tools\ninstrumentMcpClient(mcpClient); // MCP: after connect()\n\n// Your own tool loop (e.g. Bedrock Converse):\nconst result = await runTool(use.name, use.input, (args) =>\n  myTools[use.name](args),\n);\n```\n\nPer call: **(1)** a `BLOCK` / un-approved `APPROVAL_REQUIRED` tool is refused\n**before it runs** (even if the model asked); **(2)** arguments are\ninjection/secret/PII-scanned (block or redact); **(3)** the result content is\nPII/injection-scanned (block or redact) before it reaches the model; **(4)** the\ncall is recorded as a `tool.<name>` span under the graph step that ran it.\nServer-side defense-in-depth is available via `instrumentMcpServer(server)`.\n\nFor JSON arguments and results, prompt-injection and toxic-content read only the\nsentences (three or more words). Dates, IDs and codes are not scored, so plain\ntool data is not flagged.\n\n### Narrowing the tool door for latency\n\nSteps 2 and 3 each cost one call to the scan service, so **a guarded tool call\ncosts two**. Tools that run in parallel scan concurrently; sequential graph nodes\npay serially, and that is where a long run adds up.\n\nBoth entry points take `policy.disable`, which drops named guardrails at the tool\nboundary only — the model door is unaffected. With no sidecar-backed guardrail\nleft, the scan request is not made at all:\n\n```ts\n// 2 scan calls per tool call  ->  0\nguardTools(tools, {\n  policy: { disable: [\"pii-redaction\", \"toxic-content\", \"prompt-injection\"] },\n});\n\ninstrumentMcpClient(mcpClient, {\n  policy: { disable: [\"pii-redaction\", \"toxic-content\", \"prompt-injection\"] },\n});\n```\n\n**Tool permission still enforces** — it is evaluated locally from your config,\nnot through the scan service, so a `BLOCK` tool is still refused before it runs.\n\nBefore switching both off, note the two directions are not worth the same:\n\n|                          | Protects against                                   | Worth keeping when                                |\n| ------------------------ | -------------------------------------------------- | ------------------------------------------------- |\n| **Arguments** (outbound) | Exfiltration — data leaving your process to a tool | The tool is third-party                           |\n| **Results** (inbound)    | Injection and PII entering the model's context     | **Almost always** — this is the untrusted content |\n\nTool results are where indirect prompt injection actually arrives, and where a\nquery drops customer records into the conversation. If you cut one, cut\narguments.\n\n## Policy (per-request overrides)\n\n`withPolicy` sets request-scoped identity and overrides (propagates across\n`await`). Anything not passed inherits the parent scope.\n\n```ts\nimport { withPolicy } from \"@actaclad/agentguard\";\n\nawait withPolicy(\n  {\n    userId: req.user.id,\n    sessionId: req.session.id,\n    feature: \"triage\",\n    onBlock: \"refuse\",\n  },\n  async () => {\n    // all instrumented LLM/tool calls in here are tagged with this identity\n    return handleRequest();\n  },\n);\n```\n\n- `userId`, `sessionId`, `feature`, `metadata` — identity on the trace.\n- `onBlock` — `\"raise\"` (default; throws `AgentGuardBlocked`) or `\"refuse\"`\n  (returns a synthetic provider-shaped refusal). Applies to **both directions**:\n  an output-side block always replaces the offending text first — it never\n  reaches you — and then raises or returns according to this setting.\n- `disable` — guardrail names to skip for this scope.\n\n## Guardrails\n\nGuardrails are turned on and configured in the console. `init()` registers all\nof them; there is nothing else to install or call.\n\n- **Built in:** allowed-model-list, budget-guard, rate-limit, token-limit,\n  tool-permission, execution-limit-guard, pii-redaction, secret-scanner,\n  token-scanner, prompt-injection, toxic-content, schema-validation,\n  hallucination. Plus your own custom policies from the console.\n- **Where they run:** `pii-redaction`, `prompt-injection` and `toxic-content`\n  are scored by your AgentGuard host in one batched `/api/public/guardrails/scan`\n  call. If the host can't be reached they let the call through and log a\n  warning. The rest run in your process.\n- **Hallucination** is judged through your own model client (OpenAI,\n  Anthropic or Bedrock), so no extra key is needed.\n- **Passwords** are an opt-in secret type: select them under the secrets\n  scanner's secret types in the console.\n\n### Observe mode\n\n```ts\nagentguard.init({ guardrails: \"observe\" });\n```\n\nEvery guardrail runs and records its findings, but nothing is blocked; the\nconsole shows those findings as WOULD BLOCK. Redaction still applies. Use it to\ntry a policy before you enforce it.\n\n### Kill switch\n\nTurn on the kill switch in the console to block every model call in the project\nwith your message. The SDK checks it every 10 seconds (`killSwitchPollInterval`),\nso it takes effect without a redeploy. If a check fails, the last known state\nstays in force.\n\n`registerMlGuardrails()` (`@actaclad/agentguard/guardrails-ml`) is kept for\nfuture on-device guardrails. It does nothing today and you don't need to call it.\n\n## Prompt management\n\n```ts\nconst prompt = await agentguard.getPrompt(\"movie-critic\");\nconst text = prompt.compile({ criticLevel: \"expert\", movie: \"Dune 2\" });\n```\n\nProduction is fetched by default; pass `{ label: \"staging\" }` or `{ version: 3 }`\nto select another deployment.\n\n## Configuration\n\nEnvironment variables (an explicit `init({ ... })` argument always wins):\n\n| Variable                                          | Purpose                                                          |\n| ------------------------------------------------- | ---------------------------------------------------------------- |\n| `AGENTGUARD_PUBLIC_KEY` / `AGENTGUARD_SECRET_KEY` | API keys (`AGENT_GUARD_*` aliases accepted)                      |\n| `AGENTGUARD_BASE_URL`                             | AgentGuard host (legacy `AGENTGUARD_HOST` accepted)              |\n| `AGENTGUARD_PROJECT_ID`                           | Enables live guardrail-config polling                            |\n| `AGENTGUARD_CAPTURE_CONTENT`                      | `true` to record prompt/response text on traces (off by default) |\n| `AGENTGUARD_INCLUDE_INFRA_SPANS`                  | Include infra spans in traces                                    |\n| `AGENTGUARD_KILL_SWITCH_POLLER_ENABLED`           | `false` to turn off the 10-second kill-switch check              |\n\nMain `init()` options: `projectId`, `environment` (a label on traces),\n`guardrails` (`auto` · `observe` · `off`), `onBlock` (`raise` · `refuse`),\n`tracing` (`batch` · `realtime`), `pollInterval` (seconds, default 900),\n`killSwitchPollInterval` (seconds, default 10).\n\n## Subpath exports\n\n| Import                               | What                                                                                                                               |\n| ------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------- |\n| `@actaclad/agentguard`               | `init`, `flush`, `instrumentOpenAI`, `instrumentAnthropic`, `instrumentLangChain`, `startTrace`, `withPolicy`, `getPrompt`, errors |\n| `@actaclad/agentguard/bedrock`       | `instrumentBedrock`, `instrumentBedrockClient`                                                                                     |\n| `@actaclad/agentguard/langgraph`     | `createLangGraphHandler`                                                                                                           |\n| `@actaclad/agentguard/mcp`           | `instrumentMcpClient`, `instrumentMcpServer`                                                                                       |\n| `@actaclad/agentguard/tools`         | `guardTool`, `guardTools`, `runTool`                                                                                               |\n| `@actaclad/agentguard/guardrails-ml` | `registerMlGuardrails`                                                                                                             |\n| `@actaclad/agentguard/langchain`     | `AgentGuardCallbackHandler` — **deprecated**, use `/langgraph`                                                                     |\n\nPeer deps (`openai`, `@anthropic-ai/sdk`, `@aws-sdk/client-bedrock-runtime`,\n`@modelcontextprotocol/sdk`, `@langchain/core`) are\n**optional** — install only the ones you use. Their version ranges are\ndeliberately open, so this SDK never constrains yours.\n\n## Manual tracing API (legacy)\n\nThe `AgentGuard` class is the low-level, explicit tracing API (traces / spans /\ngenerations / scores). Auto-instrumentation above is preferred for new code, but\nthis remains available:\n\n```ts\nimport { AgentGuard } from \"@actaclad/agentguard\";\n\nconst ag = new AgentGuard({ publicKey, secretKey, baseUrl });\nconst trace = ag.trace({ name: \"chat-request\", userId, input: { message } });\nconst gen = trace.generation({ name: \"llm-call\", model: \"gpt-4o\" });\nconst answer = await callLLM(message);\ngen.end({ output: answer });\ntrace.update({ output: answer });\nawait ag.flush();\n```\n","readmeFilename":"README.md"}