diff --git a/.github/workflows/pr_checks.yaml b/.github/workflows/pr_checks.yaml index a879c3d9da..9e040bcff9 100644 --- a/.github/workflows/pr_checks.yaml +++ b/.github/workflows/pr_checks.yaml @@ -5,6 +5,11 @@ on: branches: - main + paths: + - "extensions/vscode/**" + - "core/**" + - "gui/**" + jobs: tsc-check: runs-on: ubuntu-latest diff --git a/docs/docs/chat/how-to-customize.md b/docs/docs/chat/how-to-customize.md index 9df6ec0205..ee26a6a848 100644 --- a/docs/docs/chat/how-to-customize.md +++ b/docs/docs/chat/how-to-customize.md @@ -12,3 +12,4 @@ There are a number of different ways to customize Chat - You can create your own [custom code RAG](../customize/tutorials/custom-code-rag.md) - You can configure [`@Docs`](../customize/deep-dives/docs.md) - You can [build your own context provider](../customize/tutorials/build-your-own-context-provider.md) +- You can configure and create custom [tools](../customize/tools.md) diff --git a/docs/docs/customize/tools.md b/docs/docs/customize/tools.md new file mode 100644 index 0000000000..f18e403873 --- /dev/null +++ b/docs/docs/customize/tools.md @@ -0,0 +1,33 @@ +--- +title: Tools +description: Tool use and customization +keywords: [tool, use, function calling, claude, automatic] +--- + +Tools allow Continue to take action in your IDE and beyond (when you give permission). Currently, they are only supported with [Anthropic](./model-providers/top-level/anthropic.md). To use tools, click on the icon in the input toolbar like below. + +![tools](/img/tool-use-example.png) + +To let you balance speed and safety, each tool can be set to 1 of 3 modes: + +- `Automatic`: When the LLM requests to use the tool, Continue will automatically call it and send the response to the LLM. +- `Allowed`: When the LLM requests to use the tool, Continue will first give you the opportunity to "Cancel" or "Continue" with the tool. +- `Disabled`: The LLM will not know about or be able to use the tool. + +### Custom tools + +Currently custom tools can be configured using the [Model Context Protocol](https://modelcontextprotocol.io/introduction), a standard proposed by Anthropic to unify prompts, context, and tool use. Read their [quickstart](https://modelcontextprotocol.io/quickstart) to learn how to set up a local server and then configure your `config.json` like this: + +```json title="~/.continue/config.json" +{ + "experimental": { + "modelContextProtocolServer": { + "transport": { + "type": "stdio", + "command": "uvx", + "args": ["mcp-server-sqlite", "--db-path", "/Users/NAME/test.db"] + } + } + } +} +``` diff --git a/docs/sidebars.js b/docs/sidebars.js index 11f2e2fd3c..caa6fdc52d 100644 --- a/docs/sidebars.js +++ b/docs/sidebars.js @@ -110,6 +110,7 @@ const sidebars = { }, "customize/context-providers", "customize/slash-commands", + "customize/tools", "customize/development-data", { type: "category", diff --git a/docs/static/img/tool-use-example.png b/docs/static/img/tool-use-example.png new file mode 100644 index 0000000000..63f1c456a4 Binary files /dev/null and b/docs/static/img/tool-use-example.png differ