{"_id":"@archasek/ax","_rev":"7-c1e3445151febed05ad2a079c884a39d","name":"@archasek/ax","dist-tags":{"fork":"19.0.33-fork.3","latest":"19.0.41-fork.2"},"versions":{"19.0.18-fork.1":{"name":"@archasek/ax","version":"19.0.18-fork.1","keywords":[],"author":{"name":"Vikram","email":"https://twitter.com/dosco"},"license":"Apache-2.0","_id":"@archasek/ax@19.0.18-fork.1","maintainers":[{"name":"archasek","email":"archasek@gmail.com"}],"homepage":"https://github.com/ax-llm/ax#readme","bugs":{"url":"https://github.com/@ax-llm/ax/issues"},"ava":{"files":["!dist/**/*"],"timeout":"180s","failFast":true,"extensions":{"ts":"module"},"concurrency":1,"nodeArguments":["--import=tsimp"]},"bin":{"ax":"cli/index.mjs"},"tsd":{"directory":"./"},"dist":{"shasum":"f85ec7c9600c6964c9df3f7cf37b428bf0771b6e","tarball":"https://registry.npmjs.org/@archasek/ax/-/ax-19.0.18-fork.1.tgz","fileCount":19,"integrity":"sha512-z3VTKMCku9aalG2UOFNt/L2ejoXaUF9W95AlaiM0/jQ22rx1Pj6UUG2mDVAykOauT8u3reI8MVY4VXHRK3PXBw==","signatures":[{"sig":"MEUCIC1em6KlkKYoBj035/0Rq1v5DgN36mni2szxRz0HJ82oAiEAx+6VWGrjlKj4X1M0dPKcpFaXZ5Mi42GtQa+jwgUAc68=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12348748},"main":"./index.cjs","type":"module","types":"./index.d.ts","module":"./index.js","exports":{".":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"./*":{"types":"./*.d.ts","import":"./*.js","require":"./*.cjs"},"./index.global.js":"./index.global.js"},"gitHead":"69a06db8472c7f9a91d693f7f8f69b23e63f4d22","scripts":{"postinstall":"node ./scripts/postinstall.mjs"},"_npmUser":{"name":"archasek","email":"archasek@gmail.com"},"repository":{"url":"git+https://github.com/ax-llm/ax.git","type":"git"},"_npmVersion":"11.6.4","description":"The best library to work with LLMs","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","@opentelemetry/api":"^1.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ax_19.0.18-fork.1_1773784339626_0.0362521801610729","host":"s3://npm-registry-packages-npm-production"}},"19.0.18-fork.2":{"name":"@archasek/ax","version":"19.0.18-fork.2","keywords":[],"author":{"name":"Vikram","email":"https://twitter.com/dosco"},"license":"Apache-2.0","_id":"@archasek/ax@19.0.18-fork.2","maintainers":[{"name":"archasek","email":"archasek@gmail.com"}],"homepage":"https://github.com/ax-llm/ax#readme","bugs":{"url":"https://github.com/@ax-llm/ax/issues"},"ava":{"files":["!dist/**/*"],"timeout":"180s","failFast":true,"extensions":{"ts":"module"},"concurrency":1,"nodeArguments":["--import=tsimp"]},"bin":{"ax":"cli/index.mjs"},"tsd":{"directory":"./"},"dist":{"shasum":"5b76ccf0e928d457741c63e4cfd934c7b87228df","tarball":"https://registry.npmjs.org/@archasek/ax/-/ax-19.0.18-fork.2.tgz","fileCount":21,"integrity":"sha512-xsyycvlT2HnIiePjL88/jyAX5RQFNzS3bEAVxDvEsh8l38+Uhb7inPMJmOjXEkYrlorMeIdBy0p0EV7uouk8UA==","signatures":[{"sig":"MEQCIBogNl5609fYkk1MyzlM1zjRwy80ZrhSBytBEPusa9KiAiBqXilMEsbaQTxLE+I/xHQr/DMKyML9qS+5wteJMgX/pw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20888468},"main":"./index.cjs","type":"module","types":"./index.d.ts","module":"./index.js","exports":{".":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"./*":{"types":"./*.d.ts","import":"./*.js","require":"./*.cjs"},"./index.global.js":"./index.global.js"},"gitHead":"c847d8a652598c9d4e40243b03e2801208200451","scripts":{"postinstall":"node ./scripts/postinstall.mjs"},"_npmUser":{"name":"archasek","email":"archasek@gmail.com"},"repository":{"url":"git+https://github.com/ax-llm/ax.git","type":"git"},"_npmVersion":"11.6.4","description":"The best library to work with LLMs","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","@opentelemetry/api":"^1.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ax_19.0.18-fork.2_1773873489213_0.009365620243847017","host":"s3://npm-registry-packages-npm-production"}},"19.0.33-fork.1":{"name":"@archasek/ax","version":"19.0.33-fork.1","keywords":[],"author":{"name":"Vikram","email":"https://twitter.com/dosco"},"license":"Apache-2.0","_id":"@archasek/ax@19.0.33-fork.1","maintainers":[{"name":"archasek","email":"archasek@gmail.com"}],"homepage":"https://github.com/ax-llm/ax#readme","bugs":{"url":"https://github.com/@ax-llm/ax/issues"},"ava":{"files":["!dist/**/*"],"timeout":"180s","failFast":true,"extensions":{"ts":"module"},"concurrency":1,"nodeArguments":["--import=tsimp"]},"bin":{"ax":"cli/index.mjs"},"tsd":{"directory":"./"},"dist":{"shasum":"ab2e904a4c7f27e72c0030bd4321b3323a56efb7","tarball":"https://registry.npmjs.org/@archasek/ax/-/ax-19.0.33-fork.1.tgz","fileCount":20,"integrity":"sha512-SjRgNnknqGtXpA73mp+87zqGyN1Wm5PTkkJ0mnW66US+KAzVtyH/2N3MUUffuBGU4ftHTgm7Hv1P2VwnCdQL/w==","signatures":[{"sig":"MEYCIQCi3oeX81LQpes75nNDnYoUkzb1abFDi6LUUCHZ2ZWobAIhAIt7V5f396GOETG+vRO3URmhzXCLS+NawJZcG7A+zbGj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13257404},"main":"./index.cjs","type":"module","types":"./index.d.ts","module":"./index.js","exports":{".":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"./*":{"types":"./*.d.ts","import":"./*.js","require":"./*.cjs"},"./index.global.js":"./index.global.js"},"gitHead":"1cc90b8d247bf746efb543e959ac965268abeb14","scripts":{"postinstall":"node ./scripts/postinstall.mjs"},"_npmUser":{"name":"archasek","email":"archasek@gmail.com"},"repository":{"url":"git+https://github.com/ax-llm/ax.git","type":"git"},"_npmVersion":"11.6.4","description":"The best library to work with LLMs","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","@opentelemetry/api":"^1.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ax_19.0.33-fork.1_1774340312835_0.3839851775462","host":"s3://npm-registry-packages-npm-production"}},"19.0.33-fork.2":{"name":"@archasek/ax","version":"19.0.33-fork.2","keywords":[],"author":{"name":"Vikram","email":"https://twitter.com/dosco"},"license":"Apache-2.0","_id":"@archasek/ax@19.0.33-fork.2","maintainers":[{"name":"archasek","email":"archasek@gmail.com"}],"homepage":"https://github.com/ax-llm/ax#readme","bugs":{"url":"https://github.com/@ax-llm/ax/issues"},"ava":{"files":["!dist/**/*"],"timeout":"180s","failFast":true,"extensions":{"ts":"module"},"concurrency":1,"nodeArguments":["--import=tsimp"]},"bin":{"ax":"cli/index.mjs"},"tsd":{"directory":"./"},"dist":{"shasum":"c04080cd484717deb647d6b04895e5d9747d0269","tarball":"https://registry.npmjs.org/@archasek/ax/-/ax-19.0.33-fork.2.tgz","fileCount":20,"integrity":"sha512-snysVflKrnnnxDX+lTWwTl4c6kO1/TH1VYVbIbKAdQDPJaTHO/k9PMlxuLQoJ8dMbNBGycK7NiKnlgocqJwq8w==","signatures":[{"sig":"MEUCIQCzylA/E8ZeieO1tpbiVzntMXh5oQooWRBnbBuetRMtKgIgfPf89d+DnSH6rPkUhljEmYeR7VmJFUVqrSYZyw9vAmo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13257967},"main":"./index.cjs","type":"module","types":"./index.d.ts","module":"./index.js","exports":{".":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"./*":{"types":"./*.d.ts","import":"./*.js","require":"./*.cjs"},"./index.global.js":"./index.global.js"},"gitHead":"033188875b014afe390af329e2fbb5c1e4335e19","scripts":{"postinstall":"node ./scripts/postinstall.mjs"},"_npmUser":{"name":"archasek","email":"archasek@gmail.com"},"repository":{"url":"git+https://github.com/ax-llm/ax.git","type":"git"},"_npmVersion":"11.6.4","description":"The best library to work with LLMs","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","@opentelemetry/api":"^1.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ax_19.0.33-fork.2_1774340838959_0.60707709074536","host":"s3://npm-registry-packages-npm-production"}},"19.0.33-fork.3":{"name":"@archasek/ax","version":"19.0.33-fork.3","keywords":[],"author":{"name":"Vikram","email":"https://twitter.com/dosco"},"license":"Apache-2.0","_id":"@archasek/ax@19.0.33-fork.3","maintainers":[{"name":"archasek","email":"archasek@gmail.com"}],"homepage":"https://github.com/ax-llm/ax#readme","bugs":{"url":"https://github.com/@ax-llm/ax/issues"},"ava":{"files":["!dist/**/*"],"timeout":"180s","failFast":true,"extensions":{"ts":"module"},"concurrency":1,"nodeArguments":["--import=tsimp"]},"bin":{"ax":"cli/index.mjs"},"tsd":{"directory":"./"},"dist":{"shasum":"e54c2f52a29e69372f5d8be781dc02a274a0c44d","tarball":"https://registry.npmjs.org/@archasek/ax/-/ax-19.0.33-fork.3.tgz","fileCount":20,"integrity":"sha512-uOScX3Ptl4WKOi6hyut3w5Q4dxteLxYGGGUSYzaCSU2pr6t+DnpXM7OZhhvjCaJjd/w6oU4iTcsg4rZYjgM/nA==","signatures":[{"sig":"MEQCIC5868ljf3mOh/8bxe2mH6SCskujOJrRSPD8cevR2BRzAiABU0SJubWvh+fLIZ5Y1keMMd6A9AhOPYwaMxBq/PTA9w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13258495},"main":"./index.cjs","type":"module","types":"./index.d.ts","module":"./index.js","exports":{".":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"./*":{"types":"./*.d.ts","import":"./*.js","require":"./*.cjs"},"./index.global.js":"./index.global.js"},"gitHead":"033188875b014afe390af329e2fbb5c1e4335e19","scripts":{"postinstall":"node ./scripts/postinstall.mjs"},"_npmUser":{"name":"archasek","email":"archasek@gmail.com"},"repository":{"url":"git+https://github.com/ax-llm/ax.git","type":"git"},"_npmVersion":"11.6.4","description":"The best library to work with LLMs","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","@opentelemetry/api":"^1.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ax_19.0.33-fork.3_1774366773586_0.729067109457834","host":"s3://npm-registry-packages-npm-production"}},"19.0.41-fork.1":{"name":"@archasek/ax","version":"19.0.41-fork.1","keywords":[],"author":{"name":"Vikram","email":"https://twitter.com/dosco"},"license":"Apache-2.0","_id":"@archasek/ax@19.0.41-fork.1","maintainers":[{"name":"archasek","email":"archasek@gmail.com"}],"homepage":"https://github.com/ax-llm/ax#readme","bugs":{"url":"https://github.com/@ax-llm/ax/issues"},"ava":{"files":["!dist/**/*"],"timeout":"180s","failFast":true,"extensions":{"ts":"module"},"concurrency":1,"nodeArguments":["--import=tsimp"]},"bin":{"ax":"cli/index.mjs"},"tsd":{"directory":"./"},"dist":{"shasum":"42f95fa5acfc763a6f775899e211a2f821f207b4","tarball":"https://registry.npmjs.org/@archasek/ax/-/ax-19.0.41-fork.1.tgz","fileCount":21,"integrity":"sha512-g6N/sp+K5gkS0DWxv1CRrCiG1Z6RRifE2HeAmPLHU8mVuC9NGf/P4EQxRpzncvbveLjBAmSpLaeDxwWEkHimdg==","signatures":[{"sig":"MEUCIGUDRzNUnHMEdfdwVcdYFDK+p+NoyiyzXto/7/nHatdOAiEAt4Nv0YUurpM9fv6FheJzhcYC/5bf8h1nHRQ3DolGaHk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13393155},"main":"./index.cjs","type":"module","types":"./index.d.ts","module":"./index.js","exports":{".":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"./*":{"types":"./*.d.ts","import":"./*.js","require":"./*.cjs"},"./index.global.js":"./index.global.js"},"gitHead":"3892afca8a0fb5a3b55534c6420b314b6028ad1d","scripts":{"postinstall":"node ./scripts/postinstall.mjs"},"_npmUser":{"name":"archasek","email":"archasek@gmail.com"},"repository":{"url":"git+https://github.com/ax-llm/ax.git","type":"git"},"_npmVersion":"10.9.4","description":"The best library to work with LLMs","directories":{},"_nodeVersion":"22.22.0","dependencies":{"dayjs":"^1.11.13","@opentelemetry/api":"^1.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ax_19.0.41-fork.1_1775148237284_0.40909028155448945","host":"s3://npm-registry-packages-npm-production"}},"19.0.41-fork.2":{"name":"@archasek/ax","version":"19.0.41-fork.2","type":"module","description":"The best library to work with LLMs","repository":{"type":"git","url":"git+https://github.com/ax-llm/ax.git"},"publishConfig":{"access":"public"},"license":"Apache-2.0","keywords":[],"types":"./index.d.ts","dependencies":{"@opentelemetry/api":"^1.9.0","dayjs":"^1.11.13"},"ava":{"failFast":true,"timeout":"180s","concurrency":1,"extensions":{"ts":"module"},"nodeArguments":["--import=tsimp"],"files":["!dist/**/*"]},"tsd":{"directory":"./"},"bugs":{"url":"https://github.com/@ax-llm/ax/issues"},"homepage":"https://github.com/ax-llm/ax#readme","author":{"name":"Vikram","email":"https://twitter.com/dosco"},"main":"./index.cjs","module":"./index.js","exports":{".":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"./index.global.js":"./index.global.js","./*":{"types":"./*.d.ts","import":"./*.js","require":"./*.cjs"}},"bin":{"ax":"cli/index.mjs"},"scripts":{"postinstall":"node ./scripts/postinstall.mjs"},"_id":"@archasek/ax@19.0.41-fork.2","gitHead":"ba063a93d65ff2394e6701f2158c8bdbc296ca11","_nodeVersion":"22.22.0","_npmVersion":"10.9.4","dist":{"integrity":"sha512-NO/CkC1JcOZ9aero7xoa3chLuOxurocZaPWkoXYv++r1Ps8sXnb1Hg5+SjxHmBKqKA+aabceL8F8yRs7Xm/nvw==","shasum":"571b50182f6a979c2ed1b805e7a563bf63ee01df","tarball":"https://registry.npmjs.org/@archasek/ax/-/ax-19.0.41-fork.2.tgz","fileCount":21,"unpackedSize":13393541,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC4WVFs5VH67gDZ1c/m03LjNTa248LnvpTTAEipQX9W/wIhANm3HCxKvfkoaf+SM+4afTgTrHush2AMeLBjrmSWROI3"}]},"_npmUser":{"name":"archasek","email":"archasek@gmail.com"},"directories":{},"maintainers":[{"name":"archasek","email":"archasek@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ax_19.0.41-fork.2_1775151339975_0.4842099666683679"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-17T21:52:19.541Z","modified":"2026-04-02T17:35:40.374Z","19.0.18-fork.1":"2026-03-17T21:52:19.914Z","19.0.18-fork.2":"2026-03-18T22:38:09.751Z","19.0.33-fork.1":"2026-03-24T08:18:33.114Z","19.0.33-fork.2":"2026-03-24T08:27:19.243Z","19.0.33-fork.3":"2026-03-24T15:39:33.878Z","19.0.41-fork.1":"2026-04-02T16:43:57.613Z","19.0.41-fork.2":"2026-04-02T17:35:40.248Z"},"bugs":{"url":"https://github.com/@ax-llm/ax/issues"},"author":{"name":"Vikram","email":"https://twitter.com/dosco"},"license":"Apache-2.0","homepage":"https://github.com/ax-llm/ax#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/ax-llm/ax.git"},"description":"The best library to work with LLMs","maintainers":[{"name":"archasek","email":"archasek@gmail.com"}],"readme":"# Ax: Build Reliable AI Apps in TypeScript\n\n**Stop wrestling with prompts. Start shipping AI features.**\n\nAx brings DSPy's revolutionary approach to TypeScript – just describe what you\nwant, and let the framework handle the rest. Production-ready, type-safe, and\nworks with all major LLMs.\n\n[![NPM Package](https://img.shields.io/npm/v/@ax-llm/ax?style=for-the-badge&color=green)](https://www.npmjs.com/package/@ax-llm/ax)\n[![Twitter](https://img.shields.io/twitter/follow/dosco?style=for-the-badge&color=red)](https://twitter.com/dosco)\n[![Discord Chat](https://img.shields.io/discord/1078454354849304667?style=for-the-badge&color=green)](https://discord.gg/DSHg3dU7dW)\n\n## Transform Your AI Development in 30 Seconds\n\n```typescript\nimport { ai, ax } from \"@ax-llm/ax\";\n\n// 1. Pick any LLM\nconst llm = ai({ name: \"openai\", apiKey: process.env.OPENAI_APIKEY! });\n\n// 2. Say what you want\nconst classifier = ax(\n  'review:string -> sentiment:class \"positive, negative, neutral\"',\n);\n\n// 3. Get type-safe results\nconst result = await classifier.forward(llm, {\n  review: \"This product is amazing!\",\n});\nconsole.log(result.sentiment); // \"positive\" ✨\n```\n\n**That's it.** No prompt engineering. No trial and error. It works with GPT-4,\nClaude, Gemini, or any LLM.\n\n## Why Thousands of Developers Choose Ax\n\n### 🎯 **Define Once, Run Anywhere**\n\nWrite your logic once. Switch between OpenAI, Anthropic, Google, or 15+\nproviders with one line. No rewrites needed.\n\n### ⚡ **Ship 10x Faster**\n\nStop tweaking prompts. Define inputs → outputs. The framework generates optimal\nprompts automatically.\n\n### 🛡️ **Production-Ready from Day One**\n\nBuilt-in streaming, validation, error handling, observability. Used by startups\nin production handling millions of requests.\n\n### 🚀 **Gets Smarter Over Time**\n\nTrain your programs with examples. Watch accuracy improve automatically. No ML\nexpertise needed.\n\n## Real Apps, Real Simple\n\n### Extract Structured Data from Customer Emails\n\n```typescript\nconst extractor = ax(`\n  customerEmail:string, currentDate:datetime -> \n  priority:class \"high, normal, low\",\n  sentiment:class \"positive, negative, neutral\",\n  ticketNumber?:number,\n  nextSteps:string[],\n  estimatedResponseTime:string\n`);\n\nconst result = await extractor.forward(ai, {\n  customerEmail: \"Order #12345 hasn't arrived. Need this resolved immediately!\",\n  currentDate: new Date(),\n});\n// Automatically extracts all fields with proper types and validation\n```\n\n### Build Agents That Use Tools (ReAct Pattern)\n\n```typescript\nconst assistant = ax(\n  \"question:string -> answer:string\",\n  {\n    functions: [\n      { name: \"getCurrentWeather\", func: weatherAPI },\n      { name: \"searchNews\", func: newsAPI },\n    ],\n  },\n);\n\nconst result = await assistant.forward(ai, {\n  question: \"What's the weather in Tokyo and any news about it?\",\n});\n// AI automatically calls both functions and combines results\n```\n\n### Multi-Modal Analysis with Images\n\n```typescript\nconst analyzer = ax(`\n  image:image, question:string ->\n  description:string,\n  mainColors:string[],\n  category:class \"electronics, clothing, food, other\",\n  estimatedPrice:string\n`);\n// Process images and text together seamlessly\n```\n\n## Quick Start\n\n### Install\n\n```bash\nnpm install @ax-llm/ax\n```\n\n### Your First AI Feature (2 minutes)\n\n```typescript\nimport { ai, ax } from \"@ax-llm/ax\";\n\nconst llm = ai({ name: \"openai\", apiKey: process.env.OPENAI_APIKEY! });\n\nconst translator = ax(`\n  text:string, \n  language:string -> \n  translation:string\n`);\n\nconst result = await translator.forward(llm, {\n  text: \"Hello world\",\n  language: \"Spanish\",\n});\nconsole.log(result.translation); // \"Hola mundo\"\n```\n\n## Powerful Features, Zero Complexity\n\n- ✅ **15+ LLM Providers** - OpenAI, Anthropic, Google, Mistral, Ollama, and\n  more\n- ✅ **Type-Safe Everything** - Full TypeScript support with auto-completion\n- ✅ **Streaming First** - Real-time responses with validation\n- ✅ **Multi-Modal** - Images, audio, text in the same signature\n- ✅ **Smart Optimization** - Automatic prompt tuning with MiPRO\n- ✅ **Production Observability** - OpenTelemetry tracing built-in\n- ✅ **Advanced Workflows** - Compose complex pipelines with AxFlow\n- ✅ **Enterprise RAG** - Multi-hop retrieval with quality loops\n- ✅ **Agent Framework** - Agents that can use tools and call other agents\n- ✅ **Zero Dependencies** - Lightweight, fast, reliable\n\n## Learn More\n\n### 🚀 Quick Wins\n\n- [**Getting Started Guide**](https://github.com/ax-llm/ax/blob/main/docs/QUICKSTART.md) -\n  Set up in 5 minutes\n- [**Examples Guide**](https://github.com/ax-llm/ax/blob/main/docs/EXAMPLES.md) -\n  Comprehensive examples with explanations\n- [**DSPy Concepts**](https://github.com/ax-llm/ax/blob/main/docs/DSPY.md) -\n  Understand the revolutionary approach\n\n### 📚 Deep Dives\n\n- [**AxFlow Workflows**](https://github.com/ax-llm/ax/blob/main/docs/AXFLOW.md) -\n  Build complex AI systems\n- [**Optimization Guide**](https://github.com/ax-llm/ax/blob/main/docs/OPTIMIZE.md) -\n  Make your programs smarter\n- [**Advanced RAG**](https://github.com/ax-llm/ax/blob/main/docs/AXRAG.md) -\n  Production search & retrieval\n- [**API Reference**](https://github.com/ax-llm/ax/blob/main/docs/API.md) -\n  Complete documentation\n\n## Examples\n\nRun any example:\n\n```bash\nOPENAI_APIKEY=your-key npm run tsx ./src/examples/[example-name].ts\n```\n\n### Core Examples\n\n- [extract.ts](src/examples/extract.ts) - Extract structured data from text\n- [react.ts](src/examples/react.ts) - ReAct pattern with function calling\n- [agent.ts](src/examples/agent.ts) - Multi-agent collaboration\n- [streaming1.ts](src/examples/streaming1.ts) - Real-time streaming responses\n- [multi-modal.ts](src/examples/multi-modal.ts) - Image + text processing\n\n### Production Patterns\n\n- [customer-support.ts](src/examples/customer-support.ts) - Complete support\n  system\n- [food-search.ts](src/examples/food-search.ts) - Restaurant recommendations\n  with tools\n- [simple-optimizer-test.ts](src/examples/simple-optimizer-test.ts) - Automatic\n  optimization\n- [mipro-python-optimizer.ts](src/examples/mipro-python-optimizer.ts) - Advanced\n  MIPRO optimization\n- [ax-flow-enhanced-demo.ts](src/examples/ax-flow-enhanced-demo.ts) - Complex\n  workflows\n\n[📚 **View Full Examples Guide** →](docs/EXAMPLES.md)\\\n[View All 70+ Examples →](src/examples/)\n\n## Join the Community\n\n- 🐦 [Follow on Twitter](https://twitter.com/dosco) - Latest updates\n- 💬 [Discord Community](https://discord.gg/DSHg3dU7dW) - Get help, share ideas\n- ⭐ [Star on GitHub](https://github.com/ax-llm/ax) - Support the project\n- 📖 [Ask DeepWiki](https://deepwiki.com/ax-llm/ax) - AI-powered docs\n\n## Production Ready\n\n- ✅ **Battle-tested** - Used by startups in production\n- ✅ **No breaking changes** - Stable minor versions\n- ✅ **Comprehensive tests** - Large test coverage\n- ✅ **OpenTelemetry** - Built-in observability\n- ✅ **TypeScript first** - Type-safe by design\n\n## License\n\nApache 2 - Use it anywhere, build anything.\n\n---\n\n**Ready to build the future?** Stop fighting with prompts. Start shipping with\nsignatures.\n\n```bash\nnpm install @ax-llm/ax\n```\n\n_Built with ❤️ by developers, for developers._\n","readmeFilename":"README.md"}