claudemesh-cli 0.8.1 → 0.8.2

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 +29 -2
  2. package/package.json +4 -4
package/dist/index.js CHANGED
@@ -47795,6 +47795,28 @@ async function signHello(meshId, memberId, pubkey, secretKeyHex) {
47795
47795
 
47796
47796
  // src/ws/client.ts
47797
47797
  init_keypair();
47798
+ function detectClaudeSessionId() {
47799
+ try {
47800
+ const { readdirSync, statSync, readFileSync: readFileSync2 } = __require("node:fs");
47801
+ const { join: join2 } = __require("node:path");
47802
+ const { homedir: homedir2 } = __require("node:os");
47803
+ const cwd = process.cwd();
47804
+ const projectsDir = join2(homedir2(), ".claude", "projects");
47805
+ const cwdHash = cwd.replace(/\//g, "-");
47806
+ const entries = readdirSync(projectsDir);
47807
+ const projectDir = entries.find((e) => e === cwdHash || e.startsWith(cwdHash));
47808
+ if (!projectDir)
47809
+ return null;
47810
+ const fullDir = join2(projectsDir, projectDir);
47811
+ const jsonls = readdirSync(fullDir).filter((f) => f.endsWith(".jsonl")).map((f) => ({ name: f, mtime: statSync(join2(fullDir, f)).mtimeMs })).sort((a, b) => b.mtime - a.mtime);
47812
+ if (jsonls.length === 0)
47813
+ return null;
47814
+ const latest = jsonls[0];
47815
+ return latest.name.replace(".jsonl", "");
47816
+ } catch {
47817
+ return null;
47818
+ }
47819
+ }
47798
47820
  var MAX_QUEUED = 100;
47799
47821
  var HELLO_ACK_TIMEOUT_MS = 5000;
47800
47822
  var BACKOFF_CAPS = [1000, 2000, 4000, 8000, 16000, 30000];
@@ -47884,7 +47906,7 @@ class BrokerClient {
47884
47906
  pubkey: this.mesh.pubkey,
47885
47907
  sessionPubkey: this.sessionPubkey,
47886
47908
  displayName: process.env.CLAUDEMESH_DISPLAY_NAME || this.opts.displayName || undefined,
47887
- sessionId: `${process.pid}-${Date.now()}`,
47909
+ sessionId: process.env.CLAUDEMESH_SESSION_ID || detectClaudeSessionId() || `${process.pid}-${Date.now()}`,
47888
47910
  pid: process.pid,
47889
47911
  cwd: process.cwd(),
47890
47912
  hostname: __require("os").hostname(),
@@ -52112,6 +52134,7 @@ async function runHook(args) {
52112
52134
  // src/commands/launch.ts
52113
52135
  init_config();
52114
52136
  import { spawn } from "node:child_process";
52137
+ import { randomUUID } from "node:crypto";
52115
52138
  import { mkdtempSync, writeFileSync as writeFileSync4, rmSync, readdirSync, statSync, existsSync as existsSync3, readFileSync as readFileSync3 } from "node:fs";
52116
52139
  import { tmpdir, hostname as hostname2, homedir as homedir4 } from "node:os";
52117
52140
  import { join as join4 } from "node:path";
@@ -52420,9 +52443,12 @@ async function runLaunch(flags, rawArgs) {
52420
52443
  }
52421
52444
  filtered.push(args.claudeArgs[i]);
52422
52445
  }
52446
+ const claudeSessionId = randomUUID();
52423
52447
  const claudeArgs = [
52424
52448
  "--dangerously-load-development-channels",
52425
52449
  "server:claudemesh",
52450
+ "--session-id",
52451
+ claudeSessionId,
52426
52452
  ...args.skipPermConfirm ? ["--dangerously-skip-permissions"] : [],
52427
52453
  ...args.systemPrompt ? ["--system-prompt", args.systemPrompt] : [],
52428
52454
  ...filtered
@@ -52435,6 +52461,7 @@ async function runLaunch(flags, rawArgs) {
52435
52461
  ...process.env,
52436
52462
  CLAUDEMESH_CONFIG_DIR: tmpDir,
52437
52463
  CLAUDEMESH_DISPLAY_NAME: displayName,
52464
+ CLAUDEMESH_SESSION_ID: claudeSessionId,
52438
52465
  MCP_TIMEOUT: process.env.MCP_TIMEOUT ?? "30000",
52439
52466
  MAX_MCP_OUTPUT_TOKENS: process.env.MAX_MCP_OUTPUT_TOKENS ?? "50000",
52440
52467
  ...role ? { CLAUDEMESH_ROLE: role } : {}
@@ -52491,7 +52518,7 @@ init_config();
52491
52518
  // package.json
52492
52519
  var package_default = {
52493
52520
  name: "claudemesh-cli",
52494
- version: "0.8.1",
52521
+ version: "0.8.2",
52495
52522
  description: "Claude Code MCP client for claudemesh — peer mesh messaging between Claude sessions.",
52496
52523
  keywords: [
52497
52524
  "claude-code",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claudemesh-cli",
3
- "version": "0.8.1",
3
+ "version": "0.8.2",
4
4
  "description": "Claude Code MCP client for claudemesh — peer mesh messaging between Claude sessions.",
5
5
  "keywords": [
6
6
  "claude-code",
@@ -48,10 +48,10 @@
48
48
  "prettier": "3.6.2",
49
49
  "typescript": "5.9.3",
50
50
  "vitest": "4.0.14",
51
- "@turbostarter/vitest-config": "0.1.0",
52
- "@turbostarter/tsconfig": "0.1.0",
53
51
  "@turbostarter/prettier-config": "0.1.0",
54
- "@turbostarter/eslint-config": "0.1.0"
52
+ "@turbostarter/eslint-config": "0.1.0",
53
+ "@turbostarter/vitest-config": "0.1.0",
54
+ "@turbostarter/tsconfig": "0.1.0"
55
55
  },
56
56
  "scripts": {
57
57
  "build": "bun build src/index.ts --target=node --outfile dist/index.js --banner \"#!/usr/bin/env node\" && chmod +x dist/index.js",