Continue.dev Guide
# VS Code: # Install "Continue" from the marketplace # JetBrains: # Install from JetBrains Marketplace # Or: npx create-continue # Open-source: github.com/continuedev/continue
Continue is the open-source alternative to Cursor and Copilot. It gives you the same AI coding experience (tab completion, inline chat, multi-file editing) but with full control over your data and models. Use GPT-4o, Claude, Ollama local models, or a custom endpoint.
The key feature is model flexibility. Run Tab autocomplete with a small local model (StarCoder2-3B or CodeGemma-2B) for fast, private completions, and use Claude/GPT-4o for complex chat and edits. All config is in `~/.continue/config.json`.
Continue supports context providers: @file (reference a file), @folder (reference a folder), @codebase (search the entire codebase), @terminal (include terminal output), @diff (show git diff), and @problems (include VS Code errors). Great for privacy-sensitive environments where code must not leave the network.
Setup
# Install VS Code extension from marketplace # Or JetBrains plugin from JetBrains Marketplace # Open Continue sidebar: # Click the Continue icon in the activity bar # Or press Cmd+Shift+R (Ctrl+Shift+R)
Tab Autocomplete
# Configure autocomplete model in ~/.continue/config.json:
{
"tabAutocompleteModel": {
"title": "Tab Autocomplete",
"provider": "ollama",
"model": "starcoder2:3b"
}
}
# Or use free API:
"tabAutocompleteModel": {
"provider": "free-trial",
"model": "codestral-latest"
}# ~/.continue/config.json
{
"models": [{
"title": "Local LLM",
"provider": "ollama",
"model": "codellama:7b"
}],
"tabAutocompleteModel": {
"title": "Local Tab",
"provider": "ollama",
"model": "starcoder2:3b"
},
"disableIndexing": true, # No codebase search (avoids network)
"allowAnonymousTelemetry": false
}
# Only local Ollama requests, no API keys neededChat & Edit
# Select code, press Cmd+I (Ctrl+I) # Ask in the input box: "What does this function do?" "Add TypeScript types to this" "Refactor to use async/await" "Find potential bugs" # Use the edit mode to apply changes: # Highlight code → Ctrl+Shift+E # Type: "Rewrite this with better error handling"
# In chat, describe the change: "Add pagination to all list endpoints" # Continue shows diffs for each file # Review and accept with Ctrl+Enter # Or reject specific files # For complex changes, use the Apply feature: # Chat asks: "Which files do you want me to edit?" # List the files or use @file references
Context Providers
# Type @ in the chat input: @file src/app.ts # Reference a specific file @folder src/components # Reference an entire folder @codebase # Search entire codebase @terminal # Include terminal output @diff # Show git diff @problems # Include VS Code errors # Example: "@codebase Find all places where we fetch users" "@file src/app.ts explain the routing setup"
Model Config
# ~/.continue/config.json
{
"models": [
{
"title": "Claude 3.5 Sonnet",
"provider": "anthropic",
"model": "claude-3-5-sonnet-20241022",
"apiKey": "sk-ant-..."
},
{
"title": "Local Llama",
"provider": "ollama",
"model": "llama3.2"
},
{
"title": "OpenAI Compatible",
"provider": "openai",
"apiBase": "http://localhost:8080/v1",
"model": "my-model"
}
]
}