harnessed 3.9.2 → 3.9.4
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/cli.mjs +26 -17
- package/dist/cli.mjs.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/cli.mjs
CHANGED
|
@@ -777,9 +777,7 @@ async function checkMcpAvailability() {
|
|
|
777
777
|
const parsed = JSON.parse(raw);
|
|
778
778
|
const servers = parsed.mcpServers ?? {};
|
|
779
779
|
const serverNames = Object.keys(servers);
|
|
780
|
-
installed = TARGET_SERVERS.filter(
|
|
781
|
-
(s) => serverNames.some((n) => n.includes(s) || s.includes(n))
|
|
782
|
-
);
|
|
780
|
+
installed = TARGET_SERVERS.filter((s) => serverNames.includes(s));
|
|
783
781
|
missing = TARGET_SERVERS.filter((s) => !installed.includes(s));
|
|
784
782
|
} catch {
|
|
785
783
|
}
|
|
@@ -811,10 +809,10 @@ async function checkMcpAvailability() {
|
|
|
811
809
|
var TARGET_SERVERS, SERVER_INSTALL_COMMANDS;
|
|
812
810
|
var init_check_mcp_availability = __esm({
|
|
813
811
|
"src/cli/lib/check-mcp-availability.ts"() {
|
|
814
|
-
TARGET_SERVERS = ["tavily-mcp", "exa
|
|
812
|
+
TARGET_SERVERS = ["tavily-remote-mcp", "exa", "chrome-devtools"];
|
|
815
813
|
SERVER_INSTALL_COMMANDS = {
|
|
816
|
-
"tavily-mcp": "claude mcp add tavily-remote-mcp --transport http https://mcp.tavily.com/mcp/",
|
|
817
|
-
|
|
814
|
+
"tavily-remote-mcp": "claude mcp add tavily-remote-mcp --transport http https://mcp.tavily.com/mcp/",
|
|
815
|
+
exa: "claude mcp add --transport http exa https://mcp.exa.ai/mcp",
|
|
818
816
|
// chrome-devtools: official Claude marketplace direct install (v3.9.2 dogfood
|
|
819
817
|
// confirmed — was assumed npx in v3.9.1 SPEC, corrected to official marketplace).
|
|
820
818
|
"chrome-devtools": "claude plugin install chrome-devtools-mcp"
|
|
@@ -1120,15 +1118,14 @@ async function runAutoInstall(opts) {
|
|
|
1120
1118
|
out.skipped.push(check.name);
|
|
1121
1119
|
continue;
|
|
1122
1120
|
}
|
|
1123
|
-
|
|
1121
|
+
const failureReasons = [];
|
|
1124
1122
|
for (const cmd of commands) {
|
|
1125
1123
|
const tokens = cmd.split(/\s+/).filter((t2) => t2.length > 0);
|
|
1126
1124
|
const exe = tokens[0];
|
|
1127
1125
|
const args = tokens.slice(1);
|
|
1128
1126
|
if (exe === void 0) {
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
break;
|
|
1127
|
+
failureReasons.push(`empty command in install_commands`);
|
|
1128
|
+
continue;
|
|
1132
1129
|
}
|
|
1133
1130
|
const r = spawnSync(exe, args, {
|
|
1134
1131
|
encoding: "utf8",
|
|
@@ -1139,16 +1136,28 @@ async function runAutoInstall(opts) {
|
|
|
1139
1136
|
shell: true
|
|
1140
1137
|
});
|
|
1141
1138
|
if (r.status !== 0) {
|
|
1142
|
-
const reason = r.error !== void 0 ? `spawn error
|
|
1143
|
-
|
|
1144
|
-
console.error(`
|
|
1145
|
-
chainOk = false;
|
|
1146
|
-
break;
|
|
1139
|
+
const reason = r.error !== void 0 ? `spawn error on \`${cmd}\`: ${r.error.message}` : `exit ${r.status ?? "<unknown>"} on \`${cmd}\``;
|
|
1140
|
+
failureReasons.push(reason);
|
|
1141
|
+
console.error(` \u2717 ${cmd} \u2014 ${reason}`);
|
|
1147
1142
|
}
|
|
1148
1143
|
}
|
|
1149
|
-
if (
|
|
1144
|
+
if (failureReasons.length === 0) {
|
|
1150
1145
|
out.installed.push(check.name);
|
|
1151
1146
|
console.log(` \u2713 installed ${check.name}`);
|
|
1147
|
+
} else if (failureReasons.length === commands.length) {
|
|
1148
|
+
out.failed.push({
|
|
1149
|
+
name: check.name,
|
|
1150
|
+
reason: `all commands failed (${failureReasons.length})`
|
|
1151
|
+
});
|
|
1152
|
+
console.error(` \u2717 failed ${check.name} \u2014 all ${commands.length} commands failed`);
|
|
1153
|
+
} else {
|
|
1154
|
+
out.failed.push({
|
|
1155
|
+
name: check.name,
|
|
1156
|
+
reason: `partial: ${failureReasons.length}/${commands.length} commands failed`
|
|
1157
|
+
});
|
|
1158
|
+
console.error(
|
|
1159
|
+
` \u26A0 ${check.name} \u2014 partial: ${failureReasons.length}/${commands.length} commands failed (others succeeded)`
|
|
1160
|
+
);
|
|
1152
1161
|
}
|
|
1153
1162
|
}
|
|
1154
1163
|
console.log(
|
|
@@ -1165,7 +1174,7 @@ var init_auto_install = __esm({
|
|
|
1165
1174
|
|
|
1166
1175
|
// package.json
|
|
1167
1176
|
var package_default = {
|
|
1168
|
-
version: "3.9.
|
|
1177
|
+
version: "3.9.4"};
|
|
1169
1178
|
|
|
1170
1179
|
// src/manifest/errors.ts
|
|
1171
1180
|
function instancePathToKeyPath(instancePath) {
|