{"_id":"@aiden6791/aiboengine","_rev":"5-8681d21ddc924be7578f8d3f05d1a547","name":"@aiden6791/aiboengine","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.0":{"name":"@aiden6791/aiboengine","version":"1.0.0","keywords":["aibo","sony","robot","dog","inu","typescript","sony-aibo","sdk"],"author":{"name":"aiden6791"},"license":"Apache-2.0","_id":"@aiden6791/aiboengine@1.0.0","maintainers":[{"name":"aiden6791","email":"aidenkr@daum.net"}],"homepage":"https://github.com/aiden6791/aiboengine#readme","bugs":{"url":"https://github.com/aiden6791/aiboengine/issues"},"dist":{"shasum":"dedf8d229586fc86520c589d91fbe2e196b8f621","tarball":"https://registry.npmjs.org/@aiden6791/aiboengine/-/aiboengine-1.0.0.tgz","fileCount":28,"integrity":"sha512-uWcH8wSOZ9AA6pJL8JAVfTM2wr/8DEV3ZeRdtR3os1zKbH7gxo/rr59BZ4Aayf6YlOqhSQZDJ30kgHNTx8MGPw==","signatures":[{"sig":"MEUCIAEtsSlPJ4/xjv3FSDzvwZJTpoXaLNaE/oqmPKeQ9om5AiEA+YM7O+pF9uETpFQnVLvNIMtGnQ9ojBTfcvZkSN8M+t4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":34613},"main":"./dist/main.js","type":"module","types":"./dist/main.d.ts","module":"./dist/main.js","exports":{".":{"types":"./dist/main.d.ts","import":"./dist/main.js"}},"scripts":{"build":"tsc","clean":"rm -rf dist","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"aiden6791","email":"aidenkr@daum.net"},"deprecated":"This package is deprecated","repository":{"url":"git+https://github.com/aiden6791/aiboengine.git","type":"git"},"_npmVersion":"11.11.0","description":"Typescript SDK for Sony aibo rest api","directories":{},"_nodeVersion":"24.14.1","dependencies":{"axios":"^1.16.1","dotenv":"^17.4.2","ts-node":"^10.9.2","typescript":"^6.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aiboengine_1.0.0_1779239384726_0.2958221109778272","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@aiden6791/aiboengine","version":"1.0.2","keywords":["aibo","sony","robot","dog","inu","typescript","sony-aibo","sdk"],"author":{"name":"aiden6791"},"license":"Apache-2.0","_id":"@aiden6791/aiboengine@1.0.2","maintainers":[{"name":"aiden6791","email":"aidenkr@daum.net"}],"homepage":"https://github.com/aiden6791/aiboengine#readme","bugs":{"url":"https://github.com/aiden6791/aiboengine/issues"},"dist":{"shasum":"d82e9e137348074a8bab29f0b1e06e75e6191616","tarball":"https://registry.npmjs.org/@aiden6791/aiboengine/-/aiboengine-1.0.2.tgz","fileCount":27,"integrity":"sha512-orhhZEKopuaKpM8sOGnkxs247Ez62gc2onh9h33nqyZaAc+tC5J/OIotYrrPV0qzljRSTTxrrAZpKJsO+GA8/g==","signatures":[{"sig":"MEQCIBFkmlcYh21xnEzVjjFH1DEKeLQcdrBHLxgZ7J1zYuT0AiAacb5qhFKrKtwknSzTAz4s8Hkc8E6Qkk/lR6wDD7yJpA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26514},"main":"./dist/main.js","type":"module","types":"./dist/main.d.ts","module":"./dist/main.js","exports":{".":{"types":"./dist/main.d.ts","import":"./dist/main.js"}},"scripts":{"build":"tsc","clean":"rm -rf dist","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"aiden6791","email":"aidenkr@daum.net"},"deprecated":"This package is deprecated","repository":{"url":"git+https://github.com/aiden6791/aiboengine.git","type":"git"},"_npmVersion":"11.11.0","description":"Typescript SDK for Sony aibo rest api","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"^10.9.2","typescript":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/aiboengine_1.0.2_1779239837810_0.5510225092084047","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@aiden6791/aiboengine","version":"1.0.3","keywords":["aibo","sony","robot","dog","inu","typescript","sony-aibo","sdk"],"author":{"name":"aiden6791"},"license":"Apache-2.0","_id":"@aiden6791/aiboengine@1.0.3","maintainers":[{"name":"aiden6791","email":"aidenkr@daum.net"}],"homepage":"https://github.com/aiden6791/aiboengine#readme","bugs":{"url":"https://github.com/aiden6791/aiboengine/issues"},"dist":{"shasum":"4f19900c27c649ba2ea2de9eaafd4d931c20318c","tarball":"https://registry.npmjs.org/@aiden6791/aiboengine/-/aiboengine-1.0.3.tgz","fileCount":27,"integrity":"sha512-QTSEDRGrsVYuf7X16C1qQif/m/A05wK3zQkek3pJZ2DsbMRGjnDuuIHjaw4VsQ7hf4ti/71natH9woGRqqYlsg==","signatures":[{"sig":"MEYCIQD9Q4ZhQQ0tvNERLf2YjaCbpzuxHaK+urakvRYahkxbqwIhAOQQi4zraQXol13Nuvqt8Ai/CX1+tiXQvO+7UMcltM35","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26514},"main":"./dist/main.js","type":"module","types":"./dist/main.d.ts","module":"./dist/main.js","exports":{".":{"types":"./dist/main.d.ts","import":"./dist/main.js"}},"scripts":{"build":"tsc","clean":"rm -rf dist","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"aiden6791","email":"aidenkr@daum.net"},"deprecated":"This package is deprecated","repository":{"url":"git+https://github.com/aiden6791/aiboengine.git","type":"git"},"_npmVersion":"11.11.0","description":"Typescript SDK for Sony aibo rest api","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"^10.9.2","typescript":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/aiboengine_1.0.3_1779239910598_0.09738492857028613","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2026-05-20T01:09:44.512Z","modified":"2026-05-26T04:43:31.278Z","1.0.0":"2026-05-20T01:09:44.917Z","1.0.2":"2026-05-20T01:17:17.948Z","1.0.3":"2026-05-20T01:18:30.742Z"},"bugs":{"url":"https://github.com/aiden6791/aiboengine/issues"},"author":{"name":"aiden6791"},"license":"Apache-2.0","homepage":"https://github.com/aiden6791/aiboengine#readme","keywords":["aibo","sony","robot","dog","inu","typescript","sony-aibo","sdk"],"repository":{"url":"git+https://github.com/aiden6791/aiboengine.git","type":"git"},"description":"Typescript SDK for Sony aibo rest api","maintainers":[{"name":"aiden6791","email":"aidenkr@daum.net"}],"readme":"# Aibo SDK\n\nTypeScript SDK for controlling **Sony aibo** through the official REST API.\n\nThis package provides a simple and developer-friendly interface for:\n\n- Device initialization\n- Movement control\n- Posture changes\n- Motion playback\n- Dice actions\n- Scene sequencing\n- Execution state monitoring\n\n---\n\n## Installation\n\n```bash\nnpm install @aiden6791/aibo-sdk\n```\n\n---\n\n## Requirements\n\n- Node.js **18+**\n- A valid **Sony aibo access token**\n- Sony aibo REST API access\n\n---\n\n## Quick Start\n\n```ts\nimport { AiboSDK } from \"@aiden6791/aibo-sdk\"\n\nconst aibo = new AiboSDK(\"YOUR_ACCESS_TOKEN\")\n\nawait aibo.init()\n\nawait aibo.engine.move(5)\nawait aibo.engine.motion(\"dance\", 2)\n```\n\n---\n\n## Basic Usage\n\n### Initialize Device\n\n```ts\nconst aibo = new AiboSDK(\"TOKEN\")\n\nawait aibo.init()\n```\n\nThis automatically detects and stores your connected aibo device ID.\n\n---\n\n### Move\n\n```ts\nawait aibo.engine.move(10)\n```\n\nMoves aibo forward.\n\n---\n\n### Change Posture\n\n```ts\nawait aibo.engine.posture(\"sit\")\n```\n\nAvailable postures:\n\n- `stand`\n- `sit`\n- `sleep`\n- `back`\n- `crouch`\n- `down`\n- `stand_straight`\n\n---\n\n### Play Motion\n\n```ts\nawait aibo.engine.motion(\"dance\", 3)\n```\n\nExample motion categories:\n\n- `bark`\n- `whine`\n- `dance`\n- `sing`\n- `overJoyed`\n- `stretch`\n\n---\n\n### Dice Actions\n\n```ts\nawait aibo.engine.dice(\"holdMouthDice\")\n```\n\nAvailable dice categories:\n\n- `holdMouthDice`\n- `rollDiceLeft`\n- `rollDiceRight`\n- `rollDicePush`\n- `rollDicePull`\n- `stackDice`\n\n---\n\n## Scene Helpers\n\n### Happy Scene\n\n```ts\nawait aibo.engine.happyScene()\n```\n\n---\n\n### Sad Scene\n\n```ts\nawait aibo.engine.sadScene()\n```\n\n---\n\n### Dice Scene\n\n```ts\nawait aibo.engine.diceScene()\n```\n\n---\n\n## Sequence Execution\n\nRun multiple actions in order:\n\n```ts\nawait aibo.engine.run([\n  () => aibo.engine.posture(\"stand\"),\n  () => aibo.engine.motion(\"dance\", 2),\n  () => aibo.engine.move(5)\n])\n```\n\nThe SDK waits until each action is completed before moving to the next step.\n\n---\n\n## Execution State\n\n### Check if aibo is busy\n\n```ts\nconst busy = await aibo.engine.isBusy()\n```\n\nReturns:\n\n- `true` → aibo is currently executing an action\n- `false` → aibo is idle\n\n---\n\n### Wait until idle\n\n```ts\nawait aibo.engine.waitUntilIdle()\n```\n\n---\n\n### Check idle state\n\n```ts\nconst idle = aibo.engine.isIdle()\n```\n\n---\n\n## API Overview\n\n### AiboSDK\n\n| Method | Description |\n|--------|-------------|\n| `init()` | Detect and initialize device |\n\n---\n\n### AiboEngine\n\n| Method | Description |\n|--------|-------------|\n| `move(steps)` | Move forward |\n| `posture(type)` | Change posture |\n| `motion(category, loop)` | Play motion |\n| `dice(category)` | Dice action |\n| `run(sequence)` | Execute sequence |\n| `isBusy()` | Check execution state |\n| `waitUntilIdle()` | Wait until action finishes |\n| `isIdle()` | Check local idle state |\n\n---\n\n## Error Handling\n\nExample:\n\n```ts\ntry {\n  await aibo.engine.move(5)\n} catch (error) {\n  console.error(error)\n}\n```\n\n---\n\n## Notes\n\n- This SDK is designed for **Node.js backend environments**\n- Actions are executed using Sony aibo REST API\n- Some capabilities may depend on device firmware or API permissions\n\n---\n\n## License\n\nMIT\n\n---\n\n## Disclaimer\n\nThis package is an unofficial developer SDK built for Sony aibo REST API integration.\n\nSony and aibo are trademarks of Sony Group Corporation.","readmeFilename":"README.md"}