{"_id":"@atlasflux/sdk","_rev":"3-31c2b0397c16a5e17a9bb639bc86617b","name":"@atlasflux/sdk","dist-tags":{"latest":"0.2.0"},"versions":{"0.1.0":{"name":"@atlasflux/sdk","version":"0.1.0","license":"MIT","_id":"@atlasflux/sdk@0.1.0","maintainers":[{"name":"nabildev","email":"muhdnabil1454@gmail.com"}],"dist":{"shasum":"4526ced8a7c7009918c34cd2a1ffe25189b050a1","tarball":"https://registry.npmjs.org/@atlasflux/sdk/-/sdk-0.1.0.tgz","fileCount":6,"integrity":"sha512-uAHGACImjZYkJGzvfpDMb+aLqbLq7+gRPj7zrxDp/jav/F5zuGPYRQG0B4dcU7QaE8K7SPcv+aSal6vH1z/uNA==","signatures":[{"sig":"MEUCIEVJ/ag8snNHUVKNdrNh5NYvht8ykYdbIXMjkXJLHtC9AiEAxXTmTKMLppYwNz1lJixw+9o6ZshXP+IrNNGDC76cdyo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39886},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"tsx --test tests/*.test.ts","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"nabildev","email":"muhdnabil1454@gmail.com"},"_npmVersion":"11.11.0","description":"Official JavaScript and TypeScript SDK for the AtlasFlux API.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","typescript":"^5.9.3","@types/node":"^22.15.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0_1786260705476_0.6234038046657471","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@atlasflux/sdk","version":"0.1.1","license":"MIT","_id":"@atlasflux/sdk@0.1.1","maintainers":[{"name":"nabildev","email":"muhdnabil1454@gmail.com"}],"dist":{"shasum":"5ccaa3fe2a810b59f65f953505f835a4aba41f32","tarball":"https://registry.npmjs.org/@atlasflux/sdk/-/sdk-0.1.1.tgz","fileCount":6,"integrity":"sha512-BisetVVUU7QrvJwJZD9InduHkMv+9/BYtBdO1O18wZSxcwtFxPP3XEbKLp0kDmiKYwBwkZtkKQJ3YLwRtA0JaQ==","signatures":[{"sig":"MEUCIDmWmQLsd3wDHaTlIbX1XiWBToYTi5R3p3RB/yKIxj+kAiEA7UxigNrJiTK1iCG2sFa87XiBXN2RhitAZtHaCq5M4nk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39890},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"tsx --test tests/*.test.ts","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"nabildev","email":"muhdnabil1454@gmail.com"},"_npmVersion":"11.11.0","description":"Official JavaScript and TypeScript SDK for the AtlasFlux API.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","typescript":"^5.9.3","@types/node":"^22.15.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.1_1786262001395_0.1677861937817977","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@atlasflux/sdk","version":"0.2.0","description":"Official JavaScript and TypeScript SDK for the AtlasFlux API.","type":"module","license":"MIT","engines":{"node":">=18"},"main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsc","typecheck":"tsc --noEmit","test":"tsx --test tests/*.test.ts"},"devDependencies":{"@types/node":"^22.15.0","tsx":"^4.19.4","typescript":"^5.9.3"},"_id":"@atlasflux/sdk@0.2.0","_nodeVersion":"24.14.0","_npmVersion":"11.11.0","dist":{"integrity":"sha512-gsZbTGCAn5ebp26NHTDhAXyFz9P82Mc+0UV9yJf8u4xMV9Xf80/NrmBwoTPoCo9q87Z6Eyetpd/nTpXvde1Oig==","shasum":"87428844175cb443bfef22ebdd52e65f7abc060d","tarball":"https://registry.npmjs.org/@atlasflux/sdk/-/sdk-0.2.0.tgz","fileCount":6,"unpackedSize":41707,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBPJPsIbaP7aGAkzhrUrjpSXre5aw/qGMlrWcrc5PsyEAiANJ0iAdm1Oj/6SeDcXFnveVCCM20oTzFoRrTo+2CFOzg=="}]},"_npmUser":{"name":"nabildev","email":"muhdnabil1454@gmail.com"},"directories":{},"maintainers":[{"name":"nabildev","email":"muhdnabil1454@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_0.2.0_1786698818993_0.28660876107824507"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-09T07:31:45.263Z","modified":"2026-08-14T09:13:39.338Z","0.1.0":"2026-08-09T07:31:45.620Z","0.1.1":"2026-08-09T07:53:21.548Z","0.2.0":"2026-08-14T09:13:39.142Z"},"license":"MIT","description":"Official JavaScript and TypeScript SDK for the AtlasFlux API.","maintainers":[{"name":"nabildev","email":"muhdnabil1454@gmail.com"}],"readme":"# @atlasflux/sdk\n\nOfficial JavaScript and TypeScript SDK for the AtlasFlux API.\n\n## Install\n\n```bash\nnpm install @atlasflux/sdk\n```\n\n## Basic request\n\n```ts\nimport { AtlasFlux } from \"@atlasflux/sdk\";\n\nconst client = new AtlasFlux({\n  apiKey: process.env.ATLASFLUX_API_KEY!\n});\n\nconst response = await client.responses.create({\n  model: \"atlasflux/nenas-flash\",\n  input: \"Explain APIs in one paragraph.\",\n  max_output_tokens: 256\n});\n\nconsole.log(response.output_text);\n```\n\n## Chat Completions\n\n```ts\nconst completion = await client.chat.completions.create({\n  messages: [{ role: \"user\", content: \"What is the capital of Malaysia?\" }],\n  max_tokens: 256\n});\n\nconsole.log(completion.choices[0]?.message.content);\n```\n\n## Streaming\n\n```ts\nfor await (const event of client.responses.stream({\n  input: \"Write a short story.\",\n  max_output_tokens: 512\n})) {\n  if (event.event === \"response.output_text.delta\") {\n    console.log(event.data);\n  }\n}\n```\n\nStreaming errors are emitted as structured events after a stream has started. Always handle `response.failed` and the `data.error` payload.\n\n## Agent mode system prompt\n\nAPI keys with agent mode enabled get server-side agent scaffolding layered into every request. Preview the exact prompt that will be injected:\n\n```ts\nconst template = await client.systemPrompt.get();\nconsole.log(template.system_prompt);\nconsole.log(`~${template.estimated_tokens} tokens`);\n```\n\n## Safe retries\n\nThe SDK retries only retryable API errors and network failures. POST requests are retried only when an `idempotencyKey` is supplied, unless `allowUnsafeRetries` is explicitly enabled.\n\n```ts\nconst response = await client.responses.create(\n  { input: \"Generate a report.\" },\n  { idempotencyKey: \"report-job-123\" }\n);\n```\n\n## Errors\n\n```ts\nimport { AtlasFluxError } from \"@atlasflux/sdk\";\n\ntry {\n  await client.responses.create({ input: \"Hello\" });\n} catch (error) {\n  if (error instanceof AtlasFluxError) {\n    console.error(error.code);\n    console.error(error.guidance);\n    console.error(error.requestId);\n  }\n  throw error;\n}\n```\n\nSee the [AtlasFlux error reference](https://api-docs.atlasflux.my/api-reference/errors) for the complete catalog.\n","readmeFilename":"README.md"}