@useconductor/conductor 1.0.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 (504) hide show
  1. package/.claude-plugin/marketplace.json +33 -0
  2. package/.claude-plugin/plugin.json +23 -0
  3. package/.eslintrc.json +23 -0
  4. package/.gitattributes +6 -0
  5. package/.github/FUNDING.yml +15 -0
  6. package/.github/ISSUE_TEMPLATE/bug_report.yml +91 -0
  7. package/.github/ISSUE_TEMPLATE/config.yml +8 -0
  8. package/.github/ISSUE_TEMPLATE/feature_request.yml +63 -0
  9. package/.github/ISSUE_TEMPLATE/plugin_request.yml +71 -0
  10. package/.github/README.md +13 -0
  11. package/.github/workflows/README.md +22 -0
  12. package/.github/workflows/auto-release.yml +112 -0
  13. package/.github/workflows/ci.yml +49 -0
  14. package/.github/workflows/claude-code-review.yml +44 -0
  15. package/.github/workflows/claude.yml +36 -0
  16. package/.github/workflows/sync-install.yml +47 -0
  17. package/.mcp.json +9 -0
  18. package/.prettierrc.json +7 -0
  19. package/C.png +0 -0
  20. package/CHANGELOG.md +74 -0
  21. package/CLAUDE.md +118 -0
  22. package/CONTRIBUTING.md +231 -0
  23. package/LICENSE +201 -0
  24. package/README.md +179 -0
  25. package/SECURITY.md +47 -0
  26. package/commands/conductor-setup.md +11 -0
  27. package/commands/conductor-status.md +7 -0
  28. package/dist/ai/base.d.ts +44 -0
  29. package/dist/ai/base.d.ts.map +1 -0
  30. package/dist/ai/base.js +47 -0
  31. package/dist/ai/base.js.map +1 -0
  32. package/dist/ai/claude.d.ts +11 -0
  33. package/dist/ai/claude.d.ts.map +1 -0
  34. package/dist/ai/claude.js +149 -0
  35. package/dist/ai/claude.js.map +1 -0
  36. package/dist/ai/gemini.d.ts +15 -0
  37. package/dist/ai/gemini.d.ts.map +1 -0
  38. package/dist/ai/gemini.js +156 -0
  39. package/dist/ai/gemini.js.map +1 -0
  40. package/dist/ai/maestro.d.ts +22 -0
  41. package/dist/ai/maestro.d.ts.map +1 -0
  42. package/dist/ai/maestro.js +142 -0
  43. package/dist/ai/maestro.js.map +1 -0
  44. package/dist/ai/manager.d.ts +47 -0
  45. package/dist/ai/manager.d.ts.map +1 -0
  46. package/dist/ai/manager.js +450 -0
  47. package/dist/ai/manager.js.map +1 -0
  48. package/dist/ai/ollama.d.ts +16 -0
  49. package/dist/ai/ollama.d.ts.map +1 -0
  50. package/dist/ai/ollama.js +151 -0
  51. package/dist/ai/ollama.js.map +1 -0
  52. package/dist/ai/openai.d.ts +11 -0
  53. package/dist/ai/openai.d.ts.map +1 -0
  54. package/dist/ai/openai.js +132 -0
  55. package/dist/ai/openai.js.map +1 -0
  56. package/dist/ai/openrouter.d.ts +11 -0
  57. package/dist/ai/openrouter.d.ts.map +1 -0
  58. package/dist/ai/openrouter.js +139 -0
  59. package/dist/ai/openrouter.js.map +1 -0
  60. package/dist/bot/slack.d.ts +17 -0
  61. package/dist/bot/slack.d.ts.map +1 -0
  62. package/dist/bot/slack.js +144 -0
  63. package/dist/bot/slack.js.map +1 -0
  64. package/dist/bot/telegram.d.ts +19 -0
  65. package/dist/bot/telegram.d.ts.map +1 -0
  66. package/dist/bot/telegram.js +157 -0
  67. package/dist/bot/telegram.js.map +1 -0
  68. package/dist/cli/commands/ai.d.ts +4 -0
  69. package/dist/cli/commands/ai.d.ts.map +1 -0
  70. package/dist/cli/commands/ai.js +161 -0
  71. package/dist/cli/commands/ai.js.map +1 -0
  72. package/dist/cli/commands/doctor.d.ts +18 -0
  73. package/dist/cli/commands/doctor.d.ts.map +1 -0
  74. package/dist/cli/commands/doctor.js +213 -0
  75. package/dist/cli/commands/doctor.js.map +1 -0
  76. package/dist/cli/commands/init.d.ts +15 -0
  77. package/dist/cli/commands/init.d.ts.map +1 -0
  78. package/dist/cli/commands/init.js +281 -0
  79. package/dist/cli/commands/init.js.map +1 -0
  80. package/dist/cli/commands/install.d.ts +16 -0
  81. package/dist/cli/commands/install.d.ts.map +1 -0
  82. package/dist/cli/commands/install.js +750 -0
  83. package/dist/cli/commands/install.js.map +1 -0
  84. package/dist/cli/commands/lifecycle.d.ts +4 -0
  85. package/dist/cli/commands/lifecycle.d.ts.map +1 -0
  86. package/dist/cli/commands/lifecycle.js +84 -0
  87. package/dist/cli/commands/lifecycle.js.map +1 -0
  88. package/dist/cli/commands/marketplace.d.ts +13 -0
  89. package/dist/cli/commands/marketplace.d.ts.map +1 -0
  90. package/dist/cli/commands/marketplace.js +197 -0
  91. package/dist/cli/commands/marketplace.js.map +1 -0
  92. package/dist/cli/commands/mcp.d.ts +6 -0
  93. package/dist/cli/commands/mcp.d.ts.map +1 -0
  94. package/dist/cli/commands/mcp.js +83 -0
  95. package/dist/cli/commands/mcp.js.map +1 -0
  96. package/dist/cli/commands/onboard.d.ts +10 -0
  97. package/dist/cli/commands/onboard.d.ts.map +1 -0
  98. package/dist/cli/commands/onboard.js +207 -0
  99. package/dist/cli/commands/onboard.js.map +1 -0
  100. package/dist/cli/commands/plugin-create.d.ts +13 -0
  101. package/dist/cli/commands/plugin-create.d.ts.map +1 -0
  102. package/dist/cli/commands/plugin-create.js +122 -0
  103. package/dist/cli/commands/plugin-create.js.map +1 -0
  104. package/dist/cli/commands/plugins.d.ts +5 -0
  105. package/dist/cli/commands/plugins.d.ts.map +1 -0
  106. package/dist/cli/commands/plugins.js +30 -0
  107. package/dist/cli/commands/plugins.js.map +1 -0
  108. package/dist/cli/commands/release.d.ts +13 -0
  109. package/dist/cli/commands/release.d.ts.map +1 -0
  110. package/dist/cli/commands/release.js +243 -0
  111. package/dist/cli/commands/release.js.map +1 -0
  112. package/dist/cli/commands/telegram.d.ts +3 -0
  113. package/dist/cli/commands/telegram.d.ts.map +1 -0
  114. package/dist/cli/commands/telegram.js +20 -0
  115. package/dist/cli/commands/telegram.js.map +1 -0
  116. package/dist/cli/index.d.ts +3 -0
  117. package/dist/cli/index.d.ts.map +1 -0
  118. package/dist/cli/index.js +402 -0
  119. package/dist/cli/index.js.map +1 -0
  120. package/dist/config/oauth.d.ts +8 -0
  121. package/dist/config/oauth.d.ts.map +1 -0
  122. package/dist/config/oauth.js +13 -0
  123. package/dist/config/oauth.js.map +1 -0
  124. package/dist/core/audit.d.ts +91 -0
  125. package/dist/core/audit.d.ts.map +1 -0
  126. package/dist/core/audit.js +233 -0
  127. package/dist/core/audit.js.map +1 -0
  128. package/dist/core/circuit-breaker.d.ts +56 -0
  129. package/dist/core/circuit-breaker.d.ts.map +1 -0
  130. package/dist/core/circuit-breaker.js +107 -0
  131. package/dist/core/circuit-breaker.js.map +1 -0
  132. package/dist/core/conductor.d.ts +44 -0
  133. package/dist/core/conductor.d.ts.map +1 -0
  134. package/dist/core/conductor.js +200 -0
  135. package/dist/core/conductor.js.map +1 -0
  136. package/dist/core/config.d.ts +66 -0
  137. package/dist/core/config.d.ts.map +1 -0
  138. package/dist/core/config.js +86 -0
  139. package/dist/core/config.js.map +1 -0
  140. package/dist/core/database.d.ts +59 -0
  141. package/dist/core/database.d.ts.map +1 -0
  142. package/dist/core/database.js +342 -0
  143. package/dist/core/database.js.map +1 -0
  144. package/dist/core/errors.d.ts +231 -0
  145. package/dist/core/errors.d.ts.map +1 -0
  146. package/dist/core/errors.js +254 -0
  147. package/dist/core/errors.js.map +1 -0
  148. package/dist/core/health.d.ts +72 -0
  149. package/dist/core/health.d.ts.map +1 -0
  150. package/dist/core/health.js +116 -0
  151. package/dist/core/health.js.map +1 -0
  152. package/dist/core/interfaces.d.ts +62 -0
  153. package/dist/core/interfaces.d.ts.map +1 -0
  154. package/dist/core/interfaces.js +8 -0
  155. package/dist/core/interfaces.js.map +1 -0
  156. package/dist/core/logger.d.ts +15 -0
  157. package/dist/core/logger.d.ts.map +1 -0
  158. package/dist/core/logger.js +30 -0
  159. package/dist/core/logger.js.map +1 -0
  160. package/dist/core/rbac.d.ts +132 -0
  161. package/dist/core/rbac.d.ts.map +1 -0
  162. package/dist/core/rbac.js +230 -0
  163. package/dist/core/rbac.js.map +1 -0
  164. package/dist/core/retry.d.ts +22 -0
  165. package/dist/core/retry.d.ts.map +1 -0
  166. package/dist/core/retry.js +41 -0
  167. package/dist/core/retry.js.map +1 -0
  168. package/dist/core/webhooks.d.ts +92 -0
  169. package/dist/core/webhooks.d.ts.map +1 -0
  170. package/dist/core/webhooks.js +176 -0
  171. package/dist/core/webhooks.js.map +1 -0
  172. package/dist/core/zero-config.d.ts +22 -0
  173. package/dist/core/zero-config.d.ts.map +1 -0
  174. package/dist/core/zero-config.js +59 -0
  175. package/dist/core/zero-config.js.map +1 -0
  176. package/dist/dashboard/cli.d.ts +6 -0
  177. package/dist/dashboard/cli.d.ts.map +1 -0
  178. package/dist/dashboard/cli.js +42 -0
  179. package/dist/dashboard/cli.js.map +1 -0
  180. package/dist/dashboard/index.html +3426 -0
  181. package/dist/dashboard/server.d.ts +7 -0
  182. package/dist/dashboard/server.d.ts.map +1 -0
  183. package/dist/dashboard/server.js +1427 -0
  184. package/dist/dashboard/server.js.map +1 -0
  185. package/dist/mcp/server.d.ts +27 -0
  186. package/dist/mcp/server.d.ts.map +1 -0
  187. package/dist/mcp/server.js +380 -0
  188. package/dist/mcp/server.js.map +1 -0
  189. package/dist/mcp/tools/misc.d.ts +15 -0
  190. package/dist/mcp/tools/misc.d.ts.map +1 -0
  191. package/dist/mcp/tools/misc.js +49 -0
  192. package/dist/mcp/tools/misc.js.map +1 -0
  193. package/dist/plugins/builtin/calculator.d.ts +11 -0
  194. package/dist/plugins/builtin/calculator.d.ts.map +1 -0
  195. package/dist/plugins/builtin/calculator.js +166 -0
  196. package/dist/plugins/builtin/calculator.js.map +1 -0
  197. package/dist/plugins/builtin/colors.d.ts +15 -0
  198. package/dist/plugins/builtin/colors.d.ts.map +1 -0
  199. package/dist/plugins/builtin/colors.js +193 -0
  200. package/dist/plugins/builtin/colors.js.map +1 -0
  201. package/dist/plugins/builtin/cron.d.ts +40 -0
  202. package/dist/plugins/builtin/cron.d.ts.map +1 -0
  203. package/dist/plugins/builtin/cron.js +578 -0
  204. package/dist/plugins/builtin/cron.js.map +1 -0
  205. package/dist/plugins/builtin/crypto.d.ts +11 -0
  206. package/dist/plugins/builtin/crypto.d.ts.map +1 -0
  207. package/dist/plugins/builtin/crypto.js +83 -0
  208. package/dist/plugins/builtin/crypto.js.map +1 -0
  209. package/dist/plugins/builtin/database.d.ts +29 -0
  210. package/dist/plugins/builtin/database.d.ts.map +1 -0
  211. package/dist/plugins/builtin/database.js +230 -0
  212. package/dist/plugins/builtin/database.js.map +1 -0
  213. package/dist/plugins/builtin/docker.d.ts +12 -0
  214. package/dist/plugins/builtin/docker.d.ts.map +1 -0
  215. package/dist/plugins/builtin/docker.js +436 -0
  216. package/dist/plugins/builtin/docker.js.map +1 -0
  217. package/dist/plugins/builtin/fun.d.ts +11 -0
  218. package/dist/plugins/builtin/fun.d.ts.map +1 -0
  219. package/dist/plugins/builtin/fun.js +114 -0
  220. package/dist/plugins/builtin/fun.js.map +1 -0
  221. package/dist/plugins/builtin/gcal.d.ts +38 -0
  222. package/dist/plugins/builtin/gcal.d.ts.map +1 -0
  223. package/dist/plugins/builtin/gcal.js +280 -0
  224. package/dist/plugins/builtin/gcal.js.map +1 -0
  225. package/dist/plugins/builtin/gdrive.d.ts +26 -0
  226. package/dist/plugins/builtin/gdrive.d.ts.map +1 -0
  227. package/dist/plugins/builtin/gdrive.js +295 -0
  228. package/dist/plugins/builtin/gdrive.js.map +1 -0
  229. package/dist/plugins/builtin/github-actions.d.ts +38 -0
  230. package/dist/plugins/builtin/github-actions.d.ts.map +1 -0
  231. package/dist/plugins/builtin/github-actions.js +629 -0
  232. package/dist/plugins/builtin/github-actions.js.map +1 -0
  233. package/dist/plugins/builtin/github.d.ts +26 -0
  234. package/dist/plugins/builtin/github.d.ts.map +1 -0
  235. package/dist/plugins/builtin/github.js +800 -0
  236. package/dist/plugins/builtin/github.js.map +1 -0
  237. package/dist/plugins/builtin/gmail.d.ts +50 -0
  238. package/dist/plugins/builtin/gmail.d.ts.map +1 -0
  239. package/dist/plugins/builtin/gmail.js +445 -0
  240. package/dist/plugins/builtin/gmail.js.map +1 -0
  241. package/dist/plugins/builtin/hash.d.ts +11 -0
  242. package/dist/plugins/builtin/hash.d.ts.map +1 -0
  243. package/dist/plugins/builtin/hash.js +95 -0
  244. package/dist/plugins/builtin/hash.js.map +1 -0
  245. package/dist/plugins/builtin/homekit.d.ts +53 -0
  246. package/dist/plugins/builtin/homekit.d.ts.map +1 -0
  247. package/dist/plugins/builtin/homekit.js +341 -0
  248. package/dist/plugins/builtin/homekit.js.map +1 -0
  249. package/dist/plugins/builtin/index.d.ts +4 -0
  250. package/dist/plugins/builtin/index.d.ts.map +1 -0
  251. package/dist/plugins/builtin/index.js +96 -0
  252. package/dist/plugins/builtin/index.js.map +1 -0
  253. package/dist/plugins/builtin/jira.d.ts +50 -0
  254. package/dist/plugins/builtin/jira.d.ts.map +1 -0
  255. package/dist/plugins/builtin/jira.js +353 -0
  256. package/dist/plugins/builtin/jira.js.map +1 -0
  257. package/dist/plugins/builtin/linear.d.ts +35 -0
  258. package/dist/plugins/builtin/linear.d.ts.map +1 -0
  259. package/dist/plugins/builtin/linear.js +397 -0
  260. package/dist/plugins/builtin/linear.js.map +1 -0
  261. package/dist/plugins/builtin/lumen.d.ts +21 -0
  262. package/dist/plugins/builtin/lumen.d.ts.map +1 -0
  263. package/dist/plugins/builtin/lumen.js +404 -0
  264. package/dist/plugins/builtin/lumen.js.map +1 -0
  265. package/dist/plugins/builtin/memory.d.ts +22 -0
  266. package/dist/plugins/builtin/memory.d.ts.map +1 -0
  267. package/dist/plugins/builtin/memory.js +184 -0
  268. package/dist/plugins/builtin/memory.js.map +1 -0
  269. package/dist/plugins/builtin/n8n.d.ts +60 -0
  270. package/dist/plugins/builtin/n8n.d.ts.map +1 -0
  271. package/dist/plugins/builtin/n8n.js +519 -0
  272. package/dist/plugins/builtin/n8n.js.map +1 -0
  273. package/dist/plugins/builtin/network.d.ts +11 -0
  274. package/dist/plugins/builtin/network.d.ts.map +1 -0
  275. package/dist/plugins/builtin/network.js +88 -0
  276. package/dist/plugins/builtin/network.js.map +1 -0
  277. package/dist/plugins/builtin/notes.d.ts +47 -0
  278. package/dist/plugins/builtin/notes.d.ts.map +1 -0
  279. package/dist/plugins/builtin/notes.js +641 -0
  280. package/dist/plugins/builtin/notes.js.map +1 -0
  281. package/dist/plugins/builtin/notion.d.ts +47 -0
  282. package/dist/plugins/builtin/notion.d.ts.map +1 -0
  283. package/dist/plugins/builtin/notion.js +317 -0
  284. package/dist/plugins/builtin/notion.js.map +1 -0
  285. package/dist/plugins/builtin/shell.d.ts +12 -0
  286. package/dist/plugins/builtin/shell.d.ts.map +1 -0
  287. package/dist/plugins/builtin/shell.js +310 -0
  288. package/dist/plugins/builtin/shell.js.map +1 -0
  289. package/dist/plugins/builtin/slack.d.ts +31 -0
  290. package/dist/plugins/builtin/slack.d.ts.map +1 -0
  291. package/dist/plugins/builtin/slack.js +295 -0
  292. package/dist/plugins/builtin/slack.js.map +1 -0
  293. package/dist/plugins/builtin/spotify.d.ts +55 -0
  294. package/dist/plugins/builtin/spotify.d.ts.map +1 -0
  295. package/dist/plugins/builtin/spotify.js +623 -0
  296. package/dist/plugins/builtin/spotify.js.map +1 -0
  297. package/dist/plugins/builtin/stripe.d.ts +35 -0
  298. package/dist/plugins/builtin/stripe.d.ts.map +1 -0
  299. package/dist/plugins/builtin/stripe.js +376 -0
  300. package/dist/plugins/builtin/stripe.js.map +1 -0
  301. package/dist/plugins/builtin/system.d.ts +11 -0
  302. package/dist/plugins/builtin/system.d.ts.map +1 -0
  303. package/dist/plugins/builtin/system.js +91 -0
  304. package/dist/plugins/builtin/system.js.map +1 -0
  305. package/dist/plugins/builtin/text-tools.d.ts +11 -0
  306. package/dist/plugins/builtin/text-tools.d.ts.map +1 -0
  307. package/dist/plugins/builtin/text-tools.js +146 -0
  308. package/dist/plugins/builtin/text-tools.js.map +1 -0
  309. package/dist/plugins/builtin/timezone.d.ts +13 -0
  310. package/dist/plugins/builtin/timezone.d.ts.map +1 -0
  311. package/dist/plugins/builtin/timezone.js +164 -0
  312. package/dist/plugins/builtin/timezone.js.map +1 -0
  313. package/dist/plugins/builtin/todoist.d.ts +49 -0
  314. package/dist/plugins/builtin/todoist.d.ts.map +1 -0
  315. package/dist/plugins/builtin/todoist.js +540 -0
  316. package/dist/plugins/builtin/todoist.js.map +1 -0
  317. package/dist/plugins/builtin/translate.d.ts +11 -0
  318. package/dist/plugins/builtin/translate.d.ts.map +1 -0
  319. package/dist/plugins/builtin/translate.js +42 -0
  320. package/dist/plugins/builtin/translate.js.map +1 -0
  321. package/dist/plugins/builtin/url-tools.d.ts +11 -0
  322. package/dist/plugins/builtin/url-tools.d.ts.map +1 -0
  323. package/dist/plugins/builtin/url-tools.js +70 -0
  324. package/dist/plugins/builtin/url-tools.js.map +1 -0
  325. package/dist/plugins/builtin/vercel.d.ts +55 -0
  326. package/dist/plugins/builtin/vercel.d.ts.map +1 -0
  327. package/dist/plugins/builtin/vercel.js +514 -0
  328. package/dist/plugins/builtin/vercel.js.map +1 -0
  329. package/dist/plugins/builtin/weather.d.ts +13 -0
  330. package/dist/plugins/builtin/weather.d.ts.map +1 -0
  331. package/dist/plugins/builtin/weather.js +103 -0
  332. package/dist/plugins/builtin/weather.js.map +1 -0
  333. package/dist/plugins/builtin/x.d.ts +54 -0
  334. package/dist/plugins/builtin/x.d.ts.map +1 -0
  335. package/dist/plugins/builtin/x.js +402 -0
  336. package/dist/plugins/builtin/x.js.map +1 -0
  337. package/dist/plugins/manager.d.ts +77 -0
  338. package/dist/plugins/manager.d.ts.map +1 -0
  339. package/dist/plugins/manager.js +141 -0
  340. package/dist/plugins/manager.js.map +1 -0
  341. package/dist/plugins/validation.d.ts +18 -0
  342. package/dist/plugins/validation.d.ts.map +1 -0
  343. package/dist/plugins/validation.js +81 -0
  344. package/dist/plugins/validation.js.map +1 -0
  345. package/dist/security/auth.d.ts +23 -0
  346. package/dist/security/auth.d.ts.map +1 -0
  347. package/dist/security/auth.js +56 -0
  348. package/dist/security/auth.js.map +1 -0
  349. package/dist/security/keychain.d.ts +60 -0
  350. package/dist/security/keychain.d.ts.map +1 -0
  351. package/dist/security/keychain.js +213 -0
  352. package/dist/security/keychain.js.map +1 -0
  353. package/dist/utils/google-auth.d.ts +21 -0
  354. package/dist/utils/google-auth.d.ts.map +1 -0
  355. package/dist/utils/google-auth.js +135 -0
  356. package/dist/utils/google-auth.js.map +1 -0
  357. package/dist/utils/retry.d.ts +5 -0
  358. package/dist/utils/retry.d.ts.map +1 -0
  359. package/dist/utils/retry.js +34 -0
  360. package/dist/utils/retry.js.map +1 -0
  361. package/docs/README.md +13 -0
  362. package/docs/api.md +210 -0
  363. package/docs/getting-started.md +100 -0
  364. package/docs/plugins.md +306 -0
  365. package/docs-site/.vitepress/config.ts +59 -0
  366. package/docs-site/README.md +12 -0
  367. package/docs-site/index.md +30 -0
  368. package/eslint.config.js +29 -0
  369. package/install.ps1 +334 -0
  370. package/install.sh +1119 -0
  371. package/local-install.sh +304 -0
  372. package/package.json +90 -0
  373. package/packages/README.md +11 -0
  374. package/packages/plugin-sdk/README.md +12 -0
  375. package/packages/plugin-sdk/package.json +22 -0
  376. package/packages/plugin-sdk/src/README.md +11 -0
  377. package/packages/plugin-sdk/src/index.ts +191 -0
  378. package/sdks/README.md +26 -0
  379. package/sdks/csharp/ConductorClient.cs +65 -0
  380. package/sdks/csharp/README.md +11 -0
  381. package/sdks/go/README.md +11 -0
  382. package/sdks/go/conductor.go +257 -0
  383. package/sdks/java/ConductorClient.java +27 -0
  384. package/sdks/java/README.md +11 -0
  385. package/sdks/php/README.md +11 -0
  386. package/sdks/php/src/Client.php +72 -0
  387. package/sdks/python/README.md +12 -0
  388. package/sdks/python/conductor/__init__.py +227 -0
  389. package/sdks/python/pyproject.toml +30 -0
  390. package/sdks/ruby/README.md +11 -0
  391. package/sdks/ruby/lib/conductor.rb +46 -0
  392. package/sdks/rust/Cargo.toml +14 -0
  393. package/sdks/rust/README.md +11 -0
  394. package/sdks/swift/README.md +11 -0
  395. package/sdks/swift/Sources/Conductor/ConductorClient.swift +65 -0
  396. package/skills/conductor-mcp/SKILL.md +38 -0
  397. package/src/README.md +20 -0
  398. package/src/ai/README.md +18 -0
  399. package/src/ai/base.ts +93 -0
  400. package/src/ai/claude.ts +162 -0
  401. package/src/ai/gemini.ts +188 -0
  402. package/src/ai/maestro.ts +168 -0
  403. package/src/ai/manager.ts +537 -0
  404. package/src/ai/ollama.ts +186 -0
  405. package/src/ai/openai.ts +147 -0
  406. package/src/ai/openrouter.ts +152 -0
  407. package/src/bot/README.md +12 -0
  408. package/src/bot/slack.ts +164 -0
  409. package/src/bot/telegram.ts +185 -0
  410. package/src/cli/README.md +24 -0
  411. package/src/cli/commands/README.md +20 -0
  412. package/src/cli/commands/ai.ts +170 -0
  413. package/src/cli/commands/doctor.ts +221 -0
  414. package/src/cli/commands/init.ts +348 -0
  415. package/src/cli/commands/install.ts +792 -0
  416. package/src/cli/commands/lifecycle.ts +95 -0
  417. package/src/cli/commands/marketplace.ts +253 -0
  418. package/src/cli/commands/mcp.ts +92 -0
  419. package/src/cli/commands/onboard.ts +248 -0
  420. package/src/cli/commands/plugin-create.ts +130 -0
  421. package/src/cli/commands/plugins.ts +36 -0
  422. package/src/cli/commands/release.ts +251 -0
  423. package/src/cli/commands/telegram.ts +25 -0
  424. package/src/cli/index.ts +450 -0
  425. package/src/config/README.md +11 -0
  426. package/src/config/oauth.ts +26 -0
  427. package/src/core/README.md +22 -0
  428. package/src/core/audit.ts +291 -0
  429. package/src/core/circuit-breaker.ts +129 -0
  430. package/src/core/conductor.ts +240 -0
  431. package/src/core/config.ts +149 -0
  432. package/src/core/database.ts +411 -0
  433. package/src/core/errors.ts +275 -0
  434. package/src/core/health.ts +159 -0
  435. package/src/core/interfaces.ts +75 -0
  436. package/src/core/logger.ts +33 -0
  437. package/src/core/rbac.ts +321 -0
  438. package/src/core/retry.ts +61 -0
  439. package/src/core/webhooks.ts +234 -0
  440. package/src/core/zero-config.ts +72 -0
  441. package/src/dashboard/README.md +15 -0
  442. package/src/dashboard/cli.ts +48 -0
  443. package/src/dashboard/index.html +3426 -0
  444. package/src/dashboard/server.ts +1544 -0
  445. package/src/mcp/README.md +20 -0
  446. package/src/mcp/server.ts +475 -0
  447. package/src/mcp/tools/README.md +11 -0
  448. package/src/mcp/tools/misc.ts +61 -0
  449. package/src/plugins/README.md +28 -0
  450. package/src/plugins/builtin/README.md +23 -0
  451. package/src/plugins/builtin/calculator.ts +178 -0
  452. package/src/plugins/builtin/colors.ts +201 -0
  453. package/src/plugins/builtin/cron.ts +649 -0
  454. package/src/plugins/builtin/crypto.ts +85 -0
  455. package/src/plugins/builtin/database.ts +235 -0
  456. package/src/plugins/builtin/docker.ts +426 -0
  457. package/src/plugins/builtin/fun.ts +118 -0
  458. package/src/plugins/builtin/gcal.ts +305 -0
  459. package/src/plugins/builtin/gdrive.ts +326 -0
  460. package/src/plugins/builtin/github-actions.ts +666 -0
  461. package/src/plugins/builtin/github.ts +912 -0
  462. package/src/plugins/builtin/gmail.ts +492 -0
  463. package/src/plugins/builtin/hash.ts +98 -0
  464. package/src/plugins/builtin/homekit.ts +389 -0
  465. package/src/plugins/builtin/index.ts +116 -0
  466. package/src/plugins/builtin/jira.ts +380 -0
  467. package/src/plugins/builtin/linear.ts +448 -0
  468. package/src/plugins/builtin/lumen.ts +497 -0
  469. package/src/plugins/builtin/memory.ts +200 -0
  470. package/src/plugins/builtin/n8n.ts +565 -0
  471. package/src/plugins/builtin/network.ts +92 -0
  472. package/src/plugins/builtin/notes.ts +689 -0
  473. package/src/plugins/builtin/notion.ts +348 -0
  474. package/src/plugins/builtin/shell.ts +334 -0
  475. package/src/plugins/builtin/slack.ts +327 -0
  476. package/src/plugins/builtin/spotify.ts +665 -0
  477. package/src/plugins/builtin/stripe.ts +388 -0
  478. package/src/plugins/builtin/system.ts +93 -0
  479. package/src/plugins/builtin/text-tools.ts +150 -0
  480. package/src/plugins/builtin/timezone.ts +173 -0
  481. package/src/plugins/builtin/todoist.ts +625 -0
  482. package/src/plugins/builtin/translate.ts +47 -0
  483. package/src/plugins/builtin/url-tools.ts +73 -0
  484. package/src/plugins/builtin/vercel.ts +546 -0
  485. package/src/plugins/builtin/weather.ts +112 -0
  486. package/src/plugins/builtin/x.ts +440 -0
  487. package/src/plugins/manager.ts +213 -0
  488. package/src/plugins/validation.ts +94 -0
  489. package/src/security/README.md +12 -0
  490. package/src/security/auth.ts +72 -0
  491. package/src/security/keychain.ts +226 -0
  492. package/src/utils/README.md +12 -0
  493. package/src/utils/google-auth.ts +159 -0
  494. package/src/utils/retry.ts +41 -0
  495. package/test-all.mjs +1256 -0
  496. package/test.mjs +633 -0
  497. package/tests/README.md +19 -0
  498. package/tests/calculator.test.ts +54 -0
  499. package/tests/docker.test.ts +42 -0
  500. package/tests/load.test.ts +129 -0
  501. package/tests/mcp.test.ts +14 -0
  502. package/tests/shell.test.ts +42 -0
  503. package/tsconfig.json +21 -0
  504. package/vitest.config.ts +14 -0
@@ -0,0 +1,65 @@
1
+ using System;
2
+ using System.Diagnostics;
3
+ using System.Text;
4
+ using System.Text.Json;
5
+ using System.Threading;
6
+ using System.Threading.Tasks;
7
+
8
+ namespace Conductor;
9
+
10
+ /// <summary>
11
+ /// Conductor .NET SDK — The AI Tool Hub
12
+ ///
13
+ /// dotnet add package Conductor.NET
14
+ ///
15
+ /// var client = new ConductorClient();
16
+ /// var result = await client.Tools.CallAsync("shell_list_dir", new { path = "." });
17
+ /// Console.WriteLine(result.Data);
18
+ /// </summary>
19
+ public class ConductorClient : IAsyncDisposable
20
+ {
21
+ private readonly string _command;
22
+ private readonly string[] _args;
23
+ private readonly TimeSpan _timeout;
24
+ private readonly int _maxRetries;
25
+ private Process? _process;
26
+ private int _requestId;
27
+ private readonly object _lock = new();
28
+
29
+ public ConductorClient(
30
+ string command = "conductor",
31
+ string[]? args = null,
32
+ TimeSpan? timeout = null,
33
+ int maxRetries = 3)
34
+ {
35
+ _command = command;
36
+ _args = args ?? new[] { "mcp", "start" };
37
+ _timeout = timeout ?? TimeSpan.FromSeconds(60);
38
+ _maxRetries = maxRetries;
39
+ }
40
+
41
+ public ToolClient Tools => new(this);
42
+
43
+ public async ValueTask DisposeAsync()
44
+ {
45
+ if (_process != null && !_process.HasExited)
46
+ {
47
+ _process.Kill();
48
+ await _process.WaitForExitAsync();
49
+ }
50
+ }
51
+ }
52
+
53
+ public class ToolClient
54
+ {
55
+ private readonly ConductorClient _client;
56
+ internal ToolClient(ConductorClient client) => _client = client;
57
+
58
+ public async Task<ToolResult> CallAsync(string name, object? args = null, CancellationToken ct = default)
59
+ {
60
+ // TODO: Implement stdio MCP protocol client
61
+ throw new NotImplementedException();
62
+ }
63
+ }
64
+
65
+ public record ToolResult(bool Success, object? Data, string? Error = null, int? LatencyMs = null);
@@ -0,0 +1,11 @@
1
+ # sdks/csharp
2
+
3
+ C# SDK for Conductor. Provides a .NET client for interacting with the Conductor MCP server.
4
+
5
+ ## Contents
6
+
7
+ - `ConductorClient.cs` - C# client implementation
8
+
9
+ ## Architecture
10
+
11
+ This SDK enables .NET applications to communicate with Conductor via the MCP protocol. Use the client class to invoke Conductor tools from C# services, ASP.NET applications, or Blazor apps.
@@ -0,0 +1,11 @@
1
+ # sdks/go
2
+
3
+ Go SDK for Conductor. Provides a Go client for interacting with the Conductor MCP server.
4
+
5
+ ## Contents
6
+
7
+ - `conductor.go` - Go client implementation
8
+
9
+ ## Architecture
10
+
11
+ This SDK enables Go applications to communicate with Conductor via the MCP protocol. Import the package to use Conductor tools from Go services and CLI applications.
@@ -0,0 +1,257 @@
1
+ // Package conductor provides a Go client for the Conductor AI Tool Hub.
2
+ //
3
+ // Conductor is a single MCP server that gives any AI agent access to 100+ tools.
4
+ // This SDK allows Go programs to call Conductor tools programmatically.
5
+ //
6
+ // Installation:
7
+ //
8
+ // go get github.com/conductor/conductor/sdks/go
9
+ //
10
+ // Usage:
11
+ //
12
+ // client, err := conductor.New()
13
+ // if err != nil {
14
+ // log.Fatal(err)
15
+ // }
16
+ // defer client.Close()
17
+ //
18
+ // result, err := client.Tools.Call(ctx, "shell_list_dir", map[string]any{"path": "."})
19
+ // if err != nil {
20
+ // log.Fatal(err)
21
+ // }
22
+ // fmt.Println(result)
23
+ package conductor
24
+
25
+ import (
26
+ "bufio"
27
+ "context"
28
+ "encoding/json"
29
+ "fmt"
30
+ "io"
31
+ "os/exec"
32
+ "sync"
33
+ "time"
34
+ )
35
+
36
+ // Client is a Conductor MCP client.
37
+ type Client struct {
38
+ command string
39
+ args []string
40
+ timeout time.Duration
41
+ maxRetries int
42
+
43
+ mu sync.Mutex
44
+ cmd *exec.Cmd
45
+ stdin io.WriteCloser
46
+ stdout *bufio.Reader
47
+ reqID int
48
+ }
49
+
50
+ // ToolResult is the result of a tool call.
51
+ type ToolResult struct {
52
+ Success bool
53
+ Data any
54
+ Error string
55
+ LatencyMs int
56
+ }
57
+
58
+ // New creates a new Conductor client.
59
+ func New(opts ...Option) (*Client, error) {
60
+ c := &Client{
61
+ command: "conductor",
62
+ args: []string{"mcp", "start"},
63
+ timeout: 60 * time.Second,
64
+ maxRetries: 3,
65
+ }
66
+ for _, opt := range opts {
67
+ opt(c)
68
+ }
69
+ return c, nil
70
+ }
71
+
72
+ // Option configures a Client.
73
+ type Option func(*Client)
74
+
75
+ // WithCommand sets the conductor binary path.
76
+ func WithCommand(cmd string) Option {
77
+ return func(c *Client) { c.command = cmd }
78
+ }
79
+
80
+ // WithTimeout sets the default timeout.
81
+ func WithTimeout(d time.Duration) Option {
82
+ return func(c *Client) { c.timeout = d }
83
+ }
84
+
85
+ // WithMaxRetries sets the maximum retry attempts.
86
+ func WithMaxRetries(n int) Option {
87
+ return func(c *Client) { c.maxRetries = n }
88
+ }
89
+
90
+ // ensureProcess starts the Conductor subprocess if not already running.
91
+ func (c *Client) ensureProcess() error {
92
+ if c.cmd != nil && c.cmd.Process != nil && c.cmd.ProcessState == nil {
93
+ return nil
94
+ }
95
+
96
+ cmd := exec.Command(c.command, c.args...)
97
+ stdin, err := cmd.StdinPipe()
98
+ if err != nil {
99
+ return err
100
+ }
101
+ stdout, err := cmd.StdoutPipe()
102
+ if err != nil {
103
+ return err
104
+ }
105
+ cmd.Stderr = nil // MCP protocol uses stdout; stderr is for logs
106
+
107
+ if err := cmd.Start(); err != nil {
108
+ return fmt.Errorf("conductor: failed to start: %w", err)
109
+ }
110
+
111
+ c.cmd = cmd
112
+ c.stdin = stdin
113
+ c.stdout = bufio.NewReader(stdout)
114
+ return nil
115
+ }
116
+
117
+ // sendRequest sends a JSON-RPC request and returns the result.
118
+ func (c *Client) sendRequest(ctx context.Context, method string, params map[string]any) (any, error) {
119
+ var lastErr error
120
+
121
+ for attempt := 0; attempt < c.maxRetries; attempt++ {
122
+ if attempt > 0 {
123
+ delay := time.Duration(1<<uint(attempt-1)) * 500 * time.Millisecond
124
+ if delay > 5*time.Second {
125
+ delay = 5 * time.Second
126
+ }
127
+ select {
128
+ case <-ctx.Done():
129
+ return nil, ctx.Err()
130
+ case <-time.After(delay):
131
+ }
132
+ }
133
+
134
+ c.mu.Lock()
135
+ if err := c.ensureProcess(); err != nil {
136
+ c.mu.Unlock()
137
+ lastErr = err
138
+ continue
139
+ }
140
+
141
+ c.reqID++
142
+ reqID := c.reqID
143
+ c.mu.Unlock()
144
+
145
+ start := time.Now()
146
+ ctx, cancel := context.WithTimeout(ctx, c.timeout)
147
+ defer cancel()
148
+
149
+ req := map[string]any{
150
+ "jsonrpc": "2.0",
151
+ "id": reqID,
152
+ "method": method,
153
+ "params": params,
154
+ }
155
+
156
+ data, err := json.Marshal(req)
157
+ if err != nil {
158
+ lastErr = err
159
+ continue
160
+ }
161
+
162
+ if _, err := c.stdin.Write(append(data, '\n')); err != nil {
163
+ c.mu.Lock()
164
+ c.cmd = nil
165
+ c.mu.Unlock()
166
+ lastErr = fmt.Errorf("conductor: write failed: %w", err)
167
+ continue
168
+ }
169
+
170
+ done := make(chan any, 1)
171
+ go func() {
172
+ line, err := c.stdout.ReadString('\n')
173
+ if err != nil {
174
+ done <- err
175
+ return
176
+ }
177
+ var resp map[string]any
178
+ if err := json.Unmarshal([]byte(line), &resp); err != nil {
179
+ done <- err
180
+ return
181
+ }
182
+ if errVal, ok := resp["error"]; ok {
183
+ if errMap, ok := errVal.(map[string]any); ok {
184
+ done <- fmt.Errorf("conductor: %v", errMap["message"])
185
+ return
186
+ }
187
+ }
188
+ done <- resp["result"]
189
+ }()
190
+
191
+ select {
192
+ case <-ctx.Done():
193
+ lastErr = ctx.Err()
194
+ case result := <-done:
195
+ if err, ok := result.(error); ok {
196
+ lastErr = err
197
+ continue
198
+ }
199
+ _ = time.Since(start).Milliseconds() // latency tracked
200
+ return result, nil
201
+ }
202
+ }
203
+
204
+ return nil, fmt.Errorf("conductor: failed after %d retries: %w", c.maxRetries, lastErr)
205
+ }
206
+
207
+ // Close stops the Conductor subprocess.
208
+ func (c *Client) Close() error {
209
+ c.mu.Lock()
210
+ defer c.mu.Unlock()
211
+ if c.cmd != nil && c.cmd.Process != nil {
212
+ return c.cmd.Process.Kill()
213
+ }
214
+ return nil
215
+ }
216
+
217
+ // Tools provides access to Conductor tools.
218
+ func (c *Client) Tools() *ToolClient {
219
+ return &ToolClient{client: c}
220
+ }
221
+
222
+ // ToolClient calls Conductor tools.
223
+ type ToolClient struct {
224
+ client *Client
225
+ }
226
+
227
+ // Call calls a named tool with the given arguments.
228
+ func (t *ToolClient) Call(ctx context.Context, name string, args map[string]any) (*ToolResult, error) {
229
+ result, err := t.client.sendRequest(ctx, "tools/call", map[string]any{
230
+ "name": name,
231
+ "arguments": args,
232
+ })
233
+ if err != nil {
234
+ return &ToolResult{Success: false, Error: err.Error()}, err
235
+ }
236
+ return &ToolResult{Success: true, Data: result}, nil
237
+ }
238
+
239
+ // List returns all available tools.
240
+ func (t *ToolClient) List(ctx context.Context) ([]map[string]any, error) {
241
+ result, err := t.client.sendRequest(ctx, "tools/list", nil)
242
+ if err != nil {
243
+ return nil, err
244
+ }
245
+ if m, ok := result.(map[string]any); ok {
246
+ if tools, ok := m["tools"].([]any); ok {
247
+ out := make([]map[string]any, len(tools))
248
+ for i, tool := range tools {
249
+ if m, ok := tool.(map[string]any); ok {
250
+ out[i] = m
251
+ }
252
+ }
253
+ return out, nil
254
+ }
255
+ }
256
+ return nil, nil
257
+ }
@@ -0,0 +1,27 @@
1
+ package com.conductor;
2
+
3
+ /**
4
+ * Conductor Java SDK — The AI Tool Hub
5
+ *
6
+ * Connect to Conductor MCP server and call 100+ tools from Java.
7
+ *
8
+ * Maven:
9
+ * <dependency>
10
+ * <groupId>dev.conductor</groupId>
11
+ * <artifactId>conductor-java</artifactId>
12
+ * <version>1.0.0</version>
13
+ * </dependency>
14
+ *
15
+ * Usage:
16
+ * ConductorClient client = new ConductorClient();
17
+ * ToolResult result = client.tools().call("shell_list_dir", Map.of("path", "."));
18
+ * System.out.println(result.getData());
19
+ */
20
+ public class ConductorClient {
21
+ // TODO: Implement stdio MCP protocol client
22
+ // - Use ProcessBuilder to start "conductor mcp start"
23
+ // - Send JSON-RPC requests over stdin
24
+ // - Read JSON-RPC responses from stdout
25
+ // - Implement retry with exponential backoff
26
+ // - Implement circuit breaker pattern
27
+ }
@@ -0,0 +1,11 @@
1
+ # sdks/java
2
+
3
+ Java SDK for Conductor. Provides a Java client for interacting with the Conductor MCP server.
4
+
5
+ ## Contents
6
+
7
+ - `ConductorClient.java` - Java client implementation
8
+
9
+ ## Architecture
10
+
11
+ This SDK enables Java applications to communicate with Conductor via the MCP protocol. Use the client class to invoke Conductor tools from Java services, Spring Boot applications, or Android apps.
@@ -0,0 +1,11 @@
1
+ # sdks/php
2
+
3
+ PHP SDK for Conductor. Provides a PHP client for interacting with the Conductor MCP server.
4
+
5
+ ## Contents
6
+
7
+ - `src/` - PHP package source code
8
+
9
+ ## Architecture
10
+
11
+ This SDK enables PHP applications to communicate with Conductor via the MCP protocol. Use as a Composer package to invoke Conductor tools from PHP scripts, Laravel applications, or Symfony services.
@@ -0,0 +1,72 @@
1
+ <?php
2
+
3
+ /**
4
+ * Conductor PHP SDK — The AI Tool Hub
5
+ *
6
+ * composer require conductor/conductor-php
7
+ *
8
+ * use Conductor\Client;
9
+ *
10
+ * $client = new Client();
11
+ * $result = $client->tools()->call('shell_list_dir', ['path' => '.']);
12
+ * echo json_encode($result->data);
13
+ */
14
+
15
+ namespace Conductor;
16
+
17
+ class Client {
18
+ private string $command;
19
+ private array $args;
20
+ private int $timeout;
21
+ private int $maxRetries;
22
+ private $process;
23
+
24
+ public function __construct(
25
+ string $command = 'conductor',
26
+ array $args = ['mcp', 'start'],
27
+ int $timeout = 60,
28
+ int $maxRetries = 3
29
+ ) {
30
+ $this->command = $command;
31
+ $this->args = $args;
32
+ $this->timeout = $timeout;
33
+ $this->maxRetries = $maxRetries;
34
+ }
35
+
36
+ public function tools(): ToolClient {
37
+ return new ToolClient($this);
38
+ }
39
+
40
+ public function close(): void {
41
+ if ($this->process) {
42
+ proc_terminate($this->process);
43
+ $this->process = null;
44
+ }
45
+ }
46
+
47
+ public function __destruct() {
48
+ $this->close();
49
+ }
50
+ }
51
+
52
+ class ToolClient {
53
+ private Client $client;
54
+
55
+ public function __construct(Client $client) {
56
+ $this->client = $client;
57
+ }
58
+
59
+ public function call(string $name, array $args = []): ToolResult {
60
+ // TODO: Implement stdio MCP protocol client
61
+ throw new \RuntimeException('Not implemented yet');
62
+ }
63
+ }
64
+
65
+ class ToolResult {
66
+ public function __construct(
67
+ public readonly bool $success,
68
+ public readonly mixed $data = null,
69
+ public readonly ?string $error = null,
70
+ public readonly ?int $latencyMs = null,
71
+ ) {}
72
+ }
@@ -0,0 +1,12 @@
1
+ # sdks/python
2
+
3
+ Python SDK for Conductor. Provides a Python client for interacting with the Conductor MCP server.
4
+
5
+ ## Contents
6
+
7
+ - `pyproject.toml` - Python package manifest and dependencies
8
+ - `conductor/` - Python package source code
9
+
10
+ ## Architecture
11
+
12
+ This SDK enables Python applications to communicate with Conductor via the MCP protocol. Install as a pip package to use Conductor tools from Python scripts, Jupyter notebooks, or AI agent frameworks.