{"_id":"agent-input-sanitizer","_rev":"112-b4ae7d8293fa55780a2f86f09b895cae","name":"agent-input-sanitizer","dist-tags":{"latest":"1.47.14"},"versions":{"1.0.0":{"name":"agent-input-sanitizer","version":"1.0.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.0.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"dist":{"shasum":"7bbb066922728bcacca69a42a84b6bdad4a559b4","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.0.0.tgz","fileCount":8,"integrity":"sha512-LoaZQuSyvTt9X/HOf9ufSts1s6BfQP2V4WZPghNu5RJblivC0MieaGf4iihyOtJMPk8hxxZ2fN0jXcu7+1bW1w==","signatures":[{"sig":"MEQCIGQf8gJ6yoAUhwhlu1YBTGFQUdg5hsbausXF7EjW3qIyAiBZD2OmuKsfivwXtwVHLIgcMZJfveSVtboB2ljS/uvMdg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83380},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"}},"gitHead":"2dd77420b008d255f56cb9c7c5c407e791b1bccc","scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","prepack":"pnpm build:types","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks"},"_npmUser":{"name":"turntrout","email":"alex@turntrout.com"},"_npmVersion":"10.9.8","description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.22.3","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.8.0","devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.0.0_1782104345926_0.013951277537559426","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.0.1":{"name":"agent-input-sanitizer","version":"1.0.1","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.0.1","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"dist":{"shasum":"50e7fef8763f7da6297adec237f940b1c5574e14","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.0.1.tgz","fileCount":12,"integrity":"sha512-3xkcw+GbcrS1JifigimEGmGI9TQJ+JoOhOaQK5qgaGiddQji/AWip1zCNN0tB7bdblkafG/s68JbI3N+sAtQWw==","signatures":[{"sig":"MEUCIEKZTcwsMpWn5fsXiPPZ0jwRvtEynZ3tfKHWYrp675stAiEAtnhsl4J1f6kgUWAz8Abn/bFzAsqcgAmJe55+gZS7tBY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":90637},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.22.3","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.0.1_1782165247281_0.09327887037594151","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.0.2":{"name":"agent-input-sanitizer","version":"1.0.2","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.0.2","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"dist":{"shasum":"4c4fb5cf33e0baa9375bb3e0c0af76202347724b","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.0.2.tgz","fileCount":12,"integrity":"sha512-b6Ib8MZqipoeN3tb9OVJXP+Pju9KxenJLj3UUZewc/s+lB69LUCf0gkI89xxbVO6fKEN43K/KSEbugYLRVZ/5Q==","signatures":[{"sig":"MEUCIQC/IJIOM7bv+qcv8Utf8XNRRxKTDakfZ1H/0M6IzDoPeQIgPZ9JfGCTlTqW72yYwO3UkuX//6Mn3Pqoyj4JGbNF53c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":90637},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.22.3","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.0.2_1782183566337_0.25734276712198056","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.0.3":{"name":"agent-input-sanitizer","version":"1.0.3","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.0.3","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"dist":{"shasum":"ddcda7761d6c710a9e53e58c3fdf4d28beec46f7","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.0.3.tgz","fileCount":12,"integrity":"sha512-mqh3uxnTchG8G3XG0hmZ6Ub7+K1OTZbwDFiWzgSamXRn2dbFYETN+1QJXKuJasAZBIQamxHJOqxJeLntFDa2LA==","signatures":[{"sig":"MEUCIQChBeuVzGXFHuYkFUy3jkrsdtBhA/Ngn11nNk3aFGTtDAIgQKGfgMVe0Pd5vGisPsbabLCKSTrWYAJuS+GQXt65ZYo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.0.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":90637},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.22.3","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.0.3_1782184701226_0.4765666993125408","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.0.4":{"name":"agent-input-sanitizer","version":"1.0.4","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.0.4","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"dist":{"shasum":"f3a102c9346518399a147d20f0792e7f5f977b15","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.0.4.tgz","fileCount":12,"integrity":"sha512-TOGzIxlsup8W50FWxKVAZ2Ki8OnCne+b9zw74A0/t/wV3yxAl3ZBcLE9ZbaUVZJB+noauusthbpipL6zhoGuyA==","signatures":[{"sig":"MEMCIDEqBbRK66kwERZG8hSVl5HNz2O4vqKL+YPH27/6pjZOAh9vUDb5inDWYHzqOel2EDz4/8RUaOgx96VVhOyp/Qnq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.0.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":90724},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.22.3","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.0.4_1782190192316_0.008387179719024918","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.1.0":{"name":"agent-input-sanitizer","version":"1.1.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.1.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"dist":{"shasum":"39bea1d18796bc20965911dd765821bf9adf0c1a","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.1.0.tgz","fileCount":26,"integrity":"sha512-7oqAaKs1DX43j2yvzFpJcJFsfKDGISTBaEs7MUFBsOsEqUFStR3c3JQBKir+Jk/URaEbAkpeTxb8Cfon6AXgZA==","signatures":[{"sig":"MEUCIHYkmcf4qBvm0qPO9f1A2QqOPyP1Om0iAuXuk6y70GhQAiEA3Hgg8iGp5H1NXaxaSOalKmdNXt728xjHDtTDw7awhzE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":175869},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.22.3","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.1.0_1782240431769_0.8909737282726651","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.1.1":{"name":"agent-input-sanitizer","version":"1.1.1","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.1.1","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"dist":{"shasum":"fc756108dd3d9f006783721b03e63e36cc140182","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.1.1.tgz","fileCount":26,"integrity":"sha512-e7qWtPdQWftjtmnHkMd0zsDeTd9gvaDVKBR0csS4QfYrF7yf2yIn6dK5t7Gj5lTOU/AVV9PI0/RbLpJVtqst7A==","signatures":[{"sig":"MEYCIQCGDjsVzQRqNwy8OT1WtMFwNt0D/4A6Ts9Wt8XiaAhkwAIhAIEic5XGlvn5NM6f5NFZszv1mDJ/Pw0pI8keBDYYz2ys","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":175989},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.22.3","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.1.1_1782244931405_0.2840038091143686","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.0":{"name":"agent-input-sanitizer","version":"1.2.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"d9803ce0a02ec8de5886b308d9afa1de9024fdbb","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.0.tgz","fileCount":27,"integrity":"sha512-MrNyLxgCwLPFqROJVhVZx22ngSJ3Zu4cnUB+MSrF3sn4CN7A7mJxFvatidHSqChtRN9eR6BshNx6QGArLnupgA==","signatures":[{"sig":"MEUCIQCZ4GMqm34XGdSuq/kE4xh6qubRbLEnA+/shhik0h0/DgIgVqhGgGDbk78sGV/sC3YFicZiflu8iRDJ0Yism4FEL2E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":181942},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.22.3","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.0_1782247593734_0.9783761186608251","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.1":{"name":"agent-input-sanitizer","version":"1.2.1","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.1","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"c745c1dc3985fa2efb4ea495141dbb1152e8512e","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.1.tgz","fileCount":27,"integrity":"sha512-yv5E9LtzWHr25eWkhBLMm4w8dwt8Fp7WJ3V2jbwqy2wXu/1yTXb3Nw9jniyjiEWVUxcYSNTVqLwfKCbZEKYKBQ==","signatures":[{"sig":"MEQCICrj6j06gRePeQEC7tvhu133UtOTjJ5CHJw0lZ/crSfNAiB2S/dyzq6efvdpjGKbuJ7V+xiO5WWjgen8675h+LCASw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":182478},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.1_1782679647679_0.9203754615525475","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.2":{"name":"agent-input-sanitizer","version":"1.2.2","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.2","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"46de05ecb2744809318cab1d2ccf9dba680a6dee","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.2.tgz","fileCount":27,"integrity":"sha512-r2+ZB/YtOIolktDd8fGpze18ymqfQ4d3gHD68V1Yg7h3lsz6r4hJj6IWFmMRwhrRhVB5oJO0xGsCjASaPVae/w==","signatures":[{"sig":"MEQCIC16ZTCsIIib2UlYz/nI2fXtg5ham2Vlbnk1gHpwnLWtAiAmbRsKujGMG50SBQJVrbOYsaCsbAbcdpJc3Y+tiW0Mng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185507},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.2_1782681749855_0.8330714693690053","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.3":{"name":"agent-input-sanitizer","version":"1.2.3","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.3","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"486f9f5e4240ffbfca864469b8dbbd11351a53c5","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.3.tgz","fileCount":27,"integrity":"sha512-nq0dbiLYqnl8tDXJ/d5/FSenhZmGLNYDdM+QJNo+EG5ZLBSTfZ9Zo6BK7X7d/eTXQwlqknka29rP76Ybh3oCjw==","signatures":[{"sig":"MEYCIQDUAJr+pPdmqYEygAfFzY4PqFZmsPeLlrP597g7WSfDwwIhAIZShCNqp2S4yzz14dlQ3yFWOT8CW7CKZAOCKg0z6A0e","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":203872},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.3_1782681843112_0.4225297689171599","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.4":{"name":"agent-input-sanitizer","version":"1.2.4","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.4","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"70def32eb362bec6f4363033ae6791a9d192eeaf","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.4.tgz","fileCount":27,"integrity":"sha512-4W+vY0zpLuHvy5LrXcMnxhXdIaNWn6Fz+7n1bZNslxbN6R2+DY/0G7LQeMyg7QoU6h9VB7v27nHAW0s3M4H2mw==","signatures":[{"sig":"MEYCIQCkUiaMP1/eTWZDWACpMwM1eMFbytX7NgcH0s1k/zmsiAIhANnNgOEnCFoyNuZiD3ZoQOhijt0oi6hySRMVba/T4qTM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":203872},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.4_1782682156410_0.09678949738906462","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.5":{"name":"agent-input-sanitizer","version":"1.2.5","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.5","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"92f44f7d57a4435f2a71014a29429591156a752d","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.5.tgz","fileCount":27,"integrity":"sha512-lJzBF0tcl+2tP0Kz6AsTTtoo873dnYT567j3UTCRk58F3njBsxGz4/LnAIdpNaz4pPaeTKKql0X+BLmDmdhsFQ==","signatures":[{"sig":"MEQCIE1rikWZ9R1NR0A0UeLsg7eAyiDPlXbU5mWdEklOc6ItAiBKfGery8T3IwLzU/ru/atTa0B9q9BB6yINaiasLdkQSQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":208736},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.5_1782683596118_0.990087146008485","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.6":{"name":"agent-input-sanitizer","version":"1.2.6","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.6","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"1d78fba9051c3a3d003c368c425e3c50c96e9952","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.6.tgz","fileCount":27,"integrity":"sha512-jDV/gD9fHR8QKPm+mcqs4Rz+q1XdHuV1kxz0jhk+IY1aoXP/K2VHAHemMysJmEI0fYr8W2VKOVuiMZCK9FOdWA==","signatures":[{"sig":"MEYCIQCNNFaLbKsqpLzYv9XJxIeshVlX4OduGs5vrDS3I/O2UgIhAMho5G/fxQIoJ/Wz8+1/WZmXKZIa1LmC+ETkQXh28G0R","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":209253},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.6_1782685054301_0.33500473530188013","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.7":{"name":"agent-input-sanitizer","version":"1.2.7","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.7","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"d67ea99167757dc31b2c96532533638289ecc5a5","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.7.tgz","fileCount":27,"integrity":"sha512-6uA1ASEZi8GHuExyZ0MfsiFr5rkUM00NwEbzjVAS+mNjNuSEx74IrenxZTtvpRGOLtZn9BFgbyD7mfT/4Vi/4Q==","signatures":[{"sig":"MEUCIQDVHT8y9V17zBOgfqvxkVFvYGB2lo0gbqNvfpKkvE6XywIgUIeIUsgWsphg/8dR1CizQFXrTEchJMGEYGifdrKh9bE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":213972},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","postinstall":"git config core.hooksPath .hooks","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.7_1782688790275_0.4141751058942986","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.8":{"name":"agent-input-sanitizer","version":"1.2.8","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.8","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"79a1e7f0cdcbdf2647f308e41831712cf8fb1b04","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.8.tgz","fileCount":27,"integrity":"sha512-jHxbMk3vI54yBpLjbsCpbjX4A2FosTZqjGL2FF0sILqhg3tKShPAacctaDkR3goTspvlgnkWehfd4UCp63R+Gw==","signatures":[{"sig":"MEUCIEy+Gat1NSc/pkX+IJ9TA85h3TmB2kcBqNP8HhTO9t0rAiEAqFQuxd5Vt5JBrPgMnKH+r3hOlg6JIwL0YIF+I/ofSgE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":213923},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.8_1782688833683_0.1940181188023069","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.9":{"name":"agent-input-sanitizer","version":"1.2.9","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.9","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"88a77e7ac0f689648703b83b3424da2c6bf14839","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.9.tgz","fileCount":27,"integrity":"sha512-czEGys6Fp2Lp9gA9OnxGH1z09TSS6fDhoH49/6YFoIYcr49JqpN5iEgPCkPpsrbDtn5Wda1pE9eWXEkJntSDsQ==","signatures":[{"sig":"MEUCIDmAyILxA0EYGdD14Gpv9xTUlAuuFC9raBgtbnCfL4QzAiEAjjz6aFPDFuSIJPuUcXeYSLMDspzDizoksOsrV71bE/4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":220137},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.9_1782691490365_0.615551237701381","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.10":{"name":"agent-input-sanitizer","version":"1.2.10","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.10","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"b9a16f55c0c626682b77f62ad1f8e7aefc4b97d6","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.10.tgz","fileCount":27,"integrity":"sha512-5o/0t+h6aGCbxR5/I9Na6P+txxFoQWIZKrDGVtv7BsYBUibBBBvCNivHxQgtkxdacCTUvjfngutYjD3tnezjbQ==","signatures":[{"sig":"MEYCIQCahmv1GNcFrb/OWWHv5pe7zzFsP4u/C6qCa8WdlNpSeAIhAMtzlwH9uXNvn/59WWnETsZk1ag8oM6ruKGqAyfQoHpt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":220747},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.10_1782691550909_0.39645573460891415","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.11":{"name":"agent-input-sanitizer","version":"1.2.11","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.11","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"07d9b5310c70c67acf7a41128050d146b5f36c52","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.11.tgz","fileCount":27,"integrity":"sha512-gNelc1lBUNqi/OaD9ZdB5dEqAwXlTd0wqC5yfqCrAnaWQMOS0h8pRg6kmeJzWpPpzAkrMGid5cFyne2P6VElCA==","signatures":[{"sig":"MEYCIQDmGS+wbd0vcPSYSk3rruGjBkQhzsP2Y6xVjQtSftUn9gIhAP/FbIZK81pI2iqayNEbFGuxklBim5mcrWotTa6dO1uS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":221391},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.11_1782691577044_0.27090893748977196","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.12":{"name":"agent-input-sanitizer","version":"1.2.12","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.12","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"4dc7c975165ef8e1d8ea00da3c5b50165f0a062f","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.12.tgz","fileCount":27,"integrity":"sha512-niBEN6UM2fB+WcSvTpozvOhlLBy3paQF8a9ACS8G958ssnB+6U7Gy+6X9aiIzyN7Zy+Jr2KAYqdFcXzJlrQCPA==","signatures":[{"sig":"MEYCIQDHAbmH1WsjI190wIEu0/Z13tqZ6JE4xchylgp/7UA7WAIhAL0tRRoyPmBFs39jNeZhOIayRS+QG2SLqgA1T4SNhH7m","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":221391},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.12_1782691613074_0.6816680422898884","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.13":{"name":"agent-input-sanitizer","version":"1.2.13","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.13","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"3a8a5f569a89ecf599fff3a179546692ad40e3b6","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.13.tgz","fileCount":27,"integrity":"sha512-MniG3z1O96m032HVSixaTEZCqSgKln44ERCsbl2pgYO5S8djb2P6HR5kj+anCoAp23tYK1ILrEOSMRs9OC7PEg==","signatures":[{"sig":"MEQCIDnd6Sg9Y5gIQKfBL8L/UCF/EBmHfQE/EucN1thXxgajAiAMPF1RIQ3hU9LG8mDuLgvxSbjd2zqdXe3caYL5OdUbzg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":224242},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.13_1782691652873_0.74740006386173","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.14":{"name":"agent-input-sanitizer","version":"1.2.14","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.14","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"a757b8a7bf9369236e6f42f938bcdceda4e1fe93","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.14.tgz","fileCount":27,"integrity":"sha512-u77zUTqctCofVvPpV8KJd3PIBrC045t68ZtbLlh4O8+Q746oW9zP8/5PmPjiShuhbk6XhhnGGdOu0wbp9pHhMA==","signatures":[{"sig":"MEYCIQC9+gfVtISXm8Rq8LoFPIE21abzIXThzH7JQ9Lkm9LPggIhANuCfMPuy78gFKx3PyEUFY+U18/142wpjhA+wUBDLIfp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":224242},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.14_1782691737536_0.8335754521583651","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.15":{"name":"agent-input-sanitizer","version":"1.2.15","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.15","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"f20b54e4130611339a5c7902a70f2b0404a31244","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.15.tgz","fileCount":27,"integrity":"sha512-aduiAfYVPtrx5sTCeR+geklPuKB6erQndrzBvrH6ozu3fGM373RXNAiaMyQFHzQYBhvPnypZSlzAm/R32LSJKA==","signatures":[{"sig":"MEUCIGOoDFSoYhQmV0Gd+YL/H4Nk+If+MQtIp3O6JOtCftyrAiEAj5hsRuxzUclTr1ze0JsS/P4l0nbteLrfm3dfuObZAmo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":226594},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.15_1782691883566_0.3586836496553525","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.2.16":{"name":"agent-input-sanitizer","version":"1.2.16","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.2.16","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"780333eba4465793be981d6f3e22fa98e0c474d9","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.2.16.tgz","fileCount":27,"integrity":"sha512-2AxUwY7O/KohMwnRjSPb4c36BTyUDrohaR6GP2e0cBuDk5Skr4Ks9K8ImXyugFHa8lVqyB2ymJeq07Rms2pAJA==","signatures":[{"sig":"MEQCIBbQqKOgNxU4UlSwko5K8VJHwgMs4ZIcbKjpRMr9DgAPAiBD3VwJie0+NxDeFCTPAmkxB2V/+I3BuFvO0ZPuZB/rqQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.2.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":227818},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.2.16_1782692375973_0.2693814118035902","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.3.0":{"name":"agent-input-sanitizer","version":"1.3.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.3.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"552583dcc24907149c13d254ef0d1b6aeffdab9d","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.3.0.tgz","fileCount":27,"integrity":"sha512-u6OYxx1hdmuyaFzQA4J7XfDnA1O16Bbhz4T13SNKKnfh8FK5CvbA28Phx/RmnaTuexK3IcXgQYmwSw/Ah8/c0w==","signatures":[{"sig":"MEUCIQDkDHNGDvQi5jOtNAJiypdvpBYF1NSEyKnbFfa/dWabTAIgSOx4FiSfVIrLzbJU6hrrWLRyDYjKFDx4FifdBHHggx4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":227817},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","punctilio":"^3.10.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.3.0_1782692513944_0.5959463464354027","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.3.1":{"name":"agent-input-sanitizer","version":"1.3.1","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.3.1","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"c06836ac46ee06f1a170b23d601a3b211742abc5","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.3.1.tgz","fileCount":27,"integrity":"sha512-8eqbWkjcEeS1bZxqCCYQqKFWwRlwoaG/NLleKNV+3EOO3x+iJxqHR+UZbxeeTAIX1f+bh8DZyIF8ZaMg7wOB2g==","signatures":[{"sig":"MEYCIQCI7MMrzwFJnkZQBsNOHNYMsNtAtR5ORAkzJO696wVtOgIhAOhL/QUbhTo1IBphxHAlcbM0dh3DAjPVTQ2EQyjVvpsG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":227789},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.3.1_1782692644525_0.7397186191895344","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.3.2":{"name":"agent-input-sanitizer","version":"1.3.2","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.3.2","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"01b1d1e570e6899ac57833c9ae9c67624c952134","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.3.2.tgz","fileCount":27,"integrity":"sha512-vexrikU2OmaCU8aWk4CL4uNgBc5Lg6O7CvDrJLYxVmozIynEdFSa9Rl5A+RV+dORkzBX9tC3o1gAT3xSr0p1FA==","signatures":[{"sig":"MEQCIEG5yHmCv3bGxLWIK+IHXNfPYAvIMlGmBRxVPkRYsHiGAiA9L+xIUo1hHPff8sOUuDYdqV55PHO5SnaWwXK03PJWdw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231918},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.3.2_1782694307985_0.17092301007865385","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.3.3":{"name":"agent-input-sanitizer","version":"1.3.3","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.3.3","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"99db2530a4f4cbc1f64c05fde124210c65f75685","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.3.3.tgz","fileCount":27,"integrity":"sha512-mFvqB9zWQY5rt21sleaYZzFyP8wPjInkEy/cKVQB5SIX1odcX6qMpMrNe8cN8Q6RyznvU7iB9Tu5kIWVS2w5AA==","signatures":[{"sig":"MEYCIQDFWtr5vxmrZQN14Me02Gu4toukrlSIGo8lneC5gWRv8wIhAJGmxVBhQVecD7J5O6WCyGwtpjEaVuvnP5xplXLJJ8O7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.3.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":232159},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.3.3_1782694354889_0.060797286920144744","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.3.4":{"name":"agent-input-sanitizer","version":"1.3.4","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.3.4","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"19980fa55cbfd9ff49c7db045b0890a239aff866","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.3.4.tgz","fileCount":27,"integrity":"sha512-OE8wFF5RP2pm088pzyds4zQHFqf0iZMVyA6jdjTv/WslNo49Jme/7sWZ0WY5z12xjL87UIyTWuuyz4k7xGZbog==","signatures":[{"sig":"MEUCIQDWNM/cUot0Reb+emes8xH+VzBmwL8qbmaprFY0jJK77AIgL/ModrVT5mrfxz/wu3VIFUOt2SNnhQ6fKvVIHJtqsSo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.3.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":232161},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.3.4_1782699078422_0.030609406914602566","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.3.5":{"name":"agent-input-sanitizer","version":"1.3.5","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.3.5","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"99a0c2a7839894a53d5e762a18f8317e033ecc70","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.3.5.tgz","fileCount":27,"integrity":"sha512-WFYZDBhhBOgCUtjU0xzzasekaWuvIJs7uqr8QSQitl4CMTvv58uSZbqwuMFHcliUuZXAykZ08fkPMYHdXAJpqA==","signatures":[{"sig":"MEYCIQDzuJ6YomRl6nI1I2HjfvuInn1Epu8MKfKTEV6HsWGmuAIhAL1uiDTJLTUowFqnRDxZ1Q1N6SzmE3SQMVrV6ipCMGY6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.3.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":232415},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.3.5_1782715454042_0.8999454315141207","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.4.0":{"name":"agent-input-sanitizer","version":"1.4.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.4.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"9ab3616ffddd9f45e407519010cb3c5471b7d4e1","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.4.0.tgz","fileCount":27,"integrity":"sha512-DAjnSbG9mQJAN2y77o3p7gKiUwsNo+ru/Os/4wK9QqSsoh68vRMcJFsDPJ8XT0AleegWv+QXjA/zBjZ2U/BPIw==","signatures":[{"sig":"MEQCIH9Z1Spqbj+/mvbUS0mGCQPbwDOt5ZUhcXnJKj2b3YqlAiAVjj42PNKExx66H57jM26DphZz534x1EAQVf9dYpHvsw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":233717},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.4.0_1782743305932_0.17160357347486999","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.4.1":{"name":"agent-input-sanitizer","version":"1.4.1","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"license":"Apache-2.0","_id":"agent-input-sanitizer@1.4.1","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"f1aa7bc5218d27e0df111524381ce6e104f6b384","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.4.1.tgz","fileCount":27,"integrity":"sha512-haylq5ZXWqY7GkHZD0lnZomMQ4RdTVn4JK1lWOMLCyb1JmsYUm/Q8lFpxcuMlLFP474HfIBfIzuROaOjD24pdg==","signatures":[{"sig":"MEUCIQCZPFEPyI0eifZgxaTbGCUOwz47ANW77bRIdxnbEaP0qAIgERpEwJH7zGSkMcOrXEljfhZqyKeTw2/eujU6GzMW5FU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":233546},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.4.1_1782760817099_0.1686390863019065","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.4.2":{"name":"agent-input-sanitizer","version":"1.4.2","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.4.2","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"1298827301a94534e5fba9db2eee4d1700fc1f48","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.4.2.tgz","fileCount":27,"integrity":"sha512-XhO4m4YGZ+2uOhwmCSA7UetTse9sWgnXzZ9P2aAMgRSKYTx2lqUTqRasrOqWw49TGk9hX44l9q6zKlyySD85+g==","signatures":[{"sig":"MEUCIGU25i6rg60ceaFJxaRGbOzuIVJQiPy7Z4LaEuya8fYYAiEA+KrKyoMAy/t/+HQJy5TBGZ/7G80StZJKqfvRMq/ff8Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":233577},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.4.2_1782772924021_0.30030390670802776","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.4.3":{"name":"agent-input-sanitizer","version":"1.4.3","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.4.3","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"59ec7482c00c37ef5e1493bb8c5a088611bf23a5","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.4.3.tgz","fileCount":27,"integrity":"sha512-jdVgYaPD4+0yBtcmHE3udNvCa6f2t1vRW6DyJ2MzTVB/9+GO+Iby+ziXzFu+fVkhaV0x/jm2CiqJ67uDOAQ7IA==","signatures":[{"sig":"MEUCIFBmSXIrvb+kyHYTf5h0ki7uXWRfj/Jalz9YaLT0qtu9AiEAjOQmlEICjmwWjuC8+mlnpwU4LBwpqphl+0JUcO5wFQg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.4.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":233577},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.4.3_1782791065098_0.9143011794648299","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.4.4":{"name":"agent-input-sanitizer","version":"1.4.4","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.4.4","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"86ccdd9c635483eb23e202aa57e7e57be2e1130d","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.4.4.tgz","fileCount":28,"integrity":"sha512-sbKnnNSBygqTF9GrdaWDFcJiATJHrBSNTpZw9SbaXhSjljvcHvIhl0sfLxeP3DPRlZQhb9C0fxHIfIKyjJfSmg==","signatures":[{"sig":"MEUCIF0DeNoIb2yIImI75iNlGPEIk9YvYKnwLS0SQRR+g+02AiEAotcGYXdsHjqQ0IvyF9aLK5w4sodDOJlZZhJhyMM6PJA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.4.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":235592},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.4.4_1782793452768_0.7392580617479902","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.4.5":{"name":"agent-input-sanitizer","version":"1.4.5","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.4.5","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"03f6047e95add72f6d05cdfe269b319274ad40d1","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.4.5.tgz","fileCount":28,"integrity":"sha512-KqJQbZZ1Xwo9Jj2l794ow5xort7ijubEwq0SMs/wSgRs3nmtoIx6fh7WiOVi10gNEqSprxLxGqTj8LKOc+uZzg==","signatures":[{"sig":"MEUCIQDPDbFhHC3cLHevs2LfNn9elSBVnAkm9z2xhr3E5VpiVwIgcb6E1Yb3OTijDfVzDlMapf8gpvgKtPOXfTUfhYsIlrY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.4.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":235592},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.4.5_1782795002001_0.48948800539049286","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.4.6":{"name":"agent-input-sanitizer","version":"1.4.6","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.4.6","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"4f4a3f6de21babf5ec68b5e30a51de1af75f8dd0","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.4.6.tgz","fileCount":28,"integrity":"sha512-FuEAqM377q/RiZuGiNH6beWtmDccxo+CaFbNGx0D16TdWyxKOJB2K8NtT53AB3Yr0EfMU+w5DOD1kuzH8TRigg==","signatures":[{"sig":"MEUCIBwUTv81AdvDZO+/dUf64kSGOPfcZdRFYI8izkLHE0IdAiEA/qomclwy5RUKh+R4osivBU18kj0/hw8Q0WoneDMIFkg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.4.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":236193},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.4.6_1782796088154_0.08622591891792641","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.4.7":{"name":"agent-input-sanitizer","version":"1.4.7","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.4.7","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"aeed735e3856ed04819b17974a6cab1a8ec3aa06","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.4.7.tgz","fileCount":28,"integrity":"sha512-46NqplDzg55NvV84j7XVU57W1SuaRQcfjqmOeSgM9OJ+2Uj4JfL3VY+3ICfrocjhynodjqALBWuG8VLvVJmS1w==","signatures":[{"sig":"MEUCIDlEA/6QCKDglcVTKYuxFIam3gLVXRI9leGtPB8y4cUjAiEA1nvKr8oummBr1EgaTK6aHWeZc/FsP/00mJEdpe7jtbc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.4.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":236193},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.4.7_1782796719586_0.5529246213832353","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.4.8":{"name":"agent-input-sanitizer","version":"1.4.8","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.4.8","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"11fcd9f94b727a1a1e58fe793d5d52dd4a88b4c7","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.4.8.tgz","fileCount":28,"integrity":"sha512-dkR+HyXAACHPzHRIL9T2MdLisndd4Z2Nzs1528y55+/iWp3nkPiCMGS/1ti79n1707hlVjWS67Lv9xbOhDhLCQ==","signatures":[{"sig":"MEYCIQDd/VrxT4SdiE/aCTT9MgBnMD3apAix8gQznOkiXhnO9QIhAJ6lO3Uvhl+alw3CDGINMYTvKvRMZNWd3ibDsLKfbz8e","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.4.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":236153},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.4.8_1782797389726_0.7598162848177901","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.4.9":{"name":"agent-input-sanitizer","version":"1.4.9","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.4.9","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"e8914a34574ec0cabbccb5642cebc34e142b361d","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.4.9.tgz","fileCount":28,"integrity":"sha512-7QKHqc7317EGaO6H05iakWXk+yHh/6f1Be7so8g/e5I7R/e8n/lV93/xZ5ZcO7hoNsUQtyKuk8prqiRJei7Dig==","signatures":[{"sig":"MEUCIQCPMk2ngZG5dZ8Hss9jzfL4Mg/SH5ZUls0iLVdgPZEy1gIgPrEhvOPrsarA4NlhHuhQszlPmjfWGAKivB4hJVguwEA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.4.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":236153},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.4.9_1782797702892_0.7574578801240917","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.4.10":{"name":"agent-input-sanitizer","version":"1.4.10","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.4.10","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"18ee0d2ee540558d26c524bf913cd3b1bec8fc8f","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.4.10.tgz","fileCount":28,"integrity":"sha512-Z4DeMxsHQD7VsqjEGwD+D59jWqLthvZJkNjojo6rHmSCar2TVH6nEKlf1YBHo3ZqPyT6L1blxVO2McgEBPqlWQ==","signatures":[{"sig":"MEUCIQDPVBm6hW8z7h7cbGuSlhjY3xAsFtRpXtphjr/JbfDF7gIgIVAn1x3HQ3skfRREZYuqUYoH/H23k+31CQOsJZYSpWE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.4.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":238014},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.4.10_1782801065188_0.24690893072004183","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.5.0":{"name":"agent-input-sanitizer","version":"1.5.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.5.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"d94cd6433e53acb1a43bf75748dfbceeae232b8f","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.5.0.tgz","fileCount":28,"integrity":"sha512-0cNlNQO2HS8wGxNPEV+3Aeg2jUZxJlF1w1GMH8S24mJTB3k1Y2gh88U5x8R+PXwZOVe7t/8o1qLr1Jx7Px+Npg==","signatures":[{"sig":"MEUCIQC1Jf9XAtNrjDzV/2iqFWXJ7zcfmuz4NPb8Skn3rleQyQIgaFy9h/OkB+/mx5v7RIGN1RngKu/vTGg7qffq8cd7C9Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":239339},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.5.0_1782839948404_0.16639633043035063","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.6.0":{"name":"agent-input-sanitizer","version":"1.6.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.6.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"09be2d73f7cc57119be43730fcf2fabeaa3c1212","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.6.0.tgz","fileCount":28,"integrity":"sha512-0td3lr7kLIMCn8EFRw6ia6MBsNawHWhgSj7Q2UdBMO4MDBxzkW1OtHqpP4xv72M+1xFwLmmsHdQvNBxC8uN/uQ==","signatures":[{"sig":"MEQCIB4yDIE+b8c0jxMZ60YS0euoCaZ3xc/eXBvLV/rV1hsSAiBayO/NrIHROVuzVmyCwxwz9mmc5uaH9S6cbpG227E1vA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241083},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.6.0_1782842508084_0.7277440659555288","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.6.1":{"name":"agent-input-sanitizer","version":"1.6.1","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.6.1","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"e4a808c1c09450f1f9ac3032b0d5c438513e9e12","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.6.1.tgz","fileCount":28,"integrity":"sha512-wAscO86tFaxpsoCNhilSzG7OsLicVpRRBQq8fPNv79EvxR/B/RuY4lcX9eH34WjXpEBAhqRCU9fWREJQCQ69UA==","signatures":[{"sig":"MEUCIQCYpfBKbihWEnbXFZxubKH6/u044n62FRJUo0j9qNz0gwIgeGIEqgmp+Y32OR029KL7YEgHVxO0Ng/sBRQvjc2jzfw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241083},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.6.1_1782877969008_0.6918831533309777","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.6.2":{"name":"agent-input-sanitizer","version":"1.6.2","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.6.2","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"05fc6f9117412461ccb7bf650beebc5c4e49bd61","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.6.2.tgz","fileCount":28,"integrity":"sha512-iAsC/jsqyo20HHMrJ7jOS+EXGWe7pCpHbmnSNT3HA3BQLbut6ryO91QOlU7C0aUh1tTuB4w2ad+QHkbmRM75yg==","signatures":[{"sig":"MEUCIQCyhpnzV8h6s8S90pybsRxol14j/6j1aC3qVCKX/39HRQIgFB1D9IkuwZSV5MXybewl34uJ8083dCl9YzVp+RYq+SQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241083},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.6.2_1782879333117_0.31513160175054833","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.6.3":{"name":"agent-input-sanitizer","version":"1.6.3","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.6.3","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"2d8d29314bb3db84b1af6a831c1c880bfc4b18f9","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.6.3.tgz","fileCount":28,"integrity":"sha512-TDnf8/qy05/wEQ2G6fyNFKVCdwkrxGyG0PpfegxRriRWOF59RilqaW/b4S8/654BEaVbeQ69Be4Ofja5YT9aPg==","signatures":[{"sig":"MEUCIE+3QDc4f+90Ixwflx3xJRBHBv4euQJ4AlkmVh42mabQAiEAtqQsupsviUUcmFf9rWJUbYYU7cnBFKMaiIAQn7RyQac=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.6.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241083},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.6.3_1782879429948_0.6369178753061913","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.6.4":{"name":"agent-input-sanitizer","version":"1.6.4","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.6.4","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/alexander-turner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/alexander-turner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"64b3335a589309817111490e844709a4e09cc778","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.6.4.tgz","fileCount":28,"integrity":"sha512-vDq0lpjIkeEyedHJrBVNZF61aawZ7Vvt/ZGggwEoZQr0VDX7wH46ASSEGEJzNpunScINkNoqkUMPdiRCf0P7ng==","signatures":[{"sig":"MEUCIC0goC2YhAgrg4Km1YxTwUVWuzJI4Ffi1M/nXwscTSOBAiEApG36piBQ2MKGrP90QMipZZq+iP8WQNPfi2X8l92zBo0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.6.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241340},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:82a07bcb-2912-426e-a96e-b761cb7e6860"}},"repository":{"url":"git+https://github.com/alexander-turner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.6.4_1782881576041_0.3136108435057383","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.7.0":{"name":"agent-input-sanitizer","version":"1.7.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.7.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"1f59043a1a1976e1fb62017a6a994dc7663bcbf3","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.7.0.tgz","fileCount":30,"integrity":"sha512-Lnqc+Bs0D5WBo9D6y7E3wosaieaPh9+HE/VRnuRx22V1Ib03r0Ay+DjAawZ6YAnO1JzeS4fubX7cbpK23ePuWg==","signatures":[{"sig":"MEUCIQCftBQOTHnqd/3x/VuTarCWXW1sTmhBXX/tmmwQpW+rywIgCB3hdTod3RVXwT6SFDDrw5KMtcq9QGvar+txbsNI/sI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":279979},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.7.0_1782932699438_0.9383513468256675","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.8.0":{"name":"agent-input-sanitizer","version":"1.8.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.8.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"40acf6c92ba93e74c9debbb3d1fc32e3abe2eed9","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.8.0.tgz","fileCount":30,"integrity":"sha512-Sfip2c+F9P4ElwGCZxte6OabV7fV5mnl0wBXz8SGX55IdJ3AO8bPMic3LCXCW+14tGG3UFkHXnJrB8Vu7oQjzg==","signatures":[{"sig":"MEUCICDltlIwekHqStlT3HmF/HQ1nxxbXSWkM+KJHUp0AhjWAiEAlFPoz22+MEkzEJwEXggWHgS4ia/SxM8hcOE7wvaLICk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":279979},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.8.0_1782942675610_0.2431593411346118","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.9.0":{"name":"agent-input-sanitizer","version":"1.9.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.9.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"73dd806053deddcf696f8686f1db5d774deed5d0","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.9.0.tgz","fileCount":30,"integrity":"sha512-/A/wklS4g8IIcr/8TxYwdlo27fER/lIcoamjvIfulBLFGyfGAiTlF0xxjVI/86PtBExPI0XdhNrw35kSUnrIqg==","signatures":[{"sig":"MEUCIQDOogbVRocp7k5YpGccQ8nfvI1DuNcud/yz2LG2hl5FjAIgQZuaWQEs4BXoMa35Iq1PoqIYoq3XaKqwNFdevec35TI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":280716},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.9.0_1782942722588_0.9030422731884828","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.10.0":{"name":"agent-input-sanitizer","version":"1.10.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.10.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"b333326557e927e5a91885c7596ca1691b6c0c49","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.10.0.tgz","fileCount":30,"integrity":"sha512-1hoMa4nEMU8SvibTxQkNc67vjzU9C9jDMSsWRHIIappKLGhm7A7mpxiuRGbueF6Fz4eZc0Vt24wWhzitOzVjvw==","signatures":[{"sig":"MEQCIEN1zf0V83lU99VU3yhHXiPpuq70hPLb0IPbHZHCc8GxAiBT9GQjny9gmYlVld3FJ6+cIKImvrKSA0wCS6Z2zvYG0Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":280717},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.10.0_1782943418514_0.2289978757252813","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.11.0":{"name":"agent-input-sanitizer","version":"1.11.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.11.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"f2088c2326fe3f681b8895d0e8442b910b89f672","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.11.0.tgz","fileCount":30,"integrity":"sha512-V6tJvPoGZgPaDAZp+5gDXWzgZtu5159V9kKrwPz7SyOdj6arQ9pc3qPDGtzUBdM5oOWkDM4HpWIJqRvg0DwKMA==","signatures":[{"sig":"MEUCIQDayIifWkj7wV3Oqz0U0IYrT7UdRCXdrnA1xCOJU28HtQIgTVsjdw1cvoBqsIGq4o//Rg6m362t3lU78zlPiOiHuEg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":280717},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.11.0_1782943463787_0.8474071393920861","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.12.0":{"name":"agent-input-sanitizer","version":"1.12.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.12.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"251118241028b9c6524aabc14457618fc4955c87","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.12.0.tgz","fileCount":30,"integrity":"sha512-dROuzWCHuhXu3LoyfcMBxBngKgdjqWC4Pm3gmHwL/owsYA5uy9oJ1c7CgiYQlOMvIgyfUWex/Z6fHCccGyiSug==","signatures":[{"sig":"MEQCIE7HWmE0uXImnzH0vOf/HKEBzSe1c0jWTNnqPzn37hpmAiBFK5Jb+Y6dKbHRjr9OMgx2vPUtYXteZB89N8HGcCnWHQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":280717},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.12.0_1782943640474_0.6042715087641999","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.13.0":{"name":"agent-input-sanitizer","version":"1.13.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.13.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"c695b6d4e10c6951f1b4d86dba241b22b5ba96bc","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.13.0.tgz","fileCount":30,"integrity":"sha512-MSKaAHFNLmDMdDtm9wAH0yXOVsqvORdDM2E/oJ1bVmCu3StAnHYtIJKXrjveqenCamuYd7Qm4gR5SN50hmqvwg==","signatures":[{"sig":"MEUCIA00tll2QgMc5dVzlyKY4BEOf9jeVtLANicksACyWXXaAiEA++6uIBdMSKAvxDVpTeMT0mzwCTya55AxdejF2sudUI4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":280717},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.13.0_1782944457338_0.26253041571792024","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.14.0":{"name":"agent-input-sanitizer","version":"1.14.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.14.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"4367bf400f1875c6cfd5309b24e072d864cb3a09","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.14.0.tgz","fileCount":30,"integrity":"sha512-TKm05XBMx6RibWCbp3KOcxWwYTdgOFgURmr4IwWi9uod3FB1p5CKdf1HpzRDC8BhQrQ2/cy/j9axGceiUKUC/w==","signatures":[{"sig":"MEYCIQDLz2AHNJiSxxAXO8PmP87QSGtvL2k9sHbruDalSriynwIhAJ4tmEtbqJLdFvUg6B9V07UT6Tp4hQMdTJRcrmqjto7/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":280717},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.14.0_1782944744824_0.4143954706247024","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.15.0":{"name":"agent-input-sanitizer","version":"1.15.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.15.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"6d3bd3690af3278da6bd9a05b295901c1bf3a8bf","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.15.0.tgz","fileCount":30,"integrity":"sha512-LjUKqRV6BHKs93EeuqoSw8aCGudP2+c7d4JgW9TzhcvVpySGKj6Qr4yuCMtP4mutN/U62B/zPpt//LFbTX3lAQ==","signatures":[{"sig":"MEYCIQCinNnSZuBFAaKjQw+ADUtOwWaFMbe5EQf4jYLYggNYhwIhALQOHEgz6Rx8DOmrXV+yyDdgEBTfME9rRyM1RvamlGgn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":280717},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.15.0_1782944784259_0.23100589492910095","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.16.0":{"name":"agent-input-sanitizer","version":"1.16.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.16.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"e14ddd33ab253ff75943491abfb55ade01d5bed2","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.16.0.tgz","fileCount":30,"integrity":"sha512-RfumfOg1DbKSFc6fOADQG5csKna8Xribb8C8ukJ2hsjwv9OUu6JtlL69UhT7l3G5QV7/vQt39mhCh3ujdSoEnw==","signatures":[{"sig":"MEYCIQCA5Jo36mIw3M7fMQMEV9ngSbbA9c46e2K0ErGGeOIUnwIhAPlkNoe05kLAS72gPY0oDLjNmThAiN4YkeH+frhablbW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":278509},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.16.0_1782944838693_0.70815999394089","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.17.0":{"name":"agent-input-sanitizer","version":"1.17.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.17.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"d0f22645be37cd95bf2c33bb48cc47ac164c03c0","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.17.0.tgz","fileCount":30,"integrity":"sha512-yyE5N+1rOgt2+wv7SuF5Yd6iTWLcc0JAqzDr6YyHECUICjlQc0ARzrVRc9QNn8tA59L9hlAPAsITNHvcbPWzEg==","signatures":[{"sig":"MEUCIA5Lkqzyd052zbAlp47uCR6FDI+530AO2xFKM8FGQZbTAiEAt5Dm+1WC4VsLe08dS8odCGfYOI0IVE/pVqFgrZ2tjFc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":278509},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.17.0_1782945605563_0.6684543304925594","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.18.0":{"name":"agent-input-sanitizer","version":"1.18.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.18.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"8e5b358c58929b92baaea76a15163e77baf307a6","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.18.0.tgz","fileCount":30,"integrity":"sha512-3xo78RACMG2296oYMmn76N6l5v5pD7dxpNsdrHraAHxfHaiHpfq/mSoB8s2sd1omRsLWPdx7vrE9pGHvTBRiUg==","signatures":[{"sig":"MEYCIQDMxK7Ni5fpZbjoSiXyl5oDDFwQwUzOqRaqfIEUl4sAWwIhAMJ2doIqJZsdIXKGd4vrZIu1V64ZPP+vTzLQKfOAAD1l","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":281291},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.18.0_1782948277267_0.9217619709803304","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.19.0":{"name":"agent-input-sanitizer","version":"1.19.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.19.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"8c5c778024353fd061f422f60ca096406142bead","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.19.0.tgz","fileCount":30,"integrity":"sha512-5K0OC729UCsfl271ZXRnmlbAH+PEVB050H8ocIuPp7fCC4uW8BSKuRtMxq3FuLPEVwootF0+Xo2zGeeCAB5/Hw==","signatures":[{"sig":"MEQCIByDm55uAnHeVS/jVo/XX6NWUP1oCxxqwcpnPaQba9nyAiASWV80xtjhxRUkYKtYJMfORLnFw7F5OIFXV61E22xs8Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":281291},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.19.0_1782970664448_0.49172600303428227","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.20.0":{"name":"agent-input-sanitizer","version":"1.20.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.20.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"ee73d53e48f0c420f9933b1d632593ff8e73e7c3","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.20.0.tgz","fileCount":30,"integrity":"sha512-s0sVnrgHTH/Z1+3I7jM3xhpvgSp0DY49Cwzbo0PB8yO207tcGmT/EVFnEQ9wg4Pza9wVUVnD1GgezQPOQ3I8jA==","signatures":[{"sig":"MEUCICXQU/VDLqZ3+JZHlqMhuxvClYuSeadNz8lwwjPu8kWRAiEAuRoQd6chIfzEqrvlLNMGYhqI9xlt67otS5F2PJ8B2tA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":283512},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.20.0_1783009371311_0.8747369549531512","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.21.0":{"name":"agent-input-sanitizer","version":"1.21.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.21.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"cd45c4a6c226588bceacc7e95689ebd01db0d358","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.21.0.tgz","fileCount":30,"integrity":"sha512-uk03R8PtSD3iBLf43m9vvOPR1OL+17cSBcu/ro6YhTVOzE50VR/nj2FX7EY+KsqvIXPrUEt7GLra01t+HFZ5Fg==","signatures":[{"sig":"MEYCIQDSVUjjkVHJGVOC3YVoF+z/QVBXJkLjFRuduTlyue5FxAIhAJKjGuBP6dXwaove7vn563aIZirChVzCGKQON/UzgK1A","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":283512},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.21.0_1783009421029_0.613674310525333","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.22.0":{"name":"agent-input-sanitizer","version":"1.22.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.22.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"048f31dd423edca6edb9c4d7052b5f8f1a0f6c4e","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.22.0.tgz","fileCount":30,"integrity":"sha512-44m4OJggqXXck3QZrPiGmql5mTs1e5uzsEo+mQ54/baiSwxLLJN6VEPT8BQrxPta3Vi6oz6Rtmvv7nMmDsOUxg==","signatures":[{"sig":"MEYCIQCKFR1bOdp+siTOAKpxRpUoSm8Z8De5rp8mglNsJvdvdAIhAMUkgbBqEEHDRyrP8tXWvvb8STizVdGd4lwLuN/mUqSt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":283512},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.22.0_1783009461590_0.7685055932767975","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.23.0":{"name":"agent-input-sanitizer","version":"1.23.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.23.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"a96f6063a6c9c84f4ca5721bbbb39d56b013ec69","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.23.0.tgz","fileCount":30,"integrity":"sha512-ImiYATLogUG+Ml8tA4K5DyjJgfGkxZnTVUar6nO7yLfAhMzwnnTBBwrSde77qwByKrSFKD1SG9OfcuSB5jqqVw==","signatures":[{"sig":"MEUCIBlRyIyE2o4reCp3fmfEkD1DgHaEDc/ljrV3dFXl5Z0dAiEAxZn8A0syQ/Tb97+E10D3NH7BazAAO0PJxn8WZeZEFOY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.23.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":288555},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.23.0_1783009506729_0.16848288379630416","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.24.0":{"name":"agent-input-sanitizer","version":"1.24.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.24.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"758dda038eefb45e575c452fedcb4f7a58655968","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.24.0.tgz","fileCount":30,"integrity":"sha512-Pv/62QUKFZmzzCoXmBMkBLPmC/ff6lj9YiPHUuk25B11j5a8nM0YTG70/p71q+XCMyRgX8iOI5ZYO0djZ2lPdg==","signatures":[{"sig":"MEYCIQD0bkXyNgZxevf+yKQuucj7TeL/1c260MDrHWICul8oGwIhAPE5kDLsyDE4YhAEdiTVJlxinAN4RpowEzJGZwfOl8Ku","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.24.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":289838},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.24.0_1783009546472_0.227641153682274","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.25.0":{"name":"agent-input-sanitizer","version":"1.25.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.25.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"aa63e03cf97706210dcba525dc3e568955766d99","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.25.0.tgz","fileCount":30,"integrity":"sha512-qjRJR+Ft27U4Yv8jHJ/DrFQsjRTWptaSSoouUlp22tq/uI0OexlFC0q7yiyEJ0r5kyWamR8pghGHANVLYrniLg==","signatures":[{"sig":"MEYCIQCQ6ffXFiPm7Dz/QWLWiqxjW3MbeOcHCpR1CTO4cw4qcwIhAOYgxE2wXZ0ix2wbNA8fCZcmKim7nwPlt8NG+rDLaOYR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.25.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":289838},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.25.0_1783009591720_0.8051403880223411","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.26.0":{"name":"agent-input-sanitizer","version":"1.26.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.26.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"9c84aa4760d71288712b6e353f9cb99b6c960c11","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.26.0.tgz","fileCount":30,"integrity":"sha512-MHCMCByghz/dpZzAtXAPQ9S4D4IIue0Adl9gtOpVKsmrqtLhwTADSqvbV8Q/k8FuP41RuZ9KlwYtQwPWlZWyrA==","signatures":[{"sig":"MEQCIFDWUqfdRtrac30PamN/vWia0tlgmsUiH/7Z3mr1YWfSAiB9LBKXLbrE3Bf/f0MA6/3U78mtcvoos3H9jzYV/wPAAQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.26.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":289838},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.26.0_1783009639306_0.31021394837312055","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.27.0":{"name":"agent-input-sanitizer","version":"1.27.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.27.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"ecb46c2af5f217f7ea20d74bef415f50cff53e08","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.27.0.tgz","fileCount":30,"integrity":"sha512-fHrVIOtf+tbzj9D4kSS9WAzWVNnr9jmJL2rF9F7OKEneai28Zt8iVb4Y3xdR71j7nX/foCdoRkjsEsIIedsdnw==","signatures":[{"sig":"MEQCIGnErTRSxoTnSVU/ooxb9ctRGweLuo513FTpCVXgYitTAiBm8IPy28uoRjhGRZBJI/Fswvik5VtEgjyS1nYvuIC74w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.27.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":289838},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.27.0_1783009686082_0.6383996704266999","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.28.0":{"name":"agent-input-sanitizer","version":"1.28.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.28.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"a7419c541bd40865a7338e90afeab604fe988d6d","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.28.0.tgz","fileCount":30,"integrity":"sha512-Rcm06qRO2oYG1x4ZjuzErlfd4GqyoSCqi5PjD2Q7WKvtvXm2+omgdDbSdVftazhhv6r3eTnAuZnNFi21IVe+Hw==","signatures":[{"sig":"MEUCIQDdrwzIkviWa+MT5i9OOXSPS0aIvAQmE4m9YYgF1fZZpQIgE2DoldnhZrmx5UEFK99pDWME4RJCAEyA+JbqjOUyhWQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.28.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":294819},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.28.0_1783009726730_0.05968963603363897","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.29.0":{"name":"agent-input-sanitizer","version":"1.29.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.29.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"2daa3232d97ce08a7cc4131d68b11140d5044c70","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.29.0.tgz","fileCount":30,"integrity":"sha512-3fXNkiwWEJiYrINz2zojRCPC7O2SXrjSZ8UnCaU3uUQug3ichpBMgLU6p9KYIokQ9AS4caql10VC2a/4zvPtNQ==","signatures":[{"sig":"MEQCIGqppb6MIBXX3AFuQyVyBJo4uanhQadBrqmp/hOXzOq7AiA25t7UAXK+SOFWi8HizDl4v4p2oLiKwhCKuKm32IOz7g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.29.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":300885},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.29.0_1783009773323_0.07463442830144196","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.30.0":{"name":"agent-input-sanitizer","version":"1.30.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.30.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"852b64cadc7bec5dc8f561bca16aa2ed7cace3a7","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.30.0.tgz","fileCount":30,"integrity":"sha512-3S/BAmn+/ERmFBV2B4F6TDrKauiI0XpAqjs1B2am6ZmGOXjE+OTg2OSDtsykIBDKIMzHNyDATPfjOhK6HxaIPg==","signatures":[{"sig":"MEUCIDX0nwoSkUkES+goMfhTWSXlnLyOXiVMykbDm72n897hAiEAyhDvOwppk6532CsrtsGam0RVdMPCHK+PPCSsWt3qV2o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.30.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":304944},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.30.0_1783009814208_0.694215319017546","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.31.0":{"name":"agent-input-sanitizer","version":"1.31.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.31.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"644c7ff6f6e80862b913f85ba5973108fcc34e92","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.31.0.tgz","fileCount":30,"integrity":"sha512-tfkyhcrYCNIlI1h6uAJsQXYML9rUHdjX4kosgSEr7NHI3fjy+7DzwQwsPk0GUW8MtW29jUtoYqd56BnfqTi+Zw==","signatures":[{"sig":"MEYCIQCqi0i+ZNrQI6Rxh3JBIIOW3AvFq7JGImlDuE9scdRAIAIhAOm7DttrLuSzQf9S7ZWzlQCAkhfPaLfsy/iZV+NFUTD0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.31.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":304944},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.31.0_1783014173029_0.34179781767097817","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.32.0":{"name":"agent-input-sanitizer","version":"1.32.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.32.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"7568ec0f4e68e18d3125b00c0c9f43b86d4fb5c3","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.32.0.tgz","fileCount":30,"integrity":"sha512-cBZQhuirJuf+Jcpoh6ACl69eXaWRJu6bz2UhZRMyqOANsNTMMqJXgHlvZ7rekaglc4MpZJRgoDKkLd+bhckhBw==","signatures":[{"sig":"MEUCIQD3l2Cf1nPOr+S/YlPh+yqO7G3IUT65eIU1UgTenI7CxgIgG7vQvFDNzrjWaEHjJ/w/k3muxj7D6WH4SLRT+ie4f6I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.32.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":304944},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.32.0_1783016686870_0.7822381237998903","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.33.0":{"name":"agent-input-sanitizer","version":"1.33.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.33.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"96903aa7489d7891a783174e7136c01c373473ff","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.33.0.tgz","fileCount":30,"integrity":"sha512-HJa16kF75UhkaEe6GmvY0/i44mT0sBLatopcXkcxxQXUDuWT7b28JPvfD1h9vqfB1YLAHr5pkalfOjk8utgxvQ==","signatures":[{"sig":"MEUCICY4xUpGGoKmqdT2I4q+tXz9MdCKWeOnCNLuXsg3dz3FAiEApFTjqiRltD2MerlpXHbcByquRfSIVJGRzX6wUst00oI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.33.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":304944},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"22.23.1","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.33.0_1783123400522_0.8505697137807346","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.34.0":{"name":"agent-input-sanitizer","version":"1.34.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.34.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"53a881378e44f2dfef40ce65f124ec1cae97d7de","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.34.0.tgz","fileCount":30,"integrity":"sha512-7DfWU+xTZ4Cq47foF85sfR8mgi1Ed0X20OamDCKbzQ6IrSc3CUlKIaupwh3BrFt1uYiNJlPJhkKu/gBYT4TCJA==","signatures":[{"sig":"MEUCIQDsFtsSdfBvvhnuo2DS9GS9Euh8YfyfhXFnKs8ptDKFswIgJk3QJDljNQjzJYI/zBkHKOfwYaCLqTjmb1uuxN5Uke0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.34.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":304944},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.34.0_1783185379490_0.9239441567872184","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.35.0":{"name":"agent-input-sanitizer","version":"1.35.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.35.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"f3a7c99b7a5ca71e2d81058826a216d0efca1b11","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.35.0.tgz","fileCount":30,"integrity":"sha512-tsEuIBDHM/M+ZowXQ2kC4udBNXYoQ8VaYBvSmwygEBM/Ma1GufZrb9FG5S9uoNHFC9n0+VH4fLrfDKcuBJW/OA==","signatures":[{"sig":"MEQCIH4EcH1GakTrdW1uMgWJK4Rc3xFL4e5piwql5R5T3F4LAiBcmfM3eRQuA335t5MiqeklTuUATVDTvkQ80wwluU3MrQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.35.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":304944},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.35.0_1783385335797_0.4489014557930202","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.36.0":{"name":"agent-input-sanitizer","version":"1.36.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.36.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"6a6da695de53dbeb98950182b951080f1681f695","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.36.0.tgz","fileCount":30,"integrity":"sha512-4fAac5m5AUAeu9UlmNOjE4IJIZtB+FlJFa+PX0y+/2cWKX/SzCwWuyo4rmCW8AqJAOBwXFYOGInB72HOAQkcTA==","signatures":[{"sig":"MEQCIDVLp0ueKxCjsh7e66AvImcoLlNJPi1d6K/7hfSzC+F1AiAV6uE1BcRZVBozSufuDVr57VDLuftpAhrUhFIeKUfgsA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.36.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":304944},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.36.0_1783397858516_0.05102073352338832","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.37.0":{"name":"agent-input-sanitizer","version":"1.37.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.37.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"73b8163e53194bfb955d1e866c241b335d5eb1be","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.37.0.tgz","fileCount":30,"integrity":"sha512-Gw6fxDAznLHownO6h3ij4Z6pNGXy67hBXaaNFEMnhjELNvWram5F385N0Lgit1aK2QgBbXqcnxKpPfMpgrEpWQ==","signatures":[{"sig":"MEUCIBRpi+q0c6BLdcNAO68o7xxlLNtzYWqJalqkl9OVnKj2AiEA0FUGr7NTTloxc7W3F2s5VNxVY+ZJnIsMpMGXIWEb7NU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.37.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":304944},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.37.0_1783399923772_0.11451069576831374","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"2.0.0":{"name":"agent-input-sanitizer","version":"2.0.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@2.0.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"2461c2872302308f3cae8b307c33a7a46da43c3f","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-2.0.0.tgz","fileCount":32,"integrity":"sha512-hyuofndjU/l5hOTkxf091HcyrQTgeIm51H9Jt/5I7FZU9zBqh2ty0V1LsOq1nxSK1tjyXl11eTLb88r42DVALA==","signatures":[{"sig":"MEUCIQDoH2u1PFF4iFZ/j/ikTz1oIn1YbWx7nwKNKzLR5dGFPAIgeGy8wyHcDX5DkpXmENAvQIFyWQAbAV7/ntXpv5pYark=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":394188},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"deprecated":"Renamed to agent-sanitizer; install that package instead.","repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_2.0.0_1783546451864_0.18512666136998956","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"agent-input-sanitizer","version":"3.0.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@3.0.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"6b1a65e797ece0938a6316418f0fb801e6448bbf","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-3.0.0.tgz","fileCount":32,"integrity":"sha512-s8aZbTYob/AKdlUShYr9maUwyYdsA3Vr2srb13Q9+S1dqgMlgrZc6YhjRKs3ZI4UyoTEX8e4Vu76s0HTAWjozQ==","signatures":[{"sig":"MEQCIHg7+lNkmXu6huRIzu7NIZ/Dkj6ansXPi6fpcl5Z+9GFAiAhS+9bE/vDsvTiGQx56+tvjJPGT5TJG+vLipHEvExq/Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@3.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":394188},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"deprecated":"Renamed to agent-sanitizer; install that package instead.","repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_3.0.0_1783554887250_0.4608670835021593","host":"s3://npm-registry-packages-npm-production"}},"6.0.0":{"name":"agent-input-sanitizer","version":"6.0.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@6.0.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"459d8f5f9df63048aa2217f1a627ea92b6190fc8","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-6.0.0.tgz","fileCount":32,"integrity":"sha512-I1BV3v4FswLiGEQq1c2LceWUgEv+t0a0jRadHuXj75TgniGM/ftE15e3wmnfrouVcMPTKf+oU+TkdUAJ42bFFA==","signatures":[{"sig":"MEYCIQD2ctvboJY1QFpFbLS7cezyNV9rH7jTeepoGpYMcmhEUAIhAN4+a0lnsapKJAuDif4MWuFXVp+rV0CHK7UJZ3+gVvoh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@6.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":400242},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"deprecated":"Renamed to agent-sanitizer; install that package instead.","repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_6.0.0_1783627002357_0.956340183365666","host":"s3://npm-registry-packages-npm-production"}},"1.38.0":{"name":"agent-input-sanitizer","version":"1.38.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.38.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"55046fc7df3fbaf0aac5d598be778003b4672496","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.38.0.tgz","fileCount":32,"integrity":"sha512-ZtJcjkU8g66X9bpYExKC/ETm5C/wNDbMdA6RqcZPM7sOJPHBgpdhY2k3coWTpF9Ky2fvSRkVxRlK1eYNmcDjeg==","signatures":[{"sig":"MEUCIG7GNNgHbyP43LyUCxSybNQPDIvUrXIIPr4w4gC8LWuyAiEA5eT/SjOjkK//nOrr3ni1JXmz8Ffv8odhV16VULGjkFo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.38.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":402422},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.38.0_1783900397480_0.8068696156229094","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.39.0":{"name":"agent-input-sanitizer","version":"1.39.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.39.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"e4a26e42259e289500623837894e4461a1e762c3","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.39.0.tgz","fileCount":32,"integrity":"sha512-Q0z6KDv9Nz2Xg917uXJCLdrb+WO3aKaNOG99zkWsg3efNowI0bUaIbB6vPDcRvyt4vV6QhVSiI3i46db1phTFg==","signatures":[{"sig":"MEUCIQCrJpSQBN4Hm/oXxb4I6ViwKtm5XNxSFM7cSnREp6SuqgIgcKN99j7DYb6vec78EsJuBUkNGPhzYyy8sbv3H1TG4zo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.39.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":402422},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.39.0_1783974820933_0.43958041507302714","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.40.0":{"name":"agent-input-sanitizer","version":"1.40.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.40.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"ad5163d69ef4d12ec207335aa90f28da00ed1a13","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.40.0.tgz","fileCount":32,"integrity":"sha512-SaYgXXfgNIxdCRx3WcLiRdqKNqePJ8F3ePxsWqH+ijy82DcDGaTS0doXKC1oTUeJg1fMM1sD/R85aOa2SZUBig==","signatures":[{"sig":"MEUCIBsO3fOLQFL+pnpPCfV4Ws2HS3GWXqIINDAhC++MjRcZAiEAjcCR6Jxp67GWnS0i0t3kKQ0aa7OaNokP4WaBFLPdFEM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.40.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":402422},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.40.0_1784424426054_0.7873517761510265","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.41.0":{"name":"agent-input-sanitizer","version":"1.41.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.41.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"9a56247dc8b0b1b16fbc66e21bbd2d2bf43c7b4e","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.41.0.tgz","fileCount":32,"integrity":"sha512-uPuN11TEmUqTVy3YOdELolH5EYbCB7pwd/Tc1wRcbpc9p90DZjo5m+Qcx8votikEpeQfktSjE0IW4Tz+qlyi2g==","signatures":[{"sig":"MEQCIB+VvCKV9lvX6xO2UZUCFf4sWrEJRN9qacKbpO8mc3Z3AiBgYF+sbAxtYyG05b7E8jd48NUGGYhjfrvbJCa8E6bwKw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.41.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":408242},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.41.0_1784424582035_0.30954463348623373","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.42.0":{"name":"agent-input-sanitizer","version":"1.42.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.42.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"3f0ce8e0e8910bb5c2519dfbda378d61bf416f23","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.42.0.tgz","fileCount":32,"integrity":"sha512-9GoCWems4z8yAKJww3rVPHc1QPr5Qq7SBnld6N/sbJPPGrSpCgfpvEHPoBAEJqN2UwexQhqHADFHsV3O+HsMJA==","signatures":[{"sig":"MEUCICO9M2rXL+37/WgYZTFHCLJr/fI5rAFPOK70Giv2QxoFAiEA9wmo/lwVWHesULWTtnr+seoiZHseHnQRgIPFsF6XI88=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.42.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":408242},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.42.0_1784425256133_0.10391960612331652","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.43.0":{"name":"agent-input-sanitizer","version":"1.43.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.43.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"bf9e9c576a69e6b84aa3fb0e323c2e842151d4f0","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.43.0.tgz","fileCount":34,"integrity":"sha512-xQz/D+fwCkXDLNeOOLouDTaD55BoHkFwLKcTzkAivMgMuKdDLUlv14D7WQtYWsRU4X3jVEFbMRGXx7NmxWGg7w==","signatures":[{"sig":"MEUCIBd99RXODbwrn9QETQkvvYiAKnAAelF15fbf7HpvONnkAiEA3VqGZU5Rv0Ou2qkOOQ/dXwet1fMnc3Tpaj0bgEecuvQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.43.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":419249},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.43.0_1784425411734_0.9084413398097531","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.44.0":{"name":"agent-input-sanitizer","version":"1.44.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.44.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"c3be92981558248d33d3f261e64678cf5313b354","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.44.0.tgz","fileCount":34,"integrity":"sha512-wMN4QLLclHNl6uKdcejcNZ8DAaf5+rQBf2jxrwI9XjwTWOQ9y4EBL1C62k8NIOAUecZpGCr2E/kTFvJ0SIDQRw==","signatures":[{"sig":"MEUCIH0AlTnJORvqWOVm81RVQgCnZoRq4c+Vu14Kb3k7z1hVAiEAlJlnQPk6Exzl/zrYjbYFWIdGjs4Wa1ERYftoE+aQW9M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.44.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":419249},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.44.0_1784495099619_0.7676590782234505","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.45.0":{"name":"agent-input-sanitizer","version":"1.45.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.45.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"d12c667974a28a7606e7a3ee4c580a904c1c4d3c","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.45.0.tgz","fileCount":34,"integrity":"sha512-UFkPLkb5I1GSkz2e4CQ1vBYdN16s9jJC5zIXgUTc1CLq26xSHJO0T8H3Ir9mTxn37Qf18MxY+BhGDqDJmj6XAA==","signatures":[{"sig":"MEUCIQC3H6UctSODVn0m6fssyM9svBEcGyvSTaBZQdZQxLG09gIga4W37GxtiyGOcMRRIY5o8vgiIHN3udTAYLpe7bwC4g8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.45.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":419249},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.45.0_1784496036143_0.6460665777602044","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.46.0":{"name":"agent-input-sanitizer","version":"1.46.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.46.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"f0cafcf16686df1b5db8e7c7e4ae33128edf54f7","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.46.0.tgz","fileCount":34,"integrity":"sha512-Nq05pf6wf4WcNME8x0/owMvPuHY0/y7MWAWB4XiGmOTPdPsFfRO1e9ceH5tcNYl/wWH3xDDyNk97V8sbO52OhA==","signatures":[{"sig":"MEUCIQDvEE86OTbiNNhg8DICQ+Gr5cWgbv2d+NTFrCqRCrjTXAIgH66PSSG5S2v7dJu9nNlfyf7EHEbFuoGXb4bZwYrxTMY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.46.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":419249},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.46.0_1784497047207_0.37865523271367607","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.0":{"name":"agent-input-sanitizer","version":"1.47.0","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.0","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"e5318fd8595addaccdf11aafd73df8bd8515afda","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.0.tgz","fileCount":34,"integrity":"sha512-aTQoM0UXLXOd366UPSLvWzrcsU9L/F23tC0VyBVB+qd2GYe+CC1rvlZQssYOnNA8EFObVuXWfh5QLrmMR1cjCg==","signatures":[{"sig":"MEQCICfHOT9CMD6VkaLvv2Pxm58aaFvCUr0qdxBnsvSW51cyAiBNeR8advZjPyGhSsnu5GWNR/6JwbBXUeHCh2b0H0scew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":419249},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.0_1784601813564_0.7793369828953294","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.1":{"name":"agent-input-sanitizer","version":"1.47.1","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.1","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"abdf3200a56760cfc3e4684ce574e2dbcb104980","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.1.tgz","fileCount":34,"integrity":"sha512-rarVN5rrGdvrIl72bRN+znJpsniY5rnBI6+PpMtTCZnJxp899FZaksHB2GBNmDdvQZ+7Z38gLK8EzLqat0mx7A==","signatures":[{"sig":"MEQCICy4LAuVz79dpMFSFJkbyvPxVyUz5IQnAEPF7oZxaOeRAiAdGVeYTl6PVZw3N5a4fNEoUMfgYyGVSROQVxWT4zX+aQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":418752},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.1_1784603807736_0.7430694786662706","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.2":{"name":"agent-input-sanitizer","version":"1.47.2","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.2","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"b419c9c29a33003ee45e376ceb79e8c84544d6d2","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.2.tgz","fileCount":34,"integrity":"sha512-Z34zwdh/SCs6GgU/HYFHCVSq/wXSn+kG/JthywWTVgP/ALhyp1iNccSKonDBittN8MPrRqOduOMnZPMfnhM6Gg==","signatures":[{"sig":"MEUCIQDZKIedhCWk/brRnSWZdi9h/YW9PtzEw2g9SEjPajiaxwIgZo0aey5rMC1ZJnzJRS9eLv+gkCFePUt4TGmoXBGiQJQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":418752},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.2_1784603927628_0.6010574904390782","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.3":{"name":"agent-input-sanitizer","version":"1.47.3","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.3","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"84e5893be9bffa4c22116aac53fe231c37eb3aa3","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.3.tgz","fileCount":34,"integrity":"sha512-qQsrYbHmdIPjc+BphOqwO/VGuZO9dpRjN4LqChwR3vHCPTsV8SEH9GSs3PiBdlBy+yBQ2bhKUd/yjMYgI9q7pQ==","signatures":[{"sig":"MEYCIQC2h8c8z+WMlndRvd27d/gmNDjsihgOW6r48MyCTgGceQIhAKMne7Irm02Q0icOD6i+1FLpUJKebLYQi2/EPWfDyzLR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":418752},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/*}":["shfmt -i 2 -w"],"*.{js,jsx,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.3_1784615766388_0.8656754618521803","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.4":{"name":"agent-input-sanitizer","version":"1.47.4","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.4","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"dc481d98c1b3d4e8c3ffd6a6756884afbeacf722","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.4.tgz","fileCount":34,"integrity":"sha512-urLEGvVuAA8c4kZB4fnv9DM02HX0rfKC98mFgIYkwhOW7eklnSFxdHgaZX/xPn+1nC5ldt0p7/bRvjkrP+xj0w==","signatures":[{"sig":"MEUCIQCgvppNfpqe/bgT5myhOwbgfB2d8xUf6juRp5veYBpkTgIgc3ezxrFzR8pL7eKquiPCB+nm1do+m2E1817dHleTuzk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":420638},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/!(*.*)}":["shfmt -i 2 -w"],"*.{js,jsx,mjs,cjs,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.4_1784617030229_0.8503176351671189","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.5":{"name":"agent-input-sanitizer","version":"1.47.5","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.5","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"834c10d8219026552496e8837d99e0aebe75b7e3","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.5.tgz","fileCount":34,"integrity":"sha512-gREAc1MNtO6TAiRIZhXhUzqAM7t/i7l9y5g/PrqqoD/72My2nrYuiQJcWF8opD68cMHKzGoOfr5nImYdlHmjYQ==","signatures":[{"sig":"MEQCIFKJJbooEasaK5r/8S2SnnH/Gmk7lVsczzG8qKwyxpzWAiBAqVHeSzSSu5ra9kqsjwNZ4Y/k7nGMjhCdkU3O1sB+gg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":427108},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/!(*.*)}":["shfmt -i 2 -w"],"*.{js,jsx,mjs,cjs,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.5_1784619467150_0.03204731162494512","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.6":{"name":"agent-input-sanitizer","version":"1.47.6","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.6","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"f56060ea15f847aafbda026125adcd293b185699","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.6.tgz","fileCount":34,"integrity":"sha512-vryo4ubjW5uu+vJ96lv+wxi38xSDmGjuQfPXYLRWlpj7F4jYMGyhV2ptmp3MvBnyfrqKNQiPX2wAqRWjt+GW2A==","signatures":[{"sig":"MEYCIQDHpxApuLft1Acqz3VoPmMiKcAT4mFl6A+2gr/Hp2yeEgIhAIMr00DVfxqqjsPSRDA/Hr12b+zG4rw7u4M7MtHH5B0u","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":427267},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/!(*.*)}":["shfmt -i 2 -w"],"*.{js,jsx,mjs,cjs,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","css-tree":"^3.2.1","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.6_1784642911341_0.14539688251551253","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.7":{"name":"agent-input-sanitizer","version":"1.47.7","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.7","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"778f16453b2bd0cb37d949e6beb253f9b585064f","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.7.tgz","fileCount":34,"integrity":"sha512-L7XjwQ7VdrMQNkfWHB+FOFIsvWAr5DtBpqRn/w8yjglpUMh25LitFYFXp4L5rvAwarnh2HFWwkdjeOMxFJ4wRw==","signatures":[{"sig":"MEQCIEbjEltotyq7WokZyezNq1pcnFEGJLJ47pygAPlang6TAiBHAY6BdZZm837cOL+1+YLJx7A1qOHY6eiZ6W/QWnsCUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":427267},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/!(*.*)}":["shfmt -i 2 -w"],"*.{js,jsx,mjs,cjs,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","css-tree":"^3.2.1","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.7_1784648851569_0.8116859145028528","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.8":{"name":"agent-input-sanitizer","version":"1.47.8","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.8","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"38084030b7f64776529b816aff7bca8de4fbe7ba","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.8.tgz","fileCount":34,"integrity":"sha512-y7TfQnupnW/ulRY7pEmzB9fkP+BFS1NZPxJg1B2souKWC8XceTQuBWVZMIiH674cGFMbschtJX/7XsBca56X+A==","signatures":[{"sig":"MEUCICXXzM20NVJNXITT/xaTYhLcvg9cLNnO0dYQo4rUj/J6AiEA8ZzNZ2iGk2ij8B5qqprxRljA77ri/vEkTHL5imBU5ts=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":427267},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/!(*.*)}":["shfmt -i 2 -w"],"*.{js,jsx,mjs,cjs,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","css-tree":"^3.2.1","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.8_1784651388823_0.5951816809986847","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.9":{"name":"agent-input-sanitizer","version":"1.47.9","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.9","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"60ceb6362a6352dfdee3c38cc5c3e921ba8ce4aa","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.9.tgz","fileCount":34,"integrity":"sha512-xLltx6C1/vi9r/5FwQp8kEmc+JC8+pZrjhjuoUEgOzDnirRbb1S65m5kBDXrwBZIj4eO/E7KmLJ4aBr8B0p1lA==","signatures":[{"sig":"MEQCIDXVQPB8SRhS20ldm+kMDzsrewOS0FBC6IwSI3qO3FG+AiBp7BMSxDDi0A9YYzsS0qelA+wsuEP0HwVZys6dcjQW7Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":427267},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/!(*.*)}":["shfmt -i 2 -w"],"*.{js,jsx,mjs,cjs,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","css-tree":"^3.2.1","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.9_1784651568818_0.5673640129038089","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.10":{"name":"agent-input-sanitizer","version":"1.47.10","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.10","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"6a764cacc1225c38154d9d7767647d5818563dd9","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.10.tgz","fileCount":34,"integrity":"sha512-2D8uug9edFTwCIuSrHsnJRmaxsuRlnmYa7XbYYEbAUAGjhEg+lCdWbAy+MpkCFhGvwFKnxPm8AC4F56kiWnNTA==","signatures":[{"sig":"MEUCIQCLQvsrZpNfB9KE/HYtfUvApRO16xBx8vknP35IuQlHHAIgGMOgMMZHxrlFWHRgG5DxMkWumAzd8DB187l2KdZ90DY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":433158},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/!(*.*)}":["shfmt -i 2 -w"],"*.{js,jsx,mjs,cjs,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","css-tree":"^3.2.1","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.10_1784764438503_0.09252902786843831","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.11":{"name":"agent-input-sanitizer","version":"1.47.11","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.11","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"3bec6cf7ee2342af8ed92f05aa6d14b3d7bccfb1","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.11.tgz","fileCount":34,"integrity":"sha512-7AxnyL6otAGxZuhVPLG37hSVwEPjIJpl9b0d3hGGj0OxdsLh6fH2h8Qehz/EBq0/b1H/clzpl7TfAlzqkJuMJg==","signatures":[{"sig":"MEUCID6hJxk2MeJ0LOemeLf+zeRfwDk52NYFnv6BONBW87nTAiEAhL1FUQCKARt7CseEtG3x22z5+9tsSFq3feohv/FG5OM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":433158},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/!(*.*)}":["shfmt -i 2 -w"],"*.{js,jsx,mjs,cjs,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","css-tree":"^3.2.1","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.11_1784788817628_0.09696052667081223","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.12":{"name":"agent-input-sanitizer","version":"1.47.12","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.12","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"5f98984051fd26106be274978589873f62775246","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.12.tgz","fileCount":34,"integrity":"sha512-6fppKsRwMxqmO/ZEBw+Q/u2BACeiy95+8hOEu+REcNKffCAWzsgqtUfi/q3YSO+H1UENHWwoScjULeqN+8l1zA==","signatures":[{"sig":"MEUCIBC5KEQHhr7NUXDhL7PfeSpHakL2MkSQ8lglY2TKQhFhAiEAp3LvvaokqKpy4WYDpVygsfYCIbrw256Xei0tnsklk0Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":433158},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/!(*.*)}":["shfmt -i 2 -w"],"*.{js,jsx,mjs,cjs,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","css-tree":"^3.2.1","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.12_1784789315486_0.2643832349462796","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.13":{"name":"agent-input-sanitizer","version":"1.47.13","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.13","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"319a325daf07a8d5b2a04fe62180f44e020afa84","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.13.tgz","fileCount":34,"integrity":"sha512-T3N+oDzCuQv8ptXTs4O7HJnbdt3LJVYZgKXRTjGza0qSMcIHVCo0a26JBkzR4NeV614zWgwdjW12y8jDlKy+qA==","signatures":[{"sig":"MEUCIQCqw+S5qw/yoY2bFLptGXAggcp+IsWWuSCIj11rD9hz+gIgd+aQa3JzsqHnX7JjKbUQau/MjjTNEObfm/76lGkQLEg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":433158},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/!(*.*)}":["shfmt -i 2 -w"],"*.{js,jsx,mjs,cjs,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","css-tree":"^3.2.1","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.13_1784824598345_0.7063179635245818","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."},"1.47.14":{"name":"agent-input-sanitizer","version":"1.47.14","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"author":"Alexander Turner","license":"Apache-2.0","_id":"agent-input-sanitizer@1.47.14","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"bin":{"sanitize-cli":"bin/sanitize-cli.mjs"},"dist":{"shasum":"7457f90e39a52ca78b99509b2d2b2c4fcc50ab94","tarball":"https://registry.npmjs.org/agent-input-sanitizer/-/agent-input-sanitizer-1.47.14.tgz","fileCount":34,"integrity":"sha512-7RUNMtN50uFCnB9F+txx182f4ieZMT93mj8WIjseGV++WoCbdbgypR+PNffq9xGfkIzGYs/s3zpQo+gcb7C8ZA==","signatures":[{"sig":"MEUCIF1nfsunnjzCTfR0cZmyUjpiJHv63xmGn5Gp2QAlZgJ/AiEA+O1Ak/LVRwZBD2Nso3OXrKVqIAEurtDkN1/IeuhM0fo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/agent-input-sanitizer@1.47.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":433158},"type":"module","engines":{"node":">=22"},"exports":{".":{"types":"./types/index.d.mts","default":"./src/index.mjs"},"./html":{"types":"./types/html.d.mts","default":"./src/html.mjs"},"./output":{"types":"./types/output.d.mts","default":"./src/output.mjs"},"./prompt":{"types":"./types/prompt.d.mts","default":"./src/prompt.mjs"},"./view-map":{"types":"./types/view-map.d.mts","default":"./src/view-map.mjs"},"./invisible":{"types":"./types/invisible.d.mts","default":"./src/invisible.mjs"},"./rehydrate":{"types":"./types/rehydrate.d.mts","default":"./src/rehydrate.mjs"},"./confusables":{"types":"./types/confusables.d.mts","default":"./src/confusables.mjs"},"./instructions":{"types":"./types/instructions.d.mts","default":"./src/instructions.mjs"}},"scripts":{"lint":"eslint .","test":"c8 node --test","check":"tsc --noEmit","format":"prettier --write .","coverage":"c8 node --test","typecheck":"tsc --noEmit","build:types":"tsc -p tsconfig.build.json","format:check":"prettier --check .","test:mutation":"stryker run","gen:joining-type":"node scripts/gen-joining-type.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:de4ce7d5-1167-46f6-9087-534c0544e366"}},"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","directories":{},"lint-staged":{"*.md":["prettier --write"],"*.py":["ruff check --fix","ruff format"],"*.json":["prettier --write"],"*.{css,scss}":["prettier --write"],"*.{yaml,yml}":["prettier --write"],"*.json.example":["prettier --write --parser json"],"{*.sh,.hooks/!(*.*)}":["shfmt -i 2 -w"],"*.{js,jsx,mjs,cjs,ts,tsx}":["prettier --write"],".claude/skills/*/SKILL.md":[".hooks/lint-skills.sh"]},"_nodeVersion":"24.18.0","dependencies":{"unified":"11.0.5","css-tree":"^3.2.1","remark-gfm":"4.0.1","rehype-parse":"9.0.1","remark-parse":"11.0.0","style-to-object":"1.0.14","unist-util-visit":"5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"11.0.0","eslint":"10.4.0","esbuild":"0.28.1","globals":"17.6.0","prettier":"^3.0.0","@eslint/js":"10.0.1","fast-check":"4.8.0","typescript":"6.0.3","@types/node":"25.9.1","lint-staged":"^17.0.5","@commitlint/cli":"^21.0.1","typescript-eslint":"8.61.0","@stryker-mutator/core":"^9.6.1","@stryker-mutator/tap-runner":"^9.6.1","@commitlint/config-conventional":"^21.0.1"},"_npmOperationalInternal":{"tmp":"tmp/agent-input-sanitizer_1.47.14_1784838686063_0.17113936865875257","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to agent-sanitizer; install that package instead."}},"time":{"created":"2026-06-22T04:59:05.866Z","modified":"2026-07-28T04:56:55.841Z","1.0.0":"2026-06-22T04:59:06.060Z","1.0.1":"2026-06-22T21:54:07.451Z","1.0.2":"2026-06-23T02:59:26.483Z","1.0.3":"2026-06-23T03:18:21.367Z","1.0.4":"2026-06-23T04:49:52.469Z","1.1.0":"2026-06-23T18:47:11.912Z","1.1.1":"2026-06-23T20:02:11.619Z","1.2.0":"2026-06-23T20:46:33.932Z","1.2.1":"2026-06-28T20:47:27.829Z","1.2.2":"2026-06-28T21:22:29.992Z","1.2.3":"2026-06-28T21:24:03.245Z","1.2.4":"2026-06-28T21:29:16.558Z","1.2.5":"2026-06-28T21:53:16.262Z","1.2.6":"2026-06-28T22:17:34.440Z","1.2.7":"2026-06-28T23:19:50.431Z","1.2.8":"2026-06-28T23:20:33.821Z","1.2.9":"2026-06-29T00:04:50.514Z","1.2.10":"2026-06-29T00:05:51.062Z","1.2.11":"2026-06-29T00:06:17.217Z","1.2.12":"2026-06-29T00:06:53.203Z","1.2.13":"2026-06-29T00:07:33.091Z","1.2.14":"2026-06-29T00:08:57.674Z","1.2.15":"2026-06-29T00:11:23.703Z","1.2.16":"2026-06-29T00:19:36.121Z","1.3.0":"2026-06-29T00:21:54.102Z","1.3.1":"2026-06-29T00:24:04.671Z","1.3.2":"2026-06-29T00:51:48.145Z","1.3.3":"2026-06-29T00:52:35.018Z","1.3.4":"2026-06-29T02:11:18.563Z","1.3.5":"2026-06-29T06:44:14.269Z","1.4.0":"2026-06-29T14:28:26.072Z","1.4.1":"2026-06-29T19:20:17.285Z","1.4.2":"2026-06-29T22:42:04.177Z","1.4.3":"2026-06-30T03:44:25.234Z","1.4.4":"2026-06-30T04:24:12.888Z","1.4.5":"2026-06-30T04:50:02.147Z","1.4.6":"2026-06-30T05:08:08.384Z","1.4.7":"2026-06-30T05:18:39.748Z","1.4.8":"2026-06-30T05:29:49.885Z","1.4.9":"2026-06-30T05:35:03.021Z","1.4.10":"2026-06-30T06:31:05.391Z","1.5.0":"2026-06-30T17:19:08.557Z","1.6.0":"2026-06-30T18:01:48.230Z","1.6.1":"2026-07-01T03:52:49.169Z","1.6.2":"2026-07-01T04:15:33.268Z","1.6.3":"2026-07-01T04:17:10.108Z","1.6.4":"2026-07-01T04:52:56.192Z","1.7.0":"2026-07-01T19:04:59.576Z","1.8.0":"2026-07-01T21:51:15.762Z","1.9.0":"2026-07-01T21:52:02.759Z","1.10.0":"2026-07-01T22:03:38.660Z","1.11.0":"2026-07-01T22:04:23.974Z","1.12.0":"2026-07-01T22:07:20.656Z","1.13.0":"2026-07-01T22:20:57.482Z","1.14.0":"2026-07-01T22:25:44.965Z","1.15.0":"2026-07-01T22:26:24.399Z","1.16.0":"2026-07-01T22:27:18.833Z","1.17.0":"2026-07-01T22:40:05.718Z","1.18.0":"2026-07-01T23:24:37.450Z","1.19.0":"2026-07-02T05:37:44.584Z","1.20.0":"2026-07-02T16:22:51.453Z","1.21.0":"2026-07-02T16:23:41.188Z","1.22.0":"2026-07-02T16:24:21.782Z","1.23.0":"2026-07-02T16:25:06.903Z","1.24.0":"2026-07-02T16:25:46.621Z","1.25.0":"2026-07-02T16:26:31.952Z","1.26.0":"2026-07-02T16:27:19.611Z","1.27.0":"2026-07-02T16:28:06.284Z","1.28.0":"2026-07-02T16:28:47.104Z","1.29.0":"2026-07-02T16:29:33.541Z","1.30.0":"2026-07-02T16:30:14.406Z","1.31.0":"2026-07-02T17:42:53.165Z","1.32.0":"2026-07-02T18:24:47.054Z","1.33.0":"2026-07-04T00:03:20.678Z","1.34.0":"2026-07-04T17:16:19.632Z","1.35.0":"2026-07-07T00:48:55.937Z","1.36.0":"2026-07-07T04:17:38.665Z","1.37.0":"2026-07-07T04:52:03.910Z","2.0.0":"2026-07-08T21:34:11.994Z","3.0.0":"2026-07-08T23:54:47.381Z","4.0.0":"2026-07-09T02:18:07.112Z","5.0.0":"2026-07-09T02:27:41.734Z","6.0.0":"2026-07-09T19:56:42.523Z","1.38.0":"2026-07-12T23:53:17.616Z","1.39.0":"2026-07-13T20:33:41.082Z","1.40.0":"2026-07-19T01:27:06.225Z","1.41.0":"2026-07-19T01:29:42.175Z","1.42.0":"2026-07-19T01:40:56.261Z","1.43.0":"2026-07-19T01:43:31.893Z","1.44.0":"2026-07-19T21:04:59.852Z","1.45.0":"2026-07-19T21:20:36.295Z","1.46.0":"2026-07-19T21:37:27.387Z","1.47.0":"2026-07-21T02:43:33.714Z","1.47.1":"2026-07-21T03:16:47.885Z","1.47.2":"2026-07-21T03:18:47.867Z","1.47.3":"2026-07-21T06:36:06.622Z","1.47.4":"2026-07-21T06:57:10.376Z","1.47.5":"2026-07-21T07:37:47.295Z","1.47.6":"2026-07-21T14:08:31.534Z","1.47.7":"2026-07-21T15:47:31.728Z","1.47.8":"2026-07-21T16:29:49.042Z","1.47.9":"2026-07-21T16:32:49.027Z","1.47.10":"2026-07-22T23:53:58.730Z","1.47.11":"2026-07-23T06:40:17.792Z","1.47.12":"2026-07-23T06:48:35.629Z","1.47.13":"2026-07-23T16:36:38.527Z","1.47.14":"2026-07-23T20:31:26.235Z"},"bugs":{"url":"https://github.com/AlexanderMattTurner/agent-input-sanitizer/issues"},"author":"Alexander Turner","license":"Apache-2.0","homepage":"https://github.com/AlexanderMattTurner/agent-input-sanitizer#readme","keywords":["llm","prompt-injection","sanitize","unicode","invisible-characters","ansi","exfiltration","rag","agent","security","homoglyph","confusables","redaction","tool-output","edit-repair"],"repository":{"url":"git+https://github.com/AlexanderMattTurner/agent-input-sanitizer.git","type":"git"},"description":"Defend an agent against hidden-content injection: strip payload-capable invisible Unicode and ANSI, splice out human-invisible HTML, and flag data-exfil URLs in untrusted text before any model sees it.","maintainers":[{"name":"turntrout","email":"alex@turntrout.com"}],"readme":"","readmeFilename":""}