litellm-setup

Installation
SKILL.md

Set up a LiteLLM proxy

Take the user from nothing to a running LiteLLM proxy that has answered one chat completion. Run every command yourself unless a step says the user does it

Never print a secret. Provider keys, the master key, the salt key, the database URL, and virtual keys live only in .env, and config.yaml reads them through os.environ/NAME. Check that a value is there with grep -c '^NAME=.' .env, never with cat .env or echo "$NAME". Load .env into a shell with this line, which exports each line as it is, so a & or $ in a value stays literal, and first drops any database settings the shell already had and sets LITELLM_MODE=PRODUCTION, which stops litellm from also loading a .env it finds above its install folder, such as ~/.env, so only this .env picks the database. The steps that need it start with it:

unset DATABASE_URL DIRECT_URL DATABASE_HOST; export LITELLM_MODE=PRODUCTION; while IFS= read -r line || [ -n "$line" ]; do case "$line" in [A-Za-z_]*=*) export "$line" ;; esac; done < .env

1. Ask once

Ask everything in one message, with defaults the user can accept by saying "go":

  • Providers and models. Default is OpenAI with its newest flagship model, using the OPENAI_API_KEY in your environment when [ -n "$OPENAI_API_KEY" ] && echo set says it is there. Run that check before asking, and say in the question that the default uses that variable, naming it but never its value, since a key in your environment can belong to another account
  • Whether they want virtual keys, teams, spend tracking, or the Admin UI. Those need Postgres, plain routing does not. Default is no
  • uv (default) or Docker. With Postgres, Docker runs the repo's quickstart, which brings its own database, and uv needs a Postgres server they already have, with a new, empty database for LiteLLM, so someone with their own Postgres server picks uv
  • Folder and port. Defaults are ./litellm-proxy (./litellm-gateway for the quickstart) and 4000
Installs
21
Repository
berriai/litellm
GitHub Stars
62.7K
First Seen
Oct 21, 2026