fall back to ~/.env if .env is not found in current directory or any ancestors (#338)

This commit is contained in:
Olcan 2025-05-13 15:36:34 -07:00 committed by GitHub
parent 3be8b6dc34
commit 4a0f5476c0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 14 additions and 1 deletions

View file

@ -8,6 +8,7 @@ import * as dotenv from 'dotenv';
import * as fs from 'node:fs';
import * as path from 'node:path';
import process from 'node:process';
import * as os from 'node:os';
import { ToolRegistry } from '../tools/tool-registry.js';
import { LSTool } from '../tools/ls.js';
import { ReadFileTool } from '../tools/read-file.js';
@ -97,6 +98,11 @@ function findEnvFile(startDir: string): string | null {
}
const parentDir = path.dirname(currentDir);
if (parentDir === currentDir || !parentDir) {
// check ~/.env as fallback
const homeEnvPath = path.join(os.homedir(), '.env');
if (fs.existsSync(homeEnvPath)) {
return homeEnvPath;
}
return null;
}
currentDir = parentDir;