cohvu 2.1.0 → 2.2.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 (102) hide show
  1. package/dist/api.d.ts +44 -26
  2. package/dist/api.js +43 -59
  3. package/dist/api.js.map +1 -1
  4. package/dist/auth.d.ts +2 -13
  5. package/dist/auth.js +41 -105
  6. package/dist/auth.js.map +1 -1
  7. package/dist/constants.d.ts +1 -0
  8. package/dist/constants.js +2 -0
  9. package/dist/constants.js.map +1 -0
  10. package/dist/index.js +59 -103
  11. package/dist/index.js.map +1 -1
  12. package/dist/instructions.d.ts +2 -2
  13. package/dist/instructions.js +22 -26
  14. package/dist/instructions.js.map +1 -1
  15. package/dist/platforms.js +22 -25
  16. package/dist/platforms.js.map +1 -1
  17. package/dist/proxy.js +26 -14
  18. package/dist/proxy.js.map +1 -1
  19. package/dist/setup.d.ts +0 -1
  20. package/dist/setup.js +43 -75
  21. package/dist/setup.js.map +1 -1
  22. package/dist/tui/App.d.ts +1 -0
  23. package/dist/tui/App.js +1091 -0
  24. package/dist/tui/App.js.map +1 -0
  25. package/dist/tui/components/Banner.d.ts +4 -0
  26. package/dist/tui/components/Banner.js +78 -0
  27. package/dist/tui/components/Banner.js.map +1 -0
  28. package/dist/tui/components/Divider.d.ts +1 -0
  29. package/dist/tui/components/Divider.js +7 -0
  30. package/dist/tui/components/Divider.js.map +1 -0
  31. package/dist/tui/components/Footer.d.ts +4 -0
  32. package/dist/tui/components/Footer.js +143 -0
  33. package/dist/tui/components/Footer.js.map +1 -0
  34. package/dist/tui/components/Header.d.ts +4 -0
  35. package/dist/tui/components/Header.js +53 -0
  36. package/dist/tui/components/Header.js.map +1 -0
  37. package/dist/tui/components/Modal.d.ts +5 -0
  38. package/dist/tui/components/Modal.js +99 -0
  39. package/dist/tui/components/Modal.js.map +1 -0
  40. package/dist/tui/components/TabBar.d.ts +4 -0
  41. package/dist/tui/components/TabBar.js +16 -0
  42. package/dist/tui/components/TabBar.js.map +1 -0
  43. package/dist/tui/components/Toast.d.ts +4 -0
  44. package/dist/tui/components/Toast.js +9 -0
  45. package/dist/tui/components/Toast.js.map +1 -0
  46. package/dist/tui/index.js +19 -0
  47. package/dist/tui/index.js.map +1 -0
  48. package/dist/tui/platform-detect.d.ts +1 -1
  49. package/dist/tui/platform-detect.js +19 -22
  50. package/dist/tui/platform-detect.js.map +1 -1
  51. package/dist/tui/state.d.ts +33 -6
  52. package/dist/tui/state.js +65 -17
  53. package/dist/tui/state.js.map +1 -1
  54. package/dist/tui/tabs/BillingTab.d.ts +4 -0
  55. package/dist/tui/tabs/BillingTab.js +68 -0
  56. package/dist/tui/tabs/BillingTab.js.map +1 -0
  57. package/dist/tui/tabs/KnowledgeTab.d.ts +5 -0
  58. package/dist/tui/tabs/KnowledgeTab.js +83 -0
  59. package/dist/tui/tabs/KnowledgeTab.js.map +1 -0
  60. package/dist/tui/tabs/ProjectTab.d.ts +4 -0
  61. package/dist/tui/tabs/ProjectTab.js +31 -0
  62. package/dist/tui/tabs/ProjectTab.js.map +1 -0
  63. package/dist/tui/tabs/TeamTab.d.ts +4 -0
  64. package/dist/tui/tabs/TeamTab.js +39 -0
  65. package/dist/tui/tabs/TeamTab.js.map +1 -0
  66. package/dist/tui/tabs/YouTab.d.ts +4 -0
  67. package/dist/tui/tabs/YouTab.js +9 -0
  68. package/dist/tui/tabs/YouTab.js.map +1 -0
  69. package/dist/tui/utils.d.ts +6 -0
  70. package/dist/tui/utils.js +58 -0
  71. package/dist/tui/utils.js.map +1 -0
  72. package/package.json +9 -2
  73. package/dist/tui/ansi.d.ts +0 -41
  74. package/dist/tui/ansi.js +0 -117
  75. package/dist/tui/ansi.js.map +0 -1
  76. package/dist/tui/dashboard.js +0 -1250
  77. package/dist/tui/dashboard.js.map +0 -1
  78. package/dist/tui/keys.d.ts +0 -31
  79. package/dist/tui/keys.js +0 -56
  80. package/dist/tui/keys.js.map +0 -1
  81. package/dist/tui/render.d.ts +0 -5
  82. package/dist/tui/render.js +0 -158
  83. package/dist/tui/render.js.map +0 -1
  84. package/dist/tui/views/billing.d.ts +0 -3
  85. package/dist/tui/views/billing.js +0 -127
  86. package/dist/tui/views/billing.js.map +0 -1
  87. package/dist/tui/views/knowledge.d.ts +0 -3
  88. package/dist/tui/views/knowledge.js +0 -202
  89. package/dist/tui/views/knowledge.js.map +0 -1
  90. package/dist/tui/views/modals.d.ts +0 -3
  91. package/dist/tui/views/modals.js +0 -198
  92. package/dist/tui/views/modals.js.map +0 -1
  93. package/dist/tui/views/project.d.ts +0 -3
  94. package/dist/tui/views/project.js +0 -76
  95. package/dist/tui/views/project.js.map +0 -1
  96. package/dist/tui/views/team.d.ts +0 -3
  97. package/dist/tui/views/team.js +0 -106
  98. package/dist/tui/views/team.js.map +0 -1
  99. package/dist/tui/views/you.d.ts +0 -3
  100. package/dist/tui/views/you.js +0 -40
  101. package/dist/tui/views/you.js.map +0 -1
  102. /package/dist/tui/{dashboard.d.ts → index.d.ts} +0 -0
package/dist/index.js CHANGED
@@ -1,21 +1,16 @@
1
1
  #!/usr/bin/env node
2
- "use strict";
3
2
  // Cohvu CLI — one command.
4
3
  //
5
4
  // npx cohvu — TUI dashboard (interactive) or MCP proxy (piped by agent)
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- const fs_1 = require("fs");
8
- const path_1 = require("path");
9
- const os_1 = require("os");
10
- const readline_1 = require("readline");
11
- const child_process_1 = require("child_process");
12
- const auth_1 = require("./auth");
13
- const setup_1 = require("./setup");
14
- const proxy_1 = require("./proxy");
15
- const api_1 = require("./api");
16
- const dashboard_1 = require("./tui/dashboard");
17
- const DEFAULT_BASE_URL = "https://api.cohvu.com";
18
- const TOKENS_FILE = (0, path_1.join)((0, os_1.homedir)(), ".cohvu", "tokens.json");
5
+ import { createInterface } from "readline";
6
+ import chalk from "chalk";
7
+ import ora from "ora";
8
+ import { getApiKey, deviceAuthFlow } from "./auth.js";
9
+ import { runSetup } from "./setup.js";
10
+ import { proxy } from "./proxy.js";
11
+ import { ApiClient } from "./api.js";
12
+ import { launchDashboard } from "./tui/index.js";
13
+ import { DEFAULT_BASE_URL } from "./constants.js";
19
14
  if (process.stdin.isTTY) {
20
15
  enterDashboard().catch((error) => {
21
16
  process.stderr.write(`Failed: ${error}\n`);
@@ -23,7 +18,7 @@ if (process.stdin.isTTY) {
23
18
  });
24
19
  }
25
20
  else {
26
- (0, proxy_1.proxy)().catch((error) => {
21
+ proxy().catch((error) => {
27
22
  process.stderr.write(`Cohvu CLI failed: ${error}\n`);
28
23
  process.exit(1);
29
24
  });
@@ -32,7 +27,7 @@ else {
32
27
  // Helpers
33
28
  // ---------------------------------------------------------------------------
34
29
  function prompt(question) {
35
- const rl = (0, readline_1.createInterface)({ input: process.stdin, output: process.stdout });
30
+ const rl = createInterface({ input: process.stdin, output: process.stdout });
36
31
  return new Promise((resolve) => {
37
32
  rl.question(question, (answer) => {
38
33
  rl.close();
@@ -40,117 +35,78 @@ function prompt(question) {
40
35
  });
41
36
  });
42
37
  }
43
- function openBrowser(url) {
44
- const cmd = process.platform === "darwin"
45
- ? "open"
46
- : process.platform === "win32"
47
- ? "start"
48
- : "xdg-open";
49
- (0, child_process_1.execFile)(cmd, [url], () => { });
50
- }
51
38
  function deriveSlug(name) {
52
39
  return name
53
40
  .toLowerCase()
54
41
  .replace(/[^a-z0-9]+/g, "-")
55
42
  .replace(/^-+|-+$/g, "");
56
43
  }
57
- function write(text) {
58
- process.stdout.write(text + "\n");
59
- }
60
44
  // ---------------------------------------------------------------------------
61
45
  // Dashboard entry — handles auth + setup + project creation before TUI
62
46
  // ---------------------------------------------------------------------------
63
47
  async function enterDashboard() {
64
48
  const baseUrl = process.env.COHVU_API_URL ?? DEFAULT_BASE_URL;
65
- // Try existing auth
66
- let needsAuth = false;
67
- try {
68
- await (0, auth_1.getAuthToken)(baseUrl);
69
- }
70
- catch {
71
- needsAuth = true;
72
- }
73
- // Plain ANSI for pre-TUI output (user's terminal, not our dark background)
74
- const dim = '\x1b[2m';
75
- const reset = '\x1b[0m';
49
+ const needsAuth = !getApiKey();
76
50
  if (needsAuth) {
77
- const hasTokensFile = (0, fs_1.existsSync)(TOKENS_FILE);
78
- if (hasTokensFile) {
79
- write("\n" + dim + " session expired. opening browser to sign in..." + reset);
80
- }
81
- else {
82
- write("\n" + dim + " opening browser to sign in..." + reset);
83
- }
84
- await (0, auth_1.deviceAuthFlow)(baseUrl);
85
- const api = new api_1.ApiClient(baseUrl);
51
+ await deviceAuthFlow(baseUrl);
52
+ const api = new ApiClient(baseUrl);
86
53
  const me = await api.me();
87
- write(" signed in as " + me.user.email);
88
- write(dim + " setting up your tools..." + reset);
89
- await (0, setup_1.runSetup)();
90
- // Ensure API key exists for proxy (may already exist from device auth)
91
- if (!(0, auth_1.getApiKey)()) {
92
- try {
93
- const key = await api.createApiKey();
94
- if (key.key)
95
- (0, auth_1.storeApiKey)(key.key);
54
+ const setupSpinner = ora({ text: 'setting up your tools', indent: 2 }).start();
55
+ await runSetup();
56
+ setupSpinner.succeed('tools configured');
57
+ const hasProjects = me.personal_projects.length > 0 ||
58
+ me.teams.some(t => t.projects.length > 0);
59
+ if (!hasProjects) {
60
+ console.log('');
61
+ let name = '';
62
+ while (!name) {
63
+ name = await prompt(' project name \u203a ');
64
+ if (!name)
65
+ console.log(chalk.dim(' a project name is required'));
96
66
  }
97
- catch { }
98
- }
99
- write(dim + " done." + reset);
100
- const rootProjects = me.projects.filter((s) => s.is_root);
101
- if (rootProjects.length === 0) {
102
- write("");
103
- const name = await prompt(" project name \u203a ");
104
- if (name) {
105
- const slug = deriveSlug(name);
106
- try {
107
- const project = await api.createProject(name, slug);
108
- if (project.trial_ends_at) {
109
- const trialDate = new Date(project.trial_ends_at);
110
- const months = ['jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec'];
111
- const formatted = `${months[trialDate.getMonth()]} ${trialDate.getDate()}`;
112
- write(" created " + slug + " \u00b7 trial ends " + formatted);
113
- }
114
- else {
115
- write(" created " + slug);
116
- try {
117
- const checkout = await api.createCheckout(project.id);
118
- if (checkout.checkout_url) {
119
- write("");
120
- write(dim + " opening checkout in browser..." + reset);
121
- write(dim + " complete payment to activate" + reset);
122
- openBrowser(checkout.checkout_url);
123
- }
124
- }
125
- catch {
126
- write(dim + " couldn't open checkout — subscribe from the dashboard" + reset);
127
- }
128
- }
67
+ const slug = deriveSlug(name);
68
+ try {
69
+ await api.createProject(name, slug, me.user.id);
70
+ if (me.user.trial_ends_at) {
71
+ const trialDate = new Date(me.user.trial_ends_at);
72
+ const months = ['jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec'];
73
+ const formatted = `${months[trialDate.getMonth()]} ${trialDate.getDate()}`;
74
+ console.log(' created ' + slug + chalk.dim(' \u00b7 trial ends ' + formatted));
129
75
  }
130
- catch {
131
- write(" couldn't create project — try again from the dashboard");
76
+ else {
77
+ console.log(' created ' + slug);
132
78
  }
133
79
  }
134
- write("");
80
+ catch {
81
+ console.log(chalk.dim(" couldn't create project \u2014 try again from the dashboard"));
82
+ }
83
+ console.log('');
135
84
  }
136
- write(dim + " opening cohvu..." + reset);
137
- write("");
138
- await new Promise((r) => setTimeout(r, 800));
139
85
  }
140
86
  else {
141
- // Ensure API key exists for proxy (migration from pre-v2 auth)
142
- if (!(0, auth_1.getApiKey)()) {
87
+ // Validate API key still works
88
+ try {
89
+ const api = new ApiClient(baseUrl);
90
+ await api.me();
91
+ }
92
+ catch {
93
+ // Key revoked or backend down — re-authenticate
94
+ const { unlinkSync } = await import("fs");
95
+ const { join } = await import("path");
96
+ const { homedir } = await import("os");
143
97
  try {
144
- const api = new api_1.ApiClient(baseUrl);
145
- const key = await api.createApiKey();
146
- if (key.key)
147
- (0, auth_1.storeApiKey)(key.key);
98
+ unlinkSync(join(homedir(), ".cohvu", "credentials"));
148
99
  }
149
100
  catch { }
101
+ console.log('');
102
+ console.log(chalk.dim(' session expired'));
103
+ await deviceAuthFlow(baseUrl);
150
104
  }
151
- write("\n" + dim + " opening cohvu..." + reset);
152
- await new Promise((r) => setTimeout(r, 300));
153
105
  }
154
- await (0, dashboard_1.launchDashboard)();
106
+ const openSpinner = ora({ text: 'opening cohvu', indent: 2 }).start();
107
+ await new Promise((r) => setTimeout(r, needsAuth ? 500 : 200));
108
+ openSpinner.stop();
109
+ process.stdout.write('\x1b[2K\x1b[1A\x1b[2K'); // clean spinner lines
110
+ await launchDashboard();
155
111
  }
156
112
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- export declare const COHVU_INSTRUCTIONS = "You are connected to Cohvu \u2014 continuous understanding for AI-native development. Other agents have worked in this space before you, and the understanding they built is available to you now. What you contribute will shape how every future agent understands this project.\n\nAlways tell Cohvu what you need before starting work. Describe your task \u2014 what you're doing, what you need to know, what you're trying to figure out. Cohvu serves the right context for your situation. Call `read` again whenever you hit something unfamiliar or need deeper understanding.\n\nAlways call `contribute` as you work \u2014 not after, not as a summary, but in the moment. When you make a decision, contribute it. When you learn something, contribute it. When something shifts your thinking, contribute it. Your context window could end at any moment. Don't wait. Contribute what helps understand the project.";
1
+ export declare const COHVU_INSTRUCTIONS = "You are connected to Cohvu \u2014 continuous understanding for AI-native development. Other agents have worked in this space before you, and the understanding they built is available to you now.\n\nBefore starting work, call `read` and describe what you're working on, what you're thinking about, what you need to understand. The richer your description, the better the context you'll receive. Call `read` again whenever you encounter something unfamiliar or need deeper context.\n\nCall `contribute` in the moment \u2014 not after, not as a summary. When you make a decision, contribute it with the reasoning. When you discover a constraint, contribute it. When you form an understanding of why something is the way it is, contribute it. Always include the why. Your context window could end at any moment. Don't wait.\n\nDo NOT contribute code changes, implementation details that are obvious from the code itself, or narration of what you just did. Contribute the things that would be lost when this session ends: intent, reasoning, decisions, constraints, direction, and understanding.";
2
2
  export declare const MARKER_START = "<!-- cohvu:start -->";
3
3
  export declare const MARKER_END = "<!-- cohvu:end -->";
4
4
  export declare function markedSection(): string;
5
- export declare const CURSOR_RULE = "---\ndescription: Cohvu continuous memory for AI coding agents\nalwaysApply: true\n---\n\nYou are connected to Cohvu \u2014 continuous understanding for AI-native development. Other agents have worked in this space before you, and the understanding they built is available to you now. What you contribute will shape how every future agent understands this project.\n\nAlways tell Cohvu what you need before starting work. Describe your task \u2014 what you're doing, what you need to know, what you're trying to figure out. Cohvu serves the right context for your situation. Call read again whenever you hit something unfamiliar or need deeper understanding.\n\nAlways call contribute as you work \u2014 not after, not as a summary, but in the moment. When you make a decision, contribute it. When you learn something, contribute it. When something shifts your thinking, contribute it. Your context window could end at any moment. Don't wait. Contribute what helps understand the project.\n";
5
+ export declare const CURSOR_RULE = "---\ndescription: Cohvu continuous memory for AI coding agents\nalwaysApply: true\n---\n\nYou are connected to Cohvu \u2014 continuous understanding for AI-native development. Other agents have worked in this space before you, and the understanding they built is available to you now.\n\nBefore starting work, call `read` and describe what you're working on, what you're thinking about, what you need to understand. The richer your description, the better the context you'll receive. Call `read` again whenever you encounter something unfamiliar or need deeper context.\n\nCall `contribute` in the moment \u2014 not after, not as a summary. When you make a decision, contribute it with the reasoning. When you discover a constraint, contribute it. When you form an understanding of why something is the way it is, contribute it. Always include the why. Your context window could end at any moment. Don't wait.\n\nDo NOT contribute code changes, implementation details that are obvious from the code itself, or narration of what you just did. Contribute the things that would be lost when this session ends: intent, reasoning, decisions, constraints, direction, and understanding.\n";
@@ -1,38 +1,34 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CURSOR_RULE = exports.MARKER_END = exports.MARKER_START = exports.COHVU_INSTRUCTIONS = void 0;
4
- exports.markedSection = markedSection;
5
- exports.COHVU_INSTRUCTIONS = `\
1
+ export const COHVU_INSTRUCTIONS = `\
6
2
  You are connected to Cohvu — continuous understanding for AI-native \
7
3
  development. Other agents have worked in this space before you, and the \
8
- understanding they built is available to you now. What you contribute \
9
- will shape how every future agent understands this project.
4
+ understanding they built is available to you now.
10
5
 
11
- Always tell Cohvu what you need before starting work. Describe your task — \
12
- what you're doing, what you need to know, what you're trying to figure out. \
13
- Cohvu serves the right context for your situation. Call \`read\` again whenever \
14
- you hit something unfamiliar or need deeper understanding.
6
+ Before starting work, call \`read\` and describe what you're working on, \
7
+ what you're thinking about, what you need to understand. The richer your \
8
+ description, the better the context you'll receive. Call \`read\` again \
9
+ whenever you encounter something unfamiliar or need deeper context.
15
10
 
16
- Always call \`contribute\` as you work — not after, not as a summary, but \
17
- in the moment. When you make a decision, contribute it. When you learn \
18
- something, contribute it. When something shifts your thinking, contribute \
19
- it. Your context window could end at any moment. Don't wait. Contribute \
20
- what helps understand the project.`;
21
- exports.MARKER_START = "<!-- cohvu:start -->";
22
- exports.MARKER_END = "<!-- cohvu:end -->";
23
- function markedSection() {
24
- return `${exports.MARKER_START}\n# Cohvu\n\n${exports.COHVU_INSTRUCTIONS}\n${exports.MARKER_END}`;
11
+ Call \`contribute\` in the moment — not after, not as a summary. When you \
12
+ make a decision, contribute it with the reasoning. When you discover a \
13
+ constraint, contribute it. When you form an understanding of why something \
14
+ is the way it is, contribute it. Always include the why. Your context \
15
+ window could end at any moment. Don't wait.
16
+
17
+ Do NOT contribute code changes, implementation details that are obvious \
18
+ from the code itself, or narration of what you just did. Contribute the \
19
+ things that would be lost when this session ends: intent, reasoning, \
20
+ decisions, constraints, direction, and understanding.`;
21
+ export const MARKER_START = "<!-- cohvu:start -->";
22
+ export const MARKER_END = "<!-- cohvu:end -->";
23
+ export function markedSection() {
24
+ return `${MARKER_START}\n# Cohvu\n\n${COHVU_INSTRUCTIONS}\n${MARKER_END}`;
25
25
  }
26
26
  // Cursor .mdc rule — entire file is owned by Cohvu
27
- exports.CURSOR_RULE = `---
27
+ export const CURSOR_RULE = `---
28
28
  description: Cohvu continuous memory for AI coding agents
29
29
  alwaysApply: true
30
30
  ---
31
31
 
32
- You are connected to Cohvu — continuous understanding for AI-native development. Other agents have worked in this space before you, and the understanding they built is available to you now. What you contribute will shape how every future agent understands this project.
33
-
34
- Always tell Cohvu what you need before starting work. Describe your task — what you're doing, what you need to know, what you're trying to figure out. Cohvu serves the right context for your situation. Call read again whenever you hit something unfamiliar or need deeper understanding.
35
-
36
- Always call contribute as you work — not after, not as a summary, but in the moment. When you make a decision, contribute it. When you learn something, contribute it. When something shifts your thinking, contribute it. Your context window could end at any moment. Don't wait. Contribute what helps understand the project.
32
+ ${COHVU_INSTRUCTIONS}
37
33
  `;
38
34
  //# sourceMappingURL=instructions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":";;;AAoBA,sCAEC;AAtBY,QAAA,kBAAkB,GAAG;;;;;;;;;;;;;;;mCAeC,CAAC;AAEvB,QAAA,YAAY,GAAG,sBAAsB,CAAC;AACtC,QAAA,UAAU,GAAG,oBAAoB,CAAC;AAE/C,SAAgB,aAAa;IAC3B,OAAO,GAAG,oBAAY,gBAAgB,0BAAkB,KAAK,kBAAU,EAAE,CAAC;AAC5E,CAAC;AAED,mDAAmD;AACtC,QAAA,WAAW,GAAG;;;;;;;;;;CAU1B,CAAC"}
1
+ {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;sDAmBoB,CAAC;AAEvD,MAAM,CAAC,MAAM,YAAY,GAAG,sBAAsB,CAAC;AACnD,MAAM,CAAC,MAAM,UAAU,GAAG,oBAAoB,CAAC;AAE/C,MAAM,UAAU,aAAa;IAC3B,OAAO,GAAG,YAAY,gBAAgB,kBAAkB,KAAK,UAAU,EAAE,CAAC;AAC5E,CAAC;AAED,mDAAmD;AACnD,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;EAKzB,kBAAkB;CACnB,CAAC"}
package/dist/platforms.js CHANGED
@@ -1,74 +1,71 @@
1
- "use strict";
2
1
  // Platform definitions and detection for auto-configuration.
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.detectPlatforms = detectPlatforms;
5
- const fs_1 = require("fs");
6
- const os_1 = require("os");
7
- const path_1 = require("path");
2
+ import { existsSync } from "fs";
3
+ import { homedir, platform } from "os";
4
+ import { join } from "path";
8
5
  function vscodeUserDir() {
9
- if ((0, os_1.platform)() === "darwin") {
10
- return (0, path_1.join)("Library", "Application Support", "Code", "User");
6
+ if (platform() === "darwin") {
7
+ return join("Library", "Application Support", "Code", "User");
11
8
  }
12
9
  // Linux / WSL
13
- return (0, path_1.join)(".config", "Code", "User");
10
+ return join(".config", "Code", "User");
14
11
  }
15
12
  const PLATFORMS = [
16
13
  {
17
14
  name: "Claude Code",
18
15
  detectPath: ".claude",
19
16
  mcp: { path: ".claude.json", rootKey: "mcpServers", format: "json" },
20
- instructions: { path: (0, path_1.join)(".claude", "CLAUDE.md"), format: "markdown" },
17
+ instructions: { path: join(".claude", "CLAUDE.md"), format: "markdown" },
21
18
  permissions: {
22
- path: (0, path_1.join)(".claude", "settings.json"),
19
+ path: join(".claude", "settings.json"),
23
20
  allowRules: ["mcp__cohvu__*"],
24
21
  },
25
22
  },
26
23
  {
27
24
  name: "Cursor",
28
25
  detectPath: ".cursor",
29
- mcp: { path: (0, path_1.join)(".cursor", "mcp.json"), rootKey: "mcpServers", format: "json" },
30
- instructions: { path: (0, path_1.join)(".cursor", "rules", "cohvu.mdc"), format: "mdc" },
26
+ mcp: { path: join(".cursor", "mcp.json"), rootKey: "mcpServers", format: "json" },
27
+ instructions: { path: join(".cursor", "rules", "cohvu.mdc"), format: "mdc" },
31
28
  permissions: null,
32
29
  },
33
30
  {
34
31
  name: "Windsurf",
35
- detectPath: (0, path_1.join)(".codeium", "windsurf"),
32
+ detectPath: join(".codeium", "windsurf"),
36
33
  mcp: {
37
- path: (0, path_1.join)(".codeium", "windsurf", "mcp_config.json"),
34
+ path: join(".codeium", "windsurf", "mcp_config.json"),
38
35
  rootKey: "mcpServers",
39
36
  format: "json",
40
37
  },
41
38
  instructions: {
42
- path: (0, path_1.join)(".codeium", "windsurf", "memories", "global_rules.md"),
39
+ path: join(".codeium", "windsurf", "memories", "global_rules.md"),
43
40
  format: "markdown",
44
41
  },
45
42
  permissions: null,
46
43
  },
47
44
  {
48
45
  name: "Cline",
49
- detectPath: (0, path_1.join)(vscodeUserDir(), "globalStorage", "saoudrizwan.claude-dev"),
46
+ detectPath: join(vscodeUserDir(), "globalStorage", "saoudrizwan.claude-dev"),
50
47
  mcp: {
51
- path: (0, path_1.join)(vscodeUserDir(), "globalStorage", "saoudrizwan.claude-dev", "settings", "cline_mcp_settings.json"),
48
+ path: join(vscodeUserDir(), "globalStorage", "saoudrizwan.claude-dev", "settings", "cline_mcp_settings.json"),
52
49
  rootKey: "mcpServers",
53
50
  format: "json",
54
51
  },
55
- instructions: { path: (0, path_1.join)("Documents", "Cline", "Rules", "cohvu.md"), format: "markdown" },
52
+ instructions: { path: join("Documents", "Cline", "Rules", "cohvu.md"), format: "markdown" },
56
53
  permissions: null,
57
54
  },
58
55
  {
59
56
  name: "Codex",
60
57
  detectPath: ".codex",
61
- mcp: { path: (0, path_1.join)(".codex", "config.toml"), rootKey: "mcp_servers", format: "toml" },
62
- instructions: { path: (0, path_1.join)(".codex", "AGENTS.md"), format: "markdown" },
58
+ mcp: { path: join(".codex", "config.toml"), rootKey: "mcp_servers", format: "toml" },
59
+ instructions: { path: join(".codex", "AGENTS.md"), format: "markdown" },
63
60
  permissions: null,
64
61
  },
65
62
  ];
66
- function detectPlatforms() {
67
- const home = (0, os_1.homedir)();
63
+ export function detectPlatforms() {
64
+ const home = homedir();
68
65
  const detected = [];
69
66
  for (const def of PLATFORMS) {
70
- const fullPath = (0, path_1.join)(home, def.detectPath);
71
- if ((0, fs_1.existsSync)(fullPath)) {
67
+ const fullPath = join(home, def.detectPath);
68
+ if (existsSync(fullPath)) {
72
69
  detected.push({ def });
73
70
  }
74
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"platforms.js","sourceRoot":"","sources":["../src/platforms.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platforms.js","sourceRoot":"","sources":["../src/platforms.ts"],"names":[],"mappings":"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"}
package/dist/proxy.js CHANGED
@@ -1,20 +1,18 @@
1
- "use strict";
2
1
  // MCP proxy — thin stateless translator.
3
2
  //
4
3
  // Agent speaks MCP on stdin. Proxy speaks REST to the backend.
5
4
  // No sessions. No state. No reconnection. Each tool call is
6
5
  // an independent HTTP request.
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.proxy = proxy;
9
- const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
10
- const auth_1 = require("./auth");
11
- const setup_1 = require("./setup");
12
- async function proxy() {
13
- const baseUrl = process.env.COHVU_API_URL ?? "https://api.cohvu.com";
6
+ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
7
+ import { getApiKey } from "./auth.js";
8
+ import { refreshInstructions } from "./setup.js";
9
+ import { DEFAULT_BASE_URL } from "./constants.js";
10
+ export async function proxy() {
11
+ const baseUrl = process.env.COHVU_API_URL ?? DEFAULT_BASE_URL;
14
12
  // API key auth — one string, never expires, no refresh
15
- const apiKey = (0, auth_1.getApiKey)();
13
+ const apiKey = getApiKey();
16
14
  if (!apiKey) {
17
- const transport = new stdio_js_1.StdioServerTransport();
15
+ const transport = new StdioServerTransport();
18
16
  transport.onmessage = async (message) => {
19
17
  const msg = message;
20
18
  if (msg.id === undefined)
@@ -33,7 +31,7 @@ async function proxy() {
33
31
  }
34
32
  const authHeader = `Bearer ${apiKey}`;
35
33
  // Silently update instruction files
36
- (0, setup_1.refreshInstructions)();
34
+ refreshInstructions();
37
35
  // Fetch manifest (tool list + instructions) — keep retrying until we get it
38
36
  let manifest = null;
39
37
  async function fetchManifest() {
@@ -66,7 +64,7 @@ async function proxy() {
66
64
  protocolVersion: "2025-03-26",
67
65
  capabilities: { tools: {} },
68
66
  serverInfo: { name: "cohvu", version: "0.1.0" },
69
- instructions: "Cohvu is temporarily unavailable. Tool calls will be retried.",
67
+ instructions: "Cohvu could not connect to the server. Restart your editor to retry.",
70
68
  };
71
69
  const toolsListResult = manifest
72
70
  ? {
@@ -86,7 +84,7 @@ async function proxy() {
86
84
  Authorization: authHeader,
87
85
  },
88
86
  body: JSON.stringify({ tool: name, arguments: args }),
89
- signal: AbortSignal.timeout(30_000),
87
+ signal: AbortSignal.timeout(60_000),
90
88
  });
91
89
  if (!res.ok) {
92
90
  const body = await res.text().catch(() => "Unknown error");
@@ -98,7 +96,7 @@ async function proxy() {
98
96
  return await res.json();
99
97
  }
100
98
  // Start stdio transport and handle MCP messages
101
- const transport = new stdio_js_1.StdioServerTransport();
99
+ const transport = new StdioServerTransport();
102
100
  transport.onmessage = async (message) => {
103
101
  const msg = message;
104
102
  // Notifications (no id) — acknowledge silently
@@ -116,6 +114,20 @@ async function proxy() {
116
114
  await transport.send({ jsonrpc: "2.0", id: msg.id, result: {} });
117
115
  break;
118
116
  case "tools/call": {
117
+ if (!manifest) {
118
+ manifest = await fetchManifest();
119
+ }
120
+ if (!manifest) {
121
+ await transport.send({
122
+ jsonrpc: "2.0",
123
+ id: msg.id,
124
+ error: {
125
+ code: -32603,
126
+ message: "Cohvu could not connect to the server. Restart your editor to retry.",
127
+ },
128
+ });
129
+ break;
130
+ }
119
131
  const params = msg.params;
120
132
  const result = await callTool(params.name, params.arguments ?? {});
121
133
  await transport.send({ jsonrpc: "2.0", id: msg.id, result: result });
package/dist/proxy.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":";AAAA,yCAAyC;AACzC,EAAE;AACF,+DAA+D;AAC/D,4DAA4D;AAC5D,+BAA+B;;AAgB/B,sBA6JC;AA3KD,wEAAiF;AACjF,iCAAmC;AACnC,mCAA8C;AAYvC,KAAK,UAAU,KAAK;IACzB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,uBAAuB,CAAC;IAErE,uDAAuD;IACvD,MAAM,MAAM,GAAG,IAAA,gBAAS,GAAE,CAAC;IAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,SAAS,GAAG,IAAI,+BAAoB,EAAE,CAAC;QAC7C,SAAS,CAAC,SAAS,GAAG,KAAK,EAAE,OAAO,EAAE,EAAE;YACtC,MAAM,GAAG,GAAG,OAAmC,CAAC;YAChD,IAAI,GAAG,CAAC,EAAE,KAAK,SAAS;gBAAE,OAAO;YACjC,SAAS,CAAC,IAAI,CAAC;gBACb,OAAO,EAAE,KAAc;gBACvB,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,CAAC,KAAK;oBACZ,OAAO,EAAE,sEAAsE;iBAChF;aACF,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACrB,CAAC,CAAC;QACF,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO;IACT,CAAC;IAED,MAAM,UAAU,GAAG,UAAU,MAAM,EAAE,CAAC;IAEtC,oCAAoC;IACpC,IAAA,2BAAmB,GAAE,CAAC;IAEtB,4EAA4E;IAC5E,IAAI,QAAQ,GAAoB,IAAI,CAAC;IAErC,KAAK,UAAU,aAAa;QAC1B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,oBAAoB,EAAE;gBACtD,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE;gBACtC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;aACpC,CAAC,CAAC;YACH,IAAI,GAAG,CAAC,EAAE;gBAAE,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAa,CAAC;QACpD,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC;QAC9C,QAAQ,GAAG,MAAM,aAAa,EAAE,CAAC;QACjC,IAAI,QAAQ;YAAE,MAAM;QACpB,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,4EAA4E;IAC5E,MAAM,gBAAgB,GAAG,QAAQ;QAC/B,CAAC,CAAC;YACE,eAAe,EAAE,YAAY;YAC7B,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YAC3B,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,YAAY,EAAE,QAAQ,CAAC,YAAY;SACpC;QACH,CAAC,CAAC;YACE,eAAe,EAAE,YAAY;YAC7B,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YAC3B,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE;YAC/C,YAAY,EAAE,+DAA+D;SAC9E,CAAC;IAEN,MAAM,eAAe,GAAG,QAAQ;QAC9B,CAAC,CAAC;YACE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAChC,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,WAAW,EAAE,CAAC,CAAC,WAAW;aAC3B,CAAC,CAAC;SACJ;QACH,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAElB,6BAA6B;IAC7B,KAAK,UAAU,QAAQ,CACrB,IAAY,EACZ,IAA6B;QAE7B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,gBAAgB,EAAE;YAClD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU;aAC1B;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;YACrD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;SACpC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC;YAC3D,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBACvC,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED,gDAAgD;IAChD,MAAM,SAAS,GAAG,IAAI,+BAAoB,EAAE,CAAC;IAE7C,SAAS,CAAC,SAAS,GAAG,KAAK,EAAE,OAAO,EAAE,EAAE;QACtC,MAAM,GAAG,GAAG,OAIX,CAAC;QAEF,+CAA+C;QAC/C,IAAI,GAAG,CAAC,EAAE,KAAK,SAAS;YAAE,OAAO;QAEjC,IAAI,CAAC;YACH,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;gBACnB,KAAK,YAAY;oBACf,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAc,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;oBACxF,MAAM;gBAER,KAAK,YAAY;oBACf,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAc,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;oBACvF,MAAM;gBAER,KAAK,MAAM;oBACT,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAc,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC1E,MAAM;gBAER,KAAK,YAAY,CAAC,CAAC,CAAC;oBAClB,MAAM,MAAM,GAAG,GAAG,CAAC,MAA+D,CAAC;oBACnF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;oBACnE,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAc,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,MAAiC,EAAE,CAAC,CAAC;oBACzG,MAAM;gBACR,CAAC;gBAED;oBACE,MAAM,SAAS,CAAC,IAAI,CAAC;wBACnB,OAAO,EAAE,KAAc;wBACvB,EAAE,EAAE,GAAG,CAAC,EAAE;wBACV,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,qBAAqB,GAAG,CAAC,MAAM,EAAE,EAAE;qBACpE,CAAC,CAAC;YACP,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,SAAS,CAAC,IAAI,CAAC;gBACnB,OAAO,EAAE,KAAc;gBACvB,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,CAAC,KAAK;oBACZ,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB;iBAC/D;aACF,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,CAAC;IAEF,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE;QACvB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"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"}
package/dist/setup.d.ts CHANGED
@@ -12,5 +12,4 @@ export interface SetupResult {
12
12
  }
13
13
  export declare function runSetup(): Promise<SetupResult>;
14
14
  export declare function refreshInstructions(): void;
15
- export declare function printSetupResults(results: SetupResult): void;
16
15
  export {};