diff --git a/docs/customize/custom-providers.mdx b/docs/customize/custom-providers.mdx index 640830e1290..702e8f9af8d 100644 --- a/docs/customize/custom-providers.mdx +++ b/docs/customize/custom-providers.mdx @@ -9,7 +9,7 @@ As an example, say you are working on solving a new GitHub Issue. You type '@Iss ## How Do Context Blocks Work? -You can add context providers to assistants using [`context` blocks](/hub/configs/block-types#context). Explore available context blocks in [the hub](https://hub.continue.dev/explore/context). +Explore available context blocks in [the hub](https://hub.continue.dev/explore/context). ## Built-in Context Providers diff --git a/docs/customize/deep-dives/mcp.mdx b/docs/customize/deep-dives/mcp.mdx index 746970fc934..b804ca4c107 100644 --- a/docs/customize/deep-dives/mcp.mdx +++ b/docs/customize/deep-dives/mcp.mdx @@ -19,8 +19,8 @@ that can be set up with custom tools. Currently custom tools can be configured using the Model Context Protocol standard to unify prompts, context, and tool use. -MCP Servers can be added to hub configs using `mcpServers` blocks. You can -explore available MCP server blocks +MCP Servers can be added to hub configs using `mcpServers`. You can +explore available MCP servers [here](https://hub.continue.dev/explore/mcp). MCP can only be used in the **agent** mode. @@ -72,8 +72,7 @@ For example, place your JSON MCP config file at `.continue/mcpServers/mcp.json` To set up your own MCP server, read the [MCP quickstart](https://modelcontextprotocol.io/quickstart) and then [create an -`mcpServers` -block](https://hub.continue.dev/new?type=block&blockType=mcpServers) or add a local MCP +`mcpServers`](https://hub.continue.dev/new?type=block&blockType=mcpServers) or add a local MCP server block to your [config file](./configuration.md): ```yaml title="config.yaml" @@ -94,7 +93,7 @@ When creating a standalone block file in `.continue/mcpServers/`, remember to in ### How to Configure MCP Server Properties -MCP blocks follow the established syntax for blocks, with a few additional properties specific to MCP servers. +MCP components include a few additional properties specific to MCP servers. - `name`: A display name for the MCP server. - `type`: The type of the MCP server: `sse`, `stdio`, `streamable-http` diff --git a/docs/customize/deep-dives/rules.mdx b/docs/customize/deep-dives/rules.mdx index 2b49ea0b4e0..c0fc7fbead7 100644 --- a/docs/customize/deep-dives/rules.mdx +++ b/docs/customize/deep-dives/rules.mdx @@ -76,7 +76,7 @@ Now test your rules by asking a question about a file in chat. ![pirate rule test](/images/pirate-rule-test.png) -## How to Create Rules Blocks +## How to Create Rules ### Creating Local Rules @@ -85,7 +85,7 @@ Rules can be added locally using the "Add Rules" button. ![add local rules button](/images/add-local-rules.png) -**Automatically create local rule blocks**: When in Agent mode, you can prompt the agent to create a rule for you using the `create_rule_block` tool if enabled. +**Automatically create local rules**: When in Agent mode, you can prompt the agent to create a rule for you using the `create_rule_block` tool if enabled. For example, you can say "Create a rule for this", and a rule will be created for you in `.continue/rules` based on your conversation. @@ -135,7 +135,7 @@ To move local rules to the Hub: recommend Markdown. -Rules blocks can be simple text, written in YAML configuration files, or as Markdown (`.md`) files. They can have the following properties: +Rules can be simple text, written in YAML configuration files, or as Markdown (`.md`) files. They can have the following properties: - `name` (**required** for YAML): A display name/title for the rule - `globs` (optional): When files are provided as context that match this glob pattern, the rule will be included. This can be either a single pattern (e.g., `"**/*.{ts,tsx}"`) or an array of patterns (e.g., `["src/**/*.ts", "tests/**/*.ts"]`). diff --git a/docs/customize/model-providers/top-level/tetrate_agent_router_service.mdx b/docs/customize/model-providers/top-level/tetrate_agent_router_service.mdx index b06a629fdb6..6d307d377bb 100644 --- a/docs/customize/model-providers/top-level/tetrate_agent_router_service.mdx +++ b/docs/customize/model-providers/top-level/tetrate_agent_router_service.mdx @@ -168,9 +168,6 @@ context: - uses: continuedev/terminal-context - uses: continuedev/file-context ``` - -To customize, see the [model block creation guide](/hub/configs/create-a-block). - diff --git a/docs/docs.json b/docs/docs.json index 5f7f30addfc..113443939a4 100644 --- a/docs/docs.json +++ b/docs/docs.json @@ -203,16 +203,7 @@ "hub/configs/edit-a-config" ] }, - { - "group": "Blocks", - "icon": "cube", - "pages": [ - "hub/blocks/intro", - "hub/blocks/use-a-block", - "hub/blocks/block-types", - "hub/blocks/create-a-block" - ] - }, + { "group": "Governance", "icon": "building", @@ -389,7 +380,27 @@ }, { "source": "/hub/blocks", - "destination": "/hub/blocks/intro" + "destination": "/hub/introduction" + }, + { + "source": "/hub/blocks/intro", + "destination": "/hub/introduction" + }, + { + "source": "/hub/blocks/use-a-block", + "destination": "/hub/introduction" + }, + { + "source": "/hub/blocks/block-types", + "destination": "/hub/introduction" + }, + { + "source": "/hub/workflows/intro", + "destination": "/hub/agents/intro" + }, + { + "source": "/hub/blocks/create-a-block", + "destination": "/hub/introduction" }, { "source": "/customize", @@ -1061,7 +1072,7 @@ }, { "source": "/hub/blocks/bundles", - "destination": "/hub/blocks/intro" + "destination": "/hub/introduction" }, { "source": "/customize/settings", diff --git a/docs/hub/workflows/intro.mdx b/docs/hub/agents/intro.mdx similarity index 98% rename from docs/hub/workflows/intro.mdx rename to docs/hub/agents/intro.mdx index ec3d834c3ad..5004498d02f 100644 --- a/docs/hub/workflows/intro.mdx +++ b/docs/hub/agents/intro.mdx @@ -1,6 +1,7 @@ --- -title: "Introduction" +title: "Agents Introduction" description: "Run and manage background agents in Mission Control" +sidebarTitle: "Agents" --- diff --git a/docs/hub/configs/block-types.mdx b/docs/hub/configs/block-types.mdx deleted file mode 100644 index 9e31200e15c..00000000000 --- a/docs/hub/configs/block-types.mdx +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: "Models, Rules, Prompts, and MCP servers" -sideBarTitle: "Block Types" -description: "Explore the different types of reusable blocks in Continue Hub including models, MCP servers, rules, and prompts" ---- - -## Models - -Models are blocks that let you specify Large Language Models (LLMs) and other deep learning models to be used for various roles in the open-source IDE extension like Chat, Autocomplete, Edit, Embed, Rerank, etc. You can explore available models on [the hub](https://hub.continue.dev/?type=models). - -Continue supports [many model providers](/customize/model-providers), including Anthropic, OpenAI, Gemini, Ollama, Amazon Bedrock, Azure, xAI, DeepSeek, and more. Models can have one or more of the following roles depending on its capabilities, including `chat`, `edit`, `apply`, `autocomplete`, `embed`, and `rerank`. - -Read more about roles [here](/customize/model-roles) and view [`models`](/reference#models) in the YAML Reference for more details. - -## MCP Servers - -Model Context Protocol (MCP) is a standard way of building and sharing tools for language models. MCP Servers can be defined in `mcpServers` blocks. - -[Explore MCP Servers](https://hub.continue.dev/?type=mcpServers) on the Hub, learn more in the [MCP deep dive](/customize/deep-dives/mcp), and view [`mcpServers`](/reference#mcpservers) in the YAML Reference for more details. - -## Rules - -Rules blocks are instructions that your custom AI code agent will always keep in mind - the contents of rules are inserted into the system message for all Chat, Plan, and Agent requests. - -[Explore rules](https://hub.continue.dev/?type=rules) on the Hub, learn more in the [rules deep dive](/customize/deep-dives/rules), and view [`rules`](/reference#rules) in the YAML Reference for more details. - -## Prompts - -Prompts blocks are pre-written, reusable instructions that are used to kick off a task. They are especially useful as context for repetitive and/or complex tasks. - -[Explore prompts](https://hub.continue.dev/?type=prompts) on the Hub, learn more in the [prompts deep dive](/customize/deep-dives/prompts), and view [`prompts`](/reference#prompts) in the YAML Reference for more details. \ No newline at end of file diff --git a/docs/hub/configs/create-a-block.mdx b/docs/hub/configs/create-a-block.mdx deleted file mode 100644 index e488799c951..00000000000 --- a/docs/hub/configs/create-a-block.mdx +++ /dev/null @@ -1,39 +0,0 @@ ---- -title: "How to create your own config option" -sidebarTitle: "Create a Config option" -description: "Learn how to create and remix reusable configuration options in Continue Hub for sharing configuration components like models, prompts, and tools with customizable inputs and template variables" ---- - -## How to Remix a Block - -You should remix a block if you want to use it after some modifications. - -By clicking the “remix” button, you’ll be taken to the “Create a remix” page. - -![Remix block button](/images/hub/blocks/images/block-remix-button-913beb80672662855acc7013561c78d0.png) - -Once here, you’ll be able to 1) edit YAML configuration for the block and 2) change name, description, icon, etc. Clicking “Create block” will make this block available for use in an agent. - -## How to Create a Block from Scratch - -To create a block from scratch, you will need to click “New block” in the top bar. - -![New block button](/images/hub/blocks/images/block-new-button-03d90f6cc9be774c52bdfc4baa5d634e.png) - -After filling out information on the block, you will want to create a block following the `config.yaml` [reference documentation](/reference). Refer to examples of blocks on [hub.continue.dev](https://hub.continue.dev/explore/models) and visit the [YAML Reference](/reference#complete-yaml-config-example) docs for more details. - -![New block page](/images/hub/blocks/images/block-new-page-2d7faf71739d0f062d555b5d7257fb56.png) - -### Block Inputs - -Blocks can receive values, including secrets, as inputs through templating. For values that the user of the block needs to set, you can use template variables (e.g. `${{ inputs.API_KEY}}`). Then, the user can set `API_KEY: ${{ secrets.MY_API_KEY }}` in the `with` clause of their agent. - - -**Choosing between `secrets.` and `inputs.`** - -When creating blocks for the hub: -- Use `${{ inputs.INPUT_NAME }}` in your block definition when you want users to be able to customize which secret is used -- Users will then map their own secrets using `${{ secrets.SECRET_NAME }}` in the `with` clause - -For personal or single-use configurations, you can skip the inputs layer and reference `${{ secrets.SECRET_NAME }}` directly in your block. - diff --git a/docs/hub/configs/create-a-config.mdx b/docs/hub/configs/create-a-config.mdx index e31cc9c7021..04a7a026ee5 100644 --- a/docs/hub/configs/create-a-config.mdx +++ b/docs/hub/configs/create-a-config.mdx @@ -8,7 +8,6 @@ sidebarTitle: "Create a Config" To create an config from scratch, select “New config” in the top bar. - Choose a name, slug, description, and icon for your config. The easiest way to create an config is to click "Create config" with the default configuration and then add / remove blocks using the sidebar. @@ -17,7 +16,7 @@ Alternatively, you can edit the config YAML directly before clicking "Create con -## How to Remix an config +## How to Remix a Config You can also create an config by remixing an existing one. This is useful if you want to start with a pre-configured config and make modifications. @@ -25,7 +24,7 @@ By clicking the “remix” button, you’ll be taken to the “Create a remix Once here, you’ll be able to -1. add or remove blocks in YAML configuration +1. add or remove components from the config. 2. change the name, description, icon, etc. Clicking “Create config” will make this config available for use. diff --git a/docs/hub/configs/edit-a-config.mdx b/docs/hub/configs/edit-a-config.mdx index 49e048c1026..5e1dd3c1446 100644 --- a/docs/hub/configs/edit-a-config.mdx +++ b/docs/hub/configs/edit-a-config.mdx @@ -3,16 +3,17 @@ title: "How to Edit a Config" description: "New versions of a config can be created and published using the sidebar." --- -First, select a config from the dropdown at the top. +First, select a config either from the Hub search or one that you've installed. -While editing a config, you can explore the hub and click "Add Block" from a block page to add it to your config. +While editing a config, you can explore the hub and click "+" to add it to your config. -For blocks that require secret values like API keys, you will see a small notification on the block's tile in the sidebar that will indicate if action is needed. +For tools or models that require secret values like API keys, you will see a small notification on its tile that will indicate if action is needed. -To delete a block, click the trash icon. -If a block you want to use does not exist yet, you can [create a new block](/hub/configs/create-a-block). +To delete part of your config, you can remove it from the yaml. + +If a rule, prompt, or tool you want to use does not exist yet, you can [create it](/hub/introduction#creating-components). When you are done editing, click "Publish" to publish a new version of the config. -Click "Open VS Code" or "Open JetBrains" to open your IDE for using the config. +Reload your terminal or IDE to use the latest version of the config in your agents. \ No newline at end of file diff --git a/docs/hub/configs/intro.mdx b/docs/hub/configs/intro.mdx index 6f53b03521d..43ab3f48f60 100644 --- a/docs/hub/configs/intro.mdx +++ b/docs/hub/configs/intro.mdx @@ -1,6 +1,101 @@ --- -title: "Introduction" +title: "Introduction to Configs" description: "Custom configuration options include Models, MCP Servers, Rules, Prompts, etc." +sidebarTitle: "Configs" --- -Following the [`config.yaml`](/reference) format, you can create a custom configuration for the Continue CLI and IDE extensions. \ No newline at end of file + +## What Are Configs? + +Configs are flexible containers that combine multiple components to create powerful AI coding experiences using the Continue CLI or the Extensions. A single config can include: + + + + + + Large Language Models for chat, autocomplete, editing, and more + + + + + + Model Context Protocol servers that provide tools and capabilities + + + + + + Guidelines that shape AI behavior and responses + + + + + + Reusable instructions for common coding tasks + + + + + +## How Configs Work + +Think of configs as recipes for AI assistance. Each config defines: + +- **What models** to use for different tasks (chat, autocomplete, code editing) +- **Which tools** are available through MCP servers +- **How the AI behaves** through rules and guidelines +- **Pre-built prompts** for common workflows + +This flexibility lets you create specialized setups for different contexts, like a Next.js config with React-specific rules and tools, or a data science config with Python analysis capabilities. + +## Config Permissions + +When creating configs, you can set visibility levels: + +- **Personal**: Only you can see and use the config +- **Public**: Anyone can discover and use your config +- **Organization**: Members of your organization can access the config + +## Working with Configs + +You can interact with configs in three main ways: + +- **Create**: Build a new config from scratch or start with a template +- **Edit**: Modify your existing configs by adding/removing components +- **Remix**: Take someone else's config and customize it for your needs + +## Getting Started + + + + + + Browse the [Continue Hub](https://hub.continue.dev/?type=assistants) to see what configs others have built + + + + + + Click "Install Config" (+) on any config that interests you + + + + + + Add your API keys and customize components to match your workflow + + + + + + Select the config from the dropdown in your Continue extension, type `/config` in the CLI, or use `--config` with the CLI commands + + + + + +## Config Format + +All configs follow the [`config.yaml`](/reference) format, whether you're using the hub interface or editing files locally. This ensures consistency between hub-managed and local configurations. + + diff --git a/docs/hub/configs/use-a-block.mdx b/docs/hub/configs/use-a-block.mdx deleted file mode 100644 index 9e2eca8cfd3..00000000000 --- a/docs/hub/configs/use-a-block.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "How to Customize a Config" -description: "Learn how to configure the Continue CLI and IDE extensions in the Continue Hub" ---- - -Prompts, rules, models, MCP servers, etc. can be combined in Continue Hub to create a custom configuration. Learn more: - -- [Create a configuration](/hub/configs/create-a-config) -- [Edit a configuration](/hub/configs/edit-a-config) - -Some configurations require inputs. If you are missing an input for a configuration, a notification icon will show up in the sidebar next to the model, MCP server, etc. Click the notification to select which secret to use for the input: - -![Configuration inputs](/images/hub/blocks/images/block-inputs-b26686c49eea145a875dfe46862c85e0.png) \ No newline at end of file diff --git a/docs/hub/introduction.mdx b/docs/hub/introduction.mdx index ef897581330..2dd9b32daf0 100644 --- a/docs/hub/introduction.mdx +++ b/docs/hub/introduction.mdx @@ -1,16 +1,114 @@ --- -title: "Introduction" -description: "Continue Hub provides a central registry for creating, managing, and sharing agents, prompts, rules, MCP servers, models, etc. with organization-level governance and configuration" +title: "Continue Hub" +description: "Central platform for discovering, creating, and sharing AI coding configurations, agents, and components with organization-level governance" --- -[Continue Hub](https://hub.continue.dev) is the place to discover, configure, and govern your custom prompts, models, rules, MCP tools, and agents. +[Continue Hub](https://hub.continue.dev) is your central platform for AI-powered development. Discover pre-built configurations, create custom agents, and manage components that power your coding workflow. -Continue Hub provides a centralized platform for managing the essential building blocks of your AI coding workflow: +## What You Can Do on the Hub -- **[Models](/hub/configs/block-types#models)**: Discover and configure models from various providers -- **[MCP Tools](/hub/configs/block-types#mcp-servers)**: Access and integrate Model Context Protocol tools to retrieve real-time data and take action -- **[Rules](/hub/configs/block-types#rules)**: Define custom guidelines, constraints, policies, etc. for the solution -- **[Prompts](/hub/configs/block-types#prompts)**: Create and share reusable instructions that kickoff an agent - - **[Configs](/hub/configs/intro)**: a prompt and model that can be configured with rules and MCP tools to complete a task + -Continue Hub also makes it easy for engineering leaders to centrally [set up](/hub/secrets/secret-types) and [govern](/hub/governance/org-permissions) these resources for their organization. \ No newline at end of file + + + Use a combinations of models, tools, and rules for different coding contexts. [Learn more →](/hub/configs/intro) + + + + + + Run background agents that complete tasks automatically in your repositories. [Learn more →](/hub/workflows/intro) + + + + + +## Hub Components + +Both configs and agents are built from reusable components that you can create, share, and customize: + + + + + + Large Language Models from various providers (OpenAI, Anthropic, etc.) configured for specific roles like chat, autocomplete, or editing + + + + + + Model Context Protocol servers that provide tools and capabilities like database access, web search, or custom functions + + + + + + Guidelines that shape AI behavior - coding standards, constraints, or specific instructions for your domain + + + + + + Reusable instructions for common tasks, optimized for specific workflows or coding patterns + + + + + +## Creating Components + + + + Components are the building blocks used in both configs and agents. When you create a component on the hub, it becomes available for use in any config or agent. + + + + + + + + Start with a blank template: + + - Select New Rules, Prompts, Configs, or Agents from the Hub navigation + - Click 'New' to start with a blank template + - Configure by filling in the inputs to create your markdown configuration + ![hub navigation new](../images/hub/hub-nav.png) + + + + + + Customize an existing component: + + - Browse the [Hub](https://hub.continue.dev/) for what you need + - Click 'Remix' to create a copy that you can customize + - Modify the configuration for your specific needs + - Save your customized version + ![hub remix button](../images/hub/block-remix-button.png) + + + + + + +### Component Permissions + +Set visibility for your components: + +- **Personal**: Only you can see and use +- **Public**: Anyone can discover and use +- **Organization**: Team members can access + +### Component Inputs + +Some components can receive values, including secrets, as inputs through templating. For values that the user needs to set, you can use template variables (e.g. `${{ inputs.API_KEY}}`). Then, the user can set `API_KEY: ${{ secrets.MY_API_KEY }}` in the `with` clause of their agent or config. + + +**Choosing between `secrets.` and `inputs.`** + +When creating blocks for the hub: +- Use `${{ inputs.INPUT_NAME }}` in your block definition when you want users to be able to customize which secret is used +- Users will then map their own secrets using `${{ secrets.SECRET_NAME }}` in the `with` clause + +For personal or single-use configurations, you can skip the inputs layer and reference `${{ secrets.SECRET_NAME }}` directly in your block. + diff --git a/docs/images/block-new-button-03d90f6cc9be774c52bdfc4baa5d634e.png b/docs/images/block-new-button-03d90f6cc9be774c52bdfc4baa5d634e.png deleted file mode 100644 index 456db04a9c4..00000000000 Binary files a/docs/images/block-new-button-03d90f6cc9be774c52bdfc4baa5d634e.png and /dev/null differ diff --git a/docs/images/hub/block-new-button.png b/docs/images/hub/block-new-button.png deleted file mode 100644 index 456db04a9c4..00000000000 Binary files a/docs/images/hub/block-new-button.png and /dev/null differ diff --git a/docs/images/hub/block-new-page.png b/docs/images/hub/block-new-page.png deleted file mode 100644 index 9addc9238ba..00000000000 Binary files a/docs/images/hub/block-new-page.png and /dev/null differ diff --git a/docs/images/hub/bundle-new-button.png b/docs/images/hub/bundle-new-button.png deleted file mode 100644 index 60ccc23d69b..00000000000 Binary files a/docs/images/hub/bundle-new-button.png and /dev/null differ diff --git a/docs/images/hub/hub-nav.png b/docs/images/hub/hub-nav.png new file mode 100644 index 00000000000..43344605658 Binary files /dev/null and b/docs/images/hub/hub-nav.png differ