Simon Willison releases llm-keys-ui plugin to manage LLM API keys
Simon Willison announced the open‑source plugin llm-keys-ui version 0.1, aimed at developers who run coding agents on remote machines. The tool lets users store and retrieve LLM provider API keys without copying them into a ChatGPT session, addressing a common security inconvenience.
Key points
- llm-keys-ui 0.1 adds a web UI for storing LLM API keys used by remote coding agents.
- Invoked via `uvx --with llm-keys-ui llm keys-ui --all` to receive a local or Tailscale URL.
- Stored keys are accessed later with `llm keys get <provider>` such as Anthropic.
The plugin works with Codex Remote. Users start the UI with a command such as uvx --with llm-keys-ui llm keys-ui --all, which returns a local or Tailscale URL where keys can be added. Later, an agent can fetch a stored key via llm keys get anthropic (or any other provider) as part of its shell workflow. The approach keeps secrets out of terminal history and simplifies key rotation for multiple agents.
By exposing a lightweight web interface for key management, the plugin reduces the risk of accidental key leakage while keeping the workflow entirely command‑line driven. It joins a series of recent posts by Willison on LLM tooling, including work on GPT‑6 Astra routing and analysis of AI‑driven attacks on RubyGems.
llm-keys-ui 0.1
Simon Willison · 20 September 2026
20th September 2026
This plugin solves a very specific problem.
I've started using Codex Remote to run coding agents on various machines while controlling them from my phone.
Sometimes I use those machines to hack on LLM projects, and occasionally that means I need to configure an API key.
I don't like pasting API keys into agent sessions, so I wanted a way to get those keys onto a machine without pasting them into the ChatGPT app directly.
With this plugin, I can tell Codex to run:
uvx --with llm-keys-ui llm keys-ui --all
Then have it tell me the URL - including local network or Tailscale device IPs - for an interface to save additional API keys.
Then later it can use a command like llm keys get anthropic as part of a shell command when it needs to use a key.
Recent articles
- Generating running routes with GPT-6 Astra and ChatGPT Work - 12th September 2026
- OpenAI agents attacked RubyGems back in May - 12th September 2026
- Some thoughts on the Navier–Stokes Millennium Prize Problem - 8th September 2026
This text was published by Simon Willison and written by Simon Willison. It is reproduced here with attribution so you can read it in full; the rights remain with the publisher. Read it at the source ↗
The headline, key points and digest above were generated by Digest AI's editorial model from the linked sources. Automated summaries can contain errors: the sources are the record. Spotted a mistake? Tell us.
More in Agents & Tools
All →- Google expands Creative Collective family hub as Meta launches Muse personal AI agent · 2 src
- OpenAI guide shows beginners how to ask ChatGPT in natural Japanese · 1 src
- Opinion: using Claude agents and Linear to implement a software factory pattern · 1 src
- TypeSafe AI launches Jev decision‑making AI for routing customer inquiries · 3 src
- Pirate Face offers torrent-based mirrors for Hugging Face models · 1 src
Comments
via GitHub Discussions