{"_id":"@bernierllc/anthropic-client","_rev":"15-61c1d27ff9e3607e1e196156a8d93e7f","name":"@bernierllc/anthropic-client","dist-tags":{"latest":"1.6.1"},"versions":{"1.0.0":{"name":"@bernierllc/anthropic-client","version":"1.0.0","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.0.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"cfcef4ad7ef78a6626ff60a5ffb460fc9a84f982","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.0.0.tgz","fileCount":14,"integrity":"sha512-dz6BYgC4K2VLxfZPiS/9CZpYp1gjyU/TVySNzB4igKNFvXREkPZBT6nrybeNNb9LDn+iSEyJ3qfxIHrY+EnSgA==","signatures":[{"sig":"MEQCIBnnLj0DUSfTVrQngIxhTf9C4PEr98TCFIZuEVej/z0AAiBy7gYWl3TQSR74K9gCfC7sSA2JfSlIxDWfyjhBU/4sJA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37449},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.0.0.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"mkbernier","email":"mkbernier@gmail.com"},"_resolved":"/private/var/folders/r0/wspnzd1s18sfjy10ffyv2qxw0000gn/T/f0ee0f0bbf09fde19cc663362c991a72/bernierllc-anthropic-client-1.0.0.tgz","_integrity":"sha512-dz6BYgC4K2VLxfZPiS/9CZpYp1gjyU/TVySNzB4igKNFvXREkPZBT6nrybeNNb9LDn+iSEyJ3qfxIHrY+EnSgA==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"25.1.0","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"^1.0.1","@bernierllc/retry-policy":"^0.1.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.0.0_1762379596530_0.2508687008323591","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@bernierllc/anthropic-client","version":"1.0.1","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.0.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"5fae6a2d26c2c3549c2e4289475559552c66d953","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.0.1.tgz","fileCount":14,"integrity":"sha512-o679Q2FFAdINDPNRImhtB9VXF4eoVsLawRWt+ka7A4MDTwjlghVY2D6JOWJPsguKZ7fzqxWkbQ26xSwdocma4Q==","signatures":[{"sig":"MEUCIH05LSMYtO4zSeJ0rnRhXiioJ6zcMf8BEzK8StqELJLPAiEArU8rMfWKZsNOkhoMMU+R2Zs2OI+E1RDSBnVjkMOo38A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38635},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.0.1.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"mkbernier","email":"mkbernier@gmail.com"},"_resolved":"/private/var/folders/r0/wspnzd1s18sfjy10ffyv2qxw0000gn/T/b3ed8956dab4343e3397f6918c04f9e5/bernierllc-anthropic-client-1.0.1.tgz","_integrity":"sha512-o679Q2FFAdINDPNRImhtB9VXF4eoVsLawRWt+ka7A4MDTwjlghVY2D6JOWJPsguKZ7fzqxWkbQ26xSwdocma4Q==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"25.1.0","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"^1.0.1","@bernierllc/retry-policy":"^0.1.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.0.1_1762459592001_0.4555473893376316","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@bernierllc/anthropic-client","version":"1.0.2","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.0.2","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"9ce488ddfa3dd7ceb0e8544a644f911df982dca6","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.0.2.tgz","fileCount":15,"integrity":"sha512-yo7sEbvoEpjTFYQZmYUtP3CY5ZSSGVYdIVBvQFdEd3Ueug3eyxmJqHIbzVDzp56mtv9F8TvsPKVYZVeefLe7Og==","signatures":[{"sig":"MEQCIEXFZ9CbdcYSdHsH38mbpPJVMyXymK6/xKob5gqQEI4mAiBpamjm0Rw1e+OraUz/zIbontr7Mraf2gEMqHZKiTCWUg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39022},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.0.2.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"mkbernier","email":"mkbernier@gmail.com"},"_resolved":"/private/var/folders/r0/wspnzd1s18sfjy10ffyv2qxw0000gn/T/9eaa63664d1a2a3b30352e5f15ed2b13/bernierllc-anthropic-client-1.0.2.tgz","_integrity":"sha512-yo7sEbvoEpjTFYQZmYUtP3CY5ZSSGVYdIVBvQFdEd3Ueug3eyxmJqHIbzVDzp56mtv9F8TvsPKVYZVeefLe7Og==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"25.2.1","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"^1.0.1","@bernierllc/retry-policy":"^0.1.6"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.0.2_1764637204967_0.6621065424785337","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@bernierllc/anthropic-client","version":"1.0.3","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.0.3","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"36b5d33c88c60441c9ab21e4e95a596e5e075099","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.0.3.tgz","fileCount":15,"integrity":"sha512-5DnwE6hBaZCtNgWG0/T7nzgG+eqjfgvMspof0pcAPygF+c1O8o8gLSB7oBcZDGCd6XwsQaH17y5tsYGNAA3X7Q==","signatures":[{"sig":"MEUCIBM/ip/QrQPCSRyZKCpz04IhK8bavdaGXb71nTtl30FFAiEAquvk/aB6qEkM3QUyTkHWbwwIyXfCjJdl5qNUFDf3YWI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39116},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.0.3.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eecbde28-4b78-44ce-adcc-c75a1b5245fe"}},"_resolved":"/tmp/b3a392455d0eedc43c8327b6aedbd545/bernierllc-anthropic-client-1.0.3.tgz","_integrity":"sha512-5DnwE6hBaZCtNgWG0/T7nzgG+eqjfgvMspof0pcAPygF+c1O8o8gLSB7oBcZDGCd6XwsQaH17y5tsYGNAA3X7Q==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.7.0","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"1.0.4","@bernierllc/retry-policy":"0.1.6"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.0.3_1766437719881_0.13028584082562933","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@bernierllc/anthropic-client","version":"1.0.4","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.0.4","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"48f95a255b8441fe18197ce2864672c2f5ead6f3","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.0.4.tgz","fileCount":15,"integrity":"sha512-2UPhB4p2azowqnOjDuqfu2xfyMo7h+jLm0KohxgEKPl/uyBLKoP08/KpyWnQPLRK91/GZwlYMpb6iI41Mbbcdw==","signatures":[{"sig":"MEUCIQDlKIiQm3qEFJ0SthRVjsrTHYtMR9gJRnDoEyhbvXbQnQIgZy7Laf+5S8xAGIGGZXzs3fpzUZnW/LHmM/WTxJRsujU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39116},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.0.4.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eecbde28-4b78-44ce-adcc-c75a1b5245fe"}},"_resolved":"/tmp/630d3e512e87dde024a280187e4326e3/bernierllc-anthropic-client-1.0.4.tgz","_integrity":"sha512-2UPhB4p2azowqnOjDuqfu2xfyMo7h+jLm0KohxgEKPl/uyBLKoP08/KpyWnQPLRK91/GZwlYMpb6iI41Mbbcdw==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.7.0","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"1.1.0","@bernierllc/retry-policy":"0.1.6"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.0.4_1766454377261_0.3111002163798111","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@bernierllc/anthropic-client","version":"1.2.0","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.2.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"e1cb74941afa75aa6eb9c32b59b94f9f4d5aef2b","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.2.0.tgz","fileCount":15,"integrity":"sha512-3ZMsFCBcc7DuqcCnGZ5c1i5gYkemT6Q2g3jIk1ufxIIaDmoWZ13I13Ia+rHDdJlHnJEQPN6GuLcVcRhrz/jIaQ==","signatures":[{"sig":"MEUCIQCUhepUPK2U4auwYGUM1geDZoY7KnYDrAgPETP0FppYXQIgKE75K70wEf9Nh/GGaUqtJGJg1SUtOn9WcMTX1c0aUe4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39174},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"af7e74b3715d56d3a193e1bb6743b337c2b0df6d","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eecbde28-4b78-44ce-adcc-c75a1b5245fe"}},"repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v20.19.6+x64 (linux)","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"1.3.0","@bernierllc/retry-policy":"0.3.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.2.0_1767642429465_0.7678821735052075","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@bernierllc/anthropic-client","version":"1.2.1","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.2.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"8bb047e12c36071df18b7ff5eb275545a99359cd","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.2.1.tgz","fileCount":15,"integrity":"sha512-cTijbKxZbbqcdGW555hvmYVJDPT4Bq7vRCua+t+OGXzdUXW2f+iZS4afB4yYKBy3ZGB0o7bcavtCiio67saRLA==","signatures":[{"sig":"MEQCIDXS2m76iVB1S7CIoJVBnS3T98Bz32STgDYVPufXmUL4AiBjv9qbdhGzOctFR9KhmgdAnAyoUY6F3s0pnu0Qkv3zew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39116},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.2.1.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eecbde28-4b78-44ce-adcc-c75a1b5245fe"}},"_resolved":"/tmp/6a2b92abfe4b385e12dfb48469f2ab60/bernierllc-anthropic-client-1.2.1.tgz","_integrity":"sha512-cTijbKxZbbqcdGW555hvmYVJDPT4Bq7vRCua+t+OGXzdUXW2f+iZS4afB4yYKBy3ZGB0o7bcavtCiio67saRLA==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.11.0","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"1.3.1","@bernierllc/retry-policy":"0.3.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.2.1_1773078354222_0.6681238620237595","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@bernierllc/anthropic-client","version":"1.2.2","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.2.2","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"0a2dba4c2c5c9ec43fb7e0657342c7fe69020933","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.2.2.tgz","fileCount":15,"integrity":"sha512-MU98XkZ8P/BkCq+Eh+bf/JfmbGs9GbRm/OXS+SFF/+kekJo8JMEfH9b0tEgUdn1v6e35EYmXuVAp6cOXogatIw==","signatures":[{"sig":"MEUCIQDrMcrrPiYXM0mqNly9moVV41xkqnPoOOADP62lpH/WVAIgVAUeroFmDDo6hkspwhqjeE0a+2DRse6lYrbW2e08ggs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39116},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.2.2.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eecbde28-4b78-44ce-adcc-c75a1b5245fe"}},"_resolved":"/home/runner/work/tools/tools/packages/core/anthropic-client/bernierllc-anthropic-client-1.2.2.tgz","_integrity":"sha512-MU98XkZ8P/BkCq+Eh+bf/JfmbGs9GbRm/OXS+SFF/+kekJo8JMEfH9b0tEgUdn1v6e35EYmXuVAp6cOXogatIw==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.11.0","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"1.3.2","@bernierllc/retry-policy":"0.3.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.2.2_1773163013932_0.20738307849136395","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"@bernierllc/anthropic-client","version":"1.2.3","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.2.3","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"d7346867009dd3c9eb2aba5806c1aa2780e8f649","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.2.3.tgz","fileCount":15,"integrity":"sha512-Ep09iSquzaV6yiSvO3FeUDM3T3cK2T/mY7iXiS6SwMdBGRIaeSsANkcgsPvwSrSAHqNaxxle2+fBo6G3Drb+Dw==","signatures":[{"sig":"MEUCIQDSQwnSI/U405CeSy1cXDEKgD29cSLLnL48IsgPwslW3gIgBP/nTkWp+VgoOxo6SxwPFsRzPMLmU6tMrbSzpNv/zNI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39116},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.2.3.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eecbde28-4b78-44ce-adcc-c75a1b5245fe"}},"_resolved":"/home/runner/work/tools/tools/packages/core/anthropic-client/bernierllc-anthropic-client-1.2.3.tgz","_integrity":"sha512-Ep09iSquzaV6yiSvO3FeUDM3T3cK2T/mY7iXiS6SwMdBGRIaeSsANkcgsPvwSrSAHqNaxxle2+fBo6G3Drb+Dw==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"1.4.0","@bernierllc/retry-policy":"0.4.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.2.3_1779133334354_0.16222975575623644","host":"s3://npm-registry-packages-npm-production"}},"1.2.4":{"name":"@bernierllc/anthropic-client","version":"1.2.4","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.2.4","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"5c8baa66ddd683937e5402f5ad5dc111f9d5300e","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.2.4.tgz","fileCount":15,"integrity":"sha512-K7tj0rb18YgDhMlPO1ZfWuyhrm9j3jiUCVqvnFN28G9p1pJHho6ZxE/cSMiI0OEAeLlPDMddO3azaY9n/Pqo/g==","signatures":[{"sig":"MEUCIQDGUY4Dlk9sjZC26YxdqBg9qcVYOX0U73n82JgUAGiC9AIgP0LbMPHhuK/XO+pT/vP2deAe8tfgVB094vZr0U4vbtA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39116},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.2.4.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eecbde28-4b78-44ce-adcc-c75a1b5245fe"}},"_resolved":"/home/runner/work/tools/tools/packages/core/anthropic-client/bernierllc-anthropic-client-1.2.4.tgz","_integrity":"sha512-K7tj0rb18YgDhMlPO1ZfWuyhrm9j3jiUCVqvnFN28G9p1pJHho6ZxE/cSMiI0OEAeLlPDMddO3azaY9n/Pqo/g==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"1.4.2","@bernierllc/retry-policy":"0.5.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.2.4_1779157089590_0.25752104921086083","host":"s3://npm-registry-packages-npm-production"}},"1.2.5":{"name":"@bernierllc/anthropic-client","version":"1.2.5","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.2.5","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"e6ad65059ac44ed94ea62e3fd288cdbb5966b879","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.2.5.tgz","fileCount":15,"integrity":"sha512-cv3hNLBbSiYL9vYjMc1vSUtxh083xe+a6+RXtYfXEX8+S26o2GE04jSmsFdCXbuQUPL10Dk0DhIQxlBNGrDc6A==","signatures":[{"sig":"MEUCIDIEXj5hehk5Q3TyaYheZrNcIh5RuGnSv6pgSt3LpjQnAiEA7hg0KRL/6xUqwqP0QyJn/kN6VzWsxDqYAZ0/a753El8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39116},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.2.5.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eecbde28-4b78-44ce-adcc-c75a1b5245fe"}},"_resolved":"/home/runner/work/tools/tools/packages/core/anthropic-client/bernierllc-anthropic-client-1.2.5.tgz","_integrity":"sha512-cv3hNLBbSiYL9vYjMc1vSUtxh083xe+a6+RXtYfXEX8+S26o2GE04jSmsFdCXbuQUPL10Dk0DhIQxlBNGrDc6A==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"1.4.3","@bernierllc/retry-policy":"0.5.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.2.5_1779221188380_0.29829033801268046","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@bernierllc/anthropic-client","version":"1.4.0","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.4.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"e8b83b5c0c010d4f53f54d65caf4956da68b1a10","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.4.0.tgz","fileCount":19,"integrity":"sha512-fsfILjNF57fHVTe0f4OWszrgW6JB6kTybODjArp8AUsp0Kdi6TKHtXePXFzU7wkq3QH2CtWjnpHaoalnfyc4cg==","signatures":[{"sig":"MEYCIQDuApktgZYLGAM2h+oZDjZMdPmLlPWLln0jytg2Mt4cvAIhAJpduWXfl9HgMz1rFRk4jofAOUyCTgt4oApP8ZtrZspx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42070},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.4.0.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eecbde28-4b78-44ce-adcc-c75a1b5245fe"}},"_resolved":"/home/runner/work/tools/tools/packages/core/anthropic-client/bernierllc-anthropic-client-1.4.0.tgz","_integrity":"sha512-fsfILjNF57fHVTe0f4OWszrgW6JB6kTybODjArp8AUsp0Kdi6TKHtXePXFzU7wkq3QH2CtWjnpHaoalnfyc4cg==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"1.4.3","@bernierllc/retry-policy":"0.5.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.4.0_1779233802494_0.8419422335498234","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@bernierllc/anthropic-client","version":"1.5.0","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.5.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"606f9ad5be7e89fd7d0287480765f600bf099016","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.5.0.tgz","fileCount":19,"integrity":"sha512-3+hcLb6wfx0QM7hCyR4tDbiDB0Z4n8A7MIF3iFlE5DpppZpIR1yYFgEUMrpb48oL27FjNMWZKfbwhrwu136Rxw==","signatures":[{"sig":"MEQCIDrrwJzUjkrvk3kAO+gKaHZobcXWpIieiL08JhM8shVnAiAX84Uy/v8bGcKdHR1N6ttMibUE0UVbL+203YU2fgSu6w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42070},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.5.0.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eecbde28-4b78-44ce-adcc-c75a1b5245fe"}},"_resolved":"/home/runner/work/tools/tools/packages/core/anthropic-client/bernierllc-anthropic-client-1.5.0.tgz","_integrity":"sha512-3+hcLb6wfx0QM7hCyR4tDbiDB0Z4n8A7MIF3iFlE5DpppZpIR1yYFgEUMrpb48oL27FjNMWZKfbwhrwu136Rxw==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"1.6.0","@bernierllc/retry-policy":"0.6.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.5.0_1779240909901_0.5589784398747932","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@bernierllc/anthropic-client","version":"1.6.0","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/anthropic-client@1.6.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernier-llc/tools#readme","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"dist":{"shasum":"316d8da8177c69048663a0757bc094a2c77e2e49","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.6.0.tgz","fileCount":19,"integrity":"sha512-0rh2H7+8WhfzGi4KXC8tuwFbyPjZFboTXRwt0eKnGPA1EUewG8KDDT9B1Lkd1aTNuyD9l05qRq/SZ86PgevJag==","signatures":[{"sig":"MEUCIG5WvrBYkpQOwsfo+idP5Jj8xc5EocSYhSs+XNm1HgwNAiEA4qJTldO9MZb3bheXFkLVIG26/TNQfBURYwAg3dt37gA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42070},"main":"dist/index.js","_from":"file:bernierllc-anthropic-client-1.6.0.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rimraf dist","test:run":"jest --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eecbde28-4b78-44ce-adcc-c75a1b5245fe"}},"_resolved":"/home/runner/work/tools/tools/packages/core/anthropic-client/bernierllc-anthropic-client-1.6.0.tgz","_integrity":"sha512-0rh2H7+8WhfzGi4KXC8tuwFbyPjZFboTXRwt0eKnGPA1EUewG8KDDT9B1Lkd1aTNuyD9l05qRq/SZ86PgevJag==","repository":{"url":"git+https://github.com/bernier-llc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/logger":"1.7.0","@bernierllc/retry-policy":"0.7.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anthropic-client_1.6.0_1779249642004_0.6969276217800646","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@bernierllc/anthropic-client","version":"1.6.1","description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","main":"dist/index.js","types":"dist/index.d.ts","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"author":{"name":"Bernier LLC"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/bernier-llc/tools.git"},"dependencies":{"@anthropic-ai/sdk":"^0.30.1","@bernierllc/retry-policy":"0.7.0","@bernierllc/logger":"1.7.1"},"devDependencies":{"@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/eslint-plugin":"^6.0.0","@typescript-eslint/parser":"^6.0.0","eslint":"^8.0.0","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.4.0","typescript":"^5.0.0"},"engines":{"node":">=18.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"scripts":{"build":"tsc","dev":"tsc --watch","test":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage","test:run":"jest --passWithNoTests","lint":"eslint src/**/*.ts","clean":"rimraf dist"},"_id":"@bernierllc/anthropic-client@1.6.1","bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"homepage":"https://github.com/bernier-llc/tools#readme","_integrity":"sha512-bAu9+qcMIdsCCfPEMpn+/fGH/1P4tUWxsz8c4GMDvrvgW8gCqUokkt6WOsQHTh3jNx7kAGhygud9d2DIuxzDOw==","_resolved":"/home/runner/work/tools/tools/packages/core/anthropic-client/bernierllc-anthropic-client-1.6.1.tgz","_from":"file:bernierllc-anthropic-client-1.6.1.tgz","_nodeVersion":"24.18.0","_npmVersion":"12.0.1","dist":{"integrity":"sha512-bAu9+qcMIdsCCfPEMpn+/fGH/1P4tUWxsz8c4GMDvrvgW8gCqUokkt6WOsQHTh3jNx7kAGhygud9d2DIuxzDOw==","shasum":"b044ebc4b712199c0437bd2a0c37094c1669641e","tarball":"https://registry.npmjs.org/@bernierllc/anthropic-client/-/anthropic-client-1.6.1.tgz","fileCount":19,"unpackedSize":42070,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGzoe0ghXktTZOJteUahRoV1fqElIzDAL5Sbz0ZT9H/TAiA5sIrOVde+pIuPtE90vqfYTxDUGHcobS6CG6aCdSLeZw=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eecbde28-4b78-44ce-adcc-c75a1b5245fe"}},"directories":{},"maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/anthropic-client_1.6.1_1784015499837_0.0029554266254712136"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-05T21:53:16.434Z","modified":"2026-07-14T07:51:40.101Z","1.0.0":"2025-11-05T21:53:16.721Z","1.0.1":"2025-11-06T20:06:32.228Z","1.0.2":"2025-12-02T01:00:05.158Z","1.0.3":"2025-12-22T21:08:40.049Z","1.0.4":"2025-12-23T01:46:17.401Z","1.2.0":"2026-01-05T19:47:09.602Z","1.2.1":"2026-03-09T17:45:54.421Z","1.2.2":"2026-03-10T17:16:54.076Z","1.2.3":"2026-05-18T19:42:14.491Z","1.2.4":"2026-05-19T02:18:09.796Z","1.2.5":"2026-05-19T20:06:28.504Z","1.4.0":"2026-05-19T23:36:42.659Z","1.5.0":"2026-05-20T01:35:10.081Z","1.6.0":"2026-05-20T04:00:42.138Z","1.6.1":"2026-07-14T07:51:39.975Z"},"bugs":{"url":"https://github.com/bernier-llc/tools/issues"},"author":{"name":"Bernier LLC"},"license":"MIT","homepage":"https://github.com/bernier-llc/tools#readme","keywords":["anthropic","claude","ai","api","rate-limiting","retry","streaming","cost-tracking","bernierllc"],"repository":{"type":"git","url":"git+https://github.com/bernier-llc/tools.git"},"description":"Type-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"readme":"# @bernierllc/anthropic-client\n\nType-safe Anthropic Claude API client with automatic rate limiting, retry logic, streaming support, and cost tracking.\n\n## Installation\n\n```bash\nnpm install @bernierllc/anthropic-client\n```\n\n## Features\n\n- **Type-safe API**: Full TypeScript support with strict typing\n- **Multiple Claude Models**: Support for Claude 3 Opus, Sonnet, Haiku, and Sonnet 3.5\n- **Streaming Support**: Real-time streaming responses with chunk callbacks\n- **Rate Limiting**: Built-in rate limiting to respect API quotas\n- **Automatic Retries**: Exponential backoff retry logic for failed requests\n- **Cost Tracking**: Automatic tracking of token usage and costs\n- **Comprehensive Logging**: Integration with @bernierllc/logger\n- **Error Handling**: Structured error responses for robust error handling\n\n## Usage\n\n### Basic Completion\n\n```typescript\nimport { AnthropicClient, ClaudeModel } from '@bernierllc/anthropic-client';\n\nconst client = new AnthropicClient({\n  apiKey: process.env.ANTHROPIC_API_KEY!\n});\n\nconst result = await client.complete('Explain quantum computing in simple terms', {\n  model: ClaudeModel.SONNET,\n  maxTokens: 1024,\n  temperature: 0.7\n});\n\nif (result.success) {\n  console.log('Response:', result.content);\n  console.log('Tokens used:', result.usage?.totalTokens);\n  console.log('Cost:', `$${result.cost?.totalCost.toFixed(6)}`);\n} else {\n  console.error('Error:', result.error);\n}\n```\n\n### Streaming Response\n\n```typescript\nconst result = await client.stream(\n  'Write a short story about space exploration',\n  (chunk) => {\n    // Process each chunk as it arrives\n    process.stdout.write(chunk);\n  },\n  {\n    model: ClaudeModel.OPUS,\n    maxTokens: 2000\n  }\n);\n\nconsole.log('\\n\\nTotal tokens:', result.usage?.totalTokens);\nconsole.log('Total cost:', `$${result.cost?.totalCost.toFixed(6)}`);\n```\n\n### Custom Configuration\n\n```typescript\nconst client = new AnthropicClient({\n  apiKey: process.env.ANTHROPIC_API_KEY!,\n  defaultModel: ClaudeModel.HAIKU,\n  maxRetries: 5,\n  rateLimit: {\n    requestsPerMinute: 100,\n    tokensPerMinute: 50000\n  },\n  enableLogging: true\n});\n```\n\n### Disable Rate Limiting\n\n```typescript\nconst client = new AnthropicClient({\n  apiKey: process.env.ANTHROPIC_API_KEY!,\n  rateLimit: null // Disable rate limiting\n});\n```\n\n### Usage Tracking\n\n```typescript\n// Make multiple requests\nawait client.complete('First request');\nawait client.complete('Second request');\nawait client.complete('Third request');\n\n// Get aggregated usage statistics\nconst usage = client.getUsage();\nconsole.log('Total requests:', usage.totalRequests);\nconsole.log('Total tokens:', usage.totalTokens);\nconsole.log('Total cost:', `$${usage.totalCost.toFixed(6)}`);\nconsole.log('Requests by model:', usage.requestsByModel);\n\n// Reset usage statistics\nclient.resetUsage();\n```\n\n### Rate Limit Status\n\n```typescript\nconst status = client.getRateLimitStatus();\n\nif (status) {\n  console.log('Requests remaining:', status.requestsRemaining);\n  console.log('Reset time:', status.resetTime);\n}\n```\n\n## API Reference\n\n### AnthropicClient\n\n#### Constructor\n\n```typescript\nnew AnthropicClient(config: AnthropicClientConfig)\n```\n\n**Config Options:**\n\n- `apiKey` (string, required): Your Anthropic API key\n- `defaultModel` (ClaudeModel, optional): Default model to use (default: `ClaudeModel.SONNET`)\n- `maxRetries` (number, optional): Maximum number of retry attempts (default: 3)\n- `rateLimit` (object | null, optional): Rate limiting configuration or null to disable (default: 50 requests/minute)\n  - `requestsPerMinute` (number): Maximum requests per minute\n  - `tokensPerMinute` (number): Maximum tokens per minute (not enforced by current rate limiter)\n- `enableLogging` (boolean, optional): Enable detailed logging (default: true)\n\n#### Methods\n\n##### complete(prompt: string, options?: CompletionOptions): Promise<CompletionResult>\n\nSend a completion request to Claude.\n\n**Options:**\n\n- `model` (ClaudeModel): Model to use for this request\n- `maxTokens` (number): Maximum tokens to generate (default: 1024)\n- `temperature` (number): Sampling temperature (0-1)\n- `topP` (number): Nucleus sampling parameter\n- `topK` (number): Top-k sampling parameter\n- `stopSequences` (string[]): Sequences that stop generation\n- `systemPrompt` (string): System prompt to use\n- `metadata` (Record<string, unknown>): Additional metadata\n\n**Returns:** `CompletionResult` object with:\n\n- `success` (boolean): Whether the request succeeded\n- `content` (string | undefined): Generated text\n- `usage` (object | undefined): Token usage information\n- `cost` (object | undefined): Cost breakdown\n- `model` (string | undefined): Model used\n- `stopReason` (string | undefined): Why generation stopped\n- `error` (string | undefined): Error message if failed\n\n##### stream(prompt: string, onChunk: StreamChunkCallback, options?: CompletionOptions): Promise<CompletionResult>\n\nStream a completion response from Claude.\n\n**Parameters:**\n\n- `prompt` (string): The prompt to send\n- `onChunk` (function): Callback function called for each text chunk\n- `options` (CompletionOptions): Same options as `complete()`\n\n**Returns:** `CompletionResult` with the complete response\n\n##### getUsage(): UsageStats\n\nGet cumulative usage statistics.\n\n**Returns:**\n\n- `totalRequests` (number): Total number of requests made\n- `totalInputTokens` (number): Total input tokens used\n- `totalOutputTokens` (number): Total output tokens generated\n- `totalTokens` (number): Total tokens (input + output)\n- `totalCost` (number): Total cost in USD\n- `requestsByModel` (Record<string, number>): Request count by model\n\n##### resetUsage(): void\n\nReset all usage statistics to zero.\n\n##### getRateLimitStatus(): RateLimitStatus | null\n\nGet current rate limit status.\n\n**Returns:**\n\n- `requestsRemaining` (number): Requests remaining in current window\n- `tokensRemaining` (number): Tokens remaining (not implemented)\n- `resetTime` (Date): When the rate limit window resets\n\nReturns `null` if rate limiting is disabled.\n\n## Claude Models\n\nThe following models are supported:\n\n- `ClaudeModel.OPUS` - claude-3-opus-20240229 (most capable, highest cost)\n- `ClaudeModel.SONNET` - claude-3-sonnet-20240229 (balanced performance and cost)\n- `ClaudeModel.SONNET_3_5` - claude-3-5-sonnet-20241022 (latest Sonnet version)\n- `ClaudeModel.HAIKU` - claude-3-haiku-20240307 (fastest, lowest cost)\n\n## Cost Tracking\n\nThe client automatically tracks costs based on current Anthropic pricing:\n\n| Model | Input Cost (per 1M tokens) | Output Cost (per 1M tokens) |\n|-------|---------------------------|------------------------------|\n| Opus | $15.00 | $75.00 |\n| Sonnet | $3.00 | $15.00 |\n| Sonnet 3.5 | $3.00 | $15.00 |\n| Haiku | $0.25 | $1.25 |\n\n## Error Handling\n\nThe client uses structured error responses:\n\n```typescript\nconst result = await client.complete('test prompt');\n\nif (!result.success) {\n  console.error('Request failed:', result.error);\n  // Handle error appropriately\n} else {\n  // Process successful response\n  console.log(result.content);\n}\n```\n\n## Integration Status\n\n- **Logger**: ✅ Integrated - Uses @bernierllc/logger for structured logging of API calls, errors, and usage tracking\n- **Docs-Suite**: ✅ Ready - Full TypeDoc documentation with API reference and usage examples\n- **NeverHub**: 🔄 Optional - Supports graceful degradation. When NeverHub is available via @bernierllc/neverhub-adapter, the client can:\n  - Emit `ai.request.started` and `ai.request.completed` events\n  - Publish token usage and cost metrics\n  - Subscribe to configuration updates\n  - Register as an AI capability provider for service discovery\n  - All core functionality works without NeverHub present\n\n### NeverHub Integration Example\n\n```typescript\nimport { AnthropicClient } from '@bernierllc/anthropic-client';\nimport { NeverHubAdapter } from '@bernierllc/neverhub-adapter';\n\nconst client = new AnthropicClient({\n  apiKey: process.env.ANTHROPIC_API_KEY!\n});\n\n// Auto-detect and integrate with NeverHub if available\nif (await NeverHubAdapter.detect()) {\n  const neverhub = new NeverHubAdapter();\n  await neverhub.register({\n    type: 'ai-provider',\n    name: '@bernierllc/anthropic-client',\n    version: '1.0.0',\n    capabilities: [\n      { type: 'ai', name: 'text-completion', version: '1.0.0' },\n      { type: 'ai', name: 'streaming', version: '1.0.0' }\n    ]\n  });\n\n  // Client emits events automatically when integrated\n}\n\n// Works identically with or without NeverHub\nconst result = await client.complete('Your prompt here');\n```\n\n## Development\n\n```bash\n# Install dependencies\nnpm install\n\n# Run tests\nnpm test\n\n# Run tests with coverage\nnpm run test:coverage\n\n# Build\nnpm run build\n\n# Lint\nnpm run lint\n```\n\n## License\n\nCopyright (c) 2025 Bernier LLC\n\nThis file is licensed to the client under a limited-use license.\nThe client may use and modify this code *only within the scope of the project it was delivered for*.\nRedistribution or use in other products or commercial offerings is not permitted without written consent from Bernier LLC.\n\n## See Also\n\n- [@bernierllc/logger](../logger) - Structured logging\n- [@bernierllc/retry-policy](../retry-policy) - Retry logic with exponential backoff\n- [Anthropic API Documentation](https://docs.anthropic.com/) - Official API documentation\n","readmeFilename":"README.md"}