@everstateai/mcp 1.3.1 → 1.3.3
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.
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +32 -5
- package/dist/index.js.map +1 -1
- package/dist/setup/auto-update.d.ts +20 -0
- package/dist/setup/auto-update.d.ts.map +1 -0
- package/dist/setup/auto-update.js +295 -0
- package/dist/setup/auto-update.js.map +1 -0
- package/dist/setup/commands/doctor.d.ts +15 -0
- package/dist/setup/commands/doctor.d.ts.map +1 -0
- package/dist/setup/commands/doctor.js +264 -0
- package/dist/setup/commands/doctor.js.map +1 -0
- package/dist/setup/commands/repair.d.ts +14 -0
- package/dist/setup/commands/repair.d.ts.map +1 -0
- package/dist/setup/commands/repair.js +252 -0
- package/dist/setup/commands/repair.js.map +1 -0
- package/dist/setup/hooks/templates.d.ts +30 -0
- package/dist/setup/hooks/templates.d.ts.map +1 -0
- package/dist/setup/hooks/templates.js +237 -0
- package/dist/setup/hooks/templates.js.map +1 -0
- package/dist/setup/types.d.ts +120 -0
- package/dist/setup/types.d.ts.map +1 -0
- package/dist/setup/types.js +58 -0
- package/dist/setup/types.js.map +1 -0
- package/dist/setup/validators/api-key.d.ts +8 -0
- package/dist/setup/validators/api-key.d.ts.map +1 -0
- package/dist/setup/validators/api-key.js +233 -0
- package/dist/setup/validators/api-key.js.map +1 -0
- package/dist/setup/validators/connectivity.d.ts +8 -0
- package/dist/setup/validators/connectivity.d.ts.map +1 -0
- package/dist/setup/validators/connectivity.js +150 -0
- package/dist/setup/validators/connectivity.js.map +1 -0
- package/dist/setup/validators/hooks.d.ts +8 -0
- package/dist/setup/validators/hooks.d.ts.map +1 -0
- package/dist/setup/validators/hooks.js +431 -0
- package/dist/setup/validators/hooks.js.map +1 -0
- package/dist/setup/validators/index.d.ts +18 -0
- package/dist/setup/validators/index.d.ts.map +1 -0
- package/dist/setup/validators/index.js +123 -0
- package/dist/setup/validators/index.js.map +1 -0
- package/dist/setup/validators/mcp-config.d.ts +8 -0
- package/dist/setup/validators/mcp-config.d.ts.map +1 -0
- package/dist/setup/validators/mcp-config.js +333 -0
- package/dist/setup/validators/mcp-config.js.map +1 -0
- package/dist/setup/validators/project.d.ts +8 -0
- package/dist/setup/validators/project.d.ts.map +1 -0
- package/dist/setup/validators/project.js +202 -0
- package/dist/setup/validators/project.js.map +1 -0
- package/dist/setup/version.d.ts +58 -0
- package/dist/setup/version.d.ts.map +1 -0
- package/dist/setup/version.js +262 -0
- package/dist/setup/version.js.map +1 -0
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +264 -28
- package/dist/setup.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +32 -5
- package/src/setup/auto-update.ts +328 -0
- package/src/setup/commands/doctor.ts +266 -0
- package/src/setup/commands/repair.ts +260 -0
- package/src/setup/hooks/templates.ts +239 -0
- package/src/setup/types.ts +199 -0
- package/src/setup/validators/api-key.ts +218 -0
- package/src/setup/validators/connectivity.ts +176 -0
- package/src/setup/validators/hooks.ts +447 -0
- package/src/setup/validators/index.ts +137 -0
- package/src/setup/validators/mcp-config.ts +329 -0
- package/src/setup/validators/project.ts +179 -0
- package/src/setup/version.ts +267 -0
- package/src/setup.ts +297 -28
package/dist/index.d.ts
CHANGED
|
@@ -2,9 +2,11 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Everstate MCP Package
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* 1. Setup:
|
|
7
|
-
* 2.
|
|
5
|
+
* Commands:
|
|
6
|
+
* 1. Setup: npx @everstateai/mcp setup YOUR_API_KEY
|
|
7
|
+
* 2. Doctor: npx @everstateai/mcp doctor
|
|
8
|
+
* 3. Repair: npx @everstateai/mcp repair
|
|
9
|
+
* 4. MCP Server: Runs as stdio MCP server (default)
|
|
8
10
|
*/
|
|
9
11
|
export {};
|
|
10
12
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;GAQG"}
|
package/dist/index.js
CHANGED
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
/**
|
|
4
4
|
* Everstate MCP Package
|
|
5
5
|
*
|
|
6
|
-
*
|
|
7
|
-
* 1. Setup:
|
|
8
|
-
* 2.
|
|
6
|
+
* Commands:
|
|
7
|
+
* 1. Setup: npx @everstateai/mcp setup YOUR_API_KEY
|
|
8
|
+
* 2. Doctor: npx @everstateai/mcp doctor
|
|
9
|
+
* 3. Repair: npx @everstateai/mcp repair
|
|
10
|
+
* 4. MCP Server: Runs as stdio MCP server (default)
|
|
9
11
|
*/
|
|
10
12
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
11
13
|
if (k2 === undefined) k2 = k;
|
|
@@ -43,14 +45,33 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
43
45
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
44
46
|
const fs = __importStar(require("fs"));
|
|
45
47
|
const path = __importStar(require("path"));
|
|
46
|
-
// Check
|
|
48
|
+
// Check which command to run
|
|
47
49
|
const args = process.argv.slice(2);
|
|
48
|
-
|
|
50
|
+
const command = args[0];
|
|
51
|
+
if (command === "setup" || command === "--help" || command === "-h") {
|
|
49
52
|
// Dynamic import to avoid loading MCP deps for setup
|
|
50
53
|
import("./setup.js").then(({ runSetup }) => {
|
|
51
54
|
runSetup(args);
|
|
52
55
|
});
|
|
53
56
|
}
|
|
57
|
+
else if (command === "doctor") {
|
|
58
|
+
// Run doctor command
|
|
59
|
+
import("./setup/commands/doctor.js").then(({ doctorCli }) => {
|
|
60
|
+
doctorCli(args.slice(1)).catch((error) => {
|
|
61
|
+
console.error("Doctor failed:", error);
|
|
62
|
+
process.exit(1);
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
else if (command === "repair") {
|
|
67
|
+
// Run repair command
|
|
68
|
+
import("./setup/commands/repair.js").then(({ repairCli }) => {
|
|
69
|
+
repairCli(args.slice(1)).catch((error) => {
|
|
70
|
+
console.error("Repair failed:", error);
|
|
71
|
+
process.exit(1);
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
}
|
|
54
75
|
else {
|
|
55
76
|
// Run MCP server
|
|
56
77
|
runMcpServer();
|
|
@@ -188,6 +209,12 @@ async function runMcpServer() {
|
|
|
188
209
|
});
|
|
189
210
|
// Auto-detect default project before starting
|
|
190
211
|
await detectDefaultProject();
|
|
212
|
+
// Check for and apply updates (runs in background, doesn't block startup)
|
|
213
|
+
import("./setup/auto-update.js")
|
|
214
|
+
.then(({ checkAndApplyUpdates }) => checkAndApplyUpdates())
|
|
215
|
+
.catch((error) => {
|
|
216
|
+
console.error("[Everstate] Auto-update check failed:", error);
|
|
217
|
+
});
|
|
191
218
|
const transport = new StdioServerTransport();
|
|
192
219
|
await server.connect(transport);
|
|
193
220
|
console.error("Everstate MCP Proxy connected to", API_BASE);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AACA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auto-Update System
|
|
3
|
+
*
|
|
4
|
+
* Automatically updates hooks and configuration when the MCP proxy starts.
|
|
5
|
+
* Runs silently in the background without blocking the MCP server.
|
|
6
|
+
*
|
|
7
|
+
* Also checks the Everstate server for available updates (same as the dashboard UI).
|
|
8
|
+
*/
|
|
9
|
+
interface UpdateCheckResult {
|
|
10
|
+
needsUpdate: boolean;
|
|
11
|
+
updates: string[];
|
|
12
|
+
errors: string[];
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Check and apply updates silently.
|
|
16
|
+
* Called on MCP server startup.
|
|
17
|
+
*/
|
|
18
|
+
export declare function checkAndApplyUpdates(): Promise<UpdateCheckResult>;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=auto-update.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-update.d.ts","sourceRoot":"","sources":["../../src/setup/auto-update.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA4BH,UAAU,iBAAiB;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CA6FvE"}
|
|
@@ -0,0 +1,295 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Auto-Update System
|
|
4
|
+
*
|
|
5
|
+
* Automatically updates hooks and configuration when the MCP proxy starts.
|
|
6
|
+
* Runs silently in the background without blocking the MCP server.
|
|
7
|
+
*
|
|
8
|
+
* Also checks the Everstate server for available updates (same as the dashboard UI).
|
|
9
|
+
*/
|
|
10
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
13
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
14
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
15
|
+
}
|
|
16
|
+
Object.defineProperty(o, k2, desc);
|
|
17
|
+
}) : (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
o[k2] = m[k];
|
|
20
|
+
}));
|
|
21
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
22
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
23
|
+
}) : function(o, v) {
|
|
24
|
+
o["default"] = v;
|
|
25
|
+
});
|
|
26
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
27
|
+
var ownKeys = function(o) {
|
|
28
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
29
|
+
var ar = [];
|
|
30
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
31
|
+
return ar;
|
|
32
|
+
};
|
|
33
|
+
return ownKeys(o);
|
|
34
|
+
};
|
|
35
|
+
return function (mod) {
|
|
36
|
+
if (mod && mod.__esModule) return mod;
|
|
37
|
+
var result = {};
|
|
38
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
39
|
+
__setModuleDefault(result, mod);
|
|
40
|
+
return result;
|
|
41
|
+
};
|
|
42
|
+
})();
|
|
43
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
44
|
+
exports.checkAndApplyUpdates = checkAndApplyUpdates;
|
|
45
|
+
const fs = __importStar(require("fs"));
|
|
46
|
+
const types_js_1 = require("./types.js");
|
|
47
|
+
const version_js_1 = require("./version.js");
|
|
48
|
+
const templates_js_1 = require("./hooks/templates.js");
|
|
49
|
+
const UPDATE_CHECK_INTERVAL_MS = 24 * 60 * 60 * 1000; // 24 hours
|
|
50
|
+
/**
|
|
51
|
+
* Check and apply updates silently.
|
|
52
|
+
* Called on MCP server startup.
|
|
53
|
+
*/
|
|
54
|
+
async function checkAndApplyUpdates() {
|
|
55
|
+
const result = {
|
|
56
|
+
needsUpdate: false,
|
|
57
|
+
updates: [],
|
|
58
|
+
errors: [],
|
|
59
|
+
};
|
|
60
|
+
try {
|
|
61
|
+
// Read or create version file
|
|
62
|
+
let versionFile = (0, version_js_1.readVersionFile)();
|
|
63
|
+
const isFirstRun = !versionFile;
|
|
64
|
+
if (!versionFile) {
|
|
65
|
+
versionFile = (0, version_js_1.createVersionFile)('npx');
|
|
66
|
+
}
|
|
67
|
+
// Check if we should skip this update check (rate limiting)
|
|
68
|
+
const lastCheck = versionFile.lastUpdateCheck;
|
|
69
|
+
if (lastCheck) {
|
|
70
|
+
const elapsed = Date.now() - new Date(lastCheck).getTime();
|
|
71
|
+
if (elapsed < UPDATE_CHECK_INTERVAL_MS) {
|
|
72
|
+
// Skip - checked recently
|
|
73
|
+
return result;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// Update the check timestamp
|
|
77
|
+
versionFile.lastUpdateCheck = new Date().toISOString();
|
|
78
|
+
// Check hook versions
|
|
79
|
+
const hooksDir = `${(0, types_js_1.getEverstateDir)()}/hooks`;
|
|
80
|
+
const syncTodosPath = `${hooksDir}/sync-todos.js`;
|
|
81
|
+
// Update sync-todos.js if needed
|
|
82
|
+
if (shouldUpdateHook(syncTodosPath, types_js_1.HOOK_VERSIONS.syncTodos, versionFile.components.hooks.syncTodos)) {
|
|
83
|
+
try {
|
|
84
|
+
await updateSyncTodosHook(hooksDir, syncTodosPath);
|
|
85
|
+
versionFile.components.hooks.syncTodos = types_js_1.HOOK_VERSIONS.syncTodos;
|
|
86
|
+
result.updates.push(`sync-todos.js updated to v${types_js_1.HOOK_VERSIONS.syncTodos}`);
|
|
87
|
+
result.needsUpdate = true;
|
|
88
|
+
}
|
|
89
|
+
catch (error) {
|
|
90
|
+
result.errors.push(`Failed to update sync-todos.js: ${String(error)}`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
// Update TodoWrite hook registration if needed
|
|
94
|
+
const hookRegistrationUpdated = await ensureHookRegistration(syncTodosPath);
|
|
95
|
+
if (hookRegistrationUpdated) {
|
|
96
|
+
result.updates.push('TodoWrite hook registration updated');
|
|
97
|
+
result.needsUpdate = true;
|
|
98
|
+
}
|
|
99
|
+
// Update MCP proxy version in version file
|
|
100
|
+
const currentVersion = (0, version_js_1.getMcpProxyVersion)();
|
|
101
|
+
if (versionFile.components.mcpProxy !== currentVersion) {
|
|
102
|
+
versionFile.components.mcpProxy = currentVersion;
|
|
103
|
+
result.updates.push(`MCP proxy version recorded: ${currentVersion}`);
|
|
104
|
+
}
|
|
105
|
+
// Write updated version file
|
|
106
|
+
(0, version_js_1.writeVersionFile)(versionFile);
|
|
107
|
+
// Check for server-side updates (same as dashboard UI)
|
|
108
|
+
const apiKey = loadApiKey();
|
|
109
|
+
if (apiKey) {
|
|
110
|
+
try {
|
|
111
|
+
const serverUpdates = await checkServerUpdates(apiKey, versionFile.components);
|
|
112
|
+
if (serverUpdates.length > 0) {
|
|
113
|
+
console.error(`[Everstate] ${serverUpdates.length} update(s) available:`);
|
|
114
|
+
for (const update of serverUpdates) {
|
|
115
|
+
console.error(` - ${update.title} (${update.category} v${update.version})`);
|
|
116
|
+
}
|
|
117
|
+
console.error(` Run 'npx @everstateai/mcp doctor' to see details`);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
catch {
|
|
121
|
+
// Silently ignore server check failures
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
// Log updates to stderr (MCP servers use stderr for logging)
|
|
125
|
+
if (result.updates.length > 0) {
|
|
126
|
+
console.error(`[Everstate] Auto-updated: ${result.updates.join(', ')}`);
|
|
127
|
+
}
|
|
128
|
+
if (result.errors.length > 0) {
|
|
129
|
+
console.error(`[Everstate] Update errors: ${result.errors.join(', ')}`);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
catch (error) {
|
|
133
|
+
result.errors.push(`Auto-update check failed: ${String(error)}`);
|
|
134
|
+
}
|
|
135
|
+
return result;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Load API key from file
|
|
139
|
+
*/
|
|
140
|
+
function loadApiKey() {
|
|
141
|
+
const keyPath = `${(0, types_js_1.getEverstateDir)()}/api-key`;
|
|
142
|
+
try {
|
|
143
|
+
if (fs.existsSync(keyPath)) {
|
|
144
|
+
return fs.readFileSync(keyPath, 'utf8').trim();
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
catch { }
|
|
148
|
+
return null;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Check for updates from the Everstate server
|
|
152
|
+
*/
|
|
153
|
+
async function checkServerUpdates(apiKey, installedComponents) {
|
|
154
|
+
const response = await fetch(`${types_js_1.EVERSTATE_API_URL}/api/updates/check`, {
|
|
155
|
+
method: 'POST',
|
|
156
|
+
headers: {
|
|
157
|
+
'Authorization': `Bearer ${apiKey}`,
|
|
158
|
+
'Content-Type': 'application/json',
|
|
159
|
+
},
|
|
160
|
+
body: JSON.stringify({
|
|
161
|
+
installedVersions: {
|
|
162
|
+
mcpProxy: installedComponents.mcpProxy,
|
|
163
|
+
syncTodos: installedComponents.hooks.syncTodos,
|
|
164
|
+
},
|
|
165
|
+
}),
|
|
166
|
+
});
|
|
167
|
+
if (!response.ok) {
|
|
168
|
+
return [];
|
|
169
|
+
}
|
|
170
|
+
const data = await response.json();
|
|
171
|
+
return data.updates || [];
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Determine if a hook needs updating
|
|
175
|
+
*/
|
|
176
|
+
function shouldUpdateHook(hookPath, expectedVersion, installedVersion) {
|
|
177
|
+
// If file doesn't exist, needs update
|
|
178
|
+
if (!fs.existsSync(hookPath)) {
|
|
179
|
+
return true;
|
|
180
|
+
}
|
|
181
|
+
// Compare versions
|
|
182
|
+
if (compareVersions(installedVersion, expectedVersion) < 0) {
|
|
183
|
+
return true;
|
|
184
|
+
}
|
|
185
|
+
// Also check the file's embedded version
|
|
186
|
+
const fileVersion = extractHookVersion(hookPath);
|
|
187
|
+
if (!fileVersion || compareVersions(fileVersion, expectedVersion) < 0) {
|
|
188
|
+
return true;
|
|
189
|
+
}
|
|
190
|
+
return false;
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Extract version from hook file
|
|
194
|
+
*/
|
|
195
|
+
function extractHookVersion(filePath) {
|
|
196
|
+
try {
|
|
197
|
+
const content = fs.readFileSync(filePath, 'utf8');
|
|
198
|
+
const versionMatch = content.match(/VERSION:\s*(\d+\.\d+\.\d+)/i);
|
|
199
|
+
if (versionMatch) {
|
|
200
|
+
return versionMatch[1];
|
|
201
|
+
}
|
|
202
|
+
// Legacy format
|
|
203
|
+
const hookVMatch = content.match(/Hook\s+v(\d+)/i);
|
|
204
|
+
if (hookVMatch) {
|
|
205
|
+
return `${hookVMatch[1]}.0.0`;
|
|
206
|
+
}
|
|
207
|
+
return null;
|
|
208
|
+
}
|
|
209
|
+
catch {
|
|
210
|
+
return null;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Compare semver versions
|
|
215
|
+
*/
|
|
216
|
+
function compareVersions(a, b) {
|
|
217
|
+
const aParts = a.split('.').map(Number);
|
|
218
|
+
const bParts = b.split('.').map(Number);
|
|
219
|
+
for (let i = 0; i < 3; i++) {
|
|
220
|
+
const aNum = aParts[i] || 0;
|
|
221
|
+
const bNum = bParts[i] || 0;
|
|
222
|
+
if (aNum < bNum)
|
|
223
|
+
return -1;
|
|
224
|
+
if (aNum > bNum)
|
|
225
|
+
return 1;
|
|
226
|
+
}
|
|
227
|
+
return 0;
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Update the sync-todos hook
|
|
231
|
+
*/
|
|
232
|
+
async function updateSyncTodosHook(hooksDir, hookPath) {
|
|
233
|
+
// Ensure directory exists
|
|
234
|
+
if (!fs.existsSync(hooksDir)) {
|
|
235
|
+
fs.mkdirSync(hooksDir, { recursive: true });
|
|
236
|
+
}
|
|
237
|
+
// Get the new hook content
|
|
238
|
+
const hookContent = (0, templates_js_1.getSyncTodosHook)();
|
|
239
|
+
// Backup existing hook if present
|
|
240
|
+
if (fs.existsSync(hookPath)) {
|
|
241
|
+
const backupPath = `${hookPath}.backup.${Date.now()}`;
|
|
242
|
+
fs.copyFileSync(hookPath, backupPath);
|
|
243
|
+
}
|
|
244
|
+
// Write new hook
|
|
245
|
+
fs.writeFileSync(hookPath, hookContent, { mode: 0o755 });
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Ensure TodoWrite hook is registered in ~/.claude.json
|
|
249
|
+
*/
|
|
250
|
+
async function ensureHookRegistration(syncTodosPath) {
|
|
251
|
+
const configPath = (0, types_js_1.getClaudeConfigPath)();
|
|
252
|
+
if (!fs.existsSync(configPath)) {
|
|
253
|
+
return false;
|
|
254
|
+
}
|
|
255
|
+
try {
|
|
256
|
+
const config = JSON.parse(fs.readFileSync(configPath, 'utf8'));
|
|
257
|
+
if (!config.hooks) {
|
|
258
|
+
config.hooks = {};
|
|
259
|
+
}
|
|
260
|
+
if (!config.hooks.PostToolUse) {
|
|
261
|
+
config.hooks.PostToolUse = [];
|
|
262
|
+
}
|
|
263
|
+
const postToolUse = config.hooks.PostToolUse;
|
|
264
|
+
// Find or create TodoWrite entry
|
|
265
|
+
let todoWriteEntry = postToolUse.find((e) => e.matcher === 'TodoWrite');
|
|
266
|
+
if (!todoWriteEntry) {
|
|
267
|
+
todoWriteEntry = { matcher: 'TodoWrite', hooks: [] };
|
|
268
|
+
postToolUse.push(todoWriteEntry);
|
|
269
|
+
}
|
|
270
|
+
// Check if sync-todos hook is registered with correct path
|
|
271
|
+
const expectedCommand = `node ${syncTodosPath}`;
|
|
272
|
+
const existingHook = todoWriteEntry.hooks.find((h) => h.command?.includes('sync-todos'));
|
|
273
|
+
if (!existingHook) {
|
|
274
|
+
// Add new hook
|
|
275
|
+
todoWriteEntry.hooks.push({
|
|
276
|
+
type: 'command',
|
|
277
|
+
command: expectedCommand,
|
|
278
|
+
timeout: 10,
|
|
279
|
+
});
|
|
280
|
+
fs.writeFileSync(configPath, JSON.stringify(config, null, 2) + '\n');
|
|
281
|
+
return true;
|
|
282
|
+
}
|
|
283
|
+
else if (existingHook.command !== expectedCommand) {
|
|
284
|
+
// Update existing hook with correct path
|
|
285
|
+
existingHook.command = expectedCommand;
|
|
286
|
+
fs.writeFileSync(configPath, JSON.stringify(config, null, 2) + '\n');
|
|
287
|
+
return true;
|
|
288
|
+
}
|
|
289
|
+
return false;
|
|
290
|
+
}
|
|
291
|
+
catch {
|
|
292
|
+
return false;
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
//# sourceMappingURL=auto-update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-update.js","sourceRoot":"","sources":["../../src/setup/auto-update.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCH,oDA6FC;AAjID,uCAAyB;AACzB,yCAKoB;AACpB,6CAKsB;AACtB,uDAAwD;AAExD,MAAM,wBAAwB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW;AAiBjE;;;GAGG;AACI,KAAK,UAAU,oBAAoB;IACxC,MAAM,MAAM,GAAsB;QAChC,WAAW,EAAE,KAAK;QAClB,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE;KACX,CAAC;IAEF,IAAI,CAAC;QACH,8BAA8B;QAC9B,IAAI,WAAW,GAAG,IAAA,4BAAe,GAAE,CAAC;QACpC,MAAM,UAAU,GAAG,CAAC,WAAW,CAAC;QAEhC,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,WAAW,GAAG,IAAA,8BAAiB,EAAC,KAAK,CAAC,CAAC;QACzC,CAAC;QAED,4DAA4D;QAC5D,MAAM,SAAS,GAAG,WAAW,CAAC,eAAe,CAAC;QAC9C,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;YAC3D,IAAI,OAAO,GAAG,wBAAwB,EAAE,CAAC;gBACvC,0BAA0B;gBAC1B,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,WAAW,CAAC,eAAe,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAEvD,sBAAsB;QACtB,MAAM,QAAQ,GAAG,GAAG,IAAA,0BAAe,GAAE,QAAQ,CAAC;QAC9C,MAAM,aAAa,GAAG,GAAG,QAAQ,gBAAgB,CAAC;QAElD,iCAAiC;QACjC,IAAI,gBAAgB,CAAC,aAAa,EAAE,wBAAa,CAAC,SAAS,EAAE,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACrG,IAAI,CAAC;gBACH,MAAM,mBAAmB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;gBACnD,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,GAAG,wBAAa,CAAC,SAAS,CAAC;gBACjE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,wBAAa,CAAC,SAAS,EAAE,CAAC,CAAC;gBAC5E,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;YAC5B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;QAED,+CAA+C;QAC/C,MAAM,uBAAuB,GAAG,MAAM,sBAAsB,CAAC,aAAa,CAAC,CAAC;QAC5E,IAAI,uBAAuB,EAAE,CAAC;YAC5B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;YAC3D,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,2CAA2C;QAC3C,MAAM,cAAc,GAAG,IAAA,+BAAkB,GAAE,CAAC;QAC5C,IAAI,WAAW,CAAC,UAAU,CAAC,QAAQ,KAAK,cAAc,EAAE,CAAC;YACvD,WAAW,CAAC,UAAU,CAAC,QAAQ,GAAG,cAAc,CAAC;YACjD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,+BAA+B,cAAc,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,6BAA6B;QAC7B,IAAA,6BAAgB,EAAC,WAAW,CAAC,CAAC;QAE9B,uDAAuD;QACvD,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;QAC5B,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;gBAC/E,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7B,OAAO,CAAC,KAAK,CAAC,eAAe,aAAa,CAAC,MAAM,uBAAuB,CAAC,CAAC;oBAC1E,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;wBACnC,OAAO,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;oBAC/E,CAAC;oBACD,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;gBACtE,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,wCAAwC;YAC1C,CAAC;QACH,CAAC;QAED,6DAA6D;QAC7D,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,KAAK,CAAC,6BAA6B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,KAAK,CAAC,8BAA8B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1E,CAAC;IAEH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,UAAU;IACjB,MAAM,OAAO,GAAG,GAAG,IAAA,0BAAe,GAAE,UAAU,CAAC;IAC/C,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,OAAO,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QACjD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IACV,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,kBAAkB,CAC/B,MAAc,EACd,mBAAuE;IAEvE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,4BAAiB,oBAAoB,EAAE;QACrE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,eAAe,EAAE,UAAU,MAAM,EAAE;YACnC,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,iBAAiB,EAAE;gBACjB,QAAQ,EAAE,mBAAmB,CAAC,QAAQ;gBACtC,SAAS,EAAE,mBAAmB,CAAC,KAAK,CAAC,SAAS;aAC/C;SACF,CAAC;KACH,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAkC,CAAC;IACnE,OAAO,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CACvB,QAAgB,EAChB,eAAuB,EACvB,gBAAwB;IAExB,sCAAsC;IACtC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mBAAmB;IACnB,IAAI,eAAe,CAAC,gBAAgB,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yCAAyC;IACzC,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,CAAC,WAAW,IAAI,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QACtE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,QAAgB;IAC1C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAClD,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAClE,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QACD,gBAAgB;QAChB,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACnD,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;QAChC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,CAAS,EAAE,CAAS;IAC3C,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAExC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,IAAI,GAAG,IAAI;YAAE,OAAO,CAAC,CAAC,CAAC;QAC3B,IAAI,IAAI,GAAG,IAAI;YAAE,OAAO,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,mBAAmB,CAAC,QAAgB,EAAE,QAAgB;IACnE,0BAA0B;IAC1B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,2BAA2B;IAC3B,MAAM,WAAW,GAAG,IAAA,+BAAgB,GAAE,CAAC;IAEvC,kCAAkC;IAClC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,GAAG,QAAQ,WAAW,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QACtD,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,iBAAiB;IACjB,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,sBAAsB,CAAC,aAAqB;IACzD,MAAM,UAAU,GAAG,IAAA,8BAAmB,GAAE,CAAC;IAEzC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;QACpB,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YAC9B,MAAM,CAAC,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC;QAChC,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,WAG/B,CAAC;QAEH,iCAAiC;QACjC,IAAI,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,WAAW,CAAC,CAAC;QACxE,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,cAAc,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YACrD,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACnC,CAAC;QAED,2DAA2D;QAC3D,MAAM,eAAe,GAAG,QAAQ,aAAa,EAAE,CAAC;QAChD,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACnD,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,CAClC,CAAC;QAEF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,eAAe;YACf,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,eAAe;gBACxB,OAAO,EAAE,EAAE;aACZ,CAAC,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YACrE,OAAO,IAAI,CAAC;QACd,CAAC;aAAM,IAAI,YAAY,CAAC,OAAO,KAAK,eAAe,EAAE,CAAC;YACpD,yCAAyC;YACzC,YAAY,CAAC,OAAO,GAAG,eAAe,CAAC;YACvC,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YACrE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Doctor Command
|
|
3
|
+
*
|
|
4
|
+
* Diagnoses Everstate installation issues.
|
|
5
|
+
*
|
|
6
|
+
* Usage:
|
|
7
|
+
* npx @everstateai/mcp doctor
|
|
8
|
+
* npx @everstateai/mcp doctor --json
|
|
9
|
+
* npx @everstateai/mcp doctor --verbose
|
|
10
|
+
* npx @everstateai/mcp doctor --component hooks
|
|
11
|
+
*/
|
|
12
|
+
import { DoctorOptions } from '../types.js';
|
|
13
|
+
export declare function doctor(options?: DoctorOptions): Promise<void>;
|
|
14
|
+
export declare function doctorCli(args: string[]): Promise<void>;
|
|
15
|
+
//# sourceMappingURL=doctor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/setup/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAIL,aAAa,EAGd,MAAM,aAAa,CAAC;AAIrB,wBAAsB,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6BvE;AA0JD,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8B7D"}
|