{"_id":"@goodfoot/claude-code-hooks","_rev":"42-c138d374aba8412e6db22d3231a3aab0","name":"@goodfoot/claude-code-hooks","dist-tags":{"latest":"1.9.3"},"versions":{"1.0.1":{"name":"@goodfoot/claude-code-hooks","version":"1.0.1","_id":"@goodfoot/claude-code-hooks@1.0.1","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"5d1c2d971c41007d22b796478f081e3068d9c833","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.1.tgz","fileCount":27,"integrity":"sha512-MaHbe3h7LQuPwK+bngJjFPq1PHzjqpYqrV71SURUP5j8HCwOyblBQDd+p9QvRS1YrNvJcqHd4bQPVY11xO/P1w==","signatures":[{"sig":"MEUCIFmPUW9rsDNlBiNmracufpB3KFbZ9OHgIoAdCsA6TN4YAiEA3Gv/08iFszH0s+xUiouvCz5zSgs2Vr89OUUwaux/2+Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249306},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./src/index.ts","import":"./src/index.ts"},"./*":{"types":"./src/*.ts","import":"./src/*.ts"}},"gitHead":"13595fdcd40a51f1426dfd8f8333893be8d82e2b","scripts":{"lint":"bash -c 'if [ $# -eq 0 ]; then yarn typecheck && yarn eslint && yarn prettier; else yarn typecheck && yarn eslint:files \"$@\" && yarn prettier:files \"$@\"; fi' --","test":"vitest run","build":"tsc --build tsconfig.build.json","eslint":"eslint --cache --fix ./src ./tests ./e2e","release":"bash ../../scripts/release-package.sh claude-code-hooks","prettier":"prettier . --write --log-level warn","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","eslint:files":"eslint --cache --fix","prettier:files":"prettier --write --log-level warn","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run"},"_npmUser":{"name":"johnwehr","email":"johnwehr@goodfoot.io"},"_npmVersion":"10.8.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"20.19.6","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^9.36.0","vitest":"4.0.13","prettier":"^3.6.2","@types/node":"^24","eslint-plugin-jsdoc":"^50.0.0","@anthropic-ai/claude-agent-sdk":"^0.1.76"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.1_1767564359988_0.9959285337205945","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.2":{"name":"@goodfoot/claude-code-hooks","version":"1.0.2","_id":"@goodfoot/claude-code-hooks@1.0.2","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"98199e180b434f3d8a23c71d74d6f00bdadce71b","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.2.tgz","fileCount":27,"integrity":"sha512-SrwYpI5BQEaZ9L3fomqaTQ/mXsSm8aSDJOeYNqwXwnjZafoQ+e5bqKKw8BXKSdGOOq0jx0kL4ZjOR6qH7Uxqnw==","signatures":[{"sig":"MEUCIQDwnlp9FtKnszQJXv84TaTTCgLVRInEcdSr42r75iGN7wIgTO0Kw1jfB/FmzjJ6/tBnuS5/dAK+ugW8whu+jGjtG+s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249102},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"a7cb20cd1ff077075f3d93d0afb5a1c9b4a87d68","scripts":{"lint":"bash -c 'if [ $# -eq 0 ]; then yarn typecheck && yarn eslint && yarn prettier; else yarn typecheck && yarn eslint:files \"$@\" && yarn prettier:files \"$@\"; fi' --","test":"vitest run","build":"tsc --build tsconfig.build.json","eslint":"eslint --cache --fix ./src ./tests ./e2e","release":"bash ../../scripts/release-package.sh claude-code-hooks","prettier":"prettier . --write --log-level warn","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","eslint:files":"eslint --cache --fix","prettier:files":"prettier --write --log-level warn","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run"},"_npmUser":{"name":"johnwehr","email":"johnwehr@goodfoot.io"},"_npmVersion":"10.8.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"20.19.6","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^9.36.0","vitest":"4.0.13","prettier":"^3.6.2","@types/node":"^24","eslint-plugin-jsdoc":"^50.0.0","@anthropic-ai/claude-agent-sdk":"^0.1.76"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.2_1767565443050_0.5751379012835272","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.3":{"name":"@goodfoot/claude-code-hooks","version":"1.0.3","_id":"@goodfoot/claude-code-hooks@1.0.3","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"83846413e7c02138975f2cbf660112804012ef9c","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.3.tgz","fileCount":27,"integrity":"sha512-tnfrSuOqesIUYyaCfjdptMZubYlLd2/Ct+7J5t/1jg7YbpiBh1aWy67aMDaYlrKfjhw//tiIWcV5lpoL93JeFg==","signatures":[{"sig":"MEQCIDJ2UkHKfC47MTVVAKKk75zhX7ENEXN7NQu0UftZiff3AiAsQS8+R+g4k+oJp/wH4S3a8YRRcKzvF8UBkjIZsQB2yQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249056},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"cbb0bb713404641a6f1a10c88315b1700dc17931","scripts":{"lint":"bash -c 'if [ $# -eq 0 ]; then yarn typecheck && yarn eslint && yarn prettier; else yarn typecheck && yarn eslint:files \"$@\" && yarn prettier:files \"$@\"; fi' --","test":"vitest run","build":"tsc --build tsconfig.build.json","eslint":"eslint --cache --fix ./src ./tests ./e2e","release":"bash ../../scripts/release-package.sh claude-code-hooks","prettier":"prettier . --write --log-level warn","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","eslint:files":"eslint --cache --fix","prettier:files":"prettier --write --log-level warn","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run"},"_npmUser":{"name":"johnwehr","email":"johnwehr@goodfoot.io"},"_npmVersion":"10.8.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"20.19.6","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^9.36.0","vitest":"4.0.13","prettier":"^3.6.2","@types/node":"^24","eslint-plugin-jsdoc":"^50.0.0","@anthropic-ai/claude-agent-sdk":"^0.1.76"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.3_1767566941565_0.6029370985495401","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.4":{"name":"@goodfoot/claude-code-hooks","version":"1.0.4","_id":"@goodfoot/claude-code-hooks@1.0.4","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"92cf03c839a0c655dabd690132bd6e81c2c09ed8","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.4.tgz","fileCount":27,"integrity":"sha512-1IUEedr8U1gvg5CA7JzPI4kdBKN4BllF6ARgTIcXpu/Rbbhu64MHdx5ZJBXrzVwOzPdpr3VZcIqLVVZ3jShgJg==","signatures":[{"sig":"MEYCIQC/FMnN/9/GtuDLYJFB3rpCefiI7EeCRi3LFu0umOE4pQIhAJwMLqx4UgQzXpYHkA6PXS35hMwB10AViZ0lZHpw+9ta","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249172},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"c69ec6fcb861c1206e9a1058b9d08e2f7dce2433","scripts":{"lint":"bash -c 'if [ $# -eq 0 ]; then yarn typecheck && yarn eslint && yarn prettier; else yarn typecheck && yarn eslint:files \"$@\" && yarn prettier:files \"$@\"; fi' --","test":"vitest run","build":"tsc --build tsconfig.build.json","eslint":"eslint --cache --fix ./src ./tests ./e2e","release":"bash ../../scripts/release-package.sh claude-code-hooks","prettier":"prettier . --write --log-level warn","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","eslint:files":"eslint --cache --fix","prettier:files":"prettier --write --log-level warn","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run"},"_npmUser":{"name":"johnwehr","email":"johnwehr@goodfoot.io"},"_npmVersion":"10.8.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"20.19.6","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^9.36.0","vitest":"4.0.13","prettier":"^3.6.2","@types/node":"^24","eslint-plugin-jsdoc":"^50.0.0","@anthropic-ai/claude-agent-sdk":"^0.1.76"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.4_1767585305241_0.46573190256376895","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.6":{"name":"@goodfoot/claude-code-hooks","version":"1.0.6","_id":"@goodfoot/claude-code-hooks@1.0.6","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"05f691ad8e3fee345e49e34278309e1bd10448a6","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.6.tgz","fileCount":27,"integrity":"sha512-NSiNXiM3OUtn05IgfB7q4BkDjAx7ScgDTyJ2X/tR+euvttoIzn9IDdW1/EERgnLhsr+frvkBotrTQ9XJxUj+/Q==","signatures":[{"sig":"MEYCIQCoLOvrYek71vceXPqppFq9jDCCxU2V6YS6o4s59u8FiAIhAMdNE/XGAfv4jTRr27uMpVqapPBnJ96LMHXQDft25NIA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249366},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"723e2b5d76dcf5bbab666e5d971d76b3bc9d2ca8","scripts":{"lint":"bash -c 'if [ $# -eq 0 ]; then yarn typecheck && yarn eslint && yarn prettier; else yarn typecheck && yarn eslint:files \"$@\" && yarn prettier:files \"$@\"; fi' --","test":"vitest run","build":"tsc --build tsconfig.build.json","eslint":"eslint --cache --fix ./src ./tests ./e2e","release":"bash ../../scripts/release-package.sh claude-code-hooks","prettier":"prettier . --write --log-level warn","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","eslint:files":"eslint --cache --fix","prettier:files":"prettier --write --log-level warn","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run"},"_npmUser":{"name":"johnwehr","email":"johnwehr@goodfoot.io"},"_npmVersion":"10.8.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"20.19.6","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^9.36.0","vitest":"4.0.13","prettier":"^3.6.2","@types/node":"^24","eslint-plugin-jsdoc":"^50.0.0","@anthropic-ai/claude-agent-sdk":"^0.1.76"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.6_1767590335857_0.19884407460193043","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.7":{"name":"@goodfoot/claude-code-hooks","version":"1.0.7","_id":"@goodfoot/claude-code-hooks@1.0.7","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"cc72d77ff69061be94ede41a46b6254e4352f2e9","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.7.tgz","fileCount":27,"integrity":"sha512-8HeX6zsm2RPKnlMqICZBi7syLxGEhX+7HP5v0deX5ioqhxuKLrsKbHlJh93Kti8tGu9mK/xqk1cHQQ0ToG/BdA==","signatures":[{"sig":"MEYCIQC2JwB6UUi21c+Q/my8hQ4bpiJvbxWfeDVe8gkcfh67UgIhAKUHo7EeHq9NM3ymKDPHldd8JH0cek4zchf4c11w0tmc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249997},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"0945d621ccd86239434b57366a846ae0e6ddfb30","scripts":{"lint":"bash -c 'if [ $# -eq 0 ]; then yarn typecheck && yarn eslint && yarn prettier; else yarn typecheck && yarn eslint:files \"$@\" && yarn prettier:files \"$@\"; fi' --","test":"vitest run","build":"tsc --build tsconfig.build.json","eslint":"eslint --cache --fix ./src ./tests ./e2e","release":"bash ../../scripts/release-package.sh claude-code-hooks","prettier":"prettier . --write --log-level warn","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","eslint:files":"eslint --cache --fix","prettier:files":"prettier --write --log-level warn","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run"},"_npmUser":{"name":"johnwehr","email":"johnwehr@goodfoot.io"},"_npmVersion":"10.8.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"20.19.6","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^9.36.0","vitest":"4.0.13","prettier":"^3.6.2","@types/node":"^24","eslint-plugin-jsdoc":"^50.0.0","@anthropic-ai/claude-agent-sdk":"^0.1.76"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.7_1767590955945_0.683812638474691","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.8":{"name":"@goodfoot/claude-code-hooks","version":"1.0.8","_id":"@goodfoot/claude-code-hooks@1.0.8","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"d9d9da493460fa216685af918ee6b07370081ee8","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.8.tgz","fileCount":27,"integrity":"sha512-vC3AX7P4ALj1l2nv2BfSbkn97S7Hkuu3AJLkoszYcEc6ZSeIASL01/tRq26/TRi/cyaUwkbkVc9iGGTcHxuUWg==","signatures":[{"sig":"MEUCIQCoK+xKH3JIQ0d09WDGherieC9tPGjH2gMmD+/q8TR4rgIgf6ZytHayng7yPKJFWWxDVyE3Cykc5eXTd+w9pkKvhvQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":250247},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"3e831c90da7f15e58ddb9c420d1b650a00fa376e","scripts":{"lint":"bash -c 'if [ $# -eq 0 ]; then yarn typecheck && yarn eslint && yarn prettier; else yarn typecheck && yarn eslint:files \"$@\" && yarn prettier:files \"$@\"; fi' --","test":"vitest run","build":"tsc --build tsconfig.build.json","eslint":"eslint --cache --fix ./src ./tests ./e2e","release":"bash ../../scripts/release-package.sh claude-code-hooks","prettier":"prettier . --write --log-level warn","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","eslint:files":"eslint --cache --fix","prettier:files":"prettier --write --log-level warn","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run"},"_npmUser":{"name":"johnwehr","email":"johnwehr@goodfoot.io"},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"10.8.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"20.19.6","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^9.36.0","vitest":"4.0.13","prettier":"^3.6.2","@types/node":"^24","eslint-plugin-jsdoc":"^50.0.0","@anthropic-ai/claude-agent-sdk":"^0.1.76"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.8_1767597762771_0.7014905953293857","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.9":{"name":"@goodfoot/claude-code-hooks","version":"1.0.9","_id":"@goodfoot/claude-code-hooks@1.0.9","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"d79037035c2e8b60eb668e7fd30b2eafcb4f4fc9","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.9.tgz","fileCount":27,"integrity":"sha512-S1F44IqkSBeM77FHVLZrbM8eq42OSW+8bVJd1De8GmTuZigUFIhu/1HhyWaMwPXvzVxlgSYx9s0jbwIpKkZCqw==","signatures":[{"sig":"MEUCIECcY1qRL9p8+agcZHtLU2w7aX2tCkyBNSFht4+XV8lBAiEAlV6/RHOq/eQd8Uh9PwTSJlTGn8HqN2INrhnw1OJvRag=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":250189},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"9a6259b8ef73ea2c2ffc536c361ad66e2fd1838b","scripts":{"lint":"bash -c 'if [ $# -eq 0 ]; then yarn typecheck && yarn eslint && yarn prettier; else yarn typecheck && yarn eslint:files \"$@\" && yarn prettier:files \"$@\"; fi' --","test":"vitest run","build":"tsc --build tsconfig.build.json","eslint":"eslint --cache --fix ./src ./tests ./e2e","release":"bash ../../scripts/release-package.sh claude-code-hooks","prettier":"prettier . --write --log-level warn","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","eslint:files":"eslint --cache --fix","prettier:files":"prettier --write --log-level warn","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run"},"_npmUser":{"name":"johnwehr","email":"johnwehr@goodfoot.io"},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"10.8.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"20.19.6","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^9.36.0","vitest":"4.0.13","prettier":"^3.6.2","@types/node":"^24","eslint-plugin-jsdoc":"^50.0.0","@anthropic-ai/claude-agent-sdk":"^0.1.76"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.9_1767897640127_0.20596302318227955","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.10":{"name":"@goodfoot/claude-code-hooks","version":"1.0.10","_id":"@goodfoot/claude-code-hooks@1.0.10","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"12453bf3b35eceaf51aa940d2c042edb4d16a7f6","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.10.tgz","fileCount":27,"integrity":"sha512-65y1nJN/sxZcCSM2RWr8qvqzbLP9cTUIeDqvY3314giNhEOfjDf4DFSaf930EivH74gq14rdQr/EMnIghT8iiw==","signatures":[{"sig":"MEQCIDOCrcHiwDYYpheCOEJrFBqB/8m9GLB9N9AVduU2UyS2AiBtmyatYmkIBjg2bdPPU8+2OE6lTbaQvsY/7fS8gHr7YQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":250174},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"fcbc76f519af22b15628b59ecaf91868580e0cf3","scripts":{"lint":"bash -c 'if [ $# -eq 0 ]; then yarn typecheck && yarn eslint && yarn prettier; else yarn typecheck && yarn eslint:files \"$@\" && yarn prettier:files \"$@\"; fi' --","test":"vitest run","build":"tsc --build tsconfig.build.json","eslint":"eslint --cache --fix ./src ./tests ./e2e","release":"bash ../../scripts/release-package.sh claude-code-hooks","prettier":"prettier . --write --log-level warn","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","eslint:files":"eslint --cache --fix","prettier:files":"prettier --write --log-level warn","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run"},"_npmUser":{"name":"johnwehr","email":"johnwehr@goodfoot.io"},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"10.8.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"20.19.6","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^9.36.0","vitest":"4.0.13","prettier":"^3.6.2","@types/node":"^24","eslint-plugin-jsdoc":"^50.0.0","@anthropic-ai/claude-agent-sdk":"^0.1.76"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.10_1768353967043_0.27650497855134315","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.11":{"name":"@goodfoot/claude-code-hooks","version":"1.0.11","_id":"@goodfoot/claude-code-hooks@1.0.11","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"b4f7e64a93087bc0b233700c0538abe25f6a9eed","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.11.tgz","fileCount":27,"integrity":"sha512-0s9hOprXq7ZFVK14F4n5YwAgidmHlkNuIX5dsKAT9QJrdydNxCRrG7OfWI3jXQMrSfKHTWUUjtfrGukOY7TLWg==","signatures":[{"sig":"MEYCIQDiwRdvtk+b3t/xhK5oXaZWL69pMBhbjYZQ3Dhw9dpE4AIhAMavlS1SjOAtElEzO40pMJPh5GJ5l3gRzvMxmUCusTf3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":283014},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"802753abd167bd98c097a19d2ff3ae020be79989","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"johnwehr","email":"johnwehr@goodfoot.io"},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"10.8.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"20.19.6","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.3.11","@anthropic-ai/claude-agent-sdk":"^0.2.12"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.11_1768700201732_0.06281972228804356","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.15":{"name":"@goodfoot/claude-code-hooks","version":"1.0.15","_id":"@goodfoot/claude-code-hooks@1.0.15","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"5ef30613b7a8e95a5c6834625aeab09084b209d5","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.15.tgz","fileCount":25,"integrity":"sha512-AxMlGf+UCTzAwdAdH0g9BB84pUifl/W2ANchcxcGj6Q9p9ndoi7i+OuH+AevZizXvNLERSn+6cQ8XkWZLy3K2g==","signatures":[{"sig":"MEUCIQDHA4VsuMFSGYk8knYcvAskyQNspSgna14xnKOw8FbPXQIgEtdApWIYmbPUSh8hNaq4nkf+904W/pg/8Vme5GUHFtM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.0.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":265361},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"334fba0862789228054c01f5a27341153a9d49ef","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.6.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.3.13","@anthropic-ai/claude-agent-sdk":"^0.2.22"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.15_1769615264988_0.3454859647178774","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.16":{"name":"@goodfoot/claude-code-hooks","version":"1.0.16","_id":"@goodfoot/claude-code-hooks@1.0.16","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"fb78e87bba2416b6978d44804186eca6f51d02f3","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.16.tgz","fileCount":25,"integrity":"sha512-uK5sLCUsgGAxNTXXuFuXnCcKFwJd5XRD7mIyBlnPnJ3HpnRPCITTCODAEQdLXPfYU1qxzcfir4o2AsTH70EvJw==","signatures":[{"sig":"MEUCIQDICohhgjDnvri2eSTbFwKIGL1RY3y3wOyPWGUWImeaOQIgIC0SE5toZ3zWU3sLmD3HRcT48X4U00RjF0MCTnLfILM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.0.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":265543},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"085b56d345e20d9eb47f43ec9be51b1c56331569","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.6.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.3.13","@anthropic-ai/claude-agent-sdk":"^0.2.22"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.16_1769616303869_0.5731051621189029","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.17":{"name":"@goodfoot/claude-code-hooks","version":"1.0.17","_id":"@goodfoot/claude-code-hooks@1.0.17","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"01bb0713c8957a963fd6190d159c67b49d0068c2","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.17.tgz","fileCount":25,"integrity":"sha512-y5FHRjFqAyxA5/2tLsPviHVVDHecFkRXlrA/kC0OXAN8WLsIw7a1QNL1CFjw/NxlcTgvTluYKVg801r21Zyosg==","signatures":[{"sig":"MEYCIQCYS8iIyXHuLBQ1riK4GsU8iwBNaOFnpkJwWnHoAxP4bgIhAIdAoWsvHYf9qgO0QQIcWDlVfDjopQY1jZuwBw452QrJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.0.17","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":265549},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"902d292e0e962268234e63e36bd3634b9efe8a3d","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.6.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.3.13","@anthropic-ai/claude-agent-sdk":"^0.2.22"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.17_1769630196579_0.7091047151673497","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.18":{"name":"@goodfoot/claude-code-hooks","version":"1.0.18","_id":"@goodfoot/claude-code-hooks@1.0.18","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"d4280d82c96c021e84dbdf4f5412522b9a43b6c8","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.18.tgz","fileCount":25,"integrity":"sha512-jVoaizgd1RyCUYzMk6/k71I21p2oFrOyOiktLN91HM/etTuUWUv47HNVoytyMvCIm9qC/v+E21rblDB1k6SJiw==","signatures":[{"sig":"MEUCIQDZUagnTR54/fndTKVqTC67CAKVItRdD6Zo6Pc5z6CdqwIgR/mBX7hu9rDQKuRAtTdnVrvq7YmLgPHtNYjxWSloTrA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.0.18","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":266661},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"503a415a01e079f90360722aec87e8585a3e72ae","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.6.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.3.14","@anthropic-ai/claude-agent-sdk":"^0.2.31"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.18_1770237649108_0.46497664754049395","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.19":{"name":"@goodfoot/claude-code-hooks","version":"1.0.19","_id":"@goodfoot/claude-code-hooks@1.0.19","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"6382a0f5aa2e0aa9df066314c94d463ecb62c7bc","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.19.tgz","fileCount":25,"integrity":"sha512-WwKzh05/vC7xDHkfdlPWAr1Sw2qBTIwtsF0GzkTRzR1kepbOw8cdfNWnXOq0WYF6qPab2F/u4QKZifi+M1L0vw==","signatures":[{"sig":"MEUCIERYBSxlsTeC/7IecdqqxXvTzo9vFpu+r09HxAF38o6iAiEArqk+1N3qJA2jOW54RmXErsWaKdDgTr3SuUU0R/sdBYU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.0.19","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":266652},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"0228558124a284f87623008c9e43dd885a9ce65c","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.6.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.3.14","@anthropic-ai/claude-agent-sdk":"^0.2.31"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.19_1770406510290_0.07938775633431572","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.20":{"name":"@goodfoot/claude-code-hooks","version":"1.0.20","_id":"@goodfoot/claude-code-hooks@1.0.20","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"66654bf8662c05193aa7b1b6678768301658723e","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.20.tgz","fileCount":25,"integrity":"sha512-VmvbB5aixjmMwpGYoBbhR+zOyRvoTwRLuWo7KUxF5bt+PoGzLnlguzP64F9z6GgPretlT8LWWA8Ue9ab4PBFig==","signatures":[{"sig":"MEUCIQCneoVg8PUSiZ1gNesnDXHV6WgN8f9iJNsUSrIpnjUEjwIgNlztJH6t8J0TWsDOBOwEYPftIIPQ8aYSfQGRmG5O+iw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.0.20","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":275931},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"4cc1f4ff3105861e74eb104aef1b019e93027edc","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.6.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.3.14","@anthropic-ai/claude-agent-sdk":"^0.2.37"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.20_1770503921580_0.7334082914955502","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.21":{"name":"@goodfoot/claude-code-hooks","version":"1.0.21","_id":"@goodfoot/claude-code-hooks@1.0.21","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"45cd9b8783ecdf5331bf7f0f5efe8b8bb7e9c4ef","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.21.tgz","fileCount":25,"integrity":"sha512-9F/HDoUQxUd7tldR8JBzFIgzH21j7wvSdOXq9H2ocPpea0JTkFGYyN8QHT05RkcEm2lVTnhBe0nac0dzAre0zg==","signatures":[{"sig":"MEQCIENoemhTlkXL1w7fflJp2CTIrruk7e1obWz6mh6EMs3yAiAkWPn83zkEqB9qx97wtpgoSq11OuVc550T2rEQVsswQQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.0.21","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":274934},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"01b3bbb35176dea45ff33e6aba05fc442c4bfd2d","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.6.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.3.14","@anthropic-ai/claude-agent-sdk":"^0.2.39"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.21_1770873746057_0.9732167426546079","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.0.23":{"name":"@goodfoot/claude-code-hooks","version":"1.0.23","_id":"@goodfoot/claude-code-hooks@1.0.23","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"7c5d758a3da8aaa8aee1c6461c6aa11c1b57deb4","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.0.23.tgz","fileCount":25,"integrity":"sha512-hYOKs6vJBnw8PoRrQgAMTpEKsrWweF+x3oIB+CWhro2nTfEBcXlcqX+y+rJTICM8WN7AgtuqL7odm5mpPo/+dg==","signatures":[{"sig":"MEYCIQCeWawfrUgCc6DBs+5UrRqv9wXEYoOtgixG4meCM/6qMgIhAP9f9y0zUp5wr4Sj1Tvy+yJkJCRl7RVDzz7EAeBCPKrb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.0.23","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":275820},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"47309f5cad1be1aa01dd32d7cbc0b1508e43eabc","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.6.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.1","@anthropic-ai/claude-agent-sdk":"^0.2.42"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.0.23_1771274892056_0.9812388099114533","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.1.0":{"name":"@goodfoot/claude-code-hooks","version":"1.1.0","_id":"@goodfoot/claude-code-hooks@1.1.0","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"8908ddb9dbf800def42433522fcf776c5a5a126e","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.1.0.tgz","fileCount":25,"integrity":"sha512-g80b0A7opfghOCJUt1X+cXJglPpJn4w2sfVurED7+SrZpcSe5KeW+CZvFz6z12o2Tzhw1L39HyBNo9+VaQq8ew==","signatures":[{"sig":"MEUCIBJGEjqvSvGP0GjbhYs8hRQSe+Mhx9bmO+imJ3ZFgJMgAiEA+HitZEqfgijFpiuGAOtMO+Xag1qoXMPPZtSh1OWKPfg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":278075},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"07368c633189102c87778867adf97e2e0efddad7","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.6.2","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.1","@anthropic-ai/claude-agent-sdk":"^0.2.42"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.1.0_1771339042920_0.13784007072453353","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.2.0":{"name":"@goodfoot/claude-code-hooks","version":"1.2.0","_id":"@goodfoot/claude-code-hooks@1.2.0","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"00c88b09f2258cac0ccc60328bef9bd5c4b8b3ee","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.2.0.tgz","fileCount":25,"integrity":"sha512-PK2Zw2ekDx//rg3+mKmcxMsyOW6pU7LLaPmbVOmf+nmSdMEfeKe5/vsTHSSEcNy+NeCCSWe9V1YEtFXHrmuwCA==","signatures":[{"sig":"MEUCIHRu4RyTcYtjDoJalGhqByKbtV+rlvYmnNkJvEfNuMqsAiEA0/YLVeyWSa1qRgtgsxzGaXMN8s1y5tjEN1iOYXvarU8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":305528},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"37209967247c9cb7063cc62d2ae31ec9fa104278","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.9.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.6","@anthropic-ai/claude-agent-sdk":"^0.2.69"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.2.0_1772809077862_0.4544866799940319","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.2.1":{"name":"@goodfoot/claude-code-hooks","version":"1.2.1","_id":"@goodfoot/claude-code-hooks@1.2.1","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"3639d5fba736c3260c19a5b174387ce07ac8055c","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.2.1.tgz","fileCount":25,"integrity":"sha512-9DycAKkOzNEIBuerH5Y75Z96WuXLPyMQ0B2lmYTaTAQKSnei1hVYPrb6IygIWPEx5mu7UjaQUWM+Z4W5yPp1YQ==","signatures":[{"sig":"MEUCIQDHixqgcoehqmVf9muOPTmxQE7PLNBe5O7vQl5M4LFcaQIgDmTB1IL+teGAW6ErD61EGodAni7FrlUN8Gy/dZxKulI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":305542},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"8f0aa6b009729c73448db093f8e1254a6e21ab92","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.9.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.6","@anthropic-ai/claude-agent-sdk":"^0.2.71"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.2.1_1772929208007_0.1735710352278097","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.2.2":{"name":"@goodfoot/claude-code-hooks","version":"1.2.2","_id":"@goodfoot/claude-code-hooks@1.2.2","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"6b8c88f36ebd16980ebc8644167bb1037c307cb1","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.2.2.tgz","fileCount":25,"integrity":"sha512-xvBWuZbNAiWxHJOkaBh3MJs4l54/FRHeqdXibkwkPMQobAL8nY9QFNKwPhhIGolM5Otq/uycwNBIBTf3RICriw==","signatures":[{"sig":"MEUCIQCDzI1bX76RrDrpWllkUIm6hzk7q7N4zL8f/kxG3UKhwAIgWyZW86ppxGAkY8ITArlYbXJnqM9tLJUzl9o/48GSBaA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":305569},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"c278623d6d2f80a69dbd57a6b98a35e897039838","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.9.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.6","@anthropic-ai/claude-agent-sdk":"^0.2.71"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.2.2_1774033019520_0.3939168649342417","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.2.3":{"name":"@goodfoot/claude-code-hooks","version":"1.2.3","_id":"@goodfoot/claude-code-hooks@1.2.3","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"7b1c19f41e5088a3293acd06c9f3aa21cca732fe","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.2.3.tgz","fileCount":25,"integrity":"sha512-v9haKUGNx8E2jJ2JHUAHWZBW9iKf4Rvj44SOqO05rb8PtWpLaiUDL3Tz6X3TqIQIcwKy9X1BNuJiNBI2PAQzUQ==","signatures":[{"sig":"MEYCIQCS/k9+2CavKjcq4VySwOvTevLIHHUrYY9ULUMQek9J5AIhAPq/hrkjMN7g72P8Xpi9t8XlK8RXQppavCc/nAjzKHBL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.2.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":314146},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"5915d8c4a422dc634616f6dcca216e525e40dcd2","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.9.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.8","@anthropic-ai/claude-agent-sdk":"^0.2.80"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.2.3_1774035673850_0.8189536573799283","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.2.6":{"name":"@goodfoot/claude-code-hooks","version":"1.2.6","_id":"@goodfoot/claude-code-hooks@1.2.6","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"244602067361d1e92d5883f588beea17fcefee3b","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.2.6.tgz","fileCount":25,"integrity":"sha512-+ZVDaC1f4B/jK8WG3dZgBTzxdX36sTJp/nHLcAHF8svLYbTiOss3bkoeYwe721jIp2qMmOCcBHUagS9N7aR/SA==","signatures":[{"sig":"MEUCIDUqEwS3ZUioDcsu8OHUiI8/3fDuIifMQTbIWurb/uoJAiEAo5S57BcvGOhmnG/oQEU7y2JsnBIoyqQhk2D0H6RQk34=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.2.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":327216},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"fe34af78b94cd68a1967fa22b2ae65f22bcf5315","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","update:docs":"./scripts/update-docs.sh","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts","update:docs:dry-run":"./scripts/update-docs.sh --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.9.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.9","@anthropic-ai/claude-agent-sdk":"^0.2.83"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.2.6_1774473753455_0.5370146896894792","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.2.7":{"name":"@goodfoot/claude-code-hooks","version":"1.2.7","_id":"@goodfoot/claude-code-hooks@1.2.7","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"287385ca4fa094267af4d29499aa74548348baa5","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.2.7.tgz","fileCount":25,"integrity":"sha512-Mg9HkzaxbZ/Uo5Igm2t7Bxu1TWZXjGQuh2MjJnGzXj3habGIs5XHucplwkyQkf+tnW+0U/wEDaEhyKDhRKkl2w==","signatures":[{"sig":"MEQCIHZJBDHGMTB2S82MlFX0n8pjwA4keX8nuWHWTuWoE/BdAiBQwOx5wPKphQMgWAw7zeeAtXoMUhV24QuIvVElqHrPRg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.2.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":327914},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"a9018f7a4bec7864c48cf01879cee647b3bb058c","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.9.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.9","@anthropic-ai/claude-agent-sdk":"^0.2.83"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.2.7_1774574905178_0.8726286486264443","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.2.8":{"name":"@goodfoot/claude-code-hooks","version":"1.2.8","_id":"@goodfoot/claude-code-hooks@1.2.8","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"98fc5ebce41cdeb4dc2d75f96a150441828c8fab","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.2.8.tgz","fileCount":25,"integrity":"sha512-FuAcXwEJAZ0PZ69R1BC9+/tNq63bCPWMfERQ6xYpcYzFInfGPxqpsM/awZtsRZYEQPdkm8SqWwhoeJQxNw5LlA==","signatures":[{"sig":"MEUCIECe/8FocnMdDyxXRV62b5pZRBcbimHl9vzb8zJ3KtDVAiEAo2xbucCBJFQBiRooRxv5g0+ItFaypXOXO+R6Z3QRcuY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.2.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":332459},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"16374283ad970b6bd84b7f8247f18f4883aab9ed","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.9.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.9","@anthropic-ai/claude-agent-sdk":"^0.2.86"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.2.8_1774656433266_0.11178487731945719","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.2.9":{"name":"@goodfoot/claude-code-hooks","version":"1.2.9","_id":"@goodfoot/claude-code-hooks@1.2.9","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"eab84b0185b13c2f42c4152449480babe4ddcd88","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.2.9.tgz","fileCount":25,"integrity":"sha512-9yF3OO9tx7S8LsLcOtDDHC8cuJI3TYYGVKv/OB5kFDsoLidqckp1v/Itt2r/tqUpqVJO8WxEIFc4aLu13aSMVA==","signatures":[{"sig":"MEUCIQDyAmE9BbPf2rHsRrRzhHYZ0OZVC9P3aqd+BfSB+2sIdwIgDXL1yPDK1hofE5242EFZ+Gt/q80A/qb6v34nlZIVK8I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.2.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":336127},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"1894c4d337a2aaa48e1c28dcb3c9dfab785eb38e","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.9.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.9","@anthropic-ai/claude-agent-sdk":"^0.2.86"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.2.9_1775077549229_0.484055438465673","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.3.0":{"name":"@goodfoot/claude-code-hooks","version":"1.3.0","_id":"@goodfoot/claude-code-hooks@1.3.0","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"91ae1aa335799c1cf74574789a57a6df166fdcfb","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.3.0.tgz","fileCount":25,"integrity":"sha512-1DPGxUCBEH8pgD5Yi+jKIG+5IOlWEg6nba1IxB5WXvyRo2aZMYCyh+N6SHuJUhsUdomY/jTrEXr9zFhziw8k+g==","signatures":[{"sig":"MEQCIA4ZxPbD+p1ZCUvS1BgAfNDTYabvVPVB3Vculm4mSNooAiBh6xKJgpWQbDq1avB7Zdmih+OnfGQrf71mJRCcnvNBbQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":341643},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"f4e5c788d094f68be66dff399df1c1db8ae54b00","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.11.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.12","@anthropic-ai/claude-agent-sdk":"^0.2.109"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.3.0_1776236139999_0.04284539095413287","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.3.1":{"name":"@goodfoot/claude-code-hooks","version":"1.3.1","_id":"@goodfoot/claude-code-hooks@1.3.1","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"0a08e842068619e08dd9f006d1e7f5f9e89f2cc1","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.3.1.tgz","fileCount":25,"integrity":"sha512-9YA62OhwXOwz1qhI4fao3DL2qDDRCtkeBVUu5BZcGX14saNEgpWXydsHjqGyO48Nu3JWySnthq0wWDAJytAxOA==","signatures":[{"sig":"MEQCIGKIXAsXrUSrLbEao23gDv9I10H8eKMmjSkxPzdCGwVSAiBiXPpGt528LwVEZZBmz7Saztw1Dn1ZUoiJvL6f8LJRZw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":341707},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"85d06c13d39e738881443e87f435171d57b14619","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.11.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.12","@anthropic-ai/claude-agent-sdk":"^0.2.109"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.3.1_1776581687275_0.9298834368733468","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.3.2":{"name":"@goodfoot/claude-code-hooks","version":"1.3.2","_id":"@goodfoot/claude-code-hooks@1.3.2","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"f41d53c908c598a3993344d80ad29aee07aef39e","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.3.2.tgz","fileCount":25,"integrity":"sha512-ZKRKeCgDioZ9CZbjoLo3Oxtwk2EoH7y6fECdcqCXTPok11ignsMEfNiJiSalqpmAaEtURwz9AM/t5goQykwW8g==","signatures":[{"sig":"MEUCIEMZ1yPHv1xBW00/3pbaj5dc12qXxauV60FchOJvtukwAiEAg1NYQ56BxuDMGwLIkmhwAN87pra7sZSjdTx7uKMzYQk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":347935},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"5313f59afcb78483948c135e32e4505b942983a0","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.11.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.12","@anthropic-ai/claude-agent-sdk":"^0.2.116"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.3.2_1776813490422_0.5574886118812454","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.3.3":{"name":"@goodfoot/claude-code-hooks","version":"1.3.3","_id":"@goodfoot/claude-code-hooks@1.3.3","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"7187da9f21cbfb92c66ee7577aed218b14b002f8","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.3.3.tgz","fileCount":25,"integrity":"sha512-VBuD2w0OxgBHvnbAXB7LcU4WBCqFndAUw3xUplHFMY5k7HePgrBnPG+rGlINV6mHK3LKB0oL4BJKbq0kMilYww==","signatures":[{"sig":"MEUCIEEXbUpx/KFrqTxt0lzCoIKAnx+gK1hUcJd90pxkBb6LAiEAqFyTKepJS0u6QguWOPSPo/NZE7qxCar0U5LYWsIh/S4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.3.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":348906},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"f0ff64456a21b1b14e11071fef2edb992816b052","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.12.1","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.12","@anthropic-ai/claude-agent-sdk":"^0.2.116"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.3.3_1779054182385_0.017259691247003772","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.4.1":{"name":"@goodfoot/claude-code-hooks","version":"1.4.1","_id":"@goodfoot/claude-code-hooks@1.4.1","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"eb224f962f305c0f80372b69d10df03278d05752","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.4.1.tgz","fileCount":25,"integrity":"sha512-DZprYiDJWXPU4DCsfzZUh+9rPq/3IL5gMh5g3+r54nLvnWrtMJotIV4WA3a728C3tY2d5zyROMm42tI1TFTUZA==","signatures":[{"sig":"MEQCIAvyNkEBc3UsiNDRF8/C33AI3trE2YyySK5PVCbi8pCIAiA0HD41PN9bsr2wFm6tGGM4X9TQQdCSbkChhYA9YwoQ4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":353127},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"764407bd1df1ab83d33ec02730278f03e51b1470","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.12.1","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.12","@anthropic-ai/claude-agent-sdk":"^0.2.116"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.4.1_1779486321660_0.8221915221199987","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.5.0":{"name":"@goodfoot/claude-code-hooks","version":"1.5.0","_id":"@goodfoot/claude-code-hooks@1.5.0","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"f8e9af79c15d28d37794928fb6aacb2a3be8bb6c","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.5.0.tgz","fileCount":25,"integrity":"sha512-dVQMABYv0e0vshurUZx52e27e0mjjSdk6Ul9wpSdbj2VaDbLMkNseJVJrfmhDVlFeSvsP66iLQgURRUI1hDXPg==","signatures":[{"sig":"MEQCIHA+ASf76M72VpF/lGa0q6Zp6DeKV2XCa6Q6OE85/hX7AiBi8OUa4ycvi1iAD+cmQ6l6yA60GLIyJrau5id5xbcesQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":376259},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"d4fcca357ca7726b14d247f1fa7b1b8ae3c2c4f9","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.12.1","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.15","@anthropic-ai/claude-agent-sdk":"^0.3.148"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.5.0_1779502928944_0.4848171035340543","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.6.0":{"name":"@goodfoot/claude-code-hooks","version":"1.6.0","_id":"@goodfoot/claude-code-hooks@1.6.0","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"715b9519d7a8b5df331b9ebdf4936b7932909b91","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.6.0.tgz","fileCount":25,"integrity":"sha512-x7iaJns547D6HKMRDomZMR8vZSOY13oPWRxn7OURwt0C9dbQltI5wWvMsGsUAZFbjVj6X4EWnpndDLlm1kH2xA==","signatures":[{"sig":"MEUCIQDQiRBZb3940G6NHJBLfxXBTHzDNUnOp5lUbq+Bfy8DggIgZjznI91sGCi4ZI0gG4V0r8r2Rhw0+1ErhdvhPeJhR9w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":382987},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"a1dd62de066354224209a345aa2e509f9e6128f3","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.13.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.16","@anthropic-ai/claude-agent-sdk":"^0.3.162"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.6.0_1780600243180_0.26970390868826133","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.7.0":{"name":"@goodfoot/claude-code-hooks","version":"1.7.0","_id":"@goodfoot/claude-code-hooks@1.7.0","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"48f9b43d7c005d1757a119913aeb97fb937ebe49","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.7.0.tgz","fileCount":25,"integrity":"sha512-L60pv4TKb7DJWgSqYeP29H2ytbzhaLCHlz+S/xvL2pfWRt7+eMso46g9nZsRRR/qtzBSivOPk2iPnA2x2xgpOA==","signatures":[{"sig":"MEYCIQCLaOSHJIjmal3oYybe3y8mf2wNSm73X4RuF58R8wbD3QIhAP2mJ0GVIGctrwe1meUiCcFYdEacbbrR2hNCPd/FDjMt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":385114},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"d20ff116e5c84ec9cf48db4b72036de8e9e10d17","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.13.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.16","@anthropic-ai/claude-agent-sdk":"^0.3.162"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.7.0_1780619753543_0.1578591455810492","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.7.1":{"name":"@goodfoot/claude-code-hooks","version":"1.7.1","_id":"@goodfoot/claude-code-hooks@1.7.1","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"1c96997ff653722ebf575b5ceb30c4e66a6a0a6f","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.7.1.tgz","fileCount":25,"integrity":"sha512-QtXmiFKoz3ij/CkDRum1E8X8zDgg5NT0QiQ2IGy/HY2EIM5MijD2WoMn5Z4zNa9Lim5NlonCKYEZPOQhhf99Zg==","signatures":[{"sig":"MEQCIF3zpzRTpmsAbjhXXNL5t6IIzsQU2HsCI5uZaA+dUrXRAiAjsNDKTk+9g96Hn4vCkCVd559F84QlnIhxbpZj5d9tAg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":385120},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"ebf50d59bcfe73bed14880736d180188c23bbe09","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.13.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.16","@anthropic-ai/claude-agent-sdk":"^0.3.162"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.7.1_1781040179907_0.6956188798819516","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.7.2":{"name":"@goodfoot/claude-code-hooks","version":"1.7.2","_id":"@goodfoot/claude-code-hooks@1.7.2","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"d767cec5151bbca5e88cba699562cd267197e2d3","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.7.2.tgz","fileCount":25,"integrity":"sha512-YvHHIfw3H/cutTU7j/M2Q6I9iAVSHuovPkeic6P68roLXsczNOs7vsksrtBqEOtgLUgsHz1JpLRvVI/lnO3Duw==","signatures":[{"sig":"MEQCIH7/PQoI6ObKuwjjTZhEegByiSUcVrqJblS9yom2FYqoAiAsjY+nOtVJD0ROJS7+xUYUJ5wDV1OBur0+kSDsvZ4ZIQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.7.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":385390},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"30960d4ffd9129760a1a61deecc1418668b37c5a","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.16.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.16","@anthropic-ai/claude-agent-sdk":"^0.3.162"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.7.2_1784328488034_0.8684903185968493","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.7.3":{"name":"@goodfoot/claude-code-hooks","version":"1.7.3","_id":"@goodfoot/claude-code-hooks@1.7.3","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"e8c72ff2203b75f344b4ec01f066f5391d1878cb","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.7.3.tgz","fileCount":25,"integrity":"sha512-C0jYMTdtUDuReQFkqlOn8IGtRGtEmMAgoYWXRjDm5mCydGxU8ErtoYP4N6JvJHEfafHgEx7w7FQdmae4XMnH0A==","signatures":[{"sig":"MEUCIQCj6y2mNogdO2wpwZDtMG5LToiWhRDNjizNdXsgegh6RgIgXwONRW4soTfhNGwgIdbuAcqXmIc6iQD6CDqIgT0xvR4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.7.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":387336},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"e659e229ff9516b709b33dae5a6b28d820516c4b","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.16.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.16","@anthropic-ai/claude-agent-sdk":"^0.3.162"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.7.3_1785869400570_0.7164417901522211","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.8.0":{"name":"@goodfoot/claude-code-hooks","version":"1.8.0","_id":"@goodfoot/claude-code-hooks@1.8.0","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"d53f8c01f48e22548163ad37badfe2f6fb4f9d3e","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.8.0.tgz","fileCount":25,"integrity":"sha512-j47FfS3fGDcdDJLCRGuiT1Ae4n09gjzDeLW1IXdjN1j0/ZB9xI/uu0oSAUKInrhGiJSea/l4mwyZkurX1XwrQA==","signatures":[{"sig":"MEUCIFDTg49zVSKYzCXjJdU7D+ZaIT9JTdNczSZUGHHiu6+JAiEAqjW+FBWqpaFdGihHXhHCCzGQX8+7wqJOizyQnJ5EeEs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":393053},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"fd441e611c2f4bb61d2f7c26a5efdc2f1341f039","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.16.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.16","@anthropic-ai/claude-agent-sdk":"^0.3.162"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.8.0_1786563137164_0.4204993808611761","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.9.0":{"name":"@goodfoot/claude-code-hooks","version":"1.9.0","_id":"@goodfoot/claude-code-hooks@1.9.0","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"e49c64df85bd0c24b2b833dee8ba62b19b7e996b","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.9.0.tgz","fileCount":25,"integrity":"sha512-v5YEDwl426sFQa0Xcqqjmj9Q7V4r5Yo0je2YqGD2CmZOqrsZrH6w9mbqVO0HtvWhSKm13mCq2ecuq4kHYu66Qw==","signatures":[{"sig":"MEUCIQCcXdT3eZYYvDfpSUGzV+q2euH7Y2Z7Lu89PEnbKQYo7QIgKNqa3eEkrRFtWmguW7AmVQjYt9rjVhhb8qgfkR/Vb5g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":402861},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"e6f56dc6808f57ff7aa1d2632efd60a1d2aea766","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.16.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.16","@anthropic-ai/claude-agent-sdk":"^0.3.162"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.9.0_1786597251168_0.45904822243780763","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"},"1.9.3":{"name":"@goodfoot/claude-code-hooks","version":"1.9.3","_id":"@goodfoot/claude-code-hooks@1.9.3","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"bin":{"claude-code-hooks":"dist/cli.js"},"dist":{"shasum":"ecf8fac05b15a5dbc3c7387e8a60ebf25bf5a455","tarball":"https://registry.npmjs.org/@goodfoot/claude-code-hooks/-/claude-code-hooks-1.9.3.tgz","fileCount":25,"integrity":"sha512-pTNFiFHN4/JyvHDUqgLrF0Z3vGaTZLGpNgjWaivwcGKnW2Dox/q6hxkvh8OlsinFWJ6YVEB2jaqvxXxG0k/XIA==","signatures":[{"sig":"MEYCIQD2hJ53CQ0KBWKMR9zWZaa+7YlC8DWod74RHuATLm/nowIhAIjUktugd4+D+6zBddoF1LQZoyM8hcA946cyDwpCVWE1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@goodfoot%2fclaude-code-hooks@1.9.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":403193},"type":"module","engines":{"node":">=20.11.0"},"exports":{".":{"types":"./types/index.d.ts","import":"./dist/index.js"},"./*":{"types":"./types/*.d.ts","import":"./dist/*.js"}},"gitHead":"4fe2304d7393c851b2cd1c08800a3f3d6f4aa09f","scripts":{"lint":"biome check --write --unsafe --max-diagnostics 500 ./src ./tests ./e2e ./scripts","test":"vitest run","build":"tsc --build tsconfig.build.json","release":"bash ../../scripts/release-package.sh claude-code-hooks","test:e2e":"vitest run --config vitest.e2e.config.ts","typecheck":"tsc --noEmit","test:types":"vitest run --typecheck","upgrade:deps":"./scripts/upgrade-deps.sh","release:dry-run":"bash ../../scripts/release-package.sh claude-code-hooks --dry-run","snapshot:sdk-types":"tsx scripts/snapshot-sdk-types.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:06126ea2-987f-4bb2-b9f1-a365f0d899ba"}},"repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"_npmVersion":"11.17.0","description":"Type-safe Claude Code hooks library with camelCase types and output builders","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"glob":"^11.0.0","esbuild":"^0.24.0","typescript":"^5.9.3"},"publishConfig":{"bin":{"claude-code-hooks":"./dist/cli.js"}},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","vitest":"4.0.13","ts-morph":"^25.0.0","@types/node":"^24","@biomejs/biome":"2.4.16","@anthropic-ai/claude-agent-sdk":"^0.3.162"},"_npmOperationalInternal":{"tmp":"tmp/claude-code-hooks_1.9.3_1787775959699_0.3499681045013159","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Superseded by @goodfoot/agent-hooks. See https://www.npmjs.com/package/@goodfoot/agent-hooks"}},"time":{"created":"2026-01-04T22:05:59.913Z","modified":"2026-08-26T21:19:38.002Z","1.0.1":"2026-01-04T22:06:00.143Z","1.0.2":"2026-01-04T22:24:03.211Z","1.0.3":"2026-01-04T22:49:01.721Z","1.0.4":"2026-01-05T03:55:05.388Z","1.0.6":"2026-01-05T05:18:56.022Z","1.0.7":"2026-01-05T05:29:16.131Z","1.0.8":"2026-01-05T07:22:42.975Z","1.0.9":"2026-01-08T18:40:40.286Z","1.0.10":"2026-01-14T01:26:07.206Z","1.0.11":"2026-01-18T01:36:41.897Z","1.0.15":"2026-01-28T15:47:45.165Z","1.0.16":"2026-01-28T16:05:04.021Z","1.0.17":"2026-01-28T19:56:36.731Z","1.0.18":"2026-02-04T20:40:49.292Z","1.0.19":"2026-02-06T19:35:10.482Z","1.0.20":"2026-02-07T22:38:41.730Z","1.0.21":"2026-02-12T05:22:26.202Z","1.0.23":"2026-02-16T20:48:12.188Z","1.1.0":"2026-02-17T14:37:23.078Z","1.2.0":"2026-03-06T14:57:58.003Z","1.2.1":"2026-03-08T00:20:08.173Z","1.2.2":"2026-03-20T18:56:59.665Z","1.2.3":"2026-03-20T19:41:14.011Z","1.2.6":"2026-03-25T21:22:33.617Z","1.2.7":"2026-03-27T01:28:25.308Z","1.2.8":"2026-03-28T00:07:13.405Z","1.2.9":"2026-04-01T21:05:49.399Z","1.3.0":"2026-04-15T06:55:40.136Z","1.3.1":"2026-04-19T06:54:47.447Z","1.3.2":"2026-04-21T23:18:10.567Z","1.3.3":"2026-05-17T21:43:02.572Z","1.4.1":"2026-05-22T21:45:21.805Z","1.5.0":"2026-05-23T02:22:09.105Z","1.6.0":"2026-06-04T19:10:43.472Z","1.7.0":"2026-06-05T00:35:53.760Z","1.7.1":"2026-06-09T21:23:00.036Z","1.7.2":"2026-07-17T22:48:08.177Z","1.7.3":"2026-08-04T18:50:00.724Z","1.8.0":"2026-08-12T19:32:17.303Z","1.9.0":"2026-08-13T05:00:51.331Z","1.9.3":"2026-08-26T20:25:59.874Z"},"bugs":{"url":"https://github.com/goodfoot-io/marketplace/issues"},"homepage":"https://github.com/goodfoot-io/marketplace/tree/main/packages/claude-code-hooks","repository":{"url":"git+https://github.com/goodfoot-io/marketplace.git","type":"git","directory":"packages/claude-code-hooks"},"description":"Type-safe Claude Code hooks library with camelCase types and output builders","maintainers":[{"name":"johnwehr","email":"johnwehr@goodfoot.io"}],"readme":"# @goodfoot/claude-code-hooks\n\n> **Deprecated.** `@goodfoot/claude-code-hooks` is superseded by [`@goodfoot/agent-hooks`](https://www.npmjs.com/package/@goodfoot/agent-hooks) (`@goodfoot/agent-hooks/claude-code`), which consolidates Claude Code, Codex, and Antigravity hook support behind one package. New work should target `@goodfoot/agent-hooks/claude-code`.\n\n**Build Claude Code hooks in TypeScript.**\n\nThis package is not just a library; it is a **build system** and a **runtime wrapper**. You write TypeScript, this package compiles it into self-contained executables, and _those_ are what Claude runs.\n\n## Skills\n\nLoad the \"claude-code-hooks:sdk\" skill to enable Claude to use this package.\n\nRun:\n\n`claude plugin marketplace add goodfoot-io/marketplace && claude plugin install claude-code-hooks@goodfoot\"`\n\nthen:\n\n`claude \"Load the 'claude-code-hooks:sdk' skill then scaffold a new hook package in ./packages/hooks that outputs to '.claude/hooks/hooks.json' and contains an example SessionStart hook.\"`\n\nlater:\n\n`claude plugin uninstall claude-code-hooks@goodfoot`\n\n## ⚡ Quick Start\n\n### 1. Install\n\n```bash\nyarn add @goodfoot/claude-code-hooks\n# or npm install, pnpm, etc.\n```\n\n### 2. Write a Hook\n\nCreate `hooks/allow-ls.ts`. **Note:** You _must_ use `export default` and the factory function.\n\n```typescript\nimport { preToolUseHook, preToolUseOutput } from '@goodfoot/claude-code-hooks';\n\nexport default preToolUseHook({ matcher: 'Bash' }, async (input, { logger }) => {\n  const { command } = input.tool_input as { command: string };\n\n  // Use logger, NEVER console.log\n  logger.info('Checking command', { command });\n\n  if (command.trim() === 'ls') {\n    return preToolUseOutput({\n      systemMessage: 'Auto-approved: ls command is safe.',\n      hookSpecificOutput: { permissionDecision: 'allow' }\n    });\n  }\n\n  return preToolUseOutput({\n    systemMessage: 'Command passed through for review.'\n  });\n});\n```\n\n### 3. Compile\n\nThe CLI compiles your TS into `.mjs` and generates the `hooks.json` manifest.\n\n```bash\n# -i: Input glob\n# -o: Output manifest path\nnpx -y @goodfoot/claude-code-hooks -i \"hooks/*.ts\" -o \"dist/hooks.json\"\n```\n\nMarkdown prompt assets work out of the box via the default `.md=text` loader:\n\n```typescript\nimport preamble from './prompts/session-start.md';\nimport { sessionStartHook, sessionStartOutput } from '@goodfoot/claude-code-hooks';\n\nexport default sessionStartHook({}, () => {\n  return sessionStartOutput({\n    hookSpecificOutput: { additionalContext: preamble }\n  });\n});\n```\n\nFor other asset types, opt in explicitly:\n\n```bash\nnpx -y @goodfoot/claude-code-hooks -i \"hooks/*.ts\" -o \"dist/hooks.json\" --loader .txt=text\n```\n\n### 4. Configure Claude\n\nTell Claude where your hooks are. The location depends on your setup:\n\n---\n\n## Scaffolding a New Project\n\nBootstrap a complete hook project with TypeScript, testing, and build configuration:\n\n```bash\nnpx @goodfoot/claude-code-hooks --scaffold /path/to/my-hooks --hooks Stop,SubagentStop -o ./hooks.json\n```\n\nThis creates a ready-to-use project structure:\n\n```\nmy-hooks/\n├── src/\n│   ├── stop.ts              # Hook implementation\n│   └── subagent-stop.ts     # Hook implementation\n├── test/\n│   ├── stop.test.ts         # Vitest tests\n│   └── subagent-stop.test.ts\n├── package.json             # Dependencies + build script\n├── tsconfig.json            # TypeScript config\n├── vitest.config.ts         # Test config\n├── biome.json               # Linting config\n└── CLAUDE.md                # Skill loading instruction\n```\n\n**Next steps:**\n\n```bash\ncd my-hooks\nnpm install\nnpm run build   # Outputs hooks.json to specified -o path\nnpm test        # Run tests\n```\n\n### Available Hook Types\n\nThe `--hooks` argument accepts a comma-separated list of any of these 22 event types:\n\n| Hook Type            | Description                                                              |\n| -------------------- | ------------------------------------------------------------------------ |\n| `PreToolUse`         | Before a tool executes (allow/deny/modify)                               |\n| `PostToolUse`        | After a tool completes successfully                                      |\n| `PostToolUseFailure` | After a tool fails                                                       |\n| `PostToolBatch`      | Once after every tool call in a batch resolves                          |\n| `Notification`       | When Claude requests permissions                                         |\n| `UserPromptExpansion` | When a slash command or MCP prompt is expanded                          |\n| `UserPromptSubmit`   | When user submits a prompt                                               |\n| `SessionStart`       | When session begins                                                      |\n| `SessionEnd`         | When session terminates                                                  |\n| `Stop`               | After main agent finishes                                                |\n| `StopFailure`        | When session stops due to an error                                       |\n| `SubagentStart`      | When an Agent tool starts                                                |\n| `SubagentStop`       | When an Agent tool completes                                             |\n| `PreCompact`         | Before context compaction                                                |\n| `PostCompact`        | After context compaction completes                                       |\n| `PermissionRequest`  | When permission is requested                                             |\n| `PermissionDenied`   | When a permission request is denied; optionally retry via output         |\n| `Setup`              | On init, install, or update events                                       |\n| `TaskCreated`        | When a new task is created and assigned to a teammate                    |\n| `CwdChanged`         | When Claude Code's working directory changes; return `watchPaths` to register paths for `FileChanged` |\n| `FileChanged`        | When a watched file changes on disk (`change`, `add`, or `unlink`); return `watchPaths` to update the watched set |\n| `MessageDisplay`     | While an assistant message streams; display-only — replace the on-screen delta via `displayContent` |\n\nHook names are case-insensitive: `stop`, `Stop`, and `STOP` all work.\n\n---\n\n**Standalone Project:**\n\n```bash\n# In ~/.claude/config.json or project-local .claude/config.json\n{\n  \"hooks\": \"/absolute/path/to/your/project/dist/hooks.json\"\n}\n```\n\n**Claude Code Plugin:**\nPlugins automatically load `hooks.json` from the plugin root. Place your output there:\n\n```bash\nnpx -y @goodfoot/claude-code-hooks -i \"hooks/*.ts\" -o \"./hooks.json\"\n```\n\nThe `CLAUDE_PLUGIN_ROOT` variable is set automatically, so paths resolve correctly.\n\n**User-level Hooks:**\nFor hooks that apply to all sessions, build to `~/.claude/hooks/`:\n\n```bash\nnpx -y @goodfoot/claude-code-hooks -i \"hooks/*.ts\" -o ~/.claude/hooks/hooks.json\n```\n\n---\n\n## 💀 The \"Third Rail\" (Critical Safety Rules)\n\nViolating these rules will cause your hooks to fail silently or block Claude entirely.\n\n1.  **NO `console.log`**: The hook communicates with Claude via `stdout`. If you print \"Hello world\", you corrupt the JSON protocol.\n    - **Bad:** `console.log(\"Checking command\")`\n    - **Good:** `logger.info(\"Checking command\")`\n2.  **Relative Paths via Environment Variable**: The generated `hooks.json` uses `node $CLAUDE_PLUGIN_ROOT/hooks/bin/` paths.\n    - Compiled hooks are placed in a `bin/` subdirectory relative to `hooks.json`.\n    - The `$CLAUDE_PLUGIN_ROOT` environment variable is set by Claude Code at runtime.\n    - Use the `--executable` CLI option to specify a custom executable (e.g., `bun`, `/usr/local/bin/node22`).\n3.  **`export default` is Mandatory**: The CLI uses static analysis to find your hooks. It looks specifically for `export default factory(...)`.\n    - **Ignored:** `export const myHook = ...`\n    - **Ignored:** `module.exports = ...`\n\n---\n\n## 🧰 The Toolbox\n\n### Type-Safe Inputs\n\nInput properties use the wire format (snake_case) directly for consistency.\n\n```typescript\n// Claude sends: { \"file_path\": \"src/main.ts\", \"tool_name\": \"Read\" }\n// You receive:\nexport default preToolUseHook({}, async (input, { logger }) => {\n  logger.info('Tool received', { tool: input.tool_name }); // \"Read\"\n  logger.debug('Tool input', { input: input.tool_input }); // { file_path: \"src/main.ts\" }\n});\n```\n\n### Output Builders\n\nDon't construct raw JSON. Use the builders to ensure wire-format compatibility.\n\n| Builder                  | Use Case                                                           |\n| :----------------------- | :----------------------------------------------------------------- |\n| `preToolUseOutput`       | Allow/Deny permissions, modify inputs.                             |\n| `postToolUseOutput`      | Inject context after a tool runs (e.g., \"File read successfully\"). |\n| `stopOutput`             | Block Claude from quitting (`decision: 'block'`).                  |\n| `userPromptExpansionOutput` | Inject context when a slash command or MCP prompt is expanded.   |\n| `userPromptSubmitOutput` | Inject context when the user types a message.                      |\n\n### The Logger\n\nThe Logger is **silent by default** — no output to stdout, stderr, or files unless explicitly configured. This design ensures hooks never corrupt the JSON protocol.\n\n**Enable file logging:**\n\n```bash\n# Option A: Environment Variable\nexport CLAUDE_CODE_HOOKS_LOG_FILE=/tmp/claude-hooks.log\n\n# Option B: CLI Argument — hardcodes path into bundle (runtime CLAUDE_CODE_HOOKS_LOG_FILE overrides)\nnpx -y @goodfoot/claude-code-hooks ... --log /tmp/claude-hooks.log\n\n# Option C: CLI Argument — embed the env var name instead of a hardcoded path (good for worktrees)\nnpx -y @goodfoot/claude-code-hooks ... --log-env-var CLAUDE_CODE_HOOKS_LOG_FILE\n```\n\n**View logs:**\n\n```bash\ntail -f /tmp/claude-hooks.log | jq\n```\n\n**Programmatic usage:**\n\nThe `Logger` class can be instantiated directly for testing or advanced use cases:\n\n```typescript\nimport { Logger } from '@goodfoot/claude-code-hooks';\n\n// Silent by default — perfect for unit tests\nconst logger = new Logger();\n\n// With file output (hardcoded path)\nconst fileLogger = new Logger({ logFilePath: '/tmp/my-hooks.log' });\n\n// With dynamic path via env var\nconst envLogger = new Logger({ logEnvVar: 'MY_PLUGIN_LOG_FILE' });\n\n// Subscribe to events programmatically\nconst unsubscribe = logger.on('error', (event) => {\n  sendToMonitoring(event);\n});\n\n// Clean up when done\nunsubscribe();\nfileLogger.close();\n```\n\nSee the skill documentation for event subscription, log levels, and debugging tips.\n\n### Fail-Open Execution (`unexpectedError: \"continue\"`)\n\nBy default, any unexpected runtime failure — malformed stdin, a thrown handler exception, output serialization, the stdout write, or logger cleanup — writes a stack trace to stderr and exits non-zero. For a handler throw specifically, that means exit code 2 (BLOCK), which Claude sees as a blocking failure — disproportionate for a hook whose only job is to add optional context.\n\nOpt a hook into fail-open behavior by passing `unexpectedError: \"continue\"` in its config:\n\n```typescript\nimport { userPromptSubmitHook } from '@goodfoot/claude-code-hooks';\n\nexport default userPromptSubmitHook(\n  {\n    unexpectedError: 'continue',\n    onUnexpectedError(error, phase) {\n      // Best-effort diagnostics. This callback itself can never fail the\n      // invocation — thrown errors here are swallowed.\n    },\n  },\n  async (input, { logger }) => {\n    // ...\n  },\n);\n```\n\nUnder `unexpectedError: \"continue\"`:\n\n- Malformed/unreadable stdin already fails open unconditionally for every hook (independent of this setting) — that behavior is unchanged.\n- A thrown handler exception, an output-serialization error, a stdout write failure, or a logger-cleanup failure is caught, reported to `onUnexpectedError` (if provided) and the runtime logger, and swallowed.\n- The empty output (`{}`, valid for every hook event) is emitted and the process exits `0`.\n- An explicit blocking response the handler itself returns (e.g. `teammateIdleOutput({ stderr: '...' })`) is unaffected — it always writes that message and exits `2`. Only *unexpected* exceptions are ever swallowed, never the handler's own intentional decision.\n- `onUnexpectedError` and the runtime logger are both best-effort: if either one throws, that failure is swallowed too.\n\n`unexpectedError` defaults to `\"error\"` (today's behavior), so existing hooks are unaffected. Only opt in for **advisory enrichment hooks** — ones that add optional context and whose failure should be invisible to the user (`UserPromptSubmit`, `SessionStart`/`SubagentStart` context nudges, `PostToolUse`/`Notification` observers). Do not use it for hooks that make permission, safety, or policy decisions (`PreToolUse`, `PermissionRequest`, blocking `Stop`/`SubagentStop` checks) — a swallowed failure there silently grants the decision the hook was supposed to make. Also avoid it on `WorktreeCreate`/`WorktreeRemove`: their plain-text `rawStdout` wire protocol has no safe generic fallback, so a swallowed failure would write literal `{}` where Claude Code expects a path.\n\n---\n\n## 📁 Recommended Plugin Structure\n\nFor Claude Code plugins, use this directory layout:\n\n```\nplugins/my-plugin/\n├── hooks/\n│   └── src/\n│       ├── block-dangerous.ts\n│       └── inject-context.ts\n├── hooks.json                    # Build output (auto-loaded by plugin)\n└── bin/\n    ├── block-dangerous.abc123.mjs\n    └── inject-context.def456.mjs\n```\n\nBuild command:\n\n```bash\nnpx -y @goodfoot/claude-code-hooks -i \"hooks/src/*.ts\" -o \"./hooks.json\"\n```\n\n---\n\n## 🤝 Coexistence with Other Hooks\n\nThe build tool is designed to **play well with others**:\n\n- **External hooks are preserved**: Hooks not in `__generated.files` are never touched\n- **Atomic writes**: Uses temp-file-then-rename for safe updates\n- **Clean rebuilds**: Only removes files it previously generated\n\nYou can safely:\n\n- Mix TypeScript hooks with shell script hooks in the same `hooks.json`\n- Let multiple tools contribute to the same manifest\n- Manually add hooks without worrying about them being overwritten\n\n---\n\n## 🔍 Debugging Guide\n\n**\"My hook isn't running!\"**\n\n1.  Did you run the build command? (`npx -y @goodfoot/claude-code-hooks ...`)\n2.  Did you `export default` the hook?\n3.  Is the path in `hooks.json` correct for _this_ machine?\n4.  Is the timeout too short? (Units are **milliseconds**, `timeout: 5000` = 5s).\n\n**\"Claude shows an error when my hook runs.\"**\n\n1.  Did you `console.log`? (Check your code).\n2.  Did your hook throw an error? (Uncaught errors exit with code 2, which blocks Claude — unless the hook opts into `unexpectedError: 'continue'`; see \"Fail-Open Execution\" above).\n3.  Check the log file defined in `CLAUDE_CODE_HOOKS_LOG_FILE`.\n\n**\"I can't see the tool input.\"**\n\n1.  Use the logger to dump it: `logger.info('Input', { input })`.\n2.  Remember `input.tool_input` is `unknown`. Cast it safely, or use typed matchers.\n\n**\"My prompt asset import fails in tests.\"**\n\n1.  `text` imports are bundled at build time and return a string. Keep them to small static assets such as prompt preambles.\n2.  If your tests run through Vitest/Vite, configure the same extension there (`.md` as text, or your chosen loader), otherwise `claude-code-hooks` builds can pass while test-time module loading still fails.\n\n---\n\n## 🏗️ Architecture\n\n1.  **CLI (`claude-code-hooks`)**: Scans your TS files, extracts metadata (events, matchers) via AST, and compiles them using `esbuild`.\n    - Supports explicit esbuild loaders for non-code assets via `--loader`.\n    - Ships with `.md=text` enabled for markdown prompt assets.\n2.  **Runtime (`runtime.ts`)**: The compiled files import a runtime wrapper. This wrapper:\n    - Reads `stdin`.\n    - Parses JSON (wire format with snake_case properties).\n    - Injects context (`logger`, and `persistEnvVar`/`persistEnvVars` for SessionStart hooks).\n    - Executes your handler.\n    - Formats the output.\n    - Writes to `stdout` — except on an intentional block (a handler-returned `stderr`, e.g. `teammateIdleOutput({ stderr })`), where nothing is written to `stdout` at all: Claude Code's hook-result parser treats any stdout that parses as valid JSON as success regardless of exit code, so blocking only takes effect when stdout carries no JSON.\n\nThis separation ensures your hooks are fast, type-safe, and isolated.\n","readmeFilename":"README.md"}