/
aqa
/
claude-code
Обзор
Документация
Войти
/
aqa
/
claude-code
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
utils/cwd.ts
32 строки
985 B
kuberwastaken
new initial commit (history rewritten)
01 апр 2026, 14:57
01 апр 2026, 14:57
c1996f2
Код
Авторство
О чём код?
import { AsyncLocalStorage } from 'async_hooks' import { getCwdState, getOriginalCwd } from '../bootstrap/state.js' const cwdOverrideStorage = new AsyncLocalStorage<string>() /** * Run a function with an overridden working directory for the current async context. * All calls to pwd()/getCwd() within the function (and its async descendants) will * return the overridden cwd instead of the global one. This enables concurrent * agents to each see their own working directory without affecting each other. */ export function runWithCwdOverride<T>(cwd: string, fn: () => T): T { return cwdOverrideStorage.run(cwd, fn) } /** * Get the current working directory */ export function pwd(): string { return cwdOverrideStorage.getStore() ?? getCwdState() } /** * Get the current working directory or the original working directory if the current one is not available */ export function getCwd(): string { try { return pwd() } catch { return getOriginalCwd() } }