Back to Continue

Context Providers

docs/customize/custom-providers.mdx

1.5.456.4 KB
Original Source

As an example, say you are working on solving a new GitHub Issue. You type '@Issue' and select the one you are working on. Continue can now see the issue title and contents. You also know that the issue is related to the files 'readme.md' and 'helloNested.py', so you type '@readme' and '@hello' to find and select them. Now these 3 "Context Items" are displayed inline with the rest of your input.

Built-in Context Providers

You can add any built-in context-providers in your config file as shown below:

@File Context Provider – Reference Files in Your Workspace

Reference any file in your current workspace.

config.yaml

context:  - provider: file

@Code Context Provider – Reference Functions and Classes

Reference specific functions or classes from throughout your project.

config.yaml

context:  - provider: code

@Git Diff Context Provider – Reference Branch Changes

Reference all of the changes you've made to your current branch. This is useful if you want to summarize what you've done or ask for a general review of your work before committing.

config.yaml

context:  - provider: diff

@Current File Context Provider – Reference the Active File

Reference the currently open file.

config.yaml

context:  - provider: currentFile

@Terminal Context Provider – Reference Last Terminal Command and Output

Reference the last command you ran in your IDE's terminal and its output.

config.yaml

context:  - provider: terminal

@Docs Context Provider – Reference Documentation Site Content

Reference the contents from any documentation site.

config.yaml

context:  - provider: docs

Note that this will only enable the @Docs context provider.

To use it, you need to add a documentation site to your config file. See the docs page for more information.

@Open Context Provider – Reference All Open Files or Pinned Files

Reference the contents of all of your open files. Set onlyPinned to true to only reference pinned files.

config.yaml

context:
  - provider: open
    params:
      onlyPinned: true

@Web Context Provider – Reference Relevant Web Pages

Reference relevant pages from across the web, automatically determined from your input.

Optionally, set n to limit the number of results returned (default 6).

config.yaml

context:
  - provider: web
    params:
      n: 5

@Codebase Context Provider – Reference Relevant Codebase Snippets

Reference the most relevant snippets from your codebase.

config.yaml

context:
  - provider: codebase

Read more about indexing and retrieval here.

@Folder Context Provider – Reference Code from a Specific Folder

Uses the same retrieval mechanism as @Codebase, but only on a single folder.

config.yaml

context:  - provider: folder

@Search Context Provider – Reference Code Search Results

Reference the results of codebase search, just like the results you would get from VS Code search.

config.yaml

context:
  - provider: search
    params:
      maxResults: 100 # optional, defaults to 200

This context provider is powered by ripgrep.

@Url Context Provider – Reference Content from a URL

Reference the markdown converted contents of a given URL.

config.yaml

context:
  - provider: url

@Clipboard Context Provider – Reference Clipboard Items

Reference recent clipboard items

config.yaml

context:
  - provider: clipboard

@Tree Context Provider – Reference Workspace File Structure

Reference the structure of your current workspace.

config.yaml

context:
  - provider: tree

@Problems Context Provider – Reference Problems in the Current File

Get Problems from the current file.

config.yaml

context:
  - provider: problems

@Debugger Context Provider – Reference Debugger Local Variables

Reference the contents of the local variables in the debugger. Currently only available in VS Code.

config.yaml

context:
  - provider: debugger
    params:
      stackDepth: 3

Uses the top n levels (defaulting to 3) of the call stack for that thread.

@Repository Map Context Provider – Reference Codebase Outline and Signatures

Reference the outline of your codebase. By default, signatures are included along with file in the repo map.

includeSignatures params can be set to false to exclude signatures. This could be necessary for large codebases and/or to reduce context size significantly. Signatures will not be included if indexing is disabled.

config.yaml

context:
  - provider: repo-map
    params:
      includeSignatures: false # default true

Provides a list of files and the call signatures of top-level classes, functions, and methods in those files. This helps the model better understand how a particular piece of code relates to the rest of the codebase.

In the submenu that appears, you can select either Entire codebase, or specify a subfolder to generate the repository map from.

This context provider is inspired by Aider's repository map.

@Operating System Context Provider – Reference System Architecture and Platform

Reference the architecture and platform of your current operating system.

config.yaml

context:
  - provider: os

Using the Model Context Protocol (MCP) in Continue

The Model Context Protocol is a standard proposed by Anthropic to unify prompts, context, and tool use. Continue supports any MCP server with the MCP context provider. Read their quickstart to learn how to set up a local server and then set up your configuration like this:

config.yaml

mcpServers:
  - name: My MCP Server
    command: uvx
    args:
      - mcp-server-sqlite
      - --db-path
      - /Users/NAME/test.db

You'll then be able to type "@" and see "MCP" in the context providers dropdown.

How to Request a New Context Provider in Continue

Not seeing what you want? Create an issue here to request a new Context Provider.