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,414 +0,0 @@
1
- /**
2
- * Read-safe Cloudflare Pages REST client — the agent-reachable half of the
3
- * integration, and the mirror of `vercel-manager.ts`.
4
- *
5
- * Like {@link ./git-manager.js GitManager}, nothing here changes what is
6
- * deployed: retry / rollback and the environment-variable writes live in
7
- * `cloudflare-actions.ts` behind the dashboard's guarded route.
8
- *
9
- * Two shapes of Cloudflare's API drive most of what looks odd below:
10
- *
11
- * 1. **Everything is account-scoped.** Vercel's `teamId` is optional; a
12
- * Cloudflare account id is in the path of every Pages call, so an unscoped
13
- * client can answer `viewer()` and `listAccounts()` and nothing else.
14
- * 2. **Projects are addressed by name, deployments only within a project.**
15
- * There is no global deployment endpoint, which is why every deployment read
16
- * here takes the project name.
17
- */
18
- import { providerApiBase } from "./providers/api-base.js";
19
- /**
20
- * The largest `per_page` the Pages list endpoints accept. Established by
21
- * probing a live account: 10 succeeds, 11 and up are rejected. Not in the
22
- * OpenAPI schema, which types `per_page` as an unbounded integer.
23
- */
24
- const PAGES_MAX_PER_PAGE = 10;
25
- /** How far `pages()` will walk before giving up, so a caller cannot page forever. */
26
- const MAX_PAGES = 10;
27
- /** Default ceiling for an unbounded list read — ten pages' worth. */
28
- const MAX_PAGED_RESULTS = PAGES_MAX_PER_PAGE * MAX_PAGES;
29
- export class CloudflareApiError extends Error {
30
- status;
31
- path;
32
- code;
33
- constructor(message, status, path,
34
- /** Cloudflare's own numeric error code, when it sent one. */
35
- code) {
36
- super(message);
37
- this.status = status;
38
- this.path = path;
39
- this.code = code;
40
- this.name = "CloudflareApiError";
41
- }
42
- }
43
- /**
44
- * Cloudflare keys an imported project by owner and repository name rather than
45
- * by a URL, so the "repo url" this provider matches on is `owner/repo`.
46
- *
47
- * The contract calls this a repo *URL* because that is what Vercel wants; what
48
- * it actually means is "the string this vendor recognizes a repository by", and
49
- * only {@link CloudflareManager.findProjectByRepo} ever interprets it.
50
- */
51
- export function cloudflareRepoUrl(remoteUrl) {
52
- const trimmed = remoteUrl.trim().replace(/\.git$/, "").replace(/\/$/, "");
53
- const ssh = /^[\w.-]+@[^:]+:(?<path>.+)$/.exec(trimmed);
54
- const path = ssh?.groups?.path ?? trimmed.replace(/^https?:\/\/[^/]+\//, "");
55
- const parts = path.split("/").filter(Boolean);
56
- if (parts.length < 2)
57
- return null;
58
- return parts.slice(-2).join("/").toLowerCase();
59
- }
60
- /** Cloudflare's API, or the loopback stand-in an environment override names. */
61
- export function cloudflareApiBase() {
62
- return providerApiBase("NOMOREIDE_CLOUDFLARE_API_BASE", "https://api.cloudflare.com/client/v4");
63
- }
64
- export class CloudflareManager {
65
- token;
66
- accountId;
67
- baseUrl;
68
- fetchImpl;
69
- constructor(token, accountId, baseUrl = cloudflareApiBase(),
70
- /** The provider's scoped `fetch`; global `fetch` when built outside the registry. */
71
- fetchImpl) {
72
- this.token = token;
73
- this.accountId = accountId;
74
- this.baseUrl = baseUrl;
75
- this.fetchImpl = fetchImpl;
76
- }
77
- /**
78
- * The signed-in account.
79
- *
80
- * `/user` needs a token carrying User Details Read, which a project-scoped
81
- * API token typically does not have. Rather than fail the whole dashboard
82
- * over an identity nicety, a rejected `/user` falls back to the token's own
83
- * verification and the selected account's name.
84
- */
85
- async viewer() {
86
- try {
87
- const user = await this.request("/user");
88
- // Cloudflare's `username` is an opaque 32-char hex id, not a display
89
- // name, so the email is the only human-readable identity `/user` carries.
90
- // Preferring `username` here put a hex blob in the account menu.
91
- return { id: user.id, email: user.email ?? null, username: user.email ?? user.username };
92
- }
93
- catch (error) {
94
- if (!(error instanceof CloudflareApiError) || error.status >= 500)
95
- throw error;
96
- return this.tokenViewer(error);
97
- }
98
- }
99
- /**
100
- * Identity for a token that cannot read `/user`. `/user/tokens/verify` is
101
- * answerable by every API token, so a failure there is a genuine auth error
102
- * and is left to propagate.
103
- */
104
- async tokenViewer(cause) {
105
- const verified = await this.request("/user/tokens/verify");
106
- if (verified.status && verified.status !== "active") {
107
- throw new CloudflareApiError(`This Cloudflare API token is ${verified.status}.`, 401, "/user/tokens/verify", cause.code);
108
- }
109
- const accounts = await this.listAccounts().catch(() => []);
110
- const account = accounts.find((entry) => entry.id === this.accountId) ?? accounts[0];
111
- return {
112
- id: verified.id ?? this.accountId ?? "",
113
- email: null,
114
- username: account?.name ?? "Cloudflare API token",
115
- };
116
- }
117
- async listAccounts() {
118
- const accounts = await this.request("/accounts?per_page=50");
119
- return accounts.map((account) => ({ id: account.id, name: account.name ?? account.id }));
120
- }
121
- /**
122
- * Every project in the account.
123
- *
124
- * Cloudflare has no search or repository filter on this endpoint, so both are
125
- * applied here. That is a page of extra bytes, not a page of extra requests —
126
- * the list endpoint returns whole project objects either way.
127
- */
128
- async listProjects(opts = {}) {
129
- const raw = await this.pages(`/accounts/${this.account()}/pages/projects`, opts.limit ?? MAX_PAGED_RESULTS);
130
- let projects = raw.map(normalizeProject);
131
- if (opts.search) {
132
- const needle = opts.search.toLowerCase();
133
- projects = projects.filter((project) => project.name.toLowerCase().includes(needle));
134
- }
135
- if (opts.repoUrl) {
136
- const wanted = opts.repoUrl.toLowerCase();
137
- projects = projects.filter((project) => repoSlug(project) === wanted);
138
- }
139
- return projects;
140
- }
141
- /** The project a repository deploys, matched on `owner/repo`. */
142
- async findProjectByRepo(repoUrl) {
143
- return (await this.listProjects({ repoUrl, limit: 100 }))[0];
144
- }
145
- async getProject(name) {
146
- return normalizeProject(await this.request(`/accounts/${this.account()}/pages/projects/${encodeURIComponent(name)}`));
147
- }
148
- async listDeployments(opts) {
149
- const raw = await this.pages(`${this.projectPath(opts.projectName)}/deployments`, opts.limit ?? 20, opts.env ? { env: opts.env } : undefined);
150
- return raw.map(normalizeDeployment);
151
- }
152
- async getDeployment(projectName, deploymentId) {
153
- return normalizeDeployment(await this.request(`${this.projectPath(projectName)}/deployments/${encodeURIComponent(deploymentId)}`));
154
- }
155
- /**
156
- * The deployment that currently serves production, which Cloudflare records
157
- * on the project rather than on the deployment. A rollback moves it, so it
158
- * cannot be inferred from "the newest successful production build".
159
- */
160
- async canonicalDeploymentId(projectName) {
161
- const raw = await this.request(`/accounts/${this.account()}/pages/projects/${encodeURIComponent(projectName)}`);
162
- return raw.canonical_deployment?.id ?? raw.latest_deployment?.id;
163
- }
164
- async deploymentBuildLogs(projectName, deploymentId, limit = 500) {
165
- const data = await this.request(`${this.projectPath(projectName)}/deployments/${encodeURIComponent(deploymentId)}/history/logs`);
166
- const lines = (data.data ?? [])
167
- .map((entry, index) => ({
168
- id: `${entry.ts ?? index}-${index}`,
169
- createdAt: epochMs(entry.ts) ?? 0,
170
- text: (entry.line ?? "").trimEnd(),
171
- }))
172
- .filter((line) => line.text.length > 0);
173
- // Cloudflare returns the whole build; the caller's limit is the tail of it,
174
- // which is where a failure's cause is.
175
- return lines.slice(-limit);
176
- }
177
- /** Variables for the project, keys and environments only — values are dropped. */
178
- async listEnv(projectName) {
179
- const project = await this.getProject(projectName);
180
- return project.envVars.map(({ value: _value, ...rest }) => rest);
181
- }
182
- /**
183
- * One variable's value.
184
- *
185
- * Cloudflare returns `plain_text` values in the project payload but never a
186
- * `secret_text` one — the value is write-only. So this can answer for the
187
- * former and must say so plainly for the latter, rather than returning an
188
- * empty string the UI would render as "this secret is blank".
189
- */
190
- async getEnvValue(projectName, key) {
191
- const project = await this.getProject(projectName);
192
- const variable = project.envVars.find((entry) => entry.key === key);
193
- if (!variable)
194
- throw new Error(`No variable named "${key}" on this project.`);
195
- if (variable.type === "secret_text") {
196
- throw new Error("Cloudflare never returns a secret's value. Set a new one to change it.");
197
- }
198
- return variable.value ?? "";
199
- }
200
- /**
201
- * The project's domains, including the `*.pages.dev` host Cloudflare assigns.
202
- *
203
- * `/domains` lists **custom** domains only, so a project that is serving
204
- * perfectly well reads as having none — while Vercel's equivalent endpoint
205
- * includes the vendor-assigned `*.vercel.app`. Both render through the same
206
- * generic view, so the asymmetry showed up on a live account as "no domains"
207
- * beside a site anyone could load. The subdomain goes last, the way Vercel
208
- * orders its own, so a custom domain still leads.
209
- *
210
- * A failed project read degrades to the custom domains alone: the panel is
211
- * still correct, just missing the assigned host.
212
- */
213
- async listDomains(projectName) {
214
- const [raw, project] = await Promise.all([
215
- this.request(`${this.projectPath(projectName)}/domains`),
216
- this.getProject(projectName).catch(() => undefined),
217
- ]);
218
- const domains = raw.map(normalizeDomain);
219
- const subdomain = project?.subdomain;
220
- if (!subdomain || domains.some((domain) => domain.name === subdomain))
221
- return domains;
222
- return [...domains, { name: subdomain, status: "active", createdAt: project?.createdAt }];
223
- }
224
- /** The dashboard page for a deployment, which Cloudflare does not return. */
225
- inspectorUrl(projectName, deploymentId) {
226
- if (!this.accountId)
227
- return undefined;
228
- return `https://dash.cloudflare.com/${this.accountId}/pages/view/${encodeURIComponent(projectName)}/${encodeURIComponent(deploymentId)}`;
229
- }
230
- /**
231
- * A Pages list endpoint, read a page at a time until `limit` is reached.
232
- *
233
- * Pages caps `per_page` at 10 and rejects anything larger outright with
234
- * `8000024 Invalid list options provided` — a whole-request failure, not a
235
- * silent truncation. The cap is undocumented: the OpenAPI schema types
236
- * `per_page` as a plain integer and only hints at it through `example: 10`.
237
- * Asking for the old 20–100 therefore failed every single call.
238
- *
239
- * Paging is what keeps the callers whole, since a 10-item page cannot answer
240
- * "find the project for this repo" on its own.
241
- */
242
- async pages(path, limit, query) {
243
- const wanted = Math.max(limit, 1);
244
- const results = [];
245
- for (let page = 1; results.length < wanted && page <= MAX_PAGES; page++) {
246
- const params = new URLSearchParams({
247
- ...query,
248
- per_page: String(PAGES_MAX_PER_PAGE),
249
- page: String(page),
250
- });
251
- const batch = await this.request(`${path}?${params}`);
252
- results.push(...batch);
253
- // A short page is the last page; Pages sends no total to check against.
254
- if (batch.length < PAGES_MAX_PER_PAGE)
255
- break;
256
- }
257
- return results.slice(0, wanted);
258
- }
259
- projectPath(projectName) {
260
- return `/accounts/${this.account()}/pages/projects/${encodeURIComponent(projectName)}`;
261
- }
262
- /**
263
- * The account every Pages path needs. Throwing here rather than sending a
264
- * request with `undefined` in the URL is what turns "no account chosen" into
265
- * a sentence the scope switcher answers.
266
- *
267
- * The message names the empty-picker case too: `/accounts` answers `success`
268
- * with an empty list for a token carrying no Account Resources, so "choose an
269
- * account" on its own sends the reader looking for a choice that isn't there.
270
- */
271
- account() {
272
- if (!this.accountId) {
273
- throw new Error("Choose a Cloudflare account before reading its Pages projects. " +
274
- "If the account list is empty, this API token has no account access — " +
275
- "recreate it with Account Resources including your account.");
276
- }
277
- return this.accountId;
278
- }
279
- request(path, opts) {
280
- return cloudflareRequest({ token: this.token, baseUrl: this.baseUrl, fetch: this.fetchImpl }, path, opts);
281
- }
282
- }
283
- /**
284
- * The one place a Cloudflare API call is made. Shared with
285
- * `cloudflare-actions.ts` so auth and error shaping stay identical across the
286
- * read and write halves — the read/write boundary is which module exposes an
287
- * operation, not which one can reach the network.
288
- */
289
- export async function cloudflareRequest(auth, path, opts) {
290
- const url = path.startsWith("http")
291
- ? path
292
- : `${auth.baseUrl ?? cloudflareApiBase()}${path}`;
293
- const headers = {
294
- Authorization: `Bearer ${auth.token}`,
295
- Accept: "application/json",
296
- };
297
- const init = { method: opts?.method ?? "GET", headers };
298
- if (opts?.body !== undefined) {
299
- headers["Content-Type"] = "application/json";
300
- init.body = JSON.stringify(opts.body);
301
- }
302
- const response = await (auth.fetch ?? fetch)(url, init);
303
- const body = (await response.json().catch(() => ({})));
304
- // Cloudflare can answer 200 with `success: false`, so the envelope decides,
305
- // not the status line.
306
- if (!response.ok || body.success === false) {
307
- const failure = body.errors?.[0];
308
- throw new CloudflareApiError(failure?.message ?? `Cloudflare returned ${response.status} for ${path}`, response.status, path, failure?.code);
309
- }
310
- return body.result;
311
- }
312
- /** Cloudflare timestamps are RFC 3339 strings; everything downstream wants epoch ms. */
313
- function epochMs(value) {
314
- if (!value)
315
- return undefined;
316
- const parsed = Date.parse(value);
317
- return Number.isNaN(parsed) ? undefined : parsed;
318
- }
319
- const repoSlug = (project) => project.source?.owner && project.source.repoName
320
- ? `${project.source.owner}/${project.source.repoName}`.toLowerCase()
321
- : undefined;
322
- /**
323
- * Flattens the per-environment `{ NAME: { type, value } }` maps into one entry
324
- * per key, carrying every environment it appears in. A key that is plain text
325
- * in one environment and a secret in another is reported as a secret, because
326
- * the stricter of the two is the one that governs whether a value may be read.
327
- */
328
- function normalizeEnvVars(configs) {
329
- const merged = new Map();
330
- for (const [environment, config] of Object.entries(configs ?? {})) {
331
- for (const [key, entry] of Object.entries(config?.env_vars ?? {})) {
332
- if (!entry)
333
- continue;
334
- const type = entry.type === "plain_text" ? "plain_text" : "secret_text";
335
- const existing = merged.get(key);
336
- if (existing) {
337
- existing.environments.push(environment);
338
- if (type === "secret_text")
339
- existing.type = "secret_text";
340
- if (existing.value === undefined)
341
- existing.value = entry.value;
342
- continue;
343
- }
344
- merged.set(key, { key, environments: [environment], type, value: entry.value });
345
- }
346
- }
347
- return [...merged.values()].sort((a, b) => a.key.localeCompare(b.key));
348
- }
349
- function normalizeProject(project) {
350
- const build = project.build_config ?? {};
351
- return {
352
- uuid: project.id,
353
- name: project.name,
354
- framework: project.framework ?? null,
355
- productionBranch: project.production_branch ?? null,
356
- createdAt: epochMs(project.created_on),
357
- updatedAt: epochMs(project.latest_deployment?.modified_on) ?? epochMs(project.created_on),
358
- subdomain: project.subdomain ?? null,
359
- source: project.source?.type
360
- ? {
361
- type: project.source.type,
362
- owner: project.source.config?.owner,
363
- repoName: project.source.config?.repo_name,
364
- productionBranch: project.source.config?.production_branch ?? project.production_branch ?? undefined,
365
- }
366
- : undefined,
367
- // Cloudflare always sends the whole `build_config`, so a null here really
368
- // does mean "not set" rather than "not read".
369
- buildCommand: build.build_command ?? null,
370
- destinationDir: build.destination_dir ?? null,
371
- rootDir: build.root_dir ?? null,
372
- envVars: normalizeEnvVars(project.deployment_configs),
373
- };
374
- }
375
- function normalizeDeployment(deployment) {
376
- const trigger = deployment.deployment_trigger?.metadata ?? {};
377
- return {
378
- id: deployment.id,
379
- shortId: deployment.short_id,
380
- projectName: deployment.project_name ?? "",
381
- // Cloudflare returns a full URL where the contract wants a bare hostname.
382
- url: deployment.url ? deployment.url.replace(/^https?:\/\//, "").replace(/\/$/, "") : null,
383
- environment: deployment.environment ?? "preview",
384
- stage: {
385
- name: deployment.latest_stage?.name ?? "queued",
386
- status: deployment.latest_stage?.status ?? "idle",
387
- },
388
- isSkipped: deployment.is_skipped ?? false,
389
- createdAt: epochMs(deployment.created_on) ?? 0,
390
- modifiedAt: epochMs(deployment.modified_on),
391
- aliases: (deployment.aliases ?? []).map((alias) => alias.replace(/^https?:\/\//, "").replace(/\/$/, "")),
392
- branch: trigger.branch,
393
- commitHash: trigger.commit_hash,
394
- commitMessage: trigger.commit_message,
395
- };
396
- }
397
- function normalizeDomain(domain) {
398
- const validation = domain.validation_data ?? undefined;
399
- return {
400
- name: domain.name,
401
- status: domain.status ?? "pending",
402
- createdAt: epochMs(domain.created_on),
403
- validation: validation
404
- ? {
405
- method: validation.method,
406
- status: validation.status,
407
- txtName: validation.txt_name,
408
- txtValue: validation.txt_value,
409
- }
410
- : undefined,
411
- errorMessage: validation?.error_message ?? domain.verification_data?.error_message,
412
- };
413
- }
414
- //# sourceMappingURL=cloudflare-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cloudflare-manager.js","sourceRoot":"","sources":["../../src/core/cloudflare-manager.ts"],"names":[],"mappings":"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"}
@@ -1,64 +0,0 @@
1
- import { type CloudflareActions } from "./cloudflare-actions.js";
2
- import { type CloudflareDeployment, type CloudflareDomain, type CloudflareEnvVar, type CloudflareManager, type CloudflareProject } from "./cloudflare-manager.js";
3
- import type { DeployProvider, DeployProviderActions, DeployProviderHooks, DeployProviderManifest, ProviderDeployment, ProviderDeploymentState, ProviderDomain, ProviderEnvVar, ProviderProject } from "./providers/deploy-provider.js";
4
- /**
5
- * Cloudflare Pages as `DeployProvider` implementation #2 — the one that tests
6
- * whether the contract was shaped by the problem or by Vercel.
7
- *
8
- * A pure adapter, like `vercel-provider.ts`: every method delegates to
9
- * `CloudflareManager` or `CloudflareActions` and only reshapes the result.
10
- *
11
- * Three places the contract had to absorb a genuinely different vendor, all
12
- * without changing a signature:
13
- *
14
- * 1. **Deployment reads are project-scoped.** Cloudflare has no global
15
- * deployment endpoint, so {@link createCloudflareDeployProvider} closes over
16
- * the project the caller already resolved rather than widening
17
- * `getDeployment(id)` to take one. `ProviderContext` bundles a provider with
18
- * its project anyway, so this costs the callers nothing.
19
- * 2. **`rawState` earns its keep immediately.** Cloudflare's state is a
20
- * (stage, status) pair, not an enum — there is no eight-value list to map
21
- * from, so the pair is carried through as `stage:status` and the neutral
22
- * state is computed.
23
- * 3. **`ProviderProject.id` is whatever the vendor addresses projects by.**
24
- * Cloudflare's paths use the project *name*, so that is the id here and its
25
- * UUID is not exposed. Pinning a project in config therefore stores a name.
26
- */
27
- export declare const CLOUDFLARE_MANIFEST: DeployProviderManifest;
28
- /**
29
- * No `linkFile`: Wrangler records a project's *name* in `wrangler.toml` /
30
- * `wrangler.jsonc`, neither of which is JSON, and neither of which is written
31
- * by a link command the way `.vercel/project.json` is. That tier of the
32
- * resolution ladder is simply skipped, which is what it was built to allow.
33
- */
34
- export declare const CLOUDFLARE_HOOKS: DeployProviderHooks;
35
- /**
36
- * Cloudflare's (stage, status) pair onto the seven neutral states.
37
- *
38
- * A build is `success` at every stage it completes, so "succeeded" only means
39
- * "ready" once the stage reached is `deploy`; anything earlier is still in
40
- * flight. A skipped deployment — Cloudflare's own eighth outcome — has no
41
- * neutral equivalent, so it folds into `canceled` and survives in `rawState`,
42
- * which is exactly the pressure valve that state field was added for.
43
- */
44
- export declare function toProviderState(deployment: CloudflareDeployment): ProviderDeploymentState;
45
- export declare function toProviderProject(project: CloudflareProject): ProviderProject;
46
- export declare function toProviderDeployment(deployment: CloudflareDeployment, context?: {
47
- canonicalDeploymentId?: string;
48
- inspectorUrl?: string;
49
- }): ProviderDeployment;
50
- export declare function toProviderEnvVar(env: CloudflareEnvVar): ProviderEnvVar;
51
- export declare function toProviderDomain(domain: CloudflareDomain): ProviderDomain;
52
- /**
53
- * The read-safe half, over an already-authenticated `CloudflareManager`.
54
- *
55
- * `projectName` is the project the caller resolved for this repository, and is
56
- * what makes the project-scoped deployment endpoints reachable through a
57
- * contract whose deployment methods take only an id.
58
- */
59
- export declare function createCloudflareDeployProvider(manager: CloudflareManager, projectName?: string): DeployProvider;
60
- /**
61
- * The write-capable half. Kept a separate factory, resolved separately, and
62
- * never handed to an MCP tool — the same boundary `CloudflareActions` has.
63
- */
64
- export declare function createCloudflareDeployActions(actions: CloudflareActions): DeployProviderActions;