xtrm-tools 0.5.15 → 0.5.16

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.
@@ -13503,7 +13503,7 @@ var require_jsonfile = __commonJS({
13503
13503
  await universalify.fromCallback(fs21.writeFile)(file2, str, options);
13504
13504
  }
13505
13505
  var writeFile = universalify.fromPromise(_writeFile);
13506
- function writeFileSync2(file2, obj, options = {}) {
13506
+ function writeFileSync3(file2, obj, options = {}) {
13507
13507
  const fs21 = options.fs || _fs;
13508
13508
  const str = stringify2(obj, options);
13509
13509
  return fs21.writeFileSync(file2, str, options);
@@ -13512,7 +13512,7 @@ var require_jsonfile = __commonJS({
13512
13512
  readFile,
13513
13513
  readFileSync: readFileSync2,
13514
13514
  writeFile,
13515
- writeFileSync: writeFileSync2
13515
+ writeFileSync: writeFileSync3
13516
13516
  };
13517
13517
  }
13518
13518
  });
@@ -33827,7 +33827,7 @@ var init_boxen = __esm({
33827
33827
  });
33828
33828
 
33829
33829
  // src/index.ts
33830
- var import_node_fs4 = require("fs");
33830
+ var import_node_fs5 = require("fs");
33831
33831
  var import_node_path6 = require("path");
33832
33832
 
33833
33833
  // ../node_modules/commander/esm.mjs
@@ -41286,6 +41286,8 @@ var import_node_child_process3 = require("child_process");
41286
41286
  // src/utils/worktree-session.ts
41287
41287
  var import_node_path5 = __toESM(require("path"), 1);
41288
41288
  var import_node_child_process2 = require("child_process");
41289
+ var import_node_fs4 = require("fs");
41290
+ var import_node_os5 = require("os");
41289
41291
  function randomSlug(len = 4) {
41290
41292
  return Math.random().toString(36).slice(2, 2 + len);
41291
41293
  }
@@ -41339,6 +41341,18 @@ async function launchWorktreeSession(opts) {
41339
41341
  console.log(kleur_default.green(`
41340
41342
  \u2713 Worktree ready \u2014 launching ${runtime}...
41341
41343
  `));
41344
+ if (runtime === "claude") {
41345
+ const statuslineScript = import_node_path5.default.join((0, import_node_os5.homedir)(), ".claude", "hooks", "statusline.mjs");
41346
+ const claudeDir = import_node_path5.default.join(worktreePath, ".claude");
41347
+ const localSettingsPath = import_node_path5.default.join(claudeDir, "settings.local.json");
41348
+ try {
41349
+ (0, import_node_fs4.mkdirSync)(claudeDir, { recursive: true });
41350
+ (0, import_node_fs4.writeFileSync)(localSettingsPath, JSON.stringify({
41351
+ statusLine: { type: "command", command: `node ${statuslineScript}`, padding: 1 }
41352
+ }, null, 2));
41353
+ } catch {
41354
+ }
41355
+ }
41342
41356
  const runtimeCmd = runtime === "claude" ? "claude" : "pi";
41343
41357
  const runtimeArgs = runtime === "claude" ? ["--dangerously-skip-permissions"] : [];
41344
41358
  const launchResult = (0, import_node_child_process2.spawnSync)(runtimeCmd, runtimeArgs, {
@@ -41436,7 +41450,7 @@ function createClaudeCommand() {
41436
41450
  // src/commands/pi.ts
41437
41451
  var import_path13 = __toESM(require("path"), 1);
41438
41452
  var import_node_child_process5 = require("child_process");
41439
- var import_node_os6 = require("os");
41453
+ var import_node_os7 = require("os");
41440
41454
  var import_fs_extra13 = __toESM(require_lib2(), 1);
41441
41455
 
41442
41456
  // src/commands/install-pi.ts
@@ -41444,8 +41458,8 @@ var import_prompts2 = __toESM(require_prompts3(), 1);
41444
41458
  var import_fs_extra12 = __toESM(require_lib2(), 1);
41445
41459
  var import_path12 = __toESM(require("path"), 1);
41446
41460
  var import_node_child_process4 = require("child_process");
41447
- var import_node_os5 = require("os");
41448
- var PI_AGENT_DIR2 = process.env.PI_AGENT_DIR || import_path12.default.join((0, import_node_os5.homedir)(), ".pi", "agent");
41461
+ var import_node_os6 = require("os");
41462
+ var PI_AGENT_DIR2 = process.env.PI_AGENT_DIR || import_path12.default.join((0, import_node_os6.homedir)(), ".pi", "agent");
41449
41463
  function fillTemplate(template, values) {
41450
41464
  return template.replace(/\{\{(\w+)\}\}/g, (_, key) => values[key] ?? "");
41451
41465
  }
@@ -41644,7 +41658,7 @@ function createInstallPiCommand() {
41644
41658
  }
41645
41659
 
41646
41660
  // src/commands/pi.ts
41647
- var PI_AGENT_DIR3 = process.env.PI_AGENT_DIR || import_path13.default.join((0, import_node_os6.homedir)(), ".pi", "agent");
41661
+ var PI_AGENT_DIR3 = process.env.PI_AGENT_DIR || import_path13.default.join((0, import_node_os7.homedir)(), ".pi", "agent");
41648
41662
  function createPiCommand() {
41649
41663
  const cmd = new Command("pi").description("Launch a Pi session in a sandboxed worktree, or manage the Pi runtime").argument("[name]", "Optional session name \u2014 used as xt/<name> branch (random if omitted)").action(async (name) => {
41650
41664
  await launchWorktreeSession({ runtime: "pi", name });
@@ -56918,7 +56932,7 @@ async function printBanner(version3) {
56918
56932
  // src/index.ts
56919
56933
  var version2 = "0.0.0";
56920
56934
  try {
56921
- version2 = JSON.parse((0, import_node_fs4.readFileSync)((0, import_node_path6.resolve)(__dirname, "../package.json"), "utf8")).version;
56935
+ version2 = JSON.parse((0, import_node_fs5.readFileSync)((0, import_node_path6.resolve)(__dirname, "../package.json"), "utf8")).version;
56922
56936
  } catch {
56923
56937
  }
56924
56938
  var program2 = new Command();