Skip to content
Yoink

Yoink documentation

Switch accounts, connect providers and see exactly what yoink writes. Guides are rendered from the Markdown in the repo's docs/ folder.

Start

  • Getting started

    Install yoink on macOS, Linux or Windows with one command or npm i -g yoink-cli, save your work and personal Claude Code logins, and switch with yoink work.

  • Desktop app

    The Yoink menu bar app for macOS switches Claude Code accounts, saves the current login, adds API-key providers and ticks the coding agents they connect to.

Switch

  • Interactive menu

    Run yoink with no arguments to open a keyboard menu: move with j and k, switch with Enter, and add, edit, save or delete Claude, Codex or provider profiles.

  • Subscriptions

    Save and switch ChatGPT (Codex), Kimi Code, Gemini and GitHub Copilot logins with yoink, each inside its own tool, with the live login re-saved first.

Connect

  • Providers

    Add an API key once with yoink, from a preset (OpenAI, Kimi, OpenRouter, DeepSeek, z.ai, Ollama) or any compatible URL it probes, and pick its models.

  • Harnesses

    What yoink writes into pi, omp, opencode, codex, Claude Code, Qwen Code, Kilo, Droid, Crush, Continue, Goose, Zed and Claude Desktop: paths and keys.

Understand

  • How it works

    How yoink switches Claude Code accounts: the Keychain entry or .credentials.json, the oauthAccount block in ~/.claude.json, and the re-snapshot step first.

  • Security

    Atomic owner-only writes, kept symlinks, one-time backups, seven managed Claude Code keys, a git-tracked config guard, and keys passed on stdin, never argv.

Reference

  • Usage

    Every yoink command with worked examples: switch Claude Code accounts, save Codex logins, connect a provider to opencode, and script it all with --json.

  • CLI reference

    One card per command with its flags, aliases and an example, plus the menu keymap and the tool, harness and preset ids.

Guides

Harnesses

  • Use any provider in pi

    Connect any OpenAI- or Anthropic-compatible provider to pi. yoink writes ~/.pi/agent/models.json with model limits from models.dev and sets the default.

  • Use any provider in omp

    Connect a provider to omp. yoink writes ~/.omp/agent/models.yml (or models.yaml), carries over a legacy models.json and sets modelRoles.default in config.yml.

  • Use any provider in opencode

    Connect OpenRouter, DeepSeek, Ollama or any compatible API to opencode. yoink edits opencode.json or .jsonc in place, keeping your comments and formatting.

  • Use a custom provider in Codex CLI

    yoink writes a [model_providers] table into ~/.codex/config.toml with wire_api = "responses". Codex needs a Responses endpoint, so few presets fit.

  • Use a custom provider in Claude Code

    What yoink writes into ~/.claude/settings.json to point Claude Code at another Anthropic-compatible API, and how it restores your Claude login after.

  • Use any provider in Qwen Code

    Connect a provider to Qwen Code. yoink adds modelProviders entries to ~/.qwen/settings.json and stores the key once as YOINK_<PROVIDER>_API_KEY in env.

  • Use any provider in Kilo Code

    Kilo Code is an opencode fork, so yoink writes the same provider entry into ~/.config/kilo/kilo.json or kilo.jsonc, in place, and sets the default model.

  • Use any provider in Droid

    yoink appends your provider's models to customModels in ~/.factory/settings.json, tagged with [provider] in the name. Pick the model inside Droid.

  • Use any provider in Crush

    yoink writes providers.<id> into ~/.config/crush/crush.json with type openai-compat or anthropic and sets models.large. It warns if a crushrc overrides it.

  • Use any provider in Goose

    yoink writes custom_providers/custom_<id>.json for Goose and sets GOOSE_PROVIDER and GOOSE_MODEL. Where the key goes depends on GOOSE_DISABLE_KEYRING.

  • Use any provider in Zed

    yoink adds your provider to language_models in Zed's settings.json, keeping comments, and sets agent.default_model. Zed reads the key from env.

  • Use any provider in Continue

    yoink adds one model entry per model to ~/.continue/config.yaml with apiBase and apiKey, creates the file if missing, and keeps your YAML comments.

  • Use a third-party provider in Claude Desktop

    yoink writes a Claude-3p configLibrary file with your gateway URL and models. Then select it under Developer, Configure third-party inference.

Providers

Compare

  • Claude Code account switchers compared

    An honest comparison of claude-swap, clauth, swapdex, Claude Switcher, CCSwitcher and yoink: platforms, other tools, usage display, auto-switch, license.

  • yoink vs claude-swap

    claude-swap is a Claude-only switcher with usage tracking and auto-rotation. yoink adds Codex, Kimi, Gemini and Copilot logins and providers in 13 agents.

  • yoink vs CC Switch

    CC Switch is a GUI-first desktop app with a routing proxy and many presets. yoink is a terminal-first CLI that writes native configs for 13 coding agents.

  • yoink vs clauth

    clauth is a deep Claude Code account manager with usage bars, auto-switch and parallel sessions. yoink is broader: five vendors' logins plus API keys.

  • yoink vs Claude Code Router

    Claude Code Router is a local gateway that routes agents' requests to the providers you pick. yoink writes provider keys into each agent's config instead.