{"_id":"@c0nant/claude-hooks","_rev":"17-b49cc87a79e9abc6cf86dfa50da45d85","name":"@c0nant/claude-hooks","dist-tags":{"latest":"0.2.24"},"versions":{"0.1.0":{"name":"@c0nant/claude-hooks","version":"0.1.0","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.1.0","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"081066681358d3781231f5f777942af6487118ce","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.1.0.tgz","fileCount":9,"integrity":"sha512-1AGK698AJdwQC591ZTAAdr+R0KF2+tkQpt+6/krM8huUqLsmkYWoy4pc7Cks3OvXqu+EVnMzNOqKT9a8tXuK7A==","signatures":[{"sig":"MEUCIQCeCf/sONA2M0k/qxM5SuEjP3/9RFGh88c6vgS4ath/uAIgUhR3u9P8GFqHXeS2RXGqrQLjTDIh1viR0Q9QOCee7xM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11288},"engines":{"node":">=18"},"gitHead":"5d8b5a4fcf19cc08ecd40a40d787b6fc426c65b6","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.1.0_1781095551195_0.2564805931277927","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@c0nant/claude-hooks","version":"0.1.1","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.1.1","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"daacd8b01d72a760306d561f391a65da34eeb7bc","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.1.1.tgz","fileCount":9,"integrity":"sha512-hTpLryf6UqdCGafe6+UgKFtIsDgW4CsyNV/31k0hRspgvkRZE7X5S8fZ/l53ZwB6UiNRbo0juK5155sowADW0Q==","signatures":[{"sig":"MEQCIBluMZoTW04v0pnEJd/Y9rtuPhQZbMzoCvhAANXQEc2XAiBryw4uM4/nnxe7zmQ4eaS1xTU8eKP2Ow2RBR48Ua8wSw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12082},"engines":{"node":">=18"},"gitHead":"b97e77dce1a92ab0f973d9e4fa0ce9f7537737cc","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.1.1_1781095988639_0.05095408918737432","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@c0nant/claude-hooks","version":"0.1.2","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.1.2","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"6493bd60b79a9bd7ae85ed24139838c00ff5b1e0","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.1.2.tgz","fileCount":9,"integrity":"sha512-y/ZGQGLHQeveJVpg2JpJDnjLLMVKJRl0ZichgiJegblRG/w8Lk7AhzXagIAXyYOlx0g0BxIjfN9o68la01Kk3g==","signatures":[{"sig":"MEQCIDP33h1+4Is+V+nhcVAZFflcXS+ogIqhaOb2PxSpqYTPAiAX+ZgdJ9N9pd8mpmEcyFaVsjZ70c5McnABgttSi/NbZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12082},"engines":{"node":">=18"},"gitHead":"f9900f4b720d35bb47376c538ef3bea2e995b219","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.1.2_1781096474888_0.4314237933989711","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@c0nant/claude-hooks","version":"0.1.6","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.1.6","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"ee25bec3720a2b1e44d981ea37141c968a29d28a","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.1.6.tgz","fileCount":14,"integrity":"sha512-GMkJqQUJEaOgx6C7aBrPRM6FqtfIqvHvB+J7y1UjFtS6Eb/y3/KnthqOtUzo0PVqFOM6A1heviL1XLUa5010sg==","signatures":[{"sig":"MEUCIHsafdvuMk1pfWbzeN4CaWv2vecniBPJkRXIOV5KXKazAiEA8kaEElFi84ggNJRe8ME7NP4o+s+ZR1xVciHSEa9L/5M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15210},"engines":{"node":">=18"},"gitHead":"2e4bd02f83de27359bf5ac2bc81dc14fed0497d1","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.1.6_1781142877822_0.26510111000845504","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@c0nant/claude-hooks","version":"0.1.7","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.1.7","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"3dffb74997863ebe930ba5e1c7edf8090493a5e5","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.1.7.tgz","fileCount":15,"integrity":"sha512-0LW0aOh8/qVI6xHhxL88e0rkvhp41WdGQKvv24bxbaUxaXha26PO7RzQUvD6lvCsbhI4SP4nY+7BWMibz3IEog==","signatures":[{"sig":"MEUCIHBw97maR4zVAIIG/GeWHQzGI7FGBWHhEk4HgxZSnCaKAiEAzpp6QnaaNBbDtEns6yQ7PuGbm0NGlYeBT0+ee661lII=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16885},"engines":{"node":">=18"},"gitHead":"9bceb46d1cbbb8c000e182f4a05d82e3b6c9678a","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.1.7_1781144083407_0.9434702224426144","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@c0nant/claude-hooks","version":"0.1.8","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.1.8","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"0a4e74c4c77f3a8427785fb7180c6283f88f56ca","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.1.8.tgz","fileCount":15,"integrity":"sha512-ty2zs0flNvxbAIVNipto639h7h7kJTE1yKfuH634ffOM5OmrIMgqnWr7zlpGAWSavwlka5/QjpDkTtsGFIcgsA==","signatures":[{"sig":"MEUCIQDej2JrJktpIZts5J1SEIBCGmGytMZHw9qNQMDnGz286wIgY8clAxH1aQMHTRR/fMeMqqoTPC1ACok2AFdh2URNvWo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16885},"engines":{"node":">=18"},"gitHead":"cd6c5dd2d1b38f8df907bf2998c6309962c43d1f","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.1.8_1781144658711_0.8978533914823621","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@c0nant/claude-hooks","version":"0.1.9","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.1.9","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"8fd7001b8fb043818e59bf4ec890342c43cbce68","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.1.9.tgz","fileCount":15,"integrity":"sha512-GcoUmjiNL2AIz+hzwAbpkiumaLYpjBagtGz8npDUV6RovtyGv0sV0vCIfP6/XfVrrH2fZyh+0nS4MHIvSJK1rw==","signatures":[{"sig":"MEQCIFvY9EJScYbOZbLVf/SyMTO1cVgEQGe1Mu5pusqa7zYVAiAtLiJoi+gpCNZhrvbLZQ6lU4ok2igOgMY33NWNeWpA+g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16885},"engines":{"node":">=18"},"gitHead":"c6fe0ce804ae8e090eb4c2fd7169558c121f0b39","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.1.9_1781144790581_0.3427660546715261","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@c0nant/claude-hooks","version":"0.1.10","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.1.10","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"824f0a3860726854954e81c594588bc16e22c543","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.1.10.tgz","fileCount":15,"integrity":"sha512-xx1tH22Ae6QdZRmIFoy5GzIVEzXR5MWFQohY8GMSQ8PqHfkAAwYxJ3QKeJWI96UovzVZsPxseIOLRqRduYrsUw==","signatures":[{"sig":"MEUCIQDFi+EbkbjqycnqlQlt2p0nITcdWzVBzvLFXHUor33XKwIgb736gwVGe7QRBzPuSOv7XzvvspMbqKuXHkFE2lbKqsw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16886},"engines":{"node":">=18"},"gitHead":"8506f26eb10d0603e6493f3ac9a431fc520da3dc","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.1.10_1781263212885_0.3490959622709835","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@c0nant/claude-hooks","version":"0.1.11","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.1.11","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"f079bfec6ad650df251662f8a818ff6647fdef6a","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.1.11.tgz","fileCount":17,"integrity":"sha512-dio1YLLZZI6+lF4t2aWodTj7DjL+WLUNZVx/02rsrM3Q2Dg7kbly+iWcIb6ime5MApBxrPA/uX8W9RYaZu/I0A==","signatures":[{"sig":"MEUCIB6gmUNue3GQxDwEsRQJH3k1HnLGtFeFjZgg3cwQ8DgfAiEAlf4WIeZJBAmMaeZ87wYMvKFeNX0LL+gdaaTPZTknK1o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18435},"engines":{"node":">=18"},"gitHead":"c8f6923c169c872e190315c550e6f660154e4312","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.1.11_1781263740278_0.6351496367445668","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@c0nant/claude-hooks","version":"0.2.1","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.2.1","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"58af8f9446c2a4990c73787a2b038f98e1328346","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.2.1.tgz","fileCount":19,"integrity":"sha512-FbJ/yf56ciLwoq0zzp+n14/57BE7wMTlco52whI1LcbIl9waj153gWj9NJSry4I5FAtyfAy1BsJOKzPOGbq4Ag==","signatures":[{"sig":"MEQCIAM3HGNA2RYTl8B+5vcR4vpvXbHFYHb6V433sGjB4mqoAiAn8HyBcc2AgR2FmmjPMo1wJRR9692u2+NEarAStHYfbA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20721},"engines":{"node":">=18"},"gitHead":"899efd0f326cf3a88af0bf5c5bbec2306519f307","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.2.1_1781468214338_0.855615981714378","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@c0nant/claude-hooks","version":"0.2.3","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.2.3","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"02e4823b4c9e7bc3c87d9133377a9204041d5fef","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.2.3.tgz","fileCount":19,"integrity":"sha512-4KUwJXL6kwdXLucQqXG8eql8xWBXOXOweQQTNywyIPlyI6A2ugq8DeqTkEAU8zRABxq+D3IrYgZjmEpngjt+Bg==","signatures":[{"sig":"MEQCIHGUUTW4OmC0jGNyxMPfSWmKIjGq1shr+M/w6+uAus7ZAiBgdMOVKVGc82sQXFR3tLeYFdSBeI5cEQnqS2eW0Mkd4g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20724},"engines":{"node":">=18"},"gitHead":"66029707c258e5be7dad8489e95806d08dab02f6","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.2.3_1781468704027_0.6290205141903946","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@c0nant/claude-hooks","version":"0.2.5","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.2.5","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"8e386a355da8b3ccdd4c38777353d5c38cdc69da","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.2.5.tgz","fileCount":17,"integrity":"sha512-yHaGzZDM0SmtLTQULq/1TirGbSE6ONRi6Z8ioRgcvqX6hx08yt+0872t/1J+hO7MSDi6xjz1e9jEne/6f7PqKw==","signatures":[{"sig":"MEUCIQDNa71rw/V/LhwmNG1TNhIw/sZ+oJjms/QC83Ti33ZFCQIgT7CuIWSSxfQkMBrzIqnTmx5kJ6D9dSo/k1pyY8ZrQ60=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":19540},"engines":{"node":">=18"},"gitHead":"c2afa803fa1b6e78c01932c8e37d714afebd4ab3","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.2.5_1781470728801_0.9809055968846327","host":"s3://npm-registry-packages-npm-production"}},"0.2.18":{"name":"@c0nant/claude-hooks","version":"0.2.18","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.2.18","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"4df678300fcfbfd523da3d73172d90399b896d34","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.2.18.tgz","fileCount":18,"integrity":"sha512-xZe5HKfFRZ51APincNI91jKyFJ984Q9yTDYEJrFsuUwr/9eXGFmYCIeKmBP8fpoADPYrQXS1OVppraqSEZp5PA==","signatures":[{"sig":"MEYCIQCT41GLD15YBG6Z7KN0WN+G1MRa9TVC9uw1Hm4zrsAkRAIhAJbVabD6dpoWiiDXEypQN0sZpd8v0Jv1s6a5jxQajKOy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20345},"engines":{"node":">=18"},"gitHead":"d6e8d0f25ac469e8bf388325302f55f4c9ead2f9","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.2.18_1782479578181_0.06760924181666694","host":"s3://npm-registry-packages-npm-production"}},"0.2.19":{"name":"@c0nant/claude-hooks","version":"0.2.19","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.2.19","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"94a46d4ce295805f7078345ec78529299906c4e3","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.2.19.tgz","fileCount":18,"integrity":"sha512-AuqK5YNaROrrG7z8EUDmAUAhqRFX2ImnKoRu8HqrKMGaaRut5cNfQUXSbgQ3nuM8QepfS8BgRNICFkg5AFoq8w==","signatures":[{"sig":"MEUCIQDSVHZPVl7jJDZzp5xsGvyzYRQ7LzbSrF1H+6tKlsDA5QIgH8mpcM+XcxqkONzgmxDhDdGkerfg6JuFt49uRuIO0mI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20333},"engines":{"node":">=18"},"gitHead":"f53685f6cfc989a16162624690e98f3f03a3b62b","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.2.19_1784380849880_0.575708263985635","host":"s3://npm-registry-packages-npm-production"}},"0.2.20":{"name":"@c0nant/claude-hooks","version":"0.2.20","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.2.20","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"3e5f7b989719b813652f70e4d0bca5cfc998a013","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.2.20.tgz","fileCount":18,"integrity":"sha512-q/CMDzhSJ3J8jrymDYuwGOP0Qdx0NvrYe33zZB108g/RI6qQESlAwll+3lmoTLfBZe+gsnEZdQdqZJg3z+KnIg==","signatures":[{"sig":"MEUCIES8A/3dhXJR0twtWk8KKxedyJnYWDvjAFXzILBD56ZFAiEAs5pSd06PuwOXDYNx5jo+X71Ajy/wIF0yOVvRswUVOkw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20473},"engines":{"node":">=18"},"gitHead":"4a97bd5c25466a7dfb06c303afe5396aba7785d9","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.2.20_1784381692059_0.6564343776504635","host":"s3://npm-registry-packages-npm-production"}},"0.2.22":{"name":"@c0nant/claude-hooks","version":"0.2.22","keywords":["claude-code","hooks","ai","claude"],"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","_id":"@c0nant/claude-hooks@0.2.22","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"homepage":"https://github.com/C0nanT/claude-hooks#readme","bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"bin":{"claude-hooks":"bin/claude-hooks.js"},"dist":{"shasum":"b159640288bca13f4c42dc69afd8d7aa2c627353","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.2.22.tgz","fileCount":18,"integrity":"sha512-bZJI0YtCKGNsObW19EEjEL+hOWhtg96SBBNejH57EcAN/cTXQRAt4c4wvFqD35fp1BXM3rbwenlx/EXmTFkkAA==","signatures":[{"sig":"MEQCIBMAyF9/qUtBbYUie+OLd6DGFrxhL1s1XPrG+yFd93NjAiAVv5sVz8Dv+yea8gzsdk4voWiOkVGLuLT1/Xjfs2r4fg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBtaBZ9doS73/fsHW/SD9UrUUDEbCcnUWpC+V2BVh0zbAiB6r0fn2wPBGkKle+PjSyXmTcvc5Zmwcj5/HVfF4PDXRw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20974},"engines":{"node":">=18"},"gitHead":"64c18b14429011c1e36ae882afe9354bcbe71e0c","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-hooks_0.2.22_1791040918100_0.4123957195551977","host":"s3://npm-registry-packages-npm-production"}},"0.2.24":{"_id":"@c0nant/claude-hooks@0.2.24","bin":{"claude-hooks":"bin/claude-hooks.js"},"bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"dist":{"shasum":"d444f4957f1d5a5a39378e9bfaac344221dec506","tarball":"https://registry.npmjs.org/@c0nant/claude-hooks/-/claude-hooks-0.2.24.tgz","fileCount":18,"integrity":"sha512-/MxajB2PvDcoDzAlb30lklpuAMcHUpghwUiIi+kLrxt9ZkzR61nLSOI580pcVIJJJuhyFZLtaNppw2j8dbBSCQ==","signatures":[{"sig":"MEUCIC+Ty5Lbr1Z0B9v1lEMK6X/tZtMI6vD/kEkqDdfdaW1mAiEA/1J9/7Rf3MOINGJVDTzC//gDQ+mjrSCFpOUYsSPAtGY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAHE1EbseJreWhdnESLIMnU8PheayKkxjvC2j8EJwR4mAiBYaRjT5j19WBdyfrrElGlJrShwaZq2h+46I5bqxGC4hg=="}],"unpackedSize":20974},"name":"@c0nant/claude-hooks","author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"engines":{"node":">=18"},"gitHead":"400bcb4b34932232587b965fdef1cb2c9c280738","license":"MIT","version":"0.2.24","_npmUser":{"name":"c0nant","email":"conantorreswf@gmail.com"},"homepage":"https://github.com/C0nanT/claude-hooks#readme","keywords":["claude-code","hooks","ai","claude"],"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"_npmVersion":"10.8.2","description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","directories":{},"maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/claude-hooks_0.2.24_1791041043340_0.7966643018539772"}}},"time":{"created":"2026-06-10T12:45:50.931Z","modified":"2026-10-03T15:24:03.589Z","0.1.0":"2026-06-10T12:45:51.357Z","0.1.1":"2026-06-10T12:53:08.815Z","0.1.2":"2026-06-10T13:01:15.027Z","0.1.6":"2026-06-11T01:54:37.953Z","0.1.7":"2026-06-11T02:14:43.544Z","0.1.8":"2026-06-11T02:24:18.878Z","0.1.9":"2026-06-11T02:26:30.753Z","0.1.10":"2026-06-12T11:20:13.033Z","0.1.11":"2026-06-12T11:29:00.456Z","0.2.1":"2026-06-14T20:16:54.482Z","0.2.3":"2026-06-14T20:25:04.170Z","0.2.5":"2026-06-14T20:58:48.938Z","0.2.18":"2026-06-26T13:12:58.329Z","0.2.19":"2026-07-18T13:20:50.000Z","0.2.20":"2026-07-18T13:34:52.217Z","0.2.22":"2026-10-03T15:21:58.192Z","0.2.24":"2026-10-03T15:24:03.426Z"},"bugs":{"url":"https://github.com/C0nanT/claude-hooks/issues"},"author":{"name":"Conan Torres","email":"conantorreswf@gmail.com"},"license":"MIT","homepage":"https://github.com/C0nanT/claude-hooks#readme","keywords":["claude-code","hooks","ai","claude"],"repository":{"url":"git+https://github.com/C0nanT/claude-hooks.git","type":"git"},"description":"Portable, removable Claude Code hooks — caveman auto-start and git guardrails, managed via npx.","maintainers":[{"name":"c0nant","email":"conantorreswf@gmail.com"}],"readme":"# claude-hooks\n\nClaude Code hooks companion to [C0nanT/skills](https://github.com/C0nanT/skills). Wires the caveman and git-guardrails hooks into `settings.json` automatically — no hand-editing.\n\n## Prerequisites\n\nThe `git-guardrails` hook is self-contained — it bundles its own script, no skills required.\n\nThe `caveman` hook reads a skill asset at runtime (`~/.claude/skills/caveman/SKILL.md`). If you want it, **install [C0nanT/skills](https://github.com/C0nanT/skills) first** — without it, the caveman hook no-ops:\n\n```bash\nnpx skills@latest add C0nanT/skills\n```\n\nRequires `jq`. On Ubuntu/WSL: `sudo apt-get install -y jq`\n\n## Install\n\n```bash\nnpx @c0nant/claude-hooks install\n```\n\n## Bundled hooks\n\n| Hook | Event | What it does |\n|------|-------|-------------|\n| `caveman` | `SessionStart` | Injects the caveman ruleset as hidden context — agent starts in token-saving mode every session without typing `/caveman` |\n| `git-guardrails` | `PreToolUse/Bash` | Blocks destructive git commands (`push`, `reset --hard`, `clean -f`, `branch -D`, `checkout .`, `restore .`) before execution |\n\nThe `caveman` hook no-ops gracefully if its skill asset is absent; `git-guardrails` bundles its own script and needs nothing else.\n\n## Commands\n\n```bash\nnpx @c0nant/claude-hooks install              # install all hooks\nnpx @c0nant/claude-hooks install git-guardrails  # one hook only\nnpx @c0nant/claude-hooks uninstall            # remove all\nnpx @c0nant/claude-hooks uninstall caveman    # remove one\nnpx @c0nant/claude-hooks list                 # show installed\n```\n\nInstalls are idempotent — re-running syncs without duplicating. Uninstall is surgical — only touches what this tool added.\n\n## Project-scoped install\n\n```bash\nCLAUDE_SETTINGS=.claude/settings.json npx @c0nant/claude-hooks install\n```\n\n## Development\n\n### Setup\n\n```bash\ngit config core.hooksPath .githooks   # pre-push runs tests\nbash test/run.sh                      # requires jq\n```\n\nNo `npm install` — zero runtime dependencies beyond Node ≥18 and `jq`.\n\n### Day-to-day workflow\n\n| Where you push | What happens |\n|----------------|--------------|\n| Branch or PR | CI runs `test/run.sh` only — no version bump, no npm publish |\n| `main` | CI runs tests → bumps version → publishes to npm |\n\nWork on a branch, open a PR (or push directly if solo), merge to `main` when green.\n\n### Releasing\n\nFully automatic — CI decides the bump (patch/minor/major) from your commit\nmessages since the last tag and publishes on every push to `main`:\n\n```\npush to main → tests → detect bump from commits → version bump → tag → npm publish\n```\n\n**Never bump `package.json` manually.** The bump type is driven entirely by\ncommit message prefixes — see [CONTRIBUTING.md](CONTRIBUTING.md) for the\nconvention (`fix:` → patch, `feat:` → minor, `feat!:`/`BREAKING CHANGE` →\nmajor). `./release.sh` still exists as a manual escape hatch if you ever need\nto force a specific bump, but it's no longer part of the normal flow.\n\nRequires `NPM_TOKEN` in GitHub Actions secrets.\n","readmeFilename":"README.md"}