{"_id":"@feniix/pi-exa","_rev":"31-aaa13d515aaf1003fa7c0064b87486cc","name":"@feniix/pi-exa","dist-tags":{"latest":"6.0.1"},"versions":{"1.0.0":{"name":"@feniix/pi-exa","version":"1.0.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"name":"feniix"},"license":"MIT","_id":"@feniix/pi-exa@1.0.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-packages/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-packages/issues"},"pi":{"extensions":["./extensions/index.ts"]},"dist":{"shasum":"5d01f552478f372d5cbe7d76b63477a7ebeb11a5","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-1.0.0.tgz","fileCount":10,"integrity":"sha512-99T/pybNhCIu3YKRxE5rROS3232GsBI1jNgg3jQZrpwJ3lH/rEdnQD1vaGVvv5Z+jsilBzJ9JyNlLuJpeNym+Q==","signatures":[{"sig":"MEQCICzBKr5M2GpNHFuh0AjaA/rHiMgAKjRG+D5slRbbQ3DeAiA6Uxcqa4uSJDJ+SJ1ZX349U24+qqtpmf9eA3mXeSm+vw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37885},"type":"module","gitHead":"efb43b087ad20f214270c06763b01e78c5f91732","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-packages.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.6.2","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.12.0","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_1.0.0_1775486886713_0.4449817061775905","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@feniix/pi-exa","version":"1.0.1","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"name":"feniix"},"license":"MIT","_id":"@feniix/pi-exa@1.0.1","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-packages/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-packages/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"4da5dac22e3e58bf3adb5b1ba14ff8a57704d0bc","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-1.0.1.tgz","fileCount":10,"integrity":"sha512-+lLJ1VO9S6TgZsgZhUSHb9e/9pt7zrIP51prVIvXyL3qVfMFL/uwqqNzwSML4R95O6dlOhbjLu+7yEmVBkU9lA==","signatures":[{"sig":"MEUCIHbVrtkl1lXJiEQWC/W00ockhzbWdPpvNOpV4tRt21iiAiEAsvBizgxvWNpmVriAkSJfFoAJmU9GpvjRNIfPPDlXctw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37918},"type":"module","gitHead":"e22fcd5785b1c98b23fa736b6bfed04da3ad6728","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-packages.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.6.2","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.12.0","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_1.0.1_1775490182860_0.09422399556776373","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@feniix/pi-exa","version":"1.0.2","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"name":"feniix"},"license":"MIT","_id":"@feniix/pi-exa@1.0.2","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-packages/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-packages/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"eeb06e095b01541222748d672b11a805d92f5f07","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-1.0.2.tgz","fileCount":10,"integrity":"sha512-Uj9vvmphHD/j6PdIDcXo/cbo8JO41vvbo1uy8zRHloKOjw7bvTDqEWW9w5UshQSvXSEvtFuWHdfVwUjoKj21Bg==","signatures":[{"sig":"MEQCIAZvILx7Hr82eH8fHhUcSDhv6YyHNAQMoE/AkCfMcyMhAiB1Ru0FL3i/XF/swiXSpw6ePk+/gkwve6ENMYRTvBz/aQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37894},"type":"module","gitHead":"b742222a9bbe2d9b71d1f476f75272174cd4492c","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-packages.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.6.2","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.12.0","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_1.0.2_1775495569552_0.474470100155153","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@feniix/pi-exa","version":"1.0.3","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"name":"feniix"},"license":"MIT","_id":"@feniix/pi-exa@1.0.3","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-packages/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-packages/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"c4e6419969b269793d558d3a10b129a4bb51132f","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-1.0.3.tgz","fileCount":10,"integrity":"sha512-Di+D2gbaAOnWRSkru+yJW9Xu8xVGhMUDmo3dttCXnxXMfPWo3zKt5ZJNlXEoN6NI1x8RkTjWLlwO2h9R473kXw==","signatures":[{"sig":"MEUCIQCnv8U/vOHCLpmiWUbK8Cd6TA39gOo0QptbC0MVR/EIwQIgDP16JLWznHKXZrObjAY0e9e3WF5hIK8/ziP/r9r8hJk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38147},"type":"module","gitHead":"88bad5c6360d8ab6db45b614940f6fa19d046ed3","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-packages.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.6.2","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.12.0","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_1.0.3_1775517129493_0.4578946067231584","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@feniix/pi-exa","version":"1.0.4","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"name":"feniix"},"license":"MIT","_id":"@feniix/pi-exa@1.0.4","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-packages/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-packages/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"5ebd5f7e3ad77b30c8ec6c37ea20499124c1a179","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-1.0.4.tgz","fileCount":10,"integrity":"sha512-D5Ba+Ts5tGZZhqleKy36yeyWZYEOlpGyu91xj7Td/pTP9/cdf4FF4SKdJxfjCedBIQWOc6Vy+gvEfEj6rKuFVw==","signatures":[{"sig":"MEUCIQCaEw9ULx8w6fOsb6Wr4wXkzu5jI2EYsgzWU7K7tDtT9QIgfleG4l4Is+DBFeDt4xMvMTtv3KS/3terZWGUiS5/R8U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38147},"type":"module","gitHead":"42ad05a53f18ccceb3d6354c6523df3d7d2297b9","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-packages.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.6.2","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.12.0","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_1.0.4_1775530685380_0.7245302360401971","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@feniix/pi-exa","version":"1.0.5","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"name":"feniix"},"license":"MIT","_id":"@feniix/pi-exa@1.0.5","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-packages/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-packages/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"0eff2a9dc37077af720a09d09e43ce92cd7c56f7","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-1.0.5.tgz","fileCount":10,"integrity":"sha512-lv67YizjIyTbo9SzmRZ1deGqobBWatVSd74JjqLPC0DxH0O0wE+943GuBAyjx1E9fnspZBMV76pQE527KdMYqg==","signatures":[{"sig":"MEUCIFgLvzKc8wLGwbRKlGL4xGIJK/+ElI5Uqz/9cJp6kaK+AiEA2PQ01CvAeByYCQIlGNpMlXSQaGdOIYxgq6PYS62FCwM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38941},"type":"module","gitHead":"6a43aca4f4d31dea5bbbc10090f1151d35bd9754","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-packages.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_1.0.5_1776281568576_0.9685462528273547","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@feniix/pi-exa","version":"2.0.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"name":"feniix"},"license":"MIT","_id":"@feniix/pi-exa@2.0.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-packages/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-packages/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"bc82a9f19b5091a22aaf6db35da029132f1c7cb8","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-2.0.0.tgz","fileCount":10,"integrity":"sha512-qK0KvFRXfKayPK+k600Q5PGGpTNIuUx46oAipxp0mmRpLsZZOpDh6VZ0rNISfNqBC6OUdc/+/EoSoMSxA56DyQ==","signatures":[{"sig":"MEYCIQDLHZt8uAXIQJdVbfEVQHPQN0w1KqfDaOeYrhNamR16GgIhAPKZOr6F41Yr8mbI2zB0a7sPyH1KdQuVHyEwFXIJJcVP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39390},"type":"module","gitHead":"00e8d09b63a565651c6299e59182cc2850b25d79","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-packages.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_2.0.0_1776286045755_0.6071383824271528","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@feniix/pi-exa","version":"2.0.2","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"name":"feniix"},"license":"MIT","_id":"@feniix/pi-exa@2.0.2","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-packages/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-packages/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"cc83a178202c9b463fad0063ab72daa77df9ee87","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-2.0.2.tgz","fileCount":10,"integrity":"sha512-xLFvBKXhpPAnW6hyCEocpHnE562QRqFFKonZka6zAKqgyttbG5dWsokB4dn3FIC2k2VbEvZia6v1XJbUwHy+QA==","signatures":[{"sig":"MEQCIFVucmXcoPMqbOGPUiWRqomGo65NHO1eD2S+QyGzOo7tAiBYeHc6iVDARjLZZsPfzBXMJxcPCRf7T1Oe7WIaV++nUQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39547},"type":"module","gitHead":"89ff49f8e4cdb52ac232e13449b00c37d3fcd1a8","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-packages.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_2.0.2_1776311711616_0.2548836448701828","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"@feniix/pi-exa","version":"2.0.3","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"name":"feniix"},"license":"MIT","_id":"@feniix/pi-exa@2.0.3","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"d03f6ca28bb7f289e3b3027c16d299b99722d6c9","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-2.0.3.tgz","fileCount":10,"integrity":"sha512-4W5jxGbvSDNy+o7svlAW2BYABVLX++kvxr6R1Bsclejw1+zoO6fl3H8Sckr5Ccfv36Me6TQ2EEjNeUZUl95g4w==","signatures":[{"sig":"MEYCIQDupJNsSbaMIfORcwfyyLe5AKXw3Qos+RHSHEhytJ850QIhAJK3fnuV8qDaaxY2zHNL3+cgO0YdMJXG26g5s3ccUvH1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39553},"type":"module","gitHead":"4ace263af94ab9da850d286ef8a2db9db1482327","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_2.0.3_1776449478330_0.7699671438154594","host":"s3://npm-registry-packages-npm-production"}},"2.0.4":{"name":"@feniix/pi-exa","version":"2.0.4","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"name":"feniix"},"license":"MIT","_id":"@feniix/pi-exa@2.0.4","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"942a9ef0391a948ff0b675fe6d2d07783b6cefe0","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-2.0.4.tgz","fileCount":10,"integrity":"sha512-tjcEl7Kr6+z9ADLxFrn8capXiQLVmmJOEofxKFOkW8HJ4pEB9gAek1UPw8IblMAZ4hoQZmSclL9ALqPoCyWWHw==","signatures":[{"sig":"MEYCIQD3rq16zu4QD+BVh+kJpEdCOwk4/XNcRriyq+DbrdgCvQIhAOOYve4LPyYTAeG6vTH/yyJiVUbpW82qS8zDmPCwLpsM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":40854},"type":"module","gitHead":"9202d6f1798e7d41c2c80ab7c7d714aedb49c8ea","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_2.0.4_1776558297265_0.6135025535633689","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@feniix/pi-exa","version":"2.1.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@2.1.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"157dac570a7e51c92a9d05845f279192ac265dd7","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-2.1.0.tgz","fileCount":10,"integrity":"sha512-kaWHPYbDxfRlJzWXBthijnpPV70ZXqlzK7MUY2MXZonkGKi/tZMVVDPKW8bLVxjQHzyCw15OzZ25GLMaUQDKpg==","signatures":[{"sig":"MEYCIQCXj+ETRUa+PgrON/eDHzOpeapY0aJYBKOpYFnPI4YEVwIhAKuNfqkEuBxeAQNMSXkl217STcXXkscXULoYG4WHhpJE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42968},"type":"module","gitHead":"e36c2891d2e8c59b33d077ba5baa146cd04f6921","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_2.1.0_1776642761839_0.7228702415054611","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@feniix/pi-exa","version":"3.0.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@3.0.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"ee320ed343ddaa27cbd69e77dc785703affa1f96","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-3.0.0.tgz","fileCount":21,"integrity":"sha512-AdwmkdENSpUGOA4r5tDdohbqcyotl3DIJ/KQ40nsE99+lqYlEVez29TvK4h/RMARwveTgUnUCu/Q+svymHqb1A==","signatures":[{"sig":"MEYCIQCeO8S99TZSvQQuuJ3sWLVBqUNLEtyaXMik2h8LNAAHcQIhAIlxlpsWgw8GT3Bv8fHLg/xNUBCgnL/r7YNqaF/SD1z+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65820},"type":"module","gitHead":"792c4eb01f787bc04e29dcb86ebf3e8337d485ba","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_3.0.0_1776721996258_0.7274137805672856","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@feniix/pi-exa","version":"3.1.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@3.1.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"f68992fec16242df85367993769a178fc6508dc3","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-3.1.0.tgz","fileCount":21,"integrity":"sha512-bjtNZLlxvAY7P3D+BhgN+HdjekEEsIvE3uWtx4KcdvDZW2mnj/LtLvEKoJpf154dPyaqq7Fp4P0MBUHT5ssyiA==","signatures":[{"sig":"MEYCIQCFym/7lyImzgxxysEMUhmi0IRr0cE4WfhlPV44c66wJgIhAMNf6H0rtpbfENMRP5kf23JASharJpsB7Tvc5R3RqGtK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73992},"type":"module","gitHead":"a341bf16ca0c4952fafcf18d5f1c7eb98e27786a","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_3.1.0_1776734323343_0.5809626766131277","host":"s3://npm-registry-packages-npm-production"}},"3.1.1":{"name":"@feniix/pi-exa","version":"3.1.1","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch","mcp"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@3.1.1","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"092933e2d83643c1d81c5da1337a7d07faef0056","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-3.1.1.tgz","fileCount":21,"integrity":"sha512-P5UhvRMyGI1R4Vx5huwitj74O7j3kYGqVx7RvkIUo8YB7t9o+vP/RqPla6oeUHUz2jMSQcgt1ZxlpWJXklBeDw==","signatures":[{"sig":"MEUCIQDzPaURiQ3DjMPF9M2/HwicS8CDv9Pd6Lks/xtiQcd8mQIgHIzrOgcOhL6oATeQhfjDDzrkBNuUvrkJ8TB1Z484u54=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76996},"type":"module","gitHead":"4eda60aa6939753142c67d27c0c5878217377305","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa MCP extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_3.1.1_1776787167765_0.16543397213770517","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"@feniix/pi-exa","version":"3.2.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@3.2.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"7862a8da4cd02420a7ca8487ddbfdf4277c345f5","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-3.2.0.tgz","fileCount":21,"integrity":"sha512-O/qYpUUSV88pSvJX6R/WKmmG0scVRsiS/fB8rZXKvTkySLKfKIhVEcjgMpC4+NWUdzv47Efe0pIji5dHg0jBPQ==","signatures":[{"sig":"MEYCIQCCIQ+7Hl235m+KVPPeS77YgvAHO32PLivt8B55B3LSpgIhAKnuy2Bgxzdifaxnv/+KDRQfVh1hdg0EBOTueRrhnewF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76974},"type":"module","gitHead":"afd2065948026a7cffabfc3a531f13558edfe33d","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_3.2.0_1776812632644_0.24690089099786272","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"@feniix/pi-exa","version":"3.3.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@3.3.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"89f379124d7b7a8a0f118616a376a0974a6b5475","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-3.3.0.tgz","fileCount":22,"integrity":"sha512-FWGYRMRNPKUEYCctIm6yBO6KZ1gEbmdIXLAhY1KvxnBhSjW6SQKyllTg+CnKsWb+wv643yL0DVuA/dHWJWNBzA==","signatures":[{"sig":"MEYCIQCN1Ox/vqIzPd7ZutWGIhKW1gMHvnx++FvwuwUV41jq+QIhAP6hWU0y8i8tr1687kONO7Hy84ppQC+XGTGvo7zUEsoq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92088},"type":"module","gitHead":"599739c953ef5672f8930aae9bc1112d3686f73d","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_3.3.0_1776823307150_0.32267132474044224","host":"s3://npm-registry-packages-npm-production"}},"3.3.1":{"name":"@feniix/pi-exa","version":"3.3.1","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@3.3.1","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"ee6c621d5f14c153d4d9e944220db959278201f6","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-3.3.1.tgz","fileCount":22,"integrity":"sha512-KgIQW3ro2dLtzJ4V/+y+ExclVRD5GgLjDb2r3/Uw1SRm7EwsZfldAsiBaSoVFGWNjUvCpQLb6mQqDy3AW76gdg==","signatures":[{"sig":"MEQCIGuJ8ZZadAA5Y8RotzXVFmmLo0vo2YH/Pv2iedNRrDrNAiBNHR9kJfY3GW0QXjrmOr6ewN5QwAlw3HsAPSg7OFqLCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95990},"type":"module","gitHead":"af1f288668d56264ad1a4014b18e57e6342613d9","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_3.3.1_1776824186842_0.7060831858768688","host":"s3://npm-registry-packages-npm-production"}},"3.3.2":{"name":"@feniix/pi-exa","version":"3.3.2","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@3.3.2","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"ea5ba6935eaf9ca3a34ffe4171cd7c0a420d4058","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-3.3.2.tgz","fileCount":22,"integrity":"sha512-E67MF3jMm5cqOrKVGZwEagufLJUsxzKpuOhY0e9aYspHJrl+YBVvXBoZjnu2OJAW8vCw1FaNn9y8Ydqe+1P4DQ==","signatures":[{"sig":"MEQCIDhPriInJfr5IGsYKGNbzalMlyxckxVrdYJGMXWIAzg0AiAg+TR54BbC6NZJG3CpgbOeYU5Ke/wy7NYPXR1pZFxEyQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97048},"type":"module","gitHead":"8da0a0b640927b744ca780bd071296861d58618f","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_3.3.2_1776861429765_0.5383939288123196","host":"s3://npm-registry-packages-npm-production"}},"3.4.0":{"name":"@feniix/pi-exa","version":"3.4.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@3.4.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"fde70cee5bbca91312d888ef0f6d377501c4906b","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-3.4.0.tgz","fileCount":22,"integrity":"sha512-31UOUHzE5TOpK7GtOHW2If7UNVhFSVxlA2TtWFVi2OPupr4O/jCKl3JPWWGtArEjtnfrwNQsFUdcFS6DwWGNqQ==","signatures":[{"sig":"MEUCIFJHbDGX0LosZpwhaYakuN+XcrqS/WariXzKdilpwtKDAiEAwVzKqMAqzXkAeYOxgSz6W5Gx0Vj606Zv5HM8B730/Og=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97048},"type":"module","gitHead":"c6ae06d47d90b6e6c14bf09ce580f71b3c8a6557","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_3.4.0_1776865498107_0.11473663041680604","host":"s3://npm-registry-packages-npm-production"}},"3.4.1":{"name":"@feniix/pi-exa","version":"3.4.1","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@3.4.1","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"87b6b69f1acf048205cce66a960feca1f750a271","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-3.4.1.tgz","fileCount":22,"integrity":"sha512-6Vil6p+tpSZHS6+5VqVZMtKvy1oNddPqf//Gs5ki11fX/d5rEvTlsv++1E6TCit9RMcJUSvwNWNRCg9DtuXqhg==","signatures":[{"sig":"MEUCIQCqXc68p1qezq0VFSIzuq0oy5wwTTCWNWjzvpPMzW40NAIgfsLoLiekQHiVGzMiVvkpxukA5t2UO4+gCcnQ0NCqZvQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97028},"type":"module","gitHead":"b7b03cf589625a48e2217c995457d166d5962c76","_npmUser":{"name":"feniix","email":"feniix@gmail.com"},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_3.4.1_1776896163627_0.37923568085036874","host":"s3://npm-registry-packages-npm-production"}},"3.4.2":{"name":"@feniix/pi-exa","version":"3.4.2","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@3.4.2","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"e82c5ce92ac614b130fa7a5ae4f1fb86d51f4e22","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-3.4.2.tgz","fileCount":22,"integrity":"sha512-zLsFaBcUyjiPHteIbTH3kpAwhE2+bmvyne/C/e4OwIM2QqT44LWw7FsrbLhUOKhCZ5S54qOHOL+AwLodwFAH/g==","signatures":[{"sig":"MEUCIC+GU02mSWiG5nXoYqKiHIL2zsDU7mTvCzFCxId87l5qAiEA5LwNlu/UV6wDYcvs9jhWrtQe+nmd5H6bBN9OkOzjmGw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@feniix%2fpi-exa@3.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":96870},"type":"module","gitHead":"c939772f9565f5145c08a3ad922720944dcd740e","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9799ed87-3efc-4d37-b4d2-fb4ea31b9ff1"}},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.11.0","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_3.4.2_1777260759673_0.7762838957175051","host":"s3://npm-registry-packages-npm-production"}},"3.5.0":{"name":"@feniix/pi-exa","version":"3.5.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@3.5.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"6f08b2177a9dd6678eb4f4642f3a05923e95d37f","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-3.5.0.tgz","fileCount":24,"integrity":"sha512-409cKIhw2YWLSU5SmVhCAY6kVTDhZ0Bd0FzqMARfpMLGSSg1irx3N8Z7lRR3EZxWXnLFvaKYMdCeSIxSDs5mfQ==","signatures":[{"sig":"MEQCIAL8BTQbQdXpKOKFekfyvL/EOSJtzpnXMZUeXANsSKgDAiAiPZEMEDBEPTbj9s+wG3aRJsv33bSqF0KYfl5CzbEuHg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@feniix%2fpi-exa@3.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":136754},"type":"module","gitHead":"cc01ab014898ebd8f1c9f2d3de4116997dc8fe2b","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9799ed87-3efc-4d37-b4d2-fb4ea31b9ff1"}},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.11.0","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_3.5.0_1777851141273_0.3979959622677882","host":"s3://npm-registry-packages-npm-production"}},"4.0.0":{"name":"@feniix/pi-exa","version":"4.0.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@4.0.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"6594bbfb672b83fd484614cc2132b9a51b21900e","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-4.0.0.tgz","fileCount":24,"integrity":"sha512-9wT3+nxbNb/dp+GlG1O0S0NIUgDc3eEKXs3NChjFH1xNE8x4pHyq9cYOBKcp406OInLgG92UbAF4eerURP7lEg==","signatures":[{"sig":"MEYCIQDcd/uFwHD+Kjwq/wFA8uo2h5ARDJ2l1Gq+BrsPoFJIiQIhALdOfVssyAbpAXNnCyuH1oBThWRk6/zNfyzxsg6BfcpX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@feniix%2fpi-exa@4.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":136973},"type":"module","gitHead":"09622901583790ea14ef5907dc290f0ae3c39624","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9799ed87-3efc-4d37-b4d2-fb4ea31b9ff1"}},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.11.0","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.14.1","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"typebox":"*","@earendil-works/pi-ai":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"typebox":{"optional":true},"@earendil-works/pi-ai":{"optional":true},"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_4.0.0_1778470766315_0.2889939780799837","host":"s3://npm-registry-packages-npm-production"}},"4.0.1":{"name":"@feniix/pi-exa","version":"4.0.1","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@4.0.1","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"07b651d797ca926dea5d71a6c2b0518627574797","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-4.0.1.tgz","fileCount":24,"integrity":"sha512-igQwptgnq5+9KP3zCFsNVHAP87YvWpb1VZQdpu5UJym8SEWyPfXHWWX/vjqK3DlNk6LZyAUK8DeiomRe07tnKg==","signatures":[{"sig":"MEUCID8RhiL/rcw96BQzt7IBMMx0QJXqoYaf6/u3tLWUPiKzAiEA8rCeGkUvfTvYkERud4RH7t/VRxdo+cNN69hZ9EMr54M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@feniix%2fpi-exa@4.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":136973},"type":"module","gitHead":"178c313c29a9e3af90e2df1ad619fa739dfe11f9","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9799ed87-3efc-4d37-b4d2-fb4ea31b9ff1"}},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.15.0","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"typebox":"*","@earendil-works/pi-ai":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"typebox":{"optional":true},"@earendil-works/pi-ai":{"optional":true},"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_4.0.1_1778865782881_0.5398289902981817","host":"s3://npm-registry-packages-npm-production"}},"4.1.0":{"name":"@feniix/pi-exa","version":"4.1.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@4.1.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"dist":{"shasum":"78c723792af8b6ffb29cb12e2f850137f9ad7c81","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-4.1.0.tgz","fileCount":24,"integrity":"sha512-jAtzHEWgisTMHm1cUnXBZR5FceY50yTFqNKmnpML+dkBdMxe+miPjPsDb2tYQk+p3R5r4RaWn3gWV9OBGbmm4g==","signatures":[{"sig":"MEUCIQDKjZmsIX52GUBjPPF1yFIg+hAWY4P2kPHapsPvw5zLdQIgT5QORx21VuXXEpLpsQu8FKnWMxqo/uukVgL/kEylV48=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@feniix%2fpi-exa@4.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":150140},"type":"module","gitHead":"de3c988c4cc83cccc3368c47ee86db5d946400ca","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9799ed87-3efc-4d37-b4d2-fb4ea31b9ff1"}},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.12.1","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.15.0","dependencies":{"exa-js":"^2.8.0"},"_hasShrinkwrap":false,"peerDependencies":{"typebox":"*","@earendil-works/pi-ai":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"typebox":{"optional":true},"@earendil-works/pi-ai":{"optional":true},"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_4.1.0_1779746060068_0.7855163655653123","host":"s3://npm-registry-packages-npm-production"}},"5.0.0":{"name":"@feniix/pi-exa","version":"5.0.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@5.0.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"bin":{"pi-exa":"bin/pi-exa.js"},"dist":{"shasum":"486f1643b1ffd4a36ba375248d313f17d492cfc4","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-5.0.0.tgz","fileCount":61,"integrity":"sha512-BK3bYzy1EWal9kW88Fm/KQrrdZBvvDNLNkiTOvKRCSpSrDR8LKjAWjMimMztXxQwQFOflouWDuLaAAfhXgXD0A==","signatures":[{"sig":"MEQCIFhCccpgb5qVo5l5VUib+1Rj34oonmadZowmLWPBuLehAiB3lg874aJICSGPiCf5TBYuj7iw73Gy1UUOhTpXCNA73Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@feniix%2fpi-exa@5.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":315142},"type":"module","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/extensions/tools.d.ts","import":"./dist/extensions/tools.js"},"./mcp":{"types":"./dist/extensions/mcp-server.d.ts","import":"./dist/extensions/mcp-server.js"},"./tools":{"types":"./dist/extensions/tools.d.ts","import":"./dist/extensions/tools.js"},"./extensions/*":{"types":"./dist/extensions/*.d.ts","import":"./dist/extensions/*.js"},"./package.json":"./package.json","./extensions/*.js":{"types":"./dist/extensions/*.d.ts","import":"./dist/extensions/*.js"}},"gitHead":"ea2bb2a8dd9b29ef90fe7b8722c6951690d9bbdf","scripts":{"prepack":"npm run build:mcp","build:mcp":"tsc --project tsconfig.mcp.json && node -e \"require('node:fs').chmodSync('dist/extensions/mcp-server.js', 0o755)\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9799ed87-3efc-4d37-b4d2-fb4ea31b9ff1"}},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.13.0","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.16.0","dependencies":{"exa-js":"^2.8.0","typebox":"^1.1.31","@feniix/bridgekit":"^0.13.0"},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"@earendil-works/pi-ai":{"optional":true},"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_5.0.0_1779939609336_0.8731421650030837","host":"s3://npm-registry-packages-npm-production"}},"5.0.1":{"name":"@feniix/pi-exa","version":"5.0.1","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@5.0.1","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"bin":{"pi-exa":"bin/pi-exa.js"},"dist":{"shasum":"d6400cbae205b0d679627421b8b98c70a6fce51b","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-5.0.1.tgz","fileCount":61,"integrity":"sha512-7D3KriN3Qj1hd6SBxu7wq9UXzcvVw9Fu02NLCGWvdkBmKChhcVpeAAdsXbx/+y03SeiK9lf+0Qvpz5MwNdPjiQ==","signatures":[{"sig":"MEUCIQCtdY4gVffa67mrPz4mR9QQzA2BBkMgdIyfnLCAr6zX1QIgLcXNqI1NMgZ3sEh2SZRHzM55FqTDL4NjCctMgXdAAUY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@feniix%2fpi-exa@5.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":324832},"type":"module","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/extensions/tools.d.ts","import":"./dist/extensions/tools.js"},"./mcp":{"types":"./dist/extensions/mcp-server.d.ts","import":"./dist/extensions/mcp-server.js"},"./tools":{"types":"./dist/extensions/tools.d.ts","import":"./dist/extensions/tools.js"},"./extensions/*":{"types":"./dist/extensions/*.d.ts","import":"./dist/extensions/*.js"},"./package.json":"./package.json","./extensions/*.js":{"types":"./dist/extensions/*.d.ts","import":"./dist/extensions/*.js"}},"gitHead":"115135adcdc65803e33151fe3df0698d773f3697","scripts":{"prepack":"npm run build:mcp","build:mcp":"tsc --project tsconfig.mcp.json && node -e \"require('node:fs').chmodSync('dist/extensions/mcp-server.js', 0o755)\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9799ed87-3efc-4d37-b4d2-fb4ea31b9ff1"}},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.13.0","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.16.0","dependencies":{"exa-js":"^2.8.0","typebox":"^1.1.31","@feniix/bridgekit":"^0.13.0"},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"@earendil-works/pi-ai":{"optional":true},"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_5.0.1_1781547580148_0.4685425908655081","host":"s3://npm-registry-packages-npm-production"}},"5.1.0":{"name":"@feniix/pi-exa","version":"5.1.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@5.1.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"bin":{"pi-exa":"bin/pi-exa.js"},"dist":{"shasum":"1218ee939ffa73c0360f9db29c1da5addf5583c8","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-5.1.0.tgz","fileCount":62,"integrity":"sha512-LtLIDi7tRytTcJZvgx9kMXPNA+/2Z9xBzUU/d5toVPt+6tzOH/4NAz741qbG8SmYuzfKLfHIOj6m/mK4pqf2ZQ==","signatures":[{"sig":"MEYCIQDtUEJmWduf6F2WSm6hlxmWPXfeJurzETsXS+plNwM7egIhAK5jOpLjyF6MFLq2xYJX7Azqhx4BYrcMAFLdSm4Zf5iM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@feniix%2fpi-exa@5.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":338275},"type":"module","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/extensions/tools.d.ts","import":"./dist/extensions/tools.js"},"./mcp":{"types":"./dist/extensions/mcp-server.d.ts","import":"./dist/extensions/mcp-server.js"},"./tools":{"types":"./dist/extensions/tools.d.ts","import":"./dist/extensions/tools.js"},"./extensions/*":{"types":"./dist/extensions/*.d.ts","import":"./dist/extensions/*.js"},"./package.json":"./package.json","./extensions/*.js":{"types":"./dist/extensions/*.d.ts","import":"./dist/extensions/*.js"},"./extensions/tui-renderers":null,"./extensions/tui-renderers.js":null},"gitHead":"361c22207abd87438aaf561cbc9c9fec4515314d","scripts":{"prepack":"npm run build:mcp","build:mcp":"tsc --project tsconfig.mcp.json && node -e \"require('node:fs').chmodSync('dist/extensions/mcp-server.js', 0o755)\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9799ed87-3efc-4d37-b4d2-fb4ea31b9ff1"}},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.16.0","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.18.0","dependencies":{"exa-js":"^2.8.0","typebox":"^1.1.31","@feniix/bridgekit":"^0.15.0"},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"@earendil-works/pi-ai":{"optional":true},"@earendil-works/pi-tui":{"optional":true},"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_5.1.0_1783875612827_0.7358450202994071","host":"s3://npm-registry-packages-npm-production"}},"5.1.1":{"name":"@feniix/pi-exa","version":"5.1.1","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@5.1.1","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://github.com/feniix/pi-extensions/tree/main/packages/pi-exa#readme","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"bin":{"pi-exa":"bin/pi-exa.js"},"dist":{"shasum":"6783f863fba8fadb419bff0288b7f4a5b2a45fd0","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-5.1.1.tgz","fileCount":62,"integrity":"sha512-h6lnzvfCM+FlaMrT9rswEOkVvn+6LcEV5gIBI2U9vSGj7Okait2pEf0rypH36zcHo0m1l8vTKlp48YboB7nQHg==","signatures":[{"sig":"MEUCIQDCDY8DyYVPzAX60IlaF4fUUFhzyKlFpKiaa9ypdVoPjgIgZ0JCxEr8xARSuaXCLUKvtntP9p1KzoiPnvUokJIgL74=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@feniix%2fpi-exa@5.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":338275},"type":"module","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/extensions/tools.d.ts","import":"./dist/extensions/tools.js"},"./mcp":{"types":"./dist/extensions/mcp-server.d.ts","import":"./dist/extensions/mcp-server.js"},"./tools":{"types":"./dist/extensions/tools.d.ts","import":"./dist/extensions/tools.js"},"./extensions/*":{"types":"./dist/extensions/*.d.ts","import":"./dist/extensions/*.js"},"./package.json":"./package.json","./extensions/*.js":{"types":"./dist/extensions/*.d.ts","import":"./dist/extensions/*.js"},"./extensions/tui-renderers":null,"./extensions/tui-renderers.js":null},"gitHead":"36cf6ac5497b8cb75c7c7a34afe78c14b3584a61","scripts":{"prepack":"npm run build:mcp","build:mcp":"tsc --project tsconfig.mcp.json && node -e \"require('node:fs').chmodSync('dist/extensions/mcp-server.js', 0o755)\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9799ed87-3efc-4d37-b4d2-fb4ea31b9ff1"}},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.16.0","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.18.0","dependencies":{"exa-js":"^2.8.0","typebox":"^1.1.31","@feniix/bridgekit":"^0.15.0"},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"@earendil-works/pi-ai":{"optional":true},"@earendil-works/pi-tui":{"optional":true},"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_5.1.1_1783876261485_0.9177123293027705","host":"s3://npm-registry-packages-npm-production"}},"6.0.0":{"name":"@feniix/pi-exa","version":"6.0.0","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","_id":"@feniix/pi-exa@6.0.0","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"homepage":"https://feniix-hq.net/projects/pi-extensions/","bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"bin":{"pi-exa":"bin/pi-exa.js"},"dist":{"shasum":"9a531bddb9317c97b8cada98897ee55a5c1af0e9","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-6.0.0.tgz","fileCount":62,"integrity":"sha512-EvgAI1WAr8vhujHhaXr8MqL9NMbMUFWOXIUG1/yPmwX2M9KBjKopnCw1MmNUem2nyzn2ndj6RbaTUHKBqobUmg==","signatures":[{"sig":"MEQCIAaq5oes0A4g1WgJn84TwsmrKZnGqd8lLdllGIkzGLg0AiB1DlD0SQ4X0NOsdurBseDeRLd5Jfn9orBEIuzhmwrzmw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCPOqLMqXtV/U+8aUf3zThTGBkUMtH23VnQv7dPDbnGxgIhAJLHhY5wqfhxKJcPtaLkrVdE7elHqFjRWg8O5HGh0fIU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@feniix%2fpi-exa@6.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":365793},"type":"module","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/extensions/tools.d.ts","import":"./dist/extensions/tools.js"},"./mcp":{"types":"./dist/extensions/mcp-server.d.ts","import":"./dist/extensions/mcp-server.js"},"./tools":{"types":"./dist/extensions/tools.d.ts","import":"./dist/extensions/tools.js"},"./extensions/*":{"types":"./dist/extensions/*.d.ts","import":"./dist/extensions/*.js"},"./package.json":"./package.json","./extensions/*.js":{"types":"./dist/extensions/*.d.ts","import":"./dist/extensions/*.js"},"./extensions/tui-renderers":null,"./extensions/tui-renderers.js":null},"gitHead":"161032d5110ac79fa3f20440976deb6066f7d794","scripts":{"prepack":"npm run build:mcp","build:mcp":"tsc --project tsconfig.mcp.json && node -e \"require('node:fs').chmodSync('dist/extensions/mcp-server.js', 0o755)\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9799ed87-3efc-4d37-b4d2-fb4ea31b9ff1"}},"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.19.0","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"_nodeVersion":"24.21.0","dependencies":{"exa-js":"^2.19.0","@feniix/bridgekit":"^0.15.0"},"_hasShrinkwrap":false,"peerDependencies":{"typebox":"*","@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"@earendil-works/pi-ai":{"optional":true},"@earendil-works/pi-tui":{"optional":true},"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-exa_6.0.0_1790719493535_0.0971301991671607","host":"s3://npm-registry-packages-npm-production"}},"6.0.1":{"pi":{"skills":["./skills"],"extensions":["./extensions/index.ts"]},"_id":"@feniix/pi-exa@6.0.1","bin":{"pi-exa":"bin/pi-exa.js"},"bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"dist":{"shasum":"4b420d2e32c2bd646eaf66d2b1568e2133a190eb","tarball":"https://registry.npmjs.org/@feniix/pi-exa/-/pi-exa-6.0.1.tgz","fileCount":62,"integrity":"sha512-RhhU2asg2FpCCggV+6eKh7l8HCyY+YnYi2pqjmXOuLFPQfc0rGMvEXsVep5PBNFRK3+0TYxR02r/FOd9pwYwRw==","signatures":[{"sig":"MEUCIQC+AC3nqSW5ohaes7k1kc2kRDTKGuVcsnxJoCIoZt8AuQIgaXgFn3FVzHSDQQzwrNtC3xsw5Joeq7ullof5/ly7Riw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCQqd9qzCj/OVFHBlA2B8bth3FjXcHsiq37m9O8Qx2KqQIhAIUPm2ujNd59psx5ftazO/g5GnYpav0JXdInX0SmP+PI"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@feniix%2fpi-exa@6.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":366020},"name":"@feniix/pi-exa","type":"module","author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/extensions/tools.d.ts","import":"./dist/extensions/tools.js"},"./mcp":{"types":"./dist/extensions/mcp-server.d.ts","import":"./dist/extensions/mcp-server.js"},"./tools":{"types":"./dist/extensions/tools.d.ts","import":"./dist/extensions/tools.js"},"./extensions/*":{"types":"./dist/extensions/*.d.ts","import":"./dist/extensions/*.js"},"./package.json":"./package.json","./extensions/*.js":{"types":"./dist/extensions/*.d.ts","import":"./dist/extensions/*.js"},"./extensions/tui-renderers":null,"./extensions/tui-renderers.js":null},"gitHead":"9fc8a9fcf5e9e69655736bc566543156579e135d","license":"MIT","scripts":{"prepack":"pnpm run build:mcp","build:mcp":"tsc --project tsconfig.mcp.json && node -e \"require('node:fs').chmodSync('dist/extensions/mcp-server.js', 0o755)\""},"version":"6.0.1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9799ed87-3efc-4d37-b4d2-fb4ea31b9ff1"}},"homepage":"https://feniix-hq.net/projects/pi-extensions/","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"_npmVersion":"11.19.0","description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","directories":{},"maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"_nodeVersion":"24.21.0","dependencies":{"exa-js":"^2.19.0","@feniix/bridgekit":"^0.15.0"},"_hasShrinkwrap":false,"peerDependencies":{"typebox":"*","@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"@earendil-works/pi-ai":{"optional":true},"@earendil-works/pi-tui":{"optional":true},"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-exa_6.0.1_1790777968923_0.4276017333597615"}}},"time":{"created":"2026-04-06T14:48:06.588Z","modified":"2026-09-30T14:19:29.574Z","1.0.0":"2026-04-06T14:48:06.881Z","1.0.1":"2026-04-06T15:43:03.009Z","1.0.2":"2026-04-06T17:12:49.707Z","1.0.3":"2026-04-06T23:12:09.651Z","1.0.4":"2026-04-07T02:58:05.526Z","1.0.5":"2026-04-15T19:32:48.723Z","2.0.0":"2026-04-15T20:47:25.921Z","2.0.2":"2026-04-16T03:55:11.788Z","2.0.3":"2026-04-17T18:11:18.538Z","2.0.4":"2026-04-19T00:24:57.396Z","2.1.0":"2026-04-19T23:52:41.998Z","3.0.0":"2026-04-20T21:53:16.386Z","3.1.0":"2026-04-21T01:18:43.473Z","3.1.1":"2026-04-21T15:59:27.908Z","3.2.0":"2026-04-21T23:03:52.787Z","3.3.0":"2026-04-22T02:01:47.302Z","3.3.1":"2026-04-22T02:16:27.013Z","3.3.2":"2026-04-22T12:37:09.903Z","3.4.0":"2026-04-22T13:44:58.251Z","3.4.1":"2026-04-22T22:16:03.771Z","3.4.2":"2026-04-27T03:32:39.815Z","3.5.0":"2026-05-03T23:32:21.437Z","4.0.0":"2026-05-11T03:39:26.465Z","4.0.1":"2026-05-15T17:23:03.047Z","4.1.0":"2026-05-25T21:54:20.203Z","5.0.0":"2026-05-28T03:40:09.493Z","5.0.1":"2026-06-15T18:19:40.282Z","5.1.0":"2026-07-12T17:00:13.077Z","5.1.1":"2026-07-12T17:11:01.684Z","6.0.0":"2026-09-29T22:04:53.647Z","6.0.1":"2026-09-30T14:19:29.030Z"},"bugs":{"url":"https://github.com/feniix/pi-extensions/issues"},"author":{"url":"https://github.com/feniix","name":"Sebastian Otaegui"},"license":"MIT","homepage":"https://feniix-hq.net/projects/pi-extensions/","keywords":["pi","pi-package","pi-extension","pi-coding-agent","ai","exa","search","websearch"],"repository":{"url":"git+https://github.com/feniix/pi-extensions.git","type":"git","directory":"packages/pi-exa"},"description":"Exa API extension for pi — web search, content fetching, and advanced search via Exa AI","maintainers":[{"name":"feniix","email":"feniix@gmail.com"}],"readme":"# @feniix/pi-exa\n\n[Exa AI](https://exa.ai) extension for [pi](https://pi.dev/) with search, fetch, research, and answer capabilities.\n\n## Features\n\n- **web_search_exa**: default web search (highlights + short text snippets).\n- **web_fetch_exa**: fetch page content by URL.\n- **web_search_advanced_exa**: filtered search and synchronous Deep Search through `/search` (disabled by default).\n- **web_research_exa**: asynchronous Agent research with polling and remote cancellation once a run ID is known (disabled by default).\n- **web_answer_exa**: quick grounded answers.\n- **web_find_similar_exa**: discover related URLs.\n- **exa_research_step/status/summary/reset**: local, stateful research-planning tools that recommend explicit Exa retrieval calls without executing them.\n\n## Why pi-exa vs the hosted Exa MCP?\n\nThe hosted Exa MCP at `https://mcp.exa.ai/mcp` is a fine default for one-shot search and fetch. pi-exa exists for cases the hosted MCP cannot address by design:\n\n- **Tools the hosted MCP does not expose.** `web_answer_exa` (Exa's `/answer` endpoint) and `web_find_similar_exa` (`/findSimilar`) are not advertised by the hosted MCP under any flag. If you need grounded answers with citations or \"more like this\" discovery, you call them directly through pi-exa.\n- **Local stateful planning.** `exa_research_step / status / summary / reset` keep an in-memory research plan that survives across calls in a single pi session. A stateless remote MCP cannot offer this — there is no per-session memory to update.\n- **Local key custody and allowlists.** Your `EXA_API_KEY` and `enabledTools` allowlist stay on the workstation. The hosted MCP requires sending your key to a third party on every request.\n- **Pre-flight validation.** pi-exa rejects category/filter combinations Exa silently ignores (e.g., `category: \"people\"` with non-LinkedIn `includeDomains`), so you find out at the call site instead of in a quiet, empty result set.\n- **Agent-native research lifecycle.** `web_research_exa` submits an Agent run, polls it to a terminal state, and cancels the remote run when the host aborts or its deadline expires after a run ID is known. Other tools stay on Exa's purpose-built `/search`, `/contents`, `/answer`, and `/findSimilar` APIs.\n\n| Capability                                  | Hosted Exa MCP | pi-exa |\n| ------------------------------------------- | :------------: | :----: |\n| `web_search_exa`                            |       yes      |   yes  |\n| `web_fetch_exa`                             |       yes      |   yes  |\n| `web_search_advanced_exa`                   |     opt-in     |  opt-in|\n| `web_answer_exa` (`/answer`)                |       no       |   yes  |\n| `web_find_similar_exa` (`/findSimilar`)     |       no       |   yes  |\n| Local research planner (`exa_research_*`)   |       no       |   yes  |\n| Local API key custody                       |       no       |   yes  |\n| Agent Runs API with timeout cancellation    |       no       |   yes  |\n\n## Install\n\n```bash\npi install npm:@feniix/pi-exa\n```\n\nFor ephemeral use:\n\n```bash\npi -e npm:@feniix/pi-exa\n```\n\n## Configuration\n\nYou need an Exa API key from [dashboard.exa.ai/api-keys](https://dashboard.exa.ai/api-keys) for retrieval tools. The local `exa_research_*` planning tools work without an API key because they do not call Exa network APIs.\n\nIf you configure `enabledTools`, it acts as a strict allowlist. Include the `exa_research_*` names if you want the planner tools available with an explicit allowlist.\n\n### Recommended: environment variable\n\n```bash\nexport EXA_API_KEY=\"your-key\"\n```\n\n### Recommended for private overrides: explicit config file\n\nUse a private config file when you want to store an API key outside shared project settings:\n\n```json\n{\n  \"apiKey\": \"your-key\",\n  \"enabledTools\": [\n    \"exa_research_step\",\n    \"exa_research_status\",\n    \"exa_research_summary\",\n    \"exa_research_reset\",\n    \"web_search_exa\",\n    \"web_fetch_exa\",\n    \"web_answer_exa\",\n    \"web_find_similar_exa\"\n  ],\n  \"advancedEnabled\": false,\n  \"researchEnabled\": false\n}\n```\n\nThen run pi with:\n\n```bash\npi -e npm:@feniix/pi-exa -- --exa-config-file ~/.config/pi/exa.json\n```\n\n### Shared non-secret settings\n\nSupports standard pi settings locations:\n\n- project: `.pi/settings.json`\n- global: `~/.pi/agent/settings.json`\n\nExample:\n\n```json\n{\n  \"pi-exa\": {\n    \"enabledTools\": [\n      \"exa_research_step\",\n      \"exa_research_status\",\n      \"exa_research_summary\",\n      \"exa_research_reset\",\n      \"web_search_exa\",\n      \"web_fetch_exa\",\n      \"web_answer_exa\",\n      \"web_find_similar_exa\"\n    ],\n    \"advancedEnabled\": false,\n    \"researchEnabled\": false\n  }\n}\n```\n\n`apiKey` is accepted in settings files for compatibility, but `pi-exa` will warn when it is loaded there. Prefer `EXA_API_KEY` or `--exa-config-file` for secrets.\n\n## CLI flags\n\n- `--exa-api-key <key>`: API key override.\n- `--exa-enable-advanced`: enable `web_search_advanced_exa`.\n- `--exa-enable-research`: enable `web_research_exa`.\n- `--exa-config-file <path>`: load configuration from file.\n- `--exa-config <path>` (deprecated alias for `--exa-config-file`).\n- `--exa-timeout-ms <ms>`: default per-call timeout for Exa-backed tools (built-in 60000).\n- `--exa-research-timeout-ms <ms>`: override for `web_research_exa` Agent runs (built-in 180000).\n\n> For ordinary Exa SDK calls, the timeout bounds the JS-side wait because `exa-js` does not yet accept `AbortSignal` ([exa-labs/exa-js#158](https://github.com/exa-labs/exa-js/issues/158)). `web_research_exa` owns the Agent run lifecycle and calls Exa's cancel endpoint on host abort or timeout once Exa has returned a run ID.\n\n## Tools\n\n### exa_research_step\n\nRecords one step in an in-memory research-planning session. Params include `topic`, `stage`, `note`, optional `criteria`, `sources`, `gaps`, `assumptions`, `nextAction`, branch/revision metadata, `thought_number`, `total_thoughts`, and `next_step_needed`.\n\n### exa_research_status\n\nReports the current local planning state: topic, step count, active stage, branches, criteria coverage, source pack summary, open gaps, assumptions, and recommended next action.\n\n### exa_research_summary\n\nGenerates human-readable research planning output. Modes: `brief`, `execution_plan`, `source_pack`, and `payload`. Payload mode suggests a `web_research_exa` payload only; it does not run retrieval.\n\n### exa_research_reset\n\nClears the active in-memory planning session.\n\n### web_search_exa\n\nParams: `query` (required), `numResults`.\n\nReturns: formatted snippets with optional highlights and metadata (`costDollars`, `searchTime`).\n\n### web_fetch_exa\n\nParams: `urls` (required array), `maxCharacters`, `highlights`, `summary` (`query`), `maxAgeHours`.\n\n### web_search_advanced_exa\n\nParams:\n\n- `query` (required)\n- `numResults` (1-100, default 10)\n- `category`: one of `company`, `publication`, `research paper`, `news`, `pdf`, `personal site`, `financial report`, `people`\n- `type`: `instant | fast | auto | deep-lite | deep | deep-reasoning`.\n- `systemPrompt`: instructions guiding search behavior, source selection, and synthesis.\n- `outputSchema`: `{ \"type\": \"text\" }` for prose or an object JSON Schema for structured synthesis.\n- Date filters: `startPublishedDate`, `endPublishedDate` (ISO dates).\n- Domain filters: `includeDomains`, `excludeDomains`.\n- Text filters: `includeText` (single-element array; only return results whose text contains this string, up to 5 words), `excludeText` (single-element array; exclude results whose text contains this string, up to 5 words). The Exa API accepts at most one string per filter.\n- `userLocation`: two-letter ISO country code (e.g., `US`, `GB`, `DE`).\n- `moderation`: when `true`, filter unsafe content.\n- `additionalQueries`: alternative query formulations for `deep-lite`, `deep`, or `deep-reasoning` only.\n- `textMaxCharacters`: max chars of page text per result (default 3000).\n- `contextMaxCharacters`: max chars for the aggregated context string. Maps to Exa's deprecated `context` option and may be removed in a future Exa API release.\n- Highlights: `enableHighlights` (gate), `highlightsMaxCharacters` (preferred), `highlightsNumSentences` (legacy fallback), `highlightsQuery` (overrides the search query for highlight ranking). Providing `highlightsQuery` or `highlightsMaxCharacters` implies `enableHighlights: true`; passing `enableHighlights: false` explicitly always disables highlights.\n- Summary: `enableSummary` and/or `summaryQuery` (providing `summaryQuery` implies `enableSummary: true`; passing `enableSummary: false` explicitly always disables the summary).\n- Freshness: `maxAgeHours` (0 = always fresh, -1 = cache-only), `livecrawlTimeout` (ms; capped at 60000 = 60s).\n- Subpages: `subpages` (1-10), `subpageTarget` (single keyword or list of keywords used to select which subpages to crawl, e.g. `'about'` or `['about', 'pricing']`).\n\nNotes:\n- Deep Search is synchronous `/search` synthesis. Deep modes default to text synthesis when `outputSchema` is omitted.\n- Use `web_research_exa` instead when the task needs an asynchronous Agent run, continuation, Connect data sources, effort/budget controls, or remote cancellation.\n- Invalid categories return an error instead of silently falling back to an unfiltered search.\n- The `company` and `people` categories do not support `startPublishedDate`, `endPublishedDate`, or `excludeDomains`; the `people` category only accepts LinkedIn domains for `includeDomains`. These are enforced pre-flight.\n- `startCrawlDate` / `endCrawlDate` are intentionally not exposed — Exa silently ignores them as of 2026-04-15.\n\n### web_research_exa\n\nParams include:\n\n- `query` (required)\n- `systemPrompt`\n- `effort`: `minimal | low | medium | high | xhigh | auto | max` (default `medium`). `auto` and `max` are metered; use `budget.maxCostDollars` to cap them.\n- `outputSchema`: `{ \"type\": \"text\" }` (default) reads `output.text`; an object JSON Schema is sent to Exa and returns `output.structured`.\n- `input.data` / `input.exclusion`: records to process or exclude.\n- `previousRunId`: continue from a completed Agent run.\n- `metadata`: string key/value metadata stored with the run.\n- `dataSources`: up to five Exa Connect providers.\n- `budget.maxCostDollars`: spend ceiling for `auto` or `max`.\n\nThe tool submits `POST /agent/runs`, polls the run to completion, returns the run ID and cost/usage metadata, and attempts `POST /agent/runs/{id}/cancel` on host abort or timeout. `max` effort automatically opts into Exa's required max-effort beta.\n\n### web_answer_exa\n\nParams include `query` (required), `systemPrompt`, `text`, and `outputSchema`.\n\n### web_find_similar_exa\n\nParams include `url` (required), `numResults`, `textMaxCharacters`, `excludeSourceDomain`, date filters, and domain filters.\n\nExa marks `/findSimilar` deprecated and recommends `/search` for new discovery flows. This compatibility tool remains available for URL-seeded similarity workflows.\n\n## Integration tests\n\nLive integration coverage is available for `web_search_exa`, `web_fetch_exa`, `web_search_advanced_exa`, and `web_research_exa`.\n\nThese tests are:\n- skipped by default\n- only enabled when you opt in manually\n- always skipped in CI\n\nRun them locally with a real API key:\n\n```bash\nPI_EXA_LIVE=1 EXA_API_KEY=your-key pnpm exec vitest run packages/pi-exa/__tests__/integration.test.ts\n```\n\nThe live suite incurs real Exa usage and is never enabled in CI.\n\n## MCP server\n\npi-exa also exposes its tool surface as an MCP stdio server, suitable for any MCP-aware host (Claude Desktop, Claude Code, etc.). The server uses the same portable tool implementations as the Pi adapter — only the gating and credential resolution differ.\n\nRun with:\n\n```bash\nnpx pi-exa\n```\n\n### Environment configuration\n\n| Variable             | Effect                                                                                                                                                                          |\n| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `EXA_API_KEY`        | Exa API key. Required for retrieval tools; planner tools work without it.                                                                                                       |\n| `EXA_ENABLE_ADVANCED`| Truthy (`1` / `true` / `yes`) enables `web_search_advanced_exa`.                                                                                                                |\n| `EXA_ENABLE_RESEARCH`| Truthy enables `web_research_exa`.                                                                                                                                              |\n| `EXA_ENABLED_TOOLS`  | Comma-separated allowlist. Highest precedence. Empty/whitespace-only values emit a warning and fall through to the per-tool toggle defaults.                                    |\n| `EXA_CONFIG_FILE`    | Path to a JSON config file (same shape as the CLI `--exa-config-file`). Use for `apiKey`, `enabledTools`, `advancedEnabled`, `researchEnabled`.                                 |\n| `EXA_CONFIG`         | Deprecated alias for `EXA_CONFIG_FILE`. Still read; prefer `EXA_CONFIG_FILE`.                                                                                                   |\n| `EXA_TIMEOUT_MS`     | Default per-call timeout in ms for Exa-backed tools. Built-in 60000, or 180000 for advanced search and Agent research. Underlying HTTP request continues until Exa resolves it; see [exa-labs/exa-js#158](https://github.com/exa-labs/exa-js/issues/158). |\n| `EXA_RESEARCH_TIMEOUT_MS` | Override for `web_research_exa` only. Built-in 180000.                                                                                                                     |\n\n### Precedence\n\nSame rules as the Pi adapter:\n\n1. `EXA_ENABLED_TOOLS` (env) — strict allowlist.\n2. `enabledTools` (config file) — strict allowlist; an empty array means \"no tools\".\n3. `EXA_ENABLE_ADVANCED` / `EXA_ENABLE_RESEARCH` (env) or `advancedEnabled` / `researchEnabled` (config file).\n4. Default: 8 tools on (4 cheap Exa + 4 planner); `web_search_advanced_exa` and `web_research_exa` hidden.\n\n### Example: Claude Desktop / `claude_desktop_config.json`\n\n```json\n{\n  \"mcpServers\": {\n    \"pi-exa\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@feniix/pi-exa\"],\n      \"env\": {\n        \"EXA_API_KEY\": \"your-key\",\n        \"EXA_ENABLE_ADVANCED\": \"1\"\n      }\n    }\n  }\n}\n```\n\n### Example: generic `mcp.json`\n\n```json\n{\n  \"mcpServers\": {\n    \"pi-exa\": {\n      \"command\": \"npx\",\n      \"args\": [\"pi-exa\"],\n      \"env\": { \"EXA_API_KEY\": \"your-key\" }\n    }\n  }\n}\n```\n\n## Notes\n\n- `exa_research_*` planning tools are enabled by default when no explicit `enabledTools` allowlist is configured, local-only, and do not require an Exa API key.\n- `web_search_advanced_exa` and `web_research_exa` are opt-in and disabled by default.\n- Research/tool output may include both `text` and `details.parsedOutput` depending on `outputSchema.type`.\n","readmeFilename":"README.md"}