@vibecodr/cli 0.2.11 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (256) hide show
  1. package/CHANGELOG.md +57 -23
  2. package/MIGRATION.md +73 -0
  3. package/README.md +89 -72
  4. package/dist/auth/official-client.d.ts +6 -0
  5. package/dist/auth/official-client.d.ts.map +1 -0
  6. package/dist/auth/official-client.js +1 -0
  7. package/dist/auth/official-client.js.map +1 -0
  8. package/dist/auth/token-manager.d.ts +40 -0
  9. package/dist/auth/token-manager.d.ts.map +1 -0
  10. package/dist/auth/token-manager.js +1 -2
  11. package/dist/auth/token-manager.js.map +1 -0
  12. package/dist/bin/vc-tools.d.ts +3 -0
  13. package/dist/bin/vc-tools.d.ts.map +1 -0
  14. package/dist/bin/vc-tools.js +7 -0
  15. package/dist/bin/vc-tools.js.map +1 -0
  16. package/dist/bin/vibecodr-mcp.d.ts +3 -0
  17. package/dist/bin/vibecodr-mcp.d.ts.map +1 -0
  18. package/dist/bin/vibecodr-mcp.js +37 -0
  19. package/dist/bin/vibecodr-mcp.js.map +1 -0
  20. package/dist/cli/errors.d.ts +28 -0
  21. package/dist/cli/errors.d.ts.map +1 -0
  22. package/dist/cli/errors.js +1 -0
  23. package/dist/cli/errors.js.map +1 -0
  24. package/dist/cli/output.d.ts +16 -0
  25. package/dist/cli/output.d.ts.map +1 -0
  26. package/dist/cli/output.js +1 -0
  27. package/dist/cli/output.js.map +1 -0
  28. package/dist/cli/parse.d.ts +18 -0
  29. package/dist/cli/parse.d.ts.map +1 -0
  30. package/dist/cli/parse.js +1 -0
  31. package/dist/cli/parse.js.map +1 -0
  32. package/dist/clients/base.d.ts +20 -0
  33. package/dist/clients/base.d.ts.map +1 -0
  34. package/dist/clients/base.js +1 -0
  35. package/dist/clients/base.js.map +1 -0
  36. package/dist/clients/claude-code.d.ts +5 -0
  37. package/dist/clients/claude-code.d.ts.map +1 -0
  38. package/dist/clients/claude-code.js +88 -0
  39. package/dist/clients/claude-code.js.map +1 -0
  40. package/dist/clients/claude-desktop.d.ts +5 -0
  41. package/dist/clients/claude-desktop.d.ts.map +1 -0
  42. package/dist/clients/claude-desktop.js +97 -0
  43. package/dist/clients/claude-desktop.js.map +1 -0
  44. package/dist/clients/codex.d.ts +5 -0
  45. package/dist/clients/codex.d.ts.map +1 -0
  46. package/dist/clients/codex.js +1 -0
  47. package/dist/clients/codex.js.map +1 -0
  48. package/dist/clients/cursor.d.ts +5 -0
  49. package/dist/clients/cursor.d.ts.map +1 -0
  50. package/dist/clients/cursor.js +1 -1
  51. package/dist/clients/cursor.js.map +1 -0
  52. package/dist/clients/vscode.d.ts +5 -0
  53. package/dist/clients/vscode.d.ts.map +1 -0
  54. package/dist/clients/vscode.js +5 -1
  55. package/dist/clients/vscode.js.map +1 -0
  56. package/dist/clients/windsurf.d.ts +5 -0
  57. package/dist/clients/windsurf.d.ts.map +1 -0
  58. package/dist/clients/windsurf.js +1 -0
  59. package/dist/clients/windsurf.js.map +1 -0
  60. package/dist/commands/call.d.ts +9 -0
  61. package/dist/commands/call.d.ts.map +1 -0
  62. package/dist/commands/call.js +1 -0
  63. package/dist/commands/call.js.map +1 -0
  64. package/dist/commands/config.d.ts +3 -0
  65. package/dist/commands/config.d.ts.map +1 -0
  66. package/dist/commands/config.js +1 -0
  67. package/dist/commands/config.js.map +1 -0
  68. package/dist/commands/context.d.ts +15 -0
  69. package/dist/commands/context.d.ts.map +1 -0
  70. package/dist/commands/context.js +2 -5
  71. package/dist/commands/context.js.map +1 -0
  72. package/dist/commands/doctor.d.ts +3 -0
  73. package/dist/commands/doctor.d.ts.map +1 -0
  74. package/dist/commands/doctor.js +2 -1
  75. package/dist/commands/doctor.js.map +1 -0
  76. package/dist/commands/help.d.ts +3 -0
  77. package/dist/commands/help.d.ts.map +1 -0
  78. package/dist/commands/help.js +1 -0
  79. package/dist/commands/help.js.map +1 -0
  80. package/dist/commands/install.d.ts +3 -0
  81. package/dist/commands/install.d.ts.map +1 -0
  82. package/dist/commands/install.js +23 -5
  83. package/dist/commands/install.js.map +1 -0
  84. package/dist/commands/login.d.ts +3 -0
  85. package/dist/commands/login.d.ts.map +1 -0
  86. package/dist/commands/login.js +1 -0
  87. package/dist/commands/login.js.map +1 -0
  88. package/dist/commands/logout.d.ts +3 -0
  89. package/dist/commands/logout.d.ts.map +1 -0
  90. package/dist/commands/logout.js +1 -0
  91. package/dist/commands/logout.js.map +1 -0
  92. package/dist/commands/pulse-publish.d.ts +3 -0
  93. package/dist/commands/pulse-publish.d.ts.map +1 -0
  94. package/dist/commands/pulse-publish.js +1 -0
  95. package/dist/commands/pulse-publish.js.map +1 -0
  96. package/dist/commands/pulse-setup.d.ts +3 -0
  97. package/dist/commands/pulse-setup.d.ts.map +1 -0
  98. package/dist/commands/pulse-setup.js +5 -3
  99. package/dist/commands/pulse-setup.js.map +1 -0
  100. package/dist/commands/pulse.d.ts +3 -0
  101. package/dist/commands/pulse.d.ts.map +1 -0
  102. package/dist/commands/pulse.js +1 -0
  103. package/dist/commands/pulse.js.map +1 -0
  104. package/dist/commands/status.d.ts +3 -0
  105. package/dist/commands/status.d.ts.map +1 -0
  106. package/dist/commands/status.js +1 -0
  107. package/dist/commands/status.js.map +1 -0
  108. package/dist/commands/tools.d.ts +3 -0
  109. package/dist/commands/tools.d.ts.map +1 -0
  110. package/dist/commands/tools.js +1 -0
  111. package/dist/commands/tools.js.map +1 -0
  112. package/dist/commands/uninstall.d.ts +3 -0
  113. package/dist/commands/uninstall.d.ts.map +1 -0
  114. package/dist/commands/uninstall.js +12 -4
  115. package/dist/commands/uninstall.js.map +1 -0
  116. package/dist/commands/upload.d.ts +3 -0
  117. package/dist/commands/upload.d.ts.map +1 -0
  118. package/dist/commands/upload.js +1 -0
  119. package/dist/commands/upload.js.map +1 -0
  120. package/dist/commands/whoami.d.ts +3 -0
  121. package/dist/commands/whoami.d.ts.map +1 -0
  122. package/dist/commands/whoami.js +82 -0
  123. package/dist/commands/whoami.js.map +1 -0
  124. package/dist/core/interactive-input.d.ts +7 -0
  125. package/dist/core/interactive-input.d.ts.map +1 -0
  126. package/dist/core/interactive-input.js +1 -0
  127. package/dist/core/interactive-input.js.map +1 -0
  128. package/dist/core/mcp-client.d.ts +17 -0
  129. package/dist/core/mcp-client.d.ts.map +1 -0
  130. package/dist/core/mcp-client.js +1 -0
  131. package/dist/core/mcp-client.js.map +1 -0
  132. package/dist/core/redaction.d.ts +2 -0
  133. package/dist/core/redaction.d.ts.map +1 -0
  134. package/dist/core/redaction.js +36 -2
  135. package/dist/core/redaction.js.map +1 -0
  136. package/dist/core/renderers.d.ts +8 -0
  137. package/dist/core/renderers.d.ts.map +1 -0
  138. package/dist/core/renderers.js +1 -0
  139. package/dist/core/renderers.js.map +1 -0
  140. package/dist/doctor/run.d.ts +10 -0
  141. package/dist/doctor/run.d.ts.map +1 -0
  142. package/dist/doctor/run.js +12 -3
  143. package/dist/doctor/run.js.map +1 -0
  144. package/dist/legacy/cli/errors.d.ts +9 -0
  145. package/dist/legacy/cli/errors.d.ts.map +1 -0
  146. package/dist/legacy/cli/errors.js +23 -0
  147. package/dist/legacy/cli/errors.js.map +1 -0
  148. package/dist/legacy/cli/install.d.ts +24 -0
  149. package/dist/legacy/cli/install.d.ts.map +1 -0
  150. package/dist/legacy/cli/install.js +307 -0
  151. package/dist/legacy/cli/install.js.map +1 -0
  152. package/dist/legacy/cli/output.d.ts +17 -0
  153. package/dist/legacy/cli/output.d.ts.map +1 -0
  154. package/dist/legacy/cli/output.js +36 -0
  155. package/dist/legacy/cli/output.js.map +1 -0
  156. package/dist/legacy/cli/parser.d.ts +33 -0
  157. package/dist/legacy/cli/parser.d.ts.map +1 -0
  158. package/dist/legacy/cli/parser.js +177 -0
  159. package/dist/legacy/cli/parser.js.map +1 -0
  160. package/dist/legacy/cli/run.d.ts +11 -0
  161. package/dist/legacy/cli/run.d.ts.map +1 -0
  162. package/dist/legacy/cli/run.js +2947 -0
  163. package/dist/legacy/cli/run.js.map +1 -0
  164. package/dist/legacy/config/credential-store.d.ts +8 -0
  165. package/dist/legacy/config/credential-store.d.ts.map +1 -0
  166. package/dist/legacy/config/credential-store.js +52 -0
  167. package/dist/legacy/config/credential-store.js.map +1 -0
  168. package/dist/legacy/config/store.d.ts +63 -0
  169. package/dist/legacy/config/store.d.ts.map +1 -0
  170. package/dist/legacy/config/store.js +311 -0
  171. package/dist/legacy/config/store.js.map +1 -0
  172. package/dist/legacy/core/api-client.d.ts +45 -0
  173. package/dist/legacy/core/api-client.d.ts.map +1 -0
  174. package/dist/legacy/core/api-client.js +204 -0
  175. package/dist/legacy/core/api-client.js.map +1 -0
  176. package/dist/legacy/core/contracts.d.ts +488 -0
  177. package/dist/legacy/core/contracts.d.ts.map +1 -0
  178. package/dist/legacy/core/contracts.js +386 -0
  179. package/dist/legacy/core/contracts.js.map +1 -0
  180. package/dist/legacy/core/goal-coverage.d.ts +15 -0
  181. package/dist/legacy/core/goal-coverage.d.ts.map +1 -0
  182. package/dist/legacy/core/goal-coverage.js +169 -0
  183. package/dist/legacy/core/goal-coverage.js.map +1 -0
  184. package/dist/legacy/core/redaction.d.ts +4 -0
  185. package/dist/legacy/core/redaction.d.ts.map +1 -0
  186. package/dist/legacy/core/redaction.js +121 -0
  187. package/dist/legacy/core/redaction.js.map +1 -0
  188. package/dist/legacy/core/validators.d.ts +8 -0
  189. package/dist/legacy/core/validators.d.ts.map +1 -0
  190. package/dist/legacy/core/validators.js +102 -0
  191. package/dist/legacy/core/validators.js.map +1 -0
  192. package/dist/legacy/core/version.d.ts +3 -0
  193. package/dist/legacy/core/version.d.ts.map +1 -0
  194. package/dist/legacy/core/version.js +3 -0
  195. package/dist/legacy/core/version.js.map +1 -0
  196. package/dist/legacy/index.d.ts +8 -0
  197. package/dist/legacy/index.d.ts.map +1 -0
  198. package/dist/legacy/index.js +8 -0
  199. package/dist/legacy/index.js.map +1 -0
  200. package/dist/platform/browser.d.ts +7 -0
  201. package/dist/platform/browser.d.ts.map +1 -0
  202. package/dist/platform/browser.js +1 -0
  203. package/dist/platform/browser.js.map +1 -0
  204. package/dist/platform/exec.d.ts +3 -0
  205. package/dist/platform/exec.d.ts.map +1 -0
  206. package/dist/platform/exec.js +10 -1
  207. package/dist/platform/exec.js.map +1 -0
  208. package/dist/platform/paths.d.ts +9 -0
  209. package/dist/platform/paths.d.ts.map +1 -0
  210. package/dist/platform/paths.js +13 -0
  211. package/dist/platform/paths.js.map +1 -0
  212. package/dist/platform/prompt.d.ts +5 -0
  213. package/dist/platform/prompt.d.ts.map +1 -0
  214. package/dist/platform/prompt.js +1 -0
  215. package/dist/platform/prompt.js.map +1 -0
  216. package/dist/storage/config-store.d.ts +15 -0
  217. package/dist/storage/config-store.d.ts.map +1 -0
  218. package/dist/storage/config-store.js +1 -0
  219. package/dist/storage/config-store.js.map +1 -0
  220. package/dist/storage/file-lock.d.ts +7 -0
  221. package/dist/storage/file-lock.d.ts.map +1 -0
  222. package/dist/storage/file-lock.js +1 -0
  223. package/dist/storage/file-lock.js.map +1 -0
  224. package/dist/storage/install-manifest.d.ts +12 -0
  225. package/dist/storage/install-manifest.d.ts.map +1 -0
  226. package/dist/storage/install-manifest.js +1 -0
  227. package/dist/storage/install-manifest.js.map +1 -0
  228. package/dist/storage/secret-store.d.ts +36 -0
  229. package/dist/storage/secret-store.d.ts.map +1 -0
  230. package/dist/storage/secret-store.js +1 -0
  231. package/dist/storage/secret-store.js.map +1 -0
  232. package/dist/types/auth.d.ts +55 -0
  233. package/dist/types/auth.d.ts.map +1 -0
  234. package/dist/types/auth.js +1 -0
  235. package/dist/types/auth.js.map +1 -0
  236. package/dist/types/config.d.ts +29 -0
  237. package/dist/types/config.d.ts.map +1 -0
  238. package/dist/types/config.js +1 -0
  239. package/dist/types/config.js.map +1 -0
  240. package/dist/types/install.d.ts +26 -0
  241. package/dist/types/install.d.ts.map +1 -0
  242. package/dist/types/install.js +1 -0
  243. package/dist/types/install.js.map +1 -0
  244. package/docs/API-CONTRACT.md +606 -0
  245. package/docs/CLOUDFLARE-PRIMITIVE-FIT.md +212 -0
  246. package/docs/RELEASE-CHECKLIST.md +297 -0
  247. package/docs/SECURITY.md +227 -0
  248. package/docs/VALIDATION-MATRIX.md +58 -0
  249. package/docs/commands.md +49 -29
  250. package/docs/legacy/AGENT-TOOLKIT-RFC.md +1395 -0
  251. package/docs/legacy/CLI-GUIDELINES-AUDIT.md +95 -0
  252. package/docs/legacy/COMPLETION-AUDIT.md +542 -0
  253. package/docs/legacy/vc-tools-finetune.md +982 -0
  254. package/docs/legacy/vc-tools-goal-browser-run-containers.md +465 -0
  255. package/docs/legacy/vc-tools-goal-original.md +249 -0
  256. package/package.json +37 -8
package/CHANGELOG.md CHANGED
@@ -1,26 +1,60 @@
1
- # Changelog
2
-
3
- ## 0.2.11
4
-
5
- - add `vibecodr call --timeout-sec <n>` as a local MCP transport timeout for long-running protected tool calls such as build-backed publish retries
6
- - keep `--timeout-sec` out of server tool arguments so hosted MCP schemas remain authoritative
7
-
8
- ## 0.2.6
9
-
10
- - publish a fresh CLI version so GitHub and npm carry the same current release marker
11
-
12
- ## 0.2.5
13
-
14
- - refresh release lockfile coverage before publishing the CLI
15
-
16
- ## 0.2.4
17
-
18
- - clarify staged ZIP upload output so larger projects can move into Vibecodr's async heavy import lane automatically
19
- - keep worker-gateway integration fixtures aligned with pulse compute quota fields
20
-
21
- ## 0.2.2
22
-
23
- - show command-specific help for nested `vibecodr pulse <command> --help|-h|-help` requests
1
+ # Changelog
2
+
3
+ ## 1.0.0
4
+
5
+ Same source as 1.0.0-rc.0. Promoted to `latest` after the rc.0 release cleared smoke against the production endpoints (tools.vibecodr.space + openai.vibecodr.space/mcp) and the §14 output-baseline fixtures matched byte-for-byte.
6
+
7
+ ## 1.0.0-rc.0
8
+
9
+ First release candidate of the unified Vibecodr CLI. Merges @vibecodr/vc-tools@0.1.4 and @vibecodr/cli@0.2.11 into a single coordinated release.
10
+
11
+ ### Added
12
+
13
+ - Single package `@vibecodr/cli` with three bin entries that all resolve to the same install tree:
14
+ - `vibecodr` canonical (MCP gateway commands + hosted Agent Computer cross-routed)
15
+ - `vibecodr-mcp` — compatibility alias preserved from 0.2.x
16
+ - `vc-tools` — compatibility alias for the legacy vc-tools surface, byte-equivalent output to vc-tools@0.1.4
17
+ - Hosted Agent Computer commands (start, browser, computer, work, proof, usage, plans, dashboard, jobs, artifacts, agent, connect, try, etc.) now reachable from the `vibecodr` bin via legacy-dispatcher cross-routing.
18
+ - New MCP install adapter `claude-code` (alongside codex, cursor, vscode, windsurf, claude-desktop).
19
+ - Cloudflare worker source, wrangler config, D1 migrations, and Dockerfile vendored from vc-tools so a single repo owns the CLI and its hosted worker.
20
+
21
+ ### Preserved (frozen)
22
+
23
+ - `vc-tools` binary, `vibecodr-mcp` binary, all existing env vars (`VC_TOOLS_*`, `VIBECDR_MCP_*`), keyring service IDs (`@vibecodr/vc-tools` and `@vibecodr/mcp`), config dirs, install-manifest schema, and hosted worker contracts (D1 binding, JWT claims, route paths, page slugs).
24
+ - Output JSON shape for every command captured in test/fixtures/output-baseline/ as the §14 regression contract.
25
+
26
+ ### Migrated
27
+
28
+ - From @vibecodr/cli@0.2.x (no behavior change): login, logout, status, whoami, tools, call, upload, doctor, install, uninstall, config, pulse-setup, pulse-publish, pulse.
29
+ - From @vibecodr/vc-tools@0.1.x (no behavior change for vc-tools bin; new cross-routing from vibecodr bin): start, setup, try, agent, connect, computer, browser, work, proof, usage, limits, dashboard, jobs, artifacts, grants, retention, scheduled-qa, plans, inspect, auth.
30
+
31
+ ### Deprecated
32
+
33
+ - `@vibecodr/vc-tools` npm package becomes a thin forwarder at 0.2.0. Plan: `npm deprecate` 90 days after this release.
34
+
35
+ See MIGRATION.md for upgrade guidance.
36
+
37
+ ## 0.2.11
38
+
39
+ - add `vibecodr call --timeout-sec <n>` as a local MCP transport timeout for long-running protected tool calls such as build-backed publish retries
40
+ - keep `--timeout-sec` out of server tool arguments so hosted MCP schemas remain authoritative
41
+
42
+ ## 0.2.6
43
+
44
+ - publish a fresh CLI version so GitHub and npm carry the same current release marker
45
+
46
+ ## 0.2.5
47
+
48
+ - refresh release lockfile coverage before publishing the CLI
49
+
50
+ ## 0.2.4
51
+
52
+ - clarify staged ZIP upload output so larger projects can move into Vibecodr's async heavy import lane automatically
53
+ - keep worker-gateway integration fixtures aligned with pulse compute quota fields
54
+
55
+ ## 0.2.2
56
+
57
+ - show command-specific help for nested `vibecodr pulse <command> --help|-h|-help` requests
24
58
 
25
59
  ## 0.2.1
26
60
 
package/MIGRATION.md ADDED
@@ -0,0 +1,73 @@
1
+ # Migrating to @vibecodr/cli v1
2
+
3
+ `@vibecodr/cli@1.0.0` merges the former `@vibecodr/vc-tools@0.1.x` package and the former `@vibecodr/cli@0.2.x` package into a single coordinated release. Three bin entries — `vibecodr`, `vibecodr-mcp`, and `vc-tools` — all resolve to the same install tree, and every contract that crosses a process or network boundary is frozen.
4
+
5
+ You should not need to change anything to keep working. This page documents the back-compat guarantees and the small set of *additions* you can opt into.
6
+
7
+ ## If you used `vc-tools`
8
+
9
+ You installed `npm install -g @vibecodr/vc-tools` and your scripts run `vc-tools start`, `vc-tools browser screenshot ...`, `vc-tools computer run ...`, etc.
10
+
11
+ **What stays the same:**
12
+
13
+ - Every `vc-tools <command> [...]` invocation continues to work, byte-equivalent JSON output, byte-equivalent exit codes. The §14 output-baseline regression contract checks this on every release.
14
+ - Your durable API key in the OS keychain remains under the service ID `@vibecodr/vc-tools` (username `agent-computer`). No re-login is required after upgrade.
15
+ - Your config dir continues to be `%APPDATA%\vc-tools\` on Windows and `$XDG_CONFIG_HOME/vc-tools/` on macOS/Linux. `VC_TOOLS_CONFIG_DIR` and `VC_TOOLS_CREDENTIAL_STORE` env vars work unchanged.
16
+ - The hosted worker endpoint `tools.vibecodr.space` is unchanged. All HTTP routes (`/auth/vc-tools/device/*`, `/me/api-keys/vc-tools/*`) are frozen. JWT claims (`grant_profile="vc_tools"`, `aud="vibecodr:vc-tools"`) are frozen. The Clerk-managed API key is still labeled `"vc-tools Agent Computer"`.
17
+
18
+ **What's new (opt-in):**
19
+
20
+ - You can install the same package as `npm install -g @vibecodr/cli` instead of `@vibecodr/vc-tools`. The bin name `vc-tools` still resolves; the help banner adds a one-line "this is now part of @vibecodr/cli" footnote.
21
+ - `@vibecodr/vc-tools` itself becomes a thin forwarder at version 0.2.0 that depends on `@vibecodr/cli`. Existing pinned installs (`@vibecodr/vc-tools@0.1.4`) continue to work; the 0.2.0 forwarder lets `npm i @vibecodr/vc-tools` (no version) drag in the merged CLI for users who type the legacy package name from memory.
22
+
23
+ **What you can update in CI (no rush):**
24
+
25
+ - Switch your install command to `npm install -g @vibecodr/cli`. The bin entry `vc-tools` is still mapped, so no script changes are required.
26
+ - Optionally call the same commands as `vibecodr <command>` (instead of `vc-tools <command>`). The `vibecodr` bin cross-routes the full hosted Agent Computer command set (start, agent, connect, computer, browser, work, proof, usage, plans, jobs, artifacts, etc.) to the same code path that `vc-tools` uses.
27
+
28
+ ## If you used `vibecodr-mcp`
29
+
30
+ You installed `npm install -g @vibecodr/cli` and your scripts run `vibecodr-mcp login`, `vibecodr-mcp tools`, `vibecodr-mcp pulse-publish ...`, etc.
31
+
32
+ **What stays the same:**
33
+
34
+ - Every `vibecodr-mcp <command>` invocation continues to work unchanged.
35
+ - Your encrypted OAuth session continues to live in the same secret-store location (`%APPDATA%\Vibecodr\MCP\secrets\` on Windows, `~/Library/Application Support/Vibecodr MCP/secrets/` on macOS, `$XDG_CONFIG_HOME/vibecodr-mcp/secrets/` on Linux). Keyring service ID stays `@vibecodr/mcp`. No re-login is required after upgrade.
36
+ - The hosted MCP gateway endpoint `openai.vibecodr.space/mcp` is unchanged.
37
+ - `VIBECDR_MCP_*` env vars (`VIBECDR_MCP_CONFIG_PATH`, `VIBECDR_MCP_CIMD_CLIENT_ID`, `VIBECDR_MCP_MANUAL_CLIENT_ID`, `VIBECDR_MCP_INSTALL_MANIFEST_PATH`, etc.) work unchanged.
38
+
39
+ **What's new:**
40
+
41
+ - `vibecodr install claude-code` is a new MCP install adapter; uses `claude mcp add --transport http <name> <serverUrl>` and registers the install in the install manifest for later `vibecodr uninstall claude-code`.
42
+
43
+ ## If you used `vibecodr`
44
+
45
+ You installed `npm install -g @vibecodr/cli` and your scripts run `vibecodr login`, `vibecodr install codex`, `vibecodr tools`, etc.
46
+
47
+ **What stays the same:**
48
+
49
+ - All commands you currently run continue to work, byte-equivalent output.
50
+
51
+ **What's new:**
52
+
53
+ - `vibecodr <command>` now also accepts the full hosted Agent Computer surface (start, browser, computer, work, proof, usage, plans, dashboard, agent, connect, try, jobs, artifacts, grants, retention, scheduled-qa, inspect, auth). These commands cross-route to `tools.vibecodr.space` using the legacy vc-tools code path so output is byte-equivalent to the `vc-tools <command>` form.
54
+ - `vibecodr install claude-code` is supported (see above).
55
+
56
+ ## What you absolutely do not need to change
57
+
58
+ The following identifiers and contracts are frozen in this release and intentionally retain their `vc-tools` or `vibecodr-mcp` names:
59
+
60
+ - Bin names: `vc-tools`, `vibecodr-mcp` (and the new `vibecodr`)
61
+ - Env var prefixes: `VC_TOOLS_*`, `VIBECDR_MCP_*`
62
+ - Keyring service IDs: `@vibecodr/vc-tools`, `@vibecodr/mcp`
63
+ - OS Keychain entry names: `vc-tools Agent Computer`
64
+ - Cloudflare worker route paths: `/auth/vc-tools/device/*`, `/me/api-keys/vc-tools/*`
65
+ - Hosted worker D1 database binding: `vc-tools-db`
66
+ - JWT audience claims: `vibecodr:vc-tools`, `vibecodr:cli`
67
+ - JWT grant profile claims: `vc_tools`, `publish_assistant`
68
+ - Marketing page slugs: `/vc-tools`, `/docs/vc-tools`, `/settings/vc-tools/approve`
69
+ - Query parameter `vc_tools_code` on the device-approval page
70
+ - Plan schema field `vcTools`
71
+ - D1 schema columns named `vcTools*`
72
+
73
+ These names are how scripts, signed grants, deployed configurations, and bookmarked URLs reference the surface today. Renaming any of them would break live users. Treat them as permanent.
package/README.md CHANGED
@@ -1,72 +1,89 @@
1
- # ACTIVE DEVELOPMENT - USE AT YOUR OWN RISK #
2
-
3
-
4
-
5
-
6
- # Vibecodr CLI
7
-
8
- Direct terminal client for the hosted Vibecodr MCP server.
9
-
10
- This repository is intentionally separate from the PolyForm-licensed server implementation. The CLI is a client and installer surface, not a second server. It talks to the same hosted Vibecodr MCP gateway used by Codex, Cursor, VS Code, Windsurf, ChatGPT, and other MCP-capable clients.
11
-
12
- The CLI is the permissively licensed public client surface for:
13
-
14
- - direct CLI OAuth login
15
- - live MCP tool discovery
16
- - live MCP tool invocation
17
- - direct-to-R2 staged ZIP and image uploads without base64 payloads
18
- - environment and auth diagnostics
19
- - thin client install and uninstall adapters
20
-
21
- Currently implemented command surface:
22
-
23
- - `login`
24
- - `logout`
25
- - `status`
26
- - `tools`
27
- - `call`
28
- - `upload`
29
- - `pulse-setup`
30
- - `pulse-publish`
31
- - `pulse`
32
- - `doctor`
33
- - `config`
34
- - `install`
35
- - `uninstall`
36
-
37
- Primary executable:
38
-
39
- - `vibecodr`
40
-
41
- Compatibility alias:
42
-
43
- - `vibecodr-mcp`
44
-
45
- Published package:
46
-
47
- - `@vibecodr/cli`
48
-
49
- Legacy package compatibility:
50
-
51
- - `@vibecodr/mcp`
52
-
53
- The runtime path talks directly to `https://openai.vibecodr.space/mcp`. Editor installers are not part of the runtime path.
54
-
55
- CLI login authenticates this CLI only. It does not share token storage with Codex, Cursor, VS Code, Windsurf, ChatGPT, or other MCP clients; those clients own their own OAuth sessions against the same server.
56
-
57
- The official production auth path is now committed in package code through the server-hosted client metadata document:
58
-
59
- - `https://openai.vibecodr.space/.well-known/oauth-client/vibecodr-mcp.json`
60
-
61
- Pulse lifecycle commands use the hosted MCP gateway as the authority boundary. The CLI redacts source, descriptor, token, secret, and inline file-content fields from local output, but the server still enforces OAuth, owner scoping, confirmation, no-delete policy, and model-safe response shaping for direct MCP callers.
62
-
63
- Documentation:
64
-
65
- - [docs/auth.md](docs/auth.md)
66
- - [docs/architecture.md](docs/architecture.md)
67
- - [docs/install.md](docs/install.md)
68
- - [docs/clients.md](docs/clients.md)
69
- - [docs/commands.md](docs/commands.md)
70
- - [docs/troubleshooting.md](docs/troubleshooting.md)
71
- - [docs/contributors.md](docs/contributors.md)
72
- - [docs/licensing.md](docs/licensing.md)
1
+ # Vibecodr CLI
2
+
3
+ [![npm](https://img.shields.io/npm/v/@vibecodr/cli.svg)](https://npmjs.com/package/@vibecodr/cli)
4
+
5
+ The official Vibecodr CLI. One package, one install command, one coherent surface for:
6
+
7
+ - Hosted browser tools (render, screenshot, PDF, crawl, snapshot, ask).
8
+ - Hosted computer tools (run, test, work follow, work submit, proof).
9
+ - Capsule uploads (zip + image) into Pulse and the hosted MCP gateway.
10
+ - Pulse lifecycle (setup, publish, list, get, status, run, archive, restore, create, deploy).
11
+ - Agent-client MCP installation (Codex, Cursor, VS Code, Windsurf, Claude Desktop, Claude Code).
12
+ - Direct OAuth login, device-code login, status, doctor, diagnostics.
13
+
14
+ ## Install
15
+
16
+ ```bash
17
+ npm install -g @vibecodr/cli
18
+ ```
19
+
20
+ This installs three bin entries that all point at the same dispatcher:
21
+
22
+ - `vibecodr` — canonical name. The full unified command surface.
23
+ - `vibecodr-mcp` — compatibility alias for users coming from `@vibecodr/cli@0.2.x`.
24
+ - `vc-tools` — compatibility alias for users coming from `@vibecodr/vc-tools@0.1.x`. Produces byte-equivalent output to the standalone vc-tools binary on every hosted Agent Computer command.
25
+
26
+ You can also install the legacy tombstone package; it forwards to the same dispatcher:
27
+
28
+ ```bash
29
+ npm install -g @vibecodr/vc-tools
30
+ ```
31
+
32
+ Pin to a specific version (recommended for CI):
33
+
34
+ ```bash
35
+ npm install -g @vibecodr/cli@1.0.0
36
+ ```
37
+
38
+ ## Quick start
39
+
40
+ ```bash
41
+ # 1. Authenticate against the hosted Agent Computer (tools.vibecodr.space).
42
+ vibecodr start
43
+
44
+ # 2. Tell your agent client how to find the hosted MCP gateway (openai.vibecodr.space/mcp).
45
+ vibecodr connect --client codex
46
+
47
+ # 3. Smoke-test the connection.
48
+ vibecodr computer status
49
+ vibecodr browser screenshot https://example.com --out ./proof
50
+ ```
51
+
52
+ ## Surfaces
53
+
54
+ The CLI talks to two hosted endpoints. Every command targets exactly one of them:
55
+
56
+ | Endpoint | Commands |
57
+ |---|---|
58
+ | `tools.vibecodr.space` | `start`, `setup`, `agent`, `connect`, `try`, `browser`, `computer`, `work`, `proof`, `jobs`, `artifacts`, `usage`, `limits`, `grants`, `retention`, `scheduled-qa`, `plans`, `dashboard`, `inspect` |
59
+ | `openai.vibecodr.space/mcp` | `tools`, `call`, `upload`, `pulse`, `pulse-setup`, `pulse-publish` |
60
+ | Both | `login`, `logout`, `status`, `whoami`, `doctor`, `install`, `uninstall`, `config` |
61
+
62
+ CLI auth is independent of the auth your editor (Codex, Cursor, VS Code, Windsurf, Claude Desktop, Claude Code) negotiates with the gateway; each client owns its own session.
63
+
64
+ ## Migrating from `@vibecodr/vc-tools@0.1.x` or `@vibecodr/cli@0.2.x`
65
+
66
+ You should not need to change anything. Every bin name, env var prefix (`VC_TOOLS_*`, `VIBECDR_MCP_*`), keyring service ID (`@vibecodr/vc-tools`, `@vibecodr/mcp`), config dir, Cloudflare worker route, JWT claim, page slug, and durable API key remains addressable. See [MIGRATION.md](MIGRATION.md) for the three-section breakdown.
67
+
68
+ ## Documentation
69
+
70
+ - [docs/auth.md](docs/auth.md) — auth flows, env vars, profiles.
71
+ - [docs/architecture.md](docs/architecture.md) — endpoints, surfaces, contract boundaries.
72
+ - [docs/install.md](docs/install.md) — agent-client install adapters.
73
+ - [docs/clients.md](docs/clients.md) — Codex, Cursor, VS Code, Windsurf, Claude Desktop, Claude Code.
74
+ - [docs/commands.md](docs/commands.md) — command reference.
75
+ - [docs/troubleshooting.md](docs/troubleshooting.md) — common error codes.
76
+ - [docs/contributors.md](docs/contributors.md) — repo layout and dev loop.
77
+ - [docs/licensing.md](docs/licensing.md) — Apache-2.0 details.
78
+ - [docs/API-CONTRACT.md](docs/API-CONTRACT.md) — hosted worker contract.
79
+ - [docs/SECURITY.md](docs/SECURITY.md) — trust boundary.
80
+ - [docs/VALIDATION-MATRIX.md](docs/VALIDATION-MATRIX.md) — goal coverage map.
81
+
82
+ ## Repository status
83
+
84
+ This repository is the unified home of the Vibecodr CLI. It ships:
85
+
86
+ - The published npm package `@vibecodr/cli`.
87
+ - The Cloudflare worker source for `tools.vibecodr.space` (in `src/hosted/`) and the matching D1 migrations (in `migrations/`).
88
+
89
+ Apache-2.0 licensed.
@@ -0,0 +1,6 @@
1
+ import type { OAuthClientInformationMixed } from "@modelcontextprotocol/sdk/shared/auth.js";
2
+ export declare const OFFICIAL_SERVER_URL = "https://openai.vibecodr.space/mcp";
3
+ export declare const OFFICIAL_CLIENT_METADATA_URL = "https://openai.vibecodr.space/.well-known/oauth-client/vibecodr-mcp.json";
4
+ export declare function isOfficialServer(serverUrl: string): boolean;
5
+ export declare function officialClientInformation(): OAuthClientInformationMixed;
6
+ //# sourceMappingURL=official-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"official-client.d.ts","sourceRoot":"","sources":["../../src/auth/official-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AAE5F,eAAO,MAAM,mBAAmB,sCAAsC,CAAC;AACvE,eAAO,MAAM,4BAA4B,6EAA6E,CAAC;AAEvH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAgB,yBAAyB,IAAI,2BAA2B,CAIvE"}
@@ -8,3 +8,4 @@ export function officialClientInformation() {
8
8
  client_id: OFFICIAL_CLIENT_METADATA_URL
9
9
  };
10
10
  }
11
+ //# sourceMappingURL=official-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"official-client.js","sourceRoot":"","sources":["../../src/auth/official-client.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,mBAAmB,GAAG,mCAAmC,CAAC;AACvE,MAAM,CAAC,MAAM,4BAA4B,GAAG,0EAA0E,CAAC;AAEvH,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAChD,OAAO,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,mBAAmB,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,yBAAyB;IACvC,OAAO;QACL,SAAS,EAAE,4BAA4B;KACxC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { ConfigStore } from "../storage/config-store.js";
2
+ import { SecretStore } from "../storage/secret-store.js";
3
+ import type { DiscoveryResult, LoginResult, RefreshResult, SessionRecord } from "../types/auth.js";
4
+ import type { BrowserMode, GlobalOptions, ProfileConfig, RegistrationMode, SessionState } from "../types/config.js";
5
+ export declare class TokenManager {
6
+ private readonly configStore;
7
+ private readonly secretStore;
8
+ constructor(configStore: ConfigStore, secretStore: SecretStore);
9
+ resolveProfile(globalOptions: GlobalOptions): Promise<{
10
+ profileName: string;
11
+ profile: ProfileConfig;
12
+ serverUrl: string;
13
+ }>;
14
+ getSession(profileName: string, serverUrl?: string): Promise<SessionRecord | undefined>;
15
+ sessionState(session: SessionRecord | undefined): SessionState;
16
+ discover(serverUrl: string): Promise<DiscoveryResult>;
17
+ login(globalOptions: GlobalOptions, options?: {
18
+ scope?: string | undefined;
19
+ registrationMode?: RegistrationMode | undefined;
20
+ browserMode?: BrowserMode | undefined;
21
+ timeoutSec?: number | undefined;
22
+ onLoopbackReady?: (redirectUrl: string) => void;
23
+ onAuthorizationUrl?: (url: string) => void;
24
+ }): Promise<LoginResult>;
25
+ ensureSession(globalOptions: GlobalOptions, options?: {
26
+ allowInteractiveLogin?: boolean;
27
+ }): Promise<SessionRecord>;
28
+ refresh(profileName: string, session: SessionRecord): Promise<RefreshResult>;
29
+ logout(profileName: string, options?: {
30
+ noRevoke?: boolean;
31
+ }): Promise<{
32
+ localTokensDeleted: boolean;
33
+ revocationAttempted: boolean;
34
+ revocationConfirmed: boolean;
35
+ }>;
36
+ private prepareAuthorization;
37
+ private resolveRegistrationMode;
38
+ private resolveClientInformation;
39
+ }
40
+ //# sourceMappingURL=token-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-manager.d.ts","sourceRoot":"","sources":["../../src/auth/token-manager.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEzD,OAAO,KAAK,EAEV,eAAe,EACf,WAAW,EAEX,aAAa,EACb,aAAa,EACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAmIpH,qBAAa,YAAY;IAErB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,WAAW;gBADX,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW;IAGrC,cAAc,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,aAAa,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IASzH,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IAS7F,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS,GAAG,YAAY;IASxD,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAgBrD,KAAK,CACT,aAAa,EAAE,aAAa,EAC5B,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC3B,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;QAChD,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;QACtC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAChC,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;QAChD,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;KAC5C,GACA,OAAO,CAAC,WAAW,CAAC;IA8EjB,aAAa,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE;QAAE,qBAAqB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IA2BlH,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IA6C5E,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,kBAAkB,EAAE,OAAO,CAAC;QAAC,mBAAmB,EAAE,OAAO,CAAC;QAAC,mBAAmB,EAAE,OAAO,CAAA;KAAE,CAAC;YAgD3J,oBAAoB;YA8CpB,uBAAuB;YAiBvB,wBAAwB;CAwDvC"}
@@ -5,8 +5,6 @@ import { discoverOAuthServerInfo, exchangeAuthorization, refreshAuthorization, r
5
5
  import { CliError, EXIT_CODES } from "../cli/errors.js";
6
6
  import { openExternalUrl } from "../platform/browser.js";
7
7
  import { isInteractiveTerminal, promptText } from "../platform/prompt.js";
8
- import { ConfigStore } from "../storage/config-store.js";
9
- import { SecretStore } from "../storage/secret-store.js";
10
8
  import { isOfficialServer, officialClientInformation } from "./official-client.js";
11
9
  const CIMD_CLIENT_ID = (process.env["VIBECDR_MCP_CIMD_CLIENT_ID"] || "").trim();
12
10
  const MANUAL_CLIENT_ID = (process.env["VIBECDR_MCP_MANUAL_CLIENT_ID"] || "").trim();
@@ -463,3 +461,4 @@ export class TokenManager {
463
461
  }
464
462
  }
465
463
  }
464
+ //# sourceMappingURL=token-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-manager.js","sourceRoot":"","sources":["../../src/auth/token-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=vc-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vc-tools.d.ts","sourceRoot":"","sources":["../../src/bin/vc-tools.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env node
2
+ process.env["__VCR_INVOKED_AS"] = "vc-tools";
3
+ const { runCli } = await import("../legacy/cli/run.js");
4
+ const code = await runCli(process.argv.slice(2));
5
+ process.exitCode = code;
6
+ export {};
7
+ //# sourceMappingURL=vc-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vc-tools.js","sourceRoot":"","sources":["../../src/bin/vc-tools.ts"],"names":[],"mappings":";AACA,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,GAAG,UAAU,CAAC;AAC7C,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;AACxD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=vibecodr-mcp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vibecodr-mcp.d.ts","sourceRoot":"","sources":["../../src/bin/vibecodr-mcp.ts"],"names":[],"mappings":""}
@@ -9,6 +9,7 @@ import { CliError, EXIT_CODES } from "../cli/errors.js";
9
9
  import { runLoginCommand } from "../commands/login.js";
10
10
  import { runLogoutCommand } from "../commands/logout.js";
11
11
  import { runStatusCommand } from "../commands/status.js";
12
+ import { runWhoamiCommand } from "../commands/whoami.js";
12
13
  import { runToolsCommand } from "../commands/tools.js";
13
14
  import { runCallCommand } from "../commands/call.js";
14
15
  import { runDoctorCommand } from "../commands/doctor.js";
@@ -28,6 +29,7 @@ function helpText() {
28
29
  " login",
29
30
  " logout",
30
31
  " status",
32
+ " whoami",
31
33
  " tools [tool-name]",
32
34
  " call <tool-name>",
33
35
  " upload --zip <path>",
@@ -85,6 +87,9 @@ async function main() {
85
87
  case "status":
86
88
  await runStatusCommand(commandArgs, context);
87
89
  return;
90
+ case "whoami":
91
+ await runWhoamiCommand(commandArgs, context);
92
+ return;
88
93
  case "tools":
89
94
  await runToolsCommand(commandArgs, context);
90
95
  return;
@@ -116,10 +121,42 @@ async function main() {
116
121
  await runPulseCommand(commandArgs, context);
117
122
  return;
118
123
  default:
124
+ if (VC_TOOLS_ONLY_COMMANDS.has(command)) {
125
+ // Vibecodr v1 surfaces the hosted Agent Computer commands (browser, computer,
126
+ // work, etc.) through both the vibecodr and vc-tools bin names. The legacy
127
+ // vc-tools dispatcher owns the byte-equivalent output, so delegate to it.
128
+ const { runCli } = await import("../legacy/cli/run.js");
129
+ const code = await runCli(process.argv.slice(2));
130
+ process.exitCode = code;
131
+ return;
132
+ }
119
133
  throw new CliError("usage.command", `Unknown command: ${command}`, EXIT_CODES.usage);
120
134
  }
121
135
  }
136
+ const VC_TOOLS_ONLY_COMMANDS = new Set([
137
+ "start",
138
+ "setup",
139
+ "try",
140
+ "agent",
141
+ "auth",
142
+ "connect",
143
+ "computer",
144
+ "browser",
145
+ "work",
146
+ "proof",
147
+ "usage",
148
+ "limits",
149
+ "dashboard",
150
+ "jobs",
151
+ "artifacts",
152
+ "grants",
153
+ "retention",
154
+ "scheduled-qa",
155
+ "plans",
156
+ "inspect"
157
+ ]);
122
158
  main().catch((error) => {
123
159
  const { globalOptions } = parseGlobalOptions(process.argv.slice(2));
124
160
  new Output(globalOptions).failure(error);
125
161
  });
162
+ //# sourceMappingURL=vibecodr-mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vibecodr-mcp.js","sourceRoot":"","sources":["../../src/bin/vibecodr-mcp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ export declare const EXIT_CODES: {
2
+ readonly runtime: 1;
3
+ readonly usage: 2;
4
+ readonly config: 3;
5
+ readonly authRequired: 4;
6
+ readonly authFailed: 5;
7
+ readonly network: 6;
8
+ readonly protocol: 7;
9
+ readonly toolFailed: 8;
10
+ readonly unsupportedClient: 9;
11
+ readonly installConflict: 10;
12
+ readonly secretStoreUnavailable: 11;
13
+ readonly canceled: 12;
14
+ };
15
+ export type ExitCode = (typeof EXIT_CODES)[keyof typeof EXIT_CODES];
16
+ export declare class CliError extends Error {
17
+ readonly exitCode: ExitCode;
18
+ readonly machineCode: string;
19
+ readonly nextStep?: string | undefined;
20
+ readonly debugDetails?: unknown;
21
+ constructor(machineCode: string, message: string, exitCode: ExitCode, options?: {
22
+ nextStep?: string;
23
+ debugDetails?: unknown;
24
+ cause?: unknown;
25
+ });
26
+ }
27
+ export declare function asCliError(error: unknown): CliError;
28
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/cli/errors.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU;;;;;;;;;;;;;CAab,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAEpE,qBAAa,QAAS,SAAQ,KAAK;IACjC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;gBAG9B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB;CASJ;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,CAQnD"}
@@ -36,3 +36,4 @@ export function asCliError(error) {
36
36
  }
37
37
  return new CliError("runtime.unexpected", String(error), EXIT_CODES.runtime);
38
38
  }
39
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/cli/errors.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,YAAY,EAAE,CAAC;IACf,UAAU,EAAE,CAAC;IACb,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,iBAAiB,EAAE,CAAC;IACpB,eAAe,EAAE,EAAE;IACnB,sBAAsB,EAAE,EAAE;IAC1B,QAAQ,EAAE,EAAE;CACJ,CAAC;AAIX,MAAM,OAAO,QAAS,SAAQ,KAAK;IACxB,QAAQ,CAAW;IACnB,WAAW,CAAS;IACpB,QAAQ,CAAsB;IAC9B,YAAY,CAAW;IAEhC,YACE,WAAmB,EACnB,OAAe,EACf,QAAkB,EAClB,OAIC;QAED,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACtE,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,OAAO,EAAE,QAAQ,CAAC;QAClC,IAAI,CAAC,YAAY,GAAG,OAAO,EAAE,YAAY,CAAC;IAC5C,CAAC;CACF;AAED,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,IAAI,KAAK,YAAY,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,IAAI,QAAQ,CAAC,oBAAoB,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE;YAC3E,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IACD,OAAO,IAAI,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;AAC/E,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { GlobalOptions } from "../types/config.js";
2
+ export interface JsonEnvelope {
3
+ schemaVersion: 1;
4
+ [key: string]: unknown;
5
+ }
6
+ export declare class Output {
7
+ private readonly options;
8
+ constructor(options: GlobalOptions);
9
+ write(value: string): void;
10
+ info(message: string): void;
11
+ warn(message: string): void;
12
+ json(value: JsonEnvelope): void;
13
+ success(value: JsonEnvelope, humanLines: string[]): void;
14
+ failure(error: unknown): never;
15
+ }
16
+ //# sourceMappingURL=output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/cli/output.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,CAAC,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,qBAAa,MAAM;IACL,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,aAAa;IAEnD,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI1B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI3B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI3B,IAAI,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAI/B,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;IAQxD,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK;CAqB/B"}