{"_id":"@ainative/sdk","_rev":"5-9292a753a31afdf626070377f6b84611","name":"@ainative/sdk","dist-tags":{"latest":"3.1.0"},"versions":{"1.0.0":{"name":"@ainative/sdk","version":"1.0.0","keywords":["ainative","api","sdk","typescript","javascript","zerodb","vector-database","ai","agent-swarm"],"author":{"name":"AINative Studio"},"license":"MIT","_id":"@ainative/sdk@1.0.0","maintainers":[{"name":"ainative-studio","email":"toby@rely.ventures"}],"homepage":"https://docs.ainative.studio","bugs":{"url":"https://github.com/ainative/ainative-sdk-js/issues"},"dist":{"shasum":"7ec7ab1eecbe49f98d8e94d5e63b3cdd4a62ffd4","tarball":"https://registry.npmjs.org/@ainative/sdk/-/sdk-1.0.0.tgz","fileCount":39,"integrity":"sha512-h5Sd/U5DmHHtugo0ADeMm8/VzwoL6w35Tp0B+95pXXCUDpb/LRu7ASRoGTNbIKuG3/m1+CAFbKPfYmkAEk6prw==","signatures":[{"sig":"MEQCIEbexS+nCTJQ09mtsG7N8SrVw2eUybqCTDDdIljyQZu9AiBLOF31H+RtFknI7ZpMeFJXafjhEI18dPtoDEoVqQp8pg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":202085},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=14.0.0"},"gitHead":"c73aec0675137ef788ee5befc744bbfd0ff4f650","scripts":{"docs":"typedoc --out docs src/index.ts","lint":"eslint . --ext .ts,.tsx","test":"jest","build":"rollup -c","lint:fix":"eslint . --ext .ts,.tsx --fix","test:watch":"jest --watch","type-check":"tsc --noEmit","build:watch":"rollup -c -w","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"ainative-studio","email":"toby@rely.ventures"},"repository":{"url":"git+https://github.com/ainative/ainative-sdk-js.git","type":"git"},"_npmVersion":"10.9.4","description":"Official TypeScript/JavaScript SDK for AINative Studio APIs","directories":{},"_nodeVersion":"22.21.0","browserslist":["defaults","not IE 11"],"dependencies":{"axios":"^1.6.2","eventemitter3":"^5.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^3.29.4","ts-jest":"^29.1.1","ts-node":"^10.9.1","typedoc":"^0.25.4","typescript":"^5.3.2","@types/jest":"^29.5.10","@types/node":"^20.10.0","rollup-plugin-dts":"^5.3.1","@rollup/plugin-json":"^6.0.1","@rollup/plugin-terser":"^0.4.4","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.13.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.13.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.0_1764537318090_0.1754577395784529","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@ainative/sdk","version":"1.0.1","keywords":["ainative","api","sdk","typescript","javascript","zerodb","vector-database","ai","agent-swarm"],"author":{"name":"AINative Studio"},"license":"MIT","_id":"@ainative/sdk@1.0.1","maintainers":[{"name":"ainative-studio","email":"toby@rely.ventures"}],"homepage":"https://ainative.studio","bugs":{"url":"https://github.com/AINative-Studio/TypeScript-SDK/issues"},"dist":{"shasum":"24b9dcea1d3590039e8e0dc1c1fa16b309d3ca0a","tarball":"https://registry.npmjs.org/@ainative/sdk/-/sdk-1.0.1.tgz","fileCount":39,"integrity":"sha512-Ho5izP1XTH6M426NgqrwJO5sgcCKOqwrpBA/soFDB9lH+afp4GbVKmnqzDO8SPjuV6v2Sc5owGJuqig13vhW1Q==","signatures":[{"sig":"MEQCIHGRmjNqMnfd5v50ZFUbHCzGxZ0OQR4q6LuMmYFiZoeRAiAwtYHQB+mgAEJnteBAC7No/iVapDRgSbcB7mN3s30IBA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":202092},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=14.0.0"},"gitHead":"c73aec0675137ef788ee5befc744bbfd0ff4f650","scripts":{"docs":"typedoc --out docs src/index.ts","lint":"eslint . --ext .ts,.tsx","test":"jest","build":"rollup -c","lint:fix":"eslint . --ext .ts,.tsx --fix","test:watch":"jest --watch","type-check":"tsc --noEmit","build:watch":"rollup -c -w","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"ainative-studio","email":"toby@rely.ventures"},"repository":{"url":"git+https://github.com/AINative-Studio/TypeScript-SDK.git","type":"git"},"_npmVersion":"10.9.4","description":"Official TypeScript/JavaScript SDK for AINative Studio APIs","directories":{},"_nodeVersion":"22.21.0","browserslist":["defaults","not IE 11"],"dependencies":{"axios":"^1.6.2","eventemitter3":"^5.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^3.29.4","ts-jest":"^29.1.1","ts-node":"^10.9.1","typedoc":"^0.25.4","typescript":"^5.3.2","@types/jest":"^29.5.10","@types/node":"^20.10.0","rollup-plugin-dts":"^5.3.1","@rollup/plugin-json":"^6.0.1","@rollup/plugin-terser":"^0.4.4","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.13.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.13.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.1_1764537931583_0.37711640067916163","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@ainative/sdk","version":"1.0.2","keywords":["ainative","api","sdk","typescript","javascript","zerodb","vector-database","ai","agent-swarm"],"author":{"name":"AINative Studio"},"license":"MIT","_id":"@ainative/sdk@1.0.2","maintainers":[{"name":"ainative-studio","email":"toby@rely.ventures"}],"homepage":"https://ainative.studio","bugs":{"url":"https://github.com/AINative-Studio/TypeScript-SDK/issues"},"dist":{"shasum":"eba28b30fdcfe5e6c1a85df492698088a93f3916","tarball":"https://registry.npmjs.org/@ainative/sdk/-/sdk-1.0.2.tgz","fileCount":39,"integrity":"sha512-6lp+0ScWdfPyox+dsMIcjVpiegCVU57QO5pJkHJgNBBVsoJBeQlK/S6p2N1S/QcsGa//srz+6iF9qWnU30dLTQ==","signatures":[{"sig":"MEYCIQDC42n0j+TYP3ccPysFOZY8ndz4whgHU/4cDfjfWzknMwIhAKWoA0LKF0U+AqvPnhiTk/3r/0a/NQ4QVUFQalxJyVZQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":202072},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=14.0.0"},"gitHead":"c73aec0675137ef788ee5befc744bbfd0ff4f650","scripts":{"docs":"typedoc --out docs src/index.ts","lint":"eslint . --ext .ts,.tsx","test":"jest","build":"rollup -c","lint:fix":"eslint . --ext .ts,.tsx --fix","test:watch":"jest --watch","type-check":"tsc --noEmit","build:watch":"rollup -c -w","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"ainative-studio","email":"toby@rely.ventures"},"repository":{"url":"git+https://github.com/AINative-Studio/TypeScript-SDK.git","type":"git"},"_npmVersion":"10.9.4","description":"Official TypeScript/JavaScript SDK for AINative Studio APIs","directories":{},"_nodeVersion":"22.21.0","browserslist":["defaults","not IE 11"],"dependencies":{"axios":"^1.6.2","eventemitter3":"^5.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^3.29.4","ts-jest":"^29.1.1","ts-node":"^10.9.1","typedoc":"^0.25.4","typescript":"^5.3.2","@types/jest":"^29.5.10","@types/node":"^20.10.0","rollup-plugin-dts":"^5.3.1","@rollup/plugin-json":"^6.0.1","@rollup/plugin-terser":"^0.4.4","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.13.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.13.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.2_1764538575370_0.11247195888235595","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@ainative/sdk","version":"1.0.3","keywords":["ainative","api","sdk","typescript","javascript","zerodb","vector-database","ai","agent-swarm"],"author":{"name":"AINative Studio"},"license":"MIT","_id":"@ainative/sdk@1.0.3","maintainers":[{"name":"ainative-studio","email":"toby@rely.ventures"}],"homepage":"https://ainative.studio","bugs":{"url":"https://github.com/AINative-Studio/TypeScript-SDK/issues"},"dist":{"shasum":"dd1a1b129c6292822af36749428738f0a01a06b6","tarball":"https://registry.npmjs.org/@ainative/sdk/-/sdk-1.0.3.tgz","fileCount":39,"integrity":"sha512-yh+p7xP36CBvOewyygD1RR3JHrA/A+v9i08NyY9zUdxv4LX/2ZP6GIAS6M9BgOaaW2KR8fhTfZQYVY6HeW7SDg==","signatures":[{"sig":"MEYCIQC/rTXEVmdbc3/amYd7bZWCvnJ6+yu4OAhuV5F2lFAQJQIhAPiYRZflLbFXbYl1nk48P0kThSYGQcZbmzy6RuO0wd6p","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":202072},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","engines":{"node":">=14.0.0"},"gitHead":"de4d2b78d4658a66b58ca256fe935557a0b3638f","scripts":{"docs":"typedoc --out docs src/index.ts","lint":"eslint . --ext .ts,.tsx","test":"jest","build":"rollup -c","lint:fix":"eslint . --ext .ts,.tsx --fix","test:watch":"jest --watch","type-check":"tsc --noEmit","build:watch":"rollup -c -w","test:coverage":"jest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"ainative-studio","email":"toby@rely.ventures"},"repository":{"url":"git+https://github.com/AINative-Studio/TypeScript-SDK.git","type":"git"},"_npmVersion":"10.9.4","description":"Official TypeScript/JavaScript SDK for AINative Studio APIs","directories":{},"_nodeVersion":"22.21.0","browserslist":["defaults","not IE 11"],"dependencies":{"axios":"^1.7.9","eventemitter3":"^5.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tslib":"^2.6.2","eslint":"^8.54.0","rollup":"^3.29.4","ts-jest":"^29.1.1","ts-node":"^10.9.1","typedoc":"^0.25.4","typescript":"^5.3.2","@types/jest":"^29.5.10","@types/node":"^20.10.0","rollup-plugin-dts":"^5.3.1","@rollup/plugin-json":"^6.0.1","@rollup/plugin-terser":"^0.4.4","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-typescript":"^11.1.5","@typescript-eslint/parser":"^6.13.0","@rollup/plugin-node-resolve":"^15.2.3","@typescript-eslint/eslint-plugin":"^6.13.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.3_1766534178456_0.7205662864218201","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@ainative/sdk","version":"3.1.0","description":"Official TypeScript/JavaScript SDK for AINative Studio APIs","main":"dist/index.js","module":"dist/index.esm.js","types":"dist/index.d.ts","scripts":{"build":"rollup -c","build:watch":"rollup -c -w","test":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage","lint":"eslint . --ext .ts,.tsx","lint:fix":"eslint . --ext .ts,.tsx --fix","type-check":"tsc --noEmit","prepublishOnly":"npm run build","docs":"typedoc --out docs src/index.ts"},"keywords":["ainative","api","sdk","typescript","javascript","zerodb","vector-database","ai","agent-swarm"],"author":{"name":"AINative Studio"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/AINative-Studio/TypeScript-SDK.git"},"bugs":{"url":"https://github.com/AINative-Studio/TypeScript-SDK/issues"},"homepage":"https://ainative.studio","dependencies":{"axios":"^1.7.9","eventemitter3":"^5.0.1"},"devDependencies":{"@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-json":"^6.0.1","@rollup/plugin-node-resolve":"^15.2.3","@rollup/plugin-typescript":"^11.1.5","@types/jest":"^29.5.10","@types/node":"^20.10.0","@typescript-eslint/eslint-plugin":"^6.13.0","@typescript-eslint/parser":"^6.13.0","eslint":"^8.54.0","jest":"^29.7.0","rollup":"^3.29.4","rollup-plugin-dts":"^5.3.1","@rollup/plugin-terser":"^0.4.4","ts-jest":"^29.1.1","ts-node":"^10.9.1","tslib":"^2.6.2","typedoc":"^0.25.4","typescript":"^5.3.2"},"engines":{"node":">=14.0.0"},"browserslist":["defaults","not IE 11"],"_id":"@ainative/sdk@3.1.0","_nodeVersion":"22.21.0","_npmVersion":"10.9.4","dist":{"integrity":"sha512-L5LVD4/kGT8jImSmSlf5JO/MheA7IvEOicFVj+IZ6sLbixSmeryHIRfpohBZHX1zj7pwrjuzlbNow2mL9yBR4w==","shasum":"b85aa8bdea054b878f1c46546b4ac7d8c24d5827","tarball":"https://registry.npmjs.org/@ainative/sdk/-/sdk-3.1.0.tgz","fileCount":39,"unpackedSize":202072,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDJIUeNbrBaX6F4uIq1+lmhJqezPVzcHAVT6ycoGY5hTgIhALC1shr8NTecxUc2YHF6sDIZtyTlVgcApUExtyY4ko6z"}]},"_npmUser":{"name":"ainative-studio","email":"toby@rely.ventures"},"directories":{},"maintainers":[{"name":"ainative-studio","email":"toby@rely.ventures"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_3.1.0_1768288536147_0.6625110004608197"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-30T21:15:18.002Z","modified":"2026-01-13T07:15:36.507Z","1.0.0":"2025-11-30T21:15:18.286Z","1.0.1":"2025-11-30T21:25:31.770Z","1.0.2":"2025-11-30T21:36:15.576Z","1.0.3":"2025-12-23T23:56:18.611Z","3.1.0":"2026-01-13T07:15:36.289Z"},"bugs":{"url":"https://github.com/AINative-Studio/TypeScript-SDK/issues"},"author":{"name":"AINative Studio"},"license":"MIT","homepage":"https://ainative.studio","keywords":["ainative","api","sdk","typescript","javascript","zerodb","vector-database","ai","agent-swarm"],"repository":{"type":"git","url":"git+https://github.com/AINative-Studio/TypeScript-SDK.git"},"description":"Official TypeScript/JavaScript SDK for AINative Studio APIs","maintainers":[{"name":"ainative-studio","email":"toby@rely.ventures"}],"readme":"# AINative TypeScript/JavaScript SDK\n\n[![npm version](https://badge.fury.io/js/%40ainative%2Fsdk.svg)](https://www.npmjs.com/package/@ainative/sdk)\n[![TypeScript](https://img.shields.io/badge/%3C%2F%3E-TypeScript-%230074c1.svg)](http://www.typescriptlang.org/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nOfficial TypeScript/JavaScript SDK for AINative Studio APIs, providing seamless integration with ZeroDB vector database and Agent Swarm orchestration platform.\n\n## 🚀 Features\n\n- **TypeScript Support** - Full type safety with comprehensive TypeScript definitions\n- **Browser & Node.js** - Works in both browser and server environments\n- **Framework Integrations** - React hooks and Vue composables included\n- **Auto-retry & Error Handling** - Built-in retry logic and comprehensive error types\n- **Tree-shakeable** - Only import what you need for optimal bundle size\n- **Real-time Streaming** - Server-Sent Events support for live updates\n- **Modern Architecture** - Built with modern JavaScript features and best practices\n\n## 📦 Installation\n\n```bash\n# npm\nnpm install @ainative/sdk\n\n# yarn\nyarn add @ainative/sdk\n\n# pnpm\npnpm add @ainative/sdk\n```\n\n## 🔧 Quick Start\n\n```typescript\nimport { AINativeClient } from '@ainative/sdk';\n\n// Initialize the client\nconst client = new AINativeClient({\n  apiKey: 'your-api-key',\n  baseUrl: 'https://api.ainative.studio' // optional\n});\n\n// Create a project\nconst project = await client.zerodb.projects.create({\n  name: 'My AI Project',\n  description: 'Vector storage for my AI application'\n});\n\n// Store vectors\nawait client.zerodb.vectors.upsert(project.data.id, {\n  vectorEmbedding: [0.1, 0.2, 0.3, 0.4],\n  metadata: { title: 'Document 1', category: 'tutorial' },\n  namespace: 'documents'\n});\n\n// Search vectors\nconst results = await client.zerodb.vectors.search(project.data.id, {\n  queryVector: [0.1, 0.2, 0.3, 0.4],\n  topK: 5,\n  namespace: 'documents'\n});\n\nconsole.log('Found vectors:', results.data.vectors);\n```\n\n## 🎯 React Integration\n\n```tsx\nimport React from 'react';\nimport { AINativeProvider, useZeroDB } from '@ainative/sdk/react';\n\nfunction App() {\n  return (\n    <AINativeProvider config={{ apiKey: 'your-api-key' }}>\n      <ProjectList />\n    </AINativeProvider>\n  );\n}\n\nfunction ProjectList() {\n  const { projects, loading, error } = useZeroDB();\n  const [projectList, setProjectList] = React.useState([]);\n\n  React.useEffect(() => {\n    async function loadProjects() {\n      const response = await projects.list();\n      setProjectList(response.data);\n    }\n    loadProjects();\n  }, []);\n\n  if (loading) return <div>Loading...</div>;\n  if (error) return <div>Error: {error.message}</div>;\n\n  return (\n    <ul>\n      {projectList.map(project => (\n        <li key={project.id}>{project.name}</li>\n      ))}\n    </ul>\n  );\n}\n```\n\n## 🌟 Vue.js Integration\n\n```vue\n<template>\n  <div>\n    <div v-if=\"loading\">Loading...</div>\n    <div v-else-if=\"error\">Error: {{ error.message }}</div>\n    <ul v-else>\n      <li v-for=\"project in projectList\" :key=\"project.id\">\n        {{ project.name }}\n      </li>\n    </ul>\n    <button @click=\"createProject\">Create Project</button>\n  </div>\n</template>\n\n<script setup>\nimport { ref, onMounted } from 'vue';\nimport { useZeroDB } from '@ainative/sdk/vue';\n\nconst { projects, loading, error } = useZeroDB({\n  apiKey: 'your-api-key'\n});\n\nconst projectList = ref([]);\n\nonMounted(async () => {\n  const response = await projects.list();\n  projectList.value = response.data;\n});\n\nasync function createProject() {\n  await projects.create({\n    name: 'New Project',\n    description: 'Created from Vue app'\n  });\n  // Reload projects\n  const response = await projects.list();\n  projectList.value = response.data;\n}\n</script>\n```\n\n## 📚 API Reference\n\n### Client Configuration\n\n```typescript\ninterface ClientConfig {\n  apiKey?: string;           // Your AINative API key\n  baseUrl?: string;          // API base URL (default: https://api.ainative.studio)\n  organizationId?: string;   // Organization ID for multi-tenant scenarios\n  timeout?: number;          // Request timeout in ms (default: 30000)\n  maxRetries?: number;       // Max retry attempts (default: 3)\n  retryDelay?: number;       // Retry delay in ms (default: 1000)\n  debug?: boolean;           // Enable debug logging (default: false)\n  headers?: object;          // Custom headers for all requests\n}\n```\n\n### ZeroDB Operations\n\n#### Projects\n\n```typescript\n// List projects\nconst projects = await client.zerodb.projects.list({ limit: 10 });\n\n// Create project\nconst project = await client.zerodb.projects.create({\n  name: 'Project Name',\n  description: 'Project description',\n  type: 'development' // or 'production'\n});\n\n// Get project\nconst project = await client.zerodb.projects.get('project-id');\n\n// Update project\nconst updated = await client.zerodb.projects.update('project-id', {\n  name: 'New Name',\n  status: 'active'\n});\n\n// Delete project\nawait client.zerodb.projects.delete('project-id');\n```\n\n#### Vector Operations\n\n```typescript\n// Upsert vector\nconst vector = await client.zerodb.vectors.upsert('project-id', {\n  vectorEmbedding: [0.1, 0.2, 0.3, 0.4],\n  metadata: { title: 'Document', category: 'tutorial' },\n  namespace: 'documents',\n  document: 'Text content of the document'\n});\n\n// Search vectors\nconst results = await client.zerodb.vectors.search('project-id', {\n  queryVector: [0.1, 0.2, 0.3, 0.4],\n  namespace: 'documents',\n  topK: 5,\n  similarityThreshold: 0.7\n});\n\n// Batch upsert\nawait client.zerodb.vectors.batchUpsert('project-id', {\n  vectors: [\n    { vectorEmbedding: [0.1, 0.2], metadata: { id: 1 } },\n    { vectorEmbedding: [0.3, 0.4], metadata: { id: 2 } }\n  ]\n});\n\n// List vectors\nconst vectors = await client.zerodb.vectors.list('project-id', 'namespace', 10);\n```\n\n#### Memory Operations\n\n```typescript\n// Store memory\nconst memory = await client.zerodb.memory.store('project-id', {\n  content: 'User asked about vector search',\n  agentId: '550e8400-e29b-41d4-a716-446655440000',\n  sessionId: '123e4567-e89b-12d3-a456-426614174000',\n  role: 'user',\n  memoryMetadata: { topic: 'vector_search', priority: 'high' }\n});\n\n// Search memories\nconst memories = await client.zerodb.memory.search('project-id', {\n  query: 'vector search',\n  sessionId: '123e4567-e89b-12d3-a456-426614174000',\n  limit: 10\n});\n\n// List memories\nconst allMemories = await client.zerodb.memory.list('project-id', { limit: 50 });\n```\n\n#### Event Streaming\n\n```typescript\n// Publish event\nconst event = await client.zerodb.events.publish('project-id', {\n  topic: 'user_actions',\n  eventPayload: {\n    action: 'login',\n    userId: 'user-123',\n    timestamp: new Date().toISOString()\n  }\n});\n\n// List events\nconst events = await client.zerodb.events.list('project-id', 'user_actions', 100);\n\n// Stream events (real-time)\nconst eventSource = client.zerodb.events.stream('project-id', {\n  topic: 'user_actions',\n  onMessage: (event) => {\n    console.log('New event:', event);\n  },\n  onError: (error) => {\n    console.error('Stream error:', error);\n  },\n  onConnect: () => {\n    console.log('Connected to event stream');\n  }\n});\n\n// Stop streaming\neventSource.close();\n```\n\n### Agent Swarm Operations\n\n#### Swarm Management\n\n```typescript\n// Start agent swarm\nconst swarm = await client.agentSwarm.swarm.start({\n  projectId: 'project-id',\n  name: 'Data Analysis Swarm',\n  agents: [\n    { type: 'data_analyst', config: { specialization: 'customer_data' } },\n    { type: 'report_generator', config: { format: 'markdown' } }\n  ],\n  orchestration: {\n    maxAgents: 5,\n    coordinationModel: 'hierarchical'\n  }\n});\n\n// Check swarm status\nconst status = await client.agentSwarm.swarm.status('swarm-id');\n\n// Stop swarm\nawait client.agentSwarm.swarm.stop('swarm-id');\n```\n\n#### Task Orchestration\n\n```typescript\n// Orchestrate task\nconst task = await client.agentSwarm.tasks.orchestrate({\n  swarmId: 'swarm-id',\n  task: 'Analyze customer feedback and generate insights report',\n  priority: 'high',\n  context: { dataSource: 'customer_surveys' }\n});\n\n// Check task status\nconst taskStatus = await client.agentSwarm.tasks.status('task-id');\n\n// List swarm tasks\nconst tasks = await client.agentSwarm.tasks.list('swarm-id');\n```\n\n### Error Handling\n\n```typescript\nimport { \n  AINativeError, \n  NetworkError, \n  AuthenticationError, \n  RateLimitError \n} from '@ainative/sdk';\n\ntry {\n  const result = await client.zerodb.projects.list();\n} catch (error) {\n  if (error instanceof AuthenticationError) {\n    console.error('Authentication failed:', error.message);\n    // Redirect to login\n  } else if (error instanceof RateLimitError) {\n    console.error('Rate limited. Retry after:', error.retryAfter);\n    // Wait and retry\n  } else if (error instanceof NetworkError) {\n    console.error('Network error:', error.message);\n    // Check connection\n  } else if (error instanceof AINativeError) {\n    console.error('API error:', error.message, 'Status:', error.status);\n  } else {\n    console.error('Unexpected error:', error);\n  }\n}\n```\n\n## 🎨 Framework Examples\n\n### Next.js App Router\n\n```typescript\n// app/api/projects/route.ts\nimport { AINativeClient } from '@ainative/sdk';\n\nconst client = new AINativeClient({\n  apiKey: process.env.AINATIVE_API_KEY!\n});\n\nexport async function GET() {\n  try {\n    const projects = await client.zerodb.projects.list();\n    return Response.json(projects.data);\n  } catch (error) {\n    return Response.json({ error: 'Failed to fetch projects' }, { status: 500 });\n  }\n}\n```\n\n### Express.js Server\n\n```typescript\nimport express from 'express';\nimport { AINativeClient } from '@ainative/sdk';\n\nconst app = express();\nconst client = new AINativeClient({\n  apiKey: process.env.AINATIVE_API_KEY!\n});\n\napp.get('/api/projects', async (req, res) => {\n  try {\n    const projects = await client.zerodb.projects.list();\n    res.json(projects.data);\n  } catch (error) {\n    res.status(500).json({ error: error.message });\n  }\n});\n\napp.listen(3000);\n```\n\n## 🛠️ Development\n\n```bash\n# Clone the repository\ngit clone https://github.com/ainative/ainative-sdk-js.git\ncd ainative-sdk-js\n\n# Install dependencies\nnpm install\n\n# Build the SDK\nnpm run build\n\n# Run tests\nnpm test\n\n# Run tests with coverage\nnpm run test:coverage\n\n# Lint code\nnpm run lint\n\n# Type check\nnpm run type-check\n```\n\n## 📝 Contributing\n\nWe welcome contributions! Please read our [Contributing Guide](CONTRIBUTING.md) to get started.\n\n1. Fork the repository\n2. Create a feature branch: `git checkout -b feature/amazing-feature`\n3. Make your changes and add tests\n4. Run tests: `npm test`\n5. Commit your changes: `git commit -m 'Add amazing feature'`\n6. Push to the branch: `git push origin feature/amazing-feature`\n7. Open a Pull Request\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🔗 Links\n\n- [AINative Studio](https://ainative.studio)\n- [Documentation](https://docs.ainative.studio)\n- [API Reference](https://docs.ainative.studio/api)\n- [GitHub Repository](https://github.com/ainative/ainative-sdk-js)\n- [npm Package](https://www.npmjs.com/package/@ainative/sdk)\n\n## 📞 Support\n\n- 📧 Email: support@ainative.studio\n- 💬 Discord: [Join our community](https://discord.gg/ainative)\n- 🐛 Issues: [GitHub Issues](https://github.com/ainative/ainative-sdk-js/issues)\n- 📖 Docs: [Documentation](https://docs.ainative.studio)\n\n---\n\nMade with ❤️ by the AINative team","readmeFilename":"README.md"}