{"_id":"@clearfeed-ai/quix-assetpanda-agent","_rev":"6-79b06f9303fc7f0bc0c579fa99e03076","name":"@clearfeed-ai/quix-assetpanda-agent","dist-tags":{"latest":"2.1.0"},"versions":{"1.0.0":{"name":"@clearfeed-ai/quix-assetpanda-agent","version":"1.0.0","license":"Apache-2.0","_id":"@clearfeed-ai/quix-assetpanda-agent@1.0.0","maintainers":[{"name":"batflarrow","email":"dwivedia2001@gmail.com"},{"name":"lalitindoria","email":"l.k.indoria@gmail.com"},{"name":"sharath_clrfd","email":"sharath@clearfeed.ai"}],"dist":{"shasum":"b4241854823740c670eef8fd08b0cfebdb59fde7","tarball":"https://registry.npmjs.org/@clearfeed-ai/quix-assetpanda-agent/-/quix-assetpanda-agent-1.0.0.tgz","fileCount":17,"integrity":"sha512-i/MgHHUBOE/L9ZUEcvF02/msRFDUIoQF6f/MyQ12rjZ9Sp5VFznCgiTuLUcS1ntpxCV61tTakO8DOlViHedBag==","signatures":[{"sig":"MEYCIQCZvHQ4KwJDB1U9qrvAp0VkpQIgCmq8Gt1yACn8Hb+UmgIhAPRMIvmJzGhqql70rw2WH2wWQ2+U0CXhM0DBaAmOJ88n","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67226},"jest":{"preset":"ts-jest","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testTimeout":30000,"testEnvironment":"node","coverageDirectory":"coverage","setupFilesAfterEnv":["<rootDir>/src/test-setup.ts"],"collectCoverageFrom":["src/**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"b112332613b4841c177f80e1b14dccf1b16b3d36","scripts":{"test":"jest","build":"yarn clean && tsc","clean":"rm -rf ./dist && find . -type f \\( -name \"*.js\" -o -name \"*.js.map\" -o -name \"*.d.ts\" \\) ! -path \"*/node_modules/*\" -delete","prepublishOnly":"yarn build","test:integration":"jest --testNamePattern='Integration'"},"_npmUser":{"name":"lalitindoria","email":"l.k.indoria@gmail.com"},"_npmVersion":"10.7.0","description":"This package provides integration with AssetPanda, an asset management platform, for the Quix AI agent system.","directories":{},"_nodeVersion":"20.14.0","dependencies":{"axios":"^1.8.2","@clearfeed-ai/quix-common-agent":"1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","dotenv":"^16.4.5","ts-jest":"^29.2.5","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/node":"^22.10.7"},"peerDependencies":{"@langchain/core":"0.3.62"},"_npmOperationalInternal":{"tmp":"tmp/quix-assetpanda-agent_1.0.0_1752931864322_0.11567336615467383","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@clearfeed-ai/quix-assetpanda-agent","version":"1.0.1","license":"Apache-2.0","_id":"@clearfeed-ai/quix-assetpanda-agent@1.0.1","maintainers":[{"name":"batflarrow","email":"dwivedia2001@gmail.com"},{"name":"lalitindoria","email":"l.k.indoria@gmail.com"},{"name":"sharath_clrfd","email":"sharath@clearfeed.ai"}],"dist":{"shasum":"b7ed726fc21203807e4890260b5d78a6808cdd4c","tarball":"https://registry.npmjs.org/@clearfeed-ai/quix-assetpanda-agent/-/quix-assetpanda-agent-1.0.1.tgz","fileCount":17,"integrity":"sha512-tE6zseCHaPcQfyCFoq9obaa86HIKrMyO50mhxNtWQ/cGP4LuZ8+ESEN8sDoB017lbrjQAZ53EygVnRJNKUwswg==","signatures":[{"sig":"MEYCIQDaq4fjf4Ez57KA+E1GKSC1QfN+BgVraS/G05/l8aepjgIhANb5l0u7VNxISbGQxQEx0c/Fm0vwR0qmn1T4uBcL9BNz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65937},"jest":{"preset":"ts-jest","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testTimeout":30000,"testEnvironment":"node","coverageDirectory":"coverage","setupFilesAfterEnv":["<rootDir>/src/test-setup.ts"],"collectCoverageFrom":["src/**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"85a79b589e856eb3148d8fad162f98fd2c969dda","scripts":{"test":"jest","build":"yarn clean && tsc","clean":"rm -rf ./dist && find . -type f \\( -name \"*.js\" -o -name \"*.js.map\" -o -name \"*.d.ts\" \\) ! -path \"*/node_modules/*\" -delete","prepublishOnly":"yarn build","test:integration":"jest --testNamePattern='Integration'"},"_npmUser":{"name":"batflarrow","email":"dwivedia2001@gmail.com"},"_npmVersion":"10.8.0","description":"This package provides integration with AssetPanda, an asset management platform, for the Quix AI agent system.","directories":{},"_nodeVersion":"20.12.0","dependencies":{"axios":"^1.12.2","@clearfeed-ai/quix-common-agent":"1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","dotenv":"^16.4.5","ts-jest":"^29.2.5","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/node":"^22.10.7"},"peerDependencies":{"@langchain/core":"0.3.62"},"_npmOperationalInternal":{"tmp":"tmp/quix-assetpanda-agent_1.0.1_1757918055887_0.48301604101179363","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@clearfeed-ai/quix-assetpanda-agent","version":"2.0.0","license":"Apache-2.0","_id":"@clearfeed-ai/quix-assetpanda-agent@2.0.0","maintainers":[{"name":"batflarrow","email":"dwivedia2001@gmail.com"},{"name":"lalitindoria","email":"l.k.indoria@gmail.com"},{"name":"sharath_clrfd","email":"sharath@clearfeed.ai"}],"dist":{"shasum":"94d256954edfa7ee29b99da8c73d7abd5d35a759","tarball":"https://registry.npmjs.org/@clearfeed-ai/quix-assetpanda-agent/-/quix-assetpanda-agent-2.0.0.tgz","fileCount":17,"integrity":"sha512-0ttyfTnDUq6hiBMIGkPYHQWZhYniIHE3B+TyJfXzanVDCHORlA6EAZmqObVTQZudD64tpYcAqAj0qAZbdGGQSA==","signatures":[{"sig":"MEUCIQDSQXtykPOVACYmfaz5OduV0KB5YUzvyxjE6yho1pN3DgIgLZlpofqjDH7b5rH5vUdk3T76drTf35ytxxGOFOIBcqU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66152},"jest":{"preset":"ts-jest","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testTimeout":30000,"testEnvironment":"node","coverageDirectory":"coverage","setupFilesAfterEnv":["<rootDir>/src/test-setup.ts"],"collectCoverageFrom":["src/**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"79c4fe301ab862e2fd64c10e024eb8813b3391ec","scripts":{"test":"jest","build":"yarn clean && tsc","clean":"rm -rf ./dist && find . -type f \\( -name \"*.js\" -o -name \"*.js.map\" -o -name \"*.d.ts\" \\) ! -path \"*/node_modules/*\" -delete","prepublishOnly":"yarn build","test:integration":"jest --testNamePattern='Integration'"},"_npmUser":{"name":"batflarrow","email":"dwivedia2001@gmail.com"},"_npmVersion":"10.8.0","description":"This package provides integration with AssetPanda, an asset management platform, for the Quix AI agent system.","directories":{},"_nodeVersion":"20.12.0","dependencies":{"axios":"^1.12.2","@clearfeed-ai/quix-common-agent":"2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","dotenv":"^16.4.5","ts-jest":"^29.2.5","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/node":"^22.10.7"},"peerDependencies":{"@langchain/core":"1.1.8"},"_npmOperationalInternal":{"tmp":"tmp/quix-assetpanda-agent_2.0.0_1767005984797_0.5056320943539108","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@clearfeed-ai/quix-assetpanda-agent","version":"2.1.0","license":"Apache-2.0","_id":"@clearfeed-ai/quix-assetpanda-agent@2.1.0","maintainers":[{"name":"batflarrow","email":"dwivedia2001@gmail.com"},{"name":"lalitindoria","email":"l.k.indoria@gmail.com"},{"name":"sharath_clrfd","email":"sharath@clearfeed.ai"}],"dist":{"shasum":"f7be909d6777328caf60a721e2b503b7dff484f9","tarball":"https://registry.npmjs.org/@clearfeed-ai/quix-assetpanda-agent/-/quix-assetpanda-agent-2.1.0.tgz","fileCount":17,"integrity":"sha512-urq+akX9zLfBSODkgXBtE/VeHemOtwEWRzMNfbutwMnU4euzHEAY/Uu7nfgEX+0zvcXgfQ5Zrog4+bmv2ECTVg==","signatures":[{"sig":"MEQCIGBxlSUOC+v4SEjYYW5wKORpL93yU7Jf7PYMIuKGeGlRAiAucUnP3XDHP/SOTF9sjOSqy22nHbC+7ibOT9ZZmDTS2g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54415},"jest":{"preset":"ts-jest","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testTimeout":30000,"testEnvironment":"node","coverageDirectory":"coverage","setupFilesAfterEnv":["<rootDir>/src/test-setup.ts"],"collectCoverageFrom":["src/**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"4c68db3ad795b960d1e720872cd1382e9fd4554e","scripts":{"test":"jest","build":"yarn clean && tsc","clean":"rm -rf ./dist && find . -type f \\( -name \"*.js\" -o -name \"*.js.map\" -o -name \"*.d.ts\" \\) ! -path \"*/node_modules/*\" -delete","prepublishOnly":"yarn build","test:integration":"jest --testNamePattern='Integration'"},"_npmUser":{"name":"batflarrow","email":"dwivedia2001@gmail.com"},"_npmVersion":"10.8.0","description":"This package provides integration with AssetPanda, an asset management platform, for the Quix AI agent system.","directories":{},"_nodeVersion":"20.12.0","dependencies":{"axios":"^1.12.2","@clearfeed-ai/quix-common-agent":"2.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","dotenv":"^16.4.5","ts-jest":"^29.2.5","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/node":"^22.10.7"},"peerDependencies":{"@langchain/core":"1.1.8"},"_npmOperationalInternal":{"tmp":"tmp/quix-assetpanda-agent_2.1.0_1768391018297_0.0444153878937954","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2025-07-19T13:31:04.217Z","modified":"2026-05-16T10:14:35.717Z","1.0.0":"2025-07-19T13:31:04.527Z","1.0.1":"2025-09-15T06:34:16.068Z","2.0.0":"2025-12-29T10:59:44.962Z","2.1.0":"2026-01-14T11:43:38.442Z"},"license":"Apache-2.0","description":"This package provides integration with AssetPanda, an asset management platform, for the Quix AI agent system.","maintainers":[{"email":"l.k.indoria@gmail.com","name":"lalitindoria"}],"readme":"# AssetPanda Integration for Quix\n\nThis package provides integration with AssetPanda, an asset management platform, for the Quix AI agent system.\n\n## Features\n\n### v1 Scope Implementation\n\n- **Create Employee Record**: Add new employees to AssetPanda\n- **Reserve Asset**: Mark assets as reserved for future assignment\n- **Assign Asset to User**: Allocate hardware assets to specific employees\n- **Mark Asset as Returned**: Unassign assets and mark them as available\n- **Assign Software License**: Allocate software licenses to employees\n- **Reclaim/Deallocate Software License**: Free up license seats from employees\n\n### Additional Features\n\n- **Check Asset Availability**: Search for available assets by type\n- **List Groups**: View all asset groups (Hardware, Licenses, etc.)\n- **List Users**: View all employees in the system\n- **Search Objects**: Advanced search for assets and licenses\n\n## Installation\n\n```bash\nyarn add @clearfeed-ai/quix-assetpanda-agent\n```\n\n## Configuration\n\n### Environment Variables\n\nAdd the following to your environment configuration:\n\n```env\nASSETPANDA_API_TOKEN=your_api_token_here\n```\n\n### Configuration Object\n\n```typescript\nimport { AssetPandaConfig } from '@clearfeed-ai/quix-assetpanda-agent';\n\nconst config: AssetPandaConfig = {\n  apiToken: 'your_api_token_here',\n  enabled: true\n};\n```\n\n## Usage\n\n### Basic Setup\n\n```typescript\nimport {\n  AssetPandaService,\n  createAssetPandaToolsExport\n} from '@clearfeed-ai/quix-assetpanda-agent';\n\n// Create service instance\nconst service = new AssetPandaService(config);\n\n// Create tools for the agent\nconst tools = createAssetPandaToolsExport(config);\n```\n\n### Tool Examples\n\n#### Create Employee\n\n```typescript\nconst result = await service.createEmployee({\n  first_name: 'John',\n  last_name: 'Doe',\n  email: 'john.doe@company.com',\n  password: 'securepassword',\n  password_confirmation: 'securepassword',\n  create_for_account: '123456'\n});\n```\n\n#### Reserve Asset\n\n```typescript\nconst result = await service.reserveAsset({\n  asset_name: 'MacBook Pro 16\"',\n  group_name: 'Hardware'\n});\n```\n\n#### Assign Asset to User\n\n```typescript\nconst result = await service.assignAssetToUser({\n  asset_name: 'MacBook Pro 16\"',\n  employee_email: 'john.doe@company.com',\n  group_name: 'Hardware'\n});\n```\n\n#### Assign Software License\n\n```typescript\nconst result = await service.assignSoftwareLicense({\n  license_name: 'Figma Professional',\n  employee_email: 'john.doe@company.com',\n  group_name: 'Licenses'\n});\n```\n\n## API Endpoints Used\n\nThis integration uses the following AssetPanda API endpoints:\n\n- `GET /users` - List users\n- `POST /users` - Create user\n- `GET /groups` - List groups\n- `POST /groups/{group_id}/objects/search` - Search objects\n- `PATCH /groups/{group_id}/objects/{object_id}` - Update object\n\nAll endpoints are accessed via the base URL: `https://api.assetpanda.com/v3`\n\n## Asset Groups\n\nThe integration works with different asset groups in AssetPanda:\n\n- **Hardware/Assets**: Physical assets like laptops, monitors, etc.\n- **Licenses**: Software licenses with seat management\n- **Employees**: User records for employees\n\n## Error Handling\n\nAll operations return a standardized response format:\n\n```typescript\ninterface BaseResponse<T> {\n  success: boolean;\n  data?: T;\n  error?: string;\n}\n```\n\n## Testing\n\nRun the test suite:\n\n```bash\nyarn test\n```\n\nRun integration tests:\n\n```bash\nyarn test:integration\n```\n\n## Building\n\nBuild the package:\n\n```bash\nyarn build\n```\n\n## Development\n\n### Project Structure\n\n```\nsrc/\n├── index.ts          # Main service implementation\n├── tools.ts          # Tool definitions for the agent\n├── types.ts          # TypeScript interfaces\n├── schema.ts         # Zod schemas for validation\n├── test-setup.ts     # Test configuration\n└── integration.spec.ts # Integration tests\n```\n\n### Adding New Features\n\n1. Add new types to `types.ts`\n2. Add Zod schemas to `schema.ts`\n3. Implement API methods in `index.ts`\n4. Create tools in `tools.ts`\n5. Add tests in `integration.spec.ts`\n\n## License\n\nApache-2.0\n","readmeFilename":"README.md"}