@dobby.ai/dobby 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. package/.env.example +9 -0
  2. package/AGENTS.md +267 -0
  3. package/README.md +382 -0
  4. package/ROADMAP.md +34 -0
  5. package/config/cron.example.json +9 -0
  6. package/config/gateway.example.json +128 -0
  7. package/config/models.custom.example.json +27 -0
  8. package/dist/src/agent/event-forwarder.js +341 -0
  9. package/dist/src/agent/tests/event-forwarder.test.js +113 -0
  10. package/dist/src/cli/commands/config.js +243 -0
  11. package/dist/src/cli/commands/configure.js +61 -0
  12. package/dist/src/cli/commands/cron.js +288 -0
  13. package/dist/src/cli/commands/doctor.js +189 -0
  14. package/dist/src/cli/commands/extension.js +151 -0
  15. package/dist/src/cli/commands/init.js +286 -0
  16. package/dist/src/cli/commands/start.js +177 -0
  17. package/dist/src/cli/commands/topology.js +254 -0
  18. package/dist/src/cli/index.js +8 -0
  19. package/dist/src/cli/program.js +386 -0
  20. package/dist/src/cli/shared/config-io.js +223 -0
  21. package/dist/src/cli/shared/config-mutators.js +345 -0
  22. package/dist/src/cli/shared/config-path.js +207 -0
  23. package/dist/src/cli/shared/config-schema.js +159 -0
  24. package/dist/src/cli/shared/config-types.js +1 -0
  25. package/dist/src/cli/shared/configure-sections.js +429 -0
  26. package/dist/src/cli/shared/discord-config.js +12 -0
  27. package/dist/src/cli/shared/init-catalog.js +115 -0
  28. package/dist/src/cli/shared/init-models-file.js +65 -0
  29. package/dist/src/cli/shared/presets.js +86 -0
  30. package/dist/src/cli/shared/runtime.js +29 -0
  31. package/dist/src/cli/shared/schema-prompts.js +325 -0
  32. package/dist/src/cli/tests/config-command.test.js +42 -0
  33. package/dist/src/cli/tests/config-io.test.js +64 -0
  34. package/dist/src/cli/tests/config-mutators.test.js +47 -0
  35. package/dist/src/cli/tests/config-path.test.js +21 -0
  36. package/dist/src/cli/tests/discord-config.test.js +23 -0
  37. package/dist/src/cli/tests/doctor.test.js +107 -0
  38. package/dist/src/cli/tests/init-catalog.test.js +87 -0
  39. package/dist/src/cli/tests/presets.test.js +41 -0
  40. package/dist/src/cli/tests/program-options.test.js +92 -0
  41. package/dist/src/cli/tests/routing-config.test.js +199 -0
  42. package/dist/src/cli/tests/routing-legacy.test.js +191 -0
  43. package/dist/src/core/control-command.js +12 -0
  44. package/dist/src/core/dedup-store.js +92 -0
  45. package/dist/src/core/gateway.js +432 -0
  46. package/dist/src/core/routing.js +306 -0
  47. package/dist/src/core/runtime-registry.js +119 -0
  48. package/dist/src/core/tests/control-command.test.js +17 -0
  49. package/dist/src/core/tests/gateway-update-strategy.test.js +167 -0
  50. package/dist/src/core/tests/runtime-registry.test.js +116 -0
  51. package/dist/src/core/tests/typing-controller.test.js +103 -0
  52. package/dist/src/core/types.js +1 -0
  53. package/dist/src/core/typing-controller.js +88 -0
  54. package/dist/src/cron/config.js +114 -0
  55. package/dist/src/cron/schedule.js +49 -0
  56. package/dist/src/cron/service.js +196 -0
  57. package/dist/src/cron/store.js +142 -0
  58. package/dist/src/cron/types.js +1 -0
  59. package/dist/src/extension/loader.js +97 -0
  60. package/dist/src/extension/manager.js +269 -0
  61. package/dist/src/extension/manifest.js +21 -0
  62. package/dist/src/extension/registry.js +137 -0
  63. package/dist/src/main.js +6 -0
  64. package/dist/src/sandbox/executor.js +1 -0
  65. package/dist/src/sandbox/host-executor.js +111 -0
  66. package/docs/BOXLITE_SANDBOX_FEASIBILITY.md +175 -0
  67. package/docs/CRON_SCHEDULER_DESIGN.md +374 -0
  68. package/docs/DOCKER_SANDBOX_vs_BOXLITE.md +77 -0
  69. package/docs/EXTENSION_SYSTEM_ARCHITECTURE.md +119 -0
  70. package/docs/MVP.md +135 -0
  71. package/docs/RUNBOOK.md +242 -0
  72. package/docs/TEAMWORK_HANDOFF_DESIGN.md +440 -0
  73. package/package.json +43 -0
  74. package/plugins/connector-discord/dobby.manifest.json +18 -0
  75. package/plugins/connector-discord/index.js +1 -0
  76. package/plugins/connector-discord/package-lock.json +360 -0
  77. package/plugins/connector-discord/package.json +38 -0
  78. package/plugins/connector-discord/src/connector.ts +350 -0
  79. package/plugins/connector-discord/src/contribution.ts +21 -0
  80. package/plugins/connector-discord/src/mapper.ts +102 -0
  81. package/plugins/connector-discord/tsconfig.json +19 -0
  82. package/plugins/connector-feishu/dobby.manifest.json +18 -0
  83. package/plugins/connector-feishu/index.js +1 -0
  84. package/plugins/connector-feishu/package-lock.json +618 -0
  85. package/plugins/connector-feishu/package.json +38 -0
  86. package/plugins/connector-feishu/src/connector.ts +343 -0
  87. package/plugins/connector-feishu/src/contribution.ts +26 -0
  88. package/plugins/connector-feishu/src/mapper.ts +401 -0
  89. package/plugins/connector-feishu/tsconfig.json +19 -0
  90. package/plugins/plugin-sdk/index.d.ts +261 -0
  91. package/plugins/plugin-sdk/index.js +1 -0
  92. package/plugins/plugin-sdk/package-lock.json +12 -0
  93. package/plugins/plugin-sdk/package.json +22 -0
  94. package/plugins/provider-claude/dobby.manifest.json +17 -0
  95. package/plugins/provider-claude/index.js +1 -0
  96. package/plugins/provider-claude/package-lock.json +3398 -0
  97. package/plugins/provider-claude/package.json +39 -0
  98. package/plugins/provider-claude/src/contribution.ts +1018 -0
  99. package/plugins/provider-claude/tsconfig.json +19 -0
  100. package/plugins/provider-claude-cli/dobby.manifest.json +17 -0
  101. package/plugins/provider-claude-cli/index.js +1 -0
  102. package/plugins/provider-claude-cli/package-lock.json +2898 -0
  103. package/plugins/provider-claude-cli/package.json +38 -0
  104. package/plugins/provider-claude-cli/src/contribution.ts +1673 -0
  105. package/plugins/provider-claude-cli/tsconfig.json +19 -0
  106. package/plugins/provider-pi/dobby.manifest.json +17 -0
  107. package/plugins/provider-pi/index.js +1 -0
  108. package/plugins/provider-pi/package-lock.json +3877 -0
  109. package/plugins/provider-pi/package.json +40 -0
  110. package/plugins/provider-pi/src/contribution.ts +476 -0
  111. package/plugins/provider-pi/tsconfig.json +19 -0
  112. package/plugins/sandbox-core/boxlite.js +1 -0
  113. package/plugins/sandbox-core/dobby.manifest.json +17 -0
  114. package/plugins/sandbox-core/docker.js +1 -0
  115. package/plugins/sandbox-core/package-lock.json +136 -0
  116. package/plugins/sandbox-core/package.json +39 -0
  117. package/plugins/sandbox-core/src/boxlite-context.ts +2 -0
  118. package/plugins/sandbox-core/src/boxlite-contribution.ts +53 -0
  119. package/plugins/sandbox-core/src/boxlite-executor.ts +911 -0
  120. package/plugins/sandbox-core/src/docker-contribution.ts +43 -0
  121. package/plugins/sandbox-core/src/docker-executor.ts +217 -0
  122. package/plugins/sandbox-core/tsconfig.json +19 -0
  123. package/scripts/local-extensions.mjs +168 -0
  124. package/src/agent/event-forwarder.ts +414 -0
  125. package/src/cli/commands/config.ts +328 -0
  126. package/src/cli/commands/configure.ts +92 -0
  127. package/src/cli/commands/cron.ts +410 -0
  128. package/src/cli/commands/doctor.ts +230 -0
  129. package/src/cli/commands/extension.ts +205 -0
  130. package/src/cli/commands/init.ts +396 -0
  131. package/src/cli/commands/start.ts +223 -0
  132. package/src/cli/commands/topology.ts +383 -0
  133. package/src/cli/index.ts +9 -0
  134. package/src/cli/program.ts +465 -0
  135. package/src/cli/shared/config-io.ts +277 -0
  136. package/src/cli/shared/config-mutators.ts +440 -0
  137. package/src/cli/shared/config-schema.ts +228 -0
  138. package/src/cli/shared/config-types.ts +121 -0
  139. package/src/cli/shared/configure-sections.ts +551 -0
  140. package/src/cli/shared/discord-config.ts +14 -0
  141. package/src/cli/shared/init-catalog.ts +189 -0
  142. package/src/cli/shared/init-models-file.ts +77 -0
  143. package/src/cli/shared/runtime.ts +33 -0
  144. package/src/cli/shared/schema-prompts.ts +414 -0
  145. package/src/cli/tests/config-command.test.ts +56 -0
  146. package/src/cli/tests/config-io.test.ts +92 -0
  147. package/src/cli/tests/config-mutators.test.ts +59 -0
  148. package/src/cli/tests/doctor.test.ts +120 -0
  149. package/src/cli/tests/init-catalog.test.ts +96 -0
  150. package/src/cli/tests/program-options.test.ts +113 -0
  151. package/src/cli/tests/routing-config.test.ts +209 -0
  152. package/src/core/control-command.ts +12 -0
  153. package/src/core/dedup-store.ts +103 -0
  154. package/src/core/gateway.ts +607 -0
  155. package/src/core/routing.ts +379 -0
  156. package/src/core/runtime-registry.ts +141 -0
  157. package/src/core/tests/control-command.test.ts +20 -0
  158. package/src/core/tests/runtime-registry.test.ts +140 -0
  159. package/src/core/tests/typing-controller.test.ts +129 -0
  160. package/src/core/types.ts +318 -0
  161. package/src/core/typing-controller.ts +119 -0
  162. package/src/cron/config.ts +154 -0
  163. package/src/cron/schedule.ts +61 -0
  164. package/src/cron/service.ts +249 -0
  165. package/src/cron/store.ts +155 -0
  166. package/src/cron/types.ts +60 -0
  167. package/src/extension/loader.ts +145 -0
  168. package/src/extension/manager.ts +355 -0
  169. package/src/extension/manifest.ts +26 -0
  170. package/src/extension/registry.ts +229 -0
  171. package/src/main.ts +8 -0
  172. package/src/sandbox/executor.ts +44 -0
  173. package/src/sandbox/host-executor.ts +118 -0
  174. package/tsconfig.json +18 -0
@@ -0,0 +1,360 @@
1
+ {
2
+ "name": "@dobby.ai/connector-discord",
3
+ "version": "0.1.2",
4
+ "lockfileVersion": 3,
5
+ "requires": true,
6
+ "packages": {
7
+ "": {
8
+ "name": "@dobby.ai/connector-discord",
9
+ "version": "0.1.2",
10
+ "dependencies": {
11
+ "discord.js": "^14.22.1",
12
+ "zod": "^4.3.6"
13
+ },
14
+ "devDependencies": {
15
+ "@dobby.ai/plugin-sdk": "file:../plugin-sdk",
16
+ "@types/node": "^22.10.5",
17
+ "typescript": "^5.9.2"
18
+ },
19
+ "peerDependencies": {
20
+ "@dobby.ai/plugin-sdk": "^0.1.0"
21
+ },
22
+ "peerDependenciesMeta": {
23
+ "@dobby.ai/plugin-sdk": {
24
+ "optional": true
25
+ }
26
+ }
27
+ },
28
+ "../plugin-sdk": {
29
+ "name": "@dobby.ai/plugin-sdk",
30
+ "version": "0.1.2",
31
+ "dev": true
32
+ },
33
+ "node_modules/@discordjs/builders": {
34
+ "version": "1.13.1",
35
+ "resolved": "https://registry.npmmirror.com/@discordjs/builders/-/builders-1.13.1.tgz",
36
+ "integrity": "sha512-cOU0UDHc3lp/5nKByDxkmRiNZBpdp0kx55aarbiAfakfKJHlxv/yFW1zmIqCAmwH5CRlrH9iMFKJMpvW4DPB+w==",
37
+ "license": "Apache-2.0",
38
+ "dependencies": {
39
+ "@discordjs/formatters": "^0.6.2",
40
+ "@discordjs/util": "^1.2.0",
41
+ "@sapphire/shapeshift": "^4.0.0",
42
+ "discord-api-types": "^0.38.33",
43
+ "fast-deep-equal": "^3.1.3",
44
+ "ts-mixer": "^6.0.4",
45
+ "tslib": "^2.6.3"
46
+ },
47
+ "engines": {
48
+ "node": ">=16.11.0"
49
+ },
50
+ "funding": {
51
+ "url": "https://github.com/discordjs/discord.js?sponsor"
52
+ }
53
+ },
54
+ "node_modules/@discordjs/collection": {
55
+ "version": "1.5.3",
56
+ "resolved": "https://registry.npmmirror.com/@discordjs/collection/-/collection-1.5.3.tgz",
57
+ "integrity": "sha512-SVb428OMd3WO1paV3rm6tSjM4wC+Kecaa1EUGX7vc6/fddvw/6lg90z4QtCqm21zvVe92vMMDt9+DkIvjXImQQ==",
58
+ "license": "Apache-2.0",
59
+ "engines": {
60
+ "node": ">=16.11.0"
61
+ }
62
+ },
63
+ "node_modules/@discordjs/formatters": {
64
+ "version": "0.6.2",
65
+ "resolved": "https://registry.npmmirror.com/@discordjs/formatters/-/formatters-0.6.2.tgz",
66
+ "integrity": "sha512-y4UPwWhH6vChKRkGdMB4odasUbHOUwy7KL+OVwF86PvT6QVOwElx+TiI1/6kcmcEe+g5YRXJFiXSXUdabqZOvQ==",
67
+ "license": "Apache-2.0",
68
+ "dependencies": {
69
+ "discord-api-types": "^0.38.33"
70
+ },
71
+ "engines": {
72
+ "node": ">=16.11.0"
73
+ },
74
+ "funding": {
75
+ "url": "https://github.com/discordjs/discord.js?sponsor"
76
+ }
77
+ },
78
+ "node_modules/@discordjs/rest": {
79
+ "version": "2.6.0",
80
+ "resolved": "https://registry.npmmirror.com/@discordjs/rest/-/rest-2.6.0.tgz",
81
+ "integrity": "sha512-RDYrhmpB7mTvmCKcpj+pc5k7POKszS4E2O9TYc+U+Y4iaCP+r910QdO43qmpOja8LRr1RJ0b3U+CqVsnPqzf4w==",
82
+ "license": "Apache-2.0",
83
+ "dependencies": {
84
+ "@discordjs/collection": "^2.1.1",
85
+ "@discordjs/util": "^1.1.1",
86
+ "@sapphire/async-queue": "^1.5.3",
87
+ "@sapphire/snowflake": "^3.5.3",
88
+ "@vladfrangu/async_event_emitter": "^2.4.6",
89
+ "discord-api-types": "^0.38.16",
90
+ "magic-bytes.js": "^1.10.0",
91
+ "tslib": "^2.6.3",
92
+ "undici": "6.21.3"
93
+ },
94
+ "engines": {
95
+ "node": ">=18"
96
+ },
97
+ "funding": {
98
+ "url": "https://github.com/discordjs/discord.js?sponsor"
99
+ }
100
+ },
101
+ "node_modules/@discordjs/rest/node_modules/@discordjs/collection": {
102
+ "version": "2.1.1",
103
+ "resolved": "https://registry.npmmirror.com/@discordjs/collection/-/collection-2.1.1.tgz",
104
+ "integrity": "sha512-LiSusze9Tc7qF03sLCujF5iZp7K+vRNEDBZ86FT9aQAv3vxMLihUvKvpsCWiQ2DJq1tVckopKm1rxomgNUc9hg==",
105
+ "license": "Apache-2.0",
106
+ "engines": {
107
+ "node": ">=18"
108
+ },
109
+ "funding": {
110
+ "url": "https://github.com/discordjs/discord.js?sponsor"
111
+ }
112
+ },
113
+ "node_modules/@discordjs/util": {
114
+ "version": "1.2.0",
115
+ "resolved": "https://registry.npmmirror.com/@discordjs/util/-/util-1.2.0.tgz",
116
+ "integrity": "sha512-3LKP7F2+atl9vJFhaBjn4nOaSWahZ/yWjOvA4e5pnXkt2qyXRCHLxoBQy81GFtLGCq7K9lPm9R517M1U+/90Qg==",
117
+ "license": "Apache-2.0",
118
+ "dependencies": {
119
+ "discord-api-types": "^0.38.33"
120
+ },
121
+ "engines": {
122
+ "node": ">=18"
123
+ },
124
+ "funding": {
125
+ "url": "https://github.com/discordjs/discord.js?sponsor"
126
+ }
127
+ },
128
+ "node_modules/@discordjs/ws": {
129
+ "version": "1.2.3",
130
+ "resolved": "https://registry.npmmirror.com/@discordjs/ws/-/ws-1.2.3.tgz",
131
+ "integrity": "sha512-wPlQDxEmlDg5IxhJPuxXr3Vy9AjYq5xCvFWGJyD7w7Np8ZGu+Mc+97LCoEc/+AYCo2IDpKioiH0/c/mj5ZR9Uw==",
132
+ "license": "Apache-2.0",
133
+ "dependencies": {
134
+ "@discordjs/collection": "^2.1.0",
135
+ "@discordjs/rest": "^2.5.1",
136
+ "@discordjs/util": "^1.1.0",
137
+ "@sapphire/async-queue": "^1.5.2",
138
+ "@types/ws": "^8.5.10",
139
+ "@vladfrangu/async_event_emitter": "^2.2.4",
140
+ "discord-api-types": "^0.38.1",
141
+ "tslib": "^2.6.2",
142
+ "ws": "^8.17.0"
143
+ },
144
+ "engines": {
145
+ "node": ">=16.11.0"
146
+ },
147
+ "funding": {
148
+ "url": "https://github.com/discordjs/discord.js?sponsor"
149
+ }
150
+ },
151
+ "node_modules/@discordjs/ws/node_modules/@discordjs/collection": {
152
+ "version": "2.1.1",
153
+ "resolved": "https://registry.npmmirror.com/@discordjs/collection/-/collection-2.1.1.tgz",
154
+ "integrity": "sha512-LiSusze9Tc7qF03sLCujF5iZp7K+vRNEDBZ86FT9aQAv3vxMLihUvKvpsCWiQ2DJq1tVckopKm1rxomgNUc9hg==",
155
+ "license": "Apache-2.0",
156
+ "engines": {
157
+ "node": ">=18"
158
+ },
159
+ "funding": {
160
+ "url": "https://github.com/discordjs/discord.js?sponsor"
161
+ }
162
+ },
163
+ "node_modules/@dobby.ai/plugin-sdk": {
164
+ "resolved": "../plugin-sdk",
165
+ "link": true
166
+ },
167
+ "node_modules/@sapphire/async-queue": {
168
+ "version": "1.5.5",
169
+ "resolved": "https://registry.npmmirror.com/@sapphire/async-queue/-/async-queue-1.5.5.tgz",
170
+ "integrity": "sha512-cvGzxbba6sav2zZkH8GPf2oGk9yYoD5qrNWdu9fRehifgnFZJMV+nuy2nON2roRO4yQQ+v7MK/Pktl/HgfsUXg==",
171
+ "license": "MIT",
172
+ "engines": {
173
+ "node": ">=v14.0.0",
174
+ "npm": ">=7.0.0"
175
+ }
176
+ },
177
+ "node_modules/@sapphire/shapeshift": {
178
+ "version": "4.0.0",
179
+ "resolved": "https://registry.npmmirror.com/@sapphire/shapeshift/-/shapeshift-4.0.0.tgz",
180
+ "integrity": "sha512-d9dUmWVA7MMiKobL3VpLF8P2aeanRTu6ypG2OIaEv/ZHH/SUQ2iHOVyi5wAPjQ+HmnMuL0whK9ez8I/raWbtIg==",
181
+ "license": "MIT",
182
+ "dependencies": {
183
+ "fast-deep-equal": "^3.1.3",
184
+ "lodash": "^4.17.21"
185
+ },
186
+ "engines": {
187
+ "node": ">=v16"
188
+ }
189
+ },
190
+ "node_modules/@sapphire/snowflake": {
191
+ "version": "3.5.3",
192
+ "resolved": "https://registry.npmmirror.com/@sapphire/snowflake/-/snowflake-3.5.3.tgz",
193
+ "integrity": "sha512-jjmJywLAFoWeBi1W7994zZyiNWPIiqRRNAmSERxyg93xRGzNYvGjlZ0gR6x0F4gPRi2+0O6S71kOZYyr3cxaIQ==",
194
+ "license": "MIT",
195
+ "engines": {
196
+ "node": ">=v14.0.0",
197
+ "npm": ">=7.0.0"
198
+ }
199
+ },
200
+ "node_modules/@types/node": {
201
+ "version": "22.19.11",
202
+ "resolved": "https://registry.npmmirror.com/@types/node/-/node-22.19.11.tgz",
203
+ "integrity": "sha512-BH7YwL6rA93ReqeQS1c4bsPpcfOmJasG+Fkr6Y59q83f9M1WcBRHR2vM+P9eOisYRcN3ujQoiZY8uk5W+1WL8w==",
204
+ "license": "MIT",
205
+ "dependencies": {
206
+ "undici-types": "~6.21.0"
207
+ }
208
+ },
209
+ "node_modules/@types/ws": {
210
+ "version": "8.18.1",
211
+ "resolved": "https://registry.npmmirror.com/@types/ws/-/ws-8.18.1.tgz",
212
+ "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==",
213
+ "license": "MIT",
214
+ "dependencies": {
215
+ "@types/node": "*"
216
+ }
217
+ },
218
+ "node_modules/@vladfrangu/async_event_emitter": {
219
+ "version": "2.4.7",
220
+ "resolved": "https://registry.npmmirror.com/@vladfrangu/async_event_emitter/-/async_event_emitter-2.4.7.tgz",
221
+ "integrity": "sha512-Xfe6rpCTxSxfbswi/W/Pz7zp1WWSNn4A0eW4mLkQUewCrXXtMj31lCg+iQyTkh/CkusZSq9eDflu7tjEDXUY6g==",
222
+ "license": "MIT",
223
+ "engines": {
224
+ "node": ">=v14.0.0",
225
+ "npm": ">=7.0.0"
226
+ }
227
+ },
228
+ "node_modules/discord-api-types": {
229
+ "version": "0.38.39",
230
+ "resolved": "https://registry.npmmirror.com/discord-api-types/-/discord-api-types-0.38.39.tgz",
231
+ "integrity": "sha512-XRdDQvZvID1XvcFftjSmd4dcmMi/RL/jSy5sduBDAvCGFcNFHThdIQXCEBDZFe52lCNEzuIL0QJoKYAmRmxLUA==",
232
+ "license": "MIT",
233
+ "workspaces": [
234
+ "scripts/actions/documentation"
235
+ ]
236
+ },
237
+ "node_modules/discord.js": {
238
+ "version": "14.25.1",
239
+ "resolved": "https://registry.npmmirror.com/discord.js/-/discord.js-14.25.1.tgz",
240
+ "integrity": "sha512-2l0gsPOLPs5t6GFZfQZKnL1OJNYFcuC/ETWsW4VtKVD/tg4ICa9x+jb9bkPffkMdRpRpuUaO/fKkHCBeiCKh8g==",
241
+ "license": "Apache-2.0",
242
+ "dependencies": {
243
+ "@discordjs/builders": "^1.13.0",
244
+ "@discordjs/collection": "1.5.3",
245
+ "@discordjs/formatters": "^0.6.2",
246
+ "@discordjs/rest": "^2.6.0",
247
+ "@discordjs/util": "^1.2.0",
248
+ "@discordjs/ws": "^1.2.3",
249
+ "@sapphire/snowflake": "3.5.3",
250
+ "discord-api-types": "^0.38.33",
251
+ "fast-deep-equal": "3.1.3",
252
+ "lodash.snakecase": "4.1.1",
253
+ "magic-bytes.js": "^1.10.0",
254
+ "tslib": "^2.6.3",
255
+ "undici": "6.21.3"
256
+ },
257
+ "engines": {
258
+ "node": ">=18"
259
+ },
260
+ "funding": {
261
+ "url": "https://github.com/discordjs/discord.js?sponsor"
262
+ }
263
+ },
264
+ "node_modules/fast-deep-equal": {
265
+ "version": "3.1.3",
266
+ "resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
267
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
268
+ "license": "MIT"
269
+ },
270
+ "node_modules/lodash": {
271
+ "version": "4.17.23",
272
+ "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.23.tgz",
273
+ "integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==",
274
+ "license": "MIT"
275
+ },
276
+ "node_modules/lodash.snakecase": {
277
+ "version": "4.1.1",
278
+ "resolved": "https://registry.npmmirror.com/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz",
279
+ "integrity": "sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==",
280
+ "license": "MIT"
281
+ },
282
+ "node_modules/magic-bytes.js": {
283
+ "version": "1.13.0",
284
+ "resolved": "https://registry.npmmirror.com/magic-bytes.js/-/magic-bytes.js-1.13.0.tgz",
285
+ "integrity": "sha512-afO2mnxW7GDTXMm5/AoN1WuOcdoKhtgXjIvHmobqTD1grNplhGdv3PFOyjCVmrnOZBIT/gD/koDKpYG+0mvHcg==",
286
+ "license": "MIT"
287
+ },
288
+ "node_modules/ts-mixer": {
289
+ "version": "6.0.4",
290
+ "resolved": "https://registry.npmmirror.com/ts-mixer/-/ts-mixer-6.0.4.tgz",
291
+ "integrity": "sha512-ufKpbmrugz5Aou4wcr5Wc1UUFWOLhq+Fm6qa6P0w0K5Qw2yhaUoiWszhCVuNQyNwrlGiscHOmqYoAox1PtvgjA==",
292
+ "license": "MIT"
293
+ },
294
+ "node_modules/tslib": {
295
+ "version": "2.8.1",
296
+ "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz",
297
+ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
298
+ "license": "0BSD"
299
+ },
300
+ "node_modules/typescript": {
301
+ "version": "5.9.3",
302
+ "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.9.3.tgz",
303
+ "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
304
+ "dev": true,
305
+ "license": "Apache-2.0",
306
+ "bin": {
307
+ "tsc": "bin/tsc",
308
+ "tsserver": "bin/tsserver"
309
+ },
310
+ "engines": {
311
+ "node": ">=14.17"
312
+ }
313
+ },
314
+ "node_modules/undici": {
315
+ "version": "6.21.3",
316
+ "resolved": "https://registry.npmmirror.com/undici/-/undici-6.21.3.tgz",
317
+ "integrity": "sha512-gBLkYIlEnSp8pFbT64yFgGE6UIB9tAkhukC23PmMDCe5Nd+cRqKxSjw5y54MK2AZMgZfJWMaNE4nYUHgi1XEOw==",
318
+ "license": "MIT",
319
+ "engines": {
320
+ "node": ">=18.17"
321
+ }
322
+ },
323
+ "node_modules/undici-types": {
324
+ "version": "6.21.0",
325
+ "resolved": "https://registry.npmmirror.com/undici-types/-/undici-types-6.21.0.tgz",
326
+ "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
327
+ "license": "MIT"
328
+ },
329
+ "node_modules/ws": {
330
+ "version": "8.19.0",
331
+ "resolved": "https://registry.npmmirror.com/ws/-/ws-8.19.0.tgz",
332
+ "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==",
333
+ "license": "MIT",
334
+ "engines": {
335
+ "node": ">=10.0.0"
336
+ },
337
+ "peerDependencies": {
338
+ "bufferutil": "^4.0.1",
339
+ "utf-8-validate": ">=5.0.2"
340
+ },
341
+ "peerDependenciesMeta": {
342
+ "bufferutil": {
343
+ "optional": true
344
+ },
345
+ "utf-8-validate": {
346
+ "optional": true
347
+ }
348
+ }
349
+ },
350
+ "node_modules/zod": {
351
+ "version": "4.3.6",
352
+ "resolved": "https://registry.npmmirror.com/zod/-/zod-4.3.6.tgz",
353
+ "integrity": "sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==",
354
+ "license": "MIT",
355
+ "funding": {
356
+ "url": "https://github.com/sponsors/colinhacks"
357
+ }
358
+ }
359
+ }
360
+ }
@@ -0,0 +1,38 @@
1
+ {
2
+ "name": "@dobby.ai/connector-discord",
3
+ "version": "0.1.2",
4
+ "private": false,
5
+ "type": "module",
6
+ "description": "Built-in Discord connector extension package",
7
+ "main": "./index.js",
8
+ "scripts": {
9
+ "build": "tsc -p tsconfig.json",
10
+ "check": "tsc -p tsconfig.json --noEmit",
11
+ "prepack": "npm run build"
12
+ },
13
+ "dependencies": {
14
+ "discord.js": "^14.22.1",
15
+ "zod": "^4.3.6"
16
+ },
17
+ "peerDependencies": {
18
+ "@dobby.ai/plugin-sdk": "^0.1.0"
19
+ },
20
+ "peerDependenciesMeta": {
21
+ "@dobby.ai/plugin-sdk": {
22
+ "optional": true
23
+ }
24
+ },
25
+ "devDependencies": {
26
+ "@dobby.ai/plugin-sdk": "file:../plugin-sdk",
27
+ "@types/node": "^22.10.5",
28
+ "typescript": "^5.9.2"
29
+ },
30
+ "files": [
31
+ "index.js",
32
+ "dist/",
33
+ "dobby.manifest.json"
34
+ ],
35
+ "publishConfig": {
36
+ "access": "public"
37
+ }
38
+ }