ccsini 0.1.35 → 0.1.37

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 +59 -1
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -28018,7 +28018,7 @@ var {
28018
28018
  } = import__.default;
28019
28019
 
28020
28020
  // src/version.ts
28021
- var VERSION = "0.1.35";
28021
+ var VERSION = "0.1.37";
28022
28022
 
28023
28023
  // src/commands/init.ts
28024
28024
  init_source();
@@ -30409,6 +30409,61 @@ function registerSessionsCommand(program2) {
30409
30409
  });
30410
30410
  }
30411
30411
 
30412
+ // src/commands/menu.ts
30413
+ init_source();
30414
+ init_dist16();
30415
+ var LOGO = source_default.hex("#FFA500").bold(`
30416
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2557\u2588\u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2557
30417
+ \u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551\u2588\u2588\u2551
30418
+ \u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2551\u2588\u2588\u2554\u2588\u2588\u2557 \u2588\u2588\u2551\u2588\u2588\u2551
30419
+ \u2588\u2588\u2551 \u2588\u2588\u2551 \u255A\u2550\u2550\u2550\u2550\u2588\u2588\u2551\u2588\u2588\u2551\u2588\u2588\u2551\u255A\u2588\u2588\u2557\u2588\u2588\u2551\u2588\u2588\u2551
30420
+ \u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2551\u2588\u2588\u2551\u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2588\u2551\u2588\u2588\u2551
30421
+ \u255A\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u255D\u255A\u2550\u255D \u255A\u2550\u2550\u2550\u255D\u255A\u2550\u255D
30422
+ `);
30423
+ var TAGLINE = ` ${source_default.bold(`ccsini v${VERSION}`)} \u2014 Claude Code seamless sync
30424
+ ${source_default.dim("Encrypted sync for your Claude Code settings across devices")}
30425
+ `;
30426
+ async function showInteractiveMenu(program2) {
30427
+ if (!process.stdin.isTTY) {
30428
+ program2.help();
30429
+ return;
30430
+ }
30431
+ console.log(LOGO);
30432
+ console.log(TAGLINE);
30433
+ const configDir = getConfigDir();
30434
+ const initialized = await configExists(configDir);
30435
+ const fmt = (cmd, desc) => `${source_default.bold(cmd.padEnd(16))} ${source_default.dim(desc)}`;
30436
+ const choices = initialized ? [
30437
+ { name: fmt("Sync Push", "Push local changes to cloud"), value: ["sync", "push"] },
30438
+ { name: fmt("Sync Pull", "Pull changes from cloud"), value: ["sync", "pull"] },
30439
+ { name: fmt("Sync Status", "Show sync status"), value: ["sync", "status"] },
30440
+ { name: fmt("Sessions", "Configure session sync"), value: ["sessions", "status"] },
30441
+ { name: fmt("Doctor", "Check system health"), value: ["doctor"] },
30442
+ { name: fmt("Hooks Fix", "Repair broken hooks"), value: ["hooks", "fix"] },
30443
+ { name: fmt("Help", "Show all commands"), value: ["--help"] },
30444
+ { name: source_default.dim("Exit"), value: [] }
30445
+ ] : [
30446
+ { name: fmt("Setup", "Connect this device"), value: ["init"] },
30447
+ { name: fmt("Doctor", "Check system health"), value: ["doctor"] },
30448
+ { name: fmt("Help", "Show all commands"), value: ["--help"] },
30449
+ { name: source_default.dim("Exit"), value: [] }
30450
+ ];
30451
+ try {
30452
+ const { action } = await dist_default12.prompt([
30453
+ {
30454
+ type: "list",
30455
+ name: "action",
30456
+ message: "What would you like to do?",
30457
+ choices
30458
+ }
30459
+ ]);
30460
+ if (action.length === 0) {
30461
+ return;
30462
+ }
30463
+ await program2.parseAsync(["node", "ccsini", ...action]);
30464
+ } catch {}
30465
+ }
30466
+
30412
30467
  // src/index.ts
30413
30468
  var program2 = new Command;
30414
30469
  program2.name("ccsini").description("Claude Code seamless sync across devices").version(VERSION);
@@ -30423,4 +30478,7 @@ registerSessionsCommand(program2);
30423
30478
  program2.command("version").description("Show current version").action(() => {
30424
30479
  console.log(VERSION);
30425
30480
  });
30481
+ program2.action(async () => {
30482
+ await showInteractiveMenu(program2);
30483
+ });
30426
30484
  program2.parse();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ccsini",
3
- "version": "0.1.35",
3
+ "version": "0.1.37",
4
4
  "description": "Claude Code seamless sync across devices",
5
5
  "type": "module",
6
6
  "bin": {