@vess-id/vess 0.2.0-alpha.1

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 (280) hide show
  1. package/LICENSE +64 -0
  2. package/README.md +223 -0
  3. package/bin/vess.js +2 -0
  4. package/dist/__mocks__/@napi-rs/keyring.d.ts +9 -0
  5. package/dist/__mocks__/@napi-rs/keyring.d.ts.map +1 -0
  6. package/dist/__mocks__/@napi-rs/keyring.js +33 -0
  7. package/dist/__mocks__/@napi-rs/keyring.js.map +1 -0
  8. package/dist/__mocks__/node-mac-auth.d.ts +8 -0
  9. package/dist/__mocks__/node-mac-auth.d.ts.map +1 -0
  10. package/dist/__mocks__/node-mac-auth.js +29 -0
  11. package/dist/__mocks__/node-mac-auth.js.map +1 -0
  12. package/dist/adapter/mcp/http-transport.d.ts +34 -0
  13. package/dist/adapter/mcp/http-transport.d.ts.map +1 -0
  14. package/dist/adapter/mcp/http-transport.js +158 -0
  15. package/dist/adapter/mcp/http-transport.js.map +1 -0
  16. package/dist/adapter/mcp/mcp-adapter.d.ts +37 -0
  17. package/dist/adapter/mcp/mcp-adapter.d.ts.map +1 -0
  18. package/dist/adapter/mcp/mcp-adapter.js +48 -0
  19. package/dist/adapter/mcp/mcp-adapter.js.map +1 -0
  20. package/dist/adapter/mcp/mcp-server.factory.d.ts +35 -0
  21. package/dist/adapter/mcp/mcp-server.factory.d.ts.map +1 -0
  22. package/dist/adapter/mcp/mcp-server.factory.js +114 -0
  23. package/dist/adapter/mcp/mcp-server.factory.js.map +1 -0
  24. package/dist/adapter/mcp/stdio-transport.d.ts +7 -0
  25. package/dist/adapter/mcp/stdio-transport.d.ts.map +1 -0
  26. package/dist/adapter/mcp/stdio-transport.js +13 -0
  27. package/dist/adapter/mcp/stdio-transport.js.map +1 -0
  28. package/dist/adapter/mcp/transport.d.ts +10 -0
  29. package/dist/adapter/mcp/transport.d.ts.map +1 -0
  30. package/dist/adapter/mcp/transport.js +14 -0
  31. package/dist/adapter/mcp/transport.js.map +1 -0
  32. package/dist/approval/approval-token.d.ts +23 -0
  33. package/dist/approval/approval-token.d.ts.map +1 -0
  34. package/dist/approval/approval-token.js +81 -0
  35. package/dist/approval/approval-token.js.map +1 -0
  36. package/dist/audit/audit-dto-mapper.d.ts +29 -0
  37. package/dist/audit/audit-dto-mapper.d.ts.map +1 -0
  38. package/dist/audit/audit-dto-mapper.js +61 -0
  39. package/dist/audit/audit-dto-mapper.js.map +1 -0
  40. package/dist/audit/audit-logger.d.ts +35 -0
  41. package/dist/audit/audit-logger.d.ts.map +1 -0
  42. package/dist/audit/audit-logger.js +67 -0
  43. package/dist/audit/audit-logger.js.map +1 -0
  44. package/dist/audit/audit-sync.d.ts +12 -0
  45. package/dist/audit/audit-sync.d.ts.map +1 -0
  46. package/dist/audit/audit-sync.js +65 -0
  47. package/dist/audit/audit-sync.js.map +1 -0
  48. package/dist/auth/user-authenticator.d.ts +51 -0
  49. package/dist/auth/user-authenticator.d.ts.map +1 -0
  50. package/dist/auth/user-authenticator.js +155 -0
  51. package/dist/auth/user-authenticator.js.map +1 -0
  52. package/dist/cli/cli-db.d.ts +12 -0
  53. package/dist/cli/cli-db.d.ts.map +1 -0
  54. package/dist/cli/cli-db.js +20 -0
  55. package/dist/cli/cli-db.js.map +1 -0
  56. package/dist/cli/cli-utils.d.ts +14 -0
  57. package/dist/cli/cli-utils.d.ts.map +1 -0
  58. package/dist/cli/cli-utils.js +57 -0
  59. package/dist/cli/cli-utils.js.map +1 -0
  60. package/dist/cli/daemon-utils.d.ts +30 -0
  61. package/dist/cli/daemon-utils.d.ts.map +1 -0
  62. package/dist/cli/daemon-utils.js +131 -0
  63. package/dist/cli/daemon-utils.js.map +1 -0
  64. package/dist/cli/daemon.d.ts +13 -0
  65. package/dist/cli/daemon.d.ts.map +1 -0
  66. package/dist/cli/daemon.js +207 -0
  67. package/dist/cli/daemon.js.map +1 -0
  68. package/dist/cli/doctor.d.ts +2 -0
  69. package/dist/cli/doctor.d.ts.map +1 -0
  70. package/dist/cli/doctor.js +135 -0
  71. package/dist/cli/doctor.js.map +1 -0
  72. package/dist/cli/env-delete.d.ts +6 -0
  73. package/dist/cli/env-delete.d.ts.map +1 -0
  74. package/dist/cli/env-delete.js +80 -0
  75. package/dist/cli/env-delete.js.map +1 -0
  76. package/dist/cli/env-list.d.ts +5 -0
  77. package/dist/cli/env-list.d.ts.map +1 -0
  78. package/dist/cli/env-list.js +42 -0
  79. package/dist/cli/env-list.js.map +1 -0
  80. package/dist/cli/env-post-integration.d.ts +21 -0
  81. package/dist/cli/env-post-integration.d.ts.map +1 -0
  82. package/dist/cli/env-post-integration.js +300 -0
  83. package/dist/cli/env-post-integration.js.map +1 -0
  84. package/dist/cli/env-restore.d.ts +15 -0
  85. package/dist/cli/env-restore.d.ts.map +1 -0
  86. package/dist/cli/env-restore.js +130 -0
  87. package/dist/cli/env-restore.js.map +1 -0
  88. package/dist/cli/env.d.ts +14 -0
  89. package/dist/cli/env.d.ts.map +1 -0
  90. package/dist/cli/env.js +182 -0
  91. package/dist/cli/env.js.map +1 -0
  92. package/dist/cli/error-handlers.d.ts +13 -0
  93. package/dist/cli/error-handlers.d.ts.map +1 -0
  94. package/dist/cli/error-handlers.js +32 -0
  95. package/dist/cli/error-handlers.js.map +1 -0
  96. package/dist/cli/hook-check-env.d.ts +12 -0
  97. package/dist/cli/hook-check-env.d.ts.map +1 -0
  98. package/dist/cli/hook-check-env.js +117 -0
  99. package/dist/cli/hook-check-env.js.map +1 -0
  100. package/dist/cli/index.d.ts +2 -0
  101. package/dist/cli/index.d.ts.map +1 -0
  102. package/dist/cli/index.js +294 -0
  103. package/dist/cli/index.js.map +1 -0
  104. package/dist/cli/init-guard.d.ts +13 -0
  105. package/dist/cli/init-guard.d.ts.map +1 -0
  106. package/dist/cli/init-guard.js +62 -0
  107. package/dist/cli/init-guard.js.map +1 -0
  108. package/dist/cli/init.d.ts +19 -0
  109. package/dist/cli/init.d.ts.map +1 -0
  110. package/dist/cli/init.js +440 -0
  111. package/dist/cli/init.js.map +1 -0
  112. package/dist/cli/install.d.ts +14 -0
  113. package/dist/cli/install.d.ts.map +1 -0
  114. package/dist/cli/install.js +186 -0
  115. package/dist/cli/install.js.map +1 -0
  116. package/dist/cli/login.d.ts +6 -0
  117. package/dist/cli/login.d.ts.map +1 -0
  118. package/dist/cli/login.js +76 -0
  119. package/dist/cli/login.js.map +1 -0
  120. package/dist/cli/logs.d.ts +32 -0
  121. package/dist/cli/logs.d.ts.map +1 -0
  122. package/dist/cli/logs.js +147 -0
  123. package/dist/cli/logs.js.map +1 -0
  124. package/dist/cli/project.d.ts +8 -0
  125. package/dist/cli/project.d.ts.map +1 -0
  126. package/dist/cli/project.js +102 -0
  127. package/dist/cli/project.js.map +1 -0
  128. package/dist/cli/reset.d.ts +8 -0
  129. package/dist/cli/reset.d.ts.map +1 -0
  130. package/dist/cli/reset.js +137 -0
  131. package/dist/cli/reset.js.map +1 -0
  132. package/dist/cli/run.d.ts +22 -0
  133. package/dist/cli/run.d.ts.map +1 -0
  134. package/dist/cli/run.js +103 -0
  135. package/dist/cli/run.js.map +1 -0
  136. package/dist/cli/start.d.ts +2 -0
  137. package/dist/cli/start.d.ts.map +1 -0
  138. package/dist/cli/start.js +29 -0
  139. package/dist/cli/start.js.map +1 -0
  140. package/dist/cli/status.d.ts +12 -0
  141. package/dist/cli/status.d.ts.map +1 -0
  142. package/dist/cli/status.js +131 -0
  143. package/dist/cli/status.js.map +1 -0
  144. package/dist/cli/uninstall.d.ts +8 -0
  145. package/dist/cli/uninstall.d.ts.map +1 -0
  146. package/dist/cli/uninstall.js +111 -0
  147. package/dist/cli/uninstall.js.map +1 -0
  148. package/dist/config/config.d.ts +10 -0
  149. package/dist/config/config.d.ts.map +1 -0
  150. package/dist/config/config.js +64 -0
  151. package/dist/config/config.js.map +1 -0
  152. package/dist/config/constants.d.ts +3 -0
  153. package/dist/config/constants.d.ts.map +1 -0
  154. package/dist/config/constants.js +6 -0
  155. package/dist/config/constants.js.map +1 -0
  156. package/dist/config/paths.d.ts +9 -0
  157. package/dist/config/paths.d.ts.map +1 -0
  158. package/dist/config/paths.js +58 -0
  159. package/dist/config/paths.js.map +1 -0
  160. package/dist/core/execution-engine.d.ts +119 -0
  161. package/dist/core/execution-engine.d.ts.map +1 -0
  162. package/dist/core/execution-engine.js +1291 -0
  163. package/dist/core/execution-engine.js.map +1 -0
  164. package/dist/core/runtime.d.ts +43 -0
  165. package/dist/core/runtime.d.ts.map +1 -0
  166. package/dist/core/runtime.js +143 -0
  167. package/dist/core/runtime.js.map +1 -0
  168. package/dist/core/sync-scheduler.d.ts +42 -0
  169. package/dist/core/sync-scheduler.d.ts.map +1 -0
  170. package/dist/core/sync-scheduler.js +131 -0
  171. package/dist/core/sync-scheduler.js.map +1 -0
  172. package/dist/core/types.d.ts +77 -0
  173. package/dist/core/types.d.ts.map +1 -0
  174. package/dist/core/types.js +7 -0
  175. package/dist/core/types.js.map +1 -0
  176. package/dist/daemon/service-manager.d.ts +68 -0
  177. package/dist/daemon/service-manager.d.ts.map +1 -0
  178. package/dist/daemon/service-manager.js +303 -0
  179. package/dist/daemon/service-manager.js.map +1 -0
  180. package/dist/env/env-classifier.d.ts +14 -0
  181. package/dist/env/env-classifier.d.ts.map +1 -0
  182. package/dist/env/env-classifier.js +94 -0
  183. package/dist/env/env-classifier.js.map +1 -0
  184. package/dist/env/env-parser.d.ts +13 -0
  185. package/dist/env/env-parser.d.ts.map +1 -0
  186. package/dist/env/env-parser.js +33 -0
  187. package/dist/env/env-parser.js.map +1 -0
  188. package/dist/env/env-profile-store.d.ts +15 -0
  189. package/dist/env/env-profile-store.d.ts.map +1 -0
  190. package/dist/env/env-profile-store.js +35 -0
  191. package/dist/env/env-profile-store.js.map +1 -0
  192. package/dist/env/env-reference.d.ts +10 -0
  193. package/dist/env/env-reference.d.ts.map +1 -0
  194. package/dist/env/env-reference.js +33 -0
  195. package/dist/env/env-reference.js.map +1 -0
  196. package/dist/env/env-resolver.d.ts +18 -0
  197. package/dist/env/env-resolver.d.ts.map +1 -0
  198. package/dist/env/env-resolver.js +48 -0
  199. package/dist/env/env-resolver.js.map +1 -0
  200. package/dist/env/fs-utils.d.ts +9 -0
  201. package/dist/env/fs-utils.d.ts.map +1 -0
  202. package/dist/env/fs-utils.js +59 -0
  203. package/dist/env/fs-utils.js.map +1 -0
  204. package/dist/env/secret-backend.d.ts +15 -0
  205. package/dist/env/secret-backend.d.ts.map +1 -0
  206. package/dist/env/secret-backend.js +24 -0
  207. package/dist/env/secret-backend.js.map +1 -0
  208. package/dist/executor/executor-registry.d.ts +22 -0
  209. package/dist/executor/executor-registry.d.ts.map +1 -0
  210. package/dist/executor/executor-registry.js +42 -0
  211. package/dist/executor/executor-registry.js.map +1 -0
  212. package/dist/executor/process-launcher.d.ts +26 -0
  213. package/dist/executor/process-launcher.d.ts.map +1 -0
  214. package/dist/executor/process-launcher.js +98 -0
  215. package/dist/executor/process-launcher.js.map +1 -0
  216. package/dist/executor/secret-file.d.ts +28 -0
  217. package/dist/executor/secret-file.d.ts.map +1 -0
  218. package/dist/executor/secret-file.js +127 -0
  219. package/dist/executor/secret-file.js.map +1 -0
  220. package/dist/gateway/auth.d.ts +26 -0
  221. package/dist/gateway/auth.d.ts.map +1 -0
  222. package/dist/gateway/auth.js +66 -0
  223. package/dist/gateway/auth.js.map +1 -0
  224. package/dist/gateway/gateway-client.d.ts +298 -0
  225. package/dist/gateway/gateway-client.d.ts.map +1 -0
  226. package/dist/gateway/gateway-client.js +501 -0
  227. package/dist/gateway/gateway-client.js.map +1 -0
  228. package/dist/identity/agent-identity.d.ts +29 -0
  229. package/dist/identity/agent-identity.d.ts.map +1 -0
  230. package/dist/identity/agent-identity.js +54 -0
  231. package/dist/identity/agent-identity.js.map +1 -0
  232. package/dist/identity/did-manager.d.ts +17 -0
  233. package/dist/identity/did-manager.d.ts.map +1 -0
  234. package/dist/identity/did-manager.js +29 -0
  235. package/dist/identity/did-manager.js.map +1 -0
  236. package/dist/identity/key-manager.d.ts +18 -0
  237. package/dist/identity/key-manager.d.ts.map +1 -0
  238. package/dist/identity/key-manager.js +101 -0
  239. package/dist/identity/key-manager.js.map +1 -0
  240. package/dist/identity/session-key.d.ts +13 -0
  241. package/dist/identity/session-key.d.ts.map +1 -0
  242. package/dist/identity/session-key.js +17 -0
  243. package/dist/identity/session-key.js.map +1 -0
  244. package/dist/policy/policy-evaluator.d.ts +63 -0
  245. package/dist/policy/policy-evaluator.d.ts.map +1 -0
  246. package/dist/policy/policy-evaluator.js +266 -0
  247. package/dist/policy/policy-evaluator.js.map +1 -0
  248. package/dist/policy/policy-loader.d.ts +10 -0
  249. package/dist/policy/policy-loader.d.ts.map +1 -0
  250. package/dist/policy/policy-loader.js +71 -0
  251. package/dist/policy/policy-loader.js.map +1 -0
  252. package/dist/policy/types.d.ts +21 -0
  253. package/dist/policy/types.d.ts.map +1 -0
  254. package/dist/policy/types.js +3 -0
  255. package/dist/policy/types.js.map +1 -0
  256. package/dist/utils/credential-errors.d.ts +3 -0
  257. package/dist/utils/credential-errors.d.ts.map +1 -0
  258. package/dist/utils/credential-errors.js +23 -0
  259. package/dist/utils/credential-errors.js.map +1 -0
  260. package/dist/utils/resource-canonicalizer.d.ts +19 -0
  261. package/dist/utils/resource-canonicalizer.d.ts.map +1 -0
  262. package/dist/utils/resource-canonicalizer.js +100 -0
  263. package/dist/utils/resource-canonicalizer.js.map +1 -0
  264. package/dist/utils/vc-utils.d.ts +23 -0
  265. package/dist/utils/vc-utils.d.ts.map +1 -0
  266. package/dist/utils/vc-utils.js +53 -0
  267. package/dist/utils/vc-utils.js.map +1 -0
  268. package/dist/wallet/sqlite.d.ts +4 -0
  269. package/dist/wallet/sqlite.d.ts.map +1 -0
  270. package/dist/wallet/sqlite.js +158 -0
  271. package/dist/wallet/sqlite.js.map +1 -0
  272. package/dist/wallet/vp-builder.d.ts +18 -0
  273. package/dist/wallet/vp-builder.d.ts.map +1 -0
  274. package/dist/wallet/vp-builder.js +46 -0
  275. package/dist/wallet/vp-builder.js.map +1 -0
  276. package/dist/wallet/wallet.d.ts +58 -0
  277. package/dist/wallet/wallet.d.ts.map +1 -0
  278. package/dist/wallet/wallet.js +170 -0
  279. package/dist/wallet/wallet.js.map +1 -0
  280. package/package.json +80 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/cli/install.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyDA,gCA+HC;AAxLD,uCAAwB;AACxB,2CAA4B;AAC5B,uCAAwB;AACxB,iEAAkD;AAClD,2CAA2C;AAC3C,mDAAyD;AACzD,6CAA6C;AAC7C,2CAA8C;AAC9C,iDAA2E;AAqB3E,SAAS,0BAA0B;IACjC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,CAAA;AAChD,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,OAAe;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IAElD,MAAM,GAAG,GAAG,IAAA,0BAAW,EAAC,OAAO,CAAC,CAAA;IAChC,MAAM,IAAI,GAAG,IAAA,2BAAY,EAAC,QAAQ,CAAC,CAAA;IAEnC,IAAI,GAAG,KAAK,IAAI,IAAI,IAAA,8BAAe,EAAC,GAAG,CAAC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAC1D,OAAO;YACL,GAAG,EAAE,oBAAoB,IAAI,MAAM;YACnC,IAAI,EAAE,MAAM;SACb,CAAA;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,CAAC,OAAO,CAAC;QACf,IAAI,EAAE,OAAO;KACd,CAAA;AACH,CAAC;AAEM,KAAK,UAAU,UAAU,CAAC,UAA0B,EAAE;IAC3D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,iBAAS,EAAE,CAAA;IAC9C,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,0BAA0B,EAAE,CAAA;IAEjF,qCAAqC;IACrC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CACb,iDAAiD,CAClD,CAAA;IACH,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,mBAAU,EAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IAC3C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAA;IACH,CAAC;IAED,4CAA4C;IAC5C,IAAI,QAAkB,CAAA;IACtB,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,IAAI,+BAAmB,CAAA;QACtD,QAAQ,GAAG,EAAE,GAAG,EAAE,oBAAoB,IAAI,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IAClE,CAAC;SAAM,IAAI,OAAO,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QACxC,QAAQ,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAChE,CAAC;SAAM,CAAC;QACN,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC1C,CAAC;IACD,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAA;IAE7C,qCAAqC;IACrC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACrC,IAAA,eAAG,EAAC,EAAE,CAAC,CAAA;QACP,IAAA,eAAG,EAAC,mCAAmC,GAAG,gBAAgB,CAAC,CAAA;QAC3D,IAAA,eAAG,EAAC,EAAE,CAAC,CAAA;QACP,IAAA,eAAG,EAAC,0EAA0E,CAAC,CAAA;QAC/E,IAAA,eAAG,EAAC,EAAE,CAAC,CAAA;QACP,IAAI,YAAY,EAAE,CAAC;YACjB,IAAA,eAAG,EAAC,mBAAmB,CAAC,CAAA;YACxB,IAAA,eAAG,EAAC,eAAe,CAAC,CAAA;YACpB,IAAA,eAAG,EAAC,iBAAiB,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAA;YACtC,IAAA,eAAG,EAAC,sBAAsB,CAAC,CAAA;YAC3B,IAAA,eAAG,EAAC,OAAO,CAAC,CAAA;YACZ,IAAA,eAAG,EAAC,KAAK,CAAC,CAAA;QACZ,CAAC;aAAM,CAAC;YACN,IAAA,eAAG,EAAC,mBAAmB,CAAC,CAAA;YACxB,IAAA,eAAG,EAAC,eAAe,CAAC,CAAA;YACpB,IAAA,eAAG,EAAC,0BAA0B,CAAC,CAAA;YAC/B,IAAA,eAAG,EAAC,0BAA0B,CAAC,CAAA;YAC/B,IAAA,eAAG,EAAC,uBAAuB,CAAC,CAAA;YAC5B,IAAA,eAAG,EAAC,OAAO,CAAC,CAAA;YACZ,IAAA,eAAG,EAAC,KAAK,CAAC,CAAA;QACZ,CAAC;QACD,IAAA,eAAG,EAAC,EAAE,CAAC,CAAA;QACP,OAAM;IACR,CAAC;IAED,0BAA0B;IAC1B,MAAM,SAAS,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAA;IAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAA4B,CAAA;IAErE,oDAAoD;IACpD,MAAM,UAAU,GAAG,CAAC,YAAY,CAAC,UAAU,IAAI,EAAE,CAA4B,CAAA;IAC7E,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;QACpB,IAAA,eAAG,EAAC,8DAA8D,CAAC,CAAA;QACnE,OAAM;IACR,CAAC;IAED,0BAA0B;IAC1B,MAAM,iBAAiB,GAAG,EAAE,GAAG,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;IAC3D,MAAM,aAAa,GAAG,EAAE,GAAG,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAA;IAExE,mBAAmB;IACnB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IAChE,MAAM,UAAU,GAAG,gBAAgB,GAAG,UAAU,GAAG,SAAS,CAAA;IAC5D,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3E,IAAA,eAAG,EAAC,kBAAkB,GAAG,UAAU,CAAC,CAAA;IAEpC,eAAe;IACf,IAAA,eAAG,EAAC,EAAE,CAAC,CAAA;IACP,IAAA,eAAG,EAAC,wCAAwC,GAAG,gBAAgB,GAAG,GAAG,CAAC,CAAA;IACtE,IAAA,eAAG,EAAC,EAAE,CAAC,CAAA;IACP,IAAI,YAAY,EAAE,CAAC;QACjB,IAAA,eAAG,EAAC,uBAAuB,CAAC,CAAA;QAC5B,IAAA,eAAG,EAAC,4BAA4B,CAAC,CAAA;QACjC,IAAA,eAAG,EAAC,eAAe,CAAC,CAAA;QACpB,IAAA,eAAG,EAAC,iBAAiB,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAA;QACtC,IAAA,eAAG,EAAC,sBAAsB,CAAC,CAAA;QAC3B,IAAA,eAAG,EAAC,OAAO,CAAC,CAAA;IACd,CAAC;SAAM,CAAC;QACN,IAAA,eAAG,EAAC,eAAe,CAAC,CAAA;QACpB,IAAA,eAAG,EAAC,4BAA4B,CAAC,CAAA;QACjC,IAAA,eAAG,EAAC,eAAe,CAAC,CAAA;QACpB,IAAA,eAAG,EAAC,0BAA0B,CAAC,CAAA;QAC/B,IAAA,eAAG,EAAC,0BAA0B,CAAC,CAAA;QAC/B,IAAA,eAAG,EAAC,uBAAuB,CAAC,CAAA;QAC5B,IAAA,eAAG,EAAC,OAAO,CAAC,CAAA;IACd,CAAC;IACD,IAAA,eAAG,EAAC,EAAE,CAAC,CAAA;IAEP,+CAA+C;IAC/C,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;YAClC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAA;QACF,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAA,uBAAW,EAAC,EAAE,EAAE,sBAAsB,CAAC,CAAA;YAC/D,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,IAAA,eAAG,EAAC,yBAAyB,CAAC,CAAA;gBAC9B,OAAM;YACR,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,KAAK,EAAE,CAAA;QACZ,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,EAAE,CAAC,aAAa,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;IAEnF,sBAAsB;IACtB,IAAA,eAAG,EAAC,EAAE,CAAC,CAAA;IACP,IAAA,eAAG,EAAC,yDAAyD,CAAC,CAAA;IAC9D,IAAA,eAAG,EAAC,EAAE,CAAC,CAAA;IACP,IAAA,eAAG,EAAC,aAAa,CAAC,CAAA;IAClB,IAAA,eAAG,EAAC,wDAAwD,CAAC,CAAA;IAC7D,IAAA,eAAG,EAAC,wDAAwD,CAAC,CAAA;AAC/D,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { VessPaths } from '../config/paths';
2
+ export interface LoginOptions {
3
+ paths?: VessPaths;
4
+ }
5
+ export declare function runLogin(options?: LoginOptions): Promise<void>;
6
+ //# sourceMappingURL=login.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/cli/login.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAI3C,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB;AAED,wBAAsB,QAAQ,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkFxE"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runLogin = runLogin;
4
+ const ai_identity_1 = require("@vess-id/ai-identity");
5
+ const key_manager_1 = require("../identity/key-manager");
6
+ const paths_1 = require("../config/paths");
7
+ const config_1 = require("../config/config");
8
+ const cli_utils_1 = require("./cli-utils");
9
+ async function runLogin(options = {}) {
10
+ const paths = options.paths ?? new paths_1.VessPaths();
11
+ // 1. Load existing config
12
+ const config = (0, config_1.loadConfig)(paths.configFile);
13
+ // 2. Validate device is initialized
14
+ if (!config.rootDid) {
15
+ throw new Error('Device is not initialized. Run "vess init" first.');
16
+ }
17
+ const { gatewayUrl, rootDid } = config;
18
+ // 3. Retrieve root private key from Keychain
19
+ const km = new key_manager_1.KeyManager();
20
+ const rootKeyJson = km.getRootKey();
21
+ if (!rootKeyJson) {
22
+ throw new Error('Root key not found in Keychain. Run "vess init" to re-initialize.');
23
+ }
24
+ // 4. Extract public key from stored private key JWK
25
+ let privateJwk;
26
+ try {
27
+ privateJwk = JSON.parse(rootKeyJson);
28
+ }
29
+ catch {
30
+ throw new Error('Root key in Keychain is corrupted. Run "vess init --force" to re-initialize.');
31
+ }
32
+ if (!privateJwk.kty || !privateJwk.x) {
33
+ throw new Error('Root key in Keychain is invalid (missing kty or x). Run "vess init --force" to re-initialize.');
34
+ }
35
+ // Strip private key material, keep only public fields
36
+ const { d: _d, p: _p, q: _q, dp: _dp, dq: _dq, qi: _qi, k: _k, ...publicKeyJwk } = privateJwk;
37
+ // 5. Run device enrollment flow (re-authenticate)
38
+ (0, cli_utils_1.log)('Starting device re-authentication...');
39
+ const enrollManager = new ai_identity_1.DeviceEnrollManager(gatewayUrl);
40
+ let result;
41
+ let cleanupBrowserPrompt;
42
+ try {
43
+ result = await enrollManager.enrollAndWait({
44
+ rootDid,
45
+ publicKeyJwk: publicKeyJwk,
46
+ }, (info) => {
47
+ (0, cli_utils_1.log)('');
48
+ (0, cli_utils_1.log)('=== Device Verification Required ===');
49
+ (0, cli_utils_1.log)(`Open this URL: ${info.verificationUrl}`);
50
+ (0, cli_utils_1.log)(`Enter code: ${info.userCode}`);
51
+ (0, cli_utils_1.log)('');
52
+ (0, cli_utils_1.log)('Waiting for approval...');
53
+ cleanupBrowserPrompt = (0, cli_utils_1.promptEnterToOpenBrowser)(info.verificationUrl);
54
+ });
55
+ }
56
+ catch (err) {
57
+ throw new Error(`Device re-authentication failed: ${err instanceof Error ? err.message : String(err)}`);
58
+ }
59
+ finally {
60
+ cleanupBrowserPrompt?.();
61
+ }
62
+ // 6. Check result
63
+ if (result.status !== 'approved') {
64
+ throw new Error(`Device re-authentication ${result.status}. Please try again with 'vess login'.`);
65
+ }
66
+ // 7. Store new session token
67
+ if (result.deviceSessionToken) {
68
+ km.storeSessionToken(result.deviceSessionToken);
69
+ }
70
+ // 8. Done
71
+ (0, cli_utils_1.log)('');
72
+ (0, cli_utils_1.log)('Login successful!');
73
+ (0, cli_utils_1.log)(` DID: ${rootDid}`);
74
+ (0, cli_utils_1.log)('');
75
+ }
76
+ //# sourceMappingURL=login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/cli/login.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Get the path to the daemon log file.
3
+ */
4
+ export declare function getLogFilePath(baseDir?: string): string;
5
+ /**
6
+ * Read the last N lines from a log file.
7
+ * Returns an empty array if the file does not exist or is empty.
8
+ */
9
+ export declare function readLogLines(filePath: string, lines?: number): string[];
10
+ /**
11
+ * Read recent error lines from a log file.
12
+ * Reads the last ~200 lines, filters for [ERROR] prefix,
13
+ * and returns the most recent `maxLines` matches.
14
+ */
15
+ export declare function readRecentErrors(logFilePath: string, maxLines?: number): string[];
16
+ /**
17
+ * Follow (tail -f) a log file, printing new lines as they appear.
18
+ * Uses fs.watchFile (polling) to reliably detect appended data,
19
+ * then re-opens the file from the last known position on each change.
20
+ * Returns an abort function to stop following.
21
+ */
22
+ export declare function followLog(filePath: string): {
23
+ stop: () => void;
24
+ };
25
+ /**
26
+ * Run the logs command.
27
+ */
28
+ export declare function runLogs(opts: {
29
+ follow?: boolean;
30
+ lines?: number;
31
+ }): Promise<void>;
32
+ //# sourceMappingURL=logs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/cli/logs.ts"],"names":[],"mappings":"AAaA;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAGvD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,GAAE,MAAsB,GAAG,MAAM,EAAE,CAWtF;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAE,MAA2B,GAAG,MAAM,EAAE,CAKrG;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,IAAI,CAAA;CAAE,CA6BhE;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBhB"}
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.getLogFilePath = getLogFilePath;
37
+ exports.readLogLines = readLogLines;
38
+ exports.readRecentErrors = readRecentErrors;
39
+ exports.followLog = followLog;
40
+ exports.runLogs = runLogs;
41
+ /**
42
+ * `vess logs` CLI command — view daemon log output.
43
+ *
44
+ * Reads from ~/.vess/logs/daemon.log.
45
+ */
46
+ const fs = __importStar(require("node:fs"));
47
+ const path = __importStar(require("node:path"));
48
+ const paths_1 = require("../config/paths");
49
+ const DEFAULT_LINES = 50;
50
+ const DEFAULT_ERROR_TAIL = 200;
51
+ const DEFAULT_MAX_ERRORS = 5;
52
+ /**
53
+ * Get the path to the daemon log file.
54
+ */
55
+ function getLogFilePath(baseDir) {
56
+ const dir = baseDir ?? new paths_1.VessPaths().baseDir;
57
+ return path.join(dir, 'logs', 'daemon.log');
58
+ }
59
+ /**
60
+ * Read the last N lines from a log file.
61
+ * Returns an empty array if the file does not exist or is empty.
62
+ */
63
+ function readLogLines(filePath, lines = DEFAULT_LINES) {
64
+ try {
65
+ const content = fs.readFileSync(filePath, 'utf-8');
66
+ if (!content.trim())
67
+ return [];
68
+ const allLines = content.split('\n').filter((line) => line !== '');
69
+ if (allLines.length <= lines)
70
+ return allLines;
71
+ return allLines.slice(-lines);
72
+ }
73
+ catch {
74
+ return [];
75
+ }
76
+ }
77
+ /**
78
+ * Read recent error lines from a log file.
79
+ * Reads the last ~200 lines, filters for [ERROR] prefix,
80
+ * and returns the most recent `maxLines` matches.
81
+ */
82
+ function readRecentErrors(logFilePath, maxLines = DEFAULT_MAX_ERRORS) {
83
+ const tailLines = readLogLines(logFilePath, DEFAULT_ERROR_TAIL);
84
+ const errorLines = tailLines.filter((line) => line.includes('[ERROR]'));
85
+ if (errorLines.length <= maxLines)
86
+ return errorLines;
87
+ return errorLines.slice(-maxLines);
88
+ }
89
+ /**
90
+ * Follow (tail -f) a log file, printing new lines as they appear.
91
+ * Uses fs.watchFile (polling) to reliably detect appended data,
92
+ * then re-opens the file from the last known position on each change.
93
+ * Returns an abort function to stop following.
94
+ */
95
+ function followLog(filePath) {
96
+ if (!fs.existsSync(filePath)) {
97
+ console.error(`Log file not found: ${filePath}`);
98
+ console.error('Is the daemon running? Start it with: vess daemon start');
99
+ process.exit(1);
100
+ }
101
+ let position = fs.statSync(filePath).size;
102
+ fs.watchFile(filePath, { interval: 500 }, () => {
103
+ const stat = fs.statSync(filePath);
104
+ if (stat.size > position) {
105
+ const stream = fs.createReadStream(filePath, { start: position, encoding: 'utf-8' });
106
+ stream.on('data', (chunk) => process.stdout.write(String(chunk)));
107
+ stream.on('end', () => { position = stat.size; });
108
+ }
109
+ else if (stat.size < position) {
110
+ // File was truncated (e.g. log rotation) — reset position
111
+ position = 0;
112
+ }
113
+ });
114
+ const stop = () => {
115
+ fs.unwatchFile(filePath);
116
+ };
117
+ process.on('SIGINT', stop);
118
+ process.on('SIGTERM', stop);
119
+ return { stop };
120
+ }
121
+ /**
122
+ * Run the logs command.
123
+ */
124
+ async function runLogs(opts) {
125
+ const logFile = getLogFilePath();
126
+ if (opts.follow) {
127
+ // Print existing last N lines first, then follow
128
+ const existing = readLogLines(logFile, opts.lines ?? DEFAULT_LINES);
129
+ for (const line of existing) {
130
+ console.log(line);
131
+ }
132
+ followLog(logFile);
133
+ // followLog keeps the process alive
134
+ return;
135
+ }
136
+ const lines = readLogLines(logFile, opts.lines ?? DEFAULT_LINES);
137
+ if (lines.length === 0) {
138
+ console.error('No log entries found.');
139
+ console.error(`Log file: ${logFile}`);
140
+ console.error('Is the daemon running? Start it with: vess daemon start');
141
+ return;
142
+ }
143
+ for (const line of lines) {
144
+ console.log(line);
145
+ }
146
+ }
147
+ //# sourceMappingURL=logs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/cli/logs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { VessPaths } from '../config/paths';
2
+ export interface ProjectOptions {
3
+ paths?: VessPaths;
4
+ }
5
+ export declare function runProjectList(options?: ProjectOptions): Promise<void>;
6
+ export declare function runProjectUse(projectId: string, options?: ProjectOptions): Promise<void>;
7
+ export declare function runProjectSync(options?: ProjectOptions): Promise<void>;
8
+ //# sourceMappingURL=project.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/cli/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAM3C,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB;AAQD,wBAAsB,cAAc,CAClC,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAwBf;AAID,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC,CA+Bf;AAID,wBAAsB,cAAc,CAClC,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAwDf"}
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runProjectList = runProjectList;
4
+ exports.runProjectUse = runProjectUse;
5
+ exports.runProjectSync = runProjectSync;
6
+ const paths_1 = require("../config/paths");
7
+ const config_1 = require("../config/config");
8
+ const sqlite_1 = require("../wallet/sqlite");
9
+ const key_manager_1 = require("../identity/key-manager");
10
+ const init_guard_1 = require("./init-guard");
11
+ function log(msg) {
12
+ process.stderr.write(msg + '\n');
13
+ }
14
+ // ── list ────────────────────────────────────────────────
15
+ async function runProjectList(options = {}) {
16
+ const paths = options.paths ?? new paths_1.VessPaths();
17
+ if (!(0, init_guard_1.ensureInitialized)(paths, 'project list'))
18
+ return;
19
+ const db = (0, sqlite_1.openDatabase)(paths.walletDb);
20
+ (0, sqlite_1.initSchema)(db);
21
+ const rows = db
22
+ .prepare('SELECT id, name, is_default FROM projects ORDER BY name')
23
+ .all();
24
+ db.close();
25
+ if (rows.length === 0) {
26
+ log('No projects found. Run "vess project sync" or "vess init".');
27
+ return;
28
+ }
29
+ log('Projects:');
30
+ for (const row of rows) {
31
+ const marker = row.is_default ? '★' : ' ';
32
+ log(` ${marker} ${row.name} (${row.id})`);
33
+ }
34
+ }
35
+ // ── use ─────────────────────────────────────────────────
36
+ async function runProjectUse(projectId, options = {}) {
37
+ const paths = options.paths ?? new paths_1.VessPaths();
38
+ if (!(0, init_guard_1.ensureInitialized)(paths, 'project use'))
39
+ return;
40
+ const db = (0, sqlite_1.openDatabase)(paths.walletDb);
41
+ (0, sqlite_1.initSchema)(db);
42
+ const project = db
43
+ .prepare('SELECT id, name FROM projects WHERE id = ?')
44
+ .get(projectId);
45
+ if (!project) {
46
+ db.close();
47
+ throw new Error(`Project not found: ${projectId}. Run "vess project list" to see available projects.`);
48
+ }
49
+ const switchDefault = db.transaction(() => {
50
+ db.prepare('UPDATE projects SET is_default = 0').run();
51
+ db.prepare('UPDATE projects SET is_default = 1 WHERE id = ?').run(projectId);
52
+ });
53
+ switchDefault();
54
+ db.close();
55
+ const config = (0, config_1.loadConfig)(paths.configFile);
56
+ config.defaultProjectId = projectId;
57
+ (0, config_1.saveConfig)(paths.configFile, config);
58
+ log(`Switched default project to: ${project.name} (${project.id})`);
59
+ }
60
+ // ── sync ────────────────────────────────────────────────
61
+ async function runProjectSync(options = {}) {
62
+ const paths = options.paths ?? new paths_1.VessPaths();
63
+ const km = new key_manager_1.KeyManager();
64
+ const sessionToken = km.getSessionToken();
65
+ if (!sessionToken) {
66
+ throw new Error('Not authenticated. Run "vess init" first to obtain a session token.');
67
+ }
68
+ if (!(0, init_guard_1.ensureInitialized)(paths, 'project sync'))
69
+ return;
70
+ const config = (0, config_1.loadConfig)(paths.configFile);
71
+ const gatewayUrl = config.gatewayUrl;
72
+ log('Fetching projects...');
73
+ let fetched;
74
+ try {
75
+ const response = await fetch(`${gatewayUrl}/api/v1/projects`, {
76
+ method: 'GET',
77
+ headers: {
78
+ 'X-Device-Session-Token': sessionToken,
79
+ },
80
+ signal: AbortSignal.timeout(10000),
81
+ });
82
+ if (!response.ok) {
83
+ log(`Failed to fetch projects (HTTP ${response.status}).`);
84
+ return;
85
+ }
86
+ const body = (await response.json());
87
+ fetched = body.projects || body.data || [];
88
+ }
89
+ catch {
90
+ log('Could not fetch projects. Check your network and gateway URL.');
91
+ return;
92
+ }
93
+ const db = (0, sqlite_1.openDatabase)(paths.walletDb);
94
+ (0, sqlite_1.initSchema)(db);
95
+ for (const project of fetched) {
96
+ db.prepare(`INSERT INTO projects (id, name, is_default, synced_at) VALUES (?, ?, 0, ?)
97
+ ON CONFLICT(id) DO UPDATE SET name = excluded.name, synced_at = excluded.synced_at`).run(project.id, project.name, Date.now());
98
+ }
99
+ db.close();
100
+ log(`Synced ${fetched.length} project(s).`);
101
+ }
102
+ //# sourceMappingURL=project.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/cli/project.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { VessPaths } from '../config/paths';
2
+ export interface ResetOptions {
3
+ paths?: VessPaths;
4
+ /** Skip confirmation prompt (for testing / CI) */
5
+ skipConfirm?: boolean;
6
+ }
7
+ export declare function runReset(options?: ResetOptions): Promise<void>;
8
+ //# sourceMappingURL=reset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reset.d.ts","sourceRoot":"","sources":["../../src/cli/reset.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAI3C,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,kDAAkD;IAClD,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAMD,wBAAsB,QAAQ,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuDxE"}
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.runReset = runReset;
37
+ const fs = __importStar(require("fs"));
38
+ const key_manager_1 = require("../identity/key-manager");
39
+ const paths_1 = require("../config/paths");
40
+ const service_manager_1 = require("../daemon/service-manager");
41
+ const uninstall_1 = require("./uninstall");
42
+ function log(msg) {
43
+ process.stderr.write(msg + '\n');
44
+ }
45
+ async function runReset(options = {}) {
46
+ const paths = options.paths ?? new paths_1.VessPaths();
47
+ const skipConfirm = options.skipConfirm ?? false;
48
+ if (!skipConfirm) {
49
+ // Interactive confirmation via stdin
50
+ log('');
51
+ log('⚠ This will completely uninstall VESS:');
52
+ log(' - MCP server registration from Claude Code');
53
+ log(' - Daemon OS service (auto-start)');
54
+ log(` - Config, policy, wallet: ${paths.baseDir}`);
55
+ log(' - Root key & session token from OS Keychain');
56
+ log('');
57
+ const confirmed = await promptConfirm('Are you sure? (y/N) ');
58
+ if (!confirmed) {
59
+ log('Aborted.');
60
+ return;
61
+ }
62
+ }
63
+ // 1. Remove MCP server registration from Claude Code
64
+ log('Removing MCP server registration...');
65
+ try {
66
+ // runUninstall() only removes MCP server registration from Claude Code config.
67
+ // Full cleanup (daemon, keychain, files) is handled by the subsequent steps below.
68
+ await (0, uninstall_1.runUninstall)({ skipConfirm: true });
69
+ }
70
+ catch {
71
+ // Claude Code config may not exist — non-fatal
72
+ }
73
+ // 2. Uninstall daemon OS service (LaunchAgent / systemd) if present
74
+ if (service_manager_1.ServiceManager.isInstalled()) {
75
+ log('Removing daemon OS service...');
76
+ await service_manager_1.ServiceManager.uninstall();
77
+ }
78
+ // 3. Delete keys from OS Keychain
79
+ log('Cleaning Keychain entries...');
80
+ const km = new key_manager_1.KeyManager();
81
+ km.deleteRootKey();
82
+ km.deleteSessionToken();
83
+ // 4. Delete agent keys listed in wallet.db (best-effort)
84
+ deleteAgentKeysFromDb(paths, km);
85
+ // 5. Remove ~/.vess directory
86
+ if (fs.existsSync(paths.baseDir)) {
87
+ log(`Removing ${paths.baseDir}...`);
88
+ fs.rmSync(paths.baseDir, { recursive: true, force: true });
89
+ }
90
+ else {
91
+ log(`${paths.baseDir} does not exist, skipping.`);
92
+ }
93
+ log('');
94
+ log('VESS has been completely uninstalled. Run "vess init" to set up again.');
95
+ }
96
+ function deleteAgentKeysFromDb(paths, km) {
97
+ if (!fs.existsSync(paths.walletDb))
98
+ return;
99
+ try {
100
+ // Dynamic import to avoid hard failure if db is corrupt
101
+ const Database = require('better-sqlite3');
102
+ const db = new Database(paths.walletDb, { readonly: true });
103
+ const rows = db
104
+ .prepare("SELECT project_id, client_name FROM keys WHERE key_type = 'agent' AND project_id IS NOT NULL AND client_name IS NOT NULL")
105
+ .all();
106
+ db.close();
107
+ for (const row of rows) {
108
+ km.deleteAgentKey(row.project_id, row.client_name);
109
+ }
110
+ if (rows.length > 0) {
111
+ log(` Removed ${rows.length} agent key(s) from Keychain.`);
112
+ }
113
+ }
114
+ catch {
115
+ // DB might be corrupt or not fully initialized — that's fine
116
+ }
117
+ }
118
+ function promptConfirm(message) {
119
+ return new Promise((resolve) => {
120
+ if (!process.stdin.isTTY) {
121
+ resolve(false);
122
+ return;
123
+ }
124
+ process.stderr.write(message);
125
+ const stdin = process.stdin;
126
+ stdin.setEncoding('utf-8');
127
+ stdin.resume();
128
+ stdin.once('data', (data) => {
129
+ stdin.pause();
130
+ resolve(data.trim().toLowerCase() === 'y');
131
+ });
132
+ stdin.once('end', () => {
133
+ resolve(false);
134
+ });
135
+ });
136
+ }
137
+ //# sourceMappingURL=reset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reset.js","sourceRoot":"","sources":["../../src/cli/reset.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ export interface RunOptions {
2
+ command: string[];
3
+ profile?: string;
4
+ workingDirectory?: string;
5
+ timeout?: number;
6
+ }
7
+ /**
8
+ * Execute a command with VESS env profile injection.
9
+ *
10
+ * This is the CLI-direct path: the user explicitly runs `vess run` in their terminal.
11
+ * Policy/grant/VC checks are NOT applied here because:
12
+ * - The user has direct shell access and could run any command anyway
13
+ * - Policy enforcement is for the MCP path where AI requests execution
14
+ * - The value of `vess run` is env injection, not access control
15
+ *
16
+ * Note: The profile parameter is logged for clarity. The actual profile used
17
+ * for resolution is determined by the vess://env/<profile>/<key> references
18
+ * in .env. The .env file is expected to contain references to a single
19
+ * profile (created by `vess env import --profile <name>`).
20
+ */
21
+ export declare function runProcessCommand(options: RunOptions): Promise<void>;
22
+ //# sourceMappingURL=run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAqD1E"}