@yawlabs/mcp 0.66.2 → 0.67.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 (2) hide show
  1. package/dist/index.js +50 -20
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -2198,8 +2198,8 @@ function resolveInstallPath(opts) {
2198
2198
  }
2199
2199
  function pathFor(client, scope, os, base) {
2200
2200
  const { home, appData, projectDir, claudeConfigDir } = base;
2201
- const sep2 = os === "windows" ? "\\" : "/";
2202
- const joinPath = (...parts) => parts.join(sep2);
2201
+ const sep3 = os === "windows" ? "\\" : "/";
2202
+ const joinPath = (...parts) => parts.join(sep3);
2203
2203
  if (client === "claude-code") {
2204
2204
  if (scope === "user") {
2205
2205
  if (claudeConfigDir) {
@@ -4006,7 +4006,7 @@ async function runUpgrade(opts = {}) {
4006
4006
  return { exitCode: 3, lines };
4007
4007
  }
4008
4008
  function readCurrentVersion() {
4009
- return true ? "0.66.2" : "dev";
4009
+ return true ? "0.67.0" : "dev";
4010
4010
  }
4011
4011
 
4012
4012
  // src/usage-hints.ts
@@ -4068,7 +4068,7 @@ function selectFlakyNamespaces(entries, limit) {
4068
4068
  }
4069
4069
 
4070
4070
  // src/doctor-cmd.ts
4071
- var VERSION = true ? "0.66.2" : "dev";
4071
+ var VERSION = true ? "0.67.0" : "dev";
4072
4072
  function isPersistenceDisabled(env) {
4073
4073
  const raw = env.YAW_MCP_DISABLE_PERSISTENCE;
4074
4074
  return raw !== void 0 && raw !== "" && (raw === "1" || raw.toLowerCase() === "true");
@@ -6876,7 +6876,7 @@ function defaultSpawn2(cmd, args) {
6876
6876
  async function maybeAutoUpgrade(deps = {}) {
6877
6877
  const optOut = process.env.YAW_MCP_AUTO_UPGRADE;
6878
6878
  if (optOut === "0" || optOut?.toLowerCase() === "false") return;
6879
- const current = deps.currentVersion ?? (true ? "0.66.2" : "dev");
6879
+ const current = deps.currentVersion ?? (true ? "0.67.0" : "dev");
6880
6880
  if (current === "dev") return;
6881
6881
  const method = (deps.isSeaImpl ? await deps.isSeaImpl() : await detectSea()) ? "binary" : detectInstallMethod(deps.argvPath ?? process.argv[1]);
6882
6882
  const latest = await (deps.fetchLatestImpl ?? fetchLatestVersion2)();
@@ -9431,7 +9431,10 @@ import {
9431
9431
 
9432
9432
  // src/oam-spawn.ts
9433
9433
  import { execFileSync } from "child_process";
9434
+ import { readdirSync } from "fs";
9434
9435
  import { createRequire } from "module";
9436
+ import { join as join13, sep as sep2 } from "path";
9437
+ import { fileURLToPath } from "url";
9435
9438
  var requireFrom = createRequire(import.meta.url);
9436
9439
  function packageName(spec) {
9437
9440
  const start = spec.startsWith("@") ? 1 : 0;
@@ -9439,9 +9442,12 @@ function packageName(spec) {
9439
9442
  return at === -1 ? spec : spec.slice(0, at);
9440
9443
  }
9441
9444
  var oamBinCache;
9445
+ function winNormalize(p, platform = process.platform) {
9446
+ return platform === "win32" ? p.replace(/\//g, "\\") : p;
9447
+ }
9442
9448
  function oamBin() {
9443
9449
  if (oamBinCache !== void 0) return oamBinCache;
9444
- const bin = process.env.OAM_BIN || (process.platform === "win32" ? "oam.exe" : "oam");
9450
+ const bin = winNormalize(process.env.OAM_BIN || (process.platform === "win32" ? "oam.exe" : "oam"));
9445
9451
  try {
9446
9452
  execFileSync(bin, ["--version"], { stdio: "ignore" });
9447
9453
  oamBinCache = bin;
@@ -9472,16 +9478,40 @@ function rewriteForOam(command, args, deps) {
9472
9478
  }
9473
9479
  return { command, args };
9474
9480
  }
9481
+ function npxCacheNodeModules(fromUrl = import.meta.url) {
9482
+ let here;
9483
+ try {
9484
+ here = fileURLToPath(fromUrl);
9485
+ } catch {
9486
+ return [];
9487
+ }
9488
+ const marker = `${sep2}_npx${sep2}`;
9489
+ const idx = here.indexOf(marker);
9490
+ if (idx === -1) return [];
9491
+ const npxRoot = here.slice(0, idx + marker.length - sep2.length);
9492
+ try {
9493
+ return readdirSync(npxRoot, { withFileTypes: true }).filter((e) => e.isDirectory()).map((e) => join13(npxRoot, e.name, "node_modules"));
9494
+ } catch {
9495
+ return [];
9496
+ }
9497
+ }
9498
+ function resolveNpmEntry(pkg, fromUrl = import.meta.url) {
9499
+ try {
9500
+ return requireFrom.resolve(pkg);
9501
+ } catch {
9502
+ }
9503
+ for (const nodeModules of npxCacheNodeModules(fromUrl)) {
9504
+ try {
9505
+ return requireFrom.resolve(pkg, { paths: [nodeModules] });
9506
+ } catch {
9507
+ }
9508
+ }
9509
+ return null;
9510
+ }
9475
9511
  function resolveOamSpawn(command, args) {
9476
9512
  return rewriteForOam(command, args, {
9477
9513
  oamBin: oamBin(),
9478
- resolveEntry: (pkg) => {
9479
- try {
9480
- return requireFrom.resolve(pkg);
9481
- } catch {
9482
- return null;
9483
- }
9484
- }
9514
+ resolveEntry: (pkg) => resolveNpmEntry(pkg)
9485
9515
  });
9486
9516
  }
9487
9517
 
@@ -9824,7 +9854,7 @@ function categorizeSpawnError(err) {
9824
9854
  }
9825
9855
  async function connectToUpstream(config, onDisconnect, onListChanged) {
9826
9856
  const client = new Client(
9827
- { name: "yaw-mcp", version: true ? "0.66.2" : "dev" },
9857
+ { name: "yaw-mcp", version: true ? "0.67.0" : "dev" },
9828
9858
  { capabilities: {} }
9829
9859
  );
9830
9860
  let transport;
@@ -10159,7 +10189,7 @@ var ConnectServer = class _ConnectServer {
10159
10189
  this.apiUrl = apiUrl5;
10160
10190
  this.token = token5;
10161
10191
  this.server = new Server(
10162
- { name: "yaw-mcp", version: true ? "0.66.2" : "dev" },
10192
+ { name: "yaw-mcp", version: true ? "0.67.0" : "dev" },
10163
10193
  {
10164
10194
  capabilities: {
10165
10195
  tools: { listChanged: true },
@@ -12782,10 +12812,10 @@ import { homedir as homedir17 } from "os";
12782
12812
  // src/sync-state.ts
12783
12813
  import { existsSync as existsSync8 } from "fs";
12784
12814
  import { mkdir as mkdir5, readFile as readFile13 } from "fs/promises";
12785
- import { dirname as dirname5, join as join13 } from "path";
12815
+ import { dirname as dirname5, join as join14 } from "path";
12786
12816
  var SYNC_STATE_FILENAME = "sync-state.json";
12787
12817
  function syncStatePath(home) {
12788
- return join13(home, CONFIG_DIRNAME, SYNC_STATE_FILENAME);
12818
+ return join14(home, CONFIG_DIRNAME, SYNC_STATE_FILENAME);
12789
12819
  }
12790
12820
  async function readSyncState(home) {
12791
12821
  const path5 = syncStatePath(home);
@@ -13169,7 +13199,7 @@ function suggestFlag(input, limit = 2) {
13169
13199
  import { existsSync as existsSync9 } from "fs";
13170
13200
  import { mkdir as mkdir6, readFile as readFile14 } from "fs/promises";
13171
13201
  import { homedir as homedir19 } from "os";
13172
- import { dirname as dirname6, join as join14 } from "path";
13202
+ import { dirname as dirname6, join as join15 } from "path";
13173
13203
  var SYNC_USAGE = `Usage: yaw-mcp sync <push|pull|status> [--json]
13174
13204
 
13175
13205
  Replicate ~/.yaw-mcp/bundles.json across machines via your Yaw
@@ -13216,7 +13246,7 @@ ${SYNC_USAGE}` };
13216
13246
  return { ok: true, options: opts };
13217
13247
  }
13218
13248
  function bundlesPath(home) {
13219
- return join14(home, CONFIG_DIRNAME, BUNDLES_FILENAME2);
13249
+ return join15(home, CONFIG_DIRNAME, BUNDLES_FILENAME2);
13220
13250
  }
13221
13251
  async function readLocalBundles(home) {
13222
13252
  const path5 = bundlesPath(home);
@@ -13847,7 +13877,7 @@ if (subcommand === "compliance") {
13847
13877
  `);
13848
13878
  process.exit(0);
13849
13879
  } else if (subcommand === "--version" || subcommand === "-V") {
13850
- process.stdout.write(`yaw-mcp ${true ? "0.66.2" : "dev"}
13880
+ process.stdout.write(`yaw-mcp ${true ? "0.67.0" : "dev"}
13851
13881
  `);
13852
13882
  process.exit(0);
13853
13883
  } else if (subcommand && !subcommand.startsWith("-")) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yawlabs/mcp",
3
- "version": "0.66.2",
3
+ "version": "0.67.0",
4
4
  "mcpName": "io.github.YawLabs/mcp",
5
5
  "description": "Yaw MCP -- MCP servers, managed. Free to run locally; Yaw Team adds cross-machine sync.",
6
6
  "license": "UNLICENSED",
@@ -39,7 +39,7 @@
39
39
  },
40
40
  "devDependencies": {
41
41
  "@biomejs/biome": "^2.5.0",
42
- "@types/node": "^25.9.3",
42
+ "@types/node": "^26.0.0",
43
43
  "esbuild": "^0.28.1",
44
44
  "postject": "^1.0.0-alpha.6",
45
45
  "tsup": "^8.4.0",