skip to content
ccdocs

cc ide

Manage IDE writer plugins — list registered writers and run one-time setup for the active workspace.

Usage

cc ide [action] [flags]

Arguments

ArgumentDescription
actionOne of list, setup. Defaults to list.

Flags

FlagDescription
--path PATHOverride the workspace path (defaults to the active version's path)

Actions

cc ide list

Shows every registered IDE writer (built-in + plugins) and which ones are active for the current workspace.

$ cc ide list

Registered IDE writers
  vscode active
  cursor inactive

workspace: /Users/jane/odoo/worktrees/17.0

A writer is active when:

  • the cc.ide setting is auto (the default) AND the writer's detect() returns True for the workspace, OR
  • the cc.ide setting explicitly names it (e.g. cc.ide = vscode,cursor)

cc ide setup

Writes one-time editor templates for the active version's path. This is the only legitimate path that touches files like launch.json (for VSCode). cc switch never edits them.

$ cc ide setup

 vscode templates written /Users/jane/odoo/worktrees/17.0

Run this:

  • After installing cc, once per workspace
  • After updating cc — to pick up new template entries in the latest version
  • Manually any time you want to re-apply the templates

If cc.ide is set to none or no writer matches, this command exits with a warning.

What gets written

VSCode / Cursor

FileWhenWhat
.vscode/launch.jsoncc ide setup (and only then)Debug configurations CC: Odoo and CC: Odoo [test], merged with your existing entries
.vscode/settings.jsonEvery cc switchcc.odooBin, cc.port, cc.database, cc.addonsPath, cc.modules, cc.upgradePath, cc.initMode, python.defaultInterpreterPath

The launch.json entries reference settings.json keys via ${config:cc.X} indirection — so on each switch, the debugger picks up the new database / addons / modules without launch.json itself ever changing.

Examples

# Inspect what's registered + which writers will run on next switch
cc ide list

# Write VSCode/Cursor templates for the active workspace
cc ide setup

# Set up a different workspace explicitly
cc ide setup --path ~/odoo/worktrees/18.0

# Disable IDE integration entirely (terminal-only setup)
cc config           # set IDE → None (no editor integration)

# Force a specific writer (skip auto-detection)
cc config           # set IDE → Cursor

Plugin development

Writing your own writer for an editor cc doesn't ship out of the box — see IDE Writers for the interface, discovery mechanism, and a minimal example.

See also

  • IDE Writers — concept and plugin authoring
  • cc switch — invokes writer.apply() on every switch
  • cc workspacecc workspace add prompts to run cc ide setup automatically

On this page