{"_id":"@asafhm/agentlog-core","_rev":"10-67f2f24badf408d3cbeebced9901e540","name":"@asafhm/agentlog-core","dist-tags":{"alpha":"0.2.3-alpha.2","latest":"0.2.7"},"versions":{"0.2.0":{"name":"@asafhm/agentlog-core","version":"0.2.0","keywords":["ai","agent","audit","logging","tamper-evident","hash-chain"],"author":{"name":"Asaf Haim"},"license":"MIT","_id":"@asafhm/agentlog-core@0.2.0","maintainers":[{"name":"asafhm","email":"asi.h42@gmail.com"}],"homepage":"https://github.com/asafhaim/agentlog#readme","bugs":{"url":"https://github.com/asafhaim/agentlog/issues"},"dist":{"shasum":"ff02b3a05ea55b71d6e17572b15137a6caa2f152","tarball":"https://registry.npmjs.org/@asafhm/agentlog-core/-/agentlog-core-0.2.0.tgz","fileCount":3,"integrity":"sha512-Jal5IOZoRcM2HoafWhHTBq8jbmbql6piHO/bH2WKXzZnhUW7k+xNeXSW0sAJTaiVcpIot3Pn4Bf6BFg/qFsOYA==","signatures":[{"sig":"MEQCIEf/NdV400uIAtLi8pXSLObVJUW5fHRWc3xxoNnq0guFAiBPSvrxg/DOp9cnKru68wMTGykRvZOjkhkL/Ctpyc/H5Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6940},"main":"./dist/index.js","type":"module","_from":"file:asafhm-agentlog-core-0.2.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup"},"_npmUser":{"name":"asafhm","email":"asi.h42@gmail.com"},"_resolved":"/private/var/folders/qf/cxzp0ndd57935_gg0cj08w0m0000gn/T/d1b0644418b8e0bfafe0446a3c1d0441/asafhm-agentlog-core-0.2.0.tgz","_integrity":"sha512-Jal5IOZoRcM2HoafWhHTBq8jbmbql6piHO/bH2WKXzZnhUW7k+xNeXSW0sAJTaiVcpIot3Pn4Bf6BFg/qFsOYA==","repository":{"url":"git+https://github.com/asafhaim/agentlog.git","type":"git"},"_npmVersion":"10.9.4","description":"Tamper-evident audit logging for AI agents — hash-chained JSONL run files","directories":{},"_nodeVersion":"22.21.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/agentlog-core_0.2.0_1777241498250_0.516545423088236","host":"s3://npm-registry-packages-npm-production"}},"0.2.1-alpha.0":{"name":"@asafhm/agentlog-core","version":"0.2.1-alpha.0","keywords":["ai","agent","audit","logging","tamper-evident","hash-chain"],"author":{"name":"Asaf Haim"},"license":"MIT","_id":"@asafhm/agentlog-core@0.2.1-alpha.0","maintainers":[{"name":"asafhm","email":"asi.h42@gmail.com"}],"homepage":"https://github.com/asafhaim/agentlog#readme","bugs":{"url":"https://github.com/asafhaim/agentlog/issues"},"dist":{"shasum":"e583f8af6f6667d087810d2e64ea2060d9a81810","tarball":"https://registry.npmjs.org/@asafhm/agentlog-core/-/agentlog-core-0.2.1-alpha.0.tgz","fileCount":3,"integrity":"sha512-OxUQR7B6sal+YCSVxPWYe1QNRlII1SU43cXaP+qJo27+kJzqY/TqO6tHr16rqZMWCGrFIiSdUAVoYHLlcrsvtQ==","signatures":[{"sig":"MEQCIFK0N8r6R095J5Kbu+6AKeNiWziUjmT3V9C2d1dn3kdLAiBZj1ZswTtUGft4i55CR4tEqVS1ULsLydpIaRpvS27Rjg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7912},"main":"./dist/index.js","type":"module","_from":"file:asafhm-agentlog-core-0.2.1-alpha.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup"},"_npmUser":{"name":"asafhm","email":"asi.h42@gmail.com"},"_resolved":"/private/var/folders/qf/cxzp0ndd57935_gg0cj08w0m0000gn/T/955eaf821a3163a1c46ddeb13b59e612/asafhm-agentlog-core-0.2.1-alpha.0.tgz","_integrity":"sha512-OxUQR7B6sal+YCSVxPWYe1QNRlII1SU43cXaP+qJo27+kJzqY/TqO6tHr16rqZMWCGrFIiSdUAVoYHLlcrsvtQ==","repository":{"url":"git+https://github.com/asafhaim/agentlog.git","type":"git"},"_npmVersion":"10.9.4","description":"Tamper-evident audit logging for AI agents — hash-chained JSONL run files","directories":{},"_nodeVersion":"22.21.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/agentlog-core_0.2.1-alpha.0_1777246456730_0.4838716303133368","host":"s3://npm-registry-packages-npm-production"}},"0.2.3-alpha.0":{"name":"@asafhm/agentlog-core","version":"0.2.3-alpha.0","keywords":["ai","agent","audit","logging","tamper-evident","hash-chain"],"author":{"name":"Asaf Haim"},"license":"MIT","_id":"@asafhm/agentlog-core@0.2.3-alpha.0","maintainers":[{"name":"asafhm","email":"asi.h42@gmail.com"}],"homepage":"https://github.com/asf-hm/agentlog#readme","bugs":{"url":"https://github.com/asf-hm/agentlog/issues"},"dist":{"shasum":"a1bd6abd89c29d03f363ae5b7eaae437c6d69788","tarball":"https://registry.npmjs.org/@asafhm/agentlog-core/-/agentlog-core-0.2.3-alpha.0.tgz","fileCount":3,"integrity":"sha512-BEhnVHB0iSJkykmPQqECQNB+kx1bn07k2/PvjRQUG+bE9BOBQO5vWZhcEvAJwhU2f3OeJpTND882vRbtVt6Nog==","signatures":[{"sig":"MEUCIAR5Zmh0GtLNiQY5+pHdKC5QKAQh7Jwa3It+WRa7dSf1AiEAiMKRBGqhiRUvSEzlwrfQ87r9d67hGpt35vrbY4pHbQM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9356},"main":"./dist/index.js","type":"module","_from":"file:asafhm-agentlog-core-0.2.3-alpha.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup"},"_npmUser":{"name":"asafhm","email":"asi.h42@gmail.com"},"_resolved":"/private/var/folders/qf/cxzp0ndd57935_gg0cj08w0m0000gn/T/1abc01ad49178199b94d4ff55a1e0ab1/asafhm-agentlog-core-0.2.3-alpha.0.tgz","_integrity":"sha512-BEhnVHB0iSJkykmPQqECQNB+kx1bn07k2/PvjRQUG+bE9BOBQO5vWZhcEvAJwhU2f3OeJpTND882vRbtVt6Nog==","repository":{"url":"git+https://github.com/asf-hm/agentlog.git","type":"git"},"_npmVersion":"10.9.4","description":"Tamper-evident audit logging for AI agents — hash-chained JSONL run files","directories":{},"_nodeVersion":"22.21.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/agentlog-core_0.2.3-alpha.0_1777378964841_0.684765037052687","host":"s3://npm-registry-packages-npm-production"}},"0.2.3-alpha.1":{"name":"@asafhm/agentlog-core","version":"0.2.3-alpha.1","keywords":["ai","agent","audit","logging","tamper-evident","hash-chain"],"author":{"name":"Asaf Haim"},"license":"MIT","_id":"@asafhm/agentlog-core@0.2.3-alpha.1","maintainers":[{"name":"asafhm","email":"asi.h42@gmail.com"}],"homepage":"https://github.com/asafhaim/agentlog#readme","bugs":{"url":"https://github.com/asafhaim/agentlog/issues"},"dist":{"shasum":"c7060daefc37f4a46f168d8328395d28bda9ce45","tarball":"https://registry.npmjs.org/@asafhm/agentlog-core/-/agentlog-core-0.2.3-alpha.1.tgz","fileCount":3,"integrity":"sha512-98ZtD4ghK3Fx+QOX6VrRS2yEvqP16/NQere93+l1PBT+gINtg+xXr3uawpRsX8037d2vNkOyLNIa2nb42AVLNQ==","signatures":[{"sig":"MEQCID+MLx5O5PdJzcVk5K6QQZBWua91M7krUQokDDN6uAMoAiBuUQpL2bAxwalmT6dJiH8DbXEODWGT8Yxd35O/6arVgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9358},"main":"./dist/index.js","type":"module","_from":"file:asafhm-agentlog-core-0.2.3-alpha.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup"},"_npmUser":{"name":"asafhm","email":"asi.h42@gmail.com"},"_resolved":"/private/var/folders/qf/cxzp0ndd57935_gg0cj08w0m0000gn/T/cdf3b1abac24d74f9fb8ad7f30305e61/asafhm-agentlog-core-0.2.3-alpha.1.tgz","_integrity":"sha512-98ZtD4ghK3Fx+QOX6VrRS2yEvqP16/NQere93+l1PBT+gINtg+xXr3uawpRsX8037d2vNkOyLNIa2nb42AVLNQ==","repository":{"url":"git+https://github.com/asafhaim/agentlog.git","type":"git"},"_npmVersion":"10.9.4","description":"Tamper-evident audit logging for AI agents — hash-chained JSONL run files","directories":{},"_nodeVersion":"22.21.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/agentlog-core_0.2.3-alpha.1_1777380622972_0.342682101823627","host":"s3://npm-registry-packages-npm-production"}},"0.2.3-alpha.2":{"name":"@asafhm/agentlog-core","version":"0.2.3-alpha.2","keywords":["ai","agent","audit","logging","tamper-evident","hash-chain"],"author":{"name":"Asaf Haim"},"license":"MIT","_id":"@asafhm/agentlog-core@0.2.3-alpha.2","maintainers":[{"name":"asafhm","email":"asi.h42@gmail.com"}],"homepage":"https://github.com/asafhaim/agentlog#readme","bugs":{"url":"https://github.com/asafhaim/agentlog/issues"},"dist":{"shasum":"1ddcc33e1ed2e8e8e0da21389997dde7a7cfbc85","tarball":"https://registry.npmjs.org/@asafhm/agentlog-core/-/agentlog-core-0.2.3-alpha.2.tgz","fileCount":4,"integrity":"sha512-ABhqMOIl3GQCExmxzMRlJGHJvZGFLFjYt69cgyRrO99T+ejHCgn6CqqS4VMzhz0lYuaTFX43nCA6WGxI0/OZew==","signatures":[{"sig":"MEQCIGold/YptLvm3wvvXPe9u65GZ6QRg0NZ03qUBxV/aJ6GAiBj+BpDG3hn7I7ZRDm49oQGPp64iCD3Uaa3fqs2qZ05hw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15415},"main":"./dist/index.js","type":"module","_from":"file:asafhm-agentlog-core-0.2.3-alpha.2.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup"},"_npmUser":{"name":"asafhm","email":"asi.h42@gmail.com"},"_resolved":"/private/var/folders/qf/cxzp0ndd57935_gg0cj08w0m0000gn/T/4cce8780a02d85e60fba0dde65f22a8d/asafhm-agentlog-core-0.2.3-alpha.2.tgz","_integrity":"sha512-ABhqMOIl3GQCExmxzMRlJGHJvZGFLFjYt69cgyRrO99T+ejHCgn6CqqS4VMzhz0lYuaTFX43nCA6WGxI0/OZew==","repository":{"url":"git+https://github.com/asafhaim/agentlog.git","type":"git"},"_npmVersion":"10.9.4","description":"Tamper-evident audit logging for AI agents — hash-chained JSONL run files","directories":{},"_nodeVersion":"22.21.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"vitest":"^4.1.5","@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/agentlog-core_0.2.3-alpha.2_1777380760034_0.9020167669684198","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@asafhm/agentlog-core","version":"0.2.3","keywords":["ai","agent","audit","logging","tamper-evident","hash-chain"],"author":{"name":"Asaf Haim"},"license":"MIT","_id":"@asafhm/agentlog-core@0.2.3","maintainers":[{"name":"asafhm","email":"asi.h42@gmail.com"}],"homepage":"https://github.com/asafhaim/agentlog#readme","bugs":{"url":"https://github.com/asafhaim/agentlog/issues"},"dist":{"shasum":"171c8a8203ff314a7146fc9398f27171ccbba9f8","tarball":"https://registry.npmjs.org/@asafhm/agentlog-core/-/agentlog-core-0.2.3.tgz","fileCount":4,"integrity":"sha512-JLbDGOxKMeAfcGo2Y8OgWWaH8Osi/oZDurzRAxStIg7Mf+su9z/lne3ByuG+XzAfwgeANWgejhRWIQCvy3BGww==","signatures":[{"sig":"MEUCIQDH2CI/G+PoOzUtq3rJCfU3wi/HvzweQ8xV+ESWyuGmOgIgFHqe/4Z4QOf5YaK4zos76u8jw5RvGOMtLjfvQvQ2+CY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15407},"main":"./dist/index.js","type":"module","_from":"file:asafhm-agentlog-core-0.2.3.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup"},"_npmUser":{"name":"asafhm","email":"asi.h42@gmail.com"},"_resolved":"/private/var/folders/qf/cxzp0ndd57935_gg0cj08w0m0000gn/T/4b0ac95361b8af016a1f15a70e0d3887/asafhm-agentlog-core-0.2.3.tgz","_integrity":"sha512-JLbDGOxKMeAfcGo2Y8OgWWaH8Osi/oZDurzRAxStIg7Mf+su9z/lne3ByuG+XzAfwgeANWgejhRWIQCvy3BGww==","repository":{"url":"git+https://github.com/asafhaim/agentlog.git","type":"git"},"_npmVersion":"10.9.4","description":"Tamper-evident audit logging for AI agents — hash-chained JSONL run files","directories":{},"_nodeVersion":"22.21.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/agentlog-core_0.2.3_1777381101958_0.6818022284953082","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@asafhm/agentlog-core","version":"0.2.4","keywords":["ai","agent","audit","logging","tamper-evident","hash-chain"],"author":{"name":"Asaf Haim"},"license":"MIT","_id":"@asafhm/agentlog-core@0.2.4","maintainers":[{"name":"asafhm","email":"asi.h42@gmail.com"}],"homepage":"https://github.com/asafhaim/agentlog#readme","bugs":{"url":"https://github.com/asafhaim/agentlog/issues"},"dist":{"shasum":"4214382f23a86661aa7769390c30322a89790e4e","tarball":"https://registry.npmjs.org/@asafhm/agentlog-core/-/agentlog-core-0.2.4.tgz","fileCount":4,"integrity":"sha512-ogz6NLm25lVaPLPqxwIJo+jokv5s1qZDPdKex2j7tk8rC5RYaPouVMZV53zSpDhZSW6Br2EsXHBeY3lToHyNHg==","signatures":[{"sig":"MEQCIC7ntN29CPb6WI8EiO/VGA8DvVjx0jyXDgYX+9SxZyrKAiAHVWWxNLPGhALTGEQSJfaV8Bm4fMGQ3tYFixzPWe80Yg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15715},"main":"./dist/index.js","type":"module","_from":"file:asafhm-agentlog-core-0.2.4.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup"},"_npmUser":{"name":"asafhm","email":"asi.h42@gmail.com"},"_resolved":"/private/var/folders/qf/cxzp0ndd57935_gg0cj08w0m0000gn/T/321d58f15175089211018a449d8c52bc/asafhm-agentlog-core-0.2.4.tgz","_integrity":"sha512-ogz6NLm25lVaPLPqxwIJo+jokv5s1qZDPdKex2j7tk8rC5RYaPouVMZV53zSpDhZSW6Br2EsXHBeY3lToHyNHg==","repository":{"url":"git+https://github.com/asafhaim/agentlog.git","type":"git"},"_npmVersion":"10.9.4","description":"Tamper-evident audit logging for AI agents — hash-chained JSONL run files","directories":{},"_nodeVersion":"22.21.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/agentlog-core_0.2.4_1777381398695_0.3353610067391344","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@asafhm/agentlog-core","version":"0.2.5","keywords":["ai","agent","audit","logging","tamper-evident","hash-chain"],"author":{"name":"Asaf Haim"},"license":"MIT","_id":"@asafhm/agentlog-core@0.2.5","maintainers":[{"name":"asafhm","email":"asi.h42@gmail.com"}],"homepage":"https://github.com/asf-hm/agentlog#readme","bugs":{"url":"https://github.com/asf-hm/agentlog/issues"},"dist":{"shasum":"f0fef96e88af0a5bdf85a12fd043d2b750a7c2d9","tarball":"https://registry.npmjs.org/@asafhm/agentlog-core/-/agentlog-core-0.2.5.tgz","fileCount":4,"integrity":"sha512-c5Um/xXmBajbLrCDLyQLHEV/lQ6SP9geqAHsYaaVcFdBmI6vdPuXPY6jbmGfBuqL6e/n1UzImqlXteBlDpid8A==","signatures":[{"sig":"MEQCID2wlSBycQtZGtgHLMx4TP9LKIlJ6qFu8B+1GSwzAfYRAiA3FoH8eSeSA90l2KUpHuAJ8dSalVfU2wAblSIDODuMiQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15713},"main":"./dist/index.js","type":"module","_from":"file:asafhm-agentlog-core-0.2.5.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup"},"_npmUser":{"name":"asafhm","email":"asi.h42@gmail.com"},"_resolved":"/private/var/folders/qf/cxzp0ndd57935_gg0cj08w0m0000gn/T/020acc677a08cbb009c9e0e6088d76d8/asafhm-agentlog-core-0.2.5.tgz","_integrity":"sha512-c5Um/xXmBajbLrCDLyQLHEV/lQ6SP9geqAHsYaaVcFdBmI6vdPuXPY6jbmGfBuqL6e/n1UzImqlXteBlDpid8A==","repository":{"url":"git+https://github.com/asf-hm/agentlog.git","type":"git"},"_npmVersion":"10.9.4","description":"Tamper-evident audit logging for AI agents — hash-chained JSONL run files","directories":{},"_nodeVersion":"22.21.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/agentlog-core_0.2.5_1777381646329_0.910846989337746","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@asafhm/agentlog-core","version":"0.2.6","keywords":["ai","agent","audit","logging","tamper-evident","hash-chain"],"author":{"name":"Asaf Haim"},"license":"MIT","_id":"@asafhm/agentlog-core@0.2.6","maintainers":[{"name":"asafhm","email":"asi.h42@gmail.com"}],"homepage":"https://github.com/asf-hm/agentlog#readme","bugs":{"url":"https://github.com/asf-hm/agentlog/issues"},"dist":{"shasum":"a8d5a5484c9e24e87195bb3a736ca556e8af4a2f","tarball":"https://registry.npmjs.org/@asafhm/agentlog-core/-/agentlog-core-0.2.6.tgz","fileCount":4,"integrity":"sha512-8AtIflicGPjhPrrjxUKgs3JWV1mKfgMqn0oJsEhw03WUCzYFDfP28BUylhCsJj2lRvj9WYrofa7d1X8i9a1BZA==","signatures":[{"sig":"MEYCIQC9jNFiuwdUQgGPZxRR0UvKz3TIqky8HFLEvZ3gM7Fz/QIhALR0OQ1oVn7eT+N7tUft7EjjKFXtaJe8vbdxlLamNsme","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16338},"main":"./dist/index.js","type":"module","_from":"file:asafhm-agentlog-core-0.2.6.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup"},"_npmUser":{"name":"asafhm","email":"asi.h42@gmail.com"},"_resolved":"/private/var/folders/qf/cxzp0ndd57935_gg0cj08w0m0000gn/T/38e16efa6a8ad135eafbf82aa7be1e85/asafhm-agentlog-core-0.2.6.tgz","_integrity":"sha512-8AtIflicGPjhPrrjxUKgs3JWV1mKfgMqn0oJsEhw03WUCzYFDfP28BUylhCsJj2lRvj9WYrofa7d1X8i9a1BZA==","repository":{"url":"git+https://github.com/asf-hm/agentlog.git","type":"git"},"_npmVersion":"10.9.4","description":"Tamper-evident audit logging for AI agents — hash-chained JSONL run files","directories":{},"_nodeVersion":"22.21.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","@types/node":"^25.6.0"},"_npmOperationalInternal":{"tmp":"tmp/agentlog-core_0.2.6_1777381864063_0.3621654409981012","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"@asafhm/agentlog-core","version":"0.2.7","description":"Tamper-evident audit logging for AI agents — hash-chained JSONL run files","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}},"keywords":["ai","agent","audit","logging","tamper-evident","hash-chain"],"author":{"name":"Asaf Haim"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/asf-hm/agentlog.git"},"devDependencies":{"@types/node":"^25.6.0","vitest":"^4.1.5"},"scripts":{"build":"tsup","dev":"tsup --watch","test":"vitest run"},"_id":"@asafhm/agentlog-core@0.2.7","bugs":{"url":"https://github.com/asf-hm/agentlog/issues"},"homepage":"https://github.com/asf-hm/agentlog#readme","_integrity":"sha512-2dTh5/9k9E089DxEAwDyd7gvWpFhq2TgX1I7nh5AZWFMqgjdixjUjbii56FbpVGxZA8VyjdEnvhMPuWtDKE/IA==","_resolved":"/private/var/folders/qf/cxzp0ndd57935_gg0cj08w0m0000gn/T/18e712de8219543fd80bccd9ce13b8d5/asafhm-agentlog-core-0.2.7.tgz","_from":"file:asafhm-agentlog-core-0.2.7.tgz","_nodeVersion":"22.21.1","_npmVersion":"10.9.4","dist":{"integrity":"sha512-2dTh5/9k9E089DxEAwDyd7gvWpFhq2TgX1I7nh5AZWFMqgjdixjUjbii56FbpVGxZA8VyjdEnvhMPuWtDKE/IA==","shasum":"6e2856b2d248efe3b265e5e62fa27c0b49cba009","tarball":"https://registry.npmjs.org/@asafhm/agentlog-core/-/agentlog-core-0.2.7.tgz","fileCount":4,"unpackedSize":16641,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDoBBqBXvSUNnG5dP17zPCLd1S1aQ3P/vWMEkyhspxThQIhAINjd1JXbgcz4QtrPs5SAQIzVReeERMX2f/yRbB87wd0"}]},"_npmUser":{"name":"asafhm","email":"asi.h42@gmail.com"},"directories":{},"maintainers":[{"name":"asafhm","email":"asi.h42@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/agentlog-core_0.2.7_1777382351057_0.21800213329885243"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-26T22:11:38.100Z","modified":"2026-04-28T13:19:11.308Z","0.2.0":"2026-04-26T22:11:38.470Z","0.2.1-alpha.0":"2026-04-26T23:34:16.876Z","0.2.3-alpha.0":"2026-04-28T12:22:44.983Z","0.2.3-alpha.1":"2026-04-28T12:50:23.100Z","0.2.3-alpha.2":"2026-04-28T12:52:40.195Z","0.2.3":"2026-04-28T12:58:22.122Z","0.2.4":"2026-04-28T13:03:18.841Z","0.2.5":"2026-04-28T13:07:26.478Z","0.2.6":"2026-04-28T13:11:04.252Z","0.2.7":"2026-04-28T13:19:11.201Z"},"bugs":{"url":"https://github.com/asf-hm/agentlog/issues"},"author":{"name":"Asaf Haim"},"license":"MIT","homepage":"https://github.com/asf-hm/agentlog#readme","keywords":["ai","agent","audit","logging","tamper-evident","hash-chain"],"repository":{"type":"git","url":"git+https://github.com/asf-hm/agentlog.git"},"description":"Tamper-evident audit logging for AI agents — hash-chained JSONL run files","maintainers":[{"name":"asafhm","email":"asi.h42@gmail.com"}],"readme":"# agentlog\n\nLocal tamper-evident audit logs for AI agent runs.\n\nagentlog records prompts, tool calls, responses, and errors as hash-chained JSONL files on disk. Use it to debug what happened, inspect runs locally, and verify that a log was not edited after the fact.\n\nNot a transcript viewer. Each run is a verifiable chain — any edit or deletion breaks verification.\n\n- Local files, no cloud service\n- Hash-chained events for tamper evidence\n- Vercel AI SDK integration\n- CLI verification and timeline view\n- Local Studio UI for browsing runs\n\nRuns are written to `.agentlog/runs/*.jsonl` and gitignored by default.\n\n---\n\n## 2-minute start\n\n```bash\nnpm install @asafhm/agentlog-core @asafhm/agentlog-vercel-ai\n```\n\n```ts\nimport { generateText } from 'ai';\nimport { openai } from '@ai-sdk/openai';\nimport { createAgentLogger } from '@asafhm/agentlog-vercel-ai';\n\nconst { telemetry, onError } = createAgentLogger({ agentName: 'my-agent' });\n\ntry {\n  const { text } = await generateText({\n    model: openai('gpt-4o-mini'),\n    prompt: 'Explain SQL joins',\n    experimental_telemetry: telemetry,\n  });\n  console.log(text);\n} catch (err) {\n  onError(err);\n  throw err;\n}\n// → .agentlog/runs/<runId>.jsonl\n```\n\nInspect the run:\n\n```bash\nnpx agentlog view .agentlog/runs/<runId>.jsonl\n```\n\n```\n[0] 2026-04-28 12:00:00Z  run_start\n[1] 2026-04-28 12:00:01Z  prompt\n      model: {\"provider\":\"openai\",\"modelId\":\"gpt-4o-mini\"}\n[2] 2026-04-28 12:00:03Z  response  (1821ms)\n      usage: {\"inputTokens\":89,\"outputTokens\":18}\n[3] 2026-04-28 12:00:03Z  run_end\n      status: \"success\"\n```\n\nVerify it wasn't edited:\n\n```bash\nnpx agentlog verify .agentlog/runs/<runId>.jsonl\n```\n\n```\n✓ Valid — 4 events verified\n```\n\n---\n\n## Why not just logs?\n\n- Console logs are unstructured and hard to replay\n- Observability tools usually require an external service\n- Normal log files can be silently edited after the fact\n- agentlog writes one local, hash-chained timeline per agent run — readable by humans, verifiable by machines\n\n---\n\n## Packages\n\n| Package | Description |\n|---|---|\n| `@asafhm/agentlog-core` | Core logger — create runs, append events, verify files |\n| `@asafhm/agentlog-vercel-ai` | Vercel AI SDK adapter for `generateText` and `streamText` |\n| `@asafhm/agentlog` | CLI — `verify`, `view`, and `studio` commands |\n\n---\n\n## Vercel AI SDK\n\n### generateText\n\n```ts\nimport { generateText } from 'ai';\nimport { openai } from '@ai-sdk/openai';\nimport { createAgentLogger } from '@asafhm/agentlog-vercel-ai';\n\nconst { telemetry, onError } = createAgentLogger({ agentName: 'my-agent' });\n\ntry {\n  const { text } = await generateText({\n    model: openai('gpt-4o-mini'),\n    prompt: 'Explain SQL joins',\n    experimental_telemetry: telemetry,\n  });\n  console.log(text);\n} catch (err) {\n  onError(err);\n  throw err;\n}\n```\n\n### streamText\n\n`onError` plugs in directly — no try/catch needed:\n\n```ts\nimport { streamText } from 'ai';\nimport { openai } from '@ai-sdk/openai';\nimport { createAgentLogger } from '@asafhm/agentlog-vercel-ai';\n\nconst { telemetry, onError } = createAgentLogger({ agentName: 'stream-agent' });\n\nconst result = streamText({\n  model: openai('gpt-4o-mini'),\n  prompt: 'Explain SQL joins',\n  experimental_telemetry: telemetry,\n  onError,\n});\n\nfor await (const chunk of result.textStream) {\n  process.stdout.write(chunk);\n}\n```\n\nBy default, agentlog records metadata only: timestamps, event types, durations, and tool names. No prompt content is captured unless you opt in — see [Capture modes](#capture-modes).\n\n---\n\n## Core API\n\nFor use outside the Vercel AI SDK:\n\n```ts\nimport { createRun, verifyFile } from '@asafhm/agentlog-core';\n\nconst run = createRun({ agentName: 'my-agent' });\nrun.append('prompt', { model: 'gpt-4o' });\nrun.append('response', { usage: { promptTokens: 5, completionTokens: 20 } });\nrun.end('success');\n\nconst result = await verifyFile(`.agentlog/runs/${run.runId}.jsonl`);\nconsole.log(result); // { valid: true, eventsChecked: 4 }\n```\n\n---\n\n## Inspect and verify\n\n```bash\nnpx agentlog view .agentlog/runs/<runId>.jsonl    # human-readable timeline\nnpx agentlog verify .agentlog/runs/<runId>.jsonl  # exits 1 if tampered\nnpx agentlog studio                               # browser UI at http://127.0.0.1:3001\n```\n\n---\n\n## Studio\n\n```bash\nnpx agentlog studio\n```\n\nOpens `http://127.0.0.1:3001` — a local UI showing all runs, event timelines, and verification status.\n\n**Run list** — every run with its verify status at a glance:\n\n![agentlog studio run list](docs/studio-runs.png)\n\n**Event timeline** — what the agent actually did, step by step:\n\n![agentlog studio timeline](docs/studio-timeline.png)\n\n---\n\n## Capture modes\n\n| Mode | What is recorded |\n|---|---|\n| `metadata` (default) | Timestamps, event types, durations, tool names |\n| `full` | Everything above plus prompts, responses, tool inputs/outputs |\n\n```ts\nconst { telemetry, onError } = createAgentLogger({\n  agentName: 'my-agent',\n  captureMode: 'full',\n});\n```\n\n`full` mode keeps all data local but may capture sensitive content. Review what your prompts and tool outputs contain before enabling it in production.\n\n---\n\n## How it works\n\nEach event is hashed with SHA-256 over its fields plus the previous event's hash, forming a chain. `verifyFile` recomputes every hash and checks:\n\n- Sequence numbers are contiguous from 0\n- Each `prevHash` matches the previous event's hash\n- Each stored hash matches the recomputed hash\n\nAny modification, insertion, or deletion breaks every subsequent hash. Completed runs also write a `.head.json` sidecar — if present, tail truncation is detected too.\n\n`verifyFile` returns structured details on failure:\n\n```ts\nresult.details?.code          // e.g. \"HASH_MISMATCH\"\nresult.details?.lastValidSeq  // last sequence number known good\n```\n\n---\n\n## Auditability\n\nagentlog is not a compliance product by itself, but it is designed for teams that need trustworthy records of AI system behavior. Its append-only, hash-chained logs can support audit, debugging, incident review, and regulated AI workflows.\n\nUseful for auditability and Article 12-style automatic logging requirements.\n\n---\n\n## CLI reference\n\n```bash\nnpx agentlog verify <run.jsonl>   # verify integrity — exits 1 if invalid\nnpx agentlog view <run.jsonl>     # human-readable event timeline\nnpx agentlog studio               # local browser UI at http://127.0.0.1:3001\n```\n\n`AGENTLOG_DIR` — storage location (default: `.agentlog`)\n`AGENTLOG_STUDIO_PORT` — studio port (default: `3001`)\n\n---\n\n## Event types\n\n| Event | When |\n|---|---|\n| `run_start` | Created automatically by `createRun()` |\n| `prompt` | Before an LLM call |\n| `tool_call` | When a tool is invoked |\n| `tool_result` | When a tool returns |\n| `response` | After an LLM call |\n| `late_error` | Error after run completed |\n| `error` | On caught errors |\n| `run_end` | Created by `run.end(status)` |\n\n---\n\n## Status\n\n| | |\n|---|---|\n| Core logger | Stable enough for local experiments |\n| CLI (`verify`, `view`, `studio`) | Supported |\n| Vercel AI SDK — `generateText` | Supported |\n| Vercel AI SDK — `streamText` | Supported |\n| Cryptographic signing (private key) | Planned |\n| Cloud backend / remote storage | Not planned |\n\nAPI is stable; expect changes before 1.0.\n\n---\n\n## License\n\nMIT\n","readmeFilename":"README.md"}