Files
wehub-resource-sync adc62957a7
CI / Multi-repo Path Gate (AST-grep) (windows-latest) (push) Has been cancelled
CI / Version Consistency Check (push) Has been cancelled
CI / npm pack + install test (push) Has been cancelled
CI / Lint & Type Check (push) Has been cancelled
CI / Test (push) Has been cancelled
CI / Test (Windows path suite) (push) Has been cancelled
CI / Build (push) Has been cancelled
CI / No Committed Build Artifacts (push) Has been cancelled
CI / Multi-repo Path Gate (AST-grep) (ubuntu-latest) (push) Has been cancelled
Upgrade Test / omc update + session-start hook (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:36:54 +08:00

38 lines
902 B
JavaScript

import { homedir } from 'node:os';
import { join, normalize, parse, sep } from 'node:path';
function stripTrailingSep(p) {
if (!p.endsWith(sep)) {
return p;
}
return p === parse(p).root ? p : p.slice(0, -1);
}
export function getClaudeConfigDir() {
const home = homedir();
const configured = process.env.CLAUDE_CONFIG_DIR?.trim();
if (!configured) {
return stripTrailingSep(normalize(join(home, '.claude')));
}
if (configured === '~') {
return stripTrailingSep(normalize(home));
}
if (configured.startsWith('~/') || configured.startsWith('~\\')) {
return stripTrailingSep(normalize(join(home, configured.slice(2))));
}
return stripTrailingSep(normalize(configured));
}
export function getOmcConfigDir() {
return join(getClaudeConfigDir(), '.omc');
}
export function getUpdateCheckCachePath() {
return join(getOmcConfigDir(), 'update-check.json');
}