utils/env/env_manager
library
Functions
-
applyConfigEnvironmentVariables({required Map<String, String>? getGlobalConfigEnv(), required Map<String, String>? getAllSettingsEnv(), void clearCACertsCache()?, void clearMTLSCache()?, void clearProxyCache()?, void configureGlobalAgents()?})
→ void
-
Apply ALL environment variables after trust is established.
-
applySafeConfigEnvironmentVariables({required Map<String, String>? getGlobalConfigEnv(), required Map<String, String>? getSettingsForSourceEnv(String source), required Map<String, String>? getAllSettingsEnv(), required bool isSettingSourceEnabled(String source)})
→ void
-
Apply environment variables from trusted sources.
-
detectDeploymentEnvironment()
→ String
-
-
detectJetBrainsIDEFromParentProcessAsync()
→ Future<String?>
-
-
detectPackageManagers()
→ Future<List<String>>
-
Detect available package managers.
-
detectRuntimes()
→ Future<List<String>>
-
Detect available runtimes.
-
detectTerminal()
→ String?
-
Detect the terminal / editor hosting the CLI.
-
filterSettingsEnv(Map<String, String>? env)
→ Map<String, String>
-
Compose the strip filters applied to every settings-sourced env object.
-
getAWSRegion()
→ String
-
Get the AWS region with fallback to default.
-
getDefaultVertexRegion()
→ String
-
Get the default Vertex AI region.
-
getGlobalNeomageFile({String fileSuffix = ''})
→ String
-
Returns the path to the global neomage config JSON file.
-
getHostPlatformForAnalytics()
→ NeomagePlatform
-
Returns the host platform for analytics reporting.
-
getIsBubblewrapSandbox()
→ bool
-
Check if running inside a Bubblewrap sandbox.
-
getIsDocker()
→ Future<bool>
-
Check if running inside a Docker container (Linux only).
-
getNeomageConfigHomeDir()
→ String
-
-
getTeamsDir()
→ String
-
Returns the teams directory under the config home.
-
getTerminalWithJetBrainsDetection()
→ String?
-
Synchronous version using cache or falling back to detectTerminal().
-
getTerminalWithJetBrainsDetectionAsync()
→ Future<String?>
-
Async terminal detection with JetBrains awareness.
-
getVertexRegionForModel(String? model)
→ String?
-
Get the Vertex AI region for a specific model.
Different models may be available in different regions.
-
hasInternetAccess()
→ Future<bool>
-
Check internet access (best-effort, 1 s timeout).
-
hasNodeOption(String flag)
→ bool
-
Check if NODE_OPTIONS contains a specific flag.
Splits on whitespace and checks for exact match.
-
initJetBrainsDetection()
→ Future<void>
-
Initialise JetBrains IDE detection early.
-
isBareMode()
→ bool
-
--bare / MAGE_SIMPLE: skip hooks, LSP, plugin sync, skill walk,
attribution, background prefetches, and ALL keychain/credential reads.
-
isConductor()
→ bool
-
Checks if we're running via Conductor.
-
isEnvDefinedFalsy(dynamic envVar)
→ bool
-
Check if an environment variable is explicitly set to a falsy value.
Accepts
'0', 'false', 'no', 'off' (case-insensitive).
-
isEnvTruthy(dynamic envVar)
→ bool
-
Check if an environment-variable-like value is truthy.
Accepts
'1', 'true', 'yes', 'on' (case-insensitive).
-
isInProtectedNamespace()
→ bool
-
Conservative check for whether Neomage is running inside a protected
(privileged or ASL3+) COO namespace or cluster.
-
isMuslEnvironment()
→ bool
-
Checks whether the system uses musl libc instead of glibc.
-
isNpmFromWindowsPath()
→ bool
-
Checks if the npm executable is from the Windows filesystem in WSL.
-
isProviderManagedEnvVar(String key)
→ bool
-
Check if a key is a provider-managed env var.
-
isRunningOnHomespace()
→ bool
-
Check if running on Homespace (ant-internal cloud environment).
-
isWslEnvironment()
→ bool
-
-
parseEnvVars(List<String>? rawEnvArgs)
→ Map<String, String>
-
Parse an array of
KEY=VALUE strings into a map.
-
shouldMaintainProjectWorkingDir()
→ bool
-
Check if bash commands should maintain project working directory.
-
validateBoundedIntEnvVar({required String name, required String? value, required int defaultValue, required int upperLimit})
→ EnvVarValidationResult
-
Validate and clamp an integer env var within
1 .. upperLimit.
Returns the default when the value is absent or non-positive.