Discover gists
Claude Code is a powerful command-line interface that allows developers to interact with Anthropic's Claude AI models for coding assistance. This guide provides two battle-tested methods to configure Claude Code to work with multiple LLM providers beyond just Anthropic, including models from DeepSeek, z.ai (GLM), Kimi, and OpenRouter.
This empowers you to switch between the best model for any given task without ever leaving your terminal. Two Approaches to Flexibility
- Shell Functions: A simple, lightweight, and robust method for switching providers before starting a session. Perfect for most use cases.
| # Use a base image | |
| FROM lscr.io/linuxserver/ffmpeg:latest | |
| # Set working directory | |
| WORKDIR /app | |
| # Copy your script into the container at /app/ | |
| COPY ./merge_audiobook.sh /app/ | |
| # Make the script executable |
| # Download VMware Workstation Windows installers from Internet Archive. | |
| # Requires PowerShell 5.1 or newer and Windows' built-in curl.exe. | |
| param( | |
| [string]$Version, | |
| [switch]$Latest, | |
| [switch]$List, | |
| [switch]$Url, | |
| [Alias('Directory')][string]$OutDir, | |
| [string]$ArchiveItem = 'vmwareworkstationarchive', | |
| [switch]$Help |
(I keep delivering this as a quip, here's a bit more)
First order of business - is 'tool' going to have an interesting, distinguishing and thus illuminative meaning or be a mere platitudinous stand-in for "anything useful"?
We'll save tool as "anyone/thing that can be exploited" for the AI titans, for whom VCs, politicians, wannabe-titan-CEOs, software devs, rural towns etc are all 'tools'. The pockets on the front of my shirts are useful (I need to keep my reading glasses handy), but they are not tools. Similarly, fast food drive-thru windows are useful, but are not tools (more later).
Some definitions of 'tool':
Caddy is a super webserver that has many useful features. Caddy can enable very very powerful scenarios and many of them are documented in this Wiki. As these scenarios become more elaborate (some might say complex!) writing a caddy config file starts to feel more like programming than basic configuration.
When that starts to happen I find myself reaching out for variables to enable multiple scenarios in a single configuration file by manipulating those variables.
For those situations caddy has a few types of variables to consider. What I hope to do here is illuminate how to use these variable types in the Caddyfile.
I will use examples to illustrate the concepts. I use the respond directive to verify how caddy works.
A pattern for building personal knowledge bases using LLMs.
This is an idea file, it is designed to be copy pasted to your own LLM Agent (e.g. OpenAI Codex, Claude Code, OpenCode / Pi, or etc.). Its goal is to communicate the high level idea, but your agent will build out the specifics in collaboration with you.
Most people's experience with LLMs and documents looks like RAG: you upload a collection of files, the LLM retrieves relevant chunks at query time, and generates an answer. This works, but the LLM is rediscovering knowledge from scratch on every question. There's no accumulation. Ask a subtle question that requires synthesizing five documents, and the LLM has to find and piece together the relevant fragments every time. Nothing is built up. NotebookLM, ChatGPT file uploads, and most RAG systems work this way.
This page has been updated a lot in the past 3 years. Older revisions you might like more than this one:
- June 2021 - list of endpoints for other sports/leagues (i.e. nba, nhl, mlb)
- August 2021 - get historical fantasy league data
- September 2021 - list of endpoints in plain text
- May 2023 - collapsed endpoint response examples
- Mar 2025 - endpoint