{"_id":"@ato-sdk/js","_rev":"2-c0a04ebacd087646666879977ef14a4e","name":"@ato-sdk/js","dist-tags":{"latest":"0.2.0"},"versions":{"0.1.0":{"name":"@ato-sdk/js","version":"0.1.0","keywords":["ato","llm","observability","tracing","anthropic","openai","claude","gpt","ai","monitoring","cost-tracking"],"license":"MIT","_id":"@ato-sdk/js@0.1.0","maintainers":[{"name":"willnigri","email":"will@nigri.io"}],"homepage":"https://agentictool.ai","bugs":{"url":"https://github.com/WillNigri/Agentic-Tool-Optimization/issues"},"dist":{"shasum":"4392ba4f8ed312a3f751c22f7955660e3292e32d","tarball":"https://registry.npmjs.org/@ato-sdk/js/-/js-0.1.0.tgz","fileCount":17,"integrity":"sha512-WLKBTgDay5Dz99zVy4H5dLewVwqd8VYfG+xGw03T98wKYBDOuxjMv/zuqL75eHWITI8VVd6nPH1fvBFLQ6NQbQ==","signatures":[{"sig":"MEUCIQCZF+2IyensZOSM94Q7Em+HGr+BYaE/dGsk4Q/48X/bywIgBqVDasdMIlHu+CD+MXWSuJtnvqRJ/m10SrDTZsCbAso=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61189},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./openai":{"types":"./dist/openai.d.ts","import":"./dist/openai.mjs","require":"./dist/openai.js"},"./anthropic":{"types":"./dist/anthropic.d.ts","import":"./dist/anthropic.mjs","require":"./dist/anthropic.js"}},"gitHead":"5b4ca67eefd958ff3f5eaf99bb640a007372ab07","scripts":{"dev":"tsup src/index.ts src/anthropic.ts src/openai.ts --format cjs,esm --dts --watch","build":"tsup src/index.ts src/anthropic.ts src/openai.ts --format cjs,esm --dts --clean"},"_npmUser":{"name":"willnigri","email":"will@nigri.io"},"repository":{"url":"git+https://github.com/WillNigri/Agentic-Tool-Optimization.git","type":"git"},"_npmVersion":"11.6.2","description":"Auto-capture LLM traces for ATO — works with Anthropic, OpenAI, and any LLM provider","directories":{},"_nodeVersion":"24.13.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","typescript":"^5.4.0"},"peerDependencies":{"openai":">=4.0.0","@anthropic-ai/sdk":">=0.20.0"},"peerDependenciesMeta":{"openai":{"optional":true},"@anthropic-ai/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/js_0.1.0_1775674939676_0.4745880354239509","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@ato-sdk/js","version":"0.2.0","description":"Auto-capture LLM traces for ATO — works with Anthropic, OpenAI, and any LLM provider","main":"dist/index.js","module":"dist/index.mjs","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js","types":"./dist/index.d.ts"},"./anthropic":{"import":"./dist/anthropic.mjs","require":"./dist/anthropic.js","types":"./dist/anthropic.d.ts"},"./openai":{"import":"./dist/openai.mjs","require":"./dist/openai.js","types":"./dist/openai.d.ts"},"./agent":{"import":"./dist/agent.mjs","require":"./dist/agent.js","types":"./dist/agent.d.ts"}},"scripts":{"build":"tsup src/index.ts src/anthropic.ts src/openai.ts src/agent.ts --format cjs,esm --dts --clean","dev":"tsup src/index.ts src/anthropic.ts src/openai.ts src/agent.ts --format cjs,esm --dts --watch"},"keywords":["ato","llm","observability","tracing","anthropic","openai","claude","gpt","ai","monitoring","cost-tracking"],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/WillNigri/Agentic-Tool-Optimization.git"},"homepage":"https://agentictool.ai","devDependencies":{"tsup":"^8.0.0","typescript":"^5.4.0"},"peerDependencies":{"@anthropic-ai/sdk":">=0.20.0","openai":">=4.0.0"},"peerDependenciesMeta":{"@anthropic-ai/sdk":{"optional":true},"openai":{"optional":true},"claude-agent-sdk":{"optional":true}},"gitHead":"95b05b3aefa6e689ffb934c70e03b8efcad1acd4","_id":"@ato-sdk/js@0.2.0","bugs":{"url":"https://github.com/WillNigri/Agentic-Tool-Optimization/issues"},"_nodeVersion":"24.13.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-/AZs+4SGZmMX6x+M9+wpeQNKZuvyGDaUEYJcpikcwSaf94KcrgVbkcf326i3BojFZVjZPalU5cgZ+kBx97IHCQ==","shasum":"3b7b57175f632f7418accacf909999d3d3a31914","tarball":"https://registry.npmjs.org/@ato-sdk/js/-/js-0.2.0.tgz","fileCount":21,"unpackedSize":76518,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGIhXl54xbBGDkGMUYUrDoHZVLpicawJe6gzbRpa3w6MAiBglr137a8AGDltoDlPVznRE32/F8WDXuj5x3WT2riRJQ=="}]},"_npmUser":{"name":"willnigri","email":"will@nigri.io"},"directories":{},"maintainers":[{"name":"willnigri","email":"will@nigri.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/js_0.2.0_1775694569992_0.05591010684583786"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-08T19:02:19.608Z","modified":"2026-04-09T00:29:30.342Z","0.1.0":"2026-04-08T19:02:19.834Z","0.2.0":"2026-04-09T00:29:30.186Z"},"bugs":{"url":"https://github.com/WillNigri/Agentic-Tool-Optimization/issues"},"license":"MIT","homepage":"https://agentictool.ai","keywords":["ato","llm","observability","tracing","anthropic","openai","claude","gpt","ai","monitoring","cost-tracking"],"repository":{"type":"git","url":"git+https://github.com/WillNigri/Agentic-Tool-Optimization.git"},"description":"Auto-capture LLM traces for ATO — works with Anthropic, OpenAI, and any LLM provider","maintainers":[{"name":"willnigri","email":"will@nigri.io"}],"readme":"# @ato-sdk/js\n\nAuto-capture LLM traces for [ATO](https://agentictool.ai). Works with Anthropic, OpenAI, and any LLM provider.\n\n## Install\n\n```bash\nnpm install @ato-sdk/js\n```\n\n## Quick Start\n\n```typescript\nimport { init } from '@ato-sdk/js';\n\n// Initialize with your ATO API key\ninit({ apiKey: 'your-ato-api-key' });\n```\n\n### Anthropic\n\n```typescript\nimport Anthropic from '@anthropic-ai/sdk';\nimport { wrapAnthropic } from '@ato-sdk/js/anthropic';\n\nconst client = wrapAnthropic(new Anthropic());\n\n// All calls are now auto-traced — no other changes needed\nconst msg = await client.messages.create({\n  model: 'claude-sonnet-4-6',\n  max_tokens: 1024,\n  messages: [{ role: 'user', content: 'Hello' }],\n});\n```\n\n### OpenAI\n\n```typescript\nimport OpenAI from 'openai';\nimport { wrapOpenAI } from '@ato-sdk/js/openai';\n\nconst client = wrapOpenAI(new OpenAI());\n\n// All calls are now auto-traced\nconst res = await client.chat.completions.create({\n  model: 'gpt-4o',\n  messages: [{ role: 'user', content: 'Hello' }],\n});\n```\n\n## What Gets Captured\n\nEvery LLM call automatically records:\n\n- **Model** — which model was used\n- **Tokens** — input, output, cached\n- **Cost** — calculated from built-in pricing table (60+ models)\n- **Duration** — response time in ms\n- **Status** — success or error (with error message)\n- **Metadata** — temperature, max_tokens, tool usage, stop reason\n\n## Configuration\n\n```typescript\ninit({\n  apiKey: 'your-key',                    // ATO Cloud API key\n  endpoint: 'https://api.agentictool.ai', // Custom endpoint\n  debug: true,                            // Log traces to console\n  batching: true,                         // Batch traces (default)\n  flushInterval: 5000,                    // Flush every 5s (default)\n  maxBatchSize: 50,                       // Flush at 50 traces (default)\n  sessionId: 'my-session',               // Group traces by session\n  userId: 'user-123',                    // Attribute traces to user\n  defaultTags: ['production'],           // Tags for all traces\n  localOnly: true,                       // Don't send to cloud\n});\n```\n\n## Manual Traces\n\nFor custom LLM providers:\n\n```typescript\nimport { capture, generateTraceId } from '@ato-sdk/js';\nimport { calculateCost } from '@ato-sdk/js';\n\ncapture({\n  id: generateTraceId(),\n  provider: 'custom',\n  model: 'my-model',\n  inputTokens: 100,\n  outputTokens: 50,\n  cachedTokens: 0,\n  totalTokens: 150,\n  costUsd: calculateCost('gpt-4o', 100, 50),\n  durationMs: 234,\n  status: 'success',\n  metadata: {},\n  timestamp: new Date().toISOString(),\n});\n```\n\n## Cost Calculation\n\nBuilt-in pricing for 60+ models:\n\n```typescript\nimport { calculateCost } from '@ato-sdk/js';\n\ncalculateCost('claude-sonnet-4-6', 1000, 500);  // $0.0105\ncalculateCost('gpt-4o', 1000, 500);             // $0.0075\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}