sqlew 4.3.1 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (841) hide show
  1. package/CHANGELOG.md +68 -0
  2. package/LICENSE +1 -1
  3. package/NOTICE +2 -2
  4. package/README.md +112 -42
  5. package/assets/claude-md-snippets/plan-mode-integration.md +54 -0
  6. package/assets/claude-md-snippets/queue-monitoring.md +84 -0
  7. package/dist/backend/backend-factory.d.ts +67 -0
  8. package/dist/backend/backend-factory.d.ts.map +1 -0
  9. package/dist/backend/backend-factory.js +171 -0
  10. package/dist/backend/backend-factory.js.map +1 -0
  11. package/dist/backend/index.d.ts +12 -0
  12. package/dist/backend/index.d.ts.map +1 -0
  13. package/dist/backend/index.js +13 -0
  14. package/dist/backend/index.js.map +1 -0
  15. package/dist/backend/inference.d.ts +38 -0
  16. package/dist/backend/inference.d.ts.map +1 -0
  17. package/dist/backend/inference.js +76 -0
  18. package/dist/backend/inference.js.map +1 -0
  19. package/dist/backend/local-backend.d.ts +40 -0
  20. package/dist/backend/local-backend.d.ts.map +1 -0
  21. package/dist/backend/local-backend.js +410 -0
  22. package/dist/backend/local-backend.js.map +1 -0
  23. package/dist/backend/transforming-backend.d.ts +47 -0
  24. package/dist/backend/transforming-backend.d.ts.map +1 -0
  25. package/dist/backend/transforming-backend.js +80 -0
  26. package/dist/backend/transforming-backend.js.map +1 -0
  27. package/dist/backend/types.d.ts +58 -0
  28. package/dist/backend/types.d.ts.map +1 -0
  29. package/dist/backend/types.js +7 -0
  30. package/dist/backend/types.js.map +1 -0
  31. package/dist/cli/db-dump.js +45 -45
  32. package/dist/cli/db-dump.js.map +1 -1
  33. package/dist/cli/db-export.js +30 -30
  34. package/dist/cli/db-export.js.map +1 -1
  35. package/dist/cli/db-import.d.ts.map +1 -1
  36. package/dist/cli/db-import.js +32 -33
  37. package/dist/cli/db-import.js.map +1 -1
  38. package/dist/cli/hooks/check-completion.d.ts +1 -0
  39. package/dist/cli/hooks/check-completion.d.ts.map +1 -1
  40. package/dist/cli/hooks/check-completion.js +15 -26
  41. package/dist/cli/hooks/check-completion.js.map +1 -1
  42. package/dist/cli/hooks/mark-done.d.ts +1 -0
  43. package/dist/cli/hooks/mark-done.d.ts.map +1 -1
  44. package/dist/cli/hooks/mark-done.js +12 -17
  45. package/dist/cli/hooks/mark-done.js.map +1 -1
  46. package/dist/cli/hooks/on-enter-plan.js +2 -2
  47. package/dist/cli/hooks/on-enter-plan.js.map +1 -1
  48. package/dist/cli/hooks/on-session-start.d.ts +23 -0
  49. package/dist/cli/hooks/on-session-start.d.ts.map +1 -0
  50. package/dist/cli/hooks/on-session-start.js +70 -0
  51. package/dist/cli/hooks/on-session-start.js.map +1 -0
  52. package/dist/cli/hooks/on-stop.js +5 -5
  53. package/dist/cli/hooks/on-stop.js.map +1 -1
  54. package/dist/cli/hooks/{plan-toml-parser.d.ts → plan-parser.d.ts} +1 -1
  55. package/dist/cli/hooks/plan-parser.d.ts.map +1 -0
  56. package/dist/cli/hooks/{plan-toml-parser.js → plan-parser.js} +1 -1
  57. package/dist/cli/hooks/plan-parser.js.map +1 -0
  58. package/dist/cli/hooks/plan-pattern-extractor.d.ts.map +1 -1
  59. package/dist/cli/hooks/plan-pattern-extractor.js +6 -3
  60. package/dist/cli/hooks/plan-pattern-extractor.js.map +1 -1
  61. package/dist/cli/hooks/plan-processor.js +1 -1
  62. package/dist/cli/hooks/plan-processor.js.map +1 -1
  63. package/dist/cli/hooks/stdin-parser.d.ts +4 -0
  64. package/dist/cli/hooks/stdin-parser.d.ts.map +1 -1
  65. package/dist/cli/hooks/stdin-parser.js.map +1 -1
  66. package/dist/cli/hooks/suggest.js +2 -2
  67. package/dist/cli/hooks/suggest.js.map +1 -1
  68. package/dist/cli/hooks/track-plan.d.ts.map +1 -1
  69. package/dist/cli/hooks/track-plan.js +24 -18
  70. package/dist/cli/hooks/track-plan.js.map +1 -1
  71. package/dist/cli.d.ts.map +1 -1
  72. package/dist/cli.js +72 -72
  73. package/dist/cli.js.map +1 -1
  74. package/dist/config/cloud-config-loader.d.ts +107 -0
  75. package/dist/config/cloud-config-loader.d.ts.map +1 -0
  76. package/dist/config/cloud-config-loader.js +273 -0
  77. package/dist/config/cloud-config-loader.js.map +1 -0
  78. package/dist/config/global-config.d.ts +10 -10
  79. package/dist/config/global-config.d.ts.map +1 -1
  80. package/dist/config/global-config.js +12 -12
  81. package/dist/config/global-config.js.map +1 -1
  82. package/dist/config/loader.d.ts.map +1 -1
  83. package/dist/config/loader.js +5 -1
  84. package/dist/config/loader.js.map +1 -1
  85. package/dist/config/minimal-generator.d.ts.map +1 -1
  86. package/dist/config/minimal-generator.js +22 -72
  87. package/dist/config/minimal-generator.js.map +1 -1
  88. package/dist/config/types.d.ts +59 -1
  89. package/dist/config/types.d.ts.map +1 -1
  90. package/dist/config/types.js +14 -0
  91. package/dist/config/types.js.map +1 -1
  92. package/dist/constants.d.ts +1 -29
  93. package/dist/constants.d.ts.map +1 -1
  94. package/dist/constants.js +1 -38
  95. package/dist/constants.js.map +1 -1
  96. package/dist/database/initialization/cleanup.d.ts.map +1 -1
  97. package/dist/database/initialization/cleanup.js +0 -13
  98. package/dist/database/initialization/cleanup.js.map +1 -1
  99. package/dist/database/initialization/init.d.ts.map +1 -1
  100. package/dist/database/initialization/init.js +0 -9
  101. package/dist/database/initialization/init.js.map +1 -1
  102. package/dist/database/initialization/schema-version.d.ts +4 -4
  103. package/dist/database/initialization/schema-version.js +9 -9
  104. package/dist/database/initialization/schema-version.js.map +1 -1
  105. package/dist/database/migrations/v4/20260107000000_v5_drop_task_file_tables.d.ts +36 -0
  106. package/dist/database/migrations/v4/20260107000000_v5_drop_task_file_tables.d.ts.map +1 -0
  107. package/dist/database/migrations/v4/20260107000000_v5_drop_task_file_tables.js +135 -0
  108. package/dist/database/migrations/v4/20260107000000_v5_drop_task_file_tables.js.map +1 -0
  109. package/dist/database/migrations/v4/20260107000001_v5_drop_legacy_tables.d.ts +20 -0
  110. package/dist/database/migrations/v4/20260107000001_v5_drop_legacy_tables.d.ts.map +1 -0
  111. package/dist/database/migrations/v4/20260107000001_v5_drop_legacy_tables.js +168 -0
  112. package/dist/database/migrations/v4/20260107000001_v5_drop_legacy_tables.js.map +1 -0
  113. package/dist/database/migrations/v4/20260108000000_v5_rename_to_m_t_prefix.d.ts +23 -0
  114. package/dist/database/migrations/v4/20260108000000_v5_rename_to_m_t_prefix.d.ts.map +1 -0
  115. package/dist/database/migrations/v4/20260108000000_v5_rename_to_m_t_prefix.js +570 -0
  116. package/dist/database/migrations/v4/20260108000000_v5_rename_to_m_t_prefix.js.map +1 -0
  117. package/dist/database/migrations/v4/20260109000000_v5_drop_help_tables.d.ts +29 -0
  118. package/dist/database/migrations/v4/20260109000000_v5_drop_help_tables.d.ts.map +1 -0
  119. package/dist/database/migrations/v4/20260109000000_v5_drop_help_tables.js +80 -0
  120. package/dist/database/migrations/v4/20260109000000_v5_drop_help_tables.js.map +1 -0
  121. package/dist/database/operations/inserts.js +11 -11
  122. package/dist/database/operations/inserts.js.map +1 -1
  123. package/dist/database/operations/queries.js +9 -9
  124. package/dist/database/operations/queries.js.map +1 -1
  125. package/dist/formatters/adr-formatter.d.ts +22 -0
  126. package/dist/formatters/adr-formatter.d.ts.map +1 -0
  127. package/dist/formatters/adr-formatter.js +127 -0
  128. package/dist/formatters/adr-formatter.js.map +1 -0
  129. package/dist/formatters/confluence-formatter.d.ts +26 -0
  130. package/dist/formatters/confluence-formatter.d.ts.map +1 -0
  131. package/dist/formatters/confluence-formatter.js +129 -0
  132. package/dist/formatters/confluence-formatter.js.map +1 -0
  133. package/dist/formatters/index.d.ts +34 -0
  134. package/dist/formatters/index.d.ts.map +1 -0
  135. package/dist/formatters/index.js +57 -0
  136. package/dist/formatters/index.js.map +1 -0
  137. package/dist/formatters/markdown-formatter.d.ts +16 -0
  138. package/dist/formatters/markdown-formatter.d.ts.map +1 -0
  139. package/dist/formatters/markdown-formatter.js +110 -0
  140. package/dist/formatters/markdown-formatter.js.map +1 -0
  141. package/dist/formatters/notion-formatter.d.ts +29 -0
  142. package/dist/formatters/notion-formatter.d.ts.map +1 -0
  143. package/dist/formatters/notion-formatter.js +177 -0
  144. package/dist/formatters/notion-formatter.js.map +1 -0
  145. package/dist/formatters/types.d.ts +31 -0
  146. package/dist/formatters/types.d.ts.map +1 -0
  147. package/dist/formatters/types.js +6 -0
  148. package/dist/formatters/types.js.map +1 -0
  149. package/dist/help-data/_schema.toml +21 -0
  150. package/dist/help-data/constraint.toml +259 -0
  151. package/dist/help-data/decision.toml +833 -0
  152. package/dist/help-data/example.toml +177 -0
  153. package/dist/help-data/help.toml +246 -0
  154. package/dist/help-data/queue.toml +134 -0
  155. package/dist/help-data/suggest.toml +219 -0
  156. package/dist/help-data/use-cases/_categories.toml +22 -0
  157. package/dist/help-data/use-cases/constraint-basic.toml +34 -0
  158. package/dist/help-data/use-cases/cross-tool-workflow.toml +50 -0
  159. package/dist/help-data/use-cases/decision-intelligence-duplicate.toml +35 -0
  160. package/dist/help-data/use-cases/decision-intelligence-related.toml +35 -0
  161. package/dist/help-data/use-cases/decision-tracking-basic.toml +42 -0
  162. package/dist/help-data/use-cases/decision-tracking-versions.toml +42 -0
  163. package/dist/help-data/use_case.toml +147 -0
  164. package/dist/help-loader.d.ts +194 -0
  165. package/dist/help-loader.d.ts.map +1 -0
  166. package/dist/help-loader.js +419 -0
  167. package/dist/help-loader.js.map +1 -0
  168. package/dist/index.js +15 -10
  169. package/dist/index.js.map +1 -1
  170. package/dist/init-rules.d.ts +42 -0
  171. package/dist/init-rules.d.ts.map +1 -0
  172. package/dist/init-rules.js +217 -0
  173. package/dist/init-rules.js.map +1 -0
  174. package/dist/schema.d.ts +4 -6
  175. package/dist/schema.d.ts.map +1 -1
  176. package/dist/schema.js +28 -45
  177. package/dist/schema.js.map +1 -1
  178. package/dist/server/setup.d.ts +0 -10
  179. package/dist/server/setup.d.ts.map +1 -1
  180. package/dist/server/setup.js +97 -89
  181. package/dist/server/setup.js.map +1 -1
  182. package/dist/server/shutdown.d.ts +1 -1
  183. package/dist/server/shutdown.d.ts.map +1 -1
  184. package/dist/server/shutdown.js +1 -16
  185. package/dist/server/shutdown.js.map +1 -1
  186. package/dist/server/tool-handlers.d.ts +15 -0
  187. package/dist/server/tool-handlers.d.ts.map +1 -1
  188. package/dist/server/tool-handlers.js +47 -462
  189. package/dist/server/tool-handlers.js.map +1 -1
  190. package/dist/server/tool-registry.d.ts.map +1 -1
  191. package/dist/server/tool-registry.js +50 -62
  192. package/dist/server/tool-registry.js.map +1 -1
  193. package/dist/tests/backend/backend-factory.test.d.ts +7 -0
  194. package/dist/tests/backend/backend-factory.test.d.ts.map +1 -0
  195. package/dist/tests/backend/backend-factory.test.js +157 -0
  196. package/dist/tests/backend/backend-factory.test.js.map +1 -0
  197. package/dist/tests/backend/inference.test.d.ts +7 -0
  198. package/dist/tests/backend/inference.test.d.ts.map +1 -0
  199. package/dist/tests/backend/inference.test.js +142 -0
  200. package/dist/tests/backend/inference.test.js.map +1 -0
  201. package/dist/tests/database/multi-project/multi-project.test.js +9 -70
  202. package/dist/tests/database/multi-project/multi-project.test.js.map +1 -1
  203. package/dist/tests/database/sql-dump/table-ordering.test.js +14 -14
  204. package/dist/tests/database/sql-dump/table-ordering.test.js.map +1 -1
  205. package/dist/tests/docker/cross-database.test.js +32 -32
  206. package/dist/tests/docker/cross-database.test.js.map +1 -1
  207. package/dist/tests/docker/dump-import.test.js +55 -55
  208. package/dist/tests/docker/dump-import.test.js.map +1 -1
  209. package/dist/tests/docker/fk-constraints.test.js +3 -3
  210. package/dist/tests/docker/indexes.test.js +34 -34
  211. package/dist/tests/docker/integration.test.js +33 -33
  212. package/dist/tests/docker/multi-project-migration.test.js +47 -47
  213. package/dist/tests/docker/multi-project-migration.test.js.map +1 -1
  214. package/dist/tests/docker/native/constraint-operations.test.js +49 -49
  215. package/dist/tests/docker/native/constraint-operations.test.js.map +1 -1
  216. package/dist/tests/docker/native/db-init.d.ts +3 -1
  217. package/dist/tests/docker/native/db-init.d.ts.map +1 -1
  218. package/dist/tests/docker/native/db-init.js +14 -12
  219. package/dist/tests/docker/native/db-init.js.map +1 -1
  220. package/dist/tests/docker/native/decision-operations.test.js +91 -91
  221. package/dist/tests/docker/native/decision-operations.test.js.map +1 -1
  222. package/dist/tests/docker/native/help-system.test.d.ts +2 -2
  223. package/dist/tests/docker/native/help-system.test.js +113 -138
  224. package/dist/tests/docker/native/help-system.test.js.map +1 -1
  225. package/dist/tests/docker/native/suggest-tool.test.d.ts +2 -2
  226. package/dist/tests/docker/native/suggest-tool.test.js +35 -35
  227. package/dist/tests/docker/native/suggest-tool.test.js.map +1 -1
  228. package/dist/tests/docker/native/test-harness.d.ts +6 -12
  229. package/dist/tests/docker/native/test-harness.d.ts.map +1 -1
  230. package/dist/tests/docker/native/test-harness.js +74 -156
  231. package/dist/tests/docker/native/test-harness.js.map +1 -1
  232. package/dist/tests/docker/schema-migration.test.js +6 -6
  233. package/dist/tests/feature/decision/batch-validation-comprehensive.test.d.ts +3 -7
  234. package/dist/tests/feature/decision/batch-validation-comprehensive.test.d.ts.map +1 -1
  235. package/dist/tests/feature/decision/batch-validation-comprehensive.test.js +7 -318
  236. package/dist/tests/feature/decision/batch-validation-comprehensive.test.js.map +1 -1
  237. package/dist/tests/feature/help/help-system.test.d.ts +6 -6
  238. package/dist/tests/feature/help/help-system.test.js +166 -124
  239. package/dist/tests/feature/help/help-system.test.js.map +1 -1
  240. package/dist/tests/integration/auto-trigger-suggestions.test.js +22 -22
  241. package/dist/tests/integration/auto-trigger-suggestions.test.js.map +1 -1
  242. package/dist/tests/integration/decision-intelligence-e2e.test.js +23 -22
  243. package/dist/tests/integration/decision-intelligence-e2e.test.js.map +1 -1
  244. package/dist/tests/integration/e2e-workflow1-debug.test.js +3 -3
  245. package/dist/tests/integration/e2e-workflow1-debug.test.js.map +1 -1
  246. package/dist/tests/integration/hybrid-similarity-detection.test.js +25 -25
  247. package/dist/tests/integration/hybrid-similarity-detection.test.js.map +1 -1
  248. package/dist/tests/integration/suggest-simple.test.js +18 -0
  249. package/dist/tests/integration/suggest-simple.test.js.map +1 -1
  250. package/dist/tests/migrations/test-all-versions.js +212 -212
  251. package/dist/tests/migrations/test-all-versions.js.map +1 -1
  252. package/dist/tests/migrations/v4/v4-fresh-install.test.js +29 -29
  253. package/dist/tests/migrations/v4/v4-fresh-install.test.js.map +1 -1
  254. package/dist/tests/migrations/v4/v4-migrate-data.test.js +20 -20
  255. package/dist/tests/migrations/v4/v4-migrate-data.test.js.map +1 -1
  256. package/dist/tests/test-v4-native-rdbms.js +20 -20
  257. package/dist/tests/test-v4-native-rdbms.js.map +1 -1
  258. package/dist/tests/unit/config/cloud-config-loader.test.d.ts +2 -0
  259. package/dist/tests/unit/config/cloud-config-loader.test.d.ts.map +1 -0
  260. package/dist/tests/unit/config/cloud-config-loader.test.js +103 -0
  261. package/dist/tests/unit/config/cloud-config-loader.test.js.map +1 -0
  262. package/dist/tests/unit/config/{plan-toml-cache.test.d.ts → plan-cache.test.d.ts} +1 -1
  263. package/dist/tests/unit/config/plan-cache.test.d.ts.map +1 -0
  264. package/dist/tests/unit/config/{plan-toml-cache.test.js → plan-cache.test.js} +32 -32
  265. package/dist/tests/unit/config/plan-cache.test.js.map +1 -0
  266. package/dist/tests/unit/hooks/{plan-toml-parser.test.d.ts → plan-parser.test.d.ts} +1 -1
  267. package/dist/tests/unit/hooks/plan-parser.test.d.ts.map +1 -0
  268. package/dist/tests/unit/hooks/{plan-toml-parser.test.js → plan-parser.test.js} +179 -179
  269. package/dist/tests/unit/hooks/plan-parser.test.js.map +1 -0
  270. package/dist/tests/unit/server/tool-handlers.test.d.ts +7 -0
  271. package/dist/tests/unit/server/tool-handlers.test.d.ts.map +1 -0
  272. package/dist/tests/unit/server/tool-handlers.test.js +76 -0
  273. package/dist/tests/unit/server/tool-handlers.test.js.map +1 -0
  274. package/dist/tests/unit/utils/config-loader.test.js +17 -17
  275. package/dist/tests/unit/utils/connection-hash.test.d.ts +2 -0
  276. package/dist/tests/unit/utils/connection-hash.test.d.ts.map +1 -0
  277. package/dist/tests/unit/utils/connection-hash.test.js +57 -0
  278. package/dist/tests/unit/utils/connection-hash.test.js.map +1 -0
  279. package/dist/tests/unit/utils/environment-detector.test.d.ts +2 -0
  280. package/dist/tests/unit/utils/environment-detector.test.d.ts.map +1 -0
  281. package/dist/tests/unit/utils/environment-detector.test.js +43 -0
  282. package/dist/tests/unit/utils/environment-detector.test.js.map +1 -0
  283. package/dist/tests/unit/utils/path-utils.test.d.ts +2 -0
  284. package/dist/tests/unit/utils/path-utils.test.d.ts.map +1 -0
  285. package/dist/tests/unit/utils/path-utils.test.js +72 -0
  286. package/dist/tests/unit/utils/path-utils.test.js.map +1 -0
  287. package/dist/tests/unit/utils/project-detector.test.js +14 -13
  288. package/dist/tests/unit/utils/project-detector.test.js.map +1 -1
  289. package/dist/tests/unit/validation/parameter-validation.test.d.ts +2 -1
  290. package/dist/tests/unit/validation/parameter-validation.test.d.ts.map +1 -1
  291. package/dist/tests/unit/validation/parameter-validation.test.js +5 -133
  292. package/dist/tests/unit/validation/parameter-validation.test.js.map +1 -1
  293. package/dist/tests/unit/validation/policy-validation.test.js +15 -15
  294. package/dist/tests/unit/validation/policy-validation.test.js.map +1 -1
  295. package/dist/tests/utils/db-schema.js +48 -48
  296. package/dist/tests/utils/db-seeding.js +11 -11
  297. package/dist/tests/utils/db-seeding.js.map +1 -1
  298. package/dist/tests/utils/json-export-import.test.d.ts +6 -0
  299. package/dist/tests/utils/json-export-import.test.d.ts.map +1 -0
  300. package/dist/tests/utils/json-export-import.test.js +474 -0
  301. package/dist/tests/utils/json-export-import.test.js.map +1 -0
  302. package/dist/tests/utils/test-helpers.js +59 -59
  303. package/dist/tests/utils/test-helpers.js.map +1 -1
  304. package/dist/tools/constraints/actions/activate.d.ts +2 -2
  305. package/dist/tools/constraints/actions/activate.d.ts.map +1 -1
  306. package/dist/tools/constraints/actions/activate.js +12 -12
  307. package/dist/tools/constraints/actions/activate.js.map +1 -1
  308. package/dist/tools/constraints/actions/add.js +3 -3
  309. package/dist/tools/constraints/actions/add.js.map +1 -1
  310. package/dist/tools/constraints/actions/deactivate.js +6 -6
  311. package/dist/tools/constraints/actions/deactivate.js.map +1 -1
  312. package/dist/tools/constraints/actions/get.d.ts +2 -2
  313. package/dist/tools/constraints/actions/get.js +9 -9
  314. package/dist/tools/constraints/actions/get.js.map +1 -1
  315. package/dist/tools/constraints/actions/suggest-pending.js +2 -2
  316. package/dist/tools/constraints/actions/suggest-pending.js.map +1 -1
  317. package/dist/tools/constraints/index.d.ts +1 -1
  318. package/dist/tools/constraints/index.d.ts.map +1 -1
  319. package/dist/tools/constraints/index.js +1 -1
  320. package/dist/tools/constraints/index.js.map +1 -1
  321. package/dist/tools/context/actions/create-policy.js +3 -3
  322. package/dist/tools/context/actions/create-policy.js.map +1 -1
  323. package/dist/tools/context/actions/create-template.js +2 -2
  324. package/dist/tools/context/actions/create-template.js.map +1 -1
  325. package/dist/tools/context/actions/export.d.ts +35 -0
  326. package/dist/tools/context/actions/export.d.ts.map +1 -0
  327. package/dist/tools/context/actions/export.js +93 -0
  328. package/dist/tools/context/actions/export.js.map +1 -0
  329. package/dist/tools/context/actions/hard-delete.js +11 -11
  330. package/dist/tools/context/actions/hard-delete.js.map +1 -1
  331. package/dist/tools/context/actions/has-updates.d.ts +1 -1
  332. package/dist/tools/context/actions/has-updates.d.ts.map +1 -1
  333. package/dist/tools/context/actions/has-updates.js +5 -13
  334. package/dist/tools/context/actions/has-updates.js.map +1 -1
  335. package/dist/tools/context/actions/list-policies.js +1 -1
  336. package/dist/tools/context/actions/list-policies.js.map +1 -1
  337. package/dist/tools/context/actions/list-templates.js +2 -2
  338. package/dist/tools/context/actions/list-templates.js.map +1 -1
  339. package/dist/tools/context/actions/list.js +1 -1
  340. package/dist/tools/context/actions/list.js.map +1 -1
  341. package/dist/tools/context/actions/search-layer.js +8 -8
  342. package/dist/tools/context/actions/search-layer.js.map +1 -1
  343. package/dist/tools/context/actions/set-from-policy.js +1 -1
  344. package/dist/tools/context/actions/set-from-policy.js.map +1 -1
  345. package/dist/tools/context/actions/set-from-template.js +2 -2
  346. package/dist/tools/context/actions/set-from-template.js.map +1 -1
  347. package/dist/tools/context/actions/versions.js +3 -3
  348. package/dist/tools/context/actions/versions.js.map +1 -1
  349. package/dist/tools/context/index.d.ts +1 -0
  350. package/dist/tools/context/index.d.ts.map +1 -1
  351. package/dist/tools/context/index.js +2 -0
  352. package/dist/tools/context/index.js.map +1 -1
  353. package/dist/tools/context/internal/queries.d.ts.map +1 -1
  354. package/dist/tools/context/internal/queries.js +54 -43
  355. package/dist/tools/context/internal/queries.js.map +1 -1
  356. package/dist/tools/context/types.d.ts +1 -1
  357. package/dist/tools/context/types.d.ts.map +1 -1
  358. package/dist/tools/example/actions/get.d.ts +8 -3
  359. package/dist/tools/example/actions/get.d.ts.map +1 -1
  360. package/dist/tools/example/actions/get.js +29 -30
  361. package/dist/tools/example/actions/get.js.map +1 -1
  362. package/dist/tools/example/actions/list-all.d.ts +8 -2
  363. package/dist/tools/example/actions/list-all.d.ts.map +1 -1
  364. package/dist/tools/example/actions/list-all.js +37 -29
  365. package/dist/tools/example/actions/list-all.js.map +1 -1
  366. package/dist/tools/example/actions/search.d.ts +8 -3
  367. package/dist/tools/example/actions/search.d.ts.map +1 -1
  368. package/dist/tools/example/actions/search.js +29 -43
  369. package/dist/tools/example/actions/search.js.map +1 -1
  370. package/dist/tools/help/actions/batch-guide.js +5 -5
  371. package/dist/tools/help/actions/batch-guide.js.map +1 -1
  372. package/dist/tools/help/actions/query-action.d.ts +7 -3
  373. package/dist/tools/help/actions/query-action.d.ts.map +1 -1
  374. package/dist/tools/help/actions/query-action.js +35 -6
  375. package/dist/tools/help/actions/query-action.js.map +1 -1
  376. package/dist/tools/help/actions/query-params.d.ts +5 -3
  377. package/dist/tools/help/actions/query-params.d.ts.map +1 -1
  378. package/dist/tools/help/actions/query-params.js +28 -6
  379. package/dist/tools/help/actions/query-params.js.map +1 -1
  380. package/dist/tools/help/actions/query-tool.d.ts +5 -3
  381. package/dist/tools/help/actions/query-tool.d.ts.map +1 -1
  382. package/dist/tools/help/actions/query-tool.js +23 -6
  383. package/dist/tools/help/actions/query-tool.js.map +1 -1
  384. package/dist/tools/help/actions/workflow-hints.d.ts +5 -3
  385. package/dist/tools/help/actions/workflow-hints.d.ts.map +1 -1
  386. package/dist/tools/help/actions/workflow-hints.js +21 -6
  387. package/dist/tools/help/actions/workflow-hints.js.map +1 -1
  388. package/dist/tools/queue/actions/clear.d.ts +19 -0
  389. package/dist/tools/queue/actions/clear.d.ts.map +1 -0
  390. package/dist/tools/queue/actions/clear.js +79 -0
  391. package/dist/tools/queue/actions/clear.js.map +1 -0
  392. package/dist/tools/queue/actions/list.d.ts +16 -0
  393. package/dist/tools/queue/actions/list.d.ts.map +1 -0
  394. package/dist/tools/queue/actions/list.js +95 -0
  395. package/dist/tools/queue/actions/list.js.map +1 -0
  396. package/dist/tools/queue/actions/remove.d.ts +19 -0
  397. package/dist/tools/queue/actions/remove.d.ts.map +1 -0
  398. package/dist/tools/queue/actions/remove.js +81 -0
  399. package/dist/tools/queue/actions/remove.js.map +1 -0
  400. package/dist/tools/queue/index.d.ts +13 -0
  401. package/dist/tools/queue/index.d.ts.map +1 -0
  402. package/dist/tools/queue/index.js +13 -0
  403. package/dist/tools/queue/index.js.map +1 -0
  404. package/dist/tools/queue/types.d.ts +87 -0
  405. package/dist/tools/queue/types.d.ts.map +1 -0
  406. package/dist/tools/queue/types.js +9 -0
  407. package/dist/tools/queue/types.js.map +1 -0
  408. package/dist/tools/suggest/actions/by-context.d.ts.map +1 -1
  409. package/dist/tools/suggest/actions/by-context.js +3 -1
  410. package/dist/tools/suggest/actions/by-context.js.map +1 -1
  411. package/dist/tools/suggest/actions/by-key.d.ts.map +1 -1
  412. package/dist/tools/suggest/actions/by-key.js +3 -1
  413. package/dist/tools/suggest/actions/by-key.js.map +1 -1
  414. package/dist/tools/suggest/actions/by-tags.d.ts +2 -2
  415. package/dist/tools/suggest/actions/by-tags.js +3 -3
  416. package/dist/tools/suggest/actions/by-tags.js.map +1 -1
  417. package/dist/tools/suggest/internal/constraint-queries.d.ts +4 -4
  418. package/dist/tools/suggest/internal/constraint-queries.js +14 -14
  419. package/dist/tools/suggest/internal/constraint-queries.js.map +1 -1
  420. package/dist/tools/suggest/internal/queries.d.ts +4 -4
  421. package/dist/tools/suggest/internal/queries.js +25 -25
  422. package/dist/tools/suggest/internal/queries.js.map +1 -1
  423. package/dist/tools/use_case/actions/get.d.ts +5 -3
  424. package/dist/tools/use_case/actions/get.d.ts.map +1 -1
  425. package/dist/tools/use_case/actions/get.js +20 -6
  426. package/dist/tools/use_case/actions/get.js.map +1 -1
  427. package/dist/tools/use_case/actions/list-all.d.ts +5 -3
  428. package/dist/tools/use_case/actions/list-all.d.ts.map +1 -1
  429. package/dist/tools/use_case/actions/list-all.js +36 -6
  430. package/dist/tools/use_case/actions/list-all.js.map +1 -1
  431. package/dist/tools/use_case/actions/search.d.ts +6 -3
  432. package/dist/tools/use_case/actions/search.d.ts.map +1 -1
  433. package/dist/tools/use_case/actions/search.js +37 -67
  434. package/dist/tools/use_case/actions/search.js.map +1 -1
  435. package/dist/tools/use_case/help/example.js +17 -17
  436. package/dist/tools/use_case/help/example.js.map +1 -1
  437. package/dist/types.d.ts +82 -153
  438. package/dist/types.d.ts.map +1 -1
  439. package/dist/types.js +0 -10
  440. package/dist/types.js.map +1 -1
  441. package/dist/utils/action-specs/constraint-specs.js +6 -6
  442. package/dist/utils/action-specs/constraint-specs.js.map +1 -1
  443. package/dist/utils/action-specs/index.d.ts +0 -2
  444. package/dist/utils/action-specs/index.d.ts.map +1 -1
  445. package/dist/utils/action-specs/index.js +0 -6
  446. package/dist/utils/action-specs/index.js.map +1 -1
  447. package/dist/utils/batch-validation.d.ts +1 -1
  448. package/dist/utils/batch-validation.js +3 -3
  449. package/dist/utils/batch-validation.js.map +1 -1
  450. package/dist/utils/case-insensitive-validator.d.ts +2 -2
  451. package/dist/utils/case-insensitive-validator.js +2 -2
  452. package/dist/utils/connection-hash.d.ts +37 -0
  453. package/dist/utils/connection-hash.d.ts.map +1 -0
  454. package/dist/utils/connection-hash.js +55 -0
  455. package/dist/utils/connection-hash.js.map +1 -0
  456. package/dist/utils/db-aggregations.js +16 -16
  457. package/dist/utils/db-aggregations.js.map +1 -1
  458. package/dist/utils/enum-converter.d.ts +0 -21
  459. package/dist/utils/enum-converter.d.ts.map +1 -1
  460. package/dist/utils/enum-converter.js +1 -23
  461. package/dist/utils/enum-converter.js.map +1 -1
  462. package/dist/utils/environment-detector.d.ts +30 -0
  463. package/dist/utils/environment-detector.d.ts.map +1 -0
  464. package/dist/utils/environment-detector.js +86 -0
  465. package/dist/utils/environment-detector.js.map +1 -0
  466. package/dist/utils/example-filter.d.ts +34 -0
  467. package/dist/utils/example-filter.d.ts.map +1 -0
  468. package/dist/utils/example-filter.js +45 -0
  469. package/dist/utils/example-filter.js.map +1 -0
  470. package/dist/utils/exporter/export.d.ts +2 -16
  471. package/dist/utils/exporter/export.d.ts.map +1 -1
  472. package/dist/utils/exporter/export.js +49 -130
  473. package/dist/utils/exporter/export.js.map +1 -1
  474. package/dist/utils/hook-queue.d.ts +60 -0
  475. package/dist/utils/hook-queue.d.ts.map +1 -1
  476. package/dist/utils/hook-queue.js +114 -11
  477. package/dist/utils/hook-queue.js.map +1 -1
  478. package/dist/utils/importer/import.d.ts.map +1 -1
  479. package/dist/utils/importer/import.js +33 -188
  480. package/dist/utils/importer/import.js.map +1 -1
  481. package/dist/utils/importer/master-tables.d.ts +2 -1
  482. package/dist/utils/importer/master-tables.d.ts.map +1 -1
  483. package/dist/utils/importer/master-tables.js +35 -81
  484. package/dist/utils/importer/master-tables.js.map +1 -1
  485. package/dist/utils/param-normalizer.d.ts +0 -1
  486. package/dist/utils/param-normalizer.d.ts.map +1 -1
  487. package/dist/utils/param-normalizer.js +1 -3
  488. package/dist/utils/param-normalizer.js.map +1 -1
  489. package/dist/utils/path-utils.d.ts +46 -0
  490. package/dist/utils/path-utils.d.ts.map +1 -0
  491. package/dist/utils/path-utils.js +74 -0
  492. package/dist/utils/path-utils.js.map +1 -0
  493. package/dist/utils/policy-validator.js +1 -1
  494. package/dist/utils/policy-validator.js.map +1 -1
  495. package/dist/utils/project-context.d.ts +23 -0
  496. package/dist/utils/project-context.d.ts.map +1 -1
  497. package/dist/utils/project-context.js +45 -3
  498. package/dist/utils/project-context.js.map +1 -1
  499. package/dist/utils/project-root.d.ts +2 -2
  500. package/dist/utils/project-root.js +2 -2
  501. package/dist/utils/sql-dump/core/index-export.js +7 -7
  502. package/dist/utils/sql-dump/schema/indexes.js +24 -24
  503. package/dist/utils/sql-dump/schema/tables.js +44 -44
  504. package/dist/utils/token-logging.js +6 -6
  505. package/dist/utils/token-logging.js.map +1 -1
  506. package/dist/utils/validators.js +1 -1
  507. package/dist/utils/validators.js.map +1 -1
  508. package/dist/utils/view-queries.d.ts +0 -8
  509. package/dist/utils/view-queries.d.ts.map +1 -1
  510. package/dist/utils/view-queries.js +29 -84
  511. package/dist/utils/view-queries.js.map +1 -1
  512. package/dist/watcher/index.d.ts +1 -4
  513. package/dist/watcher/index.d.ts.map +1 -1
  514. package/dist/watcher/index.js +1 -3
  515. package/dist/watcher/index.js.map +1 -1
  516. package/dist/watcher/queue-watcher.d.ts +10 -3
  517. package/dist/watcher/queue-watcher.d.ts.map +1 -1
  518. package/dist/watcher/queue-watcher.js +24 -21
  519. package/dist/watcher/queue-watcher.js.map +1 -1
  520. package/docs/CONFIGURATION.md +14 -14
  521. package/docs/DATABASE_AUTH.md +1 -1
  522. package/docs/HOOKS_GUIDE.md +30 -50
  523. package/docs/HOW_TO_UNINSTALL.md +199 -0
  524. package/docs/MIGRATION_CLEANUP_GUIDE.md +212 -0
  525. package/docs/MIGRATION_TO_SAAS.md +176 -0
  526. package/docs/SLASH_COMMANDS.md +1 -1
  527. package/docs/cli/DATABASE_MIGRATION.md +13 -13
  528. package/docs/cli/DATA_EXPORT_IMPORT.md +71 -69
  529. package/package.json +10 -8
  530. package/saas-connector/LICENSE +190 -0
  531. package/saas-connector/README.md +122 -0
  532. package/saas-connector/dist/auth/auth-manager.d.ts +6 -0
  533. package/saas-connector/dist/auth/auth-manager.d.ts.map +1 -0
  534. package/saas-connector/dist/auth/auth-manager.js +39 -0
  535. package/saas-connector/dist/auth/auth-manager.js.map +7 -0
  536. package/saas-connector/dist/backend/saas-backend.d.ts +20 -0
  537. package/saas-connector/dist/backend/saas-backend.d.ts.map +1 -0
  538. package/saas-connector/dist/backend/saas-backend.js +104 -0
  539. package/saas-connector/dist/backend/saas-backend.js.map +7 -0
  540. package/saas-connector/dist/client/http-client.d.ts +33 -0
  541. package/saas-connector/dist/client/http-client.d.ts.map +1 -0
  542. package/saas-connector/dist/client/http-client.js +226 -0
  543. package/saas-connector/dist/client/http-client.js.map +7 -0
  544. package/saas-connector/dist/client/types.d.ts +62 -0
  545. package/saas-connector/dist/client/types.d.ts.map +1 -0
  546. package/saas-connector/dist/client/types.js +17 -0
  547. package/saas-connector/dist/client/types.js.map +7 -0
  548. package/saas-connector/dist/config/constants.d.ts +14 -0
  549. package/saas-connector/dist/config/constants.d.ts.map +1 -0
  550. package/saas-connector/dist/config/constants.js +68 -0
  551. package/saas-connector/dist/config/constants.js.map +7 -0
  552. package/saas-connector/dist/errors/api-error.d.ts +26 -0
  553. package/saas-connector/dist/errors/api-error.d.ts.map +1 -0
  554. package/saas-connector/dist/errors/api-error.js +62 -0
  555. package/saas-connector/dist/errors/api-error.js.map +7 -0
  556. package/saas-connector/dist/index.d.ts +18 -0
  557. package/saas-connector/dist/index.d.ts.map +1 -0
  558. package/saas-connector/dist/index.js +51 -0
  559. package/saas-connector/dist/index.js.map +7 -0
  560. package/saas-connector/package-lock.json +518 -0
  561. package/saas-connector/package.json +34 -0
  562. package/scripts/copy-help-data.js +19 -0
  563. package/assets/config.example.toml +0 -120
  564. package/assets/kanban-style.png +0 -0
  565. package/assets/kanban-visualizer.png +0 -0
  566. package/assets/sample-agents/README.md +0 -36
  567. package/assets/sample-agents/sqlew-architect.md +0 -321
  568. package/assets/sample-agents/sqlew-researcher.md +0 -292
  569. package/assets/sample-agents/sqlew-scrum-master.md +0 -286
  570. package/assets/sample-commands/README.md +0 -56
  571. package/assets/sample-commands/sqlew.md +0 -144
  572. package/assets/sample-skills/sqlew-decision-format/SKILL.md +0 -73
  573. package/assets/sample-skills/sqlew-plan-guidance/SKILL.md +0 -62
  574. package/assets/schema.sql +0 -564
  575. package/dist/cli/hooks/init-hooks.d.ts +0 -35
  576. package/dist/cli/hooks/init-hooks.d.ts.map +0 -1
  577. package/dist/cli/hooks/init-hooks.js +0 -517
  578. package/dist/cli/hooks/init-hooks.js.map +0 -1
  579. package/dist/cli/hooks/plan-toml-parser.d.ts.map +0 -1
  580. package/dist/cli/hooks/plan-toml-parser.js.map +0 -1
  581. package/dist/init-agents.d.ts +0 -7
  582. package/dist/init-agents.d.ts.map +0 -1
  583. package/dist/init-agents.js +0 -206
  584. package/dist/init-agents.js.map +0 -1
  585. package/dist/init-commands.d.ts +0 -10
  586. package/dist/init-commands.d.ts.map +0 -1
  587. package/dist/init-commands.js +0 -46
  588. package/dist/init-commands.js.map +0 -1
  589. package/dist/init-skills.d.ts +0 -29
  590. package/dist/init-skills.d.ts.map +0 -1
  591. package/dist/init-skills.js +0 -183
  592. package/dist/init-skills.js.map +0 -1
  593. package/dist/sync-agents.d.ts +0 -13
  594. package/dist/sync-agents.d.ts.map +0 -1
  595. package/dist/sync-agents.js +0 -157
  596. package/dist/sync-agents.js.map +0 -1
  597. package/dist/sync-commands.d.ts +0 -13
  598. package/dist/sync-commands.d.ts.map +0 -1
  599. package/dist/sync-commands.js +0 -150
  600. package/dist/sync-commands.js.map +0 -1
  601. package/dist/sync-gitignore.d.ts +0 -13
  602. package/dist/sync-gitignore.d.ts.map +0 -1
  603. package/dist/sync-gitignore.js +0 -60
  604. package/dist/sync-gitignore.js.map +0 -1
  605. package/dist/tests/docker/native/task-operations.test.d.ts +0 -16
  606. package/dist/tests/docker/native/task-operations.test.d.ts.map +0 -1
  607. package/dist/tests/docker/native/task-operations.test.js +0 -800
  608. package/dist/tests/docker/native/task-operations.test.js.map +0 -1
  609. package/dist/tests/feature/decision/batch-validation-integration.test.d.ts +0 -6
  610. package/dist/tests/feature/decision/batch-validation-integration.test.d.ts.map +0 -1
  611. package/dist/tests/feature/decision/batch-validation-integration.test.js +0 -193
  612. package/dist/tests/feature/decision/batch-validation-integration.test.js.map +0 -1
  613. package/dist/tests/feature/task/auto-pruning-decision-link.test.d.ts +0 -6
  614. package/dist/tests/feature/task/auto-pruning-decision-link.test.d.ts.map +0 -1
  615. package/dist/tests/feature/task/auto-pruning-decision-link.test.js +0 -281
  616. package/dist/tests/feature/task/auto-pruning-decision-link.test.js.map +0 -1
  617. package/dist/tests/feature/task/auto-pruning-partial.test.d.ts +0 -6
  618. package/dist/tests/feature/task/auto-pruning-partial.test.d.ts.map +0 -1
  619. package/dist/tests/feature/task/auto-pruning-partial.test.js +0 -305
  620. package/dist/tests/feature/task/auto-pruning-partial.test.js.map +0 -1
  621. package/dist/tests/feature/task/auto-pruning-persistence.test.d.ts +0 -6
  622. package/dist/tests/feature/task/auto-pruning-persistence.test.d.ts.map +0 -1
  623. package/dist/tests/feature/task/auto-pruning-persistence.test.js +0 -267
  624. package/dist/tests/feature/task/auto-pruning-persistence.test.js.map +0 -1
  625. package/dist/tests/feature/task/auto-pruning-safety.test.d.ts +0 -12
  626. package/dist/tests/feature/task/auto-pruning-safety.test.d.ts.map +0 -1
  627. package/dist/tests/feature/task/auto-pruning-safety.test.js +0 -224
  628. package/dist/tests/feature/task/auto-pruning-safety.test.js.map +0 -1
  629. package/dist/tests/feature/task/dependencies.test.d.ts +0 -7
  630. package/dist/tests/feature/task/dependencies.test.d.ts.map +0 -1
  631. package/dist/tests/feature/task/dependencies.test.js +0 -656
  632. package/dist/tests/feature/task/dependencies.test.js.map +0 -1
  633. package/dist/tests/feature/task/file-actions-integration.test.d.ts +0 -10
  634. package/dist/tests/feature/task/file-actions-integration.test.d.ts.map +0 -1
  635. package/dist/tests/feature/task/file-actions-integration.test.js +0 -162
  636. package/dist/tests/feature/task/file-actions-integration.test.js.map +0 -1
  637. package/dist/tests/feature/task/file-actions-validation.test.d.ts +0 -6
  638. package/dist/tests/feature/task/file-actions-validation.test.d.ts.map +0 -1
  639. package/dist/tests/feature/task/file-actions-validation.test.js +0 -228
  640. package/dist/tests/feature/task/file-actions-validation.test.js.map +0 -1
  641. package/dist/tests/feature/task/link-file-backward-compat.test.d.ts +0 -6
  642. package/dist/tests/feature/task/link-file-backward-compat.test.d.ts.map +0 -1
  643. package/dist/tests/feature/task/link-file-backward-compat.test.js +0 -280
  644. package/dist/tests/feature/task/link-file-backward-compat.test.js.map +0 -1
  645. package/dist/tests/feature/task/watch-files-action.test.d.ts +0 -8
  646. package/dist/tests/feature/task/watch-files-action.test.d.ts.map +0 -1
  647. package/dist/tests/feature/task/watch-files-action.test.js +0 -402
  648. package/dist/tests/feature/task/watch-files-action.test.js.map +0 -1
  649. package/dist/tests/feature/task/watch-files-parameter.test.d.ts +0 -8
  650. package/dist/tests/feature/task/watch-files-parameter.test.d.ts.map +0 -1
  651. package/dist/tests/feature/task/watch-files-parameter.test.js +0 -283
  652. package/dist/tests/feature/task/watch-files-parameter.test.js.map +0 -1
  653. package/dist/tests/integration/all-features.standalone.d.ts +0 -7
  654. package/dist/tests/integration/all-features.standalone.d.ts.map +0 -1
  655. package/dist/tests/integration/all-features.standalone.js +0 -417
  656. package/dist/tests/integration/all-features.standalone.js.map +0 -1
  657. package/dist/tests/unit/config/plan-toml-cache.test.d.ts.map +0 -1
  658. package/dist/tests/unit/config/plan-toml-cache.test.js.map +0 -1
  659. package/dist/tests/unit/hooks/plan-toml-parser.test.d.ts.map +0 -1
  660. package/dist/tests/unit/hooks/plan-toml-parser.test.js.map +0 -1
  661. package/dist/tools/files/actions/check-lock.d.ts +0 -16
  662. package/dist/tools/files/actions/check-lock.d.ts.map +0 -1
  663. package/dist/tools/files/actions/check-lock.js +0 -74
  664. package/dist/tools/files/actions/check-lock.js.map +0 -1
  665. package/dist/tools/files/actions/get.d.ts +0 -16
  666. package/dist/tools/files/actions/get.d.ts.map +0 -1
  667. package/dist/tools/files/actions/get.js +0 -85
  668. package/dist/tools/files/actions/get.js.map +0 -1
  669. package/dist/tools/files/actions/record-batch.d.ts +0 -18
  670. package/dist/tools/files/actions/record-batch.d.ts.map +0 -1
  671. package/dist/tools/files/actions/record-batch.js +0 -119
  672. package/dist/tools/files/actions/record-batch.js.map +0 -1
  673. package/dist/tools/files/actions/record.d.ts +0 -16
  674. package/dist/tools/files/actions/record.d.ts.map +0 -1
  675. package/dist/tools/files/actions/record.js +0 -43
  676. package/dist/tools/files/actions/record.js.map +0 -1
  677. package/dist/tools/files/actions/sqlite-flush.d.ts +0 -27
  678. package/dist/tools/files/actions/sqlite-flush.d.ts.map +0 -1
  679. package/dist/tools/files/actions/sqlite-flush.js +0 -66
  680. package/dist/tools/files/actions/sqlite-flush.js.map +0 -1
  681. package/dist/tools/files/help/example.d.ts +0 -5
  682. package/dist/tools/files/help/example.d.ts.map +0 -1
  683. package/dist/tools/files/help/example.js +0 -109
  684. package/dist/tools/files/help/example.js.map +0 -1
  685. package/dist/tools/files/help/help.d.ts +0 -5
  686. package/dist/tools/files/help/help.d.ts.map +0 -1
  687. package/dist/tools/files/help/help.js +0 -35
  688. package/dist/tools/files/help/help.js.map +0 -1
  689. package/dist/tools/files/index.d.ts +0 -14
  690. package/dist/tools/files/index.d.ts.map +0 -1
  691. package/dist/tools/files/index.js +0 -15
  692. package/dist/tools/files/index.js.map +0 -1
  693. package/dist/tools/files/internal/queries.d.ts +0 -18
  694. package/dist/tools/files/internal/queries.d.ts.map +0 -1
  695. package/dist/tools/files/internal/queries.js +0 -54
  696. package/dist/tools/files/internal/queries.js.map +0 -1
  697. package/dist/tools/files/internal/validation.d.ts +0 -18
  698. package/dist/tools/files/internal/validation.d.ts.map +0 -1
  699. package/dist/tools/files/internal/validation.js +0 -39
  700. package/dist/tools/files/internal/validation.js.map +0 -1
  701. package/dist/tools/files/types.d.ts +0 -6
  702. package/dist/tools/files/types.d.ts.map +0 -1
  703. package/dist/tools/files/types.js +0 -6
  704. package/dist/tools/files/types.js.map +0 -1
  705. package/dist/tools/help-queries.d.ts +0 -130
  706. package/dist/tools/help-queries.d.ts.map +0 -1
  707. package/dist/tools/help-queries.js +0 -411
  708. package/dist/tools/help-queries.js.map +0 -1
  709. package/dist/tools/tasks/actions/add-dependency.d.ts +0 -12
  710. package/dist/tools/tasks/actions/add-dependency.d.ts.map +0 -1
  711. package/dist/tools/tasks/actions/add-dependency.js +0 -129
  712. package/dist/tools/tasks/actions/add-dependency.js.map +0 -1
  713. package/dist/tools/tasks/actions/archive.d.ts +0 -11
  714. package/dist/tools/tasks/actions/archive.d.ts.map +0 -1
  715. package/dist/tools/tasks/actions/archive.js +0 -58
  716. package/dist/tools/tasks/actions/archive.js.map +0 -1
  717. package/dist/tools/tasks/actions/create-batch.d.ts +0 -19
  718. package/dist/tools/tasks/actions/create-batch.d.ts.map +0 -1
  719. package/dist/tools/tasks/actions/create-batch.js +0 -103
  720. package/dist/tools/tasks/actions/create-batch.js.map +0 -1
  721. package/dist/tools/tasks/actions/create.d.ts +0 -16
  722. package/dist/tools/tasks/actions/create.d.ts.map +0 -1
  723. package/dist/tools/tasks/actions/create.js +0 -163
  724. package/dist/tools/tasks/actions/create.js.map +0 -1
  725. package/dist/tools/tasks/actions/get-dependencies.d.ts +0 -12
  726. package/dist/tools/tasks/actions/get-dependencies.d.ts.map +0 -1
  727. package/dist/tools/tasks/actions/get-dependencies.js +0 -41
  728. package/dist/tools/tasks/actions/get-dependencies.js.map +0 -1
  729. package/dist/tools/tasks/actions/get-pruned-files.d.ts +0 -13
  730. package/dist/tools/tasks/actions/get-pruned-files.d.ts.map +0 -1
  731. package/dist/tools/tasks/actions/get-pruned-files.js +0 -45
  732. package/dist/tools/tasks/actions/get-pruned-files.js.map +0 -1
  733. package/dist/tools/tasks/actions/get.d.ts +0 -12
  734. package/dist/tools/tasks/actions/get.d.ts.map +0 -1
  735. package/dist/tools/tasks/actions/get.js +0 -84
  736. package/dist/tools/tasks/actions/get.js.map +0 -1
  737. package/dist/tools/tasks/actions/link-pruned-file.d.ts +0 -14
  738. package/dist/tools/tasks/actions/link-pruned-file.d.ts.map +0 -1
  739. package/dist/tools/tasks/actions/link-pruned-file.js +0 -68
  740. package/dist/tools/tasks/actions/link-pruned-file.js.map +0 -1
  741. package/dist/tools/tasks/actions/link.d.ts +0 -14
  742. package/dist/tools/tasks/actions/link.d.ts.map +0 -1
  743. package/dist/tools/tasks/actions/link.js +0 -120
  744. package/dist/tools/tasks/actions/link.js.map +0 -1
  745. package/dist/tools/tasks/actions/list.d.ts +0 -17
  746. package/dist/tools/tasks/actions/list.d.ts.map +0 -1
  747. package/dist/tools/tasks/actions/list.js +0 -100
  748. package/dist/tools/tasks/actions/list.js.map +0 -1
  749. package/dist/tools/tasks/actions/move.d.ts +0 -13
  750. package/dist/tools/tasks/actions/move.d.ts.map +0 -1
  751. package/dist/tools/tasks/actions/move.js +0 -91
  752. package/dist/tools/tasks/actions/move.js.map +0 -1
  753. package/dist/tools/tasks/actions/remove-dependency.d.ts +0 -12
  754. package/dist/tools/tasks/actions/remove-dependency.d.ts.map +0 -1
  755. package/dist/tools/tasks/actions/remove-dependency.js +0 -36
  756. package/dist/tools/tasks/actions/remove-dependency.js.map +0 -1
  757. package/dist/tools/tasks/actions/update.d.ts +0 -10
  758. package/dist/tools/tasks/actions/update.d.ts.map +0 -1
  759. package/dist/tools/tasks/actions/update.js +0 -183
  760. package/dist/tools/tasks/actions/update.js.map +0 -1
  761. package/dist/tools/tasks/actions/watch-files.d.ts +0 -14
  762. package/dist/tools/tasks/actions/watch-files.d.ts.map +0 -1
  763. package/dist/tools/tasks/actions/watch-files.js +0 -127
  764. package/dist/tools/tasks/actions/watch-files.js.map +0 -1
  765. package/dist/tools/tasks/help/example.d.ts +0 -8
  766. package/dist/tools/tasks/help/example.d.ts.map +0 -1
  767. package/dist/tools/tasks/help/example.js +0 -225
  768. package/dist/tools/tasks/help/example.js.map +0 -1
  769. package/dist/tools/tasks/help/help.d.ts +0 -8
  770. package/dist/tools/tasks/help/help.d.ts.map +0 -1
  771. package/dist/tools/tasks/help/help.js +0 -307
  772. package/dist/tools/tasks/help/help.js.map +0 -1
  773. package/dist/tools/tasks/help/use-case.d.ts +0 -11
  774. package/dist/tools/tasks/help/use-case.d.ts.map +0 -1
  775. package/dist/tools/tasks/help/use-case.js +0 -767
  776. package/dist/tools/tasks/help/use-case.js.map +0 -1
  777. package/dist/tools/tasks/index.d.ts +0 -28
  778. package/dist/tools/tasks/index.d.ts.map +0 -1
  779. package/dist/tools/tasks/index.js +0 -33
  780. package/dist/tools/tasks/index.js.map +0 -1
  781. package/dist/tools/tasks/internal/state-machine.d.ts +0 -16
  782. package/dist/tools/tasks/internal/state-machine.d.ts.map +0 -1
  783. package/dist/tools/tasks/internal/state-machine.js +0 -36
  784. package/dist/tools/tasks/internal/state-machine.js.map +0 -1
  785. package/dist/tools/tasks/internal/task-queries.d.ts +0 -12
  786. package/dist/tools/tasks/internal/task-queries.d.ts.map +0 -1
  787. package/dist/tools/tasks/internal/task-queries.js +0 -53
  788. package/dist/tools/tasks/internal/task-queries.js.map +0 -1
  789. package/dist/tools/tasks/internal/validation.d.ts +0 -47
  790. package/dist/tools/tasks/internal/validation.d.ts.map +0 -1
  791. package/dist/tools/tasks/internal/validation.js +0 -261
  792. package/dist/tools/tasks/internal/validation.js.map +0 -1
  793. package/dist/tools/tasks/types.d.ts +0 -80
  794. package/dist/tools/tasks/types.d.ts.map +0 -1
  795. package/dist/tools/tasks/types.js +0 -68
  796. package/dist/tools/tasks/types.js.map +0 -1
  797. package/dist/tools/tasks/watcher/status.d.ts +0 -9
  798. package/dist/tools/tasks/watcher/status.d.ts.map +0 -1
  799. package/dist/tools/tasks/watcher/status.js +0 -130
  800. package/dist/tools/tasks/watcher/status.js.map +0 -1
  801. package/dist/tools/tasks.d.ts +0 -16
  802. package/dist/tools/tasks.d.ts.map +0 -1
  803. package/dist/tools/tasks.js +0 -17
  804. package/dist/tools/tasks.js.map +0 -1
  805. package/dist/utils/action-specs/file-specs.d.ts +0 -9
  806. package/dist/utils/action-specs/file-specs.d.ts.map +0 -1
  807. package/dist/utils/action-specs/file-specs.js +0 -54
  808. package/dist/utils/action-specs/file-specs.js.map +0 -1
  809. package/dist/utils/action-specs/task-specs.d.ts +0 -9
  810. package/dist/utils/action-specs/task-specs.d.ts.map +0 -1
  811. package/dist/utils/action-specs/task-specs.js +0 -143
  812. package/dist/utils/action-specs/task-specs.js.map +0 -1
  813. package/dist/utils/cleanup.d.ts +0 -69
  814. package/dist/utils/cleanup.d.ts.map +0 -1
  815. package/dist/utils/cleanup.js +0 -102
  816. package/dist/utils/cleanup.js.map +0 -1
  817. package/dist/utils/file-pruning.d.ts +0 -93
  818. package/dist/utils/file-pruning.d.ts.map +0 -1
  819. package/dist/utils/file-pruning.js +0 -194
  820. package/dist/utils/file-pruning.js.map +0 -1
  821. package/dist/utils/importer/topological-sort.d.ts +0 -61
  822. package/dist/utils/importer/topological-sort.d.ts.map +0 -1
  823. package/dist/utils/importer/topological-sort.js +0 -143
  824. package/dist/utils/importer/topological-sort.js.map +0 -1
  825. package/dist/utils/retention.d.ts +0 -65
  826. package/dist/utils/retention.d.ts.map +0 -1
  827. package/dist/utils/retention.js +0 -156
  828. package/dist/utils/retention.js.map +0 -1
  829. package/dist/utils/task-stale-detection.d.ts +0 -98
  830. package/dist/utils/task-stale-detection.d.ts.map +0 -1
  831. package/dist/utils/task-stale-detection.js +0 -479
  832. package/dist/utils/task-stale-detection.js.map +0 -1
  833. package/dist/watcher/file-watcher.d.ts +0 -131
  834. package/dist/watcher/file-watcher.d.ts.map +0 -1
  835. package/dist/watcher/file-watcher.js +0 -730
  836. package/dist/watcher/file-watcher.js.map +0 -1
  837. package/dist/watcher/test-executor.d.ts +0 -23
  838. package/dist/watcher/test-executor.d.ts.map +0 -1
  839. package/dist/watcher/test-executor.js +0 -226
  840. package/dist/watcher/test-executor.js.map +0 -1
  841. package/docs/TASK_SYSTEM_DEPRECATED.md +0 -88
package/CHANGELOG.md CHANGED
@@ -7,6 +7,74 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ---
9
9
 
10
+ ## [5.0.0] - 2026-01-31
11
+
12
+ ### Added
13
+
14
+ **🌐 SaaS Backend Support (sqlew.io)**
15
+
16
+ - Connect to sqlew.io cloud service with `type = "cloud"` in config.toml
17
+ - Team-shared decision database - all team members see the same architectural decisions
18
+ - Multiple AI agents can work simultaneously without conflicts
19
+ - No local database setup required - just add your API key
20
+ - Connection Identity for seat-based billing with project-scoped hashing
21
+ - Project name resolution with UUID caching for optimized API calls
22
+ - X-Agent header for MCP client tracking in audit logs
23
+
24
+ **📚 Environment-aware Help Examples**
25
+
26
+ - Examples filtered by environment (SQLite shows numeric IDs, SaaS shows UUIDs)
27
+ - `target_type` attribute in TOML: `sqlite`, `cloud`, or `all`
28
+ - Automatic filtering in help `query-action`, example `get`, `search`, `list-all` actions
29
+
30
+ **🌳 Git Worktree Support**
31
+
32
+ - Automatic worktree detection for multi-branch development
33
+ - Config inheritance from main repository
34
+ - Independent session cache per worktree
35
+ - Seamless context sharing across worktrees
36
+
37
+ **🔌 Plugin-first Architecture**
38
+
39
+ - Skills/Hooks/Agents moved to separate `sqlew-plugin` repository
40
+ - Global Rules auto-created at `~/.claude/rules/sqlew/` on MCP startup
41
+ - Per-project Skills/Hooks installation removed (use plugin marketplace instead)
42
+ - Simplified setup: just install the plugin and connect to sqlew.io
43
+
44
+ **Queue Tool for Hook Queue Management**
45
+
46
+ - New `queue` MCP tool to manage `.sqlew/queue/pending.json`
47
+ - Actions: `list` (view pending items), `remove` (delete by index), `clear` (remove all)
48
+ - Lock mechanism to prevent race conditions with QueueWatcher
49
+ - Help documentation in `src/help-data/queue.toml`
50
+ - Queue monitoring rule in `~/.claude/rules/sqlew/queue-monitoring.md`
51
+
52
+ **TOML-based Help System**
53
+
54
+ - Help documentation now stored in `src/help-data/*.toml` (version-controlled, human-editable)
55
+ - `HelpSystemLoader` for startup-time loading with in-memory caching (O(1) lookups)
56
+ - 15 TOML files: 8 tool files (including queue) + 6 use case workflows + 1 schema file
57
+
58
+ ### Changed
59
+
60
+ - **MCP tools: 6 → 7** (queue tool added)
61
+ - `help`, `example`, `use_case` tools now load from TOML files instead of database
62
+ - Database schema reduced: 18 tables (7 master + 11 transaction)
63
+ - Table prefix renamed: `v4_` → `m_/t_` (master/transaction convention)
64
+ - Multi-database backend now includes Cloud option (SQLite/PostgreSQL/MySQL/Cloud)
65
+ - Constraint ID now supports both `number` (SQLite) and `string` UUID (SaaS)
66
+ - `constraint_id` parameter renamed to `id` (backward compatibility maintained via alias)
67
+ - Lazy initialization of agent name after MCP handshake completion
68
+
69
+ ### Removed
70
+
71
+ - **Per-project Skills/Hooks installation** - Use sqlew-plugin from marketplace instead
72
+ - **7 help database tables**: m_help_tools, m_help_actions, m_help_use_case_cats, t_help_action_params, t_help_action_examples, t_help_use_cases, t_help_action_sequences
73
+ - `help-queries.ts` (replaced by HelpSystemLoader)
74
+ - Task and file management tables (deprecated in v4.3.0)
75
+
76
+ ---
77
+
10
78
  ## [4.3.1] - 2026-01-06
11
79
 
12
80
  ### Added
package/LICENSE CHANGED
@@ -175,7 +175,7 @@
175
175
 
176
176
  END OF TERMS AND CONDITIONS
177
177
 
178
- Copyright 2025 sin5ddd
178
+ Copyright 2025 sqlew-io
179
179
 
180
180
  Licensed under the Apache License, Version 2.0 (the "License");
181
181
  you may not use this file except in compliance with the License.
package/NOTICE CHANGED
@@ -1,7 +1,7 @@
1
1
  sqlew
2
- Copyright 2025 sin5ddd
2
+ Copyright 2025 sqlew-io
3
3
 
4
- This product includes software developed by sin5ddd.
4
+ This product includes software developed by sqlew-io.
5
5
 
6
6
  Licensed under the Apache License, Version 2.0.
7
7
 
package/README.md CHANGED
@@ -1,4 +1,5 @@
1
1
  # sqlew
2
+
2
3
  ![sqlew_logo](assets/sqlew-logo.png)
3
4
 
4
5
  [![npm version](https://img.shields.io/npm/v/sqlew.svg)](https://www.npmjs.com/package/sqlew)
@@ -8,41 +9,79 @@
8
9
 
9
10
  ## 🚀 Quick Start
10
11
 
11
- ### 1. Install globally (Recommended)
12
+ ### 1. Install MCP Server
12
13
 
13
14
  ```bash
14
15
  npm install -g sqlew
15
16
  ```
16
17
 
17
- ### 2. Add to your MCP config
18
+ ### 2. Install Plugin (Recommended)
18
19
 
19
- Add to `.mcp.json` in your project root:
20
+ In Claude Code, run the following commands:
20
21
 
21
- ```json
22
- {
23
- "mcpServers": {
24
- "sqlew": {
25
- "command": "sqlew"
26
- }
27
- }
28
- }
22
+ ```bash
23
+ # 1. Add the marketplace
24
+ /plugin marketplace add sqlew-io/sqlew-plugin
25
+
26
+ # 2. Install the plugin (user-level recommended)
27
+ /plugin install sqlew-plugin
28
+
29
+ # 3. Restart Claude Code to apply changes
29
30
  ```
30
31
 
31
- ### 3. Initialize project
32
+ **That's it!** The plugin automatically sets up everything:
33
+
34
+ - ✅ MCP server config (`.mcp.json`)
35
+ - ✅ Claude Code Skills (Plan Mode guidance)
36
+ - ✅ Claude Code Hooks (automatic decision capture)
37
+
38
+ > **Note:** Global Rules are automatically created at `~/.claude/rules/sqlew/` when the MCP server starts.
39
+
40
+ ### 3. Connect to sqlew.io (For Teams) 🌐
41
+
42
+ **NEW in v5.0.0**: Connect to the cloud for team-shared decisions!
43
+
44
+ **Step 1: Get your API key** (one-time setup)
45
+
46
+ Visit [sqlew.io](https://sqlew.io) and save your API key:
32
47
 
33
48
  ```bash
34
- sqlew --init
49
+ # ~/.sqlew.env (shared across all projects)
50
+ SQLEW_API_KEY=your-api-key
51
+ ```
52
+
53
+ **Step 2: Configure each project**
54
+
55
+ ```toml
56
+ # .sqlew/config.toml (per-project)
57
+ [database]
58
+ type = "cloud"
59
+
60
+ [project]
61
+ name = "your-project-name"
35
62
  ```
36
63
 
37
- This one-shot command sets up:
38
- - Claude Code Skills
39
- - CLAUDE.md integration hints
40
- - Plan-to-ADR hooks
41
- - .gitignore entries
64
+ > **Note:** Each project needs its own `.sqlew/config.toml` to specify the project name.
65
+
66
+ **Benefits:**
67
+ - 👥 **Team sharing** - All team members share the same decision database
68
+ - 🌳 **Git worktree ready** - Works seamlessly with multiple branches
69
+ - ⚡ **Zero setup** - No local database required
70
+
71
+ ### Alternative: Local Database (Offline)
72
+
73
+ For offline or single-developer use, **no setup required**:
74
+
75
+ - Database (`.sqlew/sqlew.db`) is auto-created on first MCP server start
76
+ - Config file (`.sqlew/config.toml`) is auto-generated with detected project name
77
+ - Global rules (`~/.claude/rules/sqlew/`) are auto-installed
78
+
79
+ Just start using Claude Code - everything initializes automatically!
42
80
 
43
81
  ### 4. Just use Plan Mode!
44
82
 
45
83
  **That's it!** Now every time you:
84
+
46
85
  1. Create a plan in Claude Code
47
86
  2. Get user approval (ExitPlanMode)
48
87
 
@@ -67,15 +106,18 @@ For manual queries and explicit decision recording:
67
106
  **sqlew** is a Model Context Protocol (MCP) server that brings ADR (Architecture Decision Record) capabilities to AI agents through a shared SQL-backed repository.
68
107
 
69
108
  ### The Problem: AI Agents Lack Decision Memory
109
+
70
110
  Every AI session starts with zero context. Agents must re-learn architectural decisions, can reintroduce previously rejected patterns, and have no systematic way to understand WHY past choices were made.
71
111
 
72
112
  Traditional ADR approaches use Markdown files scattered across repositories. While human-readable, this format creates challenges for AI agents:
113
+
73
114
  - **No structured querying** – AI must read entire files to find relevant decisions
74
115
  - **Context explosion** – Token costs grow linearly with decision history
75
116
  - **No duplicate detection** – AI cannot easily identify similar or conflicting decisions
76
117
  - **Poor discoverability** – Finding related decisions requires full-text search across many files
77
118
 
78
- ### *sqlew* brings structured ADR to AI agents
119
+ ### _sqlew_ brings structured ADR to AI agents
120
+
79
121
  sqlew transforms ADR from static documentation into a **queryable, AI-native decision database**:
80
122
 
81
123
  - **Structured records** – Decisions stored as relational data with metadata, tags, and relationships
@@ -84,33 +126,49 @@ sqlew transforms ADR from static documentation into a **queryable, AI-native dec
84
126
  - **Constraint tracking** – Architectural rules and principles as first-class entities
85
127
  - **Auto-capture** – Claude Code Hooks automatically record decisions from Plan Mode
86
128
 
87
- > *This software does not send any data to external networks. We NEVER collect any data or usage statistics. Please use it with complete security.*
129
+ > _This software does not send any data to external networks. We NEVER collect any data or usage statistics. Please use it with complete security._
88
130
 
89
131
  ## Why sqlew?
90
132
 
91
133
  AI agents automatically accumulate project knowledge through Plan Mode. Decisions are stored in SQL for efficient querying.
92
134
 
135
+ ### 🌐 Team Development Made Easy (NEW in v5.0.0)
136
+
137
+ - **Shared decision database** - All team members see the same architectural decisions
138
+ - **Multiple AI agents** - Work simultaneously without conflicts
139
+ - **No local setup** - Just add your API key and start
140
+
141
+ ### 🌳 Perfect for Git Worktree Workflows
142
+
143
+ - **Automatic worktree detection** - Each worktree shares the same context
144
+ - **Config inheritance** - Main repository settings apply everywhere
145
+ - **Independent sessions** - Each worktree has its own cache
146
+
93
147
  **Perfect for:**
148
+
94
149
  - 🏢 Large-scale projects with many architectural decisions
95
150
  - 🔧 Long-term maintenance where context must persist across sessions
96
- - 👥 Team environments where multiple AI agents share knowledge
151
+ - 👥 **Team environments** where multiple AI agents share knowledge
152
+ - 🌳 **Git worktree** workflows with multiple concurrent branches
97
153
 
98
154
  **Key benefits:**
155
+
99
156
  - ⚡ **60-75% token reduction** vs reading Markdown ADRs
100
157
  - 🔍 **Millisecond queries** (2-50ms) even with thousands of decisions
101
158
  - 🛡️ **Duplicate prevention** via similarity detection
102
159
  - 📚 **Persistent memory** across all AI sessions
160
+ - 👥 **Team sync** via sqlew.io cloud backend
103
161
 
104
162
  → See [ADR Concepts](docs/ADR_CONCEPTS.md) for detailed architecture.
105
163
 
106
164
  ---
107
165
 
108
- **Technical Features**: 6 MCP tools (3 core: decision, constraint, suggest + 3 utility: help, example, use_case), three-tier similarity detection (0-100 point scoring), ACID transaction support, multi-database backend (SQLite/PostgreSQL/MySQL), metadata-driven organization with layers and tags
109
-
166
+ **Technical Features**: 7 MCP tools (3 core: decision, constraint, suggest + 4 utility: help, example, use_case, queue), three-tier similarity detection (0-100 point scoring), ACID transaction support, multi-database backend (SQLite/PostgreSQL/MySQL/Cloud), metadata-driven organization with layers and tags
110
167
 
111
168
  ## Installation
112
169
 
113
170
  ### Requirements
171
+
114
172
  - Node.js 20.0.0 or higher
115
173
  - npm or npx
116
174
 
@@ -126,11 +184,11 @@ Then add to `.mcp.json` in your project root:
126
184
 
127
185
  ```json
128
186
  {
129
- "mcpServers": {
130
- "sqlew": {
131
- "command": "sqlew"
187
+ "mcpServers": {
188
+ "sqlew": {
189
+ "command": "sqlew"
190
+ }
132
191
  }
133
- }
134
192
  }
135
193
  ```
136
194
 
@@ -149,11 +207,11 @@ Each project maintains its own context database in `.sqlew/sqlew.db`.
149
207
 
150
208
  sqlew supports multiple database backends:
151
209
 
152
- | Database | Use Case | Status |
153
- |----------|----------|--------|
154
- | **SQLite** | Personal/small projects | ✅ Default |
210
+ | Database | Use Case | Status |
211
+ | ---------------------------- | ------------------------ | ------------ |
212
+ | **SQLite** | Personal/small projects | ✅ Default |
155
213
  | **MySQL 8.0+ / MariaDB 10+** | Production, team sharing | ✅ Supported |
156
- | **PostgreSQL 12+** | Production, team sharing | ✅ Supported |
214
+ | **PostgreSQL 12+** | Production, team sharing | ✅ Supported |
157
215
 
158
216
  Configuration is managed via `.sqlew/config.toml` file and CLI arguments.
159
217
 
@@ -168,6 +226,7 @@ And `action: "use_case"` shows how to use the tool in a real-world scenario.
168
226
  ### On-Demand Documentation
169
227
 
170
228
  All tools support:
229
+
171
230
  - `action: "help"` - Parameter reference and descriptions
172
231
  - `action: "example"` - Usage scenarios and examples
173
232
  - `action: "use_case"` - Real-world usage examples
@@ -177,33 +236,43 @@ All tools support:
177
236
  **Essential Guides:**
178
237
 
179
238
  **Advanced Features:**
239
+
180
240
  - [Hooks Guide](docs/HOOKS_GUIDE.md) - Claude Code Hooks integration
181
241
  - [Cross Database](docs/CROSS_DATABASE.md) - Multi-database support
182
242
 
183
243
  **Reference:**
244
+
184
245
  - [Configuration](docs/CONFIGURATION.md) - Config file setup, all options
185
246
 
186
247
  ### Advanced Usage
187
248
 
188
249
  - [Configuration Guide](docs/CONFIGURATION.md) - TOML config file setup
189
250
  - [CLI Mode Overview](docs/cli/README.md) - Database migration, export/import commands
190
- - [Migration Guides](docs/MIGRATION_v2.md) - Version upgrade guides
251
+
252
+ ### Upgrade Guides
253
+
254
+ - **[Upgrade from v4 to v5](docs/MIGRATION_CLEANUP_GUIDE.md)** - Cleanup legacy files after plugin migration
255
+ - **[Migrating Local Data to SaaS](docs/MIGRATION_TO_SAAS.md)** - Export local v3.x/v4.x data to sqlew.io cloud
256
+ - [Migration from v2](docs/MIGRATION_v2.md) - Version upgrade guides
191
257
 
192
258
  ## Use Cases
193
259
 
194
260
  ### ADR-Driven Development with AI
261
+
195
262
  - **Architecture Evolution** – Document major architectural decisions with full context and alternatives
196
263
  - **Pattern Standardization** – Establish coding patterns as constraints, enforce via AI code generation
197
264
  - **Technical Debt Tracking** – Record temporary decisions with deprecation paths and future plans
198
265
  - **Onboarding Acceleration** – New AI sessions instantly understand architectural history
199
266
 
200
267
  ### Cross-Session AI Workflows
268
+
201
269
  - **Multi-Session Projects** – AI maintains context across days/weeks without re-reading documentation
202
270
  - **Multi-Agent Coordination** – Multiple AI agents share architectural understanding through ADR database
203
271
  - **Breaking Change Management** – Document API changes, deprecations, and migration paths systematically
204
272
  - **Refactoring Guidance** – AI references past decisions to maintain architectural consistency during refactors
205
273
 
206
274
  ### Real-World Examples
275
+
207
276
  ```bash
208
277
  # Document an architectural decision with alternatives
209
278
  /sqlew record we use PostgreSQL over MongoDB. MongoDB was rejected due to lack of ACID transactions for our financial data requirements.
@@ -218,7 +287,6 @@ All tools support:
218
287
  /sqlew plan implementing the PostgreSQL connection pool with pgBouncer
219
288
  ```
220
289
 
221
-
222
290
  ## Performance
223
291
 
224
292
  - **Query speed**: 2-50ms
@@ -228,17 +296,19 @@ All tools support:
228
296
 
229
297
  ## Support
230
298
 
231
- Support development via [GitHub Sponsors](https://github.com/sponsors/sin5ddd) - One-time or monthly options available.
299
+ Support development via [GitHub Sponsors](https://github.com/sponsors/sqlew-io) - One-time or monthly options available.
232
300
 
233
301
  ## Version
234
302
 
235
- Current version: **4.3.1**
303
+ Current version: **5.0.0**
236
304
  See [CHANGELOG.md](CHANGELOG.md) for release history.
237
305
 
238
- **What's New in v4.3.1:**
239
- - **`.claude/rules/` Integration** - Safer installation without modifying CLAUDE.md
240
- - **Incremental gitignore** - Missing entries added even if sqlew section exists
241
- - **Code Quality** - DRY improvements, obsolete code cleanup
306
+ **What's New in v5.0.0:**
307
+
308
+ - 🌐 **SaaS Backend** - Connect to [sqlew.io](https://sqlew.io) for team-shared decisions
309
+ - 🌳 **Git Worktree Support** - Seamless multi-branch development
310
+ - 🔌 **Plugin-first Architecture** - Simplified setup via sqlew-plugin
311
+ - 🔧 **Queue Tool** - Hook queue management (list, remove, clear)
242
312
 
243
313
  See [docs/HOOKS_GUIDE.md](docs/HOOKS_GUIDE.md) for Claude Code Hooks details.
244
314
 
@@ -249,19 +319,19 @@ Apache License 2.0 - Free for commercial and personal use. See [LICENSE](LICENSE
249
319
  ## Links
250
320
 
251
321
  - [npm package](https://www.npmjs.com/package/sqlew)
252
- - [GitHub repository](https://github.com/sin5ddd/mcp-sqlew)
322
+ - [GitHub repository](https://github.com/sqlew-io/sqlew)
253
323
  - [Model Context Protocol](https://modelcontextprotocol.io/)
254
324
 
255
325
  ## Support & Documentation
256
326
 
257
- - Issues: [GitHub Issues](https://github.com/sin5ddd/mcp-sqlew/issues)
327
+ - Issues: [GitHub Issues](https://github.com/sqlew-io/sqlew/issues)
258
328
  - Docs: [docs/](docs/) directory
259
329
 
260
330
  ## Acknowledgments
261
331
 
262
332
  Built with [Model Context Protocol SDK](https://github.com/modelcontextprotocol/sdk), [better-sqlite3](https://github.com/WiseLibs/better-sqlite3), and TypeScript.
263
333
 
264
- **Author**: sin5ddd
334
+ **Author**: sqlew-io
265
335
 
266
336
  ---
267
337
 
@@ -1,5 +1,38 @@
1
1
  ## Plan Mode Integration
2
2
 
3
+ ### REQUIRED: Suggest Search BEFORE Planning
4
+
5
+ **CRITICAL**: Before writing any plan, you MUST search for related context.
6
+
7
+ **Step 1**: Extract keywords from the user's task (e.g., migration, auth, database)
8
+
9
+ **Step 2**: Run suggest search:
10
+ ```
11
+ suggest { action: "by_context", key: "<keyword>", tags: ["<relevant-tags>"] }
12
+ suggest { action: "by_context", target: "constraint", text: "<topic>" }
13
+ ```
14
+
15
+ **Step 3**: Include results in plan (MANDATORY section):
16
+ ```markdown
17
+ ## Related Context (from sqlew)
18
+
19
+ ### Past Decisions
20
+ | Key | Value | Score |
21
+ |-----|-------|-------|
22
+ | path/to/decision | description | 85 |
23
+
24
+ > If empty: "No related decisions found for: <keywords>"
25
+
26
+ ### Applicable Constraints
27
+ - **[category]**: constraint text (Priority: high)
28
+
29
+ > If empty: "No constraints found for: <keywords>"
30
+ ```
31
+
32
+ **FAILURE TO INCLUDE "Related Context" SECTION = INVALID PLAN**
33
+
34
+ ---
35
+
3
36
  ### REQUIRED: Decision & Constraint Recording
4
37
 
5
38
  **When writing plans, you MUST include the following sections:**
@@ -48,3 +81,24 @@ If you've run `sqlew --hooks`, sqlew integration is **fully automatic**:
48
81
 
49
82
  **Final Plan Phase:**
50
83
  - `/sqlew record <decision>` - record key architectural decisions
84
+
85
+ ---
86
+
87
+ ### Failed Queue Check (IMPORTANT)
88
+
89
+ **At the start of plan mode**, check if `.sqlew/queue/failed.json` exists:
90
+
91
+ ```bash
92
+ # Check failed queue status
93
+ queue { action: "list" } # Shows both pending and failed items
94
+ ```
95
+
96
+ **If failed items exist:**
97
+
98
+ 1. **Review each failed item** - Common failure: HighSimilarity (60%+) means the item is similar to an existing decision
99
+ 2. **Resolution options:**
100
+ - **If truly duplicate**: Delete the failed queue file or use `queue { action: "clear" }` with `target: "failed"`
101
+ - **If different intent**: Use a more specific key and re-register manually via `/sqlew record <decision>`
102
+ 3. **After resolving**: Delete or empty the failed queue file
103
+
104
+ **Why this happens**: Items that fail processing (e.g., high similarity to existing decisions) are moved to `failed.json` instead of being retried indefinitely. This prevents infinite retry loops.
@@ -0,0 +1,84 @@
1
+ ## Queue Monitoring After Plan Mode
2
+
3
+ ### When to Check
4
+
5
+ After ExitPlanMode or when Plan-to-ADR processing completes, check if there are unprocessed items in the queue.
6
+
7
+ **Queue file locations:**
8
+ - Pending: `.sqlew/queue/pending.json`
9
+ - Failed: `.sqlew/queue/failed.json`
10
+
11
+ ### How to Check
12
+
13
+ Use the `queue` MCP tool to check the queue status:
14
+
15
+ ```
16
+ queue { action: "list" }
17
+ ```
18
+
19
+ The response includes:
20
+ - `count`: Number of pending items
21
+ - `failedCount`: Number of failed items (if any)
22
+
23
+ ### Failed Queue (v5.0.1+)
24
+
25
+ Items that fail processing (e.g., HighSimilarity errors) are automatically moved to `failed.json` instead of being retried indefinitely.
26
+
27
+ **Why items fail:**
28
+ - **HighSimilarity (60%+)**: Item is too similar to an existing decision
29
+ - **Validation errors**: Invalid layer, category, or other data issues
30
+
31
+ **Resolution:**
32
+ 1. Check `failedItems` in `queue { action: "list" }` response
33
+ 2. For duplicates: Clear with `queue { action: "clear", target: "failed" }`
34
+ 3. For different intent: Re-register manually with a more specific key via `/sqlew record <decision>`
35
+
36
+ ### Queue Tool Actions
37
+
38
+ | Action | Description | Example |
39
+ |--------|-------------|---------|
40
+ | `list` | Show pending and failed items | `queue { action: "list" }` |
41
+ | `remove` | Remove specific pending item | `queue { action: "remove", index: 0 }` |
42
+ | `clear` | Clear pending queue (default) | `queue { action: "clear" }` |
43
+ | `clear` | Clear failed queue | `queue { action: "clear", target: "failed" }` |
44
+ | `clear` | Clear both queues | `queue { action: "clear", target: "all" }` |
45
+
46
+ ### Queue File Formats
47
+
48
+ **pending.json:**
49
+ ```json
50
+ {
51
+ "items": [
52
+ {
53
+ "type": "decision",
54
+ "action": "create",
55
+ "timestamp": "2026-01-13T00:00:00.000Z",
56
+ "data": {
57
+ "key": "path/to/decision",
58
+ "value": "description",
59
+ "status": "draft",
60
+ "layer": "infrastructure",
61
+ "tags": ["plan", "auto-extracted", "..."]
62
+ }
63
+ }
64
+ ]
65
+ }
66
+ ```
67
+
68
+ **failed.json:**
69
+ ```json
70
+ {
71
+ "items": [
72
+ {
73
+ "item": {
74
+ "type": "decision",
75
+ "action": "create",
76
+ "timestamp": "2026-01-24T...",
77
+ "data": { "key": "...", "value": "..." }
78
+ },
79
+ "error": "HighSimilarity: 65% match with existing decision 'path/to/existing'",
80
+ "failedAt": "2026-01-24T..."
81
+ }
82
+ ]
83
+ }
84
+ ```
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Backend Factory
3
+ *
4
+ * Creates and manages backend instances based on configuration.
5
+ * Supports LocalBackend (direct DB) and SaaS backend (submodule).
6
+ */
7
+ import type { ToolBackend } from './types.js';
8
+ import type { SqlewConfig, CloudConfig } from '../config/types.js';
9
+ /**
10
+ * Check if the configuration specifies cloud mode
11
+ */
12
+ export declare function isCloudMode(config: SqlewConfig): boolean;
13
+ /**
14
+ * Load cloud configuration from global ~/.sqlew.env or environment variables
15
+ *
16
+ * Flow:
17
+ * 1. Load API key from ~/.sqlew.env
18
+ * 2. Load project name from .sqlew/config.toml
19
+ * 3. Check cached project ID in ~/.sqlew.env
20
+ * 4. If not cached, resolve via /api/v1/project/resolve and cache
21
+ *
22
+ * @param projectRoot - Project root directory (for ConnectionIdentity)
23
+ * @returns CloudConfig or null if not configured
24
+ */
25
+ export declare function loadCloudConfig(projectRoot?: string): Promise<CloudConfig | null>;
26
+ /**
27
+ * Validate cloud configuration
28
+ */
29
+ export declare function validateCloudConfig(config: CloudConfig | null): {
30
+ valid: boolean;
31
+ errors: string[];
32
+ };
33
+ /**
34
+ * Create a backend instance based on configuration
35
+ *
36
+ * @param config - sqlew configuration
37
+ * @param projectRoot - Project root directory
38
+ * @returns Backend instance
39
+ */
40
+ export declare function createBackend(config: SqlewConfig, projectRoot?: string): Promise<ToolBackend>;
41
+ /**
42
+ * Initialize the global backend instance
43
+ *
44
+ * @param config - sqlew configuration
45
+ * @param projectRoot - Project root directory
46
+ * @returns Backend instance
47
+ */
48
+ export declare function initializeBackend(config: SqlewConfig, projectRoot?: string): Promise<ToolBackend>;
49
+ /**
50
+ * Get the current backend instance
51
+ *
52
+ * @returns Backend instance (creates LocalBackend if not initialized)
53
+ */
54
+ export declare function getBackend(): ToolBackend;
55
+ /**
56
+ * Check if backend is initialized
57
+ */
58
+ export declare function isBackendInitialized(): boolean;
59
+ /**
60
+ * Get current backend type
61
+ */
62
+ export declare function getBackendType(): 'local' | 'saas' | null;
63
+ /**
64
+ * Reset backend state (for testing)
65
+ */
66
+ export declare function resetBackend(): Promise<void>;
67
+ //# sourceMappingURL=backend-factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend-factory.d.ts","sourceRoot":"","sources":["../../src/backend/backend-factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAsBnE;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAExD;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAwCvF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAapG;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAwBnG;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAcvG;AAED;;;;GAIG;AACH,wBAAgB,UAAU,IAAI,WAAW,CAMxC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAE9C;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,GAAG,MAAM,GAAG,IAAI,CAExD;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAMlD"}