nomoreide 0.1.103 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (621) hide show
  1. package/README.md +72 -20
  2. package/bin/nomoreide.js +82 -0
  3. package/package.json +24 -90
  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 -354
  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 -256
  149. package/dist/core/cloudflare-manager.js +0 -409
  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 -343
  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 -70
  167. package/dist/core/daemon-client.js +0 -136
  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 -223
  254. package/dist/core/github-manager.js +0 -285
  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/credentials.d.ts +0 -93
  296. package/dist/core/providers/credentials.js +0 -88
  297. package/dist/core/providers/credentials.js.map +0 -1
  298. package/dist/core/providers/deploy-provider.d.ts +0 -327
  299. package/dist/core/providers/deploy-provider.js +0 -25
  300. package/dist/core/providers/deploy-provider.js.map +0 -1
  301. package/dist/core/providers/egress.d.ts +0 -58
  302. package/dist/core/providers/egress.js +0 -115
  303. package/dist/core/providers/egress.js.map +0 -1
  304. package/dist/core/providers/host-bridge.d.ts +0 -20
  305. package/dist/core/providers/host-bridge.js +0 -57
  306. package/dist/core/providers/host-bridge.js.map +0 -1
  307. package/dist/core/providers/host-provider.d.ts +0 -160
  308. package/dist/core/providers/host-provider.js +0 -2
  309. package/dist/core/providers/host-provider.js.map +0 -1
  310. package/dist/core/providers/oauth.d.ts +0 -97
  311. package/dist/core/providers/oauth.js +0 -238
  312. package/dist/core/providers/oauth.js.map +0 -1
  313. package/dist/core/providers/project-resolution.d.ts +0 -81
  314. package/dist/core/providers/project-resolution.js +0 -101
  315. package/dist/core/providers/project-resolution.js.map +0 -1
  316. package/dist/core/providers/registry.d.ts +0 -73
  317. package/dist/core/providers/registry.js +0 -53
  318. package/dist/core/providers/registry.js.map +0 -1
  319. package/dist/core/providers/strings.d.ts +0 -95
  320. package/dist/core/providers/strings.js +0 -59
  321. package/dist/core/providers/strings.js.map +0 -1
  322. package/dist/core/public-config.d.ts +0 -18
  323. package/dist/core/public-config.js +0 -76
  324. package/dist/core/public-config.js.map +0 -1
  325. package/dist/core/read-only-files.d.ts +0 -28
  326. package/dist/core/read-only-files.js +0 -93
  327. package/dist/core/read-only-files.js.map +0 -1
  328. package/dist/core/repo-create.d.ts +0 -11
  329. package/dist/core/repo-create.js +0 -54
  330. package/dist/core/repo-create.js.map +0 -1
  331. package/dist/core/repo-match.d.ts +0 -12
  332. package/dist/core/repo-match.js +0 -40
  333. package/dist/core/repo-match.js.map +0 -1
  334. package/dist/core/repo-onboard.d.ts +0 -297
  335. package/dist/core/repo-onboard.js +0 -667
  336. package/dist/core/repo-onboard.js.map +0 -1
  337. package/dist/core/repro-bundle.d.ts +0 -30
  338. package/dist/core/repro-bundle.js +0 -116
  339. package/dist/core/repro-bundle.js.map +0 -1
  340. package/dist/core/service-graph.d.ts +0 -50
  341. package/dist/core/service-graph.js +0 -143
  342. package/dist/core/service-graph.js.map +0 -1
  343. package/dist/core/service-health.d.ts +0 -10
  344. package/dist/core/service-health.js +0 -46
  345. package/dist/core/service-health.js.map +0 -1
  346. package/dist/core/service-log-source.d.ts +0 -9
  347. package/dist/core/service-log-source.js +0 -49
  348. package/dist/core/service-log-source.js.map +0 -1
  349. package/dist/core/service-registry.d.ts +0 -52
  350. package/dist/core/service-registry.js +0 -101
  351. package/dist/core/service-registry.js.map +0 -1
  352. package/dist/core/snapshot-manager.d.ts +0 -62
  353. package/dist/core/snapshot-manager.js +0 -219
  354. package/dist/core/snapshot-manager.js.map +0 -1
  355. package/dist/core/ssh-servers.d.ts +0 -89
  356. package/dist/core/ssh-servers.js +0 -251
  357. package/dist/core/ssh-servers.js.map +0 -1
  358. package/dist/core/ssh-service-runner.d.ts +0 -7
  359. package/dist/core/ssh-service-runner.js +0 -36
  360. package/dist/core/ssh-service-runner.js.map +0 -1
  361. package/dist/core/ssh-setup.d.ts +0 -11
  362. package/dist/core/ssh-setup.js +0 -49
  363. package/dist/core/ssh-setup.js.map +0 -1
  364. package/dist/core/system-processes.d.ts +0 -29
  365. package/dist/core/system-processes.js +0 -119
  366. package/dist/core/system-processes.js.map +0 -1
  367. package/dist/core/terminal-manager.d.ts +0 -123
  368. package/dist/core/terminal-manager.js +0 -470
  369. package/dist/core/terminal-manager.js.map +0 -1
  370. package/dist/core/terminal-session.d.ts +0 -122
  371. package/dist/core/terminal-session.js +0 -242
  372. package/dist/core/terminal-session.js.map +0 -1
  373. package/dist/core/terminal-spawn.d.ts +0 -26
  374. package/dist/core/terminal-spawn.js +0 -63
  375. package/dist/core/terminal-spawn.js.map +0 -1
  376. package/dist/core/test-runner.d.ts +0 -69
  377. package/dist/core/test-runner.js +0 -199
  378. package/dist/core/test-runner.js.map +0 -1
  379. package/dist/core/timeline-store.d.ts +0 -20
  380. package/dist/core/timeline-store.js +0 -36
  381. package/dist/core/timeline-store.js.map +0 -1
  382. package/dist/core/tool-call-store.d.ts +0 -25
  383. package/dist/core/tool-call-store.js +0 -62
  384. package/dist/core/tool-call-store.js.map +0 -1
  385. package/dist/core/types.d.ts +0 -312
  386. package/dist/core/types.js +0 -2
  387. package/dist/core/types.js.map +0 -1
  388. package/dist/core/usage-history.d.ts +0 -81
  389. package/dist/core/usage-history.js +0 -149
  390. package/dist/core/usage-history.js.map +0 -1
  391. package/dist/core/vercel-actions.d.ts +0 -71
  392. package/dist/core/vercel-actions.js +0 -109
  393. package/dist/core/vercel-actions.js.map +0 -1
  394. package/dist/core/vercel-auth.d.ts +0 -40
  395. package/dist/core/vercel-auth.js +0 -88
  396. package/dist/core/vercel-auth.js.map +0 -1
  397. package/dist/core/vercel-context.d.ts +0 -2
  398. package/dist/core/vercel-context.js +0 -97
  399. package/dist/core/vercel-context.js.map +0 -1
  400. package/dist/core/vercel-manager.d.ts +0 -266
  401. package/dist/core/vercel-manager.js +0 -389
  402. package/dist/core/vercel-manager.js.map +0 -1
  403. package/dist/core/vercel-oauth.d.ts +0 -37
  404. package/dist/core/vercel-oauth.js +0 -51
  405. package/dist/core/vercel-oauth.js.map +0 -1
  406. package/dist/core/vercel-provider.d.ts +0 -23
  407. package/dist/core/vercel-provider.js +0 -271
  408. package/dist/core/vercel-provider.js.map +0 -1
  409. package/dist/core/vultr-actions.d.ts +0 -52
  410. package/dist/core/vultr-actions.js +0 -62
  411. package/dist/core/vultr-actions.js.map +0 -1
  412. package/dist/core/vultr-auth.d.ts +0 -32
  413. package/dist/core/vultr-auth.js +0 -54
  414. package/dist/core/vultr-auth.js.map +0 -1
  415. package/dist/core/vultr-context.d.ts +0 -2
  416. package/dist/core/vultr-context.js +0 -55
  417. package/dist/core/vultr-context.js.map +0 -1
  418. package/dist/core/vultr-manager.d.ts +0 -105
  419. package/dist/core/vultr-manager.js +0 -159
  420. package/dist/core/vultr-manager.js.map +0 -1
  421. package/dist/core/vultr-provider.d.ts +0 -69
  422. package/dist/core/vultr-provider.js +0 -224
  423. package/dist/core/vultr-provider.js.map +0 -1
  424. package/dist/core/workflow-triggers.d.ts +0 -139
  425. package/dist/core/workflow-triggers.js +0 -208
  426. package/dist/core/workflow-triggers.js.map +0 -1
  427. package/dist/core/workflows.d.ts +0 -290
  428. package/dist/core/workflows.js +0 -190
  429. package/dist/core/workflows.js.map +0 -1
  430. package/dist/index.d.ts +0 -2
  431. package/dist/index.js +0 -56
  432. package/dist/index.js.map +0 -1
  433. package/dist/mcp/server.d.ts +0 -37
  434. package/dist/mcp/server.js +0 -84
  435. package/dist/mcp/server.js.map +0 -1
  436. package/dist/mcp/tools/agent-env.d.ts +0 -9
  437. package/dist/mcp/tools/agent-env.js +0 -160
  438. package/dist/mcp/tools/agent-env.js.map +0 -1
  439. package/dist/mcp/tools/agent-profiles.d.ts +0 -9
  440. package/dist/mcp/tools/agent-profiles.js +0 -197
  441. package/dist/mcp/tools/agent-profiles.js.map +0 -1
  442. package/dist/mcp/tools/agent-registry.d.ts +0 -9
  443. package/dist/mcp/tools/agent-registry.js +0 -81
  444. package/dist/mcp/tools/agent-registry.js.map +0 -1
  445. package/dist/mcp/tools/agent.d.ts +0 -4
  446. package/dist/mcp/tools/agent.js +0 -29
  447. package/dist/mcp/tools/agent.js.map +0 -1
  448. package/dist/mcp/tools/context.d.ts +0 -36
  449. package/dist/mcp/tools/context.js +0 -69
  450. package/dist/mcp/tools/context.js.map +0 -1
  451. package/dist/mcp/tools/database.d.ts +0 -9
  452. package/dist/mcp/tools/database.js +0 -166
  453. package/dist/mcp/tools/database.js.map +0 -1
  454. package/dist/mcp/tools/docs.d.ts +0 -29
  455. package/dist/mcp/tools/docs.js +0 -125
  456. package/dist/mcp/tools/docs.js.map +0 -1
  457. package/dist/mcp/tools/errors.d.ts +0 -5
  458. package/dist/mcp/tools/errors.js +0 -40
  459. package/dist/mcp/tools/errors.js.map +0 -1
  460. package/dist/mcp/tools/git.d.ts +0 -4
  461. package/dist/mcp/tools/git.js +0 -208
  462. package/dist/mcp/tools/git.js.map +0 -1
  463. package/dist/mcp/tools/github.d.ts +0 -4
  464. package/dist/mcp/tools/github.js +0 -196
  465. package/dist/mcp/tools/github.js.map +0 -1
  466. package/dist/mcp/tools/index.d.ts +0 -20
  467. package/dist/mcp/tools/index.js +0 -60
  468. package/dist/mcp/tools/index.js.map +0 -1
  469. package/dist/mcp/tools/onboard.d.ts +0 -10
  470. package/dist/mcp/tools/onboard.js +0 -30
  471. package/dist/mcp/tools/onboard.js.map +0 -1
  472. package/dist/mcp/tools/provider.d.ts +0 -16
  473. package/dist/mcp/tools/provider.js +0 -110
  474. package/dist/mcp/tools/provider.js.map +0 -1
  475. package/dist/mcp/tools/services.d.ts +0 -11
  476. package/dist/mcp/tools/services.js +0 -200
  477. package/dist/mcp/tools/services.js.map +0 -1
  478. package/dist/mcp/tools/snapshots.d.ts +0 -8
  479. package/dist/mcp/tools/snapshots.js +0 -37
  480. package/dist/mcp/tools/snapshots.js.map +0 -1
  481. package/dist/mcp/tools/terminal.d.ts +0 -4
  482. package/dist/mcp/tools/terminal.js +0 -38
  483. package/dist/mcp/tools/terminal.js.map +0 -1
  484. package/dist/tui/app.d.ts +0 -22
  485. package/dist/tui/app.js +0 -138
  486. package/dist/tui/app.js.map +0 -1
  487. package/dist/web/agent-info.d.ts +0 -82
  488. package/dist/web/agent-info.js +0 -775
  489. package/dist/web/agent-info.js.map +0 -1
  490. package/dist/web/client/assets/SymbolsNerdFontMono-Regular-DDncdh2F.ttf +0 -0
  491. package/dist/web/client/assets/code-editor-B2_SPkzS.js +0 -30
  492. package/dist/web/client/assets/context-graph-DVrWyUaG.js +0 -7
  493. package/dist/web/client/assets/core-DhEqZVGG.js +0 -1
  494. package/dist/web/client/assets/event-BK_86lmQ.js +0 -1
  495. package/dist/web/client/assets/index-BhDAhmA1.js +0 -1
  496. package/dist/web/client/assets/index-DIspyq1R.js +0 -352
  497. package/dist/web/client/assets/index-DT9Uq0bE.css +0 -1
  498. package/dist/web/client/assets/nomoreide-favicon-Ds7Tgj9p.svg +0 -24
  499. package/dist/web/client/assets/system-process-table-CWZIisGo.js +0 -1
  500. package/dist/web/client/assets/window-DlR023_X.js +0 -1
  501. package/dist/web/client/index.html +0 -44
  502. package/dist/web/dashboard.d.ts +0 -61
  503. package/dist/web/dashboard.js +0 -221
  504. package/dist/web/dashboard.js.map +0 -1
  505. package/dist/web/directories.d.ts +0 -27
  506. package/dist/web/directories.js +0 -81
  507. package/dist/web/directories.js.map +0 -1
  508. package/dist/web/http-utils.d.ts +0 -13
  509. package/dist/web/http-utils.js +0 -72
  510. package/dist/web/http-utils.js.map +0 -1
  511. package/dist/web/routes/agent-chat-routes.d.ts +0 -3
  512. package/dist/web/routes/agent-chat-routes.js +0 -186
  513. package/dist/web/routes/agent-chat-routes.js.map +0 -1
  514. package/dist/web/routes/agent-env-routes.d.ts +0 -9
  515. package/dist/web/routes/agent-env-routes.js +0 -86
  516. package/dist/web/routes/agent-env-routes.js.map +0 -1
  517. package/dist/web/routes/agent-profile-routes.d.ts +0 -8
  518. package/dist/web/routes/agent-profile-routes.js +0 -211
  519. package/dist/web/routes/agent-profile-routes.js.map +0 -1
  520. package/dist/web/routes/agent-registry-routes.d.ts +0 -2
  521. package/dist/web/routes/agent-registry-routes.js +0 -361
  522. package/dist/web/routes/agent-registry-routes.js.map +0 -1
  523. package/dist/web/routes/agent-routes.d.ts +0 -3
  524. package/dist/web/routes/agent-routes.js +0 -73
  525. package/dist/web/routes/agent-routes.js.map +0 -1
  526. package/dist/web/routes/agent-settings-routes.d.ts +0 -8
  527. package/dist/web/routes/agent-settings-routes.js +0 -67
  528. package/dist/web/routes/agent-settings-routes.js.map +0 -1
  529. package/dist/web/routes/context-library-routes.d.ts +0 -2
  530. package/dist/web/routes/context-library-routes.js +0 -139
  531. package/dist/web/routes/context-library-routes.js.map +0 -1
  532. package/dist/web/routes/context.d.ts +0 -73
  533. package/dist/web/routes/context.js +0 -48
  534. package/dist/web/routes/context.js.map +0 -1
  535. package/dist/web/routes/dashboard-routes.d.ts +0 -3
  536. package/dist/web/routes/dashboard-routes.js +0 -47
  537. package/dist/web/routes/dashboard-routes.js.map +0 -1
  538. package/dist/web/routes/database-routes.d.ts +0 -3
  539. package/dist/web/routes/database-routes.js +0 -341
  540. package/dist/web/routes/database-routes.js.map +0 -1
  541. package/dist/web/routes/docker-routes.d.ts +0 -7
  542. package/dist/web/routes/docker-routes.js +0 -122
  543. package/dist/web/routes/docker-routes.js.map +0 -1
  544. package/dist/web/routes/errors-routes.d.ts +0 -3
  545. package/dist/web/routes/errors-routes.js +0 -77
  546. package/dist/web/routes/errors-routes.js.map +0 -1
  547. package/dist/web/routes/extensions-routes.d.ts +0 -14
  548. package/dist/web/routes/extensions-routes.js +0 -21
  549. package/dist/web/routes/extensions-routes.js.map +0 -1
  550. package/dist/web/routes/git-routes.d.ts +0 -3
  551. package/dist/web/routes/git-routes.js +0 -598
  552. package/dist/web/routes/git-routes.js.map +0 -1
  553. package/dist/web/routes/github-context.d.ts +0 -11
  554. package/dist/web/routes/github-context.js +0 -34
  555. package/dist/web/routes/github-context.js.map +0 -1
  556. package/dist/web/routes/github-routes.d.ts +0 -2
  557. package/dist/web/routes/github-routes.js +0 -699
  558. package/dist/web/routes/github-routes.js.map +0 -1
  559. package/dist/web/routes/host-routes.d.ts +0 -2
  560. package/dist/web/routes/host-routes.js +0 -188
  561. package/dist/web/routes/host-routes.js.map +0 -1
  562. package/dist/web/routes/index.d.ts +0 -10
  563. package/dist/web/routes/index.js +0 -72
  564. package/dist/web/routes/index.js.map +0 -1
  565. package/dist/web/routes/jetbrains-import-routes.d.ts +0 -2
  566. package/dist/web/routes/jetbrains-import-routes.js +0 -121
  567. package/dist/web/routes/jetbrains-import-routes.js.map +0 -1
  568. package/dist/web/routes/log-sources-routes.d.ts +0 -6
  569. package/dist/web/routes/log-sources-routes.js +0 -102
  570. package/dist/web/routes/log-sources-routes.js.map +0 -1
  571. package/dist/web/routes/metrics-routes.d.ts +0 -3
  572. package/dist/web/routes/metrics-routes.js +0 -60
  573. package/dist/web/routes/metrics-routes.js.map +0 -1
  574. package/dist/web/routes/onboard-routes.d.ts +0 -9
  575. package/dist/web/routes/onboard-routes.js +0 -146
  576. package/dist/web/routes/onboard-routes.js.map +0 -1
  577. package/dist/web/routes/overview-routes.d.ts +0 -2
  578. package/dist/web/routes/overview-routes.js +0 -36
  579. package/dist/web/routes/overview-routes.js.map +0 -1
  580. package/dist/web/routes/provider-routes.d.ts +0 -2
  581. package/dist/web/routes/provider-routes.js +0 -558
  582. package/dist/web/routes/provider-routes.js.map +0 -1
  583. package/dist/web/routes/service-routes.d.ts +0 -3
  584. package/dist/web/routes/service-routes.js +0 -511
  585. package/dist/web/routes/service-routes.js.map +0 -1
  586. package/dist/web/routes/settings-routes.d.ts +0 -2
  587. package/dist/web/routes/settings-routes.js +0 -151
  588. package/dist/web/routes/settings-routes.js.map +0 -1
  589. package/dist/web/routes/shell-routes.d.ts +0 -22
  590. package/dist/web/routes/shell-routes.js +0 -75
  591. package/dist/web/routes/shell-routes.js.map +0 -1
  592. package/dist/web/routes/skills-routes.d.ts +0 -2
  593. package/dist/web/routes/skills-routes.js +0 -49
  594. package/dist/web/routes/skills-routes.js.map +0 -1
  595. package/dist/web/routes/snapshot-routes.d.ts +0 -8
  596. package/dist/web/routes/snapshot-routes.js +0 -194
  597. package/dist/web/routes/snapshot-routes.js.map +0 -1
  598. package/dist/web/routes/ssh-server-routes.d.ts +0 -10
  599. package/dist/web/routes/ssh-server-routes.js +0 -163
  600. package/dist/web/routes/ssh-server-routes.js.map +0 -1
  601. package/dist/web/routes/terminal-routes.d.ts +0 -7
  602. package/dist/web/routes/terminal-routes.js +0 -313
  603. package/dist/web/routes/terminal-routes.js.map +0 -1
  604. package/dist/web/routes/workflow-routes.d.ts +0 -8
  605. package/dist/web/routes/workflow-routes.js +0 -45
  606. package/dist/web/routes/workflow-routes.js.map +0 -1
  607. package/dist/web/routes/workflow-trigger-routes.d.ts +0 -9
  608. package/dist/web/routes/workflow-trigger-routes.js +0 -78
  609. package/dist/web/routes/workflow-trigger-routes.js.map +0 -1
  610. package/dist/web/server.d.ts +0 -31
  611. package/dist/web/server.js +0 -325
  612. package/dist/web/server.js.map +0 -1
  613. package/dist/web/service-tester.d.ts +0 -16
  614. package/dist/web/service-tester.js +0 -107
  615. package/dist/web/service-tester.js.map +0 -1
  616. package/dist/web/static-assets.d.ts +0 -3
  617. package/dist/web/static-assets.js +0 -64
  618. package/dist/web/static-assets.js.map +0 -1
  619. package/dist/web/usage-info.d.ts +0 -56
  620. package/dist/web/usage-info.js +0 -265
  621. package/dist/web/usage-info.js.map +0 -1
@@ -1,430 +0,0 @@
1
- import { capDefinition, objectFromIdentity, } from "./catalog.js";
2
- import { assertExpectedDeleteCount, buildRowBrowseClauses, clampLimit, clampOffset, columnsFromNames, normalizeRow, prepareUserQuery, } from "./driver.js";
3
- /**
4
- * Postgres driver. By default every statement runs inside a `READ ONLY`
5
- * transaction so a mistaken write is rejected by the server. A driver
6
- * constructed with `{ writable: true }` (only the DbWrite module does this)
7
- * opens a read-write pool for the guarded `executeWrite` path.
8
- */
9
- export class PostgresDriver {
10
- url;
11
- engine = "postgres";
12
- poolPromise = null;
13
- writable;
14
- constructor(url, options = {}) {
15
- this.url = url;
16
- this.writable = options.writable ?? false;
17
- }
18
- async pool() {
19
- if (!this.poolPromise) {
20
- this.poolPromise = (async () => {
21
- const { default: pg } = await import("pg");
22
- return new pg.Pool({
23
- connectionString: this.url,
24
- max: 4,
25
- connectionTimeoutMillis: 8000,
26
- // Belt-and-suspenders: read-only pools default every session to
27
- // read-only; writable pools omit it so executeWrite can persist.
28
- options: this.writable ? undefined : "-c default_transaction_read_only=on",
29
- });
30
- })();
31
- }
32
- return this.poolPromise;
33
- }
34
- async withReadOnly(fn) {
35
- const pool = await this.pool();
36
- const client = await pool.connect();
37
- try {
38
- await client.query("BEGIN TRANSACTION READ ONLY");
39
- const result = await fn(client);
40
- await client.query("COMMIT");
41
- return result;
42
- }
43
- catch (error) {
44
- await client.query("ROLLBACK").catch(() => { });
45
- throw error;
46
- }
47
- finally {
48
- client.release();
49
- }
50
- }
51
- async testConnection() {
52
- await this.withReadOnly((client) => client.query("SELECT 1"));
53
- }
54
- async listTables() {
55
- return this.withReadOnly(async (client) => {
56
- const { rows } = await client.query(`SELECT table_schema, table_name
57
- FROM information_schema.tables
58
- WHERE table_schema NOT IN ('pg_catalog', 'information_schema')
59
- AND table_type IN ('BASE TABLE', 'VIEW')
60
- ORDER BY table_schema, table_name`);
61
- return rows.map((row) => ({
62
- schema: row.table_schema,
63
- name: row.table_name,
64
- qualifiedName: `${row.table_schema}.${row.table_name}`,
65
- }));
66
- });
67
- }
68
- capabilities() {
69
- return {
70
- objectKinds: ["table", "view", "materializedView", "function", "procedure", "sequence"],
71
- tableDetails: ["columns", "indexes", "constraints", "triggers"],
72
- };
73
- }
74
- async listSchemas() {
75
- return this.withReadOnly(async (client) => {
76
- const { rows } = await client.query(`SELECT schema_name AS name
77
- FROM information_schema.schemata
78
- WHERE schema_name <> 'information_schema'
79
- AND schema_name NOT LIKE 'pg_%'
80
- ORDER BY schema_name`);
81
- return rows;
82
- });
83
- }
84
- async listObjects(schema, kinds) {
85
- const allowed = new Set(kinds ?? this.capabilities().objectKinds);
86
- return this.withReadOnly(async (client) => {
87
- const objects = [];
88
- const { rows: relations } = await client.query(`SELECT c.relname AS name, c.relkind, c.oid::text AS oid
89
- FROM pg_catalog.pg_class c
90
- JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
91
- WHERE n.nspname = $1 AND c.relkind IN ('r', 'p', 'v', 'm', 'S')
92
- ORDER BY c.relname`, [schema]);
93
- const kindFor = (relkind) => relkind === "v" ? "view" : relkind === "m" ? "materializedView" : relkind === "S" ? "sequence" : "table";
94
- for (const relation of relations) {
95
- const kind = kindFor(relation.relkind);
96
- if (allowed.has(kind)) {
97
- objects.push(objectFromIdentity({ schema, name: relation.name, kind, nativeId: relation.oid }));
98
- }
99
- }
100
- const routineKinds = [...allowed].filter((kind) => kind === "function" || kind === "procedure");
101
- if (routineKinds.length) {
102
- const { rows: routines } = await client.query(`SELECT p.proname AS name, p.prokind, p.oid::text AS oid,
103
- pg_get_function_identity_arguments(p.oid) AS arguments
104
- FROM pg_catalog.pg_proc p
105
- JOIN pg_catalog.pg_namespace n ON n.oid = p.pronamespace
106
- WHERE n.nspname = $1 AND p.prokind IN ('f', 'p')
107
- ORDER BY p.proname, arguments`, [schema]);
108
- for (const routine of routines) {
109
- const kind = routine.prokind === "p" ? "procedure" : "function";
110
- if (!allowed.has(kind))
111
- continue;
112
- objects.push(objectFromIdentity({
113
- schema,
114
- name: `${routine.name}(${routine.arguments})`,
115
- kind,
116
- nativeId: routine.oid,
117
- }));
118
- }
119
- }
120
- return objects;
121
- });
122
- }
123
- async describeObject(object) {
124
- const live = await this.listObjects(object.schema, [object.kind]);
125
- const resolved = live.find((candidate) => candidate.key === object.key);
126
- if (!resolved)
127
- throw new Error("Database object was not found in the live catalog.");
128
- return this.withReadOnly(async (client) => {
129
- const relationName = resolved.kind === "function" || resolved.kind === "procedure"
130
- ? resolved.name.slice(0, resolved.name.indexOf("("))
131
- : resolved.name;
132
- const columns = ["table", "view", "materializedView"].includes(resolved.kind)
133
- ? await this.columnsFor(client, resolved.schema, relationName)
134
- : [];
135
- const { rows: indexes } = await client.query(`SELECT indexname AS name, indexdef AS definition
136
- FROM pg_catalog.pg_indexes
137
- WHERE schemaname = $1 AND tablename = $2 ORDER BY indexname`, [resolved.schema, relationName]);
138
- const { rows: constraints } = await client.query(`SELECT c.conname AS name, c.contype::text AS type,
139
- pg_get_constraintdef(c.oid, true) AS definition
140
- FROM pg_catalog.pg_constraint c
141
- JOIN pg_catalog.pg_class r ON r.oid = c.conrelid
142
- JOIN pg_catalog.pg_namespace n ON n.oid = r.relnamespace
143
- WHERE n.nspname = $1 AND r.relname = $2 ORDER BY c.conname`, [resolved.schema, relationName]);
144
- const { rows: triggers } = await client.query(`SELECT t.tgname AS name, pg_get_triggerdef(t.oid, true) AS definition
145
- FROM pg_catalog.pg_trigger t
146
- JOIN pg_catalog.pg_class r ON r.oid = t.tgrelid
147
- JOIN pg_catalog.pg_namespace n ON n.oid = r.relnamespace
148
- WHERE NOT t.tgisinternal AND n.nspname = $1 AND r.relname = $2
149
- ORDER BY t.tgname`, [resolved.schema, relationName]);
150
- let definition;
151
- if ((resolved.kind === "function" || resolved.kind === "procedure") && resolved.nativeId) {
152
- const result = await client.query("SELECT pg_get_functiondef($1::oid) AS definition", [resolved.nativeId]);
153
- definition = result.rows[0]?.definition;
154
- }
155
- else if (resolved.kind === "view" || resolved.kind === "materializedView") {
156
- const result = await client.query("SELECT pg_get_viewdef($1::oid, true) AS definition", [resolved.nativeId]);
157
- definition = result.rows[0]?.definition;
158
- }
159
- const createScript = await this.createScriptFor(client, resolved, definition, constraints, triggers);
160
- return {
161
- object: resolved,
162
- columns,
163
- indexes: indexes.map((index) => ({ ...index, definition: capDefinition(index.definition) ?? "", unique: /CREATE UNIQUE INDEX/i.test(index.definition) })),
164
- constraints: constraints.map((constraint) => ({ ...constraint, definition: capDefinition(constraint.definition) ?? "" })),
165
- triggers: triggers.map((trigger) => ({ ...trigger, definition: capDefinition(trigger.definition) ?? "" })),
166
- definition: capDefinition(definition),
167
- createScript: capDefinition(createScript),
168
- };
169
- });
170
- }
171
- async createScriptFor(client, object, definition, constraints, triggers) {
172
- const qualifiedName = `${quoteIdentifier(object.schema)}.${quoteIdentifier(object.name)}`;
173
- if (object.kind === "function" || object.kind === "procedure") {
174
- return definition ? terminateStatement(definition) : undefined;
175
- }
176
- if (object.kind === "view" || object.kind === "materializedView") {
177
- if (!definition)
178
- return undefined;
179
- const materialized = object.kind === "materializedView" ? "MATERIALIZED " : "";
180
- return terminateStatement(`CREATE ${materialized}VIEW ${qualifiedName} AS\n${stripTerminator(definition)}`);
181
- }
182
- if (object.kind === "sequence") {
183
- const result = await client.query(`SELECT format_type(s.seqtypid, NULL) AS data_type,
184
- s.seqstart::text AS start_value,
185
- s.seqincrement::text AS increment_by,
186
- s.seqmin::text AS min_value,
187
- s.seqmax::text AS max_value,
188
- s.seqcache::text AS cache_size,
189
- s.seqcycle AS cycle
190
- FROM pg_catalog.pg_sequence s
191
- WHERE s.seqrelid = $1::oid`, [object.nativeId]);
192
- const sequence = result.rows[0];
193
- if (!sequence)
194
- return undefined;
195
- return terminateStatement([
196
- `CREATE SEQUENCE ${qualifiedName}`,
197
- ` AS ${sequence.data_type}`,
198
- ` INCREMENT BY ${sequence.increment_by}`,
199
- ` MINVALUE ${sequence.min_value}`,
200
- ` MAXVALUE ${sequence.max_value}`,
201
- ` START WITH ${sequence.start_value}`,
202
- ` CACHE ${sequence.cache_size}`,
203
- sequence.cycle ? " CYCLE" : " NO CYCLE",
204
- ].join("\n"));
205
- }
206
- if (object.kind !== "table" || !object.nativeId)
207
- return undefined;
208
- const { rows: columns } = await client.query(`SELECT a.attname AS name,
209
- pg_catalog.format_type(a.atttypid, a.atttypmod) AS data_type,
210
- pg_catalog.pg_get_expr(d.adbin, d.adrelid) AS default_value,
211
- a.attnotnull AS not_null,
212
- a.attidentity AS identity,
213
- a.attgenerated AS generated
214
- FROM pg_catalog.pg_attribute a
215
- LEFT JOIN pg_catalog.pg_attrdef d
216
- ON d.adrelid = a.attrelid AND d.adnum = a.attnum
217
- WHERE a.attrelid = $1::oid AND a.attnum > 0 AND NOT a.attisdropped
218
- ORDER BY a.attnum`, [object.nativeId]);
219
- const columnLines = columns.map((column) => {
220
- const parts = [quoteIdentifier(column.name), column.data_type];
221
- if (column.generated === "s" && column.default_value) {
222
- parts.push(`GENERATED ALWAYS AS (${column.default_value}) STORED`);
223
- }
224
- else if (column.identity) {
225
- parts.push(column.identity === "a"
226
- ? "GENERATED ALWAYS AS IDENTITY"
227
- : "GENERATED BY DEFAULT AS IDENTITY");
228
- }
229
- else if (column.default_value) {
230
- parts.push(`DEFAULT ${column.default_value}`);
231
- }
232
- if (column.not_null)
233
- parts.push("NOT NULL");
234
- return ` ${parts.join(" ")}`;
235
- });
236
- const constraintLines = constraints.map((constraint) => ` CONSTRAINT ${quoteIdentifier(constraint.name)} ${constraint.definition}`);
237
- const relation = await client.query("SELECT pg_get_partkeydef($1::oid) AS partition_key", [object.nativeId]);
238
- const createTable = [
239
- `CREATE TABLE ${qualifiedName} (`,
240
- [...columnLines, ...constraintLines].join(",\n"),
241
- `)${relation.rows[0]?.partition_key ? ` PARTITION BY ${relation.rows[0].partition_key}` : ""};`,
242
- ].join("\n");
243
- const { rows: indexes } = await client.query(`SELECT i.indexdef AS definition
244
- FROM pg_catalog.pg_indexes i
245
- JOIN pg_catalog.pg_class idx ON idx.relname = i.indexname
246
- JOIN pg_catalog.pg_namespace n ON n.oid = idx.relnamespace
247
- WHERE i.schemaname = $1 AND i.tablename = $2 AND n.nspname = $1
248
- AND NOT EXISTS (
249
- SELECT 1 FROM pg_catalog.pg_constraint c WHERE c.conindid = idx.oid
250
- )
251
- ORDER BY i.indexname`, [object.schema, object.name]);
252
- return [
253
- createTable,
254
- ...indexes.map((index) => terminateStatement(index.definition)),
255
- ...triggers.map((trigger) => terminateStatement(trigger.definition)),
256
- ].join("\n\n");
257
- }
258
- async sampleRows(table, limit, offset, query) {
259
- const schema = table.schema ?? "public";
260
- const name = table.name;
261
- const max = clampLimit(limit);
262
- const skip = clampOffset(offset);
263
- return this.withReadOnly(async (client) => {
264
- const columns = await this.columnsFor(client, schema, name);
265
- const clauses = buildRowBrowseClauses(columns, query, quoteIdentifier, (index) => `$${index}`);
266
- const { rows } = await client.query(`SELECT * FROM ${quoteIdentifier(schema)}.${quoteIdentifier(name)}${clauses.whereSql}${clauses.orderBySql} LIMIT $${clauses.values.length + 1} OFFSET $${clauses.values.length + 2}`, [...clauses.values, max, skip]);
267
- return {
268
- columns,
269
- rows: rows.map((row) => normalizeRow(row)),
270
- rowCount: rows.length,
271
- limit: max,
272
- offset: skip,
273
- };
274
- });
275
- }
276
- async *streamRows(table, columns, options = {}) {
277
- const pool = await this.pool();
278
- const client = await pool.connect();
279
- const batchSize = clampLimit(options.batchSize, 1_000);
280
- const qualifiedName = table.schema
281
- ? `${quoteIdentifier(table.schema)}.${quoteIdentifier(table.name)}`
282
- : quoteIdentifier(table.name);
283
- const primaryKeys = columns.filter((column) => column.primaryKey);
284
- const orderColumns = primaryKeys.length > 0
285
- ? primaryKeys.map((column) => quoteIdentifier(column.name))
286
- : columns.flatMap((column) => {
287
- const identifier = quoteIdentifier(column.name);
288
- return [
289
- `${identifier} IS NOT NULL`,
290
- `encode(convert_to(${identifier}::text, 'UTF8'), 'hex') COLLATE "C"`,
291
- ];
292
- });
293
- const order = orderColumns.length > 0 ? ` ORDER BY ${orderColumns.join(", ")}` : "";
294
- try {
295
- await client.query("BEGIN TRANSACTION ISOLATION LEVEL REPEATABLE READ READ ONLY");
296
- await client.query(`DECLARE nmi_export_cursor NO SCROLL CURSOR FOR SELECT * FROM ${qualifiedName}${order}`);
297
- while (!options.signal?.aborted) {
298
- const { rows } = await client.query(`FETCH FORWARD ${batchSize} FROM nmi_export_cursor`);
299
- if (rows.length === 0)
300
- break;
301
- yield rows.map((row) => normalizeRow(row));
302
- }
303
- if (options.signal?.aborted) {
304
- throw new DOMException("Database export cancelled", "AbortError");
305
- }
306
- }
307
- finally {
308
- await client.query("CLOSE nmi_export_cursor").catch(() => { });
309
- await client.query("ROLLBACK").catch(() => { });
310
- client.release();
311
- }
312
- }
313
- async runQuery(sql, maxRows) {
314
- const statement = prepareUserQuery(sql);
315
- const cap = clampLimit(maxRows);
316
- return this.withReadOnly(async (client) => {
317
- // Wrap in a subquery so we can bound the result set without parsing the
318
- // user's SQL; the READ ONLY transaction blocks any write regardless.
319
- const result = await client.query(`SELECT * FROM (${statement}) AS _nmi_q LIMIT $1`, [cap + 1]);
320
- const truncated = result.rows.length > cap;
321
- const rows = (truncated ? result.rows.slice(0, cap) : result.rows).map((row) => normalizeRow(row));
322
- return {
323
- columns: columnsFromNames(result.fields.map((field) => field.name)),
324
- rows,
325
- rowCount: rows.length,
326
- truncated,
327
- };
328
- });
329
- }
330
- async executeWrite(sql, commit) {
331
- if (!this.writable)
332
- throw new Error("This connection is read-only.");
333
- const statement = prepareUserQuery(sql);
334
- const pool = await this.pool();
335
- const client = await pool.connect();
336
- try {
337
- await client.query("BEGIN");
338
- const result = await client.query(statement);
339
- // Preview runs roll back so nothing persists; the caller sees the count.
340
- await client.query(commit ? "COMMIT" : "ROLLBACK");
341
- const rows = (result.rows ?? []).map((row) => normalizeRow(row));
342
- return {
343
- affectedRows: result.rowCount ?? rows.length,
344
- rows,
345
- columns: columnsFromNames((result.fields ?? []).map((field) => field.name)),
346
- committed: commit,
347
- };
348
- }
349
- catch (error) {
350
- await client.query("ROLLBACK").catch(() => { });
351
- throw error;
352
- }
353
- finally {
354
- client.release();
355
- }
356
- }
357
- async deleteRows(options) {
358
- if (!this.writable)
359
- throw new Error("This connection is read-only.");
360
- const table = options.table.schema
361
- ? `${quoteIdentifier(options.table.schema)}.${quoteIdentifier(options.table.name)}`
362
- : quoteIdentifier(options.table.name);
363
- const values = options.tuples.flatMap((tuple) => options.primaryKeys.map((column) => tuple[column]));
364
- let parameter = 0;
365
- const predicate = options.tuples
366
- .map(() => `(${options.primaryKeys
367
- .map((column) => `${quoteIdentifier(column)} = $${++parameter}`)
368
- .join(" AND ")})`)
369
- .join(" OR ");
370
- const pool = await this.pool();
371
- const client = await pool.connect();
372
- try {
373
- await client.query("BEGIN");
374
- const result = await client.query(`DELETE FROM ${table} WHERE ${predicate}`, values);
375
- const affectedRows = result.rowCount ?? 0;
376
- assertExpectedDeleteCount(options, affectedRows);
377
- await client.query(options.commit ? "COMMIT" : "ROLLBACK");
378
- return { affectedRows, rows: [], columns: [], committed: options.commit };
379
- }
380
- catch (error) {
381
- await client.query("ROLLBACK").catch(() => { });
382
- throw error;
383
- }
384
- finally {
385
- client.release();
386
- }
387
- }
388
- async columnsFor(client, schema, name) {
389
- const { rows } = await client.query(`SELECT c.column_name,
390
- c.data_type,
391
- c.is_nullable,
392
- COALESCE(pk.is_primary, false) AS is_primary
393
- FROM information_schema.columns c
394
- LEFT JOIN (
395
- SELECT kcu.column_name, true AS is_primary
396
- FROM information_schema.table_constraints tc
397
- JOIN information_schema.key_column_usage kcu
398
- ON kcu.constraint_name = tc.constraint_name
399
- AND kcu.table_schema = tc.table_schema
400
- WHERE tc.constraint_type = 'PRIMARY KEY'
401
- AND tc.table_schema = $1
402
- AND tc.table_name = $2
403
- ) pk ON pk.column_name = c.column_name
404
- WHERE c.table_schema = $1 AND c.table_name = $2
405
- ORDER BY c.ordinal_position`, [schema, name]);
406
- return rows.map((row) => ({
407
- name: row.column_name,
408
- dataType: row.data_type,
409
- nullable: row.is_nullable === "YES",
410
- primaryKey: row.is_primary,
411
- }));
412
- }
413
- async close() {
414
- if (this.poolPromise) {
415
- const pool = await this.poolPromise;
416
- await pool.end();
417
- this.poolPromise = null;
418
- }
419
- }
420
- }
421
- function quoteIdentifier(value) {
422
- return `"${value.replaceAll('"', '""')}"`;
423
- }
424
- function stripTerminator(value) {
425
- return value.trim().replace(/;+$/, "");
426
- }
427
- function terminateStatement(value) {
428
- return `${stripTerminator(value)};`;
429
- }
430
- //# sourceMappingURL=postgres-driver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"postgres-driver.js","sourceRoot":"","sources":["../../../src/core/db/postgres-driver.ts"],"names":[],"mappings":"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"}
@@ -1,30 +0,0 @@
1
- import type { DatabaseEngine } from "../types.js";
2
- import { type DatabaseCapabilities, type DatabaseObject, type DatabaseObjectDetails, type DatabaseObjectKind, type DatabaseSchema } from "./catalog.js";
3
- import { type ColumnInfo, type DeleteRowsOptions, type DbDriver, type DbWriteDriver, type QueryResult, type RowBrowseQuery, type RowSample, type StreamRowsOptions, type TableRef, type WriteResult } from "./driver.js";
4
- /**
5
- * SQLite driver backed by Node's built-in `node:sqlite`. The file is opened
6
- * read-only, so the connection itself cannot mutate the database.
7
- */
8
- export declare class SqliteDriver implements DbDriver, DbWriteDriver {
9
- private readonly file;
10
- readonly engine: DatabaseEngine;
11
- private dbPromise;
12
- private readonly writable;
13
- constructor(file: string, options?: {
14
- writable?: boolean;
15
- });
16
- private openDatabase;
17
- private db;
18
- testConnection(): Promise<void>;
19
- listTables(): Promise<TableRef[]>;
20
- capabilities(): DatabaseCapabilities;
21
- listSchemas(): Promise<DatabaseSchema[]>;
22
- listObjects(schema: string, kinds?: DatabaseObjectKind[]): Promise<DatabaseObject[]>;
23
- describeObject(object: DatabaseObject): Promise<DatabaseObjectDetails>;
24
- sampleRows(table: TableRef, limit: number, offset?: number, query?: RowBrowseQuery): Promise<RowSample>;
25
- streamRows(table: TableRef, columns: ColumnInfo[], options?: StreamRowsOptions): AsyncIterable<Array<Record<string, unknown>>>;
26
- runQuery(sql: string, maxRows: number): Promise<QueryResult>;
27
- executeWrite(sql: string, commit: boolean): Promise<WriteResult>;
28
- deleteRows(options: DeleteRowsOptions): Promise<WriteResult>;
29
- close(): Promise<void>;
30
- }