gemini-cli - 💡(How to fix) Fix Feat: Support Bun as an alternative runtime/package manager for updates and extensions

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Currently, Gemini CLI heavily relies on a hardcoded npm and node environment when handling internal updates, global updates, and installing/managing extensions.

As a developer who uses bun for everything, this creates compatibility issues. Updates don't propagate properly, and managing extensions fails because npm might not even be configured or preferred in the user's local environment.

Root Cause

As a developer who uses bun for everything, this creates compatibility issues. Updates don't propagate properly, and managing extensions fails because npm might not even be configured or preferred in the user's local environment.

RAW_BUFFERClick to expand / collapse

What would you like to be added?

Description

Currently, Gemini CLI heavily relies on a hardcoded npm and node environment when handling internal updates, global updates, and installing/managing extensions.

As a developer who uses bun for everything, this creates compatibility issues. Updates don't propagate properly, and managing extensions fails because npm might not even be configured or preferred in the user's local environment.

Expected Behavior

I expect Gemini CLI to be runtime-agnostic or at least respect the user's preferred package manager.

It would be amazing to have:

  1. An option in the global configuration (e.g., runtime: "bun" or packageManager: "bun") inside settings.json.
  2. Automatic detection of the environment (if bun is used to run the CLI, use bun for updates/extensions instead of hardcoding npm install).

Additional Context

There are already community discussions around this (like the NixOS/Bun environment problems). Since Bun is completely compatible with the npm registry, allowing a swap from npm install to bun install or bun update would significantly improve the DX (Developer Experience) for alternative runtime users.

Why is this needed?

Why is this needed?

Hardcoding npm forces developers who have fully migrated to modern, faster tools like Bun to keep Node.js/NPM configured solely for Gemini CLI.

Furthermore, running everything through NPM can lead to broken paths, permission issues, or slow installation times for extensions in environments where Bun is the primary runtime. Providing an alternative ensures Gemini CLI remains truly modern, flexible, and friendly to the current JS ecosystem.

Additional context

No response

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING