nomoreide 0.2.0 → 0.3.2

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 (624) hide show
  1. package/README.md +12 -9
  2. package/bin/nomoreide.js +82 -0
  3. package/package.json +24 -132
  4. package/dist/cli/agents.d.ts +0 -2
  5. package/dist/cli/agents.js +0 -43
  6. package/dist/cli/agents.js.map +0 -1
  7. package/dist/cli/commands.d.ts +0 -11
  8. package/dist/cli/commands.js +0 -235
  9. package/dist/cli/commands.js.map +0 -1
  10. package/dist/cli/daemon.d.ts +0 -15
  11. package/dist/cli/daemon.js +0 -139
  12. package/dist/cli/daemon.js.map +0 -1
  13. package/dist/cli/database.d.ts +0 -2
  14. package/dist/cli/database.js +0 -145
  15. package/dist/cli/database.js.map +0 -1
  16. package/dist/cli/errors.d.ts +0 -2
  17. package/dist/cli/errors.js +0 -3
  18. package/dist/cli/errors.js.map +0 -1
  19. package/dist/cli/flags.d.ts +0 -1
  20. package/dist/cli/flags.js +0 -19
  21. package/dist/cli/flags.js.map +0 -1
  22. package/dist/cli/git.d.ts +0 -2
  23. package/dist/cli/git.js +0 -113
  24. package/dist/cli/git.js.map +0 -1
  25. package/dist/cli/profile.d.ts +0 -2
  26. package/dist/cli/profile.js +0 -171
  27. package/dist/cli/profile.js.map +0 -1
  28. package/dist/core/agent-context.d.ts +0 -9
  29. package/dist/core/agent-context.js +0 -43
  30. package/dist/core/agent-context.js.map +0 -1
  31. package/dist/core/agent-env/antigravity-reader.d.ts +0 -7
  32. package/dist/core/agent-env/antigravity-reader.js +0 -86
  33. package/dist/core/agent-env/antigravity-reader.js.map +0 -1
  34. package/dist/core/agent-env/availability.d.ts +0 -6
  35. package/dist/core/agent-env/availability.js +0 -79
  36. package/dist/core/agent-env/availability.js.map +0 -1
  37. package/dist/core/agent-env/claude-reader.d.ts +0 -7
  38. package/dist/core/agent-env/claude-reader.js +0 -101
  39. package/dist/core/agent-env/claude-reader.js.map +0 -1
  40. package/dist/core/agent-env/codex-reader.d.ts +0 -11
  41. package/dist/core/agent-env/codex-reader.js +0 -164
  42. package/dist/core/agent-env/codex-reader.js.map +0 -1
  43. package/dist/core/agent-env/index.d.ts +0 -9
  44. package/dist/core/agent-env/index.js +0 -29
  45. package/dist/core/agent-env/index.js.map +0 -1
  46. package/dist/core/agent-env/managed-plugins.d.ts +0 -18
  47. package/dist/core/agent-env/managed-plugins.js +0 -68
  48. package/dist/core/agent-env/managed-plugins.js.map +0 -1
  49. package/dist/core/agent-env/plugin-reader.d.ts +0 -9
  50. package/dist/core/agent-env/plugin-reader.js +0 -174
  51. package/dist/core/agent-env/plugin-reader.js.map +0 -1
  52. package/dist/core/agent-env/shared.d.ts +0 -26
  53. package/dist/core/agent-env/shared.js +0 -116
  54. package/dist/core/agent-env/shared.js.map +0 -1
  55. package/dist/core/agent-env/types.d.ts +0 -66
  56. package/dist/core/agent-env/types.js +0 -7
  57. package/dist/core/agent-env/types.js.map +0 -1
  58. package/dist/core/agent-env-actions.d.ts +0 -117
  59. package/dist/core/agent-env-actions.js +0 -273
  60. package/dist/core/agent-env-actions.js.map +0 -1
  61. package/dist/core/agent-env-plugin-uninstall.d.ts +0 -11
  62. package/dist/core/agent-env-plugin-uninstall.js +0 -189
  63. package/dist/core/agent-env-plugin-uninstall.js.map +0 -1
  64. package/dist/core/agent-env-writers.d.ts +0 -71
  65. package/dist/core/agent-env-writers.js +0 -632
  66. package/dist/core/agent-env-writers.js.map +0 -1
  67. package/dist/core/agent-profiles/apply.d.ts +0 -57
  68. package/dist/core/agent-profiles/apply.js +0 -209
  69. package/dist/core/agent-profiles/apply.js.map +0 -1
  70. package/dist/core/agent-profiles/builtin.d.ts +0 -8
  71. package/dist/core/agent-profiles/builtin.js +0 -33
  72. package/dist/core/agent-profiles/builtin.js.map +0 -1
  73. package/dist/core/agent-profiles/credentials.d.ts +0 -26
  74. package/dist/core/agent-profiles/credentials.js +0 -151
  75. package/dist/core/agent-profiles/credentials.js.map +0 -1
  76. package/dist/core/agent-profiles/debug-setup.d.ts +0 -18
  77. package/dist/core/agent-profiles/debug-setup.js +0 -237
  78. package/dist/core/agent-profiles/debug-setup.js.map +0 -1
  79. package/dist/core/agent-profiles/index.d.ts +0 -18
  80. package/dist/core/agent-profiles/index.js +0 -19
  81. package/dist/core/agent-profiles/index.js.map +0 -1
  82. package/dist/core/agent-profiles/plugin-apply.d.ts +0 -16
  83. package/dist/core/agent-profiles/plugin-apply.js +0 -383
  84. package/dist/core/agent-profiles/plugin-apply.js.map +0 -1
  85. package/dist/core/agent-profiles/plugin-bundle.d.ts +0 -6
  86. package/dist/core/agent-profiles/plugin-bundle.js +0 -32
  87. package/dist/core/agent-profiles/plugin-bundle.js.map +0 -1
  88. package/dist/core/agent-profiles/publication.d.ts +0 -105
  89. package/dist/core/agent-profiles/publication.js +0 -126
  90. package/dist/core/agent-profiles/publication.js.map +0 -1
  91. package/dist/core/agent-profiles/registry-auth.d.ts +0 -25
  92. package/dist/core/agent-profiles/registry-auth.js +0 -78
  93. package/dist/core/agent-profiles/registry-auth.js.map +0 -1
  94. package/dist/core/agent-profiles/registry-client.d.ts +0 -98
  95. package/dist/core/agent-profiles/registry-client.js +0 -109
  96. package/dist/core/agent-profiles/registry-client.js.map +0 -1
  97. package/dist/core/agent-profiles/registry-config.d.ts +0 -62
  98. package/dist/core/agent-profiles/registry-config.js +0 -221
  99. package/dist/core/agent-profiles/registry-config.js.map +0 -1
  100. package/dist/core/agent-profiles/registry-transfer.d.ts +0 -42
  101. package/dist/core/agent-profiles/registry-transfer.js +0 -133
  102. package/dist/core/agent-profiles/registry-transfer.js.map +0 -1
  103. package/dist/core/agent-profiles/store.d.ts +0 -62
  104. package/dist/core/agent-profiles/store.js +0 -479
  105. package/dist/core/agent-profiles/store.js.map +0 -1
  106. package/dist/core/agent-profiles/transfer.d.ts +0 -27
  107. package/dist/core/agent-profiles/transfer.js +0 -359
  108. package/dist/core/agent-profiles/transfer.js.map +0 -1
  109. package/dist/core/agent-profiles/types.d.ts +0 -364
  110. package/dist/core/agent-profiles/types.js +0 -79
  111. package/dist/core/agent-profiles/types.js.map +0 -1
  112. package/dist/core/agent-runtime.d.ts +0 -114
  113. package/dist/core/agent-runtime.js +0 -494
  114. package/dist/core/agent-runtime.js.map +0 -1
  115. package/dist/core/agent-sessions.d.ts +0 -46
  116. package/dist/core/agent-sessions.js +0 -109
  117. package/dist/core/agent-sessions.js.map +0 -1
  118. package/dist/core/agent-settings.d.ts +0 -31
  119. package/dist/core/agent-settings.js +0 -129
  120. package/dist/core/agent-settings.js.map +0 -1
  121. package/dist/core/agent-terminal.d.ts +0 -22
  122. package/dist/core/agent-terminal.js +0 -62
  123. package/dist/core/agent-terminal.js.map +0 -1
  124. package/dist/core/agent-transcripts.d.ts +0 -29
  125. package/dist/core/agent-transcripts.js +0 -281
  126. package/dist/core/agent-transcripts.js.map +0 -1
  127. package/dist/core/app-settings.d.ts +0 -74
  128. package/dist/core/app-settings.js +0 -118
  129. package/dist/core/app-settings.js.map +0 -1
  130. package/dist/core/app-version.d.ts +0 -2
  131. package/dist/core/app-version.js +0 -16
  132. package/dist/core/app-version.js.map +0 -1
  133. package/dist/core/approval-broker.d.ts +0 -29
  134. package/dist/core/approval-broker.js +0 -48
  135. package/dist/core/approval-broker.js.map +0 -1
  136. package/dist/core/claude-settings.d.ts +0 -18
  137. package/dist/core/claude-settings.js +0 -48
  138. package/dist/core/claude-settings.js.map +0 -1
  139. package/dist/core/cloudflare-actions.d.ts +0 -90
  140. package/dist/core/cloudflare-actions.js +0 -178
  141. package/dist/core/cloudflare-actions.js.map +0 -1
  142. package/dist/core/cloudflare-auth.d.ts +0 -61
  143. package/dist/core/cloudflare-auth.js +0 -149
  144. package/dist/core/cloudflare-auth.js.map +0 -1
  145. package/dist/core/cloudflare-context.d.ts +0 -2
  146. package/dist/core/cloudflare-context.js +0 -106
  147. package/dist/core/cloudflare-context.js.map +0 -1
  148. package/dist/core/cloudflare-manager.d.ts +0 -258
  149. package/dist/core/cloudflare-manager.js +0 -414
  150. package/dist/core/cloudflare-manager.js.map +0 -1
  151. package/dist/core/cloudflare-provider.d.ts +0 -64
  152. package/dist/core/cloudflare-provider.js +0 -348
  153. package/dist/core/cloudflare-provider.js.map +0 -1
  154. package/dist/core/config-files.d.ts +0 -27
  155. package/dist/core/config-files.js +0 -154
  156. package/dist/core/config-files.js.map +0 -1
  157. package/dist/core/config-store.d.ts +0 -181
  158. package/dist/core/config-store.js +0 -1026
  159. package/dist/core/config-store.js.map +0 -1
  160. package/dist/core/context-library.d.ts +0 -53
  161. package/dist/core/context-library.js +0 -605
  162. package/dist/core/context-library.js.map +0 -1
  163. package/dist/core/context-types.d.ts +0 -83
  164. package/dist/core/context-types.js +0 -9
  165. package/dist/core/context-types.js.map +0 -1
  166. package/dist/core/daemon-client.d.ts +0 -84
  167. package/dist/core/daemon-client.js +0 -156
  168. package/dist/core/daemon-client.js.map +0 -1
  169. package/dist/core/daemon-lifecycle.d.ts +0 -59
  170. package/dist/core/daemon-lifecycle.js +0 -147
  171. package/dist/core/daemon-lifecycle.js.map +0 -1
  172. package/dist/core/db/catalog.d.ts +0 -57
  173. package/dist/core/db/catalog.js +0 -38
  174. package/dist/core/db/catalog.js.map +0 -1
  175. package/dist/core/db/data-masking.d.ts +0 -3
  176. package/dist/core/db/data-masking.js +0 -14
  177. package/dist/core/db/data-masking.js.map +0 -1
  178. package/dist/core/db/driver.d.ts +0 -151
  179. package/dist/core/db/driver.js +0 -209
  180. package/dist/core/db/driver.js.map +0 -1
  181. package/dist/core/db/export.d.ts +0 -17
  182. package/dist/core/db/export.js +0 -67
  183. package/dist/core/db/export.js.map +0 -1
  184. package/dist/core/db/mysql-driver.d.ts +0 -33
  185. package/dist/core/db/mysql-driver.js +0 -364
  186. package/dist/core/db/mysql-driver.js.map +0 -1
  187. package/dist/core/db/postgres-driver.d.ts +0 -34
  188. package/dist/core/db/postgres-driver.js +0 -430
  189. package/dist/core/db/postgres-driver.js.map +0 -1
  190. package/dist/core/db/sqlite-driver.d.ts +0 -30
  191. package/dist/core/db/sqlite-driver.js +0 -301
  192. package/dist/core/db/sqlite-driver.js.map +0 -1
  193. package/dist/core/db-peek.d.ts +0 -99
  194. package/dist/core/db-peek.js +0 -322
  195. package/dist/core/db-peek.js.map +0 -1
  196. package/dist/core/db-write.d.ts +0 -45
  197. package/dist/core/db-write.js +0 -190
  198. package/dist/core/db-write.js.map +0 -1
  199. package/dist/core/docker-inspect.d.ts +0 -34
  200. package/dist/core/docker-inspect.js +0 -108
  201. package/dist/core/docker-inspect.js.map +0 -1
  202. package/dist/core/docker-resources.d.ts +0 -28
  203. package/dist/core/docker-resources.js +0 -59
  204. package/dist/core/docker-resources.js.map +0 -1
  205. package/dist/core/docker-service-runner.d.ts +0 -21
  206. package/dist/core/docker-service-runner.js +0 -80
  207. package/dist/core/docker-service-runner.js.map +0 -1
  208. package/dist/core/docker-stats.d.ts +0 -24
  209. package/dist/core/docker-stats.js +0 -76
  210. package/dist/core/docker-stats.js.map +0 -1
  211. package/dist/core/docker.d.ts +0 -75
  212. package/dist/core/docker.js +0 -219
  213. package/dist/core/docker.js.map +0 -1
  214. package/dist/core/env-file.d.ts +0 -24
  215. package/dist/core/env-file.js +0 -123
  216. package/dist/core/env-file.js.map +0 -1
  217. package/dist/core/env-runtime.d.ts +0 -32
  218. package/dist/core/env-runtime.js +0 -42
  219. package/dist/core/env-runtime.js.map +0 -1
  220. package/dist/core/error-inbox.d.ts +0 -91
  221. package/dist/core/error-inbox.js +0 -292
  222. package/dist/core/error-inbox.js.map +0 -1
  223. package/dist/core/extensions.d.ts +0 -78
  224. package/dist/core/extensions.js +0 -41
  225. package/dist/core/extensions.js.map +0 -1
  226. package/dist/core/external-terminal.d.ts +0 -60
  227. package/dist/core/external-terminal.js +0 -429
  228. package/dist/core/external-terminal.js.map +0 -1
  229. package/dist/core/fix-loop.d.ts +0 -55
  230. package/dist/core/fix-loop.js +0 -73
  231. package/dist/core/fix-loop.js.map +0 -1
  232. package/dist/core/git-actions.d.ts +0 -69
  233. package/dist/core/git-actions.js +0 -161
  234. package/dist/core/git-actions.js.map +0 -1
  235. package/dist/core/git-graph-layout.d.ts +0 -34
  236. package/dist/core/git-graph-layout.js +0 -94
  237. package/dist/core/git-graph-layout.js.map +0 -1
  238. package/dist/core/git-identity.d.ts +0 -78
  239. package/dist/core/git-identity.js +0 -178
  240. package/dist/core/git-identity.js.map +0 -1
  241. package/dist/core/git-manager.d.ts +0 -129
  242. package/dist/core/git-manager.js +0 -509
  243. package/dist/core/git-manager.js.map +0 -1
  244. package/dist/core/git-worktrees.d.ts +0 -35
  245. package/dist/core/git-worktrees.js +0 -142
  246. package/dist/core/git-worktrees.js.map +0 -1
  247. package/dist/core/github-auth.d.ts +0 -28
  248. package/dist/core/github-auth.js +0 -134
  249. package/dist/core/github-auth.js.map +0 -1
  250. package/dist/core/github-context.d.ts +0 -12
  251. package/dist/core/github-context.js +0 -36
  252. package/dist/core/github-context.js.map +0 -1
  253. package/dist/core/github-manager.d.ts +0 -230
  254. package/dist/core/github-manager.js +0 -324
  255. package/dist/core/github-manager.js.map +0 -1
  256. package/dist/core/host-metrics.d.ts +0 -41
  257. package/dist/core/host-metrics.js +0 -93
  258. package/dist/core/host-metrics.js.map +0 -1
  259. package/dist/core/http-inspector.d.ts +0 -20
  260. package/dist/core/http-inspector.js +0 -106
  261. package/dist/core/http-inspector.js.map +0 -1
  262. package/dist/core/jetbrains-import.d.ts +0 -85
  263. package/dist/core/jetbrains-import.js +0 -599
  264. package/dist/core/jetbrains-import.js.map +0 -1
  265. package/dist/core/log-sources.d.ts +0 -21
  266. package/dist/core/log-sources.js +0 -219
  267. package/dist/core/log-sources.js.map +0 -1
  268. package/dist/core/log-store.d.ts +0 -33
  269. package/dist/core/log-store.js +0 -94
  270. package/dist/core/log-store.js.map +0 -1
  271. package/dist/core/log-volume.d.ts +0 -41
  272. package/dist/core/log-volume.js +0 -81
  273. package/dist/core/log-volume.js.map +0 -1
  274. package/dist/core/mcp-auth.d.ts +0 -27
  275. package/dist/core/mcp-auth.js +0 -90
  276. package/dist/core/mcp-auth.js.map +0 -1
  277. package/dist/core/metrics-store.d.ts +0 -74
  278. package/dist/core/metrics-store.js +0 -187
  279. package/dist/core/metrics-store.js.map +0 -1
  280. package/dist/core/one-time-skills.d.ts +0 -27
  281. package/dist/core/one-time-skills.js +0 -185
  282. package/dist/core/one-time-skills.js.map +0 -1
  283. package/dist/core/port-utils.d.ts +0 -23
  284. package/dist/core/port-utils.js +0 -83
  285. package/dist/core/port-utils.js.map +0 -1
  286. package/dist/core/process-manager.d.ts +0 -99
  287. package/dist/core/process-manager.js +0 -738
  288. package/dist/core/process-manager.js.map +0 -1
  289. package/dist/core/process-tree.d.ts +0 -17
  290. package/dist/core/process-tree.js +0 -64
  291. package/dist/core/process-tree.js.map +0 -1
  292. package/dist/core/project-overview.d.ts +0 -52
  293. package/dist/core/project-overview.js +0 -122
  294. package/dist/core/project-overview.js.map +0 -1
  295. package/dist/core/providers/api-base.d.ts +0 -24
  296. package/dist/core/providers/api-base.js +0 -44
  297. package/dist/core/providers/api-base.js.map +0 -1
  298. package/dist/core/providers/credentials.d.ts +0 -93
  299. package/dist/core/providers/credentials.js +0 -88
  300. package/dist/core/providers/credentials.js.map +0 -1
  301. package/dist/core/providers/deploy-provider.d.ts +0 -327
  302. package/dist/core/providers/deploy-provider.js +0 -25
  303. package/dist/core/providers/deploy-provider.js.map +0 -1
  304. package/dist/core/providers/egress.d.ts +0 -58
  305. package/dist/core/providers/egress.js +0 -124
  306. package/dist/core/providers/egress.js.map +0 -1
  307. package/dist/core/providers/host-bridge.d.ts +0 -20
  308. package/dist/core/providers/host-bridge.js +0 -57
  309. package/dist/core/providers/host-bridge.js.map +0 -1
  310. package/dist/core/providers/host-provider.d.ts +0 -160
  311. package/dist/core/providers/host-provider.js +0 -2
  312. package/dist/core/providers/host-provider.js.map +0 -1
  313. package/dist/core/providers/oauth.d.ts +0 -97
  314. package/dist/core/providers/oauth.js +0 -238
  315. package/dist/core/providers/oauth.js.map +0 -1
  316. package/dist/core/providers/project-resolution.d.ts +0 -81
  317. package/dist/core/providers/project-resolution.js +0 -101
  318. package/dist/core/providers/project-resolution.js.map +0 -1
  319. package/dist/core/providers/registry.d.ts +0 -73
  320. package/dist/core/providers/registry.js +0 -53
  321. package/dist/core/providers/registry.js.map +0 -1
  322. package/dist/core/providers/strings.d.ts +0 -95
  323. package/dist/core/providers/strings.js +0 -59
  324. package/dist/core/providers/strings.js.map +0 -1
  325. package/dist/core/public-config.d.ts +0 -18
  326. package/dist/core/public-config.js +0 -76
  327. package/dist/core/public-config.js.map +0 -1
  328. package/dist/core/read-only-files.d.ts +0 -28
  329. package/dist/core/read-only-files.js +0 -93
  330. package/dist/core/read-only-files.js.map +0 -1
  331. package/dist/core/repo-create.d.ts +0 -11
  332. package/dist/core/repo-create.js +0 -54
  333. package/dist/core/repo-create.js.map +0 -1
  334. package/dist/core/repo-match.d.ts +0 -12
  335. package/dist/core/repo-match.js +0 -40
  336. package/dist/core/repo-match.js.map +0 -1
  337. package/dist/core/repo-onboard.d.ts +0 -297
  338. package/dist/core/repo-onboard.js +0 -667
  339. package/dist/core/repo-onboard.js.map +0 -1
  340. package/dist/core/repro-bundle.d.ts +0 -30
  341. package/dist/core/repro-bundle.js +0 -116
  342. package/dist/core/repro-bundle.js.map +0 -1
  343. package/dist/core/service-graph.d.ts +0 -50
  344. package/dist/core/service-graph.js +0 -143
  345. package/dist/core/service-graph.js.map +0 -1
  346. package/dist/core/service-health.d.ts +0 -10
  347. package/dist/core/service-health.js +0 -46
  348. package/dist/core/service-health.js.map +0 -1
  349. package/dist/core/service-log-source.d.ts +0 -9
  350. package/dist/core/service-log-source.js +0 -49
  351. package/dist/core/service-log-source.js.map +0 -1
  352. package/dist/core/service-registry.d.ts +0 -52
  353. package/dist/core/service-registry.js +0 -101
  354. package/dist/core/service-registry.js.map +0 -1
  355. package/dist/core/snapshot-manager.d.ts +0 -62
  356. package/dist/core/snapshot-manager.js +0 -219
  357. package/dist/core/snapshot-manager.js.map +0 -1
  358. package/dist/core/ssh-servers.d.ts +0 -89
  359. package/dist/core/ssh-servers.js +0 -251
  360. package/dist/core/ssh-servers.js.map +0 -1
  361. package/dist/core/ssh-service-runner.d.ts +0 -7
  362. package/dist/core/ssh-service-runner.js +0 -36
  363. package/dist/core/ssh-service-runner.js.map +0 -1
  364. package/dist/core/ssh-setup.d.ts +0 -11
  365. package/dist/core/ssh-setup.js +0 -49
  366. package/dist/core/ssh-setup.js.map +0 -1
  367. package/dist/core/system-processes.d.ts +0 -29
  368. package/dist/core/system-processes.js +0 -119
  369. package/dist/core/system-processes.js.map +0 -1
  370. package/dist/core/terminal-manager.d.ts +0 -123
  371. package/dist/core/terminal-manager.js +0 -470
  372. package/dist/core/terminal-manager.js.map +0 -1
  373. package/dist/core/terminal-session.d.ts +0 -122
  374. package/dist/core/terminal-session.js +0 -242
  375. package/dist/core/terminal-session.js.map +0 -1
  376. package/dist/core/terminal-spawn.d.ts +0 -26
  377. package/dist/core/terminal-spawn.js +0 -63
  378. package/dist/core/terminal-spawn.js.map +0 -1
  379. package/dist/core/test-runner.d.ts +0 -69
  380. package/dist/core/test-runner.js +0 -199
  381. package/dist/core/test-runner.js.map +0 -1
  382. package/dist/core/timeline-store.d.ts +0 -20
  383. package/dist/core/timeline-store.js +0 -36
  384. package/dist/core/timeline-store.js.map +0 -1
  385. package/dist/core/tool-call-store.d.ts +0 -25
  386. package/dist/core/tool-call-store.js +0 -62
  387. package/dist/core/tool-call-store.js.map +0 -1
  388. package/dist/core/types.d.ts +0 -312
  389. package/dist/core/types.js +0 -2
  390. package/dist/core/types.js.map +0 -1
  391. package/dist/core/usage-history.d.ts +0 -81
  392. package/dist/core/usage-history.js +0 -149
  393. package/dist/core/usage-history.js.map +0 -1
  394. package/dist/core/vercel-actions.d.ts +0 -71
  395. package/dist/core/vercel-actions.js +0 -109
  396. package/dist/core/vercel-actions.js.map +0 -1
  397. package/dist/core/vercel-auth.d.ts +0 -40
  398. package/dist/core/vercel-auth.js +0 -88
  399. package/dist/core/vercel-auth.js.map +0 -1
  400. package/dist/core/vercel-context.d.ts +0 -2
  401. package/dist/core/vercel-context.js +0 -97
  402. package/dist/core/vercel-context.js.map +0 -1
  403. package/dist/core/vercel-manager.d.ts +0 -268
  404. package/dist/core/vercel-manager.js +0 -401
  405. package/dist/core/vercel-manager.js.map +0 -1
  406. package/dist/core/vercel-oauth.d.ts +0 -37
  407. package/dist/core/vercel-oauth.js +0 -57
  408. package/dist/core/vercel-oauth.js.map +0 -1
  409. package/dist/core/vercel-provider.d.ts +0 -23
  410. package/dist/core/vercel-provider.js +0 -276
  411. package/dist/core/vercel-provider.js.map +0 -1
  412. package/dist/core/vultr-actions.d.ts +0 -52
  413. package/dist/core/vultr-actions.js +0 -62
  414. package/dist/core/vultr-actions.js.map +0 -1
  415. package/dist/core/vultr-auth.d.ts +0 -32
  416. package/dist/core/vultr-auth.js +0 -54
  417. package/dist/core/vultr-auth.js.map +0 -1
  418. package/dist/core/vultr-context.d.ts +0 -2
  419. package/dist/core/vultr-context.js +0 -55
  420. package/dist/core/vultr-context.js.map +0 -1
  421. package/dist/core/vultr-manager.d.ts +0 -113
  422. package/dist/core/vultr-manager.js +0 -170
  423. package/dist/core/vultr-manager.js.map +0 -1
  424. package/dist/core/vultr-provider.d.ts +0 -69
  425. package/dist/core/vultr-provider.js +0 -226
  426. package/dist/core/vultr-provider.js.map +0 -1
  427. package/dist/core/workflow-triggers.d.ts +0 -139
  428. package/dist/core/workflow-triggers.js +0 -208
  429. package/dist/core/workflow-triggers.js.map +0 -1
  430. package/dist/core/workflows.d.ts +0 -290
  431. package/dist/core/workflows.js +0 -190
  432. package/dist/core/workflows.js.map +0 -1
  433. package/dist/index.d.ts +0 -2
  434. package/dist/index.js +0 -66
  435. package/dist/index.js.map +0 -1
  436. package/dist/mcp/server.d.ts +0 -37
  437. package/dist/mcp/server.js +0 -84
  438. package/dist/mcp/server.js.map +0 -1
  439. package/dist/mcp/tools/agent-env.d.ts +0 -9
  440. package/dist/mcp/tools/agent-env.js +0 -160
  441. package/dist/mcp/tools/agent-env.js.map +0 -1
  442. package/dist/mcp/tools/agent-profiles.d.ts +0 -9
  443. package/dist/mcp/tools/agent-profiles.js +0 -197
  444. package/dist/mcp/tools/agent-profiles.js.map +0 -1
  445. package/dist/mcp/tools/agent-registry.d.ts +0 -9
  446. package/dist/mcp/tools/agent-registry.js +0 -81
  447. package/dist/mcp/tools/agent-registry.js.map +0 -1
  448. package/dist/mcp/tools/agent.d.ts +0 -4
  449. package/dist/mcp/tools/agent.js +0 -29
  450. package/dist/mcp/tools/agent.js.map +0 -1
  451. package/dist/mcp/tools/context.d.ts +0 -36
  452. package/dist/mcp/tools/context.js +0 -69
  453. package/dist/mcp/tools/context.js.map +0 -1
  454. package/dist/mcp/tools/database.d.ts +0 -9
  455. package/dist/mcp/tools/database.js +0 -166
  456. package/dist/mcp/tools/database.js.map +0 -1
  457. package/dist/mcp/tools/docs.d.ts +0 -29
  458. package/dist/mcp/tools/docs.js +0 -134
  459. package/dist/mcp/tools/docs.js.map +0 -1
  460. package/dist/mcp/tools/errors.d.ts +0 -12
  461. package/dist/mcp/tools/errors.js +0 -47
  462. package/dist/mcp/tools/errors.js.map +0 -1
  463. package/dist/mcp/tools/git.d.ts +0 -4
  464. package/dist/mcp/tools/git.js +0 -209
  465. package/dist/mcp/tools/git.js.map +0 -1
  466. package/dist/mcp/tools/github.d.ts +0 -4
  467. package/dist/mcp/tools/github.js +0 -196
  468. package/dist/mcp/tools/github.js.map +0 -1
  469. package/dist/mcp/tools/index.d.ts +0 -36
  470. package/dist/mcp/tools/index.js +0 -61
  471. package/dist/mcp/tools/index.js.map +0 -1
  472. package/dist/mcp/tools/onboard.d.ts +0 -10
  473. package/dist/mcp/tools/onboard.js +0 -30
  474. package/dist/mcp/tools/onboard.js.map +0 -1
  475. package/dist/mcp/tools/provider.d.ts +0 -16
  476. package/dist/mcp/tools/provider.js +0 -110
  477. package/dist/mcp/tools/provider.js.map +0 -1
  478. package/dist/mcp/tools/services.d.ts +0 -13
  479. package/dist/mcp/tools/services.js +0 -204
  480. package/dist/mcp/tools/services.js.map +0 -1
  481. package/dist/mcp/tools/snapshots.d.ts +0 -8
  482. package/dist/mcp/tools/snapshots.js +0 -37
  483. package/dist/mcp/tools/snapshots.js.map +0 -1
  484. package/dist/mcp/tools/terminal.d.ts +0 -4
  485. package/dist/mcp/tools/terminal.js +0 -38
  486. package/dist/mcp/tools/terminal.js.map +0 -1
  487. package/dist/tui/app.d.ts +0 -22
  488. package/dist/tui/app.js +0 -138
  489. package/dist/tui/app.js.map +0 -1
  490. package/dist/web/agent-info.d.ts +0 -82
  491. package/dist/web/agent-info.js +0 -775
  492. package/dist/web/agent-info.js.map +0 -1
  493. package/dist/web/client/assets/SymbolsNerdFontMono-Regular-DDncdh2F.ttf +0 -0
  494. package/dist/web/client/assets/code-editor-TE0sjFGO.js +0 -30
  495. package/dist/web/client/assets/context-graph-B9MnBpp6.js +0 -7
  496. package/dist/web/client/assets/core-DhEqZVGG.js +0 -1
  497. package/dist/web/client/assets/event-BK_86lmQ.js +0 -1
  498. package/dist/web/client/assets/index-BhDAhmA1.js +0 -1
  499. package/dist/web/client/assets/index-CSo__8A6.css +0 -1
  500. package/dist/web/client/assets/index-DAJvBqn9.js +0 -352
  501. package/dist/web/client/assets/nomoreide-favicon-Ds7Tgj9p.svg +0 -24
  502. package/dist/web/client/assets/system-process-table-DetWu0Gj.js +0 -1
  503. package/dist/web/client/assets/window-DlR023_X.js +0 -1
  504. package/dist/web/client/index.html +0 -44
  505. package/dist/web/dashboard.d.ts +0 -61
  506. package/dist/web/dashboard.js +0 -221
  507. package/dist/web/dashboard.js.map +0 -1
  508. package/dist/web/directories.d.ts +0 -27
  509. package/dist/web/directories.js +0 -81
  510. package/dist/web/directories.js.map +0 -1
  511. package/dist/web/http-utils.d.ts +0 -13
  512. package/dist/web/http-utils.js +0 -72
  513. package/dist/web/http-utils.js.map +0 -1
  514. package/dist/web/routes/agent-chat-routes.d.ts +0 -3
  515. package/dist/web/routes/agent-chat-routes.js +0 -186
  516. package/dist/web/routes/agent-chat-routes.js.map +0 -1
  517. package/dist/web/routes/agent-env-routes.d.ts +0 -9
  518. package/dist/web/routes/agent-env-routes.js +0 -86
  519. package/dist/web/routes/agent-env-routes.js.map +0 -1
  520. package/dist/web/routes/agent-profile-routes.d.ts +0 -8
  521. package/dist/web/routes/agent-profile-routes.js +0 -211
  522. package/dist/web/routes/agent-profile-routes.js.map +0 -1
  523. package/dist/web/routes/agent-registry-routes.d.ts +0 -2
  524. package/dist/web/routes/agent-registry-routes.js +0 -375
  525. package/dist/web/routes/agent-registry-routes.js.map +0 -1
  526. package/dist/web/routes/agent-routes.d.ts +0 -3
  527. package/dist/web/routes/agent-routes.js +0 -73
  528. package/dist/web/routes/agent-routes.js.map +0 -1
  529. package/dist/web/routes/agent-settings-routes.d.ts +0 -8
  530. package/dist/web/routes/agent-settings-routes.js +0 -67
  531. package/dist/web/routes/agent-settings-routes.js.map +0 -1
  532. package/dist/web/routes/context-library-routes.d.ts +0 -2
  533. package/dist/web/routes/context-library-routes.js +0 -139
  534. package/dist/web/routes/context-library-routes.js.map +0 -1
  535. package/dist/web/routes/context.d.ts +0 -73
  536. package/dist/web/routes/context.js +0 -48
  537. package/dist/web/routes/context.js.map +0 -1
  538. package/dist/web/routes/dashboard-routes.d.ts +0 -3
  539. package/dist/web/routes/dashboard-routes.js +0 -47
  540. package/dist/web/routes/dashboard-routes.js.map +0 -1
  541. package/dist/web/routes/database-routes.d.ts +0 -3
  542. package/dist/web/routes/database-routes.js +0 -341
  543. package/dist/web/routes/database-routes.js.map +0 -1
  544. package/dist/web/routes/docker-routes.d.ts +0 -7
  545. package/dist/web/routes/docker-routes.js +0 -122
  546. package/dist/web/routes/docker-routes.js.map +0 -1
  547. package/dist/web/routes/errors-routes.d.ts +0 -3
  548. package/dist/web/routes/errors-routes.js +0 -77
  549. package/dist/web/routes/errors-routes.js.map +0 -1
  550. package/dist/web/routes/extensions-routes.d.ts +0 -14
  551. package/dist/web/routes/extensions-routes.js +0 -21
  552. package/dist/web/routes/extensions-routes.js.map +0 -1
  553. package/dist/web/routes/git-routes.d.ts +0 -3
  554. package/dist/web/routes/git-routes.js +0 -598
  555. package/dist/web/routes/git-routes.js.map +0 -1
  556. package/dist/web/routes/github-context.d.ts +0 -11
  557. package/dist/web/routes/github-context.js +0 -34
  558. package/dist/web/routes/github-context.js.map +0 -1
  559. package/dist/web/routes/github-routes.d.ts +0 -2
  560. package/dist/web/routes/github-routes.js +0 -699
  561. package/dist/web/routes/github-routes.js.map +0 -1
  562. package/dist/web/routes/host-routes.d.ts +0 -2
  563. package/dist/web/routes/host-routes.js +0 -188
  564. package/dist/web/routes/host-routes.js.map +0 -1
  565. package/dist/web/routes/index.d.ts +0 -10
  566. package/dist/web/routes/index.js +0 -72
  567. package/dist/web/routes/index.js.map +0 -1
  568. package/dist/web/routes/jetbrains-import-routes.d.ts +0 -2
  569. package/dist/web/routes/jetbrains-import-routes.js +0 -121
  570. package/dist/web/routes/jetbrains-import-routes.js.map +0 -1
  571. package/dist/web/routes/log-sources-routes.d.ts +0 -6
  572. package/dist/web/routes/log-sources-routes.js +0 -102
  573. package/dist/web/routes/log-sources-routes.js.map +0 -1
  574. package/dist/web/routes/metrics-routes.d.ts +0 -3
  575. package/dist/web/routes/metrics-routes.js +0 -60
  576. package/dist/web/routes/metrics-routes.js.map +0 -1
  577. package/dist/web/routes/onboard-routes.d.ts +0 -9
  578. package/dist/web/routes/onboard-routes.js +0 -146
  579. package/dist/web/routes/onboard-routes.js.map +0 -1
  580. package/dist/web/routes/overview-routes.d.ts +0 -2
  581. package/dist/web/routes/overview-routes.js +0 -36
  582. package/dist/web/routes/overview-routes.js.map +0 -1
  583. package/dist/web/routes/provider-routes.d.ts +0 -2
  584. package/dist/web/routes/provider-routes.js +0 -558
  585. package/dist/web/routes/provider-routes.js.map +0 -1
  586. package/dist/web/routes/service-routes.d.ts +0 -3
  587. package/dist/web/routes/service-routes.js +0 -511
  588. package/dist/web/routes/service-routes.js.map +0 -1
  589. package/dist/web/routes/settings-routes.d.ts +0 -2
  590. package/dist/web/routes/settings-routes.js +0 -151
  591. package/dist/web/routes/settings-routes.js.map +0 -1
  592. package/dist/web/routes/shell-routes.d.ts +0 -22
  593. package/dist/web/routes/shell-routes.js +0 -75
  594. package/dist/web/routes/shell-routes.js.map +0 -1
  595. package/dist/web/routes/skills-routes.d.ts +0 -2
  596. package/dist/web/routes/skills-routes.js +0 -49
  597. package/dist/web/routes/skills-routes.js.map +0 -1
  598. package/dist/web/routes/snapshot-routes.d.ts +0 -8
  599. package/dist/web/routes/snapshot-routes.js +0 -194
  600. package/dist/web/routes/snapshot-routes.js.map +0 -1
  601. package/dist/web/routes/ssh-server-routes.d.ts +0 -10
  602. package/dist/web/routes/ssh-server-routes.js +0 -163
  603. package/dist/web/routes/ssh-server-routes.js.map +0 -1
  604. package/dist/web/routes/terminal-routes.d.ts +0 -7
  605. package/dist/web/routes/terminal-routes.js +0 -313
  606. package/dist/web/routes/terminal-routes.js.map +0 -1
  607. package/dist/web/routes/workflow-routes.d.ts +0 -8
  608. package/dist/web/routes/workflow-routes.js +0 -45
  609. package/dist/web/routes/workflow-routes.js.map +0 -1
  610. package/dist/web/routes/workflow-trigger-routes.d.ts +0 -9
  611. package/dist/web/routes/workflow-trigger-routes.js +0 -78
  612. package/dist/web/routes/workflow-trigger-routes.js.map +0 -1
  613. package/dist/web/server.d.ts +0 -31
  614. package/dist/web/server.js +0 -325
  615. package/dist/web/server.js.map +0 -1
  616. package/dist/web/service-tester.d.ts +0 -16
  617. package/dist/web/service-tester.js +0 -107
  618. package/dist/web/service-tester.js.map +0 -1
  619. package/dist/web/static-assets.d.ts +0 -9
  620. package/dist/web/static-assets.js +0 -77
  621. package/dist/web/static-assets.js.map +0 -1
  622. package/dist/web/usage-info.d.ts +0 -56
  623. package/dist/web/usage-info.js +0 -265
  624. package/dist/web/usage-info.js.map +0 -1
@@ -1,18 +0,0 @@
1
- import type { AgentName, AgentSkillEntry } from "./types.js";
2
- /**
3
- * Plugins brainctl installed for agents without a native plugin system are
4
- * tracked in `~/.brainctl/managed-plugins.json`. Read-only here — Phase 1 never
5
- * mutates the registry; keeping the path lets migrated brainctl users see the
6
- * plugins it manages.
7
- */
8
- export declare function readManagedPlugins(options: {
9
- agent: AgentName;
10
- homeDir?: string;
11
- }): Promise<AgentSkillEntry[]>;
12
- export declare function writeManagedPlugin(options: {
13
- agent: AgentName;
14
- plugin: AgentSkillEntry;
15
- homeDir?: string;
16
- }): Promise<string>;
17
- /** Managed plugins first; local skills a plugin already owns are dropped. */
18
- export declare function mergeManagedPluginsIntoSkills(localSkills: AgentSkillEntry[], managedPlugins: AgentSkillEntry[]): AgentSkillEntry[];
@@ -1,68 +0,0 @@
1
- import { mkdir, readFile } from "node:fs/promises";
2
- import { homedir } from "node:os";
3
- import path from "node:path";
4
- /**
5
- * Plugins brainctl installed for agents without a native plugin system are
6
- * tracked in `~/.brainctl/managed-plugins.json`. Read-only here — Phase 1 never
7
- * mutates the registry; keeping the path lets migrated brainctl users see the
8
- * plugins it manages.
9
- */
10
- export async function readManagedPlugins(options) {
11
- const homeDir = options.homeDir ?? homedir();
12
- const paths = [
13
- path.join(homeDir, ".config", "nomoreide", "managed-plugins.json"),
14
- path.join(homeDir, ".brainctl", "managed-plugins.json"),
15
- ];
16
- const entries = [];
17
- for (const registryPath of paths) {
18
- try {
19
- const source = await readFile(registryPath, "utf8");
20
- const parsed = JSON.parse(source);
21
- entries.push(...(parsed.agents?.[options.agent] ?? []).map((entry) => ({
22
- ...entry,
23
- kind: "plugin",
24
- scope: entry.scope ?? "user",
25
- managed: true,
26
- })));
27
- }
28
- catch {
29
- // Registry is optional.
30
- }
31
- }
32
- const unique = new Map();
33
- for (const entry of entries) {
34
- const identity = `${entry.name}\0${entry.source ?? ""}`;
35
- if (!unique.has(identity))
36
- unique.set(identity, entry);
37
- }
38
- return Array.from(unique.values());
39
- }
40
- export async function writeManagedPlugin(options) {
41
- const homeDir = options.homeDir ?? homedir();
42
- const registryPath = path.join(homeDir, ".config", "nomoreide", "managed-plugins.json");
43
- let data = { version: 1, agents: {} };
44
- try {
45
- data = JSON.parse(await readFile(registryPath, "utf8"));
46
- }
47
- catch {
48
- // Fresh registry.
49
- }
50
- const current = data.agents?.[options.agent] ?? [];
51
- const next = current.filter((entry) => entry.name !== options.plugin.name || entry.source !== options.plugin.source);
52
- next.push({ ...options.plugin, kind: "plugin", scope: "user", managed: true });
53
- data.agents = { ...data.agents, [options.agent]: next };
54
- await mkdir(path.dirname(registryPath), { recursive: true });
55
- const { atomicWrite } = await import("../agent-env-writers.js");
56
- await atomicWrite(registryPath, `${JSON.stringify(data, null, 2)}\n`);
57
- return registryPath;
58
- }
59
- /** Managed plugins first; local skills a plugin already owns are dropped. */
60
- export function mergeManagedPluginsIntoSkills(localSkills, managedPlugins) {
61
- const pluginOwnedSkills = new Set(managedPlugins.flatMap((plugin) => [
62
- ...(plugin.pluginSkills ?? []),
63
- ...(plugin.pluginCommands ?? []),
64
- ]));
65
- const filteredLocalSkills = localSkills.filter((skill) => !pluginOwnedSkills.has(skill.name));
66
- return [...managedPlugins, ...filteredLocalSkills];
67
- }
68
- //# sourceMappingURL=managed-plugins.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"managed-plugins.js","sourceRoot":"","sources":["../../../src/core/agent-env/managed-plugins.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import type { AgentSkillEntry } from "./types.js";
2
- /** Marketplace plugins from Claude's `~/.claude/plugins/installed_plugins.json`. */
3
- export declare function readInstalledPlugins(installedPluginsPath: string): Promise<AgentSkillEntry[]>;
4
- /** Enabled Codex plugins declared in config.toml and materialized in the plugins cache. */
5
- export declare function readCodexPlugins(options: {
6
- configTomlPath: string;
7
- pluginsCacheDir: string;
8
- }): Promise<AgentSkillEntry[]>;
9
- export declare function readPluginMcpKeys(installPath: string): Promise<string[]>;
@@ -1,174 +0,0 @@
1
- import { readFile, readdir, stat } from "node:fs/promises";
2
- import path from "node:path";
3
- /** Marketplace plugins from Claude's `~/.claude/plugins/installed_plugins.json`. */
4
- export async function readInstalledPlugins(installedPluginsPath) {
5
- const source = await readFile(installedPluginsPath, "utf8");
6
- const data = JSON.parse(source);
7
- const results = [];
8
- for (const [key, records] of Object.entries(data.plugins ?? {})) {
9
- const [name, pluginSource] = key.split("@");
10
- const installPath = records[0]?.installPath;
11
- const pluginSkills = installPath ? await readPluginSkills(installPath) : [];
12
- const pluginMcps = installPath ? await readPluginMcpKeys(installPath) : [];
13
- const pluginAgents = installPath ? await readPluginAgentNames(installPath) : [];
14
- const pluginCommands = installPath ? await readPluginCommandNames(installPath) : [];
15
- results.push({
16
- name,
17
- source: pluginSource,
18
- kind: "plugin",
19
- scope: "user",
20
- installPath,
21
- pluginSkills,
22
- ...(pluginMcps.length > 0 ? { pluginMcps } : {}),
23
- ...(pluginAgents.length > 0 ? { pluginAgents } : {}),
24
- ...(pluginCommands.length > 0 ? { pluginCommands } : {}),
25
- });
26
- }
27
- return results;
28
- }
29
- /** Enabled Codex plugins declared in config.toml and materialized in the plugins cache. */
30
- export async function readCodexPlugins(options) {
31
- let tomlSource;
32
- try {
33
- tomlSource = await readFile(options.configTomlPath, "utf8");
34
- }
35
- catch {
36
- return [];
37
- }
38
- const entries = [];
39
- for (const { name, marketplace, enabled } of parseCodexPluginDeclarations(tomlSource)) {
40
- if (!enabled)
41
- continue;
42
- const installPath = await resolveCodexPluginInstallPath({
43
- pluginsCacheDir: options.pluginsCacheDir,
44
- marketplace,
45
- name,
46
- });
47
- if (!installPath)
48
- continue;
49
- const pluginSkills = await readPluginSkills(installPath);
50
- const pluginMcps = await readPluginMcpKeys(installPath);
51
- const pluginAgents = await readPluginAgentNames(installPath);
52
- const pluginCommands = await readPluginCommandNames(installPath);
53
- entries.push({
54
- name,
55
- source: marketplace,
56
- kind: "plugin",
57
- scope: "user",
58
- installPath,
59
- pluginSkills,
60
- ...(pluginMcps.length > 0 ? { pluginMcps } : {}),
61
- ...(pluginAgents.length > 0 ? { pluginAgents } : {}),
62
- ...(pluginCommands.length > 0 ? { pluginCommands } : {}),
63
- });
64
- }
65
- return entries.sort((left, right) => left.name.localeCompare(right.name));
66
- }
67
- function parseCodexPluginDeclarations(source) {
68
- const results = [];
69
- const lines = source.split("\n");
70
- let current = null;
71
- const flush = () => {
72
- if (current) {
73
- results.push(current);
74
- current = null;
75
- }
76
- };
77
- for (const line of lines) {
78
- const trimmed = line.trim();
79
- const sectionMatch = trimmed.match(/^\[plugins\."([^"@]+)@([^"]+)"\]$/);
80
- if (sectionMatch) {
81
- flush();
82
- current = { name: sectionMatch[1], marketplace: sectionMatch[2], enabled: false };
83
- continue;
84
- }
85
- if (/^\[/.test(trimmed)) {
86
- flush();
87
- continue;
88
- }
89
- if (!current)
90
- continue;
91
- const kv = trimmed.match(/^(\w+)\s*=\s*(.+)$/);
92
- if (kv && kv[1] === "enabled") {
93
- current.enabled = kv[2].trim() === "true";
94
- }
95
- }
96
- flush();
97
- return results;
98
- }
99
- async function resolveCodexPluginInstallPath(options) {
100
- const pluginRoot = path.join(options.pluginsCacheDir, options.marketplace, options.name);
101
- let versionDirs;
102
- try {
103
- const entries = await readdir(pluginRoot, { withFileTypes: true });
104
- versionDirs = entries.filter((entry) => entry.isDirectory()).map((entry) => entry.name);
105
- }
106
- catch {
107
- return null;
108
- }
109
- if (versionDirs.length === 0)
110
- return null;
111
- if (versionDirs.length === 1)
112
- return path.join(pluginRoot, versionDirs[0]);
113
- const stats = await Promise.all(versionDirs.map(async (dir) => {
114
- try {
115
- const info = await stat(path.join(pluginRoot, dir));
116
- return { dir, mtime: info.mtimeMs };
117
- }
118
- catch {
119
- return { dir, mtime: 0 };
120
- }
121
- }));
122
- stats.sort((left, right) => right.mtime - left.mtime);
123
- return path.join(pluginRoot, stats[0].dir);
124
- }
125
- async function readPluginSkills(installPath) {
126
- try {
127
- const entries = await readdir(path.join(installPath, "skills"), { withFileTypes: true });
128
- return entries
129
- .filter((entry) => !entry.name.startsWith(".") && entry.isDirectory())
130
- .map((entry) => entry.name)
131
- .sort((left, right) => left.localeCompare(right));
132
- }
133
- catch {
134
- return [];
135
- }
136
- }
137
- async function readPluginAgentNames(installPath) {
138
- try {
139
- const entries = await readdir(path.join(installPath, "agents"), { withFileTypes: true });
140
- return entries
141
- .filter((entry) => entry.isFile() && (entry.name.endsWith(".md") || entry.name.endsWith(".toml")))
142
- .map((entry) => entry.name.replace(/\.(md|toml)$/, ""))
143
- .sort((left, right) => left.localeCompare(right));
144
- }
145
- catch {
146
- return [];
147
- }
148
- }
149
- async function readPluginCommandNames(installPath) {
150
- try {
151
- const entries = await readdir(path.join(installPath, "commands"), { withFileTypes: true });
152
- return entries
153
- .filter((entry) => entry.isFile() && entry.name.endsWith(".md"))
154
- .map((entry) => entry.name.replace(/\.md$/, ""))
155
- .sort((left, right) => left.localeCompare(right));
156
- }
157
- catch {
158
- return [];
159
- }
160
- }
161
- export async function readPluginMcpKeys(installPath) {
162
- try {
163
- const source = await readFile(path.join(installPath, ".mcp.json"), "utf8");
164
- const parsed = JSON.parse(source);
165
- const servers = parsed.mcpServers && typeof parsed.mcpServers === "object" && !Array.isArray(parsed.mcpServers)
166
- ? parsed.mcpServers
167
- : parsed;
168
- return Object.keys(servers).sort((left, right) => left.localeCompare(right));
169
- }
170
- catch {
171
- return [];
172
- }
173
- }
174
- //# sourceMappingURL=plugin-reader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugin-reader.js","sourceRoot":"","sources":["../../../src/core/agent-env/plugin-reader.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- import type { AgentMcpEntry, AgentSkillEntry, RemoteMcpEntry } from "./types.js";
2
- export declare function parseEnvObject(value: unknown): Record<string, string> | undefined;
3
- /** Read skill directories (Claude, Codex, and Antigravity share the SKILL.md dir convention). */
4
- export declare function readSkillDirs(skillsDir: string, scope?: "user" | "project"): Promise<AgentSkillEntry[]>;
5
- /**
6
- * Walk from `cwd` up to the repo root (first ancestor containing `.git`, or
7
- * the filesystem root) and emit skills declared in `<ancestor>/<skillsSubdir>`
8
- * with `scope: "project"`. Claude reads `.claude/skills/`, Codex reads the
9
- * Agent Skills standard `.agents/skills/`; the closer ancestor wins on name
10
- * collisions.
11
- */
12
- export declare function readProjectSkills(cwd: string, skillsSubdir?: string): Promise<AgentSkillEntry[]>;
13
- export interface McpMaps {
14
- mcpServers: Record<string, AgentMcpEntry>;
15
- remoteMcpServers: Record<string, RemoteMcpEntry>;
16
- projectMcpServers: Record<string, AgentMcpEntry>;
17
- projectRemoteMcpServers: Record<string, RemoteMcpEntry>;
18
- }
19
- /** Drop MCP servers that a plugin owns — the plugin card already lists them. */
20
- export declare function filterPluginOwnedMcps(maps: McpMaps, skills: AgentSkillEntry[]): McpMaps;
21
- /**
22
- * Project-scoped MCPs recorded by brainctl at `<cwd>/.brainctl/project-mcps.json`
23
- * for agents without native per-project config (Codex, Antigravity). Read for
24
- * compatibility so brainctl users see their full setup after migrating.
25
- */
26
- export declare function readBrainctlProjectMcps(cwd: string, agent: "codex" | "antigravity"): Promise<Pick<McpMaps, "projectMcpServers" | "projectRemoteMcpServers">>;
@@ -1,116 +0,0 @@
1
- import { readFile, readdir, stat } from "node:fs/promises";
2
- import path from "node:path";
3
- export function parseEnvObject(value) {
4
- if (!value || typeof value !== "object" || Array.isArray(value))
5
- return undefined;
6
- const result = {};
7
- for (const [key, entry] of Object.entries(value)) {
8
- result[key] = String(entry);
9
- }
10
- return Object.keys(result).length > 0 ? result : undefined;
11
- }
12
- /** Read skill directories (Claude, Codex, and Antigravity share the SKILL.md dir convention). */
13
- export async function readSkillDirs(skillsDir, scope = "user") {
14
- const entries = await readdir(skillsDir, { withFileTypes: true });
15
- const skills = [];
16
- for (const entry of entries) {
17
- if (entry.name.startsWith("."))
18
- continue;
19
- const installPath = path.join(skillsDir, entry.name);
20
- if (entry.isDirectory()) {
21
- skills.push({ name: entry.name, source: "local", kind: "skill", scope, installPath });
22
- }
23
- else if (entry.isSymbolicLink()) {
24
- skills.push({ name: entry.name, source: "linked", kind: "skill", scope, installPath });
25
- }
26
- }
27
- return skills;
28
- }
29
- /**
30
- * Walk from `cwd` up to the repo root (first ancestor containing `.git`, or
31
- * the filesystem root) and emit skills declared in `<ancestor>/<skillsSubdir>`
32
- * with `scope: "project"`. Claude reads `.claude/skills/`, Codex reads the
33
- * Agent Skills standard `.agents/skills/`; the closer ancestor wins on name
34
- * collisions.
35
- */
36
- export async function readProjectSkills(cwd, skillsSubdir = path.join(".claude", "skills")) {
37
- const seen = new Map();
38
- let current = path.resolve(cwd);
39
- const visited = new Set();
40
- while (!visited.has(current)) {
41
- visited.add(current);
42
- const skillsDir = path.join(current, skillsSubdir);
43
- try {
44
- const entries = await readSkillDirs(skillsDir, "project");
45
- for (const entry of entries) {
46
- if (!seen.has(entry.name))
47
- seen.set(entry.name, entry);
48
- }
49
- }
50
- catch {
51
- // no skills dir at this level
52
- }
53
- try {
54
- await stat(path.join(current, ".git"));
55
- break;
56
- }
57
- catch {
58
- // not a repo root; continue up
59
- }
60
- const parent = path.dirname(current);
61
- if (parent === current)
62
- break;
63
- current = parent;
64
- }
65
- return Array.from(seen.values());
66
- }
67
- /** Drop MCP servers that a plugin owns — the plugin card already lists them. */
68
- export function filterPluginOwnedMcps(maps, skills) {
69
- const pluginOwned = new Set(skills.flatMap((skill) => skill.pluginMcps ?? []));
70
- if (pluginOwned.size === 0)
71
- return maps;
72
- const notOwned = ([key]) => !pluginOwned.has(key);
73
- return {
74
- mcpServers: Object.fromEntries(Object.entries(maps.mcpServers).filter(notOwned)),
75
- remoteMcpServers: Object.fromEntries(Object.entries(maps.remoteMcpServers).filter(notOwned)),
76
- projectMcpServers: Object.fromEntries(Object.entries(maps.projectMcpServers).filter(notOwned)),
77
- projectRemoteMcpServers: Object.fromEntries(Object.entries(maps.projectRemoteMcpServers).filter(notOwned)),
78
- };
79
- }
80
- /**
81
- * Project-scoped MCPs recorded by brainctl at `<cwd>/.brainctl/project-mcps.json`
82
- * for agents without native per-project config (Codex, Antigravity). Read for
83
- * compatibility so brainctl users see their full setup after migrating.
84
- */
85
- export async function readBrainctlProjectMcps(cwd, agent) {
86
- try {
87
- const filePath = path.join(cwd, ".brainctl", "project-mcps.json");
88
- const data = JSON.parse(await readFile(filePath, "utf8"));
89
- const agentData = (data[agent] ?? {});
90
- const rawServers = (agentData.mcpServers ?? {});
91
- const projectMcpServers = {};
92
- const projectRemoteMcpServers = {};
93
- for (const [name, entry] of Object.entries(rawServers)) {
94
- if (typeof entry.url === "string" && entry.url) {
95
- projectRemoteMcpServers[name] = {
96
- transport: entry.transport ?? "http",
97
- url: entry.url,
98
- headers: parseEnvObject(entry.headers),
99
- env: parseEnvObject(entry.env),
100
- };
101
- }
102
- else {
103
- projectMcpServers[name] = {
104
- command: String(entry.command ?? ""),
105
- args: Array.isArray(entry.args) ? entry.args.map(String) : undefined,
106
- env: parseEnvObject(entry.env),
107
- };
108
- }
109
- }
110
- return { projectMcpServers, projectRemoteMcpServers };
111
- }
112
- catch {
113
- return { projectMcpServers: {}, projectRemoteMcpServers: {} };
114
- }
115
- }
116
- //# sourceMappingURL=shared.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/core/agent-env/shared.ts"],"names":[],"mappings":"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"}
@@ -1,66 +0,0 @@
1
- /**
2
- * Agent Environments — read-only view of coding agents' live configuration
3
- * (MCP servers + skills) across Claude Code, Codex CLI, and Antigravity.
4
- * Ported from brainctl's sync/agent-reader layer (see ROR-59/ROR-60).
5
- */
6
- export type AgentName = "claude" | "codex" | "antigravity";
7
- export declare const AGENT_NAMES: AgentName[];
8
- export interface AgentMcpEntry {
9
- command: string;
10
- args?: string[];
11
- env?: Record<string, string>;
12
- }
13
- export interface RemoteMcpEntry {
14
- transport: "http" | "sse";
15
- url: string;
16
- headers?: Record<string, string>;
17
- env?: Record<string, string>;
18
- }
19
- export interface AgentSkillEntry {
20
- name: string;
21
- /** e.g. "claude-plugins-official", "local", "linked", or a marketplace id. */
22
- source?: string;
23
- kind?: "skill" | "plugin";
24
- /**
25
- * Where this skill lives:
26
- * - "user" — `~/.<agent>/skills/` or a user-installed plugin
27
- * - "project" — `<repo>/.claude/skills/` (Claude only)
28
- */
29
- scope: "user" | "project";
30
- pluginSkills?: string[];
31
- pluginMcps?: string[];
32
- pluginAgents?: string[];
33
- pluginCommands?: string[];
34
- installPath?: string;
35
- managed?: boolean;
36
- }
37
- export interface AgentLiveConfig {
38
- agent: AgentName;
39
- configPath: string;
40
- exists: boolean;
41
- mcpServers: Record<string, AgentMcpEntry>;
42
- remoteMcpServers: Record<string, RemoteMcpEntry>;
43
- projectMcpServers: Record<string, AgentMcpEntry>;
44
- projectRemoteMcpServers: Record<string, RemoteMcpEntry>;
45
- skills: AgentSkillEntry[];
46
- }
47
- export interface AgentAvailability {
48
- agent: AgentName;
49
- available: boolean;
50
- command: string;
51
- resolvedPath?: string;
52
- }
53
- export interface AgentDoctorCheck {
54
- label: string;
55
- status: "ok" | "warn";
56
- message: string;
57
- }
58
- export interface AgentDoctorResult {
59
- checks: AgentDoctorCheck[];
60
- hasIssues: boolean;
61
- }
62
- /** Options shared by every reader; `homeDir` is injectable for tests. */
63
- export interface AgentEnvReadOptions {
64
- cwd: string;
65
- homeDir?: string;
66
- }
@@ -1,7 +0,0 @@
1
- /**
2
- * Agent Environments — read-only view of coding agents' live configuration
3
- * (MCP servers + skills) across Claude Code, Codex CLI, and Antigravity.
4
- * Ported from brainctl's sync/agent-reader layer (see ROR-59/ROR-60).
5
- */
6
- export const AGENT_NAMES = ["claude", "codex", "antigravity"];
7
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/agent-env/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,CAAC,MAAM,WAAW,GAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC"}
@@ -1,117 +0,0 @@
1
- /**
2
- * Agent Environments staged writes (ROR-61) — the write-guarded surface over
3
- * `agent-env-writers.ts`. Mirrors the GitManager/GitActions and DbPeek/DbWrite
4
- * split: `core/agent-env/` only reads; every mutation flows through this
5
- * module's preview → apply gate and reports the backup files it created.
6
- */
7
- import { z } from "zod";
8
- import { type AgentName } from "./agent-env/index.js";
9
- /** One staged mutation. `name` is the MCP key, skill directory, or plugin name. */
10
- export declare const pendingChangeSchema: z.ZodObject<{
11
- category: z.ZodEnum<["mcp", "skill", "plugin"]>;
12
- action: z.ZodEnum<["copy", "move", "remove"]>;
13
- name: z.ZodString;
14
- sourceAgent: z.ZodEnum<["claude", "codex", "antigravity"]>;
15
- sourceScope: z.ZodDefault<z.ZodEnum<["user", "project"]>>;
16
- targetAgent: z.ZodOptional<z.ZodEnum<["claude", "codex", "antigravity"]>>;
17
- targetScope: z.ZodOptional<z.ZodEnum<["user", "project"]>>;
18
- }, "strip", z.ZodTypeAny, {
19
- action: "remove" | "copy" | "move";
20
- name: string;
21
- category: "skill" | "plugin" | "mcp";
22
- sourceAgent: "claude" | "codex" | "antigravity";
23
- sourceScope: "user" | "project";
24
- targetAgent?: "claude" | "codex" | "antigravity" | undefined;
25
- targetScope?: "user" | "project" | undefined;
26
- }, {
27
- action: "remove" | "copy" | "move";
28
- name: string;
29
- category: "skill" | "plugin" | "mcp";
30
- sourceAgent: "claude" | "codex" | "antigravity";
31
- sourceScope?: "user" | "project" | undefined;
32
- targetAgent?: "claude" | "codex" | "antigravity" | undefined;
33
- targetScope?: "user" | "project" | undefined;
34
- }>;
35
- export type PendingChange = z.infer<typeof pendingChangeSchema>;
36
- export declare const pendingChangesSchema: z.ZodArray<z.ZodObject<{
37
- category: z.ZodEnum<["mcp", "skill", "plugin"]>;
38
- action: z.ZodEnum<["copy", "move", "remove"]>;
39
- name: z.ZodString;
40
- sourceAgent: z.ZodEnum<["claude", "codex", "antigravity"]>;
41
- sourceScope: z.ZodDefault<z.ZodEnum<["user", "project"]>>;
42
- targetAgent: z.ZodOptional<z.ZodEnum<["claude", "codex", "antigravity"]>>;
43
- targetScope: z.ZodOptional<z.ZodEnum<["user", "project"]>>;
44
- }, "strip", z.ZodTypeAny, {
45
- action: "remove" | "copy" | "move";
46
- name: string;
47
- category: "skill" | "plugin" | "mcp";
48
- sourceAgent: "claude" | "codex" | "antigravity";
49
- sourceScope: "user" | "project";
50
- targetAgent?: "claude" | "codex" | "antigravity" | undefined;
51
- targetScope?: "user" | "project" | undefined;
52
- }, {
53
- action: "remove" | "copy" | "move";
54
- name: string;
55
- category: "skill" | "plugin" | "mcp";
56
- sourceAgent: "claude" | "codex" | "antigravity";
57
- sourceScope?: "user" | "project" | undefined;
58
- targetAgent?: "claude" | "codex" | "antigravity" | undefined;
59
- targetScope?: "user" | "project" | undefined;
60
- }>, "many">;
61
- export interface ChangePreviewItem {
62
- change: PendingChange;
63
- ok: boolean;
64
- /** Human-readable, e.g. `Copy MCP "linear" from Claude Code to Codex CLI (user scope)`. */
65
- summary: string;
66
- warnings: string[];
67
- error?: string;
68
- }
69
- export interface AgentDiffSummary {
70
- agent: AgentName;
71
- add: string[];
72
- remove: string[];
73
- }
74
- export interface ChangePreview {
75
- valid: boolean;
76
- items: ChangePreviewItem[];
77
- agents: AgentDiffSummary[];
78
- }
79
- export interface AppliedChange {
80
- change: PendingChange;
81
- ok: boolean;
82
- summary: string;
83
- backups: string[];
84
- error?: string;
85
- }
86
- export interface ApplyResult {
87
- ok: boolean;
88
- applied: number;
89
- failed: number;
90
- results: AppliedChange[];
91
- /** Every backup file/directory created across all changes. */
92
- backups: string[];
93
- }
94
- export interface AgentEnvActionOptions {
95
- cwd: string;
96
- homeDir?: string;
97
- }
98
- export declare function previewChanges(options: AgentEnvActionOptions & {
99
- changes: PendingChange[];
100
- }): Promise<ChangePreview>;
101
- export declare function describeChange(change: PendingChange): string;
102
- /**
103
- * Validate the full batch, then apply changes in order. Validation failures
104
- * abort before anything is written; a mid-batch write failure stops the batch
105
- * (earlier changes stay applied — their backups are in the result).
106
- */
107
- export declare function applyChanges(options: AgentEnvActionOptions & {
108
- changes: PendingChange[];
109
- }): Promise<ApplyResult>;
110
- export interface SnapshotResult {
111
- agent: AgentName;
112
- backups: string[];
113
- }
114
- /** Back up an agent's live config file (`<file>.bak.<ts>`) before bulk edits. */
115
- export declare function snapshotAgent(options: AgentEnvActionOptions & {
116
- agent: AgentName;
117
- }): Promise<SnapshotResult>;