{"_id":"@cogitator-ai/a2a","_rev":"7-591bf87e05efc9a70502064fd438c191","name":"@cogitator-ai/a2a","dist-tags":{"latest":"0.3.11"},"versions":{"0.2.0":{"name":"@cogitator-ai/a2a","version":"0.2.0","license":"MIT","_id":"@cogitator-ai/a2a@0.2.0","maintainers":[{"name":"el1fe","email":"piuro.pavel@gmail.com"}],"homepage":"https://github.com/cogitator-ai/Cogitator-AI#readme","bugs":{"url":"https://github.com/cogitator-ai/Cogitator-AI/issues"},"dist":{"shasum":"f74e6b91abf7b93f8dbafdf1495591d4a72fcfac","tarball":"https://registry.npmjs.org/@cogitator-ai/a2a/-/a2a-0.2.0.tgz","fileCount":57,"integrity":"sha512-k8HGasiRJxGl2onrWIuyV5zltL0NDKpa1if/ystMHNaov39Fz0rV4Xv0ZWqZoJ8ksXhDeMmh15foPK+NKbL3DQ==","signatures":[{"sig":"MEYCIQDfDNZ0/MwavzllB0a2blPSsoScCOecqactShjYBM13hQIhAI7/2hXJSlXRSKZrdVowbn0MBTDL8JoJSRv16fZFaoY7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100672},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./koa":{"types":"./dist/adapters/koa.d.ts","import":"./dist/adapters/koa.js"},"./hono":{"types":"./dist/adapters/hono.d.ts","import":"./dist/adapters/hono.js"},"./next":{"types":"./dist/adapters/next.d.ts","import":"./dist/adapters/next.js"},"./express":{"types":"./dist/adapters/express.d.ts","import":"./dist/adapters/express.js"},"./fastify":{"types":"./dist/adapters/fastify.d.ts","import":"./dist/adapters/fastify.js"}},"gitHead":"ee169a5dc7a7a8107e8c96fb0875e67471548e03","scripts":{"dev":"tsc --watch","lint":"eslint src","test":"vitest run","build":"tsc","clean":"rm -rf dist","test:watch":"vitest"},"_npmUser":{"name":"el1fe","email":"piuro.pavel@gmail.com"},"repository":{"url":"git+https://github.com/cogitator-ai/Cogitator-AI.git","type":"git","directory":"packages/a2a"},"_npmVersion":"10.9.0","description":"A2A (Agent-to-Agent) Protocol v0.3 implementation for Cogitator","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"^4.3.6","@cogitator-ai/types":"workspace:*"},"publishConfig":{"access":"public","registry":"https://npm.pkg.github.com"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.18","@types/koa":"^2.15.0","typescript":"^5.3.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"peerDependencies":{"koa":">=2.0.0","hono":">=4.0.0","next":">=14.0.0","express":">=4.18.0","fastify":">=4.0.0","@cogitator-ai/core":"workspace:*"},"peerDependenciesMeta":{"koa":{"optional":true},"hono":{"optional":true},"next":{"optional":true},"express":{"optional":true},"fastify":{"optional":true},"@cogitator-ai/core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/a2a_0.2.0_1771529358385_0.32656663847172807","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@cogitator-ai/a2a","version":"0.2.1","license":"MIT","_id":"@cogitator-ai/a2a@0.2.1","maintainers":[{"name":"el1fe","email":"piuro.pavel@gmail.com"}],"homepage":"https://github.com/cogitator-ai/Cogitator-AI#readme","bugs":{"url":"https://github.com/cogitator-ai/Cogitator-AI/issues"},"dist":{"shasum":"303185d851ec499cfe7c7a1d7fae0fc9cc73d4bf","tarball":"https://registry.npmjs.org/@cogitator-ai/a2a/-/a2a-0.2.1.tgz","fileCount":58,"integrity":"sha512-db8j1zJ236oHFpMh1UXIfpdNlwXXWHFYNAxHSssDQfDYTrDU4P2PVUhEeK+Gl04IFRwJ0WHgOznXGdBFUaDp1A==","signatures":[{"sig":"MEQCIDZMM7vFogtp2mjO5/MkMg9+elKRTZQ5v3GSUBzIVGXjAiB5A8BYgqUpdvzGnN6FvFzgSHqQ3grdpsuZZgTakFvfwQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104421},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./koa":{"types":"./dist/adapters/koa.d.ts","import":"./dist/adapters/koa.js"},"./hono":{"types":"./dist/adapters/hono.d.ts","import":"./dist/adapters/hono.js"},"./next":{"types":"./dist/adapters/next.d.ts","import":"./dist/adapters/next.js"},"./express":{"types":"./dist/adapters/express.d.ts","import":"./dist/adapters/express.js"},"./fastify":{"types":"./dist/adapters/fastify.d.ts","import":"./dist/adapters/fastify.js"}},"gitHead":"ba833b80a006fc08cad18cf653bb5bc19da5abd0","scripts":{"dev":"tsc --watch","lint":"eslint src","test":"vitest run","build":"tsc","clean":"rm -rf dist","test:watch":"vitest"},"_npmUser":{"name":"el1fe","email":"piuro.pavel@gmail.com"},"repository":{"url":"git+https://github.com/cogitator-ai/Cogitator-AI.git","type":"git","directory":"packages/a2a"},"_npmVersion":"10.9.0","description":"A2A (Agent-to-Agent) Protocol v0.3 implementation for Cogitator","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"^4.3.6","@cogitator-ai/types":"workspace:*"},"publishConfig":{"access":"public","registry":"https://npm.pkg.github.com"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.18","@types/koa":"^2.15.0","typescript":"^5.3.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"peerDependencies":{"koa":">=2.0.0","hono":">=4.0.0","next":">=14.0.0","express":">=4.18.0","fastify":">=4.0.0","@cogitator-ai/core":"workspace:*"},"peerDependenciesMeta":{"koa":{"optional":true},"hono":{"optional":true},"next":{"optional":true},"express":{"optional":true},"fastify":{"optional":true},"@cogitator-ai/core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/a2a_0.2.1_1771529927039_0.786927825645706","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@cogitator-ai/a2a","version":"0.3.0","license":"MIT","_id":"@cogitator-ai/a2a@0.3.0","maintainers":[{"name":"el1fe","email":"piuro.pavel@gmail.com"}],"homepage":"https://github.com/cogitator-ai/Cogitator-AI#readme","bugs":{"url":"https://github.com/cogitator-ai/Cogitator-AI/issues"},"dist":{"shasum":"25111b211a97bf671fe2188b7641008f8bbffba1","tarball":"https://registry.npmjs.org/@cogitator-ai/a2a/-/a2a-0.3.0.tgz","fileCount":66,"integrity":"sha512-aiDh/iVs8chCmTrUFklHo5MeqBBK2vqq9m0eNnyAsFNt9y4WaN5S/vLsbjlIT4p5MWvPxxpFU4KJpIwzUZ1ZTQ==","signatures":[{"sig":"MEYCIQCLbtw22vQ05uvMQgcjpTXCyAV0g7AqgZ5xZE+/tT+TNgIhAOi1iLjUGwE0LTeuAUq0JL1SmJjN1nR3+pD+bxm6d8eO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":147726},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./koa":{"types":"./dist/adapters/koa.d.ts","import":"./dist/adapters/koa.js"},"./hono":{"types":"./dist/adapters/hono.d.ts","import":"./dist/adapters/hono.js"},"./next":{"types":"./dist/adapters/next.d.ts","import":"./dist/adapters/next.js"},"./express":{"types":"./dist/adapters/express.d.ts","import":"./dist/adapters/express.js"},"./fastify":{"types":"./dist/adapters/fastify.d.ts","import":"./dist/adapters/fastify.js"}},"gitHead":"a6b9adee17ab69490d006ebca129a24d50e90b0f","scripts":{"dev":"tsc --watch","lint":"eslint src","test":"vitest run","build":"tsc","clean":"rm -rf dist","test:watch":"vitest"},"_npmUser":{"name":"el1fe","email":"piuro.pavel@gmail.com"},"repository":{"url":"git+https://github.com/cogitator-ai/Cogitator-AI.git","type":"git","directory":"packages/a2a"},"_npmVersion":"10.9.0","description":"A2A (Agent-to-Agent) Protocol v0.3 implementation for Cogitator","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"^4.3.6","@cogitator-ai/types":"workspace:*"},"publishConfig":{"access":"public","registry":"https://npm.pkg.github.com"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.18","@types/koa":"^2.15.0","typescript":"^5.3.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"peerDependencies":{"koa":">=2.0.0","hono":">=4.0.0","next":">=14.0.0","express":">=4.18.0","fastify":">=4.0.0","@cogitator-ai/core":"workspace:*"},"peerDependenciesMeta":{"koa":{"optional":true},"hono":{"optional":true},"next":{"optional":true},"express":{"optional":true},"fastify":{"optional":true},"@cogitator-ai/core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/a2a_0.3.0_1771596791682_0.5422413889387445","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@cogitator-ai/a2a","version":"0.3.2","license":"MIT","_id":"@cogitator-ai/a2a@0.3.2","maintainers":[{"name":"el1fe","email":"piuro.pavel@gmail.com"}],"homepage":"https://github.com/cogitator-ai/Cogitator-AI#readme","bugs":{"url":"https://github.com/cogitator-ai/Cogitator-AI/issues"},"dist":{"shasum":"9e2fad025edbe1184eadae04721f96544f2e6320","tarball":"https://registry.npmjs.org/@cogitator-ai/a2a/-/a2a-0.3.2.tgz","fileCount":66,"integrity":"sha512-hwLg0ucmrt7iCUpIicPKxWfJ+O6KxjSQbVvz5fRtPlw+MjUslV/N7AJgku2fhxCIeojOqEede9RNEGWHNBMPWg==","signatures":[{"sig":"MEQCIBP78d6pBePW3t2Z/nExix2xMqAx3kYvExsxBoqQoReJAiB2ObvalK6k8hu0EgpvAcKI/sS8yvaMmuNPZaRF4Svo7A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":163643},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./koa":{"types":"./dist/adapters/koa.d.ts","import":"./dist/adapters/koa.js"},"./hono":{"types":"./dist/adapters/hono.d.ts","import":"./dist/adapters/hono.js"},"./next":{"types":"./dist/adapters/next.d.ts","import":"./dist/adapters/next.js"},"./express":{"types":"./dist/adapters/express.d.ts","import":"./dist/adapters/express.js"},"./fastify":{"types":"./dist/adapters/fastify.d.ts","import":"./dist/adapters/fastify.js"}},"gitHead":"c95fdc59cea50cf6c909b978c38b0e124a44d074","scripts":{"dev":"tsc --watch","lint":"eslint src","test":"vitest run","build":"tsc","clean":"rm -rf dist","test:watch":"vitest"},"_npmUser":{"name":"el1fe","email":"piuro.pavel@gmail.com"},"repository":{"url":"git+https://github.com/cogitator-ai/Cogitator-AI.git","type":"git","directory":"packages/a2a"},"_npmVersion":"10.9.0","description":"A2A (Agent-to-Agent) Protocol v0.3 implementation for Cogitator","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"^4.3.6","@cogitator-ai/types":"workspace:*"},"publishConfig":{"access":"public","registry":"https://npm.pkg.github.com"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.18","@types/koa":"^2.15.0","typescript":"^5.3.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"peerDependencies":{"koa":">=2.0.0","hono":">=4.0.0","next":">=14.0.0","express":">=4.18.0","fastify":">=4.0.0","@cogitator-ai/core":"workspace:*"},"peerDependenciesMeta":{"koa":{"optional":true},"hono":{"optional":true},"next":{"optional":true},"express":{"optional":true},"fastify":{"optional":true},"@cogitator-ai/core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/a2a_0.3.2_1771968003890_0.025148529806089837","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@cogitator-ai/a2a","version":"0.3.4","license":"MIT","_id":"@cogitator-ai/a2a@0.3.4","maintainers":[{"name":"el1fe","email":"piuro.pavel@gmail.com"}],"homepage":"https://github.com/cogitator-ai/Cogitator-AI#readme","bugs":{"url":"https://github.com/cogitator-ai/Cogitator-AI/issues"},"dist":{"shasum":"3b8d863ebf960d7acf35361a9bcee890f810fc3a","tarball":"https://registry.npmjs.org/@cogitator-ai/a2a/-/a2a-0.3.4.tgz","fileCount":66,"integrity":"sha512-J0PMNavPRLxl8fFdd+LkMhOCNAqAwgxNdc0iOArhBlhk8b4+B3R0C7qAH6DbSsa/+JeEpe5E2RD1GzquaG01Dg==","signatures":[{"sig":"MEYCIQChUt318wFVnOvJ3VRgd7mjvrJJBNmnrfcVwioQGuqSzwIhANeeDUiPoM1NL1GwK8Gv42DDMWJGE0yqavV+UEzMwZ5Y","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":163643},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./koa":{"types":"./dist/adapters/koa.d.ts","import":"./dist/adapters/koa.js"},"./hono":{"types":"./dist/adapters/hono.d.ts","import":"./dist/adapters/hono.js"},"./next":{"types":"./dist/adapters/next.d.ts","import":"./dist/adapters/next.js"},"./express":{"types":"./dist/adapters/express.d.ts","import":"./dist/adapters/express.js"},"./fastify":{"types":"./dist/adapters/fastify.d.ts","import":"./dist/adapters/fastify.js"}},"gitHead":"f508be4a1a30c7bd136f0fa8b2e6cee5521416ab","scripts":{"dev":"tsc --watch","lint":"eslint src","test":"vitest run","build":"tsc","clean":"rm -rf dist","test:watch":"vitest"},"_npmUser":{"name":"el1fe","email":"piuro.pavel@gmail.com"},"repository":{"url":"git+https://github.com/cogitator-ai/Cogitator-AI.git","type":"git","directory":"packages/a2a"},"_npmVersion":"10.9.0","description":"A2A (Agent-to-Agent) Protocol v0.3 implementation for Cogitator","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"^4.3.6","@cogitator-ai/types":"workspace:*"},"publishConfig":{"access":"public","registry":"https://npm.pkg.github.com"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.18","@types/koa":"^2.15.0","typescript":"^5.3.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"peerDependencies":{"koa":">=2.0.0","hono":">=4.0.0","next":">=14.0.0","express":">=4.18.0","fastify":">=4.0.0","@cogitator-ai/core":"workspace:*"},"peerDependenciesMeta":{"koa":{"optional":true},"hono":{"optional":true},"next":{"optional":true},"express":{"optional":true},"fastify":{"optional":true},"@cogitator-ai/core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/a2a_0.3.4_1772035429398_0.07049182343969806","host":"s3://npm-registry-packages-npm-production"}},"0.3.10":{"name":"@cogitator-ai/a2a","version":"0.3.10","license":"MIT","_id":"@cogitator-ai/a2a@0.3.10","maintainers":[{"name":"el1fe","email":"piuro.pavel@gmail.com"}],"homepage":"https://github.com/cogitator-ai/Cogitator-AI#readme","bugs":{"url":"https://github.com/cogitator-ai/Cogitator-AI/issues"},"dist":{"shasum":"bdfada3da4aaffa217116ac2baafba462be7f698","tarball":"https://registry.npmjs.org/@cogitator-ai/a2a/-/a2a-0.3.10.tgz","fileCount":66,"integrity":"sha512-+L4Lhc6UHwl7OwXqY5JM0xv/6HTRNtyU99WCOqXr5+gznJk5CxmiomnDE3jHgIxCk2+F0hez60+T1xgJy4AfpA==","signatures":[{"sig":"MEYCIQCpNQlzKX9QDmDYzO3/ydruaCO6eso5HrgbC08KCVtxRwIhAPW89yNGxIbMxr4Igsg7o2rxOtmDvpI3ItVTOX8qSrEh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":163627},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./koa":{"types":"./dist/adapters/koa.d.ts","import":"./dist/adapters/koa.js"},"./hono":{"types":"./dist/adapters/hono.d.ts","import":"./dist/adapters/hono.js"},"./next":{"types":"./dist/adapters/next.d.ts","import":"./dist/adapters/next.js"},"./express":{"types":"./dist/adapters/express.d.ts","import":"./dist/adapters/express.js"},"./fastify":{"types":"./dist/adapters/fastify.d.ts","import":"./dist/adapters/fastify.js"}},"gitHead":"33b6a8cb29bfdd7d2255acfa240b2df5d558354e","scripts":{"dev":"tsc --watch","lint":"eslint src","test":"vitest run","build":"tsc","clean":"rm -rf dist","test:watch":"vitest"},"_npmUser":{"name":"el1fe","email":"piuro.pavel@gmail.com"},"repository":{"url":"git+https://github.com/cogitator-ai/Cogitator-AI.git","type":"git","directory":"packages/a2a"},"_npmVersion":"10.9.0","description":"A2A (Agent-to-Agent) Protocol v0.3 implementation for Cogitator","directories":{},"_nodeVersion":"22.11.0","dependencies":{"zod":"^4.3.6","@cogitator-ai/types":"workspace:*"},"publishConfig":{"access":"public","registry":"https://npm.pkg.github.com"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.18","@types/koa":"^2.15.0","typescript":"^5.3.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"peerDependencies":{"koa":">=2.0.0","hono":">=4.0.0","next":">=14.0.0","express":">=4.18.0","fastify":">=4.0.0","@cogitator-ai/core":"workspace:*"},"peerDependenciesMeta":{"koa":{"optional":true},"hono":{"optional":true},"next":{"optional":true},"express":{"optional":true},"fastify":{"optional":true},"@cogitator-ai/core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/a2a_0.3.10_1778881286608_0.888275088907061","host":"s3://npm-registry-packages-npm-production"}},"0.3.11":{"name":"@cogitator-ai/a2a","version":"0.3.11","description":"A2A (Agent-to-Agent) Protocol v0.3 implementation for Cogitator","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./express":{"types":"./dist/adapters/express.d.ts","import":"./dist/adapters/express.js"},"./hono":{"types":"./dist/adapters/hono.d.ts","import":"./dist/adapters/hono.js"},"./fastify":{"types":"./dist/adapters/fastify.d.ts","import":"./dist/adapters/fastify.js"},"./koa":{"types":"./dist/adapters/koa.d.ts","import":"./dist/adapters/koa.js"},"./next":{"types":"./dist/adapters/next.d.ts","import":"./dist/adapters/next.js"}},"dependencies":{"zod":"^4.3.6","@cogitator-ai/types":"0.22.2"},"devDependencies":{"@types/express":"^4.17.21","@types/koa":"^2.15.0","@types/node":"^22.0.0","typescript":"^5.3.0","vitest":"^4.0.18"},"peerDependencies":{"express":">=4.18.0","fastify":">=4.0.0","hono":">=4.0.0","koa":">=2.0.0","next":">=14.0.0","@cogitator-ai/core":"0.19.3"},"peerDependenciesMeta":{"@cogitator-ai/core":{"optional":true},"express":{"optional":true},"hono":{"optional":true},"fastify":{"optional":true},"koa":{"optional":true},"next":{"optional":true}},"engines":{"node":">=20.0.0"},"repository":{"type":"git","url":"git+https://github.com/cogitator-ai/Cogitator-AI.git","directory":"packages/a2a"},"publishConfig":{"access":"public","registry":"https://npm.pkg.github.com"},"license":"MIT","scripts":{"build":"tsc","dev":"tsc --watch","test":"vitest run","test:watch":"vitest","lint":"eslint src","clean":"rm -rf dist"},"_id":"@cogitator-ai/a2a@0.3.11","bugs":{"url":"https://github.com/cogitator-ai/Cogitator-AI/issues"},"homepage":"https://github.com/cogitator-ai/Cogitator-AI#readme","_integrity":"sha512-3MaqflyporHuYt6KhlEgeWgn3eD/CRaXEwmVJei3/p7X4sj1L/ZQLCUDFogl6bqzulwJI0zTvXfUF/bCqSKLFA==","_resolved":"/private/var/folders/20/4d95hdvj45j337gtqpbx3v1m0000gn/T/b6cd1165fde3bce28df3eb8ae2d14b2d/cogitator-ai-a2a-0.3.11.tgz","_from":"file:cogitator-ai-a2a-0.3.11.tgz","_nodeVersion":"22.11.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-3MaqflyporHuYt6KhlEgeWgn3eD/CRaXEwmVJei3/p7X4sj1L/ZQLCUDFogl6bqzulwJI0zTvXfUF/bCqSKLFA==","shasum":"2609a1d0e242871c08b5aef1fb634dc321424ff1","tarball":"https://registry.npmjs.org/@cogitator-ai/a2a/-/a2a-0.3.11.tgz","fileCount":67,"unpackedSize":164695,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDkwp5WYJFP5k3zPEBO0oC4W9QcetJ4cM2sTAhaWzCM2wIgd6UyX1BPxXltQWJxDFDXh0h627WvEzwmQ0/WMSMzulU="}]},"_npmUser":{"name":"el1fe","email":"piuro.pavel@gmail.com"},"directories":{},"maintainers":[{"name":"el1fe","email":"piuro.pavel@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/a2a_0.3.11_1778882221033_0.6816293109226685"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-19T19:29:18.274Z","modified":"2026-05-15T21:57:01.351Z","0.2.0":"2026-02-19T19:29:18.545Z","0.2.1":"2026-02-19T19:38:47.182Z","0.3.0":"2026-02-20T14:13:11.841Z","0.3.2":"2026-02-24T21:20:04.062Z","0.3.4":"2026-02-25T16:03:49.564Z","0.3.10":"2026-05-15T21:41:26.745Z","0.3.11":"2026-05-15T21:57:01.219Z"},"bugs":{"url":"https://github.com/cogitator-ai/Cogitator-AI/issues"},"license":"MIT","homepage":"https://github.com/cogitator-ai/Cogitator-AI#readme","repository":{"type":"git","url":"git+https://github.com/cogitator-ai/Cogitator-AI.git","directory":"packages/a2a"},"description":"A2A (Agent-to-Agent) Protocol v0.3 implementation for Cogitator","maintainers":[{"name":"el1fe","email":"piuro.pavel@gmail.com"}],"readme":"# @cogitator-ai/a2a\n\nNative implementation of [Google's A2A Protocol v0.3](https://a2a-protocol.org) for Cogitator. Expose agents as A2A services or connect to any A2A-compatible agent across frameworks.\n\n## Installation\n\n```bash\npnpm add @cogitator-ai/a2a\n```\n\n## Features\n\n- **A2AServer** - Expose any Cogitator agent as an A2A-compliant service\n- **A2AClient** - Connect to remote A2A agents with discovery and streaming\n- **asTool() Bridge** - Wrap remote A2A agents as local Cogitator tools\n- **Agent Card** - Auto-generate A2A Agent Cards from agent metadata\n- **Task Management** - Full task lifecycle (working, completed, failed, canceled)\n- **Multi-Turn Conversations** - Stateful conversations with contextId and continueTask\n- **SSE Streaming** - Real-time streaming with token-level events\n- **Push Notifications** - Webhook-based task event notifications\n- **Agent Card Signing** - HMAC-SHA256 signing and verification\n- **Extended Agent Card** - Authenticated endpoint with extra details\n- **RedisTaskStore** - Production-grade task persistence\n- **Framework Adapters** - Express, Hono, Fastify, Koa, Next.js\n- **Zero Dependencies** - Own implementation from spec, no external A2A deps\n\n---\n\n## Quick Start\n\n### Expose an Agent via A2A\n\n```typescript\nimport { Cogitator, Agent } from '@cogitator-ai/core';\nimport { A2AServer } from '@cogitator-ai/a2a';\nimport { a2aExpress } from '@cogitator-ai/a2a/express';\nimport express from 'express';\n\nconst cogitator = new Cogitator();\nconst agent = new Agent({\n  name: 'researcher',\n  description: 'Research agent',\n  model: 'openai/gpt-4o',\n  instructions: 'You are a research assistant.',\n});\n\nconst a2aServer = new A2AServer({\n  agents: { researcher: agent },\n  cogitator,\n  cardUrl: 'https://my-server.com',\n});\n\nconst app = express();\napp.use(a2aExpress(a2aServer));\napp.listen(3000);\n// Agent Card: GET /.well-known/agent.json\n// JSON-RPC:   POST /a2a\n```\n\n### Connect to a Remote A2A Agent\n\n```typescript\nimport { A2AClient } from '@cogitator-ai/a2a';\n\nconst client = new A2AClient('https://remote-agent.example.com');\n\n// Discover\nconst card = await client.agentCard();\nconsole.log(card.name, card.skills);\n\n// Send message\nconst task = await client.sendMessage({\n  role: 'user',\n  parts: [{ type: 'text', text: 'Research quantum computing' }],\n});\n\n// Stream\nfor await (const event of client.sendMessageStream({\n  role: 'user',\n  parts: [{ type: 'text', text: 'Analyze market trends' }],\n})) {\n  console.log(event.type, event);\n}\n```\n\n### Use Remote Agent as a Tool\n\n```typescript\nconst client = new A2AClient('https://research-agent.example.com');\nconst card = await client.agentCard();\nconst remoteTool = client.asToolFromCard(card);\n\nconst orchestrator = new Agent({\n  name: 'orchestrator',\n  model: 'openai/gpt-4o',\n  instructions: 'Use the researcher for information gathering.',\n  tools: [remoteTool],\n});\n\nconst result = await cogitator.run(orchestrator, {\n  input: 'Write a report on AI trends',\n});\n```\n\n## Multi-Turn Conversations\n\nContinue tasks within the same conversation context using `contextId` and `continueTask`:\n\n```typescript\nconst client = new A2AClient('https://remote-agent.example.com');\n\n// Start a conversation\nconst task = await client.sendMessage({\n  role: 'user',\n  parts: [{ type: 'text', text: 'Research quantum computing' }],\n});\n\n// Continue the same task with follow-up\nconst updated = await client.continueTask(task.id, 'Now compare it with classical computing');\n\n// Both tasks share the same contextId\nconsole.log(task.contextId === updated.contextId); // true\n```\n\nOn the server side, multi-turn is handled automatically. When a message includes a `taskId`, the server calls `continueTask` which appends to the existing task history and re-runs the agent with full context.\n\n## Listing Tasks\n\nQuery tasks with filtering and pagination via `tasks/list`:\n\n```typescript\nconst client = new A2AClient('https://remote-agent.example.com');\n\n// List all tasks\nconst tasks = await client.listTasks();\n\n// Filter by context (conversation)\nconst conversationTasks = await client.listTasks({\n  contextId: 'ctx_abc123',\n});\n\n// Filter by state with pagination\nconst completedTasks = await client.listTasks({\n  state: 'completed',\n  limit: 10,\n  offset: 0,\n});\n```\n\n## Token Streaming\n\nSSE streaming includes token-level events alongside status and artifact updates:\n\n```typescript\nfor await (const event of client.sendMessageStream({\n  role: 'user',\n  parts: [{ type: 'text', text: 'Write a poem' }],\n})) {\n  switch (event.type) {\n    case 'token':\n      process.stdout.write(event.token);\n      break;\n    case 'status-update':\n      console.log(`\\nStatus: ${event.status.state}`);\n      break;\n    case 'artifact-update':\n      console.log(`\\nArtifact: ${event.artifact.id}`);\n      break;\n  }\n}\n```\n\nThe server emits `TokenStreamEvent` for each token generated by the LLM via the `onToken` callback, giving clients real-time character-by-character output.\n\n## RedisTaskStore\n\nFor production deployments, use `RedisTaskStore` instead of the default in-memory store:\n\n```typescript\nimport { A2AServer, RedisTaskStore } from '@cogitator-ai/a2a';\nimport Redis from 'ioredis';\n\nconst redis = new Redis('redis://localhost:6379');\n\nconst a2aServer = new A2AServer({\n  agents: { researcher },\n  cogitator,\n  taskStore: new RedisTaskStore({\n    client: redis,\n    keyPrefix: 'a2a:task:',\n    ttl: 86400, // 24h expiry\n  }),\n});\n```\n\n`RedisTaskStore` implements the full `TaskStore` interface including `list()` with filtering by `contextId`, `state`, pagination, and timestamp-based sorting.\n\n## Push Notifications\n\nRegister webhooks to receive task event notifications:\n\n```typescript\nconst client = new A2AClient('https://remote-agent.example.com');\n\n// Start a task\nconst task = await client.sendMessage({\n  role: 'user',\n  parts: [{ type: 'text', text: 'Long running analysis' }],\n});\n\n// Register a webhook for this task\nconst config = await client.createPushNotification(task.id, {\n  webhookUrl: 'https://my-app.com/webhooks/a2a',\n  authenticationInfo: {\n    scheme: 'bearer',\n    credentials: { token: 'my-webhook-secret' },\n  },\n});\n\n// List registered webhooks\nconst configs = await client.listPushNotifications(task.id);\n\n// Remove a webhook\nawait client.deletePushNotification(task.id, config.id!);\n```\n\nServer-side setup requires a `PushNotificationStore`:\n\n```typescript\nimport { A2AServer, InMemoryPushNotificationStore } from '@cogitator-ai/a2a';\n\nconst a2aServer = new A2AServer({\n  agents: { researcher },\n  cogitator,\n  pushNotificationStore: new InMemoryPushNotificationStore(),\n});\n```\n\nWhen configured, the server automatically sends POST requests with `A2AStreamEvent` payloads to registered webhook URLs on task status and artifact updates. The Agent Card will advertise `pushNotifications: true`.\n\n## Agent Card Signing\n\nSign Agent Cards with HMAC-SHA256 for integrity verification:\n\n```typescript\nimport { signAgentCard, verifyAgentCardSignature } from '@cogitator-ai/a2a';\n\n// Server-side: sign cards automatically\nconst a2aServer = new A2AServer({\n  agents: { researcher },\n  cogitator,\n  cardSigning: {\n    algorithm: 'hmac-sha256',\n    secret: process.env.CARD_SIGNING_SECRET!,\n  },\n});\n\n// Client-side: verify a card's signature\nconst client = new A2AClient('https://remote-agent.example.com');\nconst isValid = await client.verifyAgentCard(process.env.CARD_SIGNING_SECRET!);\n\n// Or manually\nconst card = await client.agentCard();\nconst valid = verifyAgentCardSignature(card, 'shared-secret');\n```\n\n## Extended Agent Card\n\nProvide an authenticated endpoint with additional agent details (rate limits, pricing, extended skills):\n\n```typescript\n// Server-side: configure extended card generator\nconst a2aServer = new A2AServer({\n  agents: { researcher },\n  cogitator,\n  extendedCardGenerator: (agentName) => ({\n    ...a2aServer.getAgentCard(agentName),\n    extendedSkills: [\n      {\n        id: 'deep_research',\n        name: 'deep_research',\n        description: 'Multi-source deep research',\n        inputModes: ['text/plain'],\n        outputModes: ['text/plain', 'application/json'],\n      },\n    ],\n    rateLimit: { requestsPerMinute: 60 },\n    pricing: { model: 'per-request', details: '$0.01 per task' },\n    metadata: { version: '2.1.0', region: 'us-east-1' },\n  }),\n});\n\n// Client-side: fetch the extended card (requires auth)\nconst client = new A2AClient('https://remote-agent.example.com', {\n  headers: { Authorization: 'Bearer my-token' },\n});\nconst extendedCard = await client.extendedAgentCard();\nconsole.log(extendedCard.rateLimit, extendedCard.pricing);\n```\n\nThe `agent/extendedCard` method is only available when `extendedCardGenerator` is configured on the server. The Agent Card advertises this via `capabilities.extendedAgentCard: true`.\n\n## Framework Adapters\n\n```typescript\n// Express\nimport { a2aExpress } from '@cogitator-ai/a2a/express';\napp.use(a2aExpress(server));\n\n// Hono\nimport { a2aHono } from '@cogitator-ai/a2a/hono';\napp.route('/a2a', a2aHono(server));\n\n// Fastify\nimport { a2aFastify } from '@cogitator-ai/a2a/fastify';\nfastify.register(a2aFastify(server));\n\n// Koa\nimport { a2aKoa } from '@cogitator-ai/a2a/koa';\napp.use(a2aKoa(server));\n\n// Next.js\nimport { a2aNext } from '@cogitator-ai/a2a/next';\nexport const { GET, POST } = a2aNext(server);\n```\n\n## A2A Protocol\n\n| Method                          | Description                               |\n| ------------------------------- | ----------------------------------------- |\n| `message/send`                  | Send a message, get completed task        |\n| `message/stream`                | Send with SSE streaming (incl. tokens)    |\n| `tasks/get`                     | Retrieve task by ID                       |\n| `tasks/cancel`                  | Cancel a running task                     |\n| `tasks/list`                    | List tasks with filtering and pagination  |\n| `tasks/pushNotification/create` | Register a webhook for task events        |\n| `tasks/pushNotification/get`    | Get a push notification config            |\n| `tasks/pushNotification/list`   | List push notification configs for a task |\n| `tasks/pushNotification/delete` | Remove a push notification config         |\n| `agent/extendedCard`            | Fetch extended Agent Card (authenticated) |\n\n## Part of Cogitator\n\nThis package is part of the [Cogitator](https://github.com/cogitator-ai/Cogitator-AI) ecosystem — a self-hosted, production-grade AI agent runtime for TypeScript.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}