Lumoswitch Docs
Agent setup

Continue Agent setup

Continue is a configurable coding agent for chat, edits, and tool use in a terminal, VS Code, or JetBrains. Its official CLI command is cn. CLI and IDE use the same YAML schema, but secrets and launch behavior differ. There is no standalone Continue Desktop app.

Current status: Continue's official repository is read-only and no longer actively maintained. The final VS Code, CLI, and JetBrains release is 2.0.0, and the project recommends the CLI over the JetBrains plugin. This page targets that final release.

Create a Lumoswitch API configuration with OpenAI-compatible output first.

Choose a setup method

MethodCLIVS Code / JetBrains
One-time launchSupported with a temporary file passed to cn --configNot supported; extensions cannot read terminal process environment variables
Persistent useNative YAML + optional launcherLocal config.yaml plus .env
RemovalDelete only dedicated filesRemove only the Lumoswitch model and secret

Prepare the connection values

PlaceholderValue
{{api_base_url}}The downstream API URL, including /v1
{{access_key}}The Lumoswitch Access Key selected for this configuration
{{model}}The client-facing model name shown by the API configuration
{{continue_config_json}}Generated Continue configuration containing every downstream model

One-time launch

This command creates a YAML file in the system temporary directory, passes it only to the current cn process, and removes it on exit:

(
  set -e
  LUMOSWITCH_CONTINUE_CONFIG="$(mktemp "${TMPDIR:-/tmp}/lumoswitch-continue.XXXXXX")"
  trap 'rm -f "$LUMOSWITCH_CONTINUE_CONFIG"' EXIT
  cat > "$LUMOSWITCH_CONTINUE_CONFIG" <<'LUMOSWITCH_CONTINUE_CONFIG_EOF'
{{continue_config_json}}
LUMOSWITCH_CONTINUE_CONFIG_EOF
  chmod 600 "$LUMOSWITCH_CONTINUE_CONFIG"
  env LUMOSWITCH_CONTINUE_API_KEY="{{access_key}}" \
    cn --config "$LUMOSWITCH_CONTINUE_CONFIG"
)

Remove capabilities: - tool_use if the target model does not support tools. Otherwise Continue will attempt agent actions the model cannot perform.

Persistent CLI use

This command preserves the original Continue files once, writes native ~/.continue/config.yaml and ~/.continue/.env, and saves an optional maintenance launcher:

set -e
LUMOSWITCH_ROOT="$HOME/.config/lumoswitch/agents/continue"
LUMOSWITCH_ENV="$LUMOSWITCH_ROOT/env.sh"
LUMOSWITCH_LAUNCHER="$HOME/.local/bin/lumoswitch-continue"
mkdir -p "$LUMOSWITCH_ROOT/original" "$(dirname "$LUMOSWITCH_LAUNCHER")"
umask 077

preserve_lumoswitch_original() {
  LUMOSWITCH_NATIVE_FILE="$1"
  LUMOSWITCH_ORIGINAL_NAME="$2"
  LUMOSWITCH_STATE="$LUMOSWITCH_ROOT/original/$LUMOSWITCH_ORIGINAL_NAME.state"
  if [ -f "$LUMOSWITCH_STATE" ]; then return; fi
  if [ -f "$LUMOSWITCH_NATIVE_FILE" ]; then
    cp "$LUMOSWITCH_NATIVE_FILE" "$LUMOSWITCH_ROOT/original/$LUMOSWITCH_ORIGINAL_NAME"
    printf '%s\n' present > "$LUMOSWITCH_STATE"
  else
    printf '%s\n' absent > "$LUMOSWITCH_STATE"
  fi
}

if [ -f "$LUMOSWITCH_LAUNCHER" ]; then
  LUMOSWITCH_BACKUP="$LUMOSWITCH_LAUNCHER.backup.$(date +%Y%m%d-%H%M%S)-$$"
  cp "$LUMOSWITCH_LAUNCHER" "$LUMOSWITCH_BACKUP"
  chmod 600 "$LUMOSWITCH_BACKUP"
fi

LUMOSWITCH_CONTINUE_CONFIG="$HOME/.continue/config.yaml"
LUMOSWITCH_CONTINUE_ENV="$HOME/.continue/.env"
mkdir -p "$HOME/.continue"
preserve_lumoswitch_original "$LUMOSWITCH_CONTINUE_CONFIG" config
preserve_lumoswitch_original "$LUMOSWITCH_CONTINUE_ENV" env
cat > "$LUMOSWITCH_CONTINUE_CONFIG" <<'LUMOSWITCH_CONFIG_EOF'
{{continue_config_json}}
LUMOSWITCH_CONFIG_EOF
cat > "$LUMOSWITCH_CONTINUE_ENV" <<'LUMOSWITCH_ENV_EOF'
LUMOSWITCH_CONTINUE_API_KEY={{access_key}}
LUMOSWITCH_ENV_EOF

cat > "$LUMOSWITCH_ENV" <<'LUMOSWITCH_ENV_EOF'
: # This Agent reads its persistent values from its own default files.
LUMOSWITCH_ENV_EOF

case "$SHELL" in
  */zsh) LUMOSWITCH_PROFILE="$HOME/.zshrc" ;;
  */bash) LUMOSWITCH_PROFILE="$HOME/.bashrc" ;;
  *) LUMOSWITCH_PROFILE="$HOME/.profile" ;;
esac
touch "$LUMOSWITCH_PROFILE"
LUMOSWITCH_PROFILE_MARKER='# Lumoswitch Agent: continue'
LUMOSWITCH_SOURCE_LINE='[ -f "$HOME/.config/lumoswitch/agents/continue/env.sh" ] && . "$HOME/.config/lumoswitch/agents/continue/env.sh"'
if ! grep -Fqx "$LUMOSWITCH_SOURCE_LINE" "$LUMOSWITCH_PROFILE"; then
  printf '\n%s\n%s\n' "$LUMOSWITCH_PROFILE_MARKER" "$LUMOSWITCH_SOURCE_LINE" >> "$LUMOSWITCH_PROFILE"
fi
printf '%s\n' "$LUMOSWITCH_PROFILE" > "$LUMOSWITCH_ROOT/profile-path"

cat > "$LUMOSWITCH_LAUNCHER" <<'LUMOSWITCH_LAUNCHER_EOF'
#!/usr/bin/env bash
set -e
LUMOSWITCH_ROOT="$HOME/.config/lumoswitch/agents/continue"
LUMOSWITCH_ENV="$LUMOSWITCH_ROOT/env.sh"
LUMOSWITCH_LAUNCHER="$HOME/.local/bin/lumoswitch-continue"

restore_lumoswitch_original() {
  LUMOSWITCH_NATIVE_FILE="$1"
  LUMOSWITCH_ORIGINAL_NAME="$2"
  LUMOSWITCH_STATE="$LUMOSWITCH_ROOT/original/$LUMOSWITCH_ORIGINAL_NAME.state"
  if [ ! -f "$LUMOSWITCH_STATE" ]; then return; fi
  if [ "$(cat "$LUMOSWITCH_STATE")" = present ]; then
    mkdir -p "$(dirname "$LUMOSWITCH_NATIVE_FILE")"
    cp "$LUMOSWITCH_ROOT/original/$LUMOSWITCH_ORIGINAL_NAME" "$LUMOSWITCH_NATIVE_FILE"
  else
    rm -f "$LUMOSWITCH_NATIVE_FILE"
  fi
}

if [ "$1" = "--lumoswitch-clean" ]; then
  if [ -f "$LUMOSWITCH_ROOT/profile-path" ]; then
    LUMOSWITCH_PROFILE="$(cat "$LUMOSWITCH_ROOT/profile-path")"
    if [ -f "$LUMOSWITCH_PROFILE" ]; then
      LUMOSWITCH_PROFILE_MARKER='# Lumoswitch Agent: continue'
      LUMOSWITCH_SOURCE_LINE='[ -f "$HOME/.config/lumoswitch/agents/continue/env.sh" ] && . "$HOME/.config/lumoswitch/agents/continue/env.sh"'
      LUMOSWITCH_PROFILE_TMP="$LUMOSWITCH_PROFILE.lumoswitch.$$"
      awk -v marker="$LUMOSWITCH_PROFILE_MARKER" -v source="$LUMOSWITCH_SOURCE_LINE" '$0 != marker && $0 != source' "$LUMOSWITCH_PROFILE" > "$LUMOSWITCH_PROFILE_TMP"
      mv "$LUMOSWITCH_PROFILE_TMP" "$LUMOSWITCH_PROFILE"
    fi
  fi
  restore_lumoswitch_original "$HOME/.continue/config.yaml" config
  restore_lumoswitch_original "$HOME/.continue/.env" env
  if [ -d "$LUMOSWITCH_ROOT" ]; then
    find "$LUMOSWITCH_ROOT" -depth \( -type f -o -type l \) -delete
    find "$LUMOSWITCH_ROOT" -depth -type d -exec rmdir {} \; 2>/dev/null || true
  fi
  find "$(dirname "$LUMOSWITCH_LAUNCHER")" -maxdepth 1 -type f -name 'lumoswitch-continue.backup.*' -delete
  rm -f "$LUMOSWITCH_LAUNCHER"
  printf '%s\n' 'Lumoswitch native setup and optional launcher removed. Open a new terminal to refresh the environment.'
  exit 0
fi

if [ -f "$LUMOSWITCH_ENV" ]; then . "$LUMOSWITCH_ENV"; fi
exec cn "$@"
LUMOSWITCH_LAUNCHER_EOF

chmod 600 "$LUMOSWITCH_ENV"
find "$LUMOSWITCH_ROOT" -type f -exec chmod 600 {} \;
chmod 700 "$LUMOSWITCH_LAUNCHER"
. "$LUMOSWITCH_ENV"
printf '%s\n' 'Native Lumoswitch setup saved. Future command: cn'
printf '%s\n' 'Optional maintenance launcher: ~/.local/bin/lumoswitch-continue'
cn

For everyday use, run:

cn

Native Windows PowerShell import

These commands run natively in Windows PowerShell without WSL and use the same connection values as the macOS/Linux templates on this page.

One-time use on Windows

& {
  $ErrorActionPreference = 'Stop'
  $lumoswitchConfig = Join-Path ([IO.Path]::GetTempPath()) ('lumoswitch-' + [Guid]::NewGuid().ToString('N') + '.yaml')
  $lumoswitchConfigContent = @'
{{continue_config_json}}
'@
  [IO.File]::WriteAllText($lumoswitchConfig, $lumoswitchConfigContent, [Text.UTF8Encoding]::new($false))
  $lumoswitchEnvironmentNames = @('LUMOSWITCH_CONTINUE_API_KEY')
  $lumoswitchPreviousEnvironment = @{}
  foreach ($lumoswitchName in $lumoswitchEnvironmentNames) {
    $lumoswitchPreviousEnvironment[$lumoswitchName] = [Environment]::GetEnvironmentVariable($lumoswitchName, 'Process')
  }
  $lumoswitchExitCode = 0
  try {
    [Environment]::SetEnvironmentVariable('LUMOSWITCH_CONTINUE_API_KEY', '{{access_key}}', 'Process')
    $lumoswitchArguments = @('--config', $lumoswitchConfig)
    $lumoswitchExecutable = Get-Command 'cn.cmd' -CommandType Application -ErrorAction SilentlyContinue
    if ($null -eq $lumoswitchExecutable) { $lumoswitchExecutable = Get-Command 'cn' -CommandType Application -ErrorAction Stop }
    & $lumoswitchExecutable.Path @lumoswitchArguments
    if ($null -ne $LASTEXITCODE) { $lumoswitchExitCode = $LASTEXITCODE }
  } finally {
    foreach ($lumoswitchName in $lumoswitchEnvironmentNames) {
      [Environment]::SetEnvironmentVariable($lumoswitchName, $lumoswitchPreviousEnvironment[$lumoswitchName], 'Process')
    }
    Remove-Item -LiteralPath $lumoswitchConfig -Force -ErrorAction SilentlyContinue
  }
  if ($lumoswitchExitCode -ne 0) { throw 'cn exited with code ' + $lumoswitchExitCode }
}

Persistent use on Windows

This command backs up existing Lumoswitch-owned files and restricts access to the configuration and launcher for the current user.

& {
  $ErrorActionPreference = 'Stop'
  $lumoswitchRoot = Join-Path $env:LOCALAPPDATA 'Lumoswitch\agents\continue'
  $lumoswitchLauncher = Join-Path $env:LOCALAPPDATA 'Lumoswitch\bin\lumoswitch-continue.ps1'
  $lumoswitchBackupSuffix = (Get-Date -Format 'yyyyMMdd-HHmmss') + '-' + $PID

  function Protect-LumoswitchFile([string] $Path) {
    $lumoswitchSid = [Security.Principal.WindowsIdentity]::GetCurrent().User.Value
    & icacls.exe $Path '/inheritance:r' '/grant:r' ('*' + $lumoswitchSid + ':(F)') '*S-1-5-18:(F)' '*S-1-5-32-544:(F)' | Out-Null
    if ($LASTEXITCODE -ne 0) { throw "Could not restrict access to $Path" }
  }

  function Install-LumoswitchFile([string] $Path, [string] $Content) {
    [IO.Directory]::CreateDirectory((Split-Path -Parent $Path)) | Out-Null
    if (Test-Path -LiteralPath $Path) {
      $lumoswitchItem = Get-Item -LiteralPath $Path -Force
      if ($lumoswitchItem.PSIsContainer -or ($lumoswitchItem.Attributes -band [IO.FileAttributes]::ReparsePoint)) {
        throw "Lumoswitch refused to replace a directory or link: $Path"
      }
      $lumoswitchBackup = $Path + '.backup.' + $lumoswitchBackupSuffix
      Copy-Item -LiteralPath $Path -Destination $lumoswitchBackup
      Protect-LumoswitchFile $lumoswitchBackup
    }
    $lumoswitchTemporary = $Path + '.' + [Guid]::NewGuid().ToString('N') + '.tmp'
    try {
      [IO.File]::WriteAllText($lumoswitchTemporary, $Content, [Text.UTF8Encoding]::new($false))
      Move-Item -LiteralPath $lumoswitchTemporary -Destination $Path -Force
      Protect-LumoswitchFile $Path
    } finally {
      Remove-Item -LiteralPath $lumoswitchTemporary -Force -ErrorAction SilentlyContinue
    }
  }

  function Preserve-LumoswitchOriginal([string] $Path, [string] $Name) {
    $lumoswitchOriginalRoot = Join-Path $lumoswitchRoot 'original'
    $lumoswitchState = Join-Path $lumoswitchOriginalRoot ($Name + '.state')
    if (Test-Path -LiteralPath $lumoswitchState -PathType Leaf) { return }
    [IO.Directory]::CreateDirectory($lumoswitchOriginalRoot) | Out-Null
    if (Test-Path -LiteralPath $Path -PathType Leaf) {
      $lumoswitchOriginal = Join-Path $lumoswitchOriginalRoot $Name
      Copy-Item -LiteralPath $Path -Destination $lumoswitchOriginal
      Protect-LumoswitchFile $lumoswitchOriginal
      [IO.File]::WriteAllText($lumoswitchState, 'present', [Text.UTF8Encoding]::new($false))
    } else {
      [IO.File]::WriteAllText($lumoswitchState, 'absent', [Text.UTF8Encoding]::new($false))
    }
    Protect-LumoswitchFile $lumoswitchState
  }

  [IO.Directory]::CreateDirectory($lumoswitchRoot) | Out-Null
  $lumoswitchConfig = Join-Path $HOME '.continue\config.yaml'
  $lumoswitchEnv = Join-Path $HOME '.continue\.env'
  Preserve-LumoswitchOriginal $lumoswitchConfig 'config'
  Preserve-LumoswitchOriginal $lumoswitchEnv 'env'
  $lumoswitchConfigContent = @'
{{continue_config_json}}
'@
  Install-LumoswitchFile $lumoswitchConfig $lumoswitchConfigContent
  Install-LumoswitchFile $lumoswitchEnv 'LUMOSWITCH_CONTINUE_API_KEY={{access_key}}'

  $lumoswitchEnvironment = [ordered]@{}
  # No user environment variables are required for this Agent.
  foreach ($lumoswitchEntry in $lumoswitchEnvironment.GetEnumerator()) {
    [Environment]::SetEnvironmentVariable($lumoswitchEntry.Key, $lumoswitchEntry.Value, 'User')
    [Environment]::SetEnvironmentVariable($lumoswitchEntry.Key, $lumoswitchEntry.Value, 'Process')
  }

  $lumoswitchLauncherContent = @'
param([Parameter(ValueFromRemainingArguments = $true)][string[]] $AgentArgs)
$ErrorActionPreference = 'Stop'
$lumoswitchRoot = Join-Path $env:LOCALAPPDATA 'Lumoswitch\agents\continue'
$lumoswitchLauncher = Join-Path $env:LOCALAPPDATA 'Lumoswitch\bin\lumoswitch-continue.ps1'

function Remove-LumoswitchFile([string] $Path) {
  if (-not (Test-Path -LiteralPath $Path)) { return }
  $lumoswitchItem = Get-Item -LiteralPath $Path -Force
  if ($lumoswitchItem.PSIsContainer -or ($lumoswitchItem.Attributes -band [IO.FileAttributes]::ReparsePoint)) {
    throw "Lumoswitch refused to remove a directory or link: $Path"
  }
  Remove-Item -LiteralPath $Path -Force
}

function Restore-LumoswitchOriginal([string] $Path, [string] $Name) {
  $lumoswitchOriginalRoot = Join-Path $lumoswitchRoot 'original'
  $lumoswitchState = Join-Path $lumoswitchOriginalRoot ($Name + '.state')
  if (-not (Test-Path -LiteralPath $lumoswitchState -PathType Leaf)) { return }
  if ((Get-Content -LiteralPath $lumoswitchState -Raw).Trim() -eq 'present') {
    [IO.Directory]::CreateDirectory((Split-Path -Parent $Path)) | Out-Null
    Copy-Item -LiteralPath (Join-Path $lumoswitchOriginalRoot $Name) -Destination $Path -Force
  } else {
    Remove-LumoswitchFile $Path
  }
}

if ($AgentArgs.Count -gt 0 -and $AgentArgs[0] -eq '--lumoswitch-clean') {
  foreach ($lumoswitchName in @()) {
    [Environment]::SetEnvironmentVariable($lumoswitchName, $null, 'User')
    [Environment]::SetEnvironmentVariable($lumoswitchName, $null, 'Process')
  }
  Restore-LumoswitchOriginal (Join-Path $HOME '.continue\config.yaml') 'config'
  Restore-LumoswitchOriginal (Join-Path $HOME '.continue\.env') 'env'
  # No external Lumoswitch file needs removal.
  if (Test-Path -LiteralPath $lumoswitchRoot -PathType Container) {
    $lumoswitchRootItem = Get-Item -LiteralPath $lumoswitchRoot -Force
    if ($lumoswitchRootItem.Attributes -band [IO.FileAttributes]::ReparsePoint) { throw 'Lumoswitch refused to clean through a linked directory.' }
    foreach ($lumoswitchFile in @(Get-ChildItem -LiteralPath $lumoswitchRoot -File -Recurse -Force)) { Remove-LumoswitchFile $lumoswitchFile.FullName }
    foreach ($lumoswitchDirectory in @(Get-ChildItem -LiteralPath $lumoswitchRoot -Directory -Recurse -Force | Sort-Object FullName -Descending)) {
      if ($null -eq (Get-ChildItem -LiteralPath $lumoswitchDirectory.FullName -Force | Select-Object -First 1)) { Remove-Item -LiteralPath $lumoswitchDirectory.FullName -Force }
    }
    if ($null -eq (Get-ChildItem -LiteralPath $lumoswitchRoot -Force | Select-Object -First 1)) { Remove-Item -LiteralPath $lumoswitchRoot -Force }
  }
  $lumoswitchBin = Split-Path -Parent $lumoswitchLauncher
  if (Test-Path -LiteralPath $lumoswitchBin -PathType Container) {
    foreach ($lumoswitchBackup in @(Get-ChildItem -LiteralPath $lumoswitchBin -Filter 'lumoswitch-continue.ps1.backup.*' -File -Force)) { Remove-LumoswitchFile $lumoswitchBackup.FullName }
  }
  Remove-LumoswitchFile $lumoswitchLauncher
  Write-Host 'Lumoswitch native setup and optional launcher removed. Open a new terminal to refresh the environment.'
  exit 0
}

$lumoswitchEnvironment = [ordered]@{}
# No process environment variables are required for this Agent.
foreach ($lumoswitchEntry in $lumoswitchEnvironment.GetEnumerator()) {
  [Environment]::SetEnvironmentVariable($lumoswitchEntry.Key, $lumoswitchEntry.Value, 'Process')
}
$lumoswitchExecutable = Get-Command 'cn.cmd' -CommandType Application -ErrorAction SilentlyContinue
if ($null -eq $lumoswitchExecutable) { $lumoswitchExecutable = Get-Command 'cn.exe' -CommandType Application -ErrorAction SilentlyContinue }
if ($null -eq $lumoswitchExecutable) { $lumoswitchExecutable = Get-Command 'cn' -CommandType Application -ErrorAction Stop }
$lumoswitchArguments = @()
& $lumoswitchExecutable.Path @lumoswitchArguments @AgentArgs
if ($null -ne $LASTEXITCODE) { exit $LASTEXITCODE }
'@
  Install-LumoswitchFile $lumoswitchLauncher $lumoswitchLauncherContent
  Write-Host 'Native Lumoswitch setup saved. Future command: cn'
  Write-Host 'Optional maintenance launcher:' $lumoswitchLauncher
  $lumoswitchExecutable = Get-Command 'cn.cmd' -CommandType Application -ErrorAction SilentlyContinue
  if ($null -eq $lumoswitchExecutable) { $lumoswitchExecutable = Get-Command 'cn.exe' -CommandType Application -ErrorAction SilentlyContinue }
  if ($null -eq $lumoswitchExecutable) { $lumoswitchExecutable = Get-Command 'cn' -CommandType Application -ErrorAction Stop }
  $lumoswitchArguments = @()
  & $lumoswitchExecutable.Path @lumoswitchArguments
  if ($null -ne $LASTEXITCODE -and $LASTEXITCODE -ne 0) { throw 'cn exited with code ' + $LASTEXITCODE }
}

The import writes the Agent-supported persistent configuration and starts cn directly. The saved Lumoswitch maintenance script is not required to start the Agent; run it with --lumoswitch-clean when you need to restore or remove this setup.

Remove the CLI setup

Windows PowerShell

Exit every Lumoswitch session for this Agent, then run the command below. The optional maintenance launcher removes the managed native configuration, restores any preserved shared file, clears Lumoswitch user environment values, and removes itself.

& {
  $lumoswitchLauncher = Join-Path $env:LOCALAPPDATA 'Lumoswitch\bin\lumoswitch-continue.ps1'
  if (-not (Test-Path -LiteralPath $lumoswitchLauncher -PathType Leaf)) {
    throw 'The optional Lumoswitch maintenance launcher is missing. Run persistent import again before cleanup.'
  }
  & powershell.exe -NoLogo -NoProfile -ExecutionPolicy Bypass -File $lumoswitchLauncher --lumoswitch-clean
}

macOS / Linux

"$HOME/.local/bin/lumoswitch-continue" --lumoswitch-clean

The command removes only Lumoswitch files created by this page. It does not delete Continue indexes, sessions, the default configuration, or other models.

Persistent VS Code and JetBrains setup

Append this item to the existing models list in ~/.continue/config.yaml; do not replace the entire file:

- name: Lumoswitch
  provider: openai
  model: "{{model}}"
  apiBase: "{{api_base_url}}"
  apiKey: ${{ secrets.LUMOSWITCH_CONTINUE_API_KEY }}
  capabilities:
    - tool_use

Add this line to ~/.continue/.env and never commit it:

LUMOSWITCH_CONTINUE_API_KEY={{access_key}}

Continue reloads configuration after save; reload the IDE window if necessary. IDE extensions have no one-time launch command because VS Code and JetBrains cannot read variables exported in a terminal process. They resolve secrets from .env instead.

Remove the IDE setup

  1. Remove only the complete name: Lumoswitch model item from models in ~/.continue/config.yaml.
  2. Run this command to remove only the Lumoswitch variable from Continue's .env:
if [ -f "$HOME/.continue/.env" ]; then
  umask 077
  LUMOSWITCH_ENV_TEMP="$(mktemp "${TMPDIR:-/tmp}/lumoswitch-continue-env.XXXXXX")"
  awk '!/^LUMOSWITCH_CONTINUE_API_KEY=/' "$HOME/.continue/.env" > "$LUMOSWITCH_ENV_TEMP"
  chmod 600 "$LUMOSWITCH_ENV_TEMP"
  mv "$LUMOSWITCH_ENV_TEMP" "$HOME/.continue/.env"
fi

There is no automatic command for rewriting shared config.yaml: it may contain comments, YAML anchors, and other models, and generic text deletion can break indentation or adjacent entries. Do not remove the entire ~/.continue directory.

Verify and troubleshoot

  • CLI can select an explicit configuration with cn --config <path>; IDE uses the Config selector to open local configuration.
  • model must be the client-facing model name, not the upstream provider ID.
  • If tools fail, confirm actual tool-call support before retaining tool_use.

References: Continue's official status notice, CLI configuration, YAML Reference, secret resolution, and understanding configurations. Last verified: 2026-08-27.

Maintainer publication fields
  • Platform ID: continue
  • Display name: Continue CLI
  • Downstream protocol: openai-compatible
  • commandTemplate: copy the complete One-time launch code block
  • Persistent strategy: native
  • persistentCommandTemplate: copy the complete Persistent CLI use code block
  • futureCommand: cn
  • Display order: 100
  • Last verified: 2026-08-27

On this page