You need Python 3.11.7 and some system dependencies to run Wingman AI Core. We recommend using pyenv to manage Python versions.
sudo apt-get update
sudo apt-get install -y build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncurses-dev \
libffi-dev liblzma-dev tk-dev portaudio19-dev libsdl2-devsudo pacman -Syu --noconfirm base-devel openssl zlib bzip2 readline sqlite \
wget curl llvm ncurses libffi xz tk portaudio sdl2sudo dnf install -y gcc make openssl-devel zlib-devel bzip2-devel \
readline-devel sqlite-devel wget curl llvm ncurses-devel \
libffi-devel xz-devel tk-devel portaudio-devel SDL2-develcurl https://pyenv.run | bashAdd the following to your ~/.bashrc or ~/.zshrc:
export PYENV_ROOT="$HOME/.pyenv"
command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"Restart the terminal, then:
pyenv install 3.11.7
pyenv global 3.11.7Test with python --version.
Wingman AI needs access to keyboard and mouse input events. Add your user to the input group:
sudo usermod -aG input $USERLog out and back in for the group change to take effect.
Fork and clone the repository, then start a terminal in the root folder.
python -m venv venv # create a virtual environment
source venv/bin/activate # activate the virtual environment
pip install -r requirements.txt # install dependenciesrequirements.txt installs one package (pocket-tts) from GitHub, so Git must be installed.
Models (Parakeet, Pocket TTS, Silero VAD and others) are downloaded by Core on first use into the models/ folder of the Wingman user data directory (~/.local/share/WingmanAI/models on Linux). If you already have a Wingman AI installation, the dev environment uses the same folder, so there is nothing to copy.
On Linux, torch from PyPI is the CUDA build and pulls in about 4 GB of NVIDIA libraries. Wingman only needs torch for Pocket TTS, which runs on the CPU. The release build installs the CPU wheel before the requirements, and you can do the same:
pip install torch==2.8.0 torchaudio==2.8.0 --index-url https://download.pytorch.org/whl/cpu
pip install -r requirements.txtGPU speech recognition (Parakeet) does not use torch. It runs on onnxruntime-gpu with the CUDA 13 packages from requirements.txt.
Open the root folder in Visual Studio Code. It should automatically detect the virtual environment and suggest the correct Python interpreter. If not, open the command palette (Ctrl+Shift+P), run Python: Select Interpreter, and select the venv you created.
The repo includes recommended extensions in .vscode/extensions.json — install them when prompted.
Press F5 to launch main.py via the preconfigured debugger. The Wingman AI Core API server will start on 127.0.0.1:49111. Connect the Wingman AI client to use it.
If it doesn't start, verify that:
- The virtual environment is selected as the Python interpreter
- All dependencies are installed (
pip install -r requirements.txt) - The integrated terminal is running from the repository root directory
pip install -r requirements-dev.txt
python -m pytestSee the full Skills Developer Documentation for everything you need to know about creating skills — discovery metadata, the @tool decorator, hooks, custom properties, bundling dependencies, and distribution.
If you're building a major skill or integration, please reach out on Discord first to make sure it aligns with the project's direction.