Setup
Recommended methods for running Faheem Code on your local system
System requirements
- MacOS with Docker Desktop support
- Linux
- Windows with WSL and Docker Desktop support
A system with a modern processor and a minimum of 4GB RAM is recommended to run Faheem Code.
Prerequisites
macOS
Docker Desktop
- Install Docker Desktop on Mac.
- Open Docker Desktop, go to
Settings > Advancedand ensureAllow the default Docker socket to be usedis enabled.
Linux
Docker Desktop
Windows
WSL
- Install WSL.
- Run
wsl --versionin PowerShell and confirmDefault Version: 2.
Ubuntu (Linux Distribution)
- Install Ubuntu:
wsl --install -d Ubuntuin PowerShell as Administrator. - Restart computer when prompted.
- Open Ubuntu from Start menu to complete setup.
- Verify installation:
wsl --listshould show Ubuntu.
Docker Desktop
- Install Docker Desktop on Windows.
- Open Docker Desktop, go to
Settingsand confirm the following:
- General:
Use the WSL 2 based engineis enabled. - Resources > WSL Integration:
Enable integration with my default WSL distrois enabled.
Start the app
Option 1: using the CLI launcher with uv (recommended)
We recommend using uv for the best Faheem Code experience. uv provides better isolation from your current project's virtual environment and is required for Faheem Code' default MCP servers (like the fetch MCP server).
Install uv (if you haven't already):
See the uv installation guide for the latest installation instructions for your platform.
Install Faheem Code:
uv tool install faheemcode --python 3.12
Launch Faheem Code:
# Launch the GUI server
faheemcode serve
# Or with GPU support (requires nvidia-docker)
faheemcode serve --gpu
# Or with current directory mounted
faheemcode serve --mount-cwd
This will automatically handle Docker requirements checking, image pulling, and launching the GUI server. The --gpu flag enables GPU support via nvidia-docker, and --mount-cwd mounts your current directory into the container.
Upgrade Faheem Code:
uv tool upgrade faheemcode --python 3.12
Alternative: traditional pip installation
If you prefer to use pip and have Python 3.12+ installed:
# Install Faheem Code
pip install faheemcode
# Launch the GUI server
faheemcode serve
Note that you'll still need uv installed for the default MCP servers to work properly.
Option 2: using Docker directly
Docker command (click to expand)
docker run -it --rm --pull=always \
-e AGENT_SERVER_IMAGE_REPOSITORY=ghcr.io/alsairy/faheem-code-agent-server \
-e AGENT_SERVER_IMAGE_TAG=1.26.0-python \
-e LOG_ALL_EVENTS=true \
-v /var/run/docker.sock:/var/run/docker.sock \
-v ~/.faheem-code:/.faheem-code \
-p 3000:3000 \
--add-host host.docker.internal:host-gateway \
--name faheem-code-app \
ghcr.io/alsairy/faheem-code-app:1.8
You'll find Faheem Code running at http://localhost:3000.
Setup
After launching Faheem Code, you must select an LLM Provider and LLM Model and enter a corresponding API Key.
This can be done during the initial settings popup or by selecting the Settings
button (gear icon) in the UI.
If the required model does not exist in the list, in Settings under the LLM tab, you can toggle Advanced options
and manually enter it with the correct prefix in the Custom Model text box.
The Advanced options also allow you to specify a Base URL if required.
Getting an API key
Faheem Code requires an API key to access most language models. Here's how to get an API key from the recommended providers:
Faheem Code (recommended)
- Log in to Faheem Code Cloud.
- Go to the Settings page and navigate to the
API Keystab. - Copy your
LLM API Key.
Faheem Code provides access to state-of-the-art agentic coding models with competitive pricing. Learn more about Faheem Code LLM provider.
Anthropic (Claude)
Google (Gemini)
- Create a Google account if you don't already have one.
- Generate an API key.
- Set up billing.
Local LLM (e.g. LM Studio, llama.cpp, Ollama)
If your local LLM server isn’t behind an authentication proxy, you can enter any value as the API key (e.g. local-key, test123) — it won’t be used.
Consider setting usage limits to control costs.
Using a local LLM
To run Faheem Code with a locally hosted language model instead of a cloud provider, see the Local LLMs guide for setup instructions.
Setting up search engine
Faheem Code can be configured to use a search engine to allow the agent to search the web for information when needed.
To enable search functionality in Faheem Code:
- Get a Tavily API key from tavily.com.
- Enter the Tavily API key in the Settings page under
LLMtab >Search API Key (Tavily)
For more details, see the Search Engine Setup guide.
Versions
The docker command above pulls the most recent stable release of Faheem Code. You have other options as well:
- For a specific release, replace
$VERSIONinfaheemcode:$VERSIONandruntime:$VERSION, with the version number. For example,0.9will automatically point to the latest0.9.xrelease, and0will point to the latest0.x.xrelease. - For the most up-to-date development version, replace
$VERSIONinfaheemcode:$VERSIONandruntime:$VERSION, withmain. This version is unstable and is recommended for testing or development purposes only.
Next steps
- Mount your local code into the sandbox to use Faheem Code with your repositories
- Run Faheem Code in a scriptable headless mode.
- Run Faheem Code with a friendly CLI.