Skip to content

Protagonistss/fnva

Repository files navigation

fnva - Fast Environment Version Alter

Fast, cross-platform environment version switcher

中文文档 · Architecture · Releases

npm version crates.io License: MIT

fnva is a cross-platform environment switcher for Java, Claude Code (CC), and general LLM setups. Written in Rust, it starts instantly, has zero runtime dependencies, and works via shell snippets without background daemons.

Core Features

  • Fast & Zero Dependencies: Single static binary.
  • 🔄 Session & Global Switching: Per-shell activation and global defaults.
  • 🐚 Broad Shell Support: PowerShell, Bash, Zsh, Fish, CMD.
  • 🧠 Auto-restore: Opening a new terminal automatically restores your last active environment.
  • Smart Java Management: Scan and dedupe local JDKs.
  • 🤖 Unified LLM Setup: Configure LLM API keys in one place.

Documentation Navigation

Installation

# npm (recommended)
npm install -g fnva

# Cargo
cargo install fnva

Or download from Releases and add to PATH.

Quick Start

  • Shell Integration: eval "$(fnva env env --shell bash)"
  • Scan Java: fnva java scan
  • Switch Java: fnva java use jdk-17 (with shell integration)
  • Switch CC profile: fnva cc use glmcc

Configuration

Config is stored at ~/.fnva/config.toml (Windows: %USERPROFILE%\.fnva\config.toml).

License

MIT License.

About

Management environment Java、Maven、Node、LLM

Topics

Resources

License

Stars

Watchers

Forks

Contributors