MCPcopy Create free account
hub / github.com/EvoMap/evolver / resolveClaudeSettingsFile

Function resolveClaudeSettingsFile

src/proxy/clientSettings.js:80–103  ·  view source on GitHub ↗
(opts = {}, env = process.env)

Source from the content-addressed store, hash-verified

78}
79
80function resolveClaudeSettingsFile(opts = {}, env = process.env) {
81 if (opts.file) {
82 return { file: opts.file, source: 'opts' };
83 }
84
85 const defaultFile = getClaudeSettingsFile(env);
86 if (!defaultFile) {
87 return { file: null, reason: 'missing_settings_path' };
88 }
89
90 const envFile = getEnvClaudeSettingsFile(env);
91 if (!envFile) {
92 return { file: defaultFile, source: 'default' };
93 }
94
95 const home = getHomeDir(env);
96 const envResolved = normalizeSettingsPath(envFile, home);
97 const defaultResolved = normalizeSettingsPath(defaultFile, home);
98 if (samePath(envResolved, defaultResolved)) {
99 return { file: defaultFile, source: 'env_default' };
100 }
101
102 return { file: null, reason: 'unsafe_settings_path' };
103}
104
105function readJsonFile(file) {
106 const result = readJsonFileResult(file);

Callers 2

syncClaudeProxySettingsFunction · 0.85

Calls 5

getEnvClaudeSettingsFileFunction · 0.85
getHomeDirFunction · 0.85
normalizeSettingsPathFunction · 0.85
samePathFunction · 0.85
getClaudeSettingsFileFunction · 0.70

Tested by

no test coverage detected