import fs from 'node:fs';
import os from 'node:os';
import path from 'node:path';

const CONFIG_PATH = path.join(os.homedir(), '.naomi.json');

// Адрес шлюза NAOMI Cloud (прод). Локальная разработка: NAOMI_SERVER_URL=http://127.0.0.1:9913
// или сохранённый сервер в ~/.naomi.json — они приоритетнее дефолта.
export const DEFAULT_SERVER = process.env.NAOMI_SERVER_URL || 'https://api.naomicloud.ru';

export function loadConfig() {
  let saved = {};
  try {
    saved = JSON.parse(fs.readFileSync(CONFIG_PATH, 'utf8'));
  } catch {}
  return {
    server: DEFAULT_SERVER,
    apiKey: '',
    model: '',
    policy: 'safe',
    uiPort: 8420,
    ...saved,
  };
}

export function saveConfig(patch) {
  const next = { ...loadConfig(), ...patch };
  fs.writeFileSync(CONFIG_PATH, JSON.stringify(next, null, 2), { mode: 0o600 });
  return next;
}

export { CONFIG_PATH };
