@integrity-labs/agt-cli 0.28.363 → 0.28.365

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.
@@ -9641,29 +9641,69 @@ function materializeEnvPlaceholders(raw, env2) {
9641
9641
  });
9642
9642
  }
9643
9643
  var MATERIALIZED_CONFIG_BASENAME = "opencode.jsonc";
9644
- function writeMaterializedOpencodeConfig(codeName, projectDir2, serveEnv, log2) {
9645
- const target = join3(projectDir2, MATERIALIZED_CONFIG_BASENAME);
9646
- let raw;
9644
+ function opencodeGlobalConfigPath(serveEnv) {
9645
+ const xdg = serveEnv["XDG_CONFIG_HOME"]?.trim();
9646
+ const base = xdg && xdg.length > 0 ? xdg : join3(serveEnv["HOME"]?.trim() || homedir3(), ".config");
9647
+ return join3(base, "opencode", "opencode.json");
9648
+ }
9649
+ function buildGlobalMcpConfig(materializedConfig) {
9650
+ let parsed;
9647
9651
  try {
9648
- raw = readFileSync5(join3(projectDir2, "opencode.json"), "utf-8");
9652
+ parsed = JSON.parse(materializedConfig);
9649
9653
  } catch {
9654
+ return null;
9655
+ }
9656
+ if (typeof parsed !== "object" || parsed === null) return null;
9657
+ const cfg = parsed;
9658
+ if (!cfg.mcp || Object.keys(cfg.mcp).length === 0) return null;
9659
+ return JSON.stringify(
9660
+ { $schema: cfg.$schema ?? "https://opencode.ai/config.json", mcp: cfg.mcp },
9661
+ null,
9662
+ 2
9663
+ );
9664
+ }
9665
+ function writeConfigFile600(target, content, codeName, log2) {
9666
+ try {
9667
+ mkdirSync3(dirname2(target), { recursive: true });
9668
+ writeFileSync3(target, content, { mode: 384 });
9650
9669
  try {
9651
- if (existsSync4(target)) rmSync2(target);
9670
+ chmodSync2(target, 384);
9652
9671
  } catch {
9653
9672
  }
9654
9673
  return true;
9655
- }
9656
- try {
9657
- writeFileSync3(target, materializeEnvPlaceholders(raw, serveEnv), { mode: 384 });
9658
9674
  } catch (err) {
9659
- log2(`[opencode-session] failed to write materialized opencode.jsonc for '${codeName}': ${err.message}`);
9675
+ log2(`[opencode-session] failed to write ${target} for '${codeName}': ${err.message}`);
9660
9676
  return false;
9661
9677
  }
9678
+ }
9679
+ function writeMaterializedOpencodeConfig(codeName, projectDir2, serveEnv, log2) {
9680
+ const projectTarget = join3(projectDir2, MATERIALIZED_CONFIG_BASENAME);
9681
+ const globalTarget = opencodeGlobalConfigPath(serveEnv);
9682
+ let raw;
9662
9683
  try {
9663
- chmodSync2(target, 384);
9684
+ raw = readFileSync5(join3(projectDir2, "opencode.json"), "utf-8");
9664
9685
  } catch {
9686
+ for (const t of [projectTarget, globalTarget]) {
9687
+ try {
9688
+ if (existsSync4(t)) rmSync2(t);
9689
+ } catch {
9690
+ }
9691
+ }
9692
+ return true;
9665
9693
  }
9666
- return true;
9694
+ const materialized = materializeEnvPlaceholders(raw, serveEnv);
9695
+ const projectOk = writeConfigFile600(projectTarget, materialized, codeName, log2);
9696
+ const globalMcp = buildGlobalMcpConfig(materialized);
9697
+ let globalOk = true;
9698
+ if (globalMcp) {
9699
+ globalOk = writeConfigFile600(globalTarget, globalMcp, codeName, log2);
9700
+ } else {
9701
+ try {
9702
+ if (existsSync4(globalTarget)) rmSync2(globalTarget);
9703
+ } catch {
9704
+ }
9705
+ }
9706
+ return projectOk && globalOk;
9667
9707
  }
9668
9708
  function baseUrlFor(port) {
9669
9709
  return `http://127.0.0.1:${port}`;
@@ -11647,4 +11687,4 @@ export {
11647
11687
  stopAllSessionsAndWait,
11648
11688
  getProjectDir
11649
11689
  };
11650
- //# sourceMappingURL=chunk-JRML25UU.js.map
11690
+ //# sourceMappingURL=chunk-N7Z6UOKY.js.map