Plugins · skal.swap

Swap the model behind Claude Code from your bar.

You know the routine: export ANTHROPIC_BASE_URL, paste a key into settings.json, go digging for model ids, then unpick the whole lot when you want Claude back. We did it enough times to automate it. Now switching is a click and a toast.

  • Version 1.1.0
  • License MIT
  • Kind bar-widget
The details
Abstract drawing: two provider profiles with a swap arrow between them, the active one ringed in gold
skal.swap · the idea, drawn in house shapes
What it does

Why it stays installed.

Profiles

Every key and endpoint is a profile

z.ai, OpenRouter, DeepSeek, a proxy, whatever: each one is a section in a config file with its own key. Switching is clean by construction, every managed ANTHROPIC_* value is cleared before the new profile is written, so nothing stale survives the swap.

omarchy-shell -q skal-swap swap

The picker

Click the mark, pick a brain

The bar item shows the Claude logomark tinted to your theme plus the active profile. Click for the picker with the current one marked; middle-click to bounce between your two most-used. Every switch fires a toast so you know what just changed.

Models

The catalogue comes from the provider

Models are pulled from each endpoint's own list and handed to Claude Code's /model picker, so a profile is not stuck on one brain. Run the fast one for chores and the big one for surgery without touching a config.

Usage

Bars for the plan you are torching

With ai-usagebar installed, the picker shows per-account and per-key usage: z.ai, OpenRouter, DeepSeek, Kimi, Kilo, Novita, xAI, MiniMax and friends. Providers with no usage API get a console link instead, which is the best anyone can do.

OAuth

No token, no problem

A profile with no key drops you back to your normal claude OAuth login. Official Anthropic, third-party endpoints, and your own gateway all live in the same picker.

Honest state

Keeps up no matter who changed it

The menu, a keybind, the bundled script, or you editing profiles.conf by hand: the widget watches the file and re-reads on the fly. What the bar shows is what is live.

Install

Install, enable, add keys

sh
$ omarchy plugin add https://github.com/outcrop-labs/skal-swap.git --yes
$ omarchy plugin enable skal.swap --section left
$ ~/.config/omarchy/plugins/skal.swap/bin/skal-swap edit

Profiles live in ~/.config/skal.swap/profiles.conf, outside the plugin directory, so updates never touch your keys.

Keybinds

The binds we run

  • SUPER+ ALT+ K Bounce between your two most-used profiles skal-swap swap

The bind toggles profiles one and two. If skal-swap is not on your PATH, one symlink (see the README) or the full path to bin/skal-swap does the same job.

Contribute

Issues welcome. PRs welcome.

Every plugin here started as an itch, and yours count too. Something broken, or a drawer you wish existed? Open an issue and tell us how you work; enough thumbs on an itch makes us scratch it. It's all MIT, so a PR is the fastest way to make the bar yours. We read everything.

Open an issue Send a PR