maestro-flow 0.3.1 → 0.3.3

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 (574) hide show
  1. package/.claude/CLAUDE.md +2 -2
  2. package/.claude/agents/cli-explore-agent.md +1 -1
  3. package/.claude/agents/team-worker.md +237 -237
  4. package/.claude/commands/maestro-coordinate.md +65 -65
  5. package/.claude/commands/maestro-link-coordinate.md +71 -71
  6. package/.claude/commands/maestro-overlay.md +178 -122
  7. package/.claude/commands/manage-issue-execute.md +73 -73
  8. package/.claude/skills/team-coordinate/SKILL.md +266 -266
  9. package/.claude/skills/team-lifecycle-v4/SKILL.md +209 -209
  10. package/.claude/skills/team-lifecycle-v4/roles/analyst/role.md +94 -94
  11. package/.claude/skills/team-lifecycle-v4/roles/executor/commands/implement.md +62 -62
  12. package/.claude/skills/team-lifecycle-v4/roles/planner/role.md +85 -85
  13. package/.claude/skills/team-lifecycle-v4/roles/writer/role.md +95 -95
  14. package/.claude/skills/team-quality-assurance/SKILL.md +147 -147
  15. package/.claude/skills/team-quality-assurance/roles/scout/role.md +75 -75
  16. package/.claude/skills/team-review/SKILL.md +147 -147
  17. package/.claude/skills/team-review/roles/reviewer/role.md +68 -68
  18. package/.claude/skills/team-review/roles/scanner/role.md +79 -79
  19. package/.claude/skills/team-tech-debt/SKILL.md +128 -128
  20. package/.claude/skills/team-tech-debt/roles/executor/role.md +76 -76
  21. package/.claude/skills/team-tech-debt/roles/scanner/role.md +90 -90
  22. package/.claude/skills/team-tech-debt/roles/validator/role.md +78 -78
  23. package/.claude/skills/team-testing/SKILL.md +143 -143
  24. package/.claude/skills/team-testing/roles/executor/role.md +99 -99
  25. package/.claude/skills/team-testing/roles/generator/role.md +98 -98
  26. package/.codex/skills/maestro-coordinate/SKILL.md +4 -5
  27. package/.codex/skills/manage-issue-analyze/SKILL.md +3 -3
  28. package/.codex/skills/manage-issue-execute/SKILL.md +4 -4
  29. package/.codex/skills/manage-issue-plan/SKILL.md +2 -2
  30. package/.codex/skills/team-coordinate/SKILL.md +7 -7
  31. package/.codex/skills/team-coordinate/roles/coordinator/role.md +1 -1
  32. package/.codex/skills/team-lifecycle-v4/SKILL.md +2 -2
  33. package/.codex/skills/team-lifecycle-v4/instructions/agent-instruction.md +2 -2
  34. package/.codex/skills/team-lifecycle-v4/roles/analyst/role.md +2 -2
  35. package/.codex/skills/team-lifecycle-v4/roles/coordinator/role.md +2 -2
  36. package/.codex/skills/team-lifecycle-v4/roles/executor/commands/implement.md +1 -1
  37. package/.codex/skills/team-lifecycle-v4/roles/planner/role.md +2 -2
  38. package/.codex/skills/team-lifecycle-v4/roles/writer/role.md +1 -1
  39. package/.codex/skills/team-quality-assurance/SKILL.md +2 -2
  40. package/.codex/skills/team-quality-assurance/roles/coordinator/role.md +2 -2
  41. package/.codex/skills/team-quality-assurance/roles/scout/role.md +2 -2
  42. package/.codex/skills/team-review/SKILL.md +2 -2
  43. package/.codex/skills/team-review/roles/coordinator/role.md +2 -2
  44. package/.codex/skills/team-review/roles/reviewer/role.md +1 -1
  45. package/.codex/skills/team-review/roles/scanner/role.md +1 -1
  46. package/.codex/skills/team-tech-debt/SKILL.md +2 -2
  47. package/.codex/skills/team-tech-debt/roles/coordinator/role.md +1 -1
  48. package/.codex/skills/team-tech-debt/roles/executor/role.md +1 -1
  49. package/.codex/skills/team-tech-debt/roles/scanner/role.md +1 -1
  50. package/.codex/skills/team-tech-debt/roles/validator/role.md +1 -1
  51. package/.codex/skills/team-testing/SKILL.md +2 -2
  52. package/.codex/skills/team-testing/roles/coordinator/role.md +2 -2
  53. package/.codex/skills/team-testing/roles/executor/role.md +1 -1
  54. package/.codex/skills/team-testing/roles/generator/role.md +1 -1
  55. package/README.md +31 -2
  56. package/README.zh-CN.md +23 -1
  57. package/dist/src/agents/cli-agent-runner.d.ts.map +1 -1
  58. package/dist/src/agents/cli-agent-runner.js +6 -15
  59. package/dist/src/agents/cli-agent-runner.js.map +1 -1
  60. package/dist/src/commands/delegate.d.ts.map +1 -1
  61. package/dist/src/commands/delegate.js +77 -1
  62. package/dist/src/commands/delegate.js.map +1 -1
  63. package/dist/src/commands/hooks.d.ts +15 -0
  64. package/dist/src/commands/hooks.d.ts.map +1 -1
  65. package/dist/src/commands/hooks.js +29 -2
  66. package/dist/src/commands/hooks.js.map +1 -1
  67. package/dist/src/commands/install-backend.d.ts +15 -0
  68. package/dist/src/commands/install-backend.d.ts.map +1 -1
  69. package/dist/src/commands/install-backend.js +67 -0
  70. package/dist/src/commands/install-backend.js.map +1 -1
  71. package/dist/src/commands/install-ui/BackupConfig.d.ts +6 -4
  72. package/dist/src/commands/install-ui/BackupConfig.d.ts.map +1 -1
  73. package/dist/src/commands/install-ui/BackupConfig.js +39 -12
  74. package/dist/src/commands/install-ui/BackupConfig.js.map +1 -1
  75. package/dist/src/commands/install-ui/ConfigPanel.d.ts.map +1 -1
  76. package/dist/src/commands/install-ui/ConfigPanel.js +1 -1
  77. package/dist/src/commands/install-ui/ConfigPanel.js.map +1 -1
  78. package/dist/src/commands/install-ui/InstallConfirm.d.ts +3 -0
  79. package/dist/src/commands/install-ui/InstallConfirm.d.ts.map +1 -1
  80. package/dist/src/commands/install-ui/InstallConfirm.js +5 -1
  81. package/dist/src/commands/install-ui/InstallConfirm.js.map +1 -1
  82. package/dist/src/commands/install-ui/InstallExecution.d.ts +2 -0
  83. package/dist/src/commands/install-ui/InstallExecution.d.ts.map +1 -1
  84. package/dist/src/commands/install-ui/InstallExecution.js +30 -5
  85. package/dist/src/commands/install-ui/InstallExecution.js.map +1 -1
  86. package/dist/src/commands/install-ui/InstallFlow.d.ts +1 -1
  87. package/dist/src/commands/install-ui/InstallFlow.d.ts.map +1 -1
  88. package/dist/src/commands/install-ui/InstallFlow.js +31 -6
  89. package/dist/src/commands/install-ui/InstallFlow.js.map +1 -1
  90. package/dist/src/commands/install-ui/InstallHub.d.ts +5 -0
  91. package/dist/src/commands/install-ui/InstallHub.d.ts.map +1 -1
  92. package/dist/src/commands/install-ui/InstallHub.js +24 -0
  93. package/dist/src/commands/install-ui/InstallHub.js.map +1 -1
  94. package/dist/src/commands/install-ui/InstallResult.d.ts.map +1 -1
  95. package/dist/src/commands/install-ui/InstallResult.js +1 -1
  96. package/dist/src/commands/install-ui/InstallResult.js.map +1 -1
  97. package/dist/src/commands/install-ui/StatuslineConfig.d.ts +9 -0
  98. package/dist/src/commands/install-ui/StatuslineConfig.d.ts.map +1 -0
  99. package/dist/src/commands/install-ui/StatuslineConfig.js +13 -0
  100. package/dist/src/commands/install-ui/StatuslineConfig.js.map +1 -0
  101. package/dist/src/commands/install-ui/index.d.ts +1 -1
  102. package/dist/src/commands/install-ui/index.d.ts.map +1 -1
  103. package/dist/src/commands/install-ui/types.d.ts +6 -0
  104. package/dist/src/commands/install-ui/types.d.ts.map +1 -1
  105. package/dist/src/commands/install-ui/types.js +3 -0
  106. package/dist/src/commands/install-ui/types.js.map +1 -1
  107. package/dist/src/commands/install.d.ts.map +1 -1
  108. package/dist/src/commands/install.js +6 -1
  109. package/dist/src/commands/install.js.map +1 -1
  110. package/dist/src/commands/launcher.js +1 -1
  111. package/dist/src/commands/launcher.js.map +1 -1
  112. package/dist/src/commands/overlay-ui/OverlayList.d.ts +35 -0
  113. package/dist/src/commands/overlay-ui/OverlayList.d.ts.map +1 -0
  114. package/dist/src/commands/overlay-ui/OverlayList.js +143 -0
  115. package/dist/src/commands/overlay-ui/OverlayList.js.map +1 -0
  116. package/dist/src/commands/overlay-ui/index.d.ts +2 -0
  117. package/dist/src/commands/overlay-ui/index.d.ts.map +1 -0
  118. package/dist/src/commands/overlay-ui/index.js +188 -0
  119. package/dist/src/commands/overlay-ui/index.js.map +1 -0
  120. package/dist/src/commands/overlay.d.ts.map +1 -1
  121. package/dist/src/commands/overlay.js +124 -60
  122. package/dist/src/commands/overlay.js.map +1 -1
  123. package/dist/src/commands/team.d.ts +10 -0
  124. package/dist/src/commands/team.d.ts.map +1 -1
  125. package/dist/src/commands/team.js +436 -42
  126. package/dist/src/commands/team.js.map +1 -1
  127. package/dist/src/core/manifest.d.ts.map +1 -1
  128. package/dist/src/core/manifest.js +58 -0
  129. package/dist/src/core/manifest.js.map +1 -1
  130. package/dist/src/core/overlay/applier.d.ts +36 -1
  131. package/dist/src/core/overlay/applier.d.ts.map +1 -1
  132. package/dist/src/core/overlay/applier.js +109 -1
  133. package/dist/src/core/overlay/applier.js.map +1 -1
  134. package/dist/src/hooks/delegate-monitor.js +1 -1
  135. package/dist/src/hooks/delegate-monitor.js.map +1 -1
  136. package/dist/src/hooks/plugins/spec-injection-plugin.d.ts.map +1 -1
  137. package/dist/src/hooks/plugins/spec-injection-plugin.js +17 -1
  138. package/dist/src/hooks/plugins/spec-injection-plugin.js.map +1 -1
  139. package/dist/src/hooks/spec-injector.d.ts +2 -1
  140. package/dist/src/hooks/spec-injector.d.ts.map +1 -1
  141. package/dist/src/hooks/spec-injector.js +19 -2
  142. package/dist/src/hooks/spec-injector.js.map +1 -1
  143. package/dist/src/hooks/team-monitor.d.ts.map +1 -1
  144. package/dist/src/hooks/team-monitor.js +17 -0
  145. package/dist/src/hooks/team-monitor.js.map +1 -1
  146. package/dist/src/i18n/locales/en.d.ts.map +1 -1
  147. package/dist/src/i18n/locales/en.js +25 -1
  148. package/dist/src/i18n/locales/en.js.map +1 -1
  149. package/dist/src/i18n/locales/zh.d.ts.map +1 -1
  150. package/dist/src/i18n/locales/zh.js +25 -1
  151. package/dist/src/i18n/locales/zh.js.map +1 -1
  152. package/dist/src/i18n/types.d.ts +22 -0
  153. package/dist/src/i18n/types.d.ts.map +1 -1
  154. package/dist/src/mcp/delegate-channel-relay.d.ts.map +1 -1
  155. package/dist/src/mcp/delegate-channel-relay.js +2 -7
  156. package/dist/src/mcp/delegate-channel-relay.js.map +1 -1
  157. package/dist/src/tools/namespace-guard.d.ts +37 -0
  158. package/dist/src/tools/namespace-guard.d.ts.map +1 -0
  159. package/dist/src/tools/namespace-guard.js +126 -0
  160. package/dist/src/tools/namespace-guard.js.map +1 -0
  161. package/dist/src/tools/spec-loader.d.ts +17 -1
  162. package/dist/src/tools/spec-loader.d.ts.map +1 -1
  163. package/dist/src/tools/spec-loader.js +71 -13
  164. package/dist/src/tools/spec-loader.js.map +1 -1
  165. package/dist/src/tools/team-members.d.ts +16 -0
  166. package/dist/src/tools/team-members.d.ts.map +1 -1
  167. package/dist/src/tools/team-members.js +31 -0
  168. package/dist/src/tools/team-members.js.map +1 -1
  169. package/package.json +1 -1
  170. package/workflows/delegate-usage.md +330 -0
  171. package/dist/agents/cli-agent-runner.d.ts +0 -131
  172. package/dist/agents/cli-agent-runner.d.ts.map +0 -1
  173. package/dist/agents/cli-agent-runner.js +0 -688
  174. package/dist/agents/cli-agent-runner.js.map +0 -1
  175. package/dist/agents/cli-history-store.d.ts +0 -63
  176. package/dist/agents/cli-history-store.d.ts.map +0 -1
  177. package/dist/agents/cli-history-store.js +0 -242
  178. package/dist/agents/cli-history-store.js.map +0 -1
  179. package/dist/agents/dashboard-bridge.d.ts +0 -39
  180. package/dist/agents/dashboard-bridge.d.ts.map +0 -1
  181. package/dist/agents/dashboard-bridge.js +0 -76
  182. package/dist/agents/dashboard-bridge.js.map +0 -1
  183. package/dist/agents/parallel-cli-runner.d.ts +0 -46
  184. package/dist/agents/parallel-cli-runner.d.ts.map +0 -1
  185. package/dist/agents/parallel-cli-runner.js +0 -277
  186. package/dist/agents/parallel-cli-runner.js.map +0 -1
  187. package/dist/agents/terminal-adapter.d.ts +0 -94
  188. package/dist/agents/terminal-adapter.d.ts.map +0 -1
  189. package/dist/agents/terminal-adapter.js +0 -132
  190. package/dist/agents/terminal-adapter.js.map +0 -1
  191. package/dist/agents/terminal-backend.d.ts +0 -53
  192. package/dist/agents/terminal-backend.d.ts.map +0 -1
  193. package/dist/agents/terminal-backend.js +0 -286
  194. package/dist/agents/terminal-backend.js.map +0 -1
  195. package/dist/async/delegate-broker-client.d.ts +0 -22
  196. package/dist/async/delegate-broker-client.d.ts.map +0 -1
  197. package/dist/async/delegate-broker-client.js +0 -47
  198. package/dist/async/delegate-broker-client.js.map +0 -1
  199. package/dist/async/delegate-broker.d.ts +0 -180
  200. package/dist/async/delegate-broker.d.ts.map +0 -1
  201. package/dist/async/delegate-broker.js +0 -1040
  202. package/dist/async/delegate-broker.js.map +0 -1
  203. package/dist/async/delegate-control.d.ts +0 -37
  204. package/dist/async/delegate-control.d.ts.map +0 -1
  205. package/dist/async/delegate-control.js +0 -155
  206. package/dist/async/delegate-control.js.map +0 -1
  207. package/dist/async/index.d.ts +0 -3
  208. package/dist/async/index.d.ts.map +0 -1
  209. package/dist/async/index.js +0 -3
  210. package/dist/async/index.js.map +0 -1
  211. package/dist/cli.d.ts +0 -2
  212. package/dist/cli.d.ts.map +0 -1
  213. package/dist/cli.js +0 -40
  214. package/dist/cli.js.map +0 -1
  215. package/dist/commands/cli.d.ts +0 -3
  216. package/dist/commands/cli.d.ts.map +0 -1
  217. package/dist/commands/cli.js +0 -262
  218. package/dist/commands/cli.js.map +0 -1
  219. package/dist/commands/coordinate.d.ts +0 -3
  220. package/dist/commands/coordinate.d.ts.map +0 -1
  221. package/dist/commands/coordinate.js +0 -275
  222. package/dist/commands/coordinate.js.map +0 -1
  223. package/dist/commands/delegate.d.ts +0 -37
  224. package/dist/commands/delegate.d.ts.map +0 -1
  225. package/dist/commands/delegate.js +0 -470
  226. package/dist/commands/delegate.js.map +0 -1
  227. package/dist/commands/ext.d.ts +0 -3
  228. package/dist/commands/ext.d.ts.map +0 -1
  229. package/dist/commands/ext.js +0 -28
  230. package/dist/commands/ext.js.map +0 -1
  231. package/dist/commands/hooks.d.ts +0 -3
  232. package/dist/commands/hooks.d.ts.map +0 -1
  233. package/dist/commands/hooks.js +0 -126
  234. package/dist/commands/hooks.js.map +0 -1
  235. package/dist/commands/install.d.ts +0 -3
  236. package/dist/commands/install.d.ts.map +0 -1
  237. package/dist/commands/install.js +0 -621
  238. package/dist/commands/install.js.map +0 -1
  239. package/dist/commands/launcher.d.ts +0 -3
  240. package/dist/commands/launcher.d.ts.map +0 -1
  241. package/dist/commands/launcher.js +0 -635
  242. package/dist/commands/launcher.js.map +0 -1
  243. package/dist/commands/link-coordinate.d.ts +0 -3
  244. package/dist/commands/link-coordinate.d.ts.map +0 -1
  245. package/dist/commands/link-coordinate.js +0 -225
  246. package/dist/commands/link-coordinate.js.map +0 -1
  247. package/dist/commands/msg.d.ts +0 -3
  248. package/dist/commands/msg.d.ts.map +0 -1
  249. package/dist/commands/msg.js +0 -110
  250. package/dist/commands/msg.js.map +0 -1
  251. package/dist/commands/overlay.d.ts +0 -3
  252. package/dist/commands/overlay.d.ts.map +0 -1
  253. package/dist/commands/overlay.js +0 -243
  254. package/dist/commands/overlay.js.map +0 -1
  255. package/dist/commands/run.d.ts +0 -3
  256. package/dist/commands/run.d.ts.map +0 -1
  257. package/dist/commands/run.js +0 -15
  258. package/dist/commands/run.js.map +0 -1
  259. package/dist/commands/serve.d.ts +0 -3
  260. package/dist/commands/serve.d.ts.map +0 -1
  261. package/dist/commands/serve.js +0 -16
  262. package/dist/commands/serve.js.map +0 -1
  263. package/dist/commands/spec.d.ts +0 -8
  264. package/dist/commands/spec.d.ts.map +0 -1
  265. package/dist/commands/spec.js +0 -147
  266. package/dist/commands/spec.js.map +0 -1
  267. package/dist/commands/stop.d.ts +0 -3
  268. package/dist/commands/stop.d.ts.map +0 -1
  269. package/dist/commands/stop.js +0 -218
  270. package/dist/commands/stop.js.map +0 -1
  271. package/dist/commands/tool.d.ts +0 -3
  272. package/dist/commands/tool.d.ts.map +0 -1
  273. package/dist/commands/tool.js +0 -29
  274. package/dist/commands/tool.js.map +0 -1
  275. package/dist/commands/uninstall.d.ts +0 -3
  276. package/dist/commands/uninstall.d.ts.map +0 -1
  277. package/dist/commands/uninstall.js +0 -77
  278. package/dist/commands/uninstall.js.map +0 -1
  279. package/dist/commands/view.d.ts +0 -3
  280. package/dist/commands/view.d.ts.map +0 -1
  281. package/dist/commands/view.js +0 -337
  282. package/dist/commands/view.js.map +0 -1
  283. package/dist/config/cli-tools-config.d.ts +0 -26
  284. package/dist/config/cli-tools-config.d.ts.map +0 -1
  285. package/dist/config/cli-tools-config.js +0 -49
  286. package/dist/config/cli-tools-config.js.map +0 -1
  287. package/dist/config/cli-tools-config.test.d.ts +0 -2
  288. package/dist/config/cli-tools-config.test.d.ts.map +0 -1
  289. package/dist/config/cli-tools-config.test.js +0 -59
  290. package/dist/config/cli-tools-config.test.js.map +0 -1
  291. package/dist/config/index.d.ts +0 -4
  292. package/dist/config/index.d.ts.map +0 -1
  293. package/dist/config/index.js +0 -27
  294. package/dist/config/index.js.map +0 -1
  295. package/dist/config/paths.d.ts +0 -15
  296. package/dist/config/paths.d.ts.map +0 -1
  297. package/dist/config/paths.js +0 -27
  298. package/dist/config/paths.js.map +0 -1
  299. package/dist/config/template-discovery.d.ts +0 -32
  300. package/dist/config/template-discovery.d.ts.map +0 -1
  301. package/dist/config/template-discovery.js +0 -128
  302. package/dist/config/template-discovery.js.map +0 -1
  303. package/dist/coordinator/cli-executor.d.ts +0 -22
  304. package/dist/coordinator/cli-executor.d.ts.map +0 -1
  305. package/dist/coordinator/cli-executor.js +0 -49
  306. package/dist/coordinator/cli-executor.js.map +0 -1
  307. package/dist/coordinator/expr-evaluator.d.ts +0 -11
  308. package/dist/coordinator/expr-evaluator.d.ts.map +0 -1
  309. package/dist/coordinator/expr-evaluator.js +0 -351
  310. package/dist/coordinator/expr-evaluator.js.map +0 -1
  311. package/dist/coordinator/graph-loader.d.ts +0 -16
  312. package/dist/coordinator/graph-loader.d.ts.map +0 -1
  313. package/dist/coordinator/graph-loader.js +0 -190
  314. package/dist/coordinator/graph-loader.js.map +0 -1
  315. package/dist/coordinator/graph-types.d.ts +0 -304
  316. package/dist/coordinator/graph-types.d.ts.map +0 -1
  317. package/dist/coordinator/graph-types.js +0 -6
  318. package/dist/coordinator/graph-types.js.map +0 -1
  319. package/dist/coordinator/graph-walker.d.ts +0 -51
  320. package/dist/coordinator/graph-walker.d.ts.map +0 -1
  321. package/dist/coordinator/graph-walker.js +0 -666
  322. package/dist/coordinator/graph-walker.js.map +0 -1
  323. package/dist/coordinator/index.d.ts +0 -13
  324. package/dist/coordinator/index.d.ts.map +0 -1
  325. package/dist/coordinator/index.js +0 -14
  326. package/dist/coordinator/index.js.map +0 -1
  327. package/dist/coordinator/intent-router.d.ts +0 -11
  328. package/dist/coordinator/intent-router.d.ts.map +0 -1
  329. package/dist/coordinator/intent-router.js +0 -65
  330. package/dist/coordinator/intent-router.js.map +0 -1
  331. package/dist/coordinator/link-session.d.ts +0 -29
  332. package/dist/coordinator/link-session.d.ts.map +0 -1
  333. package/dist/coordinator/link-session.js +0 -192
  334. package/dist/coordinator/link-session.js.map +0 -1
  335. package/dist/coordinator/link-walker.d.ts +0 -56
  336. package/dist/coordinator/link-walker.d.ts.map +0 -1
  337. package/dist/coordinator/link-walker.js +0 -548
  338. package/dist/coordinator/link-walker.js.map +0 -1
  339. package/dist/coordinator/output-parser.d.ts +0 -5
  340. package/dist/coordinator/output-parser.d.ts.map +0 -1
  341. package/dist/coordinator/output-parser.js +0 -114
  342. package/dist/coordinator/output-parser.js.map +0 -1
  343. package/dist/coordinator/parallel-executor.d.ts +0 -24
  344. package/dist/coordinator/parallel-executor.d.ts.map +0 -1
  345. package/dist/coordinator/parallel-executor.js +0 -43
  346. package/dist/coordinator/parallel-executor.js.map +0 -1
  347. package/dist/coordinator/prompt-assembler.d.ts +0 -15
  348. package/dist/coordinator/prompt-assembler.d.ts.map +0 -1
  349. package/dist/coordinator/prompt-assembler.js +0 -228
  350. package/dist/coordinator/prompt-assembler.js.map +0 -1
  351. package/dist/coordinator/step-analyzer.d.ts +0 -8
  352. package/dist/coordinator/step-analyzer.d.ts.map +0 -1
  353. package/dist/coordinator/step-analyzer.js +0 -82
  354. package/dist/coordinator/step-analyzer.js.map +0 -1
  355. package/dist/core/extension-loader.d.ts +0 -11
  356. package/dist/core/extension-loader.d.ts.map +0 -1
  357. package/dist/core/extension-loader.js +0 -54
  358. package/dist/core/extension-loader.js.map +0 -1
  359. package/dist/core/manifest.d.ts +0 -24
  360. package/dist/core/manifest.d.ts.map +0 -1
  361. package/dist/core/manifest.js +0 -139
  362. package/dist/core/manifest.js.map +0 -1
  363. package/dist/core/mcp-tool-registry.integration.test.d.ts +0 -2
  364. package/dist/core/mcp-tool-registry.integration.test.d.ts.map +0 -1
  365. package/dist/core/mcp-tool-registry.integration.test.js +0 -220
  366. package/dist/core/mcp-tool-registry.integration.test.js.map +0 -1
  367. package/dist/core/overlay/applier.d.ts +0 -73
  368. package/dist/core/overlay/applier.d.ts.map +0 -1
  369. package/dist/core/overlay/applier.js +0 -248
  370. package/dist/core/overlay/applier.js.map +0 -1
  371. package/dist/core/overlay/loader.d.ts +0 -26
  372. package/dist/core/overlay/loader.d.ts.map +0 -1
  373. package/dist/core/overlay/loader.js +0 -199
  374. package/dist/core/overlay/loader.js.map +0 -1
  375. package/dist/core/overlay/patcher.d.ts +0 -26
  376. package/dist/core/overlay/patcher.d.ts.map +0 -1
  377. package/dist/core/overlay/patcher.js +0 -212
  378. package/dist/core/overlay/patcher.js.map +0 -1
  379. package/dist/core/overlay/section-parser.d.ts +0 -25
  380. package/dist/core/overlay/section-parser.d.ts.map +0 -1
  381. package/dist/core/overlay/section-parser.js +0 -99
  382. package/dist/core/overlay/section-parser.js.map +0 -1
  383. package/dist/core/overlay/types.d.ts +0 -51
  384. package/dist/core/overlay/types.d.ts.map +0 -1
  385. package/dist/core/overlay/types.js +0 -15
  386. package/dist/core/overlay/types.js.map +0 -1
  387. package/dist/core/tool-registry.d.ts +0 -10
  388. package/dist/core/tool-registry.d.ts.map +0 -1
  389. package/dist/core/tool-registry.js +0 -29
  390. package/dist/core/tool-registry.js.map +0 -1
  391. package/dist/core/tool-registry.test.d.ts +0 -2
  392. package/dist/core/tool-registry.test.d.ts.map +0 -1
  393. package/dist/core/tool-registry.test.js +0 -78
  394. package/dist/core/tool-registry.test.js.map +0 -1
  395. package/dist/db/connection-pool.d.ts +0 -21
  396. package/dist/db/connection-pool.d.ts.map +0 -1
  397. package/dist/db/connection-pool.js +0 -53
  398. package/dist/db/connection-pool.js.map +0 -1
  399. package/dist/db/index.d.ts +0 -6
  400. package/dist/db/index.d.ts.map +0 -1
  401. package/dist/db/index.js +0 -9
  402. package/dist/db/index.js.map +0 -1
  403. package/dist/db/schema/core/index.d.ts +0 -5
  404. package/dist/db/schema/core/index.d.ts.map +0 -1
  405. package/dist/db/schema/core/index.js +0 -5
  406. package/dist/db/schema/core/index.js.map +0 -1
  407. package/dist/db/schema/core/organizations.d.ts +0 -244
  408. package/dist/db/schema/core/organizations.d.ts.map +0 -1
  409. package/dist/db/schema/core/organizations.js +0 -44
  410. package/dist/db/schema/core/organizations.js.map +0 -1
  411. package/dist/db/schema/core/permissions.d.ts +0 -158
  412. package/dist/db/schema/core/permissions.d.ts.map +0 -1
  413. package/dist/db/schema/core/permissions.js +0 -62
  414. package/dist/db/schema/core/permissions.js.map +0 -1
  415. package/dist/db/schema/core/refresh-tokens.d.ts +0 -147
  416. package/dist/db/schema/core/refresh-tokens.d.ts.map +0 -1
  417. package/dist/db/schema/core/refresh-tokens.js +0 -22
  418. package/dist/db/schema/core/refresh-tokens.js.map +0 -1
  419. package/dist/db/schema/core/users.d.ts +0 -178
  420. package/dist/db/schema/core/users.d.ts.map +0 -1
  421. package/dist/db/schema/core/users.js +0 -14
  422. package/dist/db/schema/core/users.js.map +0 -1
  423. package/dist/db/tenant-migrator.d.ts +0 -11
  424. package/dist/db/tenant-migrator.d.ts.map +0 -1
  425. package/dist/db/tenant-migrator.js +0 -74
  426. package/dist/db/tenant-migrator.js.map +0 -1
  427. package/dist/db/tenant-schema.d.ts +0 -290
  428. package/dist/db/tenant-schema.d.ts.map +0 -1
  429. package/dist/db/tenant-schema.js +0 -32
  430. package/dist/db/tenant-schema.js.map +0 -1
  431. package/dist/hooks/constants.d.ts +0 -40
  432. package/dist/hooks/constants.d.ts.map +0 -1
  433. package/dist/hooks/constants.js +0 -53
  434. package/dist/hooks/constants.js.map +0 -1
  435. package/dist/hooks/context-monitor.d.ts +0 -33
  436. package/dist/hooks/context-monitor.d.ts.map +0 -1
  437. package/dist/hooks/context-monitor.js +0 -117
  438. package/dist/hooks/context-monitor.js.map +0 -1
  439. package/dist/hooks/delegate-monitor.d.ts +0 -24
  440. package/dist/hooks/delegate-monitor.d.ts.map +0 -1
  441. package/dist/hooks/delegate-monitor.js +0 -76
  442. package/dist/hooks/delegate-monitor.js.map +0 -1
  443. package/dist/hooks/index.d.ts +0 -4
  444. package/dist/hooks/index.d.ts.map +0 -1
  445. package/dist/hooks/index.js +0 -4
  446. package/dist/hooks/index.js.map +0 -1
  447. package/dist/hooks/statusline.d.ts +0 -29
  448. package/dist/hooks/statusline.d.ts.map +0 -1
  449. package/dist/hooks/statusline.js +0 -134
  450. package/dist/hooks/statusline.js.map +0 -1
  451. package/dist/index.d.ts +0 -8
  452. package/dist/index.d.ts.map +0 -1
  453. package/dist/index.js +0 -6
  454. package/dist/index.js.map +0 -1
  455. package/dist/mcp/delegate-channel-relay.d.ts +0 -51
  456. package/dist/mcp/delegate-channel-relay.d.ts.map +0 -1
  457. package/dist/mcp/delegate-channel-relay.js +0 -307
  458. package/dist/mcp/delegate-channel-relay.js.map +0 -1
  459. package/dist/mcp/server.d.ts +0 -6
  460. package/dist/mcp/server.d.ts.map +0 -1
  461. package/dist/mcp/server.js +0 -64
  462. package/dist/mcp/server.js.map +0 -1
  463. package/dist/middleware/auth.d.ts +0 -13
  464. package/dist/middleware/auth.d.ts.map +0 -1
  465. package/dist/middleware/auth.js +0 -27
  466. package/dist/middleware/auth.js.map +0 -1
  467. package/dist/middleware/permission.d.ts +0 -9
  468. package/dist/middleware/permission.d.ts.map +0 -1
  469. package/dist/middleware/permission.js +0 -19
  470. package/dist/middleware/permission.js.map +0 -1
  471. package/dist/middleware/rate-limit.d.ts +0 -9
  472. package/dist/middleware/rate-limit.d.ts.map +0 -1
  473. package/dist/middleware/rate-limit.js +0 -40
  474. package/dist/middleware/rate-limit.js.map +0 -1
  475. package/dist/middleware/tenant.d.ts +0 -17
  476. package/dist/middleware/tenant.d.ts.map +0 -1
  477. package/dist/middleware/tenant.js +0 -57
  478. package/dist/middleware/tenant.js.map +0 -1
  479. package/dist/middleware/validation.d.ts +0 -40
  480. package/dist/middleware/validation.d.ts.map +0 -1
  481. package/dist/middleware/validation.js +0 -51
  482. package/dist/middleware/validation.js.map +0 -1
  483. package/dist/routes/auth.d.ts +0 -3
  484. package/dist/routes/auth.d.ts.map +0 -1
  485. package/dist/routes/auth.js +0 -77
  486. package/dist/routes/auth.js.map +0 -1
  487. package/dist/routes/members.d.ts +0 -4
  488. package/dist/routes/members.d.ts.map +0 -1
  489. package/dist/routes/members.js +0 -114
  490. package/dist/routes/members.js.map +0 -1
  491. package/dist/routes/organizations.d.ts +0 -5
  492. package/dist/routes/organizations.d.ts.map +0 -1
  493. package/dist/routes/organizations.js +0 -97
  494. package/dist/routes/organizations.js.map +0 -1
  495. package/dist/services/auth.service.d.ts +0 -24
  496. package/dist/services/auth.service.d.ts.map +0 -1
  497. package/dist/services/auth.service.js +0 -70
  498. package/dist/services/auth.service.js.map +0 -1
  499. package/dist/services/password.service.d.ts +0 -3
  500. package/dist/services/password.service.d.ts.map +0 -1
  501. package/dist/services/password.service.js +0 -18
  502. package/dist/services/password.service.js.map +0 -1
  503. package/dist/services/rbac.service.d.ts +0 -7
  504. package/dist/services/rbac.service.d.ts.map +0 -1
  505. package/dist/services/rbac.service.js +0 -36
  506. package/dist/services/rbac.service.js.map +0 -1
  507. package/dist/services/token.service.d.ts +0 -18
  508. package/dist/services/token.service.d.ts.map +0 -1
  509. package/dist/services/token.service.js +0 -86
  510. package/dist/services/token.service.js.map +0 -1
  511. package/dist/tools/core-memory.d.ts +0 -12
  512. package/dist/tools/core-memory.d.ts.map +0 -1
  513. package/dist/tools/core-memory.js +0 -276
  514. package/dist/tools/core-memory.js.map +0 -1
  515. package/dist/tools/edit-file.d.ts +0 -25
  516. package/dist/tools/edit-file.d.ts.map +0 -1
  517. package/dist/tools/edit-file.js +0 -462
  518. package/dist/tools/edit-file.js.map +0 -1
  519. package/dist/tools/index.d.ts +0 -8
  520. package/dist/tools/index.d.ts.map +0 -1
  521. package/dist/tools/index.js +0 -536
  522. package/dist/tools/index.js.map +0 -1
  523. package/dist/tools/read-file.d.ts +0 -13
  524. package/dist/tools/read-file.d.ts.map +0 -1
  525. package/dist/tools/read-file.js +0 -91
  526. package/dist/tools/read-file.js.map +0 -1
  527. package/dist/tools/read-many-files.d.ts +0 -15
  528. package/dist/tools/read-many-files.d.ts.map +0 -1
  529. package/dist/tools/read-many-files.js +0 -187
  530. package/dist/tools/read-many-files.js.map +0 -1
  531. package/dist/tools/spec-index-builder.d.ts +0 -58
  532. package/dist/tools/spec-index-builder.d.ts.map +0 -1
  533. package/dist/tools/spec-index-builder.js +0 -211
  534. package/dist/tools/spec-index-builder.js.map +0 -1
  535. package/dist/tools/spec-init.d.ts +0 -17
  536. package/dist/tools/spec-init.d.ts.map +0 -1
  537. package/dist/tools/spec-init.js +0 -215
  538. package/dist/tools/spec-init.js.map +0 -1
  539. package/dist/tools/spec-keyword-extractor.d.ts +0 -24
  540. package/dist/tools/spec-keyword-extractor.d.ts.map +0 -1
  541. package/dist/tools/spec-keyword-extractor.js +0 -84
  542. package/dist/tools/spec-keyword-extractor.js.map +0 -1
  543. package/dist/tools/spec-keyword-extractor.test.d.ts +0 -2
  544. package/dist/tools/spec-keyword-extractor.test.d.ts.map +0 -1
  545. package/dist/tools/spec-keyword-extractor.test.js +0 -99
  546. package/dist/tools/spec-keyword-extractor.test.js.map +0 -1
  547. package/dist/tools/spec-loader.d.ts +0 -15
  548. package/dist/tools/spec-loader.d.ts.map +0 -1
  549. package/dist/tools/spec-loader.js +0 -93
  550. package/dist/tools/spec-loader.js.map +0 -1
  551. package/dist/tools/team-msg.d.ts +0 -52
  552. package/dist/tools/team-msg.d.ts.map +0 -1
  553. package/dist/tools/team-msg.js +0 -449
  554. package/dist/tools/team-msg.js.map +0 -1
  555. package/dist/tools/write-file.d.ts +0 -19
  556. package/dist/tools/write-file.d.ts.map +0 -1
  557. package/dist/tools/write-file.js +0 -165
  558. package/dist/tools/write-file.js.map +0 -1
  559. package/dist/types/index.d.ts +0 -47
  560. package/dist/types/index.d.ts.map +0 -1
  561. package/dist/types/index.js +0 -2
  562. package/dist/types/index.js.map +0 -1
  563. package/dist/types/tool-schema.d.ts +0 -37
  564. package/dist/types/tool-schema.d.ts.map +0 -1
  565. package/dist/types/tool-schema.js +0 -24
  566. package/dist/types/tool-schema.js.map +0 -1
  567. package/dist/utils/file-reader.d.ts +0 -74
  568. package/dist/utils/file-reader.d.ts.map +0 -1
  569. package/dist/utils/file-reader.js +0 -217
  570. package/dist/utils/file-reader.js.map +0 -1
  571. package/dist/utils/path-validator.d.ts +0 -52
  572. package/dist/utils/path-validator.d.ts.map +0 -1
  573. package/dist/utils/path-validator.js +0 -151
  574. package/dist/utils/path-validator.js.map +0 -1
@@ -1,114 +0,0 @@
1
- import { Hono } from 'hono';
2
- import { eq, and } from 'drizzle-orm';
3
- import { users } from '../db/schema/core/users.js';
4
- import { organizationMembers } from '../db/schema/core/organizations.js';
5
- import { requireAuth } from '../middleware/auth.js';
6
- import { createTenantMiddleware } from '../middleware/tenant.js';
7
- import { requirePermission } from '../middleware/permission.js';
8
- import { validateBody, inviteMemberSchema, updateRoleSchema } from '../middleware/validation.js';
9
- export function createMemberRoutes(db, tenantManager) {
10
- const memberRoutes = new Hono();
11
- const tenantMiddleware = createTenantMiddleware(db, tenantManager);
12
- // POST /invite — Invite a member
13
- memberRoutes.post('/invite', requireAuth(), tenantMiddleware, requirePermission('member', 'invite'), validateBody(inviteMemberSchema), async (c) => {
14
- const tenant = c.get('tenant');
15
- const { email, role } = c.get('validatedBody');
16
- // Find user by email
17
- const targetUser = await db.query.users.findFirst({
18
- where: eq(users.email, email),
19
- });
20
- if (!targetUser) {
21
- return c.json({ error: 'User not found' }, 404);
22
- }
23
- // Check if already a member
24
- const existing = await db.query.organizationMembers.findFirst({
25
- where: and(eq(organizationMembers.orgId, tenant.orgId), eq(organizationMembers.userId, targetUser.id)),
26
- });
27
- if (existing) {
28
- return c.json({ error: 'User is already a member' }, 409);
29
- }
30
- // Add member
31
- await db.insert(organizationMembers).values({
32
- orgId: tenant.orgId,
33
- userId: targetUser.id,
34
- role,
35
- });
36
- return c.json({
37
- member: {
38
- userId: targetUser.id,
39
- email: targetUser.email,
40
- displayName: targetUser.displayName,
41
- role,
42
- },
43
- }, 201);
44
- });
45
- // GET / — List members
46
- memberRoutes.get('/', requireAuth(), tenantMiddleware, async (c) => {
47
- const tenant = c.get('tenant');
48
- const members = await db.query.organizationMembers.findMany({
49
- where: eq(organizationMembers.orgId, tenant.orgId),
50
- with: {
51
- user: {
52
- columns: {
53
- id: true,
54
- email: true,
55
- displayName: true,
56
- avatarUrl: true,
57
- },
58
- },
59
- },
60
- });
61
- return c.json({ members });
62
- });
63
- // PATCH /:memberId/role — Update member role
64
- memberRoutes.patch('/:memberId/role', requireAuth(), tenantMiddleware, requirePermission('member', 'role'), validateBody(updateRoleSchema), async (c) => {
65
- const tenant = c.get('tenant');
66
- const { role } = c.get('validatedBody');
67
- const memberId = c.req.param('memberId') ?? '';
68
- // Find target membership
69
- const targetMembership = await db.query.organizationMembers.findFirst({
70
- where: and(eq(organizationMembers.id, memberId), eq(organizationMembers.orgId, tenant.orgId)),
71
- });
72
- if (!targetMembership) {
73
- return c.json({ error: 'Member not found' }, 404);
74
- }
75
- // Cannot modify owner role
76
- if (targetMembership.role === 'owner') {
77
- return c.json({ error: 'Cannot modify owner role' }, 403);
78
- }
79
- // Update role
80
- await db
81
- .update(organizationMembers)
82
- .set({ role })
83
- .where(eq(organizationMembers.id, memberId));
84
- return c.json({
85
- member: {
86
- ...targetMembership,
87
- role,
88
- },
89
- });
90
- });
91
- // DELETE /:memberId — Remove member
92
- memberRoutes.delete('/:memberId', requireAuth(), tenantMiddleware, requirePermission('member', 'remove'), async (c) => {
93
- const tenant = c.get('tenant');
94
- const memberId = c.req.param('memberId') ?? '';
95
- // Find target membership
96
- const targetMembership = await db.query.organizationMembers.findFirst({
97
- where: and(eq(organizationMembers.id, memberId), eq(organizationMembers.orgId, tenant.orgId)),
98
- });
99
- if (!targetMembership) {
100
- return c.json({ error: 'Member not found' }, 404);
101
- }
102
- // Cannot remove owner
103
- if (targetMembership.role === 'owner') {
104
- return c.json({ error: 'Cannot remove owner' }, 403);
105
- }
106
- // Remove member
107
- await db
108
- .delete(organizationMembers)
109
- .where(eq(organizationMembers.id, memberId));
110
- return c.json({ message: 'Member removed' });
111
- });
112
- return memberRoutes;
113
- }
114
- //# sourceMappingURL=members.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"members.js","sourceRoot":"","sources":["../../src/routes/members.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { Hono } from 'hono';
2
- import { TenantConnectionManager } from '../db/connection-pool.js';
3
- import { TenantMigrator } from '../db/tenant-migrator.js';
4
- export declare function createOrgRoutes(db: any, tenantManager: TenantConnectionManager, migrator: TenantMigrator): Hono;
5
- //# sourceMappingURL=organizations.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"organizations.d.ts","sourceRoot":"","sources":["../../src/routes/organizations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAO5B,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,wBAAgB,eAAe,CAC7B,EAAE,EAAE,GAAG,EACP,aAAa,EAAE,uBAAuB,EACtC,QAAQ,EAAE,cAAc,GACvB,IAAI,CA2HN"}
@@ -1,97 +0,0 @@
1
- import { Hono } from 'hono';
2
- import { eq } from 'drizzle-orm';
3
- import { organizations, organizationMembers } from '../db/schema/core/organizations.js';
4
- import { requireAuth } from '../middleware/auth.js';
5
- import { createTenantMiddleware } from '../middleware/tenant.js';
6
- import { requirePermission } from '../middleware/permission.js';
7
- import { validateBody, createOrgSchema, updateOrgSchema } from '../middleware/validation.js';
8
- export function createOrgRoutes(db, tenantManager, migrator) {
9
- const orgRoutes = new Hono();
10
- const tenantMiddleware = createTenantMiddleware(db, tenantManager);
11
- // POST / — Create organization
12
- orgRoutes.post('/', requireAuth(), validateBody(createOrgSchema), async (c) => {
13
- const user = c.get('user');
14
- const { name, slug } = c.get('validatedBody');
15
- // Check slug uniqueness
16
- const existing = await db.query.organizations.findFirst({
17
- where: eq(organizations.slug, slug),
18
- });
19
- if (existing) {
20
- return c.json({ error: 'Organization slug already exists' }, 409);
21
- }
22
- // Create organization
23
- const [org] = await db
24
- .insert(organizations)
25
- .values({ name, slug, ownerId: user.id })
26
- .returning({
27
- id: organizations.id,
28
- name: organizations.name,
29
- slug: organizations.slug,
30
- });
31
- // Add creator as owner
32
- await db.insert(organizationMembers).values({
33
- orgId: org.id,
34
- userId: user.id,
35
- role: 'owner',
36
- });
37
- // Trigger tenant schema creation
38
- try {
39
- await tenantManager.createNewTenant(slug, migrator);
40
- }
41
- catch {
42
- // Schema creation may fail if DB not connected; log but don't block
43
- }
44
- return c.json({
45
- organization: {
46
- id: org.id,
47
- name: org.name,
48
- slug: org.slug,
49
- role: 'owner',
50
- },
51
- }, 201);
52
- });
53
- // GET / — List user's organizations
54
- orgRoutes.get('/', requireAuth(), async (c) => {
55
- const user = c.get('user');
56
- const memberships = await db.query.organizationMembers.findMany({
57
- where: eq(organizationMembers.userId, user.id),
58
- with: { organization: true },
59
- });
60
- return c.json({
61
- organizations: memberships.map((m) => ({
62
- ...m.organization,
63
- role: m.role,
64
- })),
65
- });
66
- });
67
- // GET /:slug — Get organization details
68
- orgRoutes.get('/:slug', requireAuth(), tenantMiddleware, async (c) => {
69
- const tenant = c.get('tenant');
70
- return c.json({ organization: tenant });
71
- });
72
- // PATCH /:slug — Update organization
73
- orgRoutes.patch('/:slug', requireAuth(), tenantMiddleware, requirePermission('org', 'update'), validateBody(updateOrgSchema), async (c) => {
74
- const tenant = c.get('tenant');
75
- const { name } = c.get('validatedBody');
76
- if (name) {
77
- await db
78
- .update(organizations)
79
- .set({ name, updatedAt: new Date() })
80
- .where(eq(organizations.id, tenant.orgId));
81
- }
82
- return c.json({
83
- organization: { ...tenant, name: name || tenant.slug },
84
- });
85
- });
86
- // DELETE /:slug — Soft delete organization
87
- orgRoutes.delete('/:slug', requireAuth(), tenantMiddleware, requirePermission('org', 'delete'), async (c) => {
88
- const tenant = c.get('tenant');
89
- await db
90
- .update(organizations)
91
- .set({ deletedAt: new Date() })
92
- .where(eq(organizations.id, tenant.orgId));
93
- return c.json({ message: 'Organization deleted' });
94
- });
95
- return orgRoutes;
96
- }
97
- //# sourceMappingURL=organizations.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"organizations.js","sourceRoot":"","sources":["../../src/routes/organizations.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- export declare class ConflictError extends Error {
2
- constructor(message: string);
3
- }
4
- interface RegisterInput {
5
- email: string;
6
- password: string;
7
- displayName: string;
8
- }
9
- interface RegisterResult {
10
- user: {
11
- id: string;
12
- email: string;
13
- displayName: string;
14
- };
15
- organization: {
16
- id: string;
17
- name: string;
18
- slug: string;
19
- role: 'owner';
20
- };
21
- }
22
- export declare function registerUser(db: any, input: RegisterInput): Promise<RegisterResult>;
23
- export {};
24
- //# sourceMappingURL=auth.service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../src/services/auth.service.ts"],"names":[],"mappings":"AAKA,qBAAa,aAAc,SAAQ,KAAK;gBAC1B,OAAO,EAAE,MAAM;CAI5B;AAED,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,cAAc;IACtB,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,YAAY,EAAE;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,OAAO,CAAC;KACf,CAAC;CACH;AAED,wBAAsB,YAAY,CAChC,EAAE,EAAE,GAAG,EACP,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,cAAc,CAAC,CAgEzB"}
@@ -1,70 +0,0 @@
1
- import { eq } from 'drizzle-orm';
2
- import { users } from '../db/schema/core/users.js';
3
- import { organizations, organizationMembers } from '../db/schema/core/organizations.js';
4
- import { hashPassword } from './password.service.js';
5
- export class ConflictError extends Error {
6
- constructor(message) {
7
- super(message);
8
- this.name = 'ConflictError';
9
- }
10
- }
11
- export async function registerUser(db, input) {
12
- // Check email uniqueness
13
- const existing = await db
14
- .select({ id: users.id })
15
- .from(users)
16
- .where(eq(users.email, input.email))
17
- .limit(1);
18
- if (existing.length > 0) {
19
- throw new ConflictError('Email already registered');
20
- }
21
- // Hash password
22
- const hashedPassword = await hashPassword(input.password);
23
- // Create user
24
- const [newUser] = await db
25
- .insert(users)
26
- .values({
27
- email: input.email,
28
- passwordHash: hashedPassword,
29
- displayName: input.displayName,
30
- })
31
- .returning({
32
- id: users.id,
33
- email: users.email,
34
- displayName: users.displayName,
35
- });
36
- // Create default organization
37
- const slug = 'org-' + newUser.id.slice(0, 8);
38
- const [org] = await db
39
- .insert(organizations)
40
- .values({
41
- name: 'My Organization',
42
- slug,
43
- ownerId: newUser.id,
44
- })
45
- .returning({
46
- id: organizations.id,
47
- name: organizations.name,
48
- slug: organizations.slug,
49
- });
50
- // Add user as owner
51
- await db.insert(organizationMembers).values({
52
- orgId: org.id,
53
- userId: newUser.id,
54
- role: 'owner',
55
- });
56
- return {
57
- user: {
58
- id: newUser.id,
59
- email: newUser.email,
60
- displayName: newUser.displayName,
61
- },
62
- organization: {
63
- id: org.id,
64
- name: org.name,
65
- slug: org.slug,
66
- role: 'owner',
67
- },
68
- };
69
- }
70
- //# sourceMappingURL=auth.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../src/services/auth.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAC9B,CAAC;CACF;AAsBD,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,EAAO,EACP,KAAoB;IAEpB,yBAAyB;IACzB,MAAM,QAAQ,GAAG,MAAM,EAAE;SACtB,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;SACxB,IAAI,CAAC,KAAK,CAAC;SACX,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;SACnC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEZ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,aAAa,CAAC,0BAA0B,CAAC,CAAC;IACtD,CAAC;IAED,gBAAgB;IAChB,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAE1D,cAAc;IACd,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,EAAE;SACvB,MAAM,CAAC,KAAK,CAAC;SACb,MAAM,CAAC;QACN,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,YAAY,EAAE,cAAc;QAC5B,WAAW,EAAE,KAAK,CAAC,WAAW;KAC/B,CAAC;SACD,SAAS,CAAC;QACT,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,WAAW,EAAE,KAAK,CAAC,WAAW;KAC/B,CAAC,CAAC;IAEL,8BAA8B;IAC9B,MAAM,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7C,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;SACnB,MAAM,CAAC,aAAa,CAAC;SACrB,MAAM,CAAC;QACN,IAAI,EAAE,iBAAiB;QACvB,IAAI;QACJ,OAAO,EAAE,OAAO,CAAC,EAAE;KACpB,CAAC;SACD,SAAS,CAAC;QACT,EAAE,EAAE,aAAa,CAAC,EAAE;QACpB,IAAI,EAAE,aAAa,CAAC,IAAI;QACxB,IAAI,EAAE,aAAa,CAAC,IAAI;KACzB,CAAC,CAAC;IAEL,oBAAoB;IACpB,MAAM,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC;QAC1C,KAAK,EAAE,GAAG,CAAC,EAAE;QACb,MAAM,EAAE,OAAO,CAAC,EAAE;QAClB,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,OAAO;QACL,IAAI,EAAE;YACJ,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC;QACD,YAAY,EAAE;YACZ,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,OAAgB;SACvB;KACF,CAAC;AACJ,CAAC"}
@@ -1,3 +0,0 @@
1
- export declare function hashPassword(plain: string): Promise<string>;
2
- export declare function verifyPassword(plain: string, hashed: string): Promise<boolean>;
3
- //# sourceMappingURL=password.service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"password.service.d.ts","sourceRoot":"","sources":["../../src/services/password.service.ts"],"names":[],"mappings":"AAEA,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOjE;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAMpF"}
@@ -1,18 +0,0 @@
1
- import { hash, verify } from 'argon2';
2
- export async function hashPassword(plain) {
3
- return hash(plain, {
4
- type: 2, // argon2id
5
- memoryCost: 65536,
6
- timeCost: 3,
7
- parallelism: 4,
8
- });
9
- }
10
- export async function verifyPassword(plain, hashed) {
11
- try {
12
- return await verify(hashed, plain);
13
- }
14
- catch {
15
- return false;
16
- }
17
- }
18
- //# sourceMappingURL=password.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"password.service.js","sourceRoot":"","sources":["../../src/services/password.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEtC,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,KAAa;IAC9C,OAAO,IAAI,CAAC,KAAK,EAAE;QACjB,IAAI,EAAE,CAAC,EAAE,WAAW;QACpB,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,CAAC;QACX,WAAW,EAAE,CAAC;KACf,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAa,EAAE,MAAc;IAChE,IAAI,CAAC;QACH,OAAO,MAAM,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -1,7 +0,0 @@
1
- export type Role = 'owner' | 'admin' | 'member' | 'guest';
2
- export type Permission = `${string}:${string}`;
3
- export declare function checkPermission(role: Role, resource: string, action: string): boolean;
4
- export declare function checkPermissions(role: Role, required: Permission[]): boolean;
5
- export declare function getRolePermissions(role: Role): Permission[];
6
- export declare function hasAnyPermission(role: Role, resource: string): boolean;
7
- //# sourceMappingURL=rbac.service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rbac.service.d.ts","sourceRoot":"","sources":["../../src/services/rbac.service.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,IAAI,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAC1D,MAAM,MAAM,UAAU,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;AAE/C,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAcrF;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAO5E;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,UAAU,EAAE,CAE3D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAKtE"}
@@ -1,36 +0,0 @@
1
- import { PERMISSION_MATRIX } from '../db/schema/core/permissions.js';
2
- export function checkPermission(role, resource, action) {
3
- const permissions = PERMISSION_MATRIX[role];
4
- if (!permissions)
5
- return false;
6
- // Global wildcard
7
- if (permissions.includes('*'))
8
- return true;
9
- // Exact match
10
- if (permissions.includes(`${resource}:${action}`))
11
- return true;
12
- // Resource wildcard
13
- if (permissions.includes(`${resource}:*`))
14
- return true;
15
- return false;
16
- }
17
- export function checkPermissions(role, required) {
18
- return required.every((p) => {
19
- const parts = p.split(':');
20
- const resource = parts[0];
21
- const action = parts.slice(1).join(':');
22
- return checkPermission(role, resource, action);
23
- });
24
- }
25
- export function getRolePermissions(role) {
26
- return (PERMISSION_MATRIX[role] || []);
27
- }
28
- export function hasAnyPermission(role, resource) {
29
- const permissions = PERMISSION_MATRIX[role];
30
- if (!permissions)
31
- return false;
32
- if (permissions.includes('*'))
33
- return true;
34
- return permissions.some((p) => p.startsWith(`${resource}:`));
35
- }
36
- //# sourceMappingURL=rbac.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rbac.service.js","sourceRoot":"","sources":["../../src/services/rbac.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAKrE,MAAM,UAAU,eAAe,CAAC,IAAU,EAAE,QAAgB,EAAE,MAAc;IAC1E,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IAE/B,kBAAkB;IAClB,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAE3C,cAAc;IACd,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,QAAQ,IAAI,MAAM,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IAE/D,oBAAoB;IACpB,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,QAAQ,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAEvD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAU,EAAE,QAAsB;IACjE,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QAC1B,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxC,OAAO,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAU;IAC3C,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAiB,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAU,EAAE,QAAgB;IAC3D,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IAC/B,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC;AAC/D,CAAC"}
@@ -1,18 +0,0 @@
1
- export interface TokenPayload {
2
- sub: string;
3
- email: string;
4
- iat: number;
5
- exp: number;
6
- }
7
- export interface TokenPair {
8
- accessToken: string;
9
- refreshToken: string;
10
- }
11
- export declare function generateAccessToken(userId: string, email: string): Promise<string>;
12
- export declare function generateRefreshToken(userId: string, db: any): Promise<string>;
13
- export declare function generateTokenPair(userId: string, email: string, db: any): Promise<TokenPair>;
14
- export declare function verifyAccessToken(token: string): Promise<TokenPayload | null>;
15
- export declare function rotateRefreshToken(oldToken: string, db: any): Promise<TokenPair | null>;
16
- export declare function revokeRefreshToken(tokenHash: string, db: any): Promise<void>;
17
- export declare function revokeAllUserTokens(userId: string, db: any): Promise<void>;
18
- //# sourceMappingURL=token.service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"token.service.d.ts","sourceRoot":"","sources":["../../src/services/token.service.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAUD,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAWxF;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,GAAG,GACN,OAAO,CAAC,MAAM,CAAC,CAWjB;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,GAAG,GACN,OAAO,CAAC,SAAS,CAAC,CAIpB;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAOnF;AAED,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,GAAG,GACN,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAwC3B;AAED,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAElF;AAED,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAEhF"}
@@ -1,86 +0,0 @@
1
- import { sign, verify } from 'hono/jwt';
2
- import { createHash, randomUUID } from 'crypto';
3
- import { eq } from 'drizzle-orm';
4
- import { refreshTokens } from '../db/schema/core/refresh-tokens.js';
5
- function getJwtSecret() {
6
- const secret = process.env.JWT_SECRET;
7
- if (!secret) {
8
- throw new Error('JWT_SECRET environment variable is required');
9
- }
10
- return secret;
11
- }
12
- export async function generateAccessToken(userId, email) {
13
- const now = Math.floor(Date.now() / 1000);
14
- return sign({
15
- sub: userId,
16
- email,
17
- iat: now,
18
- exp: now + 15 * 60, // 15 minutes
19
- }, getJwtSecret());
20
- }
21
- export async function generateRefreshToken(userId, db) {
22
- const token = randomUUID();
23
- const tokenHash = createHash('sha256').update(token).digest('hex');
24
- await db.insert(refreshTokens).values({
25
- userId,
26
- tokenHash,
27
- expiresAt: new Date(Date.now() + 7 * 24 * 60 * 60 * 1000), // 7 days
28
- });
29
- return token;
30
- }
31
- export async function generateTokenPair(userId, email, db) {
32
- const accessToken = await generateAccessToken(userId, email);
33
- const refreshToken = await generateRefreshToken(userId, db);
34
- return { accessToken, refreshToken };
35
- }
36
- export async function verifyAccessToken(token) {
37
- try {
38
- const payload = await verify(token, getJwtSecret(), 'HS256');
39
- return payload;
40
- }
41
- catch {
42
- return null;
43
- }
44
- }
45
- export async function rotateRefreshToken(oldToken, db) {
46
- const tokenHash = createHash('sha256').update(oldToken).digest('hex');
47
- // Find the stored token
48
- const stored = await db.query.refreshTokens.findFirst({
49
- where: eq(refreshTokens.tokenHash, tokenHash),
50
- });
51
- if (!stored)
52
- return null;
53
- // Check if token is expired
54
- if (new Date() > stored.expiresAt)
55
- return null;
56
- // If already rotated, possible token theft — revoke all user tokens
57
- if (stored.rotatedAt !== null) {
58
- await db
59
- .delete(refreshTokens)
60
- .where(eq(refreshTokens.userId, stored.userId));
61
- return null;
62
- }
63
- // Mark old token as rotated
64
- await db
65
- .update(refreshTokens)
66
- .set({ rotatedAt: new Date() })
67
- .where(eq(refreshTokens.id, stored.id));
68
- // Generate new token pair
69
- const accessToken = await generateAccessToken(stored.userId, '');
70
- const newRefreshToken = randomUUID();
71
- const newTokenHash = createHash('sha256').update(newRefreshToken).digest('hex');
72
- await db.insert(refreshTokens).values({
73
- userId: stored.userId,
74
- tokenHash: newTokenHash,
75
- expiresAt: new Date(Date.now() + 7 * 24 * 60 * 60 * 1000),
76
- rotatedFrom: stored.id,
77
- });
78
- return { accessToken, refreshToken: newRefreshToken };
79
- }
80
- export async function revokeRefreshToken(tokenHash, db) {
81
- await db.delete(refreshTokens).where(eq(refreshTokens.tokenHash, tokenHash));
82
- }
83
- export async function revokeAllUserTokens(userId, db) {
84
- await db.delete(refreshTokens).where(eq(refreshTokens.userId, userId));
85
- }
86
- //# sourceMappingURL=token.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"token.service.js","sourceRoot":"","sources":["../../src/services/token.service.ts"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- /**
2
- * Core Memory Tool - Simplified JSON-based memory management
3
- *
4
- * Operations: list, import, export, search
5
- * Storage: ~/.maestro/data/core-memory/{project-hash}.json
6
- *
7
- * Simplified from CCW's SQLite-based implementation to avoid native module dependencies.
8
- */
9
- import type { ToolSchema, CcwToolResult } from '../types/tool-schema.js';
10
- export declare const schema: ToolSchema;
11
- export declare function handler(params: Record<string, unknown>): Promise<CcwToolResult>;
12
- //# sourceMappingURL=core-memory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"core-memory.d.ts","sourceRoot":"","sources":["../../src/tools/core-memory.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AA4PzE,eAAO,MAAM,MAAM,EAAE,UA+DpB,CAAC;AAIF,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAkBrF"}