DEV Community

Biya
Biya

Posted on

I built fswitch: A zero-dependency CLI to switch and chat with free LLMs (DeepSeek, Gemini, Ollama)

Tired of juggling API subscriptions, setting up heavy frameworks like LangChain, or writing custom boilerplate code just to test different LLMs?

I built fswitch-cli (fswitch) - a fast, lightweight Python CLI tool that lets you switch between models, chat with LLMs, and run autonomous coding agent tasks on free-tier and local AI models with zero configuration overhead.

Supported Providers:

  • OpenRouter (NVIDIA Nemotron, DeepSeek R1, Gemini Flash, and more)
  • Google AI Studio (Gemini 2.5 Flash/Pro)
  • Groq Cloud
  • GitHub Models
  • Mistral AI (Codestral)
  • Ollama (Local/offline models)
  • Native Anthropic (Claude 3.5 Sonnet)

Key Features:

  1. Interactive REPL
    Type "fswitch repl" to start a chat. You can switch models mid-conversation using the "/switch " command!

  2. Autonomous Agent with Self-Correction
    Need the model to write code and fix its own bugs? fswitch has an autonomous agent mode:
    fswitch agent "create a calculator api" --test "pytest"
    The agent will write the code, run the tests, read any error outputs, and self-correct until the tests pass.

  3. Speed Benchmarking
    Race models against each other on a single prompt to see which provider is fastest:
    fswitch benchmark --prompt "write a binary search in Rust"

Technical Highlights:

  • Zero heavy dependencies: Built purely on standard Python requests + rich for terminal UI formatting.
  • Visuals: Real-time markdown streaming with visual "Thinking..." loading animations.

Try it out!

You can install it directly from PyPI:
pip install fswitch-cli

Check out the source code, contribute, or drop a star on GitHub:
https://github.com/Biya-dev/freeswitch

I'd love to hear your feedback, feature ideas, and what models you'd like to see added next!

Top comments (0)