@eminent337/aery 0.1.86 → 0.1.87

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.
@@ -673,8 +673,8 @@ export class InteractiveMode {
673
673
  try {
674
674
  const { execFile } = await import("node:child_process");
675
675
  const { promisify } = await import("node:util");
676
- const { existsSync, readFileSync, writeFileSync } = await import("node:fs");
677
- const { join } = await import("node:path");
676
+ const { existsSync, mkdirSync, readFileSync, writeFileSync } = await import("node:fs");
677
+ const { dirname, join } = await import("node:path");
678
678
  const { homedir } = await import("node:os");
679
679
  const exec = promisify(execFile);
680
680
  await exec("aery", ["install", "https://github.com/eminent337/aery-extensions"], {
@@ -704,20 +704,21 @@ export class InteractiveMode {
704
704
  "aery-doctor",
705
705
  "aery-team",
706
706
  ["subagent", "subagent/index"],
707
+ "marketplace",
708
+ "init-prompt",
707
709
  ];
708
- if (existsSync(settingsPath)) {
709
- const settings = JSON.parse(readFileSync(settingsPath, "utf-8"));
710
- const existing = new Set(settings.extensions || []);
711
- for (const ext of CORE) {
712
- const [_name, filePath] = Array.isArray(ext) ? ext : [ext, ext];
713
- const p = join(repoPath, "core", `${filePath}.ts`);
714
- if (existsSync(p) && !existing.has(p)) {
715
- settings.extensions = settings.extensions || [];
716
- settings.extensions.push(p);
717
- }
710
+ const settings = existsSync(settingsPath) ? JSON.parse(readFileSync(settingsPath, "utf-8")) : {};
711
+ const existing = new Set(settings.extensions || []);
712
+ for (const ext of CORE) {
713
+ const [_name, filePath] = Array.isArray(ext) ? ext : [ext, ext];
714
+ const p = join(repoPath, "core", `${filePath}.ts`);
715
+ if (existsSync(p) && !existing.has(p)) {
716
+ settings.extensions = settings.extensions || [];
717
+ settings.extensions.push(p);
718
718
  }
719
- writeFileSync(settingsPath, JSON.stringify({ ...settings, quietStartup: true }, null, 2));
720
719
  }
720
+ mkdirSync(dirname(settingsPath), { recursive: true });
721
+ writeFileSync(settingsPath, `${JSON.stringify({ ...settings, quietStartup: true }, null, 2)}\n`);
721
722
  }
722
723
  catch {
723
724
  // Silent fail — user can install manually