CC Switch
Import BeansAI into CC Switch and switch providers across Claude Code and Codex CLI.
Overview
CC Switch is a desktop provider manager for coding CLIs. BeansAI works through its deep-link provider import flow, so the fastest path is to create a key in BeansAI, open Use this key, choose CC Switch, and click the import button.
Installation
Install CC Switch from its latest GitHub release, then open the app once so your system registers the ccswitch:// URL handler.
Configuration
The dashboard generates real import links with your current key. These example configs show what is imported.
{
"env": {
"ANTHROPIC_AUTH_TOKEN": "sk-beans-...",
"ANTHROPIC_BASE_URL": "https://api.beansai.dev",
"ANTHROPIC_MODEL": "claude-sonnet-4-6",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5-20251001",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4-7",
"CLAUDE_CODE_MAX_OUTPUT_TOKENS": "64000",
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"
}
}{
"auth": {
"OPENAI_API_KEY": "sk-beans-..."
},
"config": "model_provider = \"OpenAI\"\nmodel = \"gpt-5.5\"\nreview_model = \"gpt-5.5\"\nmodel_reasoning_effort = \"high\"\ndisable_response_storage = true\nnetwork_access = \"enabled\"\nmodel_context_window = 1000000\nmodel_auto_compact_token_limit = 900000\napproval_policy = \"never\"\nsandbox_mode = \"workspace-write\"\nsuppress_unstable_features_warning = true\n\n[shell_environment_policy]\ninherit = \"all\"\n\n[features]\nimage_generation = true\nplan_tool = true\napply_patch_freeform = true\nview_image_tool = true\nhooks = true\nmemories = true\n\n[windows]\nsandbox = \"unelevated\"\n\n[model_providers.OpenAI]\nname = \"OpenAI\"\nbase_url = \"https://api.beansai.dev/v1\"\nwire_api = \"responses\"\nrequires_openai_auth = true"
}One-click import
With a real key, use the Keys page and the CC Switch tab. CC Switch requiresresource=provider, an app such as claude or codex, and a Base64 encoded config payload.
ccswitch://v1/import?resource=provider&app=claude&name=BeansAI+Claude+Code&configFormat=json&config=eyJlbnYiOnsiQU5USFJPUElDX0FVVEhfVE9LRU4iOiJzay1iZWFucy0uLi4iLCJBTlRIUk9QSUNfQkFTRV9VUkwiOiJodHRwczovL2FwaS5iZWFuc2FpLmRldiIsIkFOVEhST1BJQ19NT0RFTCI6ImNsYXVkZS1zb25uZXQtNC02IiwiQU5USFJPUElDX0RFRkFVTFRfSEFJS1VfTU9ERUwiOiJjbGF1ZGUtaGFpa3UtNC01LTIwMjUxMDAxIiwiQU5USFJPUElDX0RFRkFVTFRfU09OTkVUX01PREVMIjoiY2xhdWRlLXNvbm5ldC00LTYiLCJBTlRIUk9QSUNfREVGQVVMVF9PUFVTX01PREVMIjoiY2xhdWRlLW9wdXMtNC03IiwiQ0xBVURFX0NPREVfTUFYX09VVFBVVF9UT0tFTlMiOiI2NDAwMCIsIkNMQVVERV9DT0RFX0RJU0FCTEVfTk9ORVNTRU5USUFMX1RSQUZGSUMiOiIxIn19ccswitch://v1/import?resource=provider&app=codex&name=BeansAI+Codex+CLI&configFormat=json&config=eyJhdXRoIjp7Ik9QRU5BSV9BUElfS0VZIjoic2stYmVhbnMtLi4uIn0sImNvbmZpZyI6Im1vZGVsX3Byb3ZpZGVyID0gXCJPcGVuQUlcIlxubW9kZWwgPSBcImdwdC01LjVcIlxucmV2aWV3X21vZGVsID0gXCJncHQtNS41XCJcbm1vZGVsX3JlYXNvbmluZ19lZmZvcnQgPSBcImhpZ2hcIlxuZGlzYWJsZV9yZXNwb25zZV9zdG9yYWdlID0gdHJ1ZVxubmV0d29ya19hY2Nlc3MgPSBcImVuYWJsZWRcIlxubW9kZWxfY29udGV4dF93aW5kb3cgPSAxMDAwMDAwXG5tb2RlbF9hdXRvX2NvbXBhY3RfdG9rZW5fbGltaXQgPSA5MDAwMDBcbmFwcHJvdmFsX3BvbGljeSA9IFwibmV2ZXJcIlxuc2FuZGJveF9tb2RlID0gXCJ3b3Jrc3BhY2Utd3JpdGVcIlxuc3VwcHJlc3NfdW5zdGFibGVfZmVhdHVyZXNfd2FybmluZyA9IHRydWVcblxuW3NoZWxsX2Vudmlyb25tZW50X3BvbGljeV1cbmluaGVyaXQgPSBcImFsbFwiXG5cbltmZWF0dXJlc11cbmltYWdlX2dlbmVyYXRpb24gPSB0cnVlXG5wbGFuX3Rvb2wgPSB0cnVlXG5hcHBseV9wYXRjaF9mcmVlZm9ybSA9IHRydWVcbnZpZXdfaW1hZ2VfdG9vbCA9IHRydWVcbmhvb2tzID0gdHJ1ZVxubWVtb3JpZXMgPSB0cnVlXG5cblt3aW5kb3dzXVxuc2FuZGJveCA9IFwidW5lbGV2YXRlZFwiXG5cblttb2RlbF9wcm92aWRlcnMuT3BlbkFJXVxubmFtZSA9IFwiT3BlbkFJXCJcbmJhc2VfdXJsID0gXCJodHRwczovL2FwaS5iZWFuc2FpLmRldi92MVwiXG53aXJlX2FwaSA9IFwicmVzcG9uc2VzXCJcbnJlcXVpcmVzX29wZW5haV9hdXRoID0gdHJ1ZSJ9Basic usage
After import, select the BeansAI provider inside CC Switch and switch to it for the target app. For Claude Code, run claude; for Codex, run codex.