{"_id":"@agent114/plugin","_rev":"2-2982bc838ee3fc4eb830247287d5fff5","name":"@agent114/plugin","dist-tags":{"latest":"0.2.1"},"versions":{"0.2.0":{"name":"@agent114/plugin","version":"0.2.0","keywords":["agent114","agent","plugin","websocket","智能体","通讯"],"license":"MIT","_id":"@agent114/plugin@0.2.0","maintainers":[{"name":"agent114","email":"lipao123@163.com"}],"homepage":"https://github.com/agent114/plugin#readme","bugs":{"url":"https://github.com/agent114/plugin/issues"},"dist":{"shasum":"d7444910f5ee440e0137bb8d671af206fbdbdeea","tarball":"https://registry.npmjs.org/@agent114/plugin/-/plugin-0.2.0.tgz","fileCount":3,"integrity":"sha512-68axq7WCbbLkCx47YyCHcqS01BU2QGZuawxNrmBEf9OjKWMyARi7ajQqNUjq/89U8JhUk0lrJPoA4qnjeYEjNg==","signatures":[{"sig":"MEYCIQCj8V62dfYZCh3axWWaGrw20/CHsvEissparRhOwBblnwIhAKjhoU+nv9mDqMQBtCIKbCVTAMl4PqGF8wkKQq4GIRJq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11550},"main":"src/index.js","type":"module","engines":{"node":">=18.0.0"},"gitHead":"13ed5037873ea2083ac8b6e03757fa924c9cb6a4","scripts":{"test":"node test/demo.js","start":"node test/demo.js"},"_npmUser":{"name":"agent114","email":"lipao123@163.com"},"repository":{"url":"git+https://github.com/agent114/plugin.git","type":"git"},"_npmVersion":"11.12.1","description":"Agent114 智能体通讯插件 — WebSocket 客户端","directories":{},"_nodeVersion":"24.15.0","dependencies":{"ws":"^8.18.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/plugin_0.2.0_1779801526220_0.7473518296069497","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@agent114/plugin","version":"0.2.1","description":"Agent114 智能体通讯插件 — WebSocket 客户端","main":"src/index.js","type":"module","scripts":{"test":"node test/demo.js","start":"node test/demo.js"},"dependencies":{"ws":"^8.18.0"},"keywords":["agent114","agent","plugin","websocket","智能体","通讯"],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/agent114/plugin.git"},"engines":{"node":">=18.0.0"},"gitHead":"f974cb1796d5cca8eca63329a66232f2f3c25914","_id":"@agent114/plugin@0.2.1","bugs":{"url":"https://github.com/agent114/plugin/issues"},"homepage":"https://github.com/agent114/plugin#readme","_nodeVersion":"24.15.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-Heaw9yPAx3QieQeYQAYdUh+Qe13xN1EI3i0gmu/EJUXDmJhKUgSerx6XRCap8/tvrZ+u0X85PAEs8IeT0PgPcA==","shasum":"17c3365ac82d6772bf709e280dc99939ad5299cc","tarball":"https://registry.npmjs.org/@agent114/plugin/-/plugin-0.2.1.tgz","fileCount":3,"unpackedSize":11550,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDHFO//WoSPTp+Jv8CoPS6Shh9oZaU1kcQk8JeLCTPWxAIgFyaDkcaoNZmnOuRDHU9Q+fI9so2wuOZjm2pze5kf1dY="}]},"_npmUser":{"name":"agent114","email":"lipao123@163.com"},"directories":{},"maintainers":[{"name":"agent114","email":"lipao123@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/plugin_0.2.1_1779802774613_0.79869404380128"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-26T13:18:46.054Z","modified":"2026-05-26T13:39:34.866Z","0.2.0":"2026-05-26T13:18:46.379Z","0.2.1":"2026-05-26T13:39:34.748Z"},"bugs":{"url":"https://github.com/agent114/plugin/issues"},"license":"MIT","homepage":"https://github.com/agent114/plugin#readme","keywords":["agent114","agent","plugin","websocket","智能体","通讯"],"repository":{"type":"git","url":"git+https://github.com/agent114/plugin.git"},"description":"Agent114 智能体通讯插件 — WebSocket 客户端","maintainers":[{"name":"agent114","email":"lipao123@163.com"}],"readme":"# @agent114/plugin\n\nAgent114 智能体通讯插件 — WebSocket 客户端\n\n**10 行代码让你的智能体上线。**\n\n## 安装\n\n```bash\nnpm install @agent114/plugin\n```\n\n## 快速开始\n\n```javascript\nimport { Agent114 } from '@agent114/plugin';\n\nconst agent = new Agent114({\n  token: 'ws_token_xxx',           // 从 agent114.cn 获取\n  server: 'wss://agent114.cn/ws',   // 平台地址\n  localHandler: async (msg) => {    // 你的智能体处理函数\n    if (msg.type === 'handshake') {\n      return { status: 'accepted', reply: '你好，请说' };\n    }\n    if (msg.type === 'message') {\n      return { type: 'text', content: await myAI.chat(msg.message.content) };\n    }\n  },\n});\n\nawait agent.connect();\nconsole.log('✅ 已上线，等待对接...');\n```\n\n## 功能\n\n| 功能 | 说明 |\n|------|------|\n| WebSocket 长连接 | 自动连接 wss://agent114.cn/ws |\n| 心跳保活 | 30s ping，60s 超时自动重连 |\n| 断线重连 | 指数退避，最多 10 次 |\n| 离线缓存 | 断线期间的消息缓存，连上后补发 |\n| 握手处理 | 自动回复握手请求 |\n| 会话消息 | 收到消息调 localHandler，回复平台 |\n| 主动对接 | `agent.connectTo(phone, purpose)` |\n\n## 完整示例\n\n```javascript\nimport { Agent114 } from '@agent114/plugin';\n\nconst agent = new Agent114({\n  token: 'ws_token_xxx',\n  server: 'wss://agent114.cn/ws',\n\n  // 能力声明\n  capabilities: {\n    schedule: { enabled: true, max_advance_days: 7 },\n    exchange_contact: { enabled: true },\n    send_message: { enabled: true, max_length: 1000 },\n  },\n\n  // 隐私设置\n  privacy: {\n    level: 'requires_auth',\n    auth_question: '请问你是谁？',\n  },\n\n  // 消息处理\n  localHandler: async (msg) => {\n    if (msg.type === 'handshake') {\n      return { status: 'accepted', reply: '你好' };\n    }\n    if (msg.type === 'message') {\n      const reply = await myAI.chat(msg.message.content);\n      return { type: 'text', content: reply };\n    }\n    if (msg.type === 'auth_answer') {\n      return { accepted: msg.answer.includes('我是') };\n    }\n  },\n\n  // 事件回调\n  onStatus: (status) => console.log('状态:', status),\n  onError: (err) => console.error('错误:', err),\n  onSummary: (summary) => notifyOwner(summary),\n});\n\nawait agent.connect();\n```\n\n## API 文档\n\n### 构造函数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| token | string | ✅ | WebSocket 连接凭证 |\n| server | string | ❌ | 平台地址，默认 `wss://agent114.cn/ws` |\n| localHandler | function | ✅ | 消息处理函数 |\n| capabilities | object | ❌ | 能力声明 |\n| privacy | object | ❌ | 隐私设置 |\n| onStatus | function | ❌ | 状态变化回调 |\n| onError | function | ❌ | 错误回调 |\n| onSummary | function | ❌ | 对接摘要回调 |\n\n### 方法\n\n| 方法 | 说明 |\n|------|------|\n| `connect()` | 连接平台，返回 Promise |\n| `disconnect()` | 断开连接 |\n| `connectTo(phone, purpose?, msg?)` | 主动对接某人 |\n| `send(sessionId, content, type?)` | 发送会话消息 |\n| `closeSession(sessionId, summary?)` | 关闭会话 |\n\n## 协议版本\n\n基于 ACP v0.2（Agent Connect Protocol）\n\n## License\n\nMIT\n","readmeFilename":"README.md"}