MCPcopy Create free account
hub / github.com/Mnexa-AI/e2a / loadConfig

Function loadConfig

cli/src/config.ts:26–52  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

24const DEFAULT_SHARED_DOMAIN = "agents.e2a.dev";
25
26export function loadConfig(): Config {
27 const config: Config = {
28 api_key: "",
29 api_url: DEFAULT_URL,
30 agent_email: "",
31 shared_domain: DEFAULT_SHARED_DOMAIN,
32 };
33
34 // Read from file
35 try {
36 const raw = readFileSync(CONFIG_PATH, "utf-8");
37 const file = JSON.parse(raw);
38 if (file.api_key) config.api_key = file.api_key;
39 if (file.api_url) config.api_url = file.api_url;
40 if (file.agent_email) config.agent_email = file.agent_email;
41 if (file.shared_domain) config.shared_domain = file.shared_domain;
42 } catch {
43 // No config file yet
44 }
45
46 // Env vars override file
47 if (process.env.E2A_API_KEY) config.api_key = process.env.E2A_API_KEY;
48 if (process.env.E2A_URL) config.api_url = process.env.E2A_URL;
49 if (process.env.E2A_SHARED_DOMAIN) config.shared_domain = process.env.E2A_SHARED_DOMAIN;
50
51 return config;
52}
53
54export function saveConfig(updates: Partial<Config>): void {
55 const current = loadConfig();

Callers 7

saveConfigFunction · 0.70
createClientFunction · 0.70
requireAgentEmailFunction · 0.70
configFunction · 0.50
showAllFunction · 0.50
loginFunction · 0.50
config.test.tsFile · 0.50

Calls 1

parseMethod · 0.80

Tested by

no test coverage detected