arisa 2.2.4 → 2.2.5

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/bin/arisa.js +9 -28
  2. package/package.json +1 -1
package/bin/arisa.js CHANGED
@@ -465,7 +465,7 @@ function provisionArisaUser() {
465
465
  spawnSync("usermod", ["-aG", group, "arisa"], { stdio: "ignore" });
466
466
  }
467
467
 
468
- // 2. Install bun (downloads ~30 MB, may take a minute)
468
+ // 2. Install bun (curl, not bun low memory footprint)
469
469
  process.stdout.write(" Installing bun (this may take a minute)...\n");
470
470
  const bunInstall = runAsInherit("curl -fsSL https://bun.sh/install | bash");
471
471
  if (bunInstall.status !== 0) {
@@ -483,30 +483,11 @@ function provisionArisaUser() {
483
483
  spawnSync("chown", ["arisa:arisa", profilePath], { stdio: "ignore" });
484
484
  }
485
485
 
486
- // 3. Copy arisa source
487
- const dest = "/home/arisa/arisa";
488
- spawnSync("cp", ["-r", pkgRoot, dest], { stdio: "pipe" });
489
- spawnSync("chown", ["-R", "arisa:arisa", dest], { stdio: "pipe" });
486
+ // 3. Ensure pkgRoot is readable by arisa user (run from global install, no copy)
487
+ spawnSync("chmod", ["-R", "o+rX", pkgRoot], { stdio: "ignore" });
488
+ step(true, `Arisa will run from ${pkgRoot}`);
490
489
 
491
- // Install deps + global
492
- process.stdout.write(" Installing dependencies...\n");
493
- const install = runAsInherit("cd ~/arisa && ~/.bun/bin/bun install && ~/.bun/bin/bun add -g .");
494
- if (install.status !== 0) {
495
- step(false, "Failed to install dependencies");
496
- process.exit(1);
497
- }
498
- step(true, "Arisa installed for arisa");
499
-
500
- // 4. Install AI CLIs (before daemon starts — avoids OOM in low-memory environments)
501
- process.stdout.write(" Installing Claude Code CLI...\n");
502
- const claudeInstall = runAsInherit("~/.bun/bin/bun add -g @anthropic-ai/claude-code");
503
- step(claudeInstall.status === 0, "Claude Code CLI");
504
-
505
- process.stdout.write(" Installing Codex CLI...\n");
506
- const codexInstall = runAsInherit("~/.bun/bin/bun add -g @openai/codex");
507
- step(codexInstall.status === 0, "Codex CLI");
508
-
509
- // 5. Migrate data
490
+ // 4. Migrate data
510
491
  const rootArisa = "/root/.arisa";
511
492
  if (existsSync(rootArisa)) {
512
493
  const destArisa = "/home/arisa/.arisa";
@@ -529,11 +510,11 @@ Wants=network-online.target
529
510
  [Service]
530
511
  Type=simple
531
512
  User=arisa
532
- WorkingDirectory=/home/arisa/arisa
533
- ExecStart=/home/arisa/.bun/bin/bun /home/arisa/arisa/src/daemon/index.ts
513
+ WorkingDirectory=${pkgRoot}
514
+ ExecStart=/home/arisa/.bun/bin/bun ${daemonEntry}
534
515
  Restart=always
535
516
  RestartSec=5
536
- Environment=ARISA_PROJECT_DIR=/home/arisa/arisa
517
+ Environment=ARISA_PROJECT_DIR=${pkgRoot}
537
518
  Environment=BUN_INSTALL=/home/arisa/.bun
538
519
  Environment=PATH=/home/arisa/.bun/bin:/usr/local/bin:/usr/bin:/bin
539
520
 
@@ -593,7 +574,7 @@ function canUseSystemdSystem() {
593
574
  }
594
575
 
595
576
  function runArisaForeground() {
596
- const su = spawnSync("su", ["-", "arisa", "-c", `${ARISA_BUN_ENV} && /home/arisa/.bun/bin/bun /home/arisa/arisa/src/daemon/index.ts`], {
577
+ const su = spawnSync("su", ["-", "arisa", "-c", `${ARISA_BUN_ENV} && export ARISA_PROJECT_DIR=${pkgRoot} && /home/arisa/.bun/bin/bun ${daemonEntry}`], {
597
578
  stdio: "inherit",
598
579
  });
599
580
  return su.status ?? 1;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "arisa",
3
- "version": "2.2.4",
3
+ "version": "2.2.5",
4
4
  "description": "Arisa - dynamic agent runtime with daemon/core architecture that evolves through user interaction",
5
5
  "preferGlobal": true,
6
6
  "bin": {