{"_id":"pi-langfuse","_rev":"37-28573f0a3405fb222afc28563444ada6","name":"pi-langfuse","dist-tags":{"latest":"1.6.1"},"versions":{"1.0.0":{"name":"pi-langfuse","version":"1.0.0","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.0.0","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"347cafead4c26aa02aaadacd96a9e4003cd31ad6","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.0.0.tgz","fileCount":18,"integrity":"sha512-aEjgMxQRPEW9dc0x5SK+Rq+RmYuzvuyyT5wCUqKe1aLBQHm5Ol8eCyaueIUyvKOscTjy45+w60ZgPM5rh6scaA==","signatures":[{"sig":"MEYCIQCNB65N89SUhPgpY8908fiVb6EabyN1/qrIehMsRypk/wIhANytMaBt0dgjc/enaSJrSJ6Jha3qM4SAmQg9vlMKR50z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74992},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"14b26842d9d6114a631c6d5cc184e264ebf590d1","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"gooyoung","email":"gooyoung@foxmail.com"},"_npmVersion":"11.12.1","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.15.0","dependencies":{"langfuse":"^3.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.0.0_1778643653002_0.8926147602124279","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"pi-langfuse","version":"1.1.0","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.1.0","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/raw/main/media/image.png","extensions":["./index.ts"]},"dist":{"shasum":"2d0e865bedcb88b63e8694908f8799df62c947f2","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.1.0.tgz","fileCount":19,"integrity":"sha512-hevwMc6QvLxXq1PYO1T8l9Fgvc116Qq8b8hv+VDYW+DqwmcJ+T1YrRJquZA/bERiwIyvM7O+c5lUDa+Xc6+CvA==","signatures":[{"sig":"MEUCIQCJ7arL6CMjF4jg31VOOFvXMyACJ/H5zKYipPm1fBGRlwIgMauSasdufB4z70oIXqtYh5/wavcZLm88A8h7xYym+gE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":679751},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"8b696c9fe7bde52faf1452c20ae710c3033599da","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"gooyoung","email":"gooyoung@foxmail.com"},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.12.1","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.1.0_1779180987299_0.9192985995386433","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"pi-langfuse","version":"1.2.0","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.2.0","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/raw/main/media/image.png","extensions":["./index.ts"]},"dist":{"shasum":"f523431daefd0cde3be83cc4af4c8fd8d1f56bf6","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.2.0.tgz","fileCount":31,"integrity":"sha512-XJAj8I/5OUA4itxbyArXCtMmpNwJ+KbNR5rkNNXNwtGvd3mj/E3o/+skFjC3s8NWmglupQx7fUg8IgYIdndrbA==","signatures":[{"sig":"MEUCIQCo3K4UgeQlVsGDqq/JXcgHG8dNngPVZYIEY2lHWuvn1gIgL/VAWphqMe+Gm4lxtZzh/GZgJF1ar4Q7nRB3n3sTbSg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":698601},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"20aba9d52b5c63072d140f0c4a3b64db4950eedf","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"gooyoung","email":"gooyoung@foxmail.com"},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.12.1","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.2.0_1779186352404_0.14280672744430833","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"pi-langfuse","version":"1.3.0","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.3.0","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/raw/main/media/image.png","extensions":["./index.ts"]},"dist":{"shasum":"65fd26a7afdde800bfd3d89227660de318ba9d71","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.3.0.tgz","fileCount":31,"integrity":"sha512-Gm2PmgtkJ/DgDPf/40Ro6/6qa6RK4ji8qZMkmvwXCCDEoKIoiOi2Mxb2Pt+0ru3Sn3cem+B3TnzfZQLHLNGI6w==","signatures":[{"sig":"MEUCIFmAT1vCW7zKutKGpdxOj7G67sq0u6fO1pWmhbh8Ljo0AiEA+E6XnXm+sX81ZbVUZpC3WcBhUfEb9VnZqFqj/jUr3nQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":698824},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"39230c3ac11b286fd3a48e3eb8661e710ffdadbf","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"gooyoung","email":"gooyoung@foxmail.com"},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.12.1","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.3.0_1779239683447_0.9842325427156233","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"pi-langfuse","version":"1.3.1","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.3.1","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"17810fbaebef313b317af98462b586ec8a9467b0","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.3.1.tgz","fileCount":31,"integrity":"sha512-KnGO6t4jo63QIzXs2Ks5UNnyH+zsrzQaNiqfL4zqdIvttiiyi3+wwUGWsTR6ZUCmAVgaO5BroGm0Vnx6M33nfA==","signatures":[{"sig":"MEYCIQDz2xADnCO/Ej2I2XPZma0625jpJCZ5YMRrPs4VBlRIkQIhALbbyVTIWcpktaa3n4TeVir3FYclWbE7kDBMCCLdScAA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":698828},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"39230c3ac11b286fd3a48e3eb8661e710ffdadbf","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"gooyoung","email":"gooyoung@foxmail.com"},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.12.1","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.3.1_1779239726405_0.153626215008829","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"pi-langfuse","version":"1.3.2","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.3.2","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"40a9a4efdc84e75a0d38c72a139e993354727ff4","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.3.2.tgz","fileCount":31,"integrity":"sha512-HbpH0wUiQvQayGrOppORB/7xy06dFRcalAQtcju2KG+yKzdVnyTnQZgYTfHOdrXpl+lNP1wja72r4AuiSlWQdw==","signatures":[{"sig":"MEYCIQDowMsaVYcFpNGiri3PcH9WSLfpFzwmkvTj/0e78q3Y2gIhAOKiyM1eGagr1Ub+4PmidwuRqrOEKWSaAJxF8jZZ4il8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":699745},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"b798e4864fd8baab8de5ba7af8dc4aae8b2e8ec3","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"gooyoung","email":"gooyoung@foxmail.com"},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.12.1","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.3.2_1779273553210_0.638360491790867","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"pi-langfuse","version":"1.3.3","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.3.3","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"da015fe70a7a8e94e788a016a3217da21a8b28d2","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.3.3.tgz","fileCount":31,"integrity":"sha512-6ZQ3itO5UHWYFba+zCYVmRG9cXjrK65iYqh05bYnXqCoRO6CfmKGyjgK1qeOcl5POjtrcsnDhJXXjxpLJGN99g==","signatures":[{"sig":"MEUCIDNEp6UtVZMrcM/K+OiYRnX3uF8Rp2TqbtzR5MyuITOrAiEA/0DE/JZ2g+cRj0+OolHY7hIXkcO1ygIWPXbtaVVa4rA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":699905},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"449df97f1e296d8239fdfb54f5891c3845016eb2","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"gooyoung","email":"gooyoung@foxmail.com"},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.12.1","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.3.3_1779330046377_0.32408532715144966","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"pi-langfuse","version":"1.4.0","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.4.0","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"22fda51821f2c2e2baedff091d785afecd8e371b","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.4.0.tgz","fileCount":29,"integrity":"sha512-H825hGCzETTrmLhY9RcY7oIrbgu4nPpktEM7Jb0ili9aY6Kghy0giayGs2rvgCDV4H4cql+UNhEnTZ/NnzpgrQ==","signatures":[{"sig":"MEUCIFzMgWrtv+2bzxlwUCA5ss6Npu1jSjULeSduSm3h1MOgAiEAqgSx3h90jGoiYI0W2JQF5Y9PPWqAsnQWnGrvDmng2cY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":699104},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"21715c1512d2ac01f7daed7c559f9cc37435baa4","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"gooyoung","email":"gooyoung@foxmail.com"},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.12.1","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.4.0_1779331854330_0.03838377856810893","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"pi-langfuse","version":"1.4.1","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.4.1","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"26665f36ca91940c6de360b4ea16176827703f58","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.4.1.tgz","fileCount":29,"integrity":"sha512-Ay0e/S2tU02YQMOdr/1wscWmZAnphNoJ8NZmHZzSKPFVMd43PcU2OMmsDd205ZS2UWgQiavCPxNsDg/1UPeupg==","signatures":[{"sig":"MEQCIFABkHaljVIafM/nObJ0aZZcWL/VA6rwZJDpneh7eB0TAiBa/lQ7K1FWb+YmBvjBRML/G990ejTYCJrBX9TMjpt74A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":700307},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"63cb60a7686104ca9726da2f2d925c5dbff9115c","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"gooyoung","email":"gooyoung@foxmail.com"},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.12.1","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.4.1_1780042253739_0.028034727905333234","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"pi-langfuse","version":"1.4.2","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.4.2","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"2ad8d03606304c28bc9a08a2472c92621ce23ef3","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.4.2.tgz","fileCount":19,"integrity":"sha512-aM+GPC31nu7JSqu73zjZ+lP2UAxfY5Iy/Xf4MgyBNdy3p7K1hkzBwMNzpY+ES0xTiORFvYVI59ffVUjhQRk/Vw==","signatures":[{"sig":"MEUCICDipXZervPWE74u355IPTkWRvzp+Noo2pzzLNJi1AHwAiEArkcai7+c4xq2lY78F0Rzgm4FA9XVEsVFwycyeCKxgx8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":654402},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"9b35060a2aef9be24820b30060e9e3ad7a637eb8","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.4.2_1780046433728_0.21781894271265512","host":"s3://npm-registry-packages-npm-production"}},"1.4.3":{"name":"pi-langfuse","version":"1.4.3","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.4.3","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"ca85d36bdc7f3adab49de3e1a5cd03d08c645486","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.4.3.tgz","fileCount":20,"integrity":"sha512-PF0cTwyIS8Ml286Y6p3HfmiVtKtzNYN8PRFJOF7TUG5/cXr3pXiBwozg6DyovF14bRXKf5BSXZ8obMRCTCx5xA==","signatures":[{"sig":"MEUCIE9t8HBw8l1cUjl6Qxdj9s4TKI1+6byFygAkOvxRCoAvAiEA83rv9phLe/x8yh5kBwP8CaJPJSAF63YHoeAnkvcJsu4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.4.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":657396},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"95da7d29c047a919320caf33151c969a5affb7bb","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.4.3_1780049148327_0.9614571158672864","host":"s3://npm-registry-packages-npm-production"}},"1.4.4":{"name":"pi-langfuse","version":"1.4.4","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.4.4","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"89b6895d54217b2e3c265ef4d47d202881092fdb","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.4.4.tgz","fileCount":23,"integrity":"sha512-BbihUZaeMDgbrOTXCA/+6rEXAJMbXQq53HxgAQPneXFkZXJSX8XF1RZApNPU2GdVcgcMt4ZK5xK8v4Zes8xEMg==","signatures":[{"sig":"MEUCIBQZN5bhkkK/oionZBIdghWP/fpkdwR18StnSIhKXh2dAiEAlDpMoRP09WaXFc9tzlnC/ZDAHyfZxSznxdn+3N/CGSU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.4.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":220642},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"f3a749d1b742d5a5f4a4456d1ed470d2cbb8eb91","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.4.4_1780553528973_0.7639466849758718","host":"s3://npm-registry-packages-npm-production"}},"1.4.5":{"name":"pi-langfuse","version":"1.4.5","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.4.5","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"17413994de93cfcaca120c04410e115f0aa64116","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.4.5.tgz","fileCount":24,"integrity":"sha512-YZv2ps/BYCez4tIPi9pn+8D7ubZ10aLi6wwu/oMiruNe2z/nW8I2QnMdhhEmjVdxQvNDo4zWBrQlKNmyIG9vMw==","signatures":[{"sig":"MEQCIFmh2J8ArR71vSZ2ZqhBegK4hH6j4ueQIpHUDtIk4eWbAiBGEA7qFa5Yypx9LWHEXXSSuJaGCEwoCTPtM8RssCqXXg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.4.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":228838},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"f6abd25d09569a966445f76b4545249a4f62cf60","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.4.5_1780881871357_0.3746664240064195","host":"s3://npm-registry-packages-npm-production"}},"1.4.7":{"name":"pi-langfuse","version":"1.4.7","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.4.7","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"d9f29add6c0356ad55a03f4b590dfb538a32250e","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.4.7.tgz","fileCount":24,"integrity":"sha512-RJTu1syBiylgAMKp7wS1K8Ph+nIy7N64GtFRedVkzF02iPSPdt18IpVT8kZ9qx1gXNwBK/k30d3CNdYNOud4Hg==","signatures":[{"sig":"MEYCIQDsFFobnk4Gi1lxe475wAzk805uxD8iNhPO+PvIvbYjXAIhAIAddcR/4vzwcQqEOlUnGsBEJJxD4UPw2XF4hX85IBoC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.4.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231149},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"6ccc07d812c8b63f0f5fc624feb74c57bcb0d22c","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.4.7_1780885428047_0.952726830864107","host":"s3://npm-registry-packages-npm-production"}},"1.4.8":{"name":"pi-langfuse","version":"1.4.8","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.4.8","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"383b9cd368690765b99849cab5e2d952437234f2","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.4.8.tgz","fileCount":24,"integrity":"sha512-SJjjwdyzvkT0xoy7OwzLPJdjeXvt0X8ncGcNK/o5V6izQNYGMvUASRVtrh0uBKfRznBa9tLyyf/UNY5Zi8P3yQ==","signatures":[{"sig":"MEUCIQDmwPVSJsX6yF7H6o2AXRMYpO3+jQI3GItd9BL+yxBtOAIgFOmhoOx8p4TLjHmp91HCffisxfZ0KgTWDCzAqnZjfWE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.4.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231153},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"4bc3a595e0eefe15bbd53ac8ab12cfd0d50b6418","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.4.8_1780886135071_0.7454658025988499","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"pi-langfuse","version":"1.5.0","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.0","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"1c42a2f37e85c07809b3ab57d8f0806611e20b4f","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.0.tgz","fileCount":24,"integrity":"sha512-120yYKfWGQHtnvhUsC0aSHphxgI/rc17O2HfIdjDyw+Fia82SLltelbRPu5N3u1VgQxMuOuTsBA74Y0jmb1/Bw==","signatures":[{"sig":"MEUCICWVEHyj8q/ojTQlfuCvrH4CPuHpdDxGP60RbL/H87FhAiEAlR8BHd8qDNZqCvbNdXAo8CNk+AR08AVBVp91BvCkdaI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231153},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"a02c5e508f4ba38bd65154ea1b25b68c17d50954","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.0_1780887131651_0.6507833304887278","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"pi-langfuse","version":"1.5.1","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.1","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"6f011dff42a8daca3f32dcb9f12c91f31abab755","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.1.tgz","fileCount":24,"integrity":"sha512-fCO9f6AWAm3Udtkqtc9Cv/nNM99/bKkYz/9vOIIJmB6UXWwfJNVmC1f9SeE35yOVRyJQLh4LN9zKnFKLlEEBug==","signatures":[{"sig":"MEQCIHwN6HPljwdSpJcSRb48YfP+SUrpKDqcDybGMM2TYhjzAiBwxy3HMM2bcNiMQHykOrgUuBM70j643JMnCXRcW1V4QQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231305},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"75beeaf4d52bba56195496ec142065886094b569","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.1_1780887806680_0.544686898273371","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"pi-langfuse","version":"1.5.2","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.2","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"eb0582f7634bef2410e833817ad8b4a2d43cb7fd","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.2.tgz","fileCount":24,"integrity":"sha512-7B6xK7eqWryeImncWPUqdbhqOly/1jfYlwJIRQh/hKz5raGWMKC6sFSMvpTrEpvStZ+YDaKlZODV6V+7LlkyXA==","signatures":[{"sig":"MEQCIA6qthDOJmM9taI99m04TFob+mrx7facReEiwoWEJYTLAiB18mVLjrQbgtCm6eWf1Vz9tH0VhR21Yi+CSnoQQKI7AA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":234885},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"9e220abfb57e52f46a67143474d1c5f6e0ca8728","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.2_1781663511352_0.9567406242769219","host":"s3://npm-registry-packages-npm-production"}},"1.5.3":{"name":"pi-langfuse","version":"1.5.3","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.3","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"87401cd52f53290b4bdb563faa1792173a7fc925","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.3.tgz","fileCount":25,"integrity":"sha512-7rQA2s6ZdzcSv1KZpWNpNsdt7mjvQJN2S8EUQZVcf4evkls15JFS1HeVgu8KPKvzsdxFwjABq58YPfTEz0w3WA==","signatures":[{"sig":"MEUCIH4SISMOnAh53LJBBfYIE8osOsrvZkC6Nc6YifL1dw8rAiEAhLOsruYxK2jqIwybugZfC8t/wohE3L2HQiC2RwvqMcw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241361},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"d879472136dcbd79ae8303b6e3fc2d5c567e419c","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.3_1781764226212_0.20303270039033894","host":"s3://npm-registry-packages-npm-production"}},"1.5.4":{"name":"pi-langfuse","version":"1.5.4","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.4","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"6f427575909ec863e49efd3b4eb789a6ea353742","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.4.tgz","fileCount":25,"integrity":"sha512-m4yKSvl8eZDamgGLXN4x3EmNShdC0ERIBnUFacLOuM1wWK7KM4G11KJySCvRbo/9/JPdYGWKQIYwUKqgeuQWCg==","signatures":[{"sig":"MEUCIDn93NdBm9rvVuAuSs5Zas8Sk8/DCqeS1IiGDJnADnRuAiEA0Vp/Md98GUNDpy91w+awYu2Pr4VhtniDEadHMNKo+AM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241495},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"2df6fd6748a80d0331b637d1978f1a02e6006fb0","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.4_1782014316004_0.9290153199437419","host":"s3://npm-registry-packages-npm-production"}},"1.5.5":{"name":"pi-langfuse","version":"1.5.5","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.5","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"580c56fa28f9ae3abd425099c655381f1191f44e","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.5.tgz","fileCount":25,"integrity":"sha512-P9autHanYJR8QpX110lKVxclTA/kLXcb6m181nrhoLi038y9Rzx1sfBvLc5y6nZJaOyxqioJQymXz08kzpKa4g==","signatures":[{"sig":"MEUCID+iMHb15aB7PY/hhMA/frqFnjsvg8k0LnkS5BGu821pAiEAstCDK1/PukCnhoov+0494laCsvRaL6LT+a/e2HxWX4M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":248897},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"6dd5ee9994a3d3f5dbdc6852d674f6a9d5993330","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.17.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.5_1782697381034_0.26947317616671373","host":"s3://npm-registry-packages-npm-production"}},"1.5.6":{"name":"pi-langfuse","version":"1.5.6","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.6","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"367b3409fa67efe90b0c3d401c557bc49302e23f","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.6.tgz","fileCount":25,"integrity":"sha512-IlDg2JGi/w7lU7lFjQhGX+Dg6fx2BjdA3shsWRgSUE0h624R1aH8K0Uh13Ry09EyexsuDk2H/qIjNDa+Zdm8MA==","signatures":[{"sig":"MEYCIQCR+BWJdjq8DkXSXlhS+uTEDQ/l3U0/vWPMzrRpp2ZF4AIhAL639c4gB3EXCnWUOqSVxVWA6+aV7rMmOz4w9CZR44Ya","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":249981},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"fa415f33458f010265a287251fd3e7d249e97b99","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.13.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.17.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.6_1782895175282_0.7821869446558687","host":"s3://npm-registry-packages-npm-production"}},"1.5.7":{"name":"pi-langfuse","version":"1.5.7","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.7","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"6c661e343f503dbf73ae75ffaed3f1d65d773127","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.7.tgz","fileCount":26,"integrity":"sha512-k8jkegxTNUZ/MmcVL6oIPpSso2QRdUXFcTo1IPm1fHU7rosyjqA6n2JyyysYLr+1sSRel9qeS6sJ3/8jwvkrdw==","signatures":[{"sig":"MEUCIQDlw93hJm6vf1VAw6a9AJPkPTuM63KspgtmfopECC9DCAIgTHlsWyC3kw6ZQt20meycs0MiwGvRJyYxKNorpnLJzT0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":255254},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"131c1af13c24043890e820508ff1d7c1efc78ebe","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.16.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.7_1784518970591_0.18092814405406443","host":"s3://npm-registry-packages-npm-production"}},"1.5.8":{"name":"pi-langfuse","version":"1.5.8","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.8","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"ec52473021c6634d58c2e431c8f77bf4f7b5b479","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.8.tgz","fileCount":26,"integrity":"sha512-ThoRKvm7U7Zy0YZ3FCEcAoRO7szIpXzPka8LDP0swvIWp7MjUpI7urC7GjTkPHweWo+HqpDVtS3I4eHy5hqfZg==","signatures":[{"sig":"MEQCIDBMYzXSv0ILctjzmzR4mQu8wWIlFNI7KYbEJPKirRGPAiB4gJlIqj2ZXADpp9BNDZe7kk8grlge6c0bnsqxb7SaTQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":262847},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"6f8f7ad06c5d2b08173609bdd8a6d3407a520510","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.16.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.8_1785210607592_0.2643664842128568","host":"s3://npm-registry-packages-npm-production"}},"1.5.9":{"name":"pi-langfuse","version":"1.5.9","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.9","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"905c9b126d22abea9a03ea9ee7fc9946d4266b61","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.9.tgz","fileCount":26,"integrity":"sha512-DfR09qKC3iMgDaV34v7H/wH/058rW16OO+8tAiAcIe1CRHpVnHGZvPd7vzUj3P+ShJIW/9mrxsowqDC/y80qRg==","signatures":[{"sig":"MEYCIQCUBxfeg7JECfxzgwi5S479C48rvdo6sWcXtD927EcXYQIhANgn2i3oVSMUuSlrkzURh9O0SFueTsBmujTPPOEbzwwB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":263997},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"3243208ea89d6fdc2b5f0e66660a4a626880ebd0","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.16.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.9_1785811999236_0.5997714839754738","host":"s3://npm-registry-packages-npm-production"}},"1.5.10":{"name":"pi-langfuse","version":"1.5.10","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.10","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"33eea40e4d427a026404edf1b72d1301e266edfb","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.10.tgz","fileCount":26,"integrity":"sha512-JNSxX1sQg0jrpkSZLAieiowAKLqxhl6LJrQGgwhTNtSC//SIvXOFSlM6U6WPENKsQ+fSfbfXFFHaPgnT6ir0uw==","signatures":[{"sig":"MEUCIQCW7vhhZmZKEefsKgN+7rV+MEh04gH+ci+sds2SX/LRYwIgBfWbqJNzj+mOdKCe9wh9ZKxHzcWjPM1HDHIvU9rBseA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":264554},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"cebf7c629adb864e99aa3e3d8be7db7e8bd25b47","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.16.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.10_1786194645153_0.16854178273485432","host":"s3://npm-registry-packages-npm-production"}},"1.5.11":{"name":"pi-langfuse","version":"1.5.11","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.11","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"1f4178af654a2391a50ba93f92d0191e0688d7d5","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.11.tgz","fileCount":26,"integrity":"sha512-fnof9imcMCmjVjzzX9rFrzgFK5iphkCwFJHcunXyKaOOu/rqY0uDlVj2btwv/V3Iq0n3Z8zQyTKvOyxOkfD0MQ==","signatures":[{"sig":"MEUCIQCXDMhDN/a4MUojwDvndUHKuI/XJCzt7iL4kl9TputYQgIgVGVab0LRNz7ScHGewMsDIyT192+3A7GLRspFrx0xN5M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":265581},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"83f697ff8d38d3af37fac5ffcb156b85115b47b5","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.16.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.11_1786202740790_0.785612501818451","host":"s3://npm-registry-packages-npm-production"}},"1.5.12":{"name":"pi-langfuse","version":"1.5.12","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.12","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"290673f12bf403febb44d56988f5b9b6fa5cbc21","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.12.tgz","fileCount":26,"integrity":"sha512-GHppthlYofnHGxcEv2HYdxodMsN5jHozhlax7SB9599tMzUZpv1B5VBsFqFME748JBw93o5CJQC3DivNglPTeA==","signatures":[{"sig":"MEUCIQDcmpPN7iygrk47z7J43jSN2odbM70SxTNLJshXtZa7VAIgAWxovv2oXFqqsPWcLqhkC/4mjcggtNs4+4Ypv+DGeKs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":268298},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"c79c527a7294e1d4b8153525d5218e87354cbcb1","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.16.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.12_1786329867110_0.1226758010053508","host":"s3://npm-registry-packages-npm-production"}},"1.5.13":{"name":"pi-langfuse","version":"1.5.13","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.13","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"d844c69d42e9db534995c74d50b3e734ec228747","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.13.tgz","fileCount":26,"integrity":"sha512-u3rzCzRztCrGnpxgww72+qif2odMAZXPkbrTZ+P3GF7qGZwygsHMzQ0PeibTKgSUcy2+bNugZPQCC9Zahl3a8w==","signatures":[{"sig":"MEUCIQCV4O8KoKwAOXPXGpRtkY5YoII7Mf2P3nhBBOPW5kHaBAIgKBj9m4AEQxmW2LBJROggb2b/Pd06LZXvb57XdCi3Fvo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":268298},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"b29f2a26708b64a652cdc61b61ac73491f204ce0","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.16.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.13_1786585511356_0.013563292601362242","host":"s3://npm-registry-packages-npm-production"}},"1.5.14":{"name":"pi-langfuse","version":"1.5.14","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.14","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"9ed5b5d7ebd4809d826452eff952c93527c6f1dd","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.14.tgz","fileCount":26,"integrity":"sha512-zzQ40IMj7NrGrluzGAqB6zJ645MaqHfAMTdlsOK/fPlQywlTlgPb8Y/PyQc8asSkqWT55KMMDV+qNSKAG1zyTg==","signatures":[{"sig":"MEUCIFezYnUaPTjj9QmueJLrYcq/45MPC8JYy6AD/SGBTRrxAiEAj+pA1pPrHjr/JelHC4oYvLI4XtOHYuRGeTQg3RsI6wQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":269738},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"04d55a12556bdf4c4b8b208038198dc2fd8e571b","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.16.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.14_1786586570929_0.04733900273250624","host":"s3://npm-registry-packages-npm-production"}},"1.5.15":{"name":"pi-langfuse","version":"1.5.15","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.15","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"fca5cbda4e4b120b79947afccd133e50a14cdcb0","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.15.tgz","fileCount":26,"integrity":"sha512-YTQVEmEgBNvrRBXJscTL5E4V8oIjuM+7XM7aTbfxNe5HrOZ3Llow+iANj+r/wMQI/rFip7YakWXQOFl1Grqd8Q==","signatures":[{"sig":"MEYCIQDVZw/Bf7eiTRCJ9bi1SUUTgNzEyKCqcmYAbK9CjGMWMQIhANviQv+ESPdk4tCXOBi4SoiGUsMza8i2NCwefV6DBtuw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":275046},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"6ff76821ea1a7b44ce8b1a755787cc48a90ec342","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.17.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.19.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.15_1787283059810_0.9172474269715643","host":"s3://npm-registry-packages-npm-production"}},"1.5.16":{"name":"pi-langfuse","version":"1.5.16","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.16","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"19381fcd5d70726b5c6d2c460b24fc9b399c5f63","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.16.tgz","fileCount":26,"integrity":"sha512-q+rcwcuaM3CMkoe13A8xdXhabVOp199QruCUXaZ6Jw7sInrAuIDUX27Ozh/BUVQFNuHxR4/PAy4LExUvnTMXIA==","signatures":[{"sig":"MEQCIEWqCwnswt7HmO9nbkk4QAeugAkEFWSsqWs1H+P2j9J0AiBkUWnYJ1xzU4Oon+jaR1wYPgNE7MXmZhTsB62Vq6a5Lg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":276729},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"53a19f47ce1e11766a27fda550a10f8b7f62eb49","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.17.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.19.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.16_1788334155252_0.9665787968349699","host":"s3://npm-registry-packages-npm-production"}},"1.5.17":{"name":"pi-langfuse","version":"1.5.17","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.17","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"f7a4bb4705277a47485fba592c972a99f77f0870","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.17.tgz","fileCount":26,"integrity":"sha512-1PV7NaYfHZ271aL/rLDqna817ZtENDs0DaxyG/b2LP6APu6cpx8Zypq7E/MB9AgFxobSo0xuhZ8837UvsAUeHA==","signatures":[{"sig":"MEQCIC9tpaLoHyEoo79NGs+wmeYHbtQhGb8wCJBR2qjU5m6TAiB4QmsYTC5S6cmuwXVDzpWIBZt/j+QDdgrBOujazvxVCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.17","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":283568},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"033f5fbc96e0e211d29d93fad7cd989365850730","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.19.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.17_1788362621687_0.5671325660825906","host":"s3://npm-registry-packages-npm-production"}},"1.5.18":{"name":"pi-langfuse","version":"1.5.18","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.18","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"0d3aebc5cf4f9f10533bac635afebfb21b5d0025","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.18.tgz","fileCount":27,"integrity":"sha512-4Siq2lYRr3QgcmqW7H+MY3iMOm7XzKn5m9yw62Y4bckdMk5YqK+p3ghwp20uBvLJ4hliiU+mi05AbOjQdZKfaQ==","signatures":[{"sig":"MEYCIQDf78jL4ReV7QkLvdTvz1sytQpeYwRgJgOkWYbhclT4YgIhAPdsi+zy9dvZ9dGRJp4vLhKzDk0mfgbfzolxrrNKZ7Z9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.18","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":290929},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"76b9a765736503fc5e7b0da3670722aa446e4eb8","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.17.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.19.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.18_1788399849438_0.7535772600462827","host":"s3://npm-registry-packages-npm-production"}},"1.5.19":{"name":"pi-langfuse","version":"1.5.19","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.5.19","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"199da94d8c178e598eee23cd1e8edcdca7c79ba3","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.5.19.tgz","fileCount":27,"integrity":"sha512-126kXwGCsvPOyLKRHZHlClMunnZhFPpHjDFgXpihir6ufo+H/LL7fnSAtYSTQWUdmY+wIhPq5nr0detX7ISjGg==","signatures":[{"sig":"MEYCIQDx/9TmlrnDwUzw9iNXc+eqCB5KVMFMHgjm5gW30Fwe+wIhANa1K2ygrR2I5sdYglQb0gB9IUWDOZOz9MCicFn8/WIu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIA+zo8l5FJnyzAQn9sdqCzYNSe0mGiBLMnMRAGxDfd+YAiAour/Bqi/H4BISsR0rhTN872lgThpPNVzuSwJa2xejgg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.5.19","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":293600},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"d8c9dba3324d3cf732a6802a119b5524eb165e2a","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.19.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.5.19_1788513023436_0.30577274389337905","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"pi-langfuse","version":"1.6.0","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"license":"MIT","_id":"pi-langfuse@1.6.0","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"homepage":"https://github.com/gooyoung/pi-langfuse#readme","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"dist":{"shasum":"1451bcf16154d6340351c41076f9e31a17fcb0e7","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.6.0.tgz","fileCount":27,"integrity":"sha512-/oqVwrmsqjacdTwwnqzHAXxLp8leBnlhfMDgW46GB0pZO0pBG27KAlCfBmTKXtqQRMKnmo99unGAzsFH+ETxAA==","signatures":[{"sig":"MEUCIAmh6kEIYhCHd2G1EZCPEiAl5t6/ZY9O1T8g75WDtvmlAiEAoEqmBVRuKfhO+RGxumsXBUhCswD+IwBrtv6LHeDOtyo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDiTaRKrTefvu7PqXLU1UOxfLkJwL7iWX4VQdA9h0JL3gIgeZNYd4w/Fq+aKm99gQJwSuGOFl4UsGfpFLE6x4K1JWg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":317622},"main":"index.ts","type":"module","engines":{"node":">=22"},"gitHead":"9f1650f2244df53716348f486512081afa954319","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.19.0","description":"Langfuse extension for Pi coding agent","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3","@earendil-works/pi-coding-agent":"^0.86.0"},"peerDependencies":{"@earendil-works/pi-coding-agent":">=0.86.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-langfuse_1.6.0_1789892135273_0.27496924614210894","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"pi":{"image":"https://github.com/gooyoung/pi-langfuse/blob/main/image.png?raw=true","extensions":["./index.ts"]},"_id":"pi-langfuse@1.6.1","bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"dist":{"shasum":"305b9781f156986872d363b1a5853e2899f70e44","tarball":"https://registry.npmjs.org/pi-langfuse/-/pi-langfuse-1.6.1.tgz","fileCount":27,"integrity":"sha512-kY524UM2vr3Vblk4MoYsVSt5i+GF/hEjhtavS/ImSfcDkTFXf4MGRXCQNckRreQpR4Rs9/2aSREWNU0uv7RR1A==","signatures":[{"sig":"MEYCIQC/w43W1rXjk3wgOURhEHw5zumQUeRQPoOuUd47ecyJzQIhAJ3I0kGVbdG8b84eTEifJW1tfPZUJ2m4oFfCVcTprlG1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBGqMo7PujoHXMTVmC9oTNJuyOGwEN7LeIdp5nUcM7gjAiBC5Pz2a+XUFrDu1eMigf3hP+yzEiarp7CQ++1bSyG9Lw=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-langfuse@1.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":319737},"main":"index.ts","name":"pi-langfuse","type":"module","engines":{"node":">=22"},"gitHead":"d8d427a820e42d49711a71b754eb8188658f911a","license":"MIT","scripts":{"test":"tsx --test test/*.test.ts","typecheck":"tsc --noEmit"},"version":"1.6.1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2681af98-0630-4926-a9b6-012b26b2ce72"}},"homepage":"https://github.com/gooyoung/pi-langfuse#readme","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"_npmVersion":"11.19.0","description":"Langfuse extension for Pi coding agent","directories":{},"maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"_nodeVersion":"24.20.0","dependencies":{"@langfuse/otel":"^5.3.0","@langfuse/client":"^5.3.0","@langfuse/tracing":"^5.3.0","@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-node":"^0.218.0","@opentelemetry/sdk-trace-base":"^2.0.1","@opentelemetry/context-async-hooks":"^2.7.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.19.0","typescript":"^6.0.3","@earendil-works/pi-coding-agent":"^0.86.0"},"peerDependencies":{"@earendil-works/pi-coding-agent":">=0.86.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-langfuse_1.6.1_1789892637627_0.5519666624418715"}}},"time":{"created":"2026-05-13T03:40:52.872Z","modified":"2026-09-20T08:23:58.223Z","1.0.0":"2026-05-13T03:40:53.163Z","1.1.0":"2026-05-19T08:56:27.505Z","1.2.0":"2026-05-19T10:25:52.562Z","1.3.0":"2026-05-20T01:14:43.615Z","1.3.1":"2026-05-20T01:15:26.611Z","1.3.2":"2026-05-20T10:39:13.404Z","1.3.3":"2026-05-21T02:20:46.597Z","1.4.0":"2026-05-21T02:50:54.593Z","1.4.1":"2026-05-29T08:10:53.972Z","1.4.2":"2026-05-29T09:20:33.897Z","1.4.3":"2026-05-29T10:05:48.536Z","1.4.4":"2026-06-04T06:12:09.161Z","1.4.5":"2026-06-08T01:24:31.512Z","1.4.7":"2026-06-08T02:23:48.228Z","1.4.8":"2026-06-08T02:35:35.243Z","1.5.0":"2026-06-08T02:52:11.788Z","1.5.1":"2026-06-08T03:03:26.825Z","1.5.2":"2026-06-17T02:31:51.494Z","1.5.3":"2026-06-18T06:30:26.432Z","1.5.4":"2026-06-21T03:58:36.171Z","1.5.5":"2026-06-29T01:43:01.194Z","1.5.6":"2026-07-01T08:39:35.453Z","1.5.7":"2026-07-20T03:42:50.758Z","1.5.8":"2026-07-28T03:50:07.790Z","1.5.9":"2026-08-04T02:53:19.421Z","1.5.10":"2026-08-08T13:10:45.312Z","1.5.11":"2026-08-08T15:25:40.955Z","1.5.12":"2026-08-10T02:44:27.273Z","1.5.13":"2026-08-13T01:45:11.613Z","1.5.14":"2026-08-13T02:02:51.103Z","1.5.15":"2026-08-21T03:30:59.971Z","1.5.16":"2026-09-02T07:29:15.390Z","1.5.17":"2026-09-02T15:23:41.814Z","1.5.18":"2026-09-03T01:44:09.599Z","1.5.19":"2026-09-04T09:10:23.570Z","1.6.0":"2026-09-20T08:15:35.392Z","1.6.1":"2026-09-20T08:23:57.806Z"},"bugs":{"url":"https://github.com/gooyoung/pi-langfuse/issues"},"license":"MIT","homepage":"https://github.com/gooyoung/pi-langfuse#readme","keywords":["pi-package","langfuse","observability","tracing","monitoring","pi-coding-agent","extension"],"repository":{"url":"git+https://github.com/gooyoung/pi-langfuse.git","type":"git"},"description":"Langfuse extension for Pi coding agent","maintainers":[{"name":"gooyoung","email":"gooyoung@foxmail.com"}],"readme":"# pi-langfuse\n\n[![npm version](https://img.shields.io/npm/v/pi-langfuse)](https://www.npmjs.com/package/pi-langfuse)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n[**English**](./README.md) | [**简体中文**](./README_CN.md)\n\nLangfuse observability extension for [Pi Coding Agent](https://github.com/earendil-works/pi-coding-agent). It sends complete Pi runs to [Langfuse](https://langfuse.com) so the prompt, agent workflow, LLM generations, tool calls, final response, usage, cost, and health scores appear in one trace.\n\n## What This Adds to Pi\n\n- One Langfuse trace per user prompt, grouped by Pi session.\n- Root `agent`, per-request `generation`, and per-tool `tool` observations.\n- Final assistant output capture, tool error visibility, and trace-level scores.\n- Privacy controls for inputs, outputs, tool I/O, system prompt, and cwd.\n- Secret redaction and local path hashing before upload.\n- Capability-gated REST fallback for self-hosted Langfuse setups that expose the legacy trace API when OTel spans arrive but traces do not materialize. Langfuse v4 `events_only` deployments use OTel without legacy fallback ingestion.\n\n## Prerequisites\n\n- **Node.js** >= 22\n- **Pi Coding Agent** installed and configured\n- A **Langfuse** account ([cloud](https://cloud.langfuse.com) or self-hosted)\n\n## Quick Start\n\n1. Install the extension:\n\n   ```bash\n   pi install npm:pi-langfuse\n   ```\n\n2. Run Pi once. If no credentials are configured yet, Pi prompts for:\n   - Langfuse public key, starting with `pk-lf-...`\n   - Langfuse secret key, starting with `sk-lf-...`\n   - Langfuse host, defaulting to `https://cloud.langfuse.com`\n   - Optional Langfuse user ID for per-user usage and cost aggregation\n\n3. Run Pi normally:\n\n   ```bash\n   pi \"Explain the architecture of Redis\"\n   ```\n\n4. Open Langfuse and inspect the new trace.\n\n## Configuration\n\nLangfuse API keys are available in **Langfuse Cloud** -> **Settings** -> **API Keys**.\n\n### Method 1: Interactive setup\n\nRun any `pi` command with the extension loaded. On first run without configuration, Pi prompts in the CLI or TUI and saves the result to `~/.pi/agent/pi-langfuse/config.json`.\n\nTo run setup again:\n\n```text\n/langfuse-setup\n```\n\nTo inspect the active configuration without exposing secrets:\n\n```text\n/langfuse-status\n```\n\nThe status command reports the config source, host, masked public key, whether a user ID is configured, capture policy, active-run state, config path, and last runtime error. It never prints the user ID itself.\n\n### Method 2: Environment variables\n\nSet these before starting Pi:\n\n```bash\nexport LANGFUSE_PUBLIC_KEY=\"pk-lf-xxxx\"\nexport LANGFUSE_SECRET_KEY=\"sk-lf-xxxx\"\nexport LANGFUSE_BASE_URL=\"https://cloud.langfuse.com\"  # optional; LANGFUSE_HOST is also supported\nexport LANGFUSE_USER_ID=\"user-123\"                     # optional; max 200 characters\n```\n\nSaved config takes precedence. Environment variables are only used when `~/.pi/agent/pi-langfuse/config.json` is missing or incomplete.\nIf saved credentials exist but `userId` is absent, `LANGFUSE_USER_ID` is still used. An explicitly saved `userId` takes precedence.\n\nFor short-lived SDK hosts, set the bounded final score-delivery attempt during shutdown:\n\n```bash\nexport PI_LANGFUSE_SCORE_SHUTDOWN_TIMEOUT=2  # seconds; defaults to 2 seconds\n```\n\nThe extension attempts queued trace-level scores before other shutdown telemetry work. This value cannot extend the overall shutdown deadline.\n\nPrivacy controls can also be set through environment variables:\n\n```bash\nexport LANGFUSE_PRIVACY_PRESET=\"full-debug\"\n```\n\nAvailable presets:\n\n| Preset | Captures |\n|--------|----------|\n| `metadata-only` | Metadata only; omits inputs, outputs, tool I/O, system prompt, and cwd |\n| `prompts-only` | Prompt/provider inputs plus metadata |\n| `conversations` | Inputs and assistant outputs, but omits tool I/O, system prompt, and cwd |\n| `full-debug` | Full trace detail; this is the default |\n\nFine-grained flags override presets:\n\n```bash\nexport LANGFUSE_CAPTURE_INPUTS=true\nexport LANGFUSE_CAPTURE_OUTPUTS=true\nexport LANGFUSE_CAPTURE_TOOL_IO=false\nexport LANGFUSE_CAPTURE_SYSTEM_PROMPT=false\nexport LANGFUSE_CAPTURE_CWD=false\nexport LANGFUSE_CAPTURE_SOURCE_METADATA=false\nexport LANGFUSE_CAPTURE_PATHS=false\n```\n\nSource metadata remains off in every preset unless `LANGFUSE_CAPTURE_SOURCE_METADATA=true` is set explicitly.\nThe same holds for absolute paths and `LANGFUSE_CAPTURE_PATHS`.\n\nAll captured payloads are redacted before upload. The extension masks common API keys, bearer tokens, passwords, cookies, private keys, Langfuse keys, GitHub/npm/AWS-style tokens, and local absolute paths.\n\n### Absolute paths\n\nBy default, local absolute paths (`/Users/...`, `/home/...`, `/tmp/...`, `C:\\Users\\...`) are\nreplaced everywhere with a stable `[PATH_HASH:<12 hex chars>]` digest, so usernames and repository\nnames never reach Langfuse. This applies to inputs, outputs, tool I/O, tool error messages, and the\n`cwd` metadata field. Opt in to see real paths in traces:\n\n```bash\nexport LANGFUSE_CAPTURE_PATHS=true\n```\n\nOr persist it in `config.json`:\n\n```json\n{ \"capture\": { \"LANGFUSE_CAPTURE_PATHS\": \"true\" } }\n```\n\nLike `LANGFUSE_CAPTURE_SOURCE_METADATA`, this stays off in every privacy preset until it is set\nexplicitly, and it only affects paths — secret masking (tokens, keys, cookies, passwords) is always\non regardless. Note that `LANGFUSE_CAPTURE_CWD=false` is a different control: it drops the `cwd`\nmetadata field entirely rather than changing how paths are rendered.\n\n`/langfuse-status` reports the current setting under `Capture: absolute paths`.\n\n### Payload limits\n\nBefore upload, payloads are shaped: strings are truncated and deeply nested or\nvery wide structures are trimmed. These caps keep traces small and protect the\nLangfuse ingestion pipeline. Override any of them (no rebuild needed):\n\n```bash\nexport PI_LANGFUSE_MAX_STRING_LENGTH=12000       # per-string chars (system prompt, inputs)\nexport PI_LANGFUSE_MAX_TOOL_PAYLOAD_LENGTH=24000 # per tool input/output chars\nexport PI_LANGFUSE_MAX_DEPTH=6                    # max nesting depth\nexport PI_LANGFUSE_MAX_ARRAY_ITEMS=50            # max array elements kept\nexport PI_LANGFUSE_MAX_OBJECT_KEYS=80            # max object keys kept\nexport PI_LANGFUSE_MAX_PAYLOAD_NODES=2000        # max total nodes per payload\n```\n\nSet any limit to `0`, `off`, `none`, or `unlimited` to disable that cap\nentirely (captures the full value). Unset or invalid values fall back to the\ndefaults shown above. To capture a very large system prompt or big tool\npayloads in full, raise or disable the relevant limit (e.g.\n`PI_LANGFUSE_MAX_STRING_LENGTH=off`).\n\nThe REST fallback ingestion is chunked so each request body stays well below\nthe Langfuse gateway's payload limit (~4.5MB). These knobs control the chunk\nbudget and a hard ceiling for the whole fallback payload:\n\n```bash\nexport PI_LANGFUSE_MAX_INGESTION_BATCH_BYTES=4194304  # per-request body budget, default 4MB\n\nexport PI_LANGFUSE_MAX_FALLBACK_TOTAL_BYTES=33554432  # whole-payload ceiling, default 32MB\n```\n\nWhen the accumulated fallback payload exceeds the 32MB ceiling, ingestion is\nskipped with a warning instead of attempting an unrecoverably large upload.\n\n### Reasoning tokens\n\nPi reports reasoning (thinking) tokens for Anthropic, OpenAI Codex, OpenRouter,\nopencode-go and Qwen. Providers count them inside `output`, and by default the\nextension reports `output` whole, so the reasoning share is not visible in\nLangfuse. Opt in to report it as its own usage bucket:\n\n```bash\nexport PI_LANGFUSE_SPLIT_REASONING_TOKENS=true\n```\n\nOr persist it in `config.json`:\n\n```json\n{ \"capture\": { \"PI_LANGFUSE_SPLIT_REASONING_TOKENS\": \"true\" } }\n```\n\nWith the split on, a generation that used 37 output tokens of which 10 were\nreasoning is reported as `output: 27` plus `output_reasoning_tokens: 10`. Both\nkeys contain `output`, so the Output row in Langfuse still shows 37; only the\nbreakdown beneath it gains the reasoning share. Reasoning is clamped to the\nreported `output`, so the buckets always add up to the total.\n\n> **Before enabling — check your model prices.** Langfuse matches prices to\n> usage by exact key, and model definitions you created in your project take\n> precedence over Langfuse's maintained defaults. A custom model priced on\n> `input` and `output` only would cost `output_reasoning_tokens` at zero, so\n> reasoning-heavy generations would look cheaper than they are. Add a price\n> for `output_reasoning_tokens` to every custom reasoning model in\n> **Settings → Models** first, then turn the split on. Langfuse's built-in\n> prices for reasoning models already include it. Providers that report their\n> own cost are unaffected: Langfuse uses the reported cost as-is and does not\n> recompute it from usage.\n\nThe split is off by default, so upgrading changes nothing until you enable it.\nUnset `PI_LANGFUSE_SPLIT_REASONING_TOKENS` (or set it to `false`) to go back;\ntraces already ingested keep their buckets.\n\n### Method 3: Persistent `config.json`\n\nCreate or update `~/.pi/agent/pi-langfuse/config.json`:\n\n```json\n{\n  \"publicKey\": \"pk-lf-xxxx\",\n  \"secretKey\": \"sk-lf-xxxx\",\n  \"host\": \"https://cloud.langfuse.com\",\n  \"userId\": \"user-123\",\n  \"privacyPreset\": \"conversations\"\n}\n```\n\n`userId` is optional, explicit-only, and limited to 200 characters. The extension does not infer it from the local operating-system account. When configured, it is propagated to every observation in the trace so Langfuse can provide per-user filtering and cost aggregation.\n\nFine-grained capture flags can also be persisted:\n\n```json\n{\n  \"publicKey\": \"pk-lf-xxxx\",\n  \"secretKey\": \"sk-lf-xxxx\",\n  \"host\": \"https://cloud.langfuse.com\",\n  \"capture\": {\n    \"LANGFUSE_PRIVACY_PRESET\": \"metadata-only\",\n    \"LANGFUSE_CAPTURE_INPUTS\": \"true\"\n  }\n}\n```\n\n> **Security**: Keep `~/.pi/agent/pi-langfuse/config.json` private. Never commit API keys to version control.\n> When the extension writes this file itself, it creates the config directory with `0700` permissions and the file with `0600` permissions where the host filesystem supports POSIX modes.\n\n## Verify the Extension\n\nCheck that Pi has loaded the package:\n\n```bash\npi list\n```\n\n`pi-langfuse` should appear in the installed package list.\n\nTo verify the Langfuse host and API keys from inside Pi, run:\n\n```text\n/langfuse-test\n```\n\nThis command makes a timeout-bounded authenticated request to Langfuse and, if it succeeds, sends a small test trace.\n\n## What Appears in Langfuse\n\n- Each Pi session gets its own Langfuse session ID.\n- Each user prompt within that session becomes a separate trace.\n- The trace contains the final assistant output shown in Pi.\n- Tool runs appear as tool observations with arguments, results, and error state.\n- LLM requests appear as generation observations, including usage and cost when the provider exposes them.\n  Reasoning tokens are reported as their own usage bucket when `PI_LANGFUSE_SPLIT_REASONING_TOKENS` is enabled.\n- Pi 0.86 transcript-aware prompt/tool state appears as `system-state` events. Generations reference the\n  effective prompt/tool state hashes, active tool count, update transport, and cache hit ratio.\n- Automatic retries are grouped under `agent-attempt` spans and the trace remains open until `agent_settled`.\n- Cache-warming decisions and persisted `cache_warm` usage are reported, including standalone session-grouped\n  traces when warming happens while no user-request trace is active.\n- Compaction is recorded as `session-compaction`, with a nested `compaction-summary` generation when usage is available.\n- Trace-level scores include tool counts, tool success rate, and whether the run had errors.\n\nThe package also includes a Langfuse CLI skill, so Langfuse data can be queried directly from Pi:\n\n```text\n/pi-langfuse-langfuse <your-query>\n```\n\n## Source Metadata\n\nRepository source capture is independent of the privacy presets and disabled by default. Enable it only after deciding that commit identity is appropriate for the Langfuse project:\n\n```bash\nexport LANGFUSE_CAPTURE_SOURCE_METADATA=true\n```\n\nFor a Git worktree, the extension records only revision state:\n\n```json\n{\n  \"source_type\": \"git-repo\",\n  \"vcs.ref.head.revision\": \"0123456789abcdef...\",\n  \"git_detached\": \"false\",\n  \"git_dirty\": \"false\",\n  \"metadata_source\": \"git-detection\"\n}\n```\n\nThe revision is the full `HEAD` commit. Dirty state includes tracked changes and untracked files, but never their paths or contents. Detached state is reported without a branch or tag name. Git remotes, URLs, credentials, usernames, branches, absolute paths, and repository names are never inspected or uploaded by this collector.\n\nWhen capture is off, the collector does not invoke Git and reports `source_type: \"disabled\"`. Non-Git directories report `non-git`; a missing or unusable Git executable and incomplete Git state report `unavailable`.\n\nUse native Langfuse and OpenTelemetry settings for deployment identity and explicit operator-owned overrides instead of repository files:\n\n```bash\nexport LANGFUSE_RELEASE=\"1.2.3\"\nexport LANGFUSE_TRACING_ENVIRONMENT=\"production\"\nexport OTEL_SERVICE_NAME=\"pi-agent\"\nexport OTEL_RESOURCE_ATTRIBUTES=\"service.version=1.2.3,vcs.repository.name=public-repo\"\n```\n\n`LANGFUSE_RELEASE` and `LANGFUSE_TRACING_ENVIRONMENT` keep their Langfuse semantics. `OTEL_SERVICE_NAME` and `OTEL_RESOURCE_ATTRIBUTES` are loaded as process-scoped OpenTelemetry resource attributes; values such as `vcs.repository.name` apply to every session sharing the runtime, may identify private source, and require a runtime restart to change.\n\n### Compatibility and rollback\n\nEarlier versions emitted `git_commit`, branch, remote, owner, repository, and repo-local `.pi-langfuse.metadata.json` values by default. New traces use `vcs.ref.head.revision` and stop reading that file. Update dashboards before enabling source capture; historical traces are unchanged.\n\nUnset `LANGFUSE_CAPTURE_SOURCE_METADATA` to stop collection immediately. Pin `pi-langfuse@1.5.12` only if the old schema is required during migration; doing so also restores its broader default source disclosure.\n\n## Troubleshooting\n\n### No traces appearing?\n\n- Verify the API keys and run `/langfuse-setup` again if needed.\n- Run `/langfuse-status` to confirm the loaded host, config source, privacy mode, and last runtime error.\n- Confirm the Langfuse project is active and accepts writes.\n- Confirm the keys have write permission.\n- Look for `📊 Langfuse:` log messages in Pi output.\n\n### Extension not loading?\n\n```bash\npi list\npi install npm:pi-langfuse\n```\n\n### \"Missing config\" on startup?\n\n- Run `/langfuse-setup`.\n- Or set `LANGFUSE_PUBLIC_KEY` and `LANGFUSE_SECRET_KEY` before starting Pi.\n\n### Model or cost not showing?\n\n- Some providers do not expose cost information.\n- Inspect the raw observation data in Langfuse traces.\n- The `model` field can come from provider events, finalized assistant messages, `model_select`, or `ctx.model`.\n\n### API key errors?\n\n- Public keys start with `pk-lf-`.\n- Secret keys start with `sk-lf-`.\n- For self-hosted deployments, verify the host URL.\n\n## Development Docs\n\nDevelopment setup, source installation, runtime architecture, trace model, tracked fields, and validation steps are documented in [DEVELOPMENT.md](./DEVELOPMENT.md) and [DEVELOPMENT_CN.md](./DEVELOPMENT_CN.md).\n\n## License\n\nMIT\n","readmeFilename":"README.md"}