id = "cc-switch-cli"
name = "CC Switch CLI"
homepage = "https://github.com/SaladDay/cc-switch-cli"
executables = ["cc-switch"]
[dotfiles]
paths = ["~/.cc-switch/settings.json"]
secret = ["~/.cc-switch/cc-switch.db", "~/.cc-switch/config.json"]
[commands]
format = 1
label = "Launch with a provider"
description = "Start Claude or Codex with a chosen provider in this terminal only, without switching the global provider. Other subcommands (provider, auth, sessions, mcp, proxy) are left out; run cc-switch alone for the full-screen interface."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.subcommand]]
path = ["start"]
label = "Start an agent with a provider"
[[commands.subcommand.source]]
id = "readme"
kind = "manual"
url = "https://github.com/SaladDay/cc-switch-cli"
revision = "5.11.3"
evidence = """
cc-switch start claude <id> # Launch Claude with this provider without switching globally
cc-switch start codex <id> # Launch Codex with this provider without switching globally
cc-switch start codex <id> --shared-sessions # Share persistent Codex history across providers
cc-switch start claude <id> --dry-run # Preview the launch without starting Claude
"""
[[commands.subcommand.field]]
id = "agent"
label = "Agent"
type = "enum"
position = 0
choices = [{ value = "claude", label = "Claude" }, { value = "codex", label = "Codex" }]
sources = ["readme"]
[[commands.subcommand.field]]
id = "provider"
label = "Provider id"
type = "string"
position = 1
sources = ["readme"]
[[commands.subcommand.field]]
id = "dry_run"
label = "Preview only"
type = "boolean"
option = ["--dry-run"]
sources = ["readme"]
[[commands.subcommand.field]]
id = "shared_sessions"
label = "Share Codex sessions"
description = "macOS/Linux, Codex only."
type = "boolean"
option = ["--shared-sessions"]
sources = ["readme"]
[[commands.subcommand.task]]
id = "start"
label = "Start with a provider"
fields = ["agent", "provider", "dry_run"]
required = ["agent", "provider"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["agent", "provider", "dry_run", "shared_sessions"]