Reference

The csc command line

Everything you can do from the shell without starting a session.

csc is the whole command. Run it without a subcommand for the interactive agent; add a subcommand for account setup, local sessions, unattended runs, background agents, schedules, editor bridges, or maintenance. contextcode is the equivalent long name.

The old cc launcher is retired because that name commonly belongs to the system C compiler.

Complete shell reference

This table is generated from the help text shipped by ContextCode, so aliases and top-level flags stay aligned with the binary.

30 entrys

Commands

csc login
Sign in via browser (device flow); also /login in chat
csc logout [--all]
Remove the saved token (--all clears shared credentials too)
csc setup --profile <token>
Redeem a one-time setup token from the dashboard
csc connect <project>
Connect your coding assistant to a project and save its first memory
csc doctor
Diagnose auth, connectivity, scope, index, and terminal
csc config
Print redacted local configuration and active scope
csc run "<prompt>"
Headless one-shot run (--json, --agent, --image, --permission-mode, --timeout)
csc resume [id]
Resume a saved session (bare opens the session browser)
csc continue
Resume the most recent session in this project
csc sessions [search|rm|rename|export]
Manage saved local sessions
csc agent <subcommand>
List, run, validate, and inspect background agents
csc agent daemon --foreground
Run the shared per-user agent daemon (autostarts on demand; set CONTEXTCODE_AGENT_DAEMON_AUTOSTART=off to disable)
csc agent service <action>
Install, start, stop, status, or uninstall its OS service
csc schedule <subcommand>
Add, list, pause, resume, run, inspect, or remove durable agent schedules
csc usage [--json]
Credit balance, plan, and live model rates
csc mcp
Serve ContextCode as an MCP server (stdio)
csc mcp add|list|remove|import
Manage connected MCP servers (csc mcp help)
csc editor serve --stdio
Serve EditorBridge v2 for VS Code and editor clients
csc serve-stdio
Legacy editor transport bridge
csc update [--check]
Self-update in place (aliases: upgrade, self-update)
csc version
Print the version
csc help
Show this reference

Global flags

csc --continue, -c
Resume the most recent session in this project
csc --resume[=id]
Open the session browser (or resume a specific session)
csc --plan | --read-only
Read-only mode: deny writes, shell, and MCP actions
csc --auto | --yolo
Safe auto for workspace work + read-only Git inspection; risky tools ask or remain blocked
csc --bypass
Bounded no-prompt mode: proven workspace-contained work and exact trusted approvals run; unverifiable or blocked operations are denied
csc --theme <name>
UI theme (default contextstream-dark)
csc --help, -h
Show this reference
csc --version, -v
Print the version

Starting a session

Terminal
csc                         # new interactive session in this project
csc --continue              # latest local session for this project
csc --resume                # local session browser
csc --resume=<id>           # one local session directly
csc --plan                  # read-only exploration and planning
csc --auto                  # safely apply routine workspace work

--read-only is the long-form alias for --plan; --yolo is the compatibility alias for --auto. --bypass is still bounded: operations that cannot be proved safe or explicitly trusted remain denied.

The session browser and csc sessions operate on files under ~/.contextcode/sessions/. Shared project memory and captured history can cross machines; the resumable local session file does not.

Account, scope, and maintenance

login uses browser device flow. logout removes this machine's saved token; logout --all also clears the shared credential locations ContextCode knows about. setup --profile <token> redeems a one-time dashboard setup token.

Use csc config to print the active configuration with secrets redacted, and csc doctor to diagnose authentication, connectivity, project scope, indexing, and terminal support. csc update --check checks without installing; update, upgrade, and self-update name the same updater.

One-shot runs

csc run accepts a prompt as arguments or from standard input. Use a bare -- before literal prompt text that starts with a dash:

Terminal
csc run --json -- "review the diff and verify the tests"
printf '%s\n' "explain the failure" | csc run --json

It supports one final JSON object, streamed JSON events, an explicit agent and permission mode, bounded or unbounded runtime, quiet progress, and up to three repeatable PNG/JPEG references. See Running it headless and in CI for the exact contract.

Agents and schedules

csc agent manages the shared per-user agent daemon, agents, and run history. The daemon starts on demand unless CONTEXTCODE_AGENT_DAEMON_AUTOSTART=off. csc agent service installs or controls its operating-system service.

csc schedule creates durable schedules that run on this machine. The subcommands are add, list, show, pause, resume, run, remove, and history; actions after creation use the schedule ID. See Scheduled runs for timing syntax.

Connected tools and editor bridges

csc mcp with no management subcommand serves ContextCode itself over stdio. csc mcp add, list, enable, disable, remove, and import manage the outside servers ContextCode can call.

csc editor serve --stdio is the current EditorBridge v2 endpoint for VS Code and editor clients. csc serve-stdio remains only as the legacy bridge.

Argument rules

Global flags belong before a subcommand. csc run accepts its own flags before or after ordinary prompt words, but -- is the unambiguous boundary when prompt text might look like an option. Run csc help, csc <command> --help, or csc mcp help for the live build's full subcommand syntax.

If it doesn't work

csc: command not found. Installed to ~/.local/bin. Open a new terminal or add it to your PATH.

A command fails with an auth error. csc doctor reports which part of authentication, connectivity, or scope failed.

A local session is missing on another computer. Local resume files do not sync. Start a new session there and ask it to recall the shared project history.

A copied prompt is treated as an option. Put it after --.