paths-engine 0.0.0-stage → 0.1.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 (582) hide show
  1. package/README.md +600 -3
  2. package/dist/cli/commands/context.d.ts +3 -0
  3. package/dist/cli/commands/context.d.ts.map +1 -0
  4. package/dist/cli/commands/context.js +89 -0
  5. package/dist/cli/commands/context.js.map +1 -0
  6. package/dist/cli/commands/gui.d.ts +5 -0
  7. package/dist/cli/commands/gui.d.ts.map +1 -0
  8. package/dist/cli/commands/gui.js +28 -0
  9. package/dist/cli/commands/gui.js.map +1 -0
  10. package/dist/cli/commands/identity.d.ts +3 -0
  11. package/dist/cli/commands/identity.d.ts.map +1 -0
  12. package/dist/cli/commands/identity.js +83 -0
  13. package/dist/cli/commands/identity.js.map +1 -0
  14. package/dist/cli/commands/ingest.d.ts +3 -0
  15. package/dist/cli/commands/ingest.d.ts.map +1 -0
  16. package/dist/cli/commands/ingest.js +75 -0
  17. package/dist/cli/commands/ingest.js.map +1 -0
  18. package/dist/cli/commands/knowledge.d.ts +3 -0
  19. package/dist/cli/commands/knowledge.d.ts.map +1 -0
  20. package/dist/cli/commands/knowledge.js +104 -0
  21. package/dist/cli/commands/knowledge.js.map +1 -0
  22. package/dist/cli/commands/lineage.d.ts +3 -0
  23. package/dist/cli/commands/lineage.d.ts.map +1 -0
  24. package/dist/cli/commands/lineage.js +130 -0
  25. package/dist/cli/commands/lineage.js.map +1 -0
  26. package/dist/cli/commands/mcp-setup.d.ts +23 -0
  27. package/dist/cli/commands/mcp-setup.d.ts.map +1 -0
  28. package/dist/cli/commands/mcp-setup.js +190 -0
  29. package/dist/cli/commands/mcp-setup.js.map +1 -0
  30. package/dist/cli/commands/plan.d.ts +8 -0
  31. package/dist/cli/commands/plan.d.ts.map +1 -0
  32. package/dist/cli/commands/plan.js +230 -0
  33. package/dist/cli/commands/plan.js.map +1 -0
  34. package/dist/cli/commands/session.d.ts +3 -0
  35. package/dist/cli/commands/session.d.ts.map +1 -0
  36. package/dist/cli/commands/session.js +82 -0
  37. package/dist/cli/commands/session.js.map +1 -0
  38. package/dist/cli/commands/status.d.ts +3 -0
  39. package/dist/cli/commands/status.d.ts.map +1 -0
  40. package/dist/cli/commands/status.js +65 -0
  41. package/dist/cli/commands/status.js.map +1 -0
  42. package/dist/cli/commands/sync.d.ts +3 -0
  43. package/dist/cli/commands/sync.d.ts.map +1 -0
  44. package/dist/cli/commands/sync.js +168 -0
  45. package/dist/cli/commands/sync.js.map +1 -0
  46. package/dist/cli/commands/todo.d.ts +3 -0
  47. package/dist/cli/commands/todo.d.ts.map +1 -0
  48. package/dist/cli/commands/todo.js +116 -0
  49. package/dist/cli/commands/todo.js.map +1 -0
  50. package/dist/cli/file-reader.d.ts +3 -0
  51. package/dist/cli/file-reader.d.ts.map +1 -0
  52. package/dist/cli/file-reader.js +29 -0
  53. package/dist/cli/file-reader.js.map +1 -0
  54. package/dist/cli/formatters/context.d.ts +3 -0
  55. package/dist/cli/formatters/context.d.ts.map +1 -0
  56. package/dist/cli/formatters/context.js +58 -0
  57. package/dist/cli/formatters/context.js.map +1 -0
  58. package/dist/cli/formatters/errors.d.ts +2 -0
  59. package/dist/cli/formatters/errors.d.ts.map +1 -0
  60. package/dist/cli/formatters/errors.js +7 -0
  61. package/dist/cli/formatters/errors.js.map +1 -0
  62. package/dist/cli/formatters/status.d.ts +6 -0
  63. package/dist/cli/formatters/status.d.ts.map +1 -0
  64. package/dist/cli/formatters/status.js +79 -0
  65. package/dist/cli/formatters/status.js.map +1 -0
  66. package/dist/cli/index.d.ts +3 -0
  67. package/dist/cli/index.d.ts.map +1 -0
  68. package/dist/cli/index.js +40 -0
  69. package/dist/cli/index.js.map +1 -0
  70. package/dist/core/compiler.d.ts +50 -0
  71. package/dist/core/compiler.d.ts.map +1 -0
  72. package/dist/core/compiler.js +424 -0
  73. package/dist/core/compiler.js.map +1 -0
  74. package/dist/core/db/case-mapper.d.ts +3 -0
  75. package/dist/core/db/case-mapper.d.ts.map +1 -0
  76. package/dist/core/db/case-mapper.js +21 -0
  77. package/dist/core/db/case-mapper.js.map +1 -0
  78. package/dist/core/db/embedding-repository.d.ts +14 -0
  79. package/dist/core/db/embedding-repository.d.ts.map +1 -0
  80. package/dist/core/db/embedding-repository.js +57 -0
  81. package/dist/core/db/embedding-repository.js.map +1 -0
  82. package/dist/core/db/external-event-repository.d.ts +13 -0
  83. package/dist/core/db/external-event-repository.d.ts.map +1 -0
  84. package/dist/core/db/external-event-repository.js +73 -0
  85. package/dist/core/db/external-event-repository.js.map +1 -0
  86. package/dist/core/db/identity-repository.d.ts +9 -0
  87. package/dist/core/db/identity-repository.d.ts.map +1 -0
  88. package/dist/core/db/identity-repository.js +37 -0
  89. package/dist/core/db/identity-repository.js.map +1 -0
  90. package/dist/core/db/index.d.ts +12 -0
  91. package/dist/core/db/index.d.ts.map +1 -0
  92. package/dist/core/db/index.js +33 -0
  93. package/dist/core/db/index.js.map +1 -0
  94. package/dist/core/db/knowledge-confirmation-repository.d.ts +12 -0
  95. package/dist/core/db/knowledge-confirmation-repository.d.ts.map +1 -0
  96. package/dist/core/db/knowledge-confirmation-repository.js +40 -0
  97. package/dist/core/db/knowledge-confirmation-repository.js.map +1 -0
  98. package/dist/core/db/knowledge-repository.d.ts +18 -0
  99. package/dist/core/db/knowledge-repository.d.ts.map +1 -0
  100. package/dist/core/db/knowledge-repository.js +77 -0
  101. package/dist/core/db/knowledge-repository.js.map +1 -0
  102. package/dist/core/db/lineage-repository.d.ts +14 -0
  103. package/dist/core/db/lineage-repository.d.ts.map +1 -0
  104. package/dist/core/db/lineage-repository.js +35 -0
  105. package/dist/core/db/lineage-repository.js.map +1 -0
  106. package/dist/core/db/node-repository.d.ts +33 -0
  107. package/dist/core/db/node-repository.d.ts.map +1 -0
  108. package/dist/core/db/node-repository.js +116 -0
  109. package/dist/core/db/node-repository.js.map +1 -0
  110. package/dist/core/db/path.d.ts +3 -0
  111. package/dist/core/db/path.d.ts.map +1 -0
  112. package/dist/core/db/path.js +57 -0
  113. package/dist/core/db/path.js.map +1 -0
  114. package/dist/core/db/plan-repository.d.ts +17 -0
  115. package/dist/core/db/plan-repository.d.ts.map +1 -0
  116. package/dist/core/db/plan-repository.js +56 -0
  117. package/dist/core/db/plan-repository.js.map +1 -0
  118. package/dist/core/db/project-repository.d.ts +11 -0
  119. package/dist/core/db/project-repository.d.ts.map +1 -0
  120. package/dist/core/db/project-repository.js +24 -0
  121. package/dist/core/db/project-repository.js.map +1 -0
  122. package/dist/core/db/rollup-repository.d.ts +10 -0
  123. package/dist/core/db/rollup-repository.d.ts.map +1 -0
  124. package/dist/core/db/rollup-repository.js +55 -0
  125. package/dist/core/db/rollup-repository.js.map +1 -0
  126. package/dist/core/db/schema.d.ts +4 -0
  127. package/dist/core/db/schema.d.ts.map +1 -0
  128. package/dist/core/db/schema.js +315 -0
  129. package/dist/core/db/schema.js.map +1 -0
  130. package/dist/core/db/store.d.ts +298 -0
  131. package/dist/core/db/store.d.ts.map +1 -0
  132. package/dist/core/db/store.js +1054 -0
  133. package/dist/core/db/store.js.map +1 -0
  134. package/dist/core/db/sync-repository.d.ts +23 -0
  135. package/dist/core/db/sync-repository.d.ts.map +1 -0
  136. package/dist/core/db/sync-repository.js +117 -0
  137. package/dist/core/db/sync-repository.js.map +1 -0
  138. package/dist/core/db/todo-repository.d.ts +14 -0
  139. package/dist/core/db/todo-repository.d.ts.map +1 -0
  140. package/dist/core/db/todo-repository.js +37 -0
  141. package/dist/core/db/todo-repository.js.map +1 -0
  142. package/dist/core/embedding/cosine.d.ts +5 -0
  143. package/dist/core/embedding/cosine.d.ts.map +1 -0
  144. package/dist/core/embedding/cosine.js +50 -0
  145. package/dist/core/embedding/cosine.js.map +1 -0
  146. package/dist/core/embedding/embedding.service.d.ts +27 -0
  147. package/dist/core/embedding/embedding.service.d.ts.map +1 -0
  148. package/dist/core/embedding/embedding.service.js +99 -0
  149. package/dist/core/embedding/embedding.service.js.map +1 -0
  150. package/dist/core/embedding/index.d.ts +3 -0
  151. package/dist/core/embedding/index.d.ts.map +1 -0
  152. package/dist/core/embedding/index.js +3 -0
  153. package/dist/core/embedding/index.js.map +1 -0
  154. package/dist/core/identity.d.ts +6 -0
  155. package/dist/core/identity.d.ts.map +1 -0
  156. package/dist/core/identity.js +24 -0
  157. package/dist/core/identity.js.map +1 -0
  158. package/dist/core/index.d.ts +13 -0
  159. package/dist/core/index.d.ts.map +1 -0
  160. package/dist/core/index.js +13 -0
  161. package/dist/core/index.js.map +1 -0
  162. package/dist/core/ingestion/generic-adapter.d.ts +5 -0
  163. package/dist/core/ingestion/generic-adapter.d.ts.map +1 -0
  164. package/dist/core/ingestion/generic-adapter.js +15 -0
  165. package/dist/core/ingestion/generic-adapter.js.map +1 -0
  166. package/dist/core/ingestion/git-adapter.d.ts +12 -0
  167. package/dist/core/ingestion/git-adapter.d.ts.map +1 -0
  168. package/dist/core/ingestion/git-adapter.js +31 -0
  169. package/dist/core/ingestion/git-adapter.js.map +1 -0
  170. package/dist/core/ingestion/github-adapter.d.ts +23 -0
  171. package/dist/core/ingestion/github-adapter.d.ts.map +1 -0
  172. package/dist/core/ingestion/github-adapter.js +55 -0
  173. package/dist/core/ingestion/github-adapter.js.map +1 -0
  174. package/dist/core/ingestion/index.d.ts +6 -0
  175. package/dist/core/ingestion/index.d.ts.map +1 -0
  176. package/dist/core/ingestion/index.js +6 -0
  177. package/dist/core/ingestion/index.js.map +1 -0
  178. package/dist/core/ingestion/ingestion.service.d.ts +25 -0
  179. package/dist/core/ingestion/ingestion.service.d.ts.map +1 -0
  180. package/dist/core/ingestion/ingestion.service.js +109 -0
  181. package/dist/core/ingestion/ingestion.service.js.map +1 -0
  182. package/dist/core/ingestion/types.d.ts +38 -0
  183. package/dist/core/ingestion/types.d.ts.map +1 -0
  184. package/dist/core/ingestion/types.js +2 -0
  185. package/dist/core/ingestion/types.js.map +1 -0
  186. package/dist/core/knowledge.d.ts +13 -0
  187. package/dist/core/knowledge.d.ts.map +1 -0
  188. package/dist/core/knowledge.js +101 -0
  189. package/dist/core/knowledge.js.map +1 -0
  190. package/dist/core/lineage.d.ts +11 -0
  191. package/dist/core/lineage.d.ts.map +1 -0
  192. package/dist/core/lineage.js +75 -0
  193. package/dist/core/lineage.js.map +1 -0
  194. package/dist/core/node.d.ts +27 -0
  195. package/dist/core/node.d.ts.map +1 -0
  196. package/dist/core/node.js +145 -0
  197. package/dist/core/node.js.map +1 -0
  198. package/dist/core/plan.d.ts +26 -0
  199. package/dist/core/plan.d.ts.map +1 -0
  200. package/dist/core/plan.js +109 -0
  201. package/dist/core/plan.js.map +1 -0
  202. package/dist/core/project.d.ts +10 -0
  203. package/dist/core/project.d.ts.map +1 -0
  204. package/dist/core/project.js +108 -0
  205. package/dist/core/project.js.map +1 -0
  206. package/dist/core/rollup.d.ts +7 -0
  207. package/dist/core/rollup.d.ts.map +1 -0
  208. package/dist/core/rollup.js +48 -0
  209. package/dist/core/rollup.js.map +1 -0
  210. package/dist/core/security/error-classifier.d.ts +35 -0
  211. package/dist/core/security/error-classifier.d.ts.map +1 -0
  212. package/dist/core/security/error-classifier.js +169 -0
  213. package/dist/core/security/error-classifier.js.map +1 -0
  214. package/dist/core/sync/bundle-auth.d.ts +23 -0
  215. package/dist/core/sync/bundle-auth.d.ts.map +1 -0
  216. package/dist/core/sync/bundle-auth.js +184 -0
  217. package/dist/core/sync/bundle-auth.js.map +1 -0
  218. package/dist/core/sync/device.d.ts +8 -0
  219. package/dist/core/sync/device.d.ts.map +1 -0
  220. package/dist/core/sync/device.js +32 -0
  221. package/dist/core/sync/device.js.map +1 -0
  222. package/dist/core/sync/hlc.d.ts +12 -0
  223. package/dist/core/sync/hlc.d.ts.map +1 -0
  224. package/dist/core/sync/hlc.js +83 -0
  225. package/dist/core/sync/hlc.js.map +1 -0
  226. package/dist/core/sync/index.d.ts +6 -0
  227. package/dist/core/sync/index.d.ts.map +1 -0
  228. package/dist/core/sync/index.js +5 -0
  229. package/dist/core/sync/index.js.map +1 -0
  230. package/dist/core/sync/sync.service.d.ts +29 -0
  231. package/dist/core/sync/sync.service.d.ts.map +1 -0
  232. package/dist/core/sync/sync.service.js +457 -0
  233. package/dist/core/sync/sync.service.js.map +1 -0
  234. package/dist/core/sync/types.d.ts +101 -0
  235. package/dist/core/sync/types.d.ts.map +1 -0
  236. package/dist/core/sync/types.js +2 -0
  237. package/dist/core/sync/types.js.map +1 -0
  238. package/dist/core/task-context-budget.d.ts +5 -0
  239. package/dist/core/task-context-budget.d.ts.map +1 -0
  240. package/dist/core/task-context-budget.js +11 -0
  241. package/dist/core/task-context-budget.js.map +1 -0
  242. package/dist/core/task-context-order.d.ts +6 -0
  243. package/dist/core/task-context-order.d.ts.map +1 -0
  244. package/dist/core/task-context-order.js +26 -0
  245. package/dist/core/task-context-order.js.map +1 -0
  246. package/dist/core/task-context-paths.d.ts +6 -0
  247. package/dist/core/task-context-paths.d.ts.map +1 -0
  248. package/dist/core/task-context-paths.js +59 -0
  249. package/dist/core/task-context-paths.js.map +1 -0
  250. package/dist/core/task-context.d.ts +21 -0
  251. package/dist/core/task-context.d.ts.map +1 -0
  252. package/dist/core/task-context.js +283 -0
  253. package/dist/core/task-context.js.map +1 -0
  254. package/dist/core/todo.d.ts +16 -0
  255. package/dist/core/todo.d.ts.map +1 -0
  256. package/dist/core/todo.js +110 -0
  257. package/dist/core/todo.js.map +1 -0
  258. package/dist/core/tokenizer.d.ts +3 -0
  259. package/dist/core/tokenizer.d.ts.map +1 -0
  260. package/dist/core/tokenizer.js +9 -0
  261. package/dist/core/tokenizer.js.map +1 -0
  262. package/dist/core/types/context.d.ts +50 -0
  263. package/dist/core/types/context.d.ts.map +1 -0
  264. package/dist/core/types/context.js +2 -0
  265. package/dist/core/types/context.js.map +1 -0
  266. package/dist/core/types/embedding.d.ts +25 -0
  267. package/dist/core/types/embedding.d.ts.map +1 -0
  268. package/dist/core/types/embedding.js +2 -0
  269. package/dist/core/types/embedding.js.map +1 -0
  270. package/dist/core/types/external-event.d.ts +29 -0
  271. package/dist/core/types/external-event.d.ts.map +1 -0
  272. package/dist/core/types/external-event.js +2 -0
  273. package/dist/core/types/external-event.js.map +1 -0
  274. package/dist/core/types/hlc.d.ts +12 -0
  275. package/dist/core/types/hlc.d.ts.map +1 -0
  276. package/dist/core/types/hlc.js +2 -0
  277. package/dist/core/types/hlc.js.map +1 -0
  278. package/dist/core/types/identity.d.ts +26 -0
  279. package/dist/core/types/identity.d.ts.map +1 -0
  280. package/dist/core/types/identity.js +2 -0
  281. package/dist/core/types/identity.js.map +1 -0
  282. package/dist/core/types/index.d.ts +15 -0
  283. package/dist/core/types/index.d.ts.map +1 -0
  284. package/dist/core/types/index.js +15 -0
  285. package/dist/core/types/index.js.map +1 -0
  286. package/dist/core/types/installation-identity.d.ts +13 -0
  287. package/dist/core/types/installation-identity.d.ts.map +1 -0
  288. package/dist/core/types/installation-identity.js +2 -0
  289. package/dist/core/types/installation-identity.js.map +1 -0
  290. package/dist/core/types/knowledge-confirmation.d.ts +25 -0
  291. package/dist/core/types/knowledge-confirmation.d.ts.map +1 -0
  292. package/dist/core/types/knowledge-confirmation.js +2 -0
  293. package/dist/core/types/knowledge-confirmation.js.map +1 -0
  294. package/dist/core/types/knowledge.d.ts +50 -0
  295. package/dist/core/types/knowledge.d.ts.map +1 -0
  296. package/dist/core/types/knowledge.js +12 -0
  297. package/dist/core/types/knowledge.js.map +1 -0
  298. package/dist/core/types/lineage.d.ts +37 -0
  299. package/dist/core/types/lineage.d.ts.map +1 -0
  300. package/dist/core/types/lineage.js +2 -0
  301. package/dist/core/types/lineage.js.map +1 -0
  302. package/dist/core/types/node.d.ts +47 -0
  303. package/dist/core/types/node.d.ts.map +1 -0
  304. package/dist/core/types/node.js +2 -0
  305. package/dist/core/types/node.js.map +1 -0
  306. package/dist/core/types/plan.d.ts +60 -0
  307. package/dist/core/types/plan.d.ts.map +1 -0
  308. package/dist/core/types/plan.js +2 -0
  309. package/dist/core/types/plan.js.map +1 -0
  310. package/dist/core/types/project.d.ts +27 -0
  311. package/dist/core/types/project.d.ts.map +1 -0
  312. package/dist/core/types/project.js +2 -0
  313. package/dist/core/types/project.js.map +1 -0
  314. package/dist/core/types/status-json.d.ts +30 -0
  315. package/dist/core/types/status-json.d.ts.map +1 -0
  316. package/dist/core/types/status-json.js +2 -0
  317. package/dist/core/types/status-json.js.map +1 -0
  318. package/dist/core/types/sync-change.d.ts +49 -0
  319. package/dist/core/types/sync-change.d.ts.map +1 -0
  320. package/dist/core/types/sync-change.js +2 -0
  321. package/dist/core/types/sync-change.js.map +1 -0
  322. package/dist/core/types/task-context.d.ts +55 -0
  323. package/dist/core/types/task-context.d.ts.map +1 -0
  324. package/dist/core/types/task-context.js +2 -0
  325. package/dist/core/types/task-context.js.map +1 -0
  326. package/dist/core/types/todo.d.ts +33 -0
  327. package/dist/core/types/todo.d.ts.map +1 -0
  328. package/dist/core/types/todo.js +2 -0
  329. package/dist/core/types/todo.js.map +1 -0
  330. package/dist/gui/launcher.d.ts +22 -0
  331. package/dist/gui/launcher.d.ts.map +1 -0
  332. package/dist/gui/launcher.js +86 -0
  333. package/dist/gui/launcher.js.map +1 -0
  334. package/dist/gui/main/app-bridge.d.ts +21 -0
  335. package/dist/gui/main/app-bridge.d.ts.map +1 -0
  336. package/dist/gui/main/app-bridge.js +204 -0
  337. package/dist/gui/main/app-bridge.js.map +1 -0
  338. package/dist/gui/main/app-context-manager.d.ts +25 -0
  339. package/dist/gui/main/app-context-manager.d.ts.map +1 -0
  340. package/dist/gui/main/app-context-manager.js +141 -0
  341. package/dist/gui/main/app-context-manager.js.map +1 -0
  342. package/dist/gui/main/context.d.ts +32 -0
  343. package/dist/gui/main/context.d.ts.map +1 -0
  344. package/dist/gui/main/context.js +56 -0
  345. package/dist/gui/main/context.js.map +1 -0
  346. package/dist/gui/main/index.d.ts +2 -0
  347. package/dist/gui/main/index.d.ts.map +1 -0
  348. package/dist/gui/main/index.js +3 -0
  349. package/dist/gui/main/index.js.map +1 -0
  350. package/dist/gui/main/lifecycle.d.ts +45 -0
  351. package/dist/gui/main/lifecycle.d.ts.map +1 -0
  352. package/dist/gui/main/lifecycle.js +272 -0
  353. package/dist/gui/main/lifecycle.js.map +1 -0
  354. package/dist/gui/main/schemas.d.ts +105 -0
  355. package/dist/gui/main/schemas.d.ts.map +1 -0
  356. package/dist/gui/main/schemas.js +131 -0
  357. package/dist/gui/main/schemas.js.map +1 -0
  358. package/dist/gui/main/tray.d.ts +9 -0
  359. package/dist/gui/main/tray.d.ts.map +1 -0
  360. package/dist/gui/main/tray.js +70 -0
  361. package/dist/gui/main/tray.js.map +1 -0
  362. package/dist/gui/preload/api-interface.d.ts +59 -0
  363. package/dist/gui/preload/api-interface.d.ts.map +1 -0
  364. package/dist/gui/preload/api-interface.js +2 -0
  365. package/dist/gui/preload/api-interface.js.map +1 -0
  366. package/dist/gui/preload/preload.cjs +1 -0
  367. package/dist/gui/preload/preload.d.ts +3 -0
  368. package/dist/gui/preload/preload.d.ts.map +1 -0
  369. package/dist/gui/preload/preload.js +36 -0
  370. package/dist/gui/preload/preload.js.map +1 -0
  371. package/dist/gui/renderer/App.d.ts +3 -0
  372. package/dist/gui/renderer/App.d.ts.map +1 -0
  373. package/dist/gui/renderer/App.js +33 -0
  374. package/dist/gui/renderer/App.js.map +1 -0
  375. package/dist/gui/renderer/components/layout/AppShell.d.ts +15 -0
  376. package/dist/gui/renderer/components/layout/AppShell.d.ts.map +1 -0
  377. package/dist/gui/renderer/components/layout/AppShell.js +206 -0
  378. package/dist/gui/renderer/components/layout/AppShell.js.map +1 -0
  379. package/dist/gui/renderer/components/layout/NavItem.d.ts +12 -0
  380. package/dist/gui/renderer/components/layout/NavItem.d.ts.map +1 -0
  381. package/dist/gui/renderer/components/layout/NavItem.js +72 -0
  382. package/dist/gui/renderer/components/layout/NavItem.js.map +1 -0
  383. package/dist/gui/renderer/components/layout/PathsLogo.d.ts +9 -0
  384. package/dist/gui/renderer/components/layout/PathsLogo.d.ts.map +1 -0
  385. package/dist/gui/renderer/components/layout/PathsLogo.js +87 -0
  386. package/dist/gui/renderer/components/layout/PathsLogo.js.map +1 -0
  387. package/dist/gui/renderer/components/shared/Badge.d.ts +11 -0
  388. package/dist/gui/renderer/components/shared/Badge.d.ts.map +1 -0
  389. package/dist/gui/renderer/components/shared/Badge.js +150 -0
  390. package/dist/gui/renderer/components/shared/Badge.js.map +1 -0
  391. package/dist/gui/renderer/components/shared/EmptyState.d.ts +10 -0
  392. package/dist/gui/renderer/components/shared/EmptyState.d.ts.map +1 -0
  393. package/dist/gui/renderer/components/shared/EmptyState.js +59 -0
  394. package/dist/gui/renderer/components/shared/EmptyState.js.map +1 -0
  395. package/dist/gui/renderer/components/shared/ErrorBanner.d.ts +7 -0
  396. package/dist/gui/renderer/components/shared/ErrorBanner.d.ts.map +1 -0
  397. package/dist/gui/renderer/components/shared/ErrorBanner.js +33 -0
  398. package/dist/gui/renderer/components/shared/ErrorBanner.js.map +1 -0
  399. package/dist/gui/renderer/components/shared/ErrorBoundary.d.ts +18 -0
  400. package/dist/gui/renderer/components/shared/ErrorBoundary.d.ts.map +1 -0
  401. package/dist/gui/renderer/components/shared/ErrorBoundary.js +40 -0
  402. package/dist/gui/renderer/components/shared/ErrorBoundary.js.map +1 -0
  403. package/dist/gui/renderer/components/shared/GlassSelect.d.ts +17 -0
  404. package/dist/gui/renderer/components/shared/GlassSelect.d.ts.map +1 -0
  405. package/dist/gui/renderer/components/shared/GlassSelect.js +147 -0
  406. package/dist/gui/renderer/components/shared/GlassSelect.js.map +1 -0
  407. package/dist/gui/renderer/components/shared/LoadingSpinner.d.ts +7 -0
  408. package/dist/gui/renderer/components/shared/LoadingSpinner.d.ts.map +1 -0
  409. package/dist/gui/renderer/components/shared/LoadingSpinner.js +27 -0
  410. package/dist/gui/renderer/components/shared/LoadingSpinner.js.map +1 -0
  411. package/dist/gui/renderer/components/surfaces/Dashboard.d.ts +3 -0
  412. package/dist/gui/renderer/components/surfaces/Dashboard.d.ts.map +1 -0
  413. package/dist/gui/renderer/components/surfaces/Dashboard.js +123 -0
  414. package/dist/gui/renderer/components/surfaces/Dashboard.js.map +1 -0
  415. package/dist/gui/renderer/components/surfaces/KnowledgeExplorer.d.ts +3 -0
  416. package/dist/gui/renderer/components/surfaces/KnowledgeExplorer.d.ts.map +1 -0
  417. package/dist/gui/renderer/components/surfaces/KnowledgeExplorer.js +202 -0
  418. package/dist/gui/renderer/components/surfaces/KnowledgeExplorer.js.map +1 -0
  419. package/dist/gui/renderer/components/surfaces/LineageManager.d.ts +3 -0
  420. package/dist/gui/renderer/components/surfaces/LineageManager.d.ts.map +1 -0
  421. package/dist/gui/renderer/components/surfaces/LineageManager.js +148 -0
  422. package/dist/gui/renderer/components/surfaces/LineageManager.js.map +1 -0
  423. package/dist/gui/renderer/components/surfaces/SessionTimeline.d.ts +3 -0
  424. package/dist/gui/renderer/components/surfaces/SessionTimeline.d.ts.map +1 -0
  425. package/dist/gui/renderer/components/surfaces/SessionTimeline.js +136 -0
  426. package/dist/gui/renderer/components/surfaces/SessionTimeline.js.map +1 -0
  427. package/dist/gui/renderer/components/surfaces/TodoBoard.d.ts +3 -0
  428. package/dist/gui/renderer/components/surfaces/TodoBoard.d.ts.map +1 -0
  429. package/dist/gui/renderer/components/surfaces/TodoBoard.js +128 -0
  430. package/dist/gui/renderer/components/surfaces/TodoBoard.js.map +1 -0
  431. package/dist/gui/renderer/context/paths-context.d.ts +19 -0
  432. package/dist/gui/renderer/context/paths-context.d.ts.map +1 -0
  433. package/dist/gui/renderer/context/paths-context.js +122 -0
  434. package/dist/gui/renderer/context/paths-context.js.map +1 -0
  435. package/dist/gui/renderer/context/theme-context.d.ts +11 -0
  436. package/dist/gui/renderer/context/theme-context.d.ts.map +1 -0
  437. package/dist/gui/renderer/context/theme-context.js +41 -0
  438. package/dist/gui/renderer/context/theme-context.js.map +1 -0
  439. package/dist/gui/renderer/hooks/use-api-query.d.ts +9 -0
  440. package/dist/gui/renderer/hooks/use-api-query.d.ts.map +1 -0
  441. package/dist/gui/renderer/hooks/use-api-query.js +60 -0
  442. package/dist/gui/renderer/hooks/use-api-query.js.map +1 -0
  443. package/dist/gui/renderer/hooks/use-lineage.d.ts +13 -0
  444. package/dist/gui/renderer/hooks/use-lineage.d.ts.map +1 -0
  445. package/dist/gui/renderer/hooks/use-lineage.js +15 -0
  446. package/dist/gui/renderer/hooks/use-lineage.js.map +1 -0
  447. package/dist/gui/renderer/index.d.ts +2 -0
  448. package/dist/gui/renderer/index.d.ts.map +1 -0
  449. package/dist/gui/renderer/index.js +2 -0
  450. package/dist/gui/renderer/index.js.map +1 -0
  451. package/dist/gui/shared/errors.d.ts +23 -0
  452. package/dist/gui/shared/errors.d.ts.map +1 -0
  453. package/dist/gui/shared/errors.js +10 -0
  454. package/dist/gui/shared/errors.js.map +1 -0
  455. package/dist/gui/shared/index.d.ts +4 -0
  456. package/dist/gui/shared/index.d.ts.map +1 -0
  457. package/dist/gui/shared/index.js +4 -0
  458. package/dist/gui/shared/index.js.map +1 -0
  459. package/dist/gui/shared/ipc-channels.d.ts +53 -0
  460. package/dist/gui/shared/ipc-channels.d.ts.map +1 -0
  461. package/dist/gui/shared/ipc-channels.js +63 -0
  462. package/dist/gui/shared/ipc-channels.js.map +1 -0
  463. package/dist/gui/shared/ipc-contracts.d.ts +176 -0
  464. package/dist/gui/shared/ipc-contracts.d.ts.map +1 -0
  465. package/dist/gui/shared/ipc-contracts.js +2 -0
  466. package/dist/gui/shared/ipc-contracts.js.map +1 -0
  467. package/dist/mcp/context.d.ts +55 -0
  468. package/dist/mcp/context.d.ts.map +1 -0
  469. package/dist/mcp/context.js +183 -0
  470. package/dist/mcp/context.js.map +1 -0
  471. package/dist/mcp/handler-utils.d.ts +22 -0
  472. package/dist/mcp/handler-utils.d.ts.map +1 -0
  473. package/dist/mcp/handler-utils.js +26 -0
  474. package/dist/mcp/handler-utils.js.map +1 -0
  475. package/dist/mcp/schemas.d.ts +688 -0
  476. package/dist/mcp/schemas.d.ts.map +1 -0
  477. package/dist/mcp/schemas.js +278 -0
  478. package/dist/mcp/schemas.js.map +1 -0
  479. package/dist/mcp/server.d.ts +8 -0
  480. package/dist/mcp/server.d.ts.map +1 -0
  481. package/dist/mcp/server.js +88 -0
  482. package/dist/mcp/server.js.map +1 -0
  483. package/dist/mcp/tools/abandon-plan.d.ts +4 -0
  484. package/dist/mcp/tools/abandon-plan.d.ts.map +1 -0
  485. package/dist/mcp/tools/abandon-plan.js +32 -0
  486. package/dist/mcp/tools/abandon-plan.js.map +1 -0
  487. package/dist/mcp/tools/add-todo.d.ts +4 -0
  488. package/dist/mcp/tools/add-todo.d.ts.map +1 -0
  489. package/dist/mcp/tools/add-todo.js +34 -0
  490. package/dist/mcp/tools/add-todo.js.map +1 -0
  491. package/dist/mcp/tools/complete-plan.d.ts +4 -0
  492. package/dist/mcp/tools/complete-plan.d.ts.map +1 -0
  493. package/dist/mcp/tools/complete-plan.js +32 -0
  494. package/dist/mcp/tools/complete-plan.js.map +1 -0
  495. package/dist/mcp/tools/complete-todo.d.ts +4 -0
  496. package/dist/mcp/tools/complete-todo.d.ts.map +1 -0
  497. package/dist/mcp/tools/complete-todo.js +51 -0
  498. package/dist/mcp/tools/complete-todo.js.map +1 -0
  499. package/dist/mcp/tools/continue-lineage.d.ts +4 -0
  500. package/dist/mcp/tools/continue-lineage.d.ts.map +1 -0
  501. package/dist/mcp/tools/continue-lineage.js +31 -0
  502. package/dist/mcp/tools/continue-lineage.js.map +1 -0
  503. package/dist/mcp/tools/create-plan.d.ts +4 -0
  504. package/dist/mcp/tools/create-plan.d.ts.map +1 -0
  505. package/dist/mcp/tools/create-plan.js +42 -0
  506. package/dist/mcp/tools/create-plan.js.map +1 -0
  507. package/dist/mcp/tools/get-active-plan.d.ts +4 -0
  508. package/dist/mcp/tools/get-active-plan.d.ts.map +1 -0
  509. package/dist/mcp/tools/get-active-plan.js +30 -0
  510. package/dist/mcp/tools/get-active-plan.js.map +1 -0
  511. package/dist/mcp/tools/get-lineage-history.d.ts +4 -0
  512. package/dist/mcp/tools/get-lineage-history.d.ts.map +1 -0
  513. package/dist/mcp/tools/get-lineage-history.js +38 -0
  514. package/dist/mcp/tools/get-lineage-history.js.map +1 -0
  515. package/dist/mcp/tools/get-lineages.d.ts +4 -0
  516. package/dist/mcp/tools/get-lineages.d.ts.map +1 -0
  517. package/dist/mcp/tools/get-lineages.js +30 -0
  518. package/dist/mcp/tools/get-lineages.js.map +1 -0
  519. package/dist/mcp/tools/get-project-context.d.ts +4 -0
  520. package/dist/mcp/tools/get-project-context.d.ts.map +1 -0
  521. package/dist/mcp/tools/get-project-context.js +38 -0
  522. package/dist/mcp/tools/get-project-context.js.map +1 -0
  523. package/dist/mcp/tools/get-task-context.d.ts +4 -0
  524. package/dist/mcp/tools/get-task-context.d.ts.map +1 -0
  525. package/dist/mcp/tools/get-task-context.js +42 -0
  526. package/dist/mcp/tools/get-task-context.js.map +1 -0
  527. package/dist/mcp/tools/ingest-event.d.ts +4 -0
  528. package/dist/mcp/tools/ingest-event.d.ts.map +1 -0
  529. package/dist/mcp/tools/ingest-event.js +71 -0
  530. package/dist/mcp/tools/ingest-event.js.map +1 -0
  531. package/dist/mcp/tools/list-plans.d.ts +4 -0
  532. package/dist/mcp/tools/list-plans.d.ts.map +1 -0
  533. package/dist/mcp/tools/list-plans.js +44 -0
  534. package/dist/mcp/tools/list-plans.js.map +1 -0
  535. package/dist/mcp/tools/list-todos.d.ts +4 -0
  536. package/dist/mcp/tools/list-todos.d.ts.map +1 -0
  537. package/dist/mcp/tools/list-todos.js +31 -0
  538. package/dist/mcp/tools/list-todos.js.map +1 -0
  539. package/dist/mcp/tools/log-session.d.ts +4 -0
  540. package/dist/mcp/tools/log-session.d.ts.map +1 -0
  541. package/dist/mcp/tools/log-session.js +35 -0
  542. package/dist/mcp/tools/log-session.js.map +1 -0
  543. package/dist/mcp/tools/open-gui.d.ts +14 -0
  544. package/dist/mcp/tools/open-gui.d.ts.map +1 -0
  545. package/dist/mcp/tools/open-gui.js +42 -0
  546. package/dist/mcp/tools/open-gui.js.map +1 -0
  547. package/dist/mcp/tools/save-knowledge.d.ts +4 -0
  548. package/dist/mcp/tools/save-knowledge.d.ts.map +1 -0
  549. package/dist/mcp/tools/save-knowledge.js +36 -0
  550. package/dist/mcp/tools/save-knowledge.js.map +1 -0
  551. package/dist/mcp/tools/search-knowledge.d.ts +4 -0
  552. package/dist/mcp/tools/search-knowledge.d.ts.map +1 -0
  553. package/dist/mcp/tools/search-knowledge.js +31 -0
  554. package/dist/mcp/tools/search-knowledge.js.map +1 -0
  555. package/dist/mcp/tools/search-nodes.d.ts +4 -0
  556. package/dist/mcp/tools/search-nodes.d.ts.map +1 -0
  557. package/dist/mcp/tools/search-nodes.js +33 -0
  558. package/dist/mcp/tools/search-nodes.js.map +1 -0
  559. package/dist/mcp/tools/start-lineage.d.ts +4 -0
  560. package/dist/mcp/tools/start-lineage.d.ts.map +1 -0
  561. package/dist/mcp/tools/start-lineage.js +31 -0
  562. package/dist/mcp/tools/start-lineage.js.map +1 -0
  563. package/dist/mcp/tools/sync-apply.d.ts +4 -0
  564. package/dist/mcp/tools/sync-apply.d.ts.map +1 -0
  565. package/dist/mcp/tools/sync-apply.js +23 -0
  566. package/dist/mcp/tools/sync-apply.js.map +1 -0
  567. package/dist/mcp/tools/sync-export.d.ts +4 -0
  568. package/dist/mcp/tools/sync-export.d.ts.map +1 -0
  569. package/dist/mcp/tools/sync-export.js +33 -0
  570. package/dist/mcp/tools/sync-export.js.map +1 -0
  571. package/dist/mcp/tools/sync-status.d.ts +4 -0
  572. package/dist/mcp/tools/sync-status.d.ts.map +1 -0
  573. package/dist/mcp/tools/sync-status.js +29 -0
  574. package/dist/mcp/tools/sync-status.js.map +1 -0
  575. package/dist/mcp/tools/update-identity.d.ts +4 -0
  576. package/dist/mcp/tools/update-identity.d.ts.map +1 -0
  577. package/dist/mcp/tools/update-identity.js +39 -0
  578. package/dist/mcp/tools/update-identity.js.map +1 -0
  579. package/dist/renderer/assets/index-Bs2j5Xf4.css +1 -0
  580. package/dist/renderer/assets/index-ovMIJ8mi.js +22 -0
  581. package/dist/renderer/index.html +17 -0
  582. package/package.json +77 -6
package/README.md CHANGED
@@ -1,3 +1,600 @@
1
- # Temporary Holding Version
2
-
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
1
+ # Paths
2
+
3
+ [![TypeScript](https://img.shields.io/badge/TypeScript-Strict-3178C6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
4
+ [![Node.js](https://img.shields.io/badge/Node.js-%3E%3D20-3178C6?logo=node.js&logoColor=white)](https://nodejs.org/)
5
+ [![MCP](https://img.shields.io/badge/MCP-Compatible-3178C6)](https://modelcontextprotocol.io/)
6
+ [![Storage](https://img.shields.io/badge/Storage-SQLite_WAL-3178C6?logo=sqlite&logoColor=white)](https://www.sqlite.org/)
7
+ [![Tests](https://img.shields.io/badge/Tests-701_Passing-3178C6)](#)
8
+ [![Security](https://img.shields.io/badge/Security-Verified_Gate-3178C6)](#)
9
+ [![Privacy](https://img.shields.io/badge/Privacy-100%25_Local-3178C6)](#)
10
+
11
+ Paths preserves your development context across AI tools and sessions. Switch seamlessly between Antigravity, Claude Code, Gemini CLI, Cursor, or any AI assistant and pick up exactly where you left off — architectural decisions, work history, and open Todos included.
12
+
13
+ No more re-explaining your project. No more lost decisions across session resets.
14
+
15
+ ---
16
+
17
+ ## Universal Canonical State Rule
18
+
19
+ Paths is built on a strict, unbreakable single-source-of-truth invariant:
20
+
21
+ ```
22
+ [ Local SQLite Database (WAL Mode) ] ← CANONICAL PERSISTENCE
23
+ ↓
24
+ [ Core Domain Services ] ← DOMAIN INVARIANTS & COMPILER
25
+ ↓
26
+ [ Database Repositories & Store ] ← TYPED PERSISTENCE TRANSLATION
27
+ ↓
28
+ [ CLI, MCP & Desktop GUI Adapters ] ← INTERACTION PROJECTIONS
29
+ ```
30
+
31
+ 1. **SQLite is Canonical**: The local SQLite database is the sole authoritative state of truth.
32
+ 2. **Core Services Define Behavior**: All domain invariants, project resolution, knowledge ranking, and context compilation reside strictly in Core services.
33
+ 3. **Repositories Translate Persistence**: Data access is encapsulated in typed repositories with zero raw SQL leaks outside the store.
34
+ 4. **Adapters Project State**: The CLI, MCP, and Desktop GUI adapters are interaction projections over the shared SQLite foundation.
35
+ 5. **No Cross-Module DB Access**: Strict unidirectional dependency flow (`Adapter → Core Service → Repository → Store`).
36
+ 6. **External Integrations Enter Through Ingestion**: Tool logs, agent sessions, and user inputs enter exclusively through validated Core interfaces.
37
+
38
+ ---
39
+
40
+ ## How It Works
41
+
42
+ Every project has **Lineages** — named development threads (e.g., `"Auth Refactor"`, `"Payments Migration"`). Each time work occurs, a **Session** (Node record) is appended inside the active lineage with automatic Git file change detection. Durable facts, constraints, and decisions are captured in **Knowledge** (scored and ranked dynamically). Open work is tracked in **Todos**.
43
+
44
+ At the start of any session, `paths context <id>` or the MCP `get_project_context` tool compiles this into a structured, bounded context digest under 250 lines that any AI model can digest instantly.
45
+
46
+ ```
47
+ Your Work History
48
+ + Project Identity (name, purpose, architecture, standards, scope, DoD)
49
+ + Durable Knowledge (decisions, constraints — scored & ranked by relevance)
50
+ + Sessions (Node records; 15 most recent, newest-first, with files touched)
51
+ + Open Todos (lineage-scoped and project-wide)
52
+ ↓
53
+ paths context <lineage-id> / paths status
54
+ ↓
55
+ Compiled JSON Digest / Human Card
56
+ ↓
57
+ AI tool continues exactly where you left off
58
+ ```
59
+
60
+ ---
61
+
62
+ ## Installation & Distribution
63
+
64
+ ### Global CLI & MCP Binaries
65
+
66
+ Paths is distributed as the `paths-engine` npm package, exposing two standalone executables:
67
+ - **`paths`**: Interactive CLI for terminal usage and developer inspection.
68
+ - **`paths-mcp`**: Stdio-based Model Context Protocol (MCP) server for AI assistants.
69
+
70
+ ```bash
71
+ # Install globally via npm
72
+ npm install -g paths-engine
73
+
74
+ # Or run instantly via npx without global installation
75
+ npx paths-engine --help
76
+ npx paths-mcp
77
+ ```
78
+
79
+ ### Local Development from Source
80
+
81
+ ```bash
82
+ git clone https://github.com/gnbaba/Paths.git
83
+ cd Paths
84
+ npm install
85
+ npm run build
86
+ ```
87
+
88
+ After compilation, the binaries are available directly:
89
+ ```bash
90
+ # Run CLI from compiled output
91
+ node dist/cli/index.js --help
92
+
93
+ # Run MCP server from compiled output
94
+ node dist/mcp/server.js
95
+ ```
96
+
97
+ ### Data Storage & Configuration Portability
98
+
99
+ Paths stores all data in a single SQLite database file with WAL journal mode enabled:
100
+
101
+ ```
102
+ ~/.paths-engine/data.sqlite
103
+ ```
104
+
105
+ - **Fully Local**: Zero servers, zero telemetry, zero cloud dependencies.
106
+ - **Environment Override**: Override the database location using `PATHS_DB_PATH`:
107
+ ```bash
108
+ PATHS_DB_PATH=/custom/path/data.sqlite paths status
109
+ ```
110
+ - **Working Directory Portability**: In Git repositories, Paths automatically identifies the project key by its remote origin URL across any clone or nested subdirectory. In non-Git directories, it deterministically falls back to the absolute directory path.
111
+
112
+ ---
113
+
114
+ ## Quick Start
115
+
116
+ ```bash
117
+ # 1. Define your project identity
118
+ paths identity set \
119
+ --name "Platform Core" \
120
+ --purpose "Core backend payment routing engine" \
121
+ --architecture "Modular monolith with SQLite persistence" \
122
+ --stack "TypeScript, Node.js, SQLite, Stripe SDK" \
123
+ --scope "v1 release milestone"
124
+
125
+ # 2. Create and switch to a Lineage
126
+ paths lineage new "Stripe Integration"
127
+ # → Created lineage 1: Stripe Integration. Now using Stripe Integration as the current lineage.
128
+
129
+ # 3. Log your session work (git files touched are auto-detected)
130
+ paths session "Implemented webhook signature verification and replay protection" --tool antigravity
131
+
132
+ # 4. Save a durable architectural decision
133
+ paths knowledge add --category Security \
134
+ "Webhook signatures require Ed25519 asymmetric verification" \
135
+ "Prevents replay attacks and secures public ingress"
136
+
137
+ # 5. Add an open Todo
138
+ paths todo add "Implement webhook idempotency replay test with duplicate event ID"
139
+
140
+ # 6. Check human-readable project status card
141
+ paths status
142
+
143
+ # 7. Output machine-readable compiled context digest for AI tools
144
+ paths context 1
145
+ ```
146
+
147
+ ---
148
+
149
+ ## CLI Reference
150
+
151
+ ### `paths status`
152
+
153
+ Renders a human-readable summary card from the compiled context summary without performing database mutations. Supports machine-readable JSON output.
154
+
155
+ ```bash
156
+ # Display human-readable status card
157
+ paths status
158
+
159
+ # Display machine-readable JSON status summary
160
+ paths status --json
161
+ ```
162
+
163
+ **Example Output:**
164
+ ```
165
+ Paths
166
+ ────────────────────────────────────────
167
+ Project Platform Core
168
+ Lineage Stripe Integration
169
+
170
+ Last Session
171
+ antigravity · just now
172
+ Implemented webhook signature verification and replay protection
173
+
174
+ Next Task
175
+ Implement webhook idempotency replay test with duplicate event ID
176
+
177
+ Open Todos 1
178
+ Blockers None
179
+ ```
180
+
181
+ ---
182
+
183
+ ### `paths identity`
184
+
185
+ Manages the 8 core project identity fields included in every context compilation.
186
+
187
+ ```bash
188
+ # Set any combination of fields (partial updates preserve untouched fields)
189
+ paths identity set \
190
+ --name "Project Name" \
191
+ --purpose "What the project does" \
192
+ --architecture "Modular Monolith" \
193
+ --stack "Node.js, TypeScript, SQLite" \
194
+ --standards "Strict unidirectional layer flow" \
195
+ --folder-structure "src/core, src/cli, src/mcp, tests" \
196
+ --scope "v1 release scope" \
197
+ --dod "All tests passing, zero blocking defects"
198
+
199
+ # Display all identity fields
200
+ paths identity get
201
+ ```
202
+
203
+ ---
204
+
205
+ ### `paths lineage`
206
+
207
+ Manages independent Lineages within the project.
208
+
209
+ ```bash
210
+ # Create a new lineage (auto-activates as current)
211
+ paths lineage new "Feature X"
212
+
213
+ # List all lineages (> marks the active Lineage)
214
+ paths lineage list
215
+
216
+ # Switch the current active lineage
217
+ paths lineage use <id>
218
+
219
+ # View session history (capped at 15 newest sessions by default)
220
+ paths lineage history <id>
221
+
222
+ # View full session history without limit
223
+ paths lineage history <id> --full
224
+ ```
225
+
226
+ ---
227
+
228
+ ### `paths session`
229
+
230
+ Appends a Session (Node record) to the active lineage. Changes to tracked files since the last Git commit are automatically derived and logged. Supports reading session summary from a file.
231
+
232
+ ```bash
233
+ # Log session against the active lineage
234
+ paths session "Refactored payment routing middleware" --tool antigravity
235
+
236
+ # Log session from a file (mutually exclusive with inline text)
237
+ paths session --file ./notes/session.txt --tool antigravity
238
+
239
+ # Log session against an explicit lineage ID
240
+ paths session "Fixed auth token expiration bug" --tool claude-code --lineage 2
241
+ ```
242
+
243
+ ---
244
+
245
+ ### `paths knowledge`
246
+
247
+ Stores durable, project-wide facts, decisions, and architectural contracts.
248
+
249
+ ```bash
250
+ # Save a durable knowledge item (--category required)
251
+ paths knowledge add --category Architecture \
252
+ "Operational datastore uses SQLite with WAL mode" \
253
+ "Provides local embedded persistence with concurrent read transactions"
254
+
255
+ # Save a replacement fact and atomically supersede an older item
256
+ paths knowledge add --category Security \
257
+ "New Auth uses Ed25519 asymmetric keypairs" \
258
+ "Modern cryptographic standard" \
259
+ --supersedes 2
260
+
261
+ # List all active (non-superseded) knowledge facts
262
+ paths knowledge list
263
+
264
+ # Search all knowledge (including superseded facts) by literal substring match
265
+ paths knowledge search "Ed25519"
266
+ ```
267
+
268
+ **Allowed Categories**: `Architecture`, `Business`, `Deployment`, `Security`, `Testing`, `API`, `Database`, `Infrastructure`, `UI`.
269
+
270
+ ---
271
+
272
+ ### `paths todo`
273
+
274
+ Tracks actionable Todos scoped to a lineage or across the entire project.
275
+
276
+ ```bash
277
+ # Add a project-wide Todo
278
+ paths todo add "Rotate production webhook signing secrets"
279
+
280
+ # Add a lineage-scoped Todo
281
+ paths todo add "Benchmark signature verification latency" --lineage 1
282
+
283
+ # List open todos for active lineage (lineage todos + project-wide todos)
284
+ paths todo list
285
+
286
+ # List todos scoped to a specific lineage
287
+ paths todo list --lineage 1
288
+
289
+ # Complete a todo by case-insensitive partial substring match
290
+ paths todo done "Rotate production webhook"
291
+ ```
292
+
293
+ ---
294
+
295
+ ### `paths context`
296
+
297
+ Compiles and outputs the full context digest for a lineage as structured JSON.
298
+
299
+ ```bash
300
+ paths context <lineage-id>
301
+ ```
302
+
303
+ **Digest Structure:**
304
+ - `summary`: High-level overview (`project`, `lineage`, `last_session`, `current_goal`, `next_suggested_task`, `open_todo_count`, `blockers`).
305
+ - `identity`: Full 8-field project metadata block.
306
+ - `knowledge`: Up to 50 active knowledge facts, dynamically scored and ranked by importance, reference count, recency, and active lineage origin boost.
307
+ - `nodes`: Up to 15 most recent Sessions in newest-first order with files touched.
308
+ - `todos`: Up to 25 open Todos (lineage-scoped and project-wide).
309
+
310
+ ---
311
+
312
+ ### `paths plan`
313
+
314
+ Manages persistent development plans (intent, approach, definition of done).
315
+
316
+ ```bash
317
+ # Create a new active plan (replaces current active plan)
318
+ paths plan new "Payment Gateway Migration" \
319
+ --intent "Migrate from Stripe v2 to v3" \
320
+ --approach "Implement adapter pattern and dual-write" \
321
+ --done "All webhooks processed without data loss"
322
+
323
+ # Create plan from file (mutually exclusive with inline options)
324
+ paths plan new "Payment Gateway Migration" --file ./plan.json
325
+
326
+ # Show active plan or specific plan by ID
327
+ paths plan show
328
+ paths plan show --id 1
329
+
330
+ # List plans for the project (active only by default, or all)
331
+ paths plan list
332
+ paths plan list --all
333
+
334
+ # Complete plan with retrospective summary
335
+ paths plan complete 1 --summary "Dual-write completed and verified in production"
336
+
337
+ # Abandon plan with explanation
338
+ paths plan abandon 1 --reason "Superseded by alternative architecture"
339
+ ```
340
+
341
+ ---
342
+
343
+ ### `paths ingest`
344
+
345
+ Ingests external software engineering events into Sessions, Todos, or Knowledge.
346
+
347
+ ```bash
348
+ # Ingest from inline JSON string
349
+ paths ingest '{"sourceSystem":"github","externalEventId":"gh-101","eventType":"pull_request","sourceRecord":{"title":"Fix bug"},"occurredAt":"2026-09-26T12:00:00Z"}'
350
+
351
+ # Ingest from a JSON file
352
+ paths ingest --file ./events/commit.json
353
+ ```
354
+
355
+ ---
356
+
357
+ ### `paths sync`
358
+
359
+ Manages multi-machine distributed synchronization bundles.
360
+
361
+ ```bash
362
+ # Export sync bundle of project changes to a file
363
+ paths sync export --output ./sync-bundle.json
364
+
365
+ # Apply a received sync bundle
366
+ paths sync apply ./sync-bundle.json
367
+
368
+ # Check sync status (device ID, sequence, applied counts)
369
+ paths sync status
370
+ ```
371
+
372
+ ---
373
+
374
+ ### `paths gui`
375
+
376
+ Launches or focuses the Visual Memory Explorer desktop application. The GUI operates as an always-warm resident application in the system tray, providing instantaneous (<10ms) recall after initial boot.
377
+
378
+ ```bash
379
+ # Launch or focus GUI for current working directory
380
+ paths gui
381
+
382
+ # Start resident GUI silently in system tray without opening window
383
+ paths gui --minimized
384
+
385
+ # Launch or focus GUI for a specific project directory
386
+ paths gui /path/to/project
387
+ ```
388
+
389
+ ---
390
+
391
+ ## Model Context Protocol (MCP) Server
392
+
393
+ Paths includes a compliant Model Context Protocol server exposing **23 single-purpose tools** over stdio (complete inventory in the [MCP Tool Reference](#mcp-tool-reference) below).
394
+
395
+ ### Client Configuration
396
+
397
+ Add Paths to your AI assistant's MCP configuration with auto-approval enabled for a zero-prompt developer experience:
398
+
399
+ #### Standard Configuration (Global / Ambient Mode)
400
+ When `args` is omitted, Paths runs in ambient mode and automatically resolves projects from the active workspace `cwd` or the IDE's MCP roots:
401
+ ```json
402
+ {
403
+ "mcpServers": {
404
+ "paths": {
405
+ "command": "paths-mcp",
406
+ "autoApprove": [
407
+ "get_lineages", "start_lineage", "continue_lineage", "get_project_context",
408
+ "log_session", "save_knowledge", "search_knowledge", "get_lineage_history",
409
+ "search_nodes", "add_todo", "complete_todo", "list_todos",
410
+ "update_identity", "create_plan", "get_active_plan", "complete_plan",
411
+ "abandon_plan", "list_plans", "sync_export", "sync_apply",
412
+ "sync_status", "ingest_event", "open_gui"
413
+ ]
414
+ }
415
+ }
416
+ }
417
+ ```
418
+
419
+ #### OpenCode (`opencode.json`)
420
+ ```json
421
+ {
422
+ "mcp": {
423
+ "paths": {
424
+ "command": "paths-mcp",
425
+ "autoApprove": true
426
+ }
427
+ }
428
+ }
429
+ ```
430
+
431
+ #### Project-Pinned Configuration (Single-Project Mode)
432
+ To pin the MCP server to a specific workspace and enforce strict cross-project isolation:
433
+ ```json
434
+ {
435
+ "mcpServers": {
436
+ "paths": {
437
+ "command": "paths-mcp",
438
+ "args": ["/path/to/your/workspace"]
439
+ }
440
+ }
441
+ }
442
+ ```
443
+
444
+ #### Development / Local Source Configuration
445
+ ```json
446
+ {
447
+ "mcpServers": {
448
+ "paths": {
449
+ "command": "node",
450
+ "args": ["/absolute/path/to/paths-engine/dist/mcp/server.js"],
451
+ "env": {
452
+ "PATHS_DB_PATH": "/path/to/data.sqlite"
453
+ }
454
+ }
455
+ }
456
+ }
457
+ ```
458
+
459
+ ### MCP Environment Variables
460
+
461
+ - `PATHS_DB_PATH`: Override SQLite location (default `~/.paths-engine/data.sqlite`).
462
+ - `PATHS_ALLOW_CROSS_PROJECT=1`: Opt-in cross-project lookups (`projectId` / `lineageId` / `cwd` targeting another project, e.g. querying Condensr while connected to Paths). Default denied to prevent cross-tenant leaks. Single-user workstation only — project IDs are enumerable. Example:
463
+ ```json
464
+ { "mcpServers": { "paths": { "command": "paths-mcp", "args": ["/path/to/workspace"], "env": { "PATHS_ALLOW_CROSS_PROJECT": "1" } } } }
465
+ ```
466
+ - `PATHS_SYNC_KEY`: HMAC-SHA256 sync signing key (min 16 chars). When set, unsigned bundles are rejected by default.
467
+ - `PATHS_SYNC_REQUIRE_SIGNATURE=1`: Strict mode — always reject unsigned bundles (wins over `ALLOW_UNSIGNED`).
468
+ - `PATHS_SYNC_ALLOW_UNSIGNED=1`: Migration escape hatch — allow unsigned bundles even when `PATHS_SYNC_KEY` is set. Do not leave on permanently.
469
+ - `PATHS_DISABLE_GIT_DISCOVERY=1`: Disable `git diff` auto-derive for `filesTouched` (deterministic CI/tests).
470
+
471
+ ### MCP Tool Reference
472
+
473
+ > All Paths tools declare `destructiveHint: false`. Read-only tools also declare `readOnlyHint: true`.
474
+
475
+ | Tool | Annotation | Parameters | Description |
476
+ |---|---|---|---|
477
+ | `get_lineages` | `readOnly: true, destructive: false` | `{}` | Lists all Lineages with active status and node counts. |
478
+ | `start_lineage` | `readOnly: false, destructive: false` | `{ name: string }` | Creates a new Lineage and sets it current. |
479
+ | `continue_lineage` | `readOnly: false, destructive: false` | `{ lineageId: number }` | Resumes an existing active Lineage and touches timestamp. |
480
+ | `get_project_context` | `readOnly: true, destructive: false` | `{ lineageId?: number }` | Retrieves bounded compiled context digest (identity, ranked knowledge, Sessions, Todos). |
481
+ | `log_session` | `readOnly: false, destructive: false` | `{ summary: string, tool?: string, filesTouched?: string[], lineageId?: number }` | Appends a Session (Node record) with parentNodeId provenance tracking. |
482
+ | `save_knowledge` | `readOnly: false, destructive: false` | `{ category: string, fact: string, why: string, originNodeId?: number, supersedesId?: number }` | Records durable knowledge fact or atomically supersedes an existing item. |
483
+ | `search_knowledge` | `readOnly: true, destructive: false` | `{ query: string }` | Searches Knowledge across all statuses (active, superseded, conflicted, draft) by substring across fact and why. |
484
+ | `get_lineage_history` | `readOnly: true, destructive: false` | `{ lineageId?: number, full?: boolean }` | Retrieves Session history (Node records; capped at 15 by default, or full). |
485
+ | `add_todo` | `readOnly: false, destructive: false` | `{ text: string, lineageId?: number, originNodeId?: number }` | Adds an open Todo (project-wide or lineage-scoped). |
486
+ | `complete_todo` | `readOnly: false, destructive: false` | `{ id?: number, textMatch?: string }` | Marks an open Todo as done by ID or text match. |
487
+ | `list_todos` | `readOnly: true, destructive: false` | `{ lineageId?: number }` | Lists open Todos for the project and lineage. |
488
+ | `update_identity` | `readOnly: false, destructive: false` | `{ projectName?, purpose?, architecture?, techStack?, codingStandards?, folderStructure?, scope?, definitionOfDone? }` | Updates core project identity and architecture metadata. |
489
+ | `create_plan` | `readOnly: false, destructive: false` | `{ title, intent, approach, definitionOfDone, lineageId?, projectId?, cwd? }` | Creates a persistent Plan (intent, approach, definition of done), replacing any active Plan with a history link. Does not modify Sessions, Knowledge, or Todos. |
490
+ | `get_active_plan` | `readOnly: true, destructive: false` | `{ projectId?, cwd? }` | Retrieves the active Plan (intent, approach, definition of done); null when none exists. Read-only. |
491
+ | `list_plans` | `readOnly: true, destructive: false` | `{ includeInactive?, projectId?, cwd? }` | Lists Plans newest first (all statuses by default; active only with `includeInactive: false`). Read-only. |
492
+ | `complete_plan` | `readOnly: false, destructive: false` | `{ planId: number, completionSummary: string, projectId?, cwd? }` | Marks the active Plan completed with a retrospective summary. Associated Todos, Sessions, and Knowledge remain untouched. |
493
+ | `abandon_plan` | `readOnly: false, destructive: false` | `{ planId: number, abandonmentReason: string, projectId?, cwd? }` | Abandons the active Plan with an explanation. Associated Todos, Sessions, and Knowledge remain untouched. |
494
+ | `search_nodes` | `readOnly: true, destructive: false` | `{ query: string, lineageId?, projectId?, limit?, cwd? }` | Searches Session history (Node records) across all Lineages by summary or file path. Read-only. |
495
+ | `ingest_event` | `readOnly: false, destructive: false` | `{ sourceSystem, externalEventId, eventType, sourceRecord, occurredAt, targetCanonicalType?, nodePayload?, todoPayload?, knowledgePayload? }` | Ingests an external event into a Session (Node record), Todo, or Knowledge with deduplication. Does not modify Plans or Identity. |
496
+ | `sync_export` | `readOnly: true, destructive: false` | `{ cursor?, projectId?, cwd? }` | Exports a sync bundle of Project changes since a per-device cursor for multi-machine transfer. Read-only. |
497
+ | `sync_apply` | `readOnly: false, destructive: false` | `SyncBundle` | Applies a sync bundle to merge Project state with causality tracking (Sessions, Knowledge, Todos); does not create Plans directly. |
498
+ | `sync_status` | `readOnly: true, destructive: false` | `{ projectId?, cwd? }` | Returns sync status (device ID, sequence, applied/deferred counts). Read-only. |
499
+ | `open_gui` | `readOnly: true, destructive: false` | `{ projectId?, cwd? }` | Launches the Visual Memory Explorer desktop app for the active project. Read-only. |
500
+
501
+ ---
502
+
503
+ ## Desktop GUI (Visual Memory Explorer)
504
+
505
+ Paths includes an Electron and React desktop application architecture designed for visual exploration of project memory.
506
+
507
+ ### Architecture & Security Model
508
+
509
+ ```
510
+ [ Renderer Process (React / Vite) ] ← Sandboxed UI Shell (Zero Node/DB Access)
511
+ ↓
512
+ [ Preload (PathsApi) ] ← Explicit 15-Method Positive Surface (contextBridge)
513
+ ↓
514
+ [ AppBridge (ipcMain) ] ← 15-Channel Router, Zod Validation, Concurrency Queue
515
+ ↓
516
+ [ AppContextManager ] ← State Authority & Atomic Context-Switch Lifecycle
517
+ ↓
518
+ [ Core Services ] ← Domain Invariants & Compiler
519
+ ↓
520
+ [ Repositories & SqliteStore ] ← SQLite Persistence (Main Process Exclusive)
521
+ ```
522
+
523
+ - **Single Database Authority**: The Main process is the sole owner of the SQLite database (`app.requestSingleInstanceLock()`).
524
+ - **Sandboxed Renderer**: The renderer executes with `nodeIntegration: false`, `contextIsolation: true`, and `sandbox: true`. Direct access to SQLite, Electron, or Node.js built-ins is blocked by design and verified by automated static boundary tests.
525
+ - **Strict Content Security Policy**: Production builds enforce a strict CSP (`default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data:;`).
526
+ - **15-Channel IPC Surface**: Maps 1-to-1 to typed adapter DTO contracts:
527
+ - **8 Queries (Concurrent)**: `paths:get-context`, `paths:get-status`, `paths:list-lineages`, `paths:list-knowledge`, `paths:search-knowledge`, `paths:get-history`, `paths:list-todos`, `paths:get-identity`.
528
+ - **7 Commands (FIFO Serialized)**: `paths:start-lineage`, `paths:continue-lineage`, `paths:save-knowledge`, `paths:add-todo`, `paths:complete-todo-by-id`, `paths:log-session`, `paths:update-identity`.
529
+ - **Atomic Context Switching**: Seamlessly switch active projects with guaranteed rollback on failed initialization and automatic rejection of stale mutations (`STALE_GENERATION`).
530
+ ### The Five Visual Surfaces
531
+
532
+ | Surface | Component | Key Capabilities |
533
+ |---|---|---|
534
+ | **Dashboard** | `Dashboard.tsx` | High-level SDLC project overview, active goal, compiler-suggested next Todo, open Todo metrics, blockers, and top-3 compiler-ranked active knowledge items. |
535
+ | **Lineage Manager** | `LineageManager.tsx` | Lineage orchestration, total session counts, relative/ISO activity timestamps, active Lineage indicators, lineage switching, and new Lineage creation. |
536
+ | **Knowledge Explorer** | `KnowledgeExplorer.tsx` | Comprehensive knowledge base browser with 9 SDLC category filters, active vs. superseded tabs, 300ms debounced search, and collapsible Why/Rationale disclosure cards. |
537
+ | **Session Timeline** | `SessionTimeline.tsx` | Chronological session history chain (oldest to newest), tool badges, dual timestamps, vertical parent links, full-history toggle, and expandable `filesTouched` path chips. |
538
+ | **Todo Board** | `TodoBoard.tsx` | Todo management with "All Project" vs. "Active Lineage" scope toggles, origin badges, and canonical todo completion actions. |
539
+
540
+ ### Resident Desktop Mode & System Tray Lifecycle
541
+
542
+ To eliminate cold-start latency (~4–6s) down to instantaneous recall (<10ms), the Desktop GUI runs as an always-warm resident application:
543
+
544
+ - **Close-to-Tray Lifecycle**: Closing the window (`X`) minimizes the application to the Windows System Tray (`win.hide()`) rather than terminating the process. SQLite connections and compiled web bundles remain warm in memory.
545
+ - **Instant Second-Instance Recall (<10ms)**: Subsequent invocations via terminal `paths gui` or AI assistant MCP `open_gui` communicate through Electron's `second-instance` IPC to immediately un-hide and focus the active window with zero cold-boot delay.
546
+ - **Native Tray Controls**: The system tray icon provides single-click visibility toggling, current project path inspection, and a clean **Quit** option that safely checkpoints SQLite WAL journals before exiting.
547
+ - **Silent Background Boot**: The `--minimized` flag allows the application to launch directly into the system tray at startup without interrupting the developer's workspace.
548
+
549
+ ---
550
+
551
+ ## Security & Privacy
552
+
553
+ Paths is engineered with a local-first, zero-trust security architecture:
554
+
555
+ * **Local-First & Offline Privacy**: 100% of project knowledge and session data resides strictly on your local machine. Zero telemetry, zero analytics, zero cloud dependencies.
556
+ * **Process Sandboxing**: The Desktop UI operates in an isolated Chromium sandbox (`nodeIntegration: false`, `contextIsolation: true`) with strict CSP and typed IPC boundaries.
557
+ * **Deterministic & Auditable**: Reproducible clean builds verified with SHA-256 artifact manifests.
558
+ * **Automated Security Gates**: Integrated release verification pipeline enforcing dependency admission, secret scanning, and boundary isolation.
559
+
560
+ ```bash
561
+ # Run security checks & boundary tests
562
+ npm run security:check
563
+
564
+ # Run full release security verification pipeline
565
+ npm run security:gate
566
+ ```
567
+
568
+ ---
569
+
570
+ ## Development
571
+
572
+ ```bash
573
+ # Build TypeScript Core, CLI, and MCP to dist/
574
+ npm run build
575
+
576
+ # Build Desktop GUI React renderer bundle
577
+ npm run build:gui
578
+
579
+ # Launch Desktop GUI application
580
+ npm run gui
581
+
582
+ # Start Desktop GUI renderer development server
583
+ npm run dev:gui
584
+
585
+ # Run automated test suite (Vitest)
586
+ npm test
587
+
588
+ # Run linter
589
+ npm run lint
590
+
591
+ # Run typechecker
592
+ npm run typecheck
593
+
594
+ # Run end-to-end release security pipeline
595
+ npm run security:gate
596
+
597
+ # Run full release verification & tarball packaging pipeline
598
+ npm run release
599
+ ```
600
+
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function registerContextCommands(parentCommand: Command): void;
3
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsDpC,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,OAAO,GAAG,IAAI,CAyEpE"}