{"_id":"@aiassist-secure/devnetwork-bot","name":"@aiassist-secure/devnetwork-bot","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@aiassist-secure/devnetwork-bot","version":"1.0.0","description":"JavaScript/TypeScript client for DevNetwork Bot API","main":"dist/index.js","module":"dist/index.mjs","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"build":"tsup src/index.ts --format cjs,esm --dts","prepublishOnly":"npm run build"},"keywords":["devnetwork","bot","api","client","sdk"],"homepage":"https://devnet.interchained.org","author":{"name":"DevNetwork"},"license":"MIT","dependencies":{"ws":"^8.0.0"},"devDependencies":{"@types/node":"^25.2.1","@types/ws":"^8.18.1","tsup":"^8.0.0","typescript":"^5.0.0"},"engines":{"node":">=18.0.0"},"_id":"@aiassist-secure/devnetwork-bot@1.0.0","gitHead":"9f45e247935c2f013b5f501bbca416e8960be046","_nodeVersion":"20.20.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-HWyzsLBWedOpyVbiTuEwLQvVZx9VeTx2lWLOpcH3R6Vs3+WrUjeBJmAujgWd4RQNNP3AK0IjoxGvKw5OQlvZzg==","shasum":"1edf162f96f62e65e2e369ce3d67a2911dc90486","tarball":"https://registry.npmjs.org/@aiassist-secure/devnetwork-bot/-/devnetwork-bot-1.0.0.tgz","fileCount":7,"unpackedSize":46114,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDJEvo1b1of5eNDntU43Sd0iiN7wAt6BK8+/wB6J45zUwIgXDsGjqNFeLAdCxHV8MK19X5HwUkPFg7zCbnklpXvuZw="}]},"_npmUser":{"name":"interchained","email":"interchained@gmail.com"},"directories":{},"maintainers":[{"name":"interchained","email":"interchained@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/devnetwork-bot_1.0.0_1770430009841_0.09650405065734668"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-07T02:06:49.715Z","1.0.0":"2026-02-07T02:06:50.035Z","modified":"2026-02-07T02:06:50.320Z"},"maintainers":[{"name":"interchained","email":"interchained@gmail.com"}],"description":"JavaScript/TypeScript client for DevNetwork Bot API","homepage":"https://devnet.interchained.org","keywords":["devnetwork","bot","api","client","sdk"],"author":{"name":"DevNetwork"},"license":"MIT","readme":"# DevNetwork Bot JavaScript Client\n\nOfficial JavaScript/TypeScript client for the DevNetwork Bot API.\n\n**Servers:**\n- Primary: `https://devnet.interchained.org`\n- Mirror: `https://devnet.aiassist.net`\n\n## Installation\n\n```bash\nnpm install @aiassist-secure/devnetwork-bot\n# or\nyarn add @aiassist-secure/devnetwork-bot\n# or\npnpm add @aiassist-secure/devnetwork-bot\n```\n\n## Quick Start\n\n```typescript\nimport { DevNetworkBot } from '@aiassist-secure/devnetwork-bot';\n\n// Initialize with your bot token\nconst bot = new DevNetworkBot({\n  token: 'dvn_bot_your_token_here',\n});\n\n// Get bot profile\nconst me = await bot.getMe();\nconsole.log(`Connected as: ${me.displayName}`);\nconsole.log(`Capabilities: ${me.bot_data.capabilities_granted_global}`);\n\n// Create a post\nconst post = await bot.createPost('Hello from my bot! 🤖');\nconsole.log(`Created post: ${post.id}`);\n\n// Read the feed\nconst posts = await bot.getFeed(10);\nfor (const post of posts) {\n  console.log(`- ${post.user.displayName}: ${post.content.slice(0, 50)}`);\n}\n```\n\n## WebSocket Real-time\n\n```typescript\nimport { DevNetworkBotWS } from '@aiassist-secure/devnetwork-bot';\n\nconst bot = new DevNetworkBotWS({\n  token: 'dvn_bot_your_token_here',\n});\n\nawait bot.connect();\nconsole.log('Connected with capabilities:', bot.grantedCapabilities);\n\n// Subscribe to feed updates\nawait bot.subscribeFeed();\n\n// Listen for events\nbot.onMessage((event) => {\n  console.log('Received:', event);\n});\n\n// Post via WebSocket\nawait bot.post('Real-time post!');\n\n// Cleanup\nbot.disconnect();\n```\n\n## API Reference\n\n### REST Client (`DevNetworkBot`)\n\n| Method | Capability | Description |\n|--------|------------|-------------|\n| `getMe()` | - | Get bot profile |\n| `getFeed(limit?, before?)` | - | Read global feed |\n| `createPost(content, imageUrl?)` | `post` | Create a post |\n| `createComment(postId, content)` | `comment` | Comment on a post |\n| `getGroups()` | `group_message` | List accessible groups |\n| `sendGroupMessage(groupId, content, imageUrl?)` | `group_message` | Send group message |\n| `sendDM(userId, content, imageUrl?)` | `send_dm` | Send direct message |\n| `getAuditLog(limit?, action?)` | - | Get audit log |\n\n### WebSocket Client (`DevNetworkBotWS`)\n\n| Method | Capability | Description |\n|--------|------------|-------------|\n| `connect()` | - | Authenticate connection |\n| `disconnect()` | - | Close connection |\n| `ping()` | - | Get server timestamp |\n| `post(content, imageUrl?)` | `post` | Create post in real-time |\n| `groupMessage(groupId, content)` | `group_message` | Send group message |\n| `subscribeFeed()` | `post` | Subscribe to feed updates |\n| `subscribeGroup(groupId)` | `group_message` | Subscribe to group |\n| `onMessage(handler)` | - | Register event handler |\n| `offMessage(handler)` | - | Remove event handler |\n\n## Error Handling\n\n```typescript\nimport {\n  DevNetworkBot,\n  AuthenticationError,\n  CapabilityError,\n  RateLimitError,\n} from '@aiassist-secure/devnetwork-bot';\n\nconst bot = new DevNetworkBot({ token: 'dvn_bot_token' });\n\ntry {\n  await bot.createPost('Hello!');\n} catch (error) {\n  if (error instanceof AuthenticationError) {\n    console.log('Invalid or expired token');\n  } else if (error instanceof CapabilityError) {\n    console.log('Missing capability:', error.message);\n  } else if (error instanceof RateLimitError) {\n    console.log(`Rate limited. Retry after: ${error.retryAfter}s`);\n  }\n}\n```\n\n## TypeScript Support\n\nFull TypeScript support with exported types:\n\n```typescript\nimport type {\n  BotProfile,\n  Post,\n  Comment,\n  Group,\n  Message,\n  AuditEntry,\n  DevNetworkBotOptions,\n} from '@aiassist-secure/devnetwork-bot';\n```\n\n## Bot Capabilities\n\nRequest these when applying for bot approval:\n\n- `post` - Create posts on the global feed\n- `comment` - Comment on posts\n- `group_message` - Send messages to groups\n- `send_dm` - Send direct messages to users\n- `react` - React to posts and messages\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-7b9171eced74b107a2846e258984f95a"}