summaryrefslogtreecommitdiff
path: root/packages/cli/src/utils/userStartupWarnings.ts
diff options
context:
space:
mode:
authorDevansh Sharma <[email protected]>2025-07-15 11:49:46 +0200
committerGitHub <[email protected]>2025-07-15 09:49:46 +0000
commit123c3e7c7f5d63dba149f673b71ab124a7f03772 (patch)
tree9f2167a91cdad8fbaf5b5eddd7dcff7d71545407 /packages/cli/src/utils/userStartupWarnings.ts
parentf5d5213504b76bbc01e7479335f5a91848e5f7ed (diff)
feat: add a warning that shows if user uses node -v <20 #2930 (#3371)
Co-authored-by: Jacob Richman <[email protected]>
Diffstat (limited to 'packages/cli/src/utils/userStartupWarnings.ts')
-rw-r--r--packages/cli/src/utils/userStartupWarnings.ts18
1 files changed, 17 insertions, 1 deletions
diff --git a/packages/cli/src/utils/userStartupWarnings.ts b/packages/cli/src/utils/userStartupWarnings.ts
index 3d76a6e1..ddf2300d 100644
--- a/packages/cli/src/utils/userStartupWarnings.ts
+++ b/packages/cli/src/utils/userStartupWarnings.ts
@@ -6,6 +6,7 @@
import fs from 'fs/promises';
import * as os from 'os';
+import semver from 'semver';
type WarningCheck = {
id: string;
@@ -32,8 +33,23 @@ const homeDirectoryCheck: WarningCheck = {
},
};
+const nodeVersionCheck: WarningCheck = {
+ id: 'node-version',
+ check: async (_workspaceRoot: string) => {
+ const minMajor = 20;
+ const major = semver.major(process.versions.node);
+ if (major < minMajor) {
+ return `You are using Node.js v${process.versions.node}. Gemini CLI requires Node.js ${minMajor} or higher for best results.`;
+ }
+ return null;
+ },
+};
+
// All warning checks
-const WARNING_CHECKS: readonly WarningCheck[] = [homeDirectoryCheck];
+const WARNING_CHECKS: readonly WarningCheck[] = [
+ homeDirectoryCheck,
+ nodeVersionCheck,
+];
export async function getUserStartupWarnings(
workspaceRoot: string,