diff --git a/.gitignore b/.gitignore
index b2d6de3..ed3fe72 100644
--- a/.gitignore
+++ b/.gitignore
@@ -18,3 +18,4 @@
npm-debug.log*
yarn-debug.log*
yarn-error.log*
+.vercel
diff --git a/docs/about/changelog.md b/docs/about/changelog.md
index eea0445..9cd569b 100644
--- a/docs/about/changelog.md
+++ b/docs/about/changelog.md
@@ -13,20 +13,20 @@ Major features and changes are noted here. To review all updates, see the
Related: [Upgrade CodeGate](../how-to/install.md#upgrade-codegate)
-- **Cline support** - 28 Jan, 2025\
- CodeGate version 0.1.14 adds support for
- [Cline](https://github.com/cline/cline) with Anthropic, OpenAI, Ollama, and LM
- Studio. See the [how-to guide](../how-to/use-with-cline.mdx) to learn more.
+- **New integration: Cline** - 28 Jan, 2025\
+ CodeGate version 0.1.14 adds support for [Cline](https://cline.bot/) with
+ Anthropic, OpenAI, Ollama, and LM Studio. See the
+ [integration guide](../integrations/cline.mdx) to learn more.
- **Workspaces** - 22 Jan, 2025\
Now available in CodeGate v0.1.12, workspaces help you organize and customize
your AI-assisted development. Learn more in
[Workspaces](../features/workspaces.mdx).
-- **Aider support** - 13 Jan, 2025\
+- **New integration: aider** - 13 Jan, 2025\
CodeGate version 0.1.6 adds support for [aider](https://aider.chat/), an AI
pair programmer in your terminal. See the
- [how-to guide](../how-to/use-with-aider.mdx) to learn more.
+ [integration guide](../integrations/aider.mdx) to learn more.
- **Semantic versioning for container image** - 8 Jan, 2025\
Starting with v0.1.4, the CodeGate container image is published with semantic
@@ -35,11 +35,12 @@ Related: [Upgrade CodeGate](../how-to/install.md#upgrade-codegate)
optionally pull using the major (`v0`), minor (`v0.1`), or patch version
(`v0.1.4`) to explicitly control the version you're running. \
CodeGate is evolving quickly, so we still recommend pulling the `latest` tag
- so you don't miss out on new features and updates to package risk data.
+ so you don't miss out on the newest features and updates.
- **UI port change** - 7 Jan, 2025\
The internal port for the dashboard UI has changed from 80 to 9090 to resolve
a permissions issue for Linux users.
-- **Introducing CodeGate** - 17 Dec, 2024\
- Initial public launch of CodeGate!
+- **Introducing CodeGate!** - 17 Dec, 2024\
+ Initial public launch of CodeGate, with support for Continue and GitHub
+ Copilot.
diff --git a/docs/about/contributing.md b/docs/about/contributing.md
index 2794c38..0c118e0 100644
--- a/docs/about/contributing.md
+++ b/docs/about/contributing.md
@@ -1,6 +1,6 @@
---
title: Contributing
-description: How to contribute to the project.
+description: How to contribute to CodeGate
sidebar_position: 30
---
@@ -25,7 +25,13 @@ general usage question, please ask in the `#codegate` channel on
create a new issue in the
[CodeGate GitHub repository](https://github.com/stacklok/codegate/issues).
-## Contributing code
+## Contributing code or docs
+
+CodeGate's code and docs are managed in several repositories:
+
+- Main repo: https://github.com/stacklok/codegate
+- Dashboard UI: https://github.com/stacklok/codegate-ui
+- Docs: https://github.com/stacklok/codegate-docs
If you've found an issue you'd like to work on, you can contribute code to
CodeGate by submitting a pull request. Before you submit a pull request, please
diff --git a/docs/about/faq.md b/docs/about/faq.md
index cf15f5b..5e0bccb 100644
--- a/docs/about/faq.md
+++ b/docs/about/faq.md
@@ -1,14 +1,14 @@
---
title: Frequently asked questions
-description: Frequently asked questions about the CodeGate project.
+description: Frequently asked questions about the CodeGate project
sidebar_label: FAQ
sidebar_position: 10
---
-### Does CodeGate replace my AI code assistant plugin?
+### Does CodeGate replace my AI coding assistant or agent?
-No, CodeGate works _with_ your AI code assistant, as a local intermediary
-between your client and the LLM it's communicating with.
+No, CodeGate works _with_ your AI coding tool, as a local intermediary between
+your client and the LLM it's communicating with.
### Does CodeGate work with any other IDE plugins or coding assistants?
diff --git a/docs/about/index.mdx b/docs/about/index.mdx
index 6d6467c..6af1f49 100644
--- a/docs/about/index.mdx
+++ b/docs/about/index.mdx
@@ -1,6 +1,6 @@
---
title: About CodeGate
-description: More information about the CodeGate project.
+description: Learn more about the CodeGate project
---
import DocCardList from '@theme/DocCardList';
diff --git a/docs/features/_category_.yaml b/docs/features/_category_.yaml
index 6d79419..45c66b3 100644
--- a/docs/features/_category_.yaml
+++ b/docs/features/_category_.yaml
@@ -1,3 +1,2 @@
label: 'Features'
position: 30
-collapsed: false
diff --git a/docs/how-to/configure.md b/docs/how-to/configure.md
index 03b2cd5..66dac3b 100644
--- a/docs/how-to/configure.md
+++ b/docs/how-to/configure.md
@@ -7,12 +7,13 @@ sidebar_position: 20
## Customize CodeGate's behavior
The CodeGate container runs with default settings to support Ollama, Anthropic,
-and OpenAI APIs with typical settings. To customize the behavior, you can supply
+and OpenAI APIs with typical settings. To customize the behavior, you can add
extra configuration parameters to the container as environment variables:
```bash {2}
docker run --name codegate -d -p 8989:8989 -p 9090:9090 \
[-e KEY=VALUE ...] \
+ --mount type=volume,src=codegate_volume,dst=/app/codegate_volume \
--restart unless-stopped ghcr.io/stacklok/codegate
```
@@ -41,9 +42,11 @@ To use OpenRouter, set the vLLM URL when you launch CodeGate:
```bash {2}
docker run --name codegate -d -p 8989:8989 -p 9090:9090 \
-e CODEGATE_VLLM_URL=https://openrouter.ai/api \
+ --mount type=volume,src=codegate_volume,dst=/app/codegate_volume \
--restart unless-stopped ghcr.io/stacklok/codegate
```
-Then, [configure the Continue IDE plugin](./use-with-continue.mdx) to access the
-vLLM endpoint (`http://localhost:8989/vllm/`) along with the model you'd like to
-use and your OpenRouter API key.
+Then,
+[configure the Continue IDE plugin](../integrations/continue.mdx?provider=vllm)
+to use CodeGate's vLLM endpoint (`http://localhost:8989/vllm`) along with the
+model you'd like to use and your OpenRouter API key.
diff --git a/docs/how-to/dashboard.md b/docs/how-to/dashboard.md
index 18914ec..a900588 100644
--- a/docs/how-to/dashboard.md
+++ b/docs/how-to/dashboard.md
@@ -16,6 +16,7 @@ system when you launch CodeGate, for example:
```bash {2}
docker run --name codegate -d -p 8989:8989 \
-p 9090:9090 \
+ --mount type=volume,src=codegate_volume,dst=/app/codegate_volume \
--restart unless-stopped ghcr.io/stacklok/codegate:latest
```
@@ -36,10 +37,9 @@ browser.
## Persisting dashboard data {#persisting-dashboard-data}
-To retain your prompt history and other dashboard metrics between restarts,
+To retain your prompt history and workspace configurations between restarts,
mount a persistent
[Docker volume](https://docs.docker.com/engine/storage/volumes/) to the CodeGate
-container. The volume destination must be `/app/codegate_volume` inside the
container. This example creates a volume named `codegate_volume`:
```bash {2}
diff --git a/docs/how-to/install.md b/docs/how-to/install.md
index ad933c0..f1e50a3 100644
--- a/docs/how-to/install.md
+++ b/docs/how-to/install.md
@@ -27,10 +27,13 @@ docker run --name codegate -d -p 8989:8989 -p 9090:9090 -p 8990:8990 --mount typ
Parameter reference:
+- `--name codegate` - give the container a friendly name for easy reference
- `-d` - start in detached (background) mode
-- `-p 8989:8989` - bind the CodeGate API to port 8989 on your host
+- `-p 8989:8989` - bind the CodeGate API to port 8989 on your host (required)
- `-p 9090:9090` - bind the CodeGate web dashboard to port 9090 on your host
+ (recommended)
- `-p 8990:8990` - bind the CodeGate secure HTTP proxy to port 8990 on your host
+ (required for Copilot)
- `--mount ...` - mount a persistent Docker volume named `codegate_volume` to
the required path in the container
- `--restart unless-stopped` - restart CodeGate after a Docker or system
@@ -40,33 +43,34 @@ More example run commands to run the container with the right parameters for
your scenario are found below. To learn how to customize the CodeGate
application settings, see [Configure CodeGate](./configure.md)
-### Alternative run commands {#examples}
+:::warning
-Run with minimal functionality for use with **Continue**, **aider**, or
-**Cline**:
+If you omit the persistent volume mount, your
+[workspace configurations](../features/workspaces.mdx) and prompt history are
+lost when you stop or restart CodeGate.
-```bash
-docker run -d -p 8989:8989 -p 9090:9090 --restart unless-stopped ghcr.io/stacklok/codegate:latest
-```
+:::
+
+### Alternative run commands {#examples}
-**Mount a persistent volume** to the container (see
-[Persisting dashboard data](./dashboard.md#persisting-dashboard-data)):
+Run with minimal functionality for use with **Continue**, **aider**, or
+**Cline** (omits the HTTP proxy port needed by Copilot):
```bash
docker run --name codegate -d -p 8989:8989 -p 9090:9090 --mount type=volume,src=codegate_volume,dst=/app/codegate_volume --restart unless-stopped ghcr.io/stacklok/codegate:latest
```
-**Copilot support:** enable the HTTP proxy port and mount a persistent volume
-(see [Use CodeGate with GitHub Copilot](./use-with-copilot.mdx)):
+**Restrict ports:** Docker publishes ports to all interfaces on your host by
+default. This example publishes only on your `localhost` interface:
```bash
-docker run --name codegate -d -p 8989:8989 -p 9090:9090 -p 8990:8990 --mount type=volume,src=codegate_volume,dst=/app/codegate_volume --restart unless-stopped ghcr.io/stacklok/codegate:latest
+docker run --name codegate -d -p 127.0.0.1:8989:8989 -p 127.0.0.1:9090:9090 -p 127.0.0.1:8990:8990 --mount type=volume,src=codegate_volume,dst=/app/codegate_volume --restart unless-stopped ghcr.io/stacklok/codegate:latest
```
**Install a specific version:** starting with v0.1.4 you can optionally run a
specific version of CodeGate using sematic version tags:
-- Patch version: `ghcr.io/stacklok/codegate:v0.1.4` (exact)
+- Patch version: `ghcr.io/stacklok/codegate:v0.1.15` (exact)
- Minor version: `ghcr.io/stacklok/codegate:v0.1` (latest v0.1.x release)
- Major version: `ghcr.io/stacklok/codegate:v0` (latest v0.x.x release)
@@ -91,12 +95,20 @@ CodeGate listens on several network ports:
| 8989 | 8989 | CodeGate API |
| 8990 | 8990 | Secure HTTP proxy (GitHub Copilot integration) |
+Docker publishes ports to all network interfaces on your system by default. This
+can unintentionally expose your CodeGate installation to other systems on the
+same network. To restrict this, add `127.0.0.1` IP to the publish flags:
+
+- API: `-p 127.0.0.1:8989:8989`
+- HTTPS proxy: `-p 127.0.0.1:8990:8990`
+- Dashboard: `-p 127.0.0.1:9090:9090`
+
All of the commands in these docs assume the default ports. To use different
listening ports, modify the `-p` flag(s):
+- API: `-p YOUR_PORT:8989`
+- HTTPS proxy: `-p YOUR_PORT:8990`
- Dashboard: `-p YOUR_PORT:9090`
-- CodeGate API: `-p YOUR_PORT:8989`
-- Secure HTTP proxy: `-p YOUR_PORT:8990`
:::note
@@ -149,19 +161,16 @@ persistent volume.
## Next steps
-Now that CodeGate is running, proceed to configure your IDE integration.
-
-- [Use CodeGate with aider](./use-with-aider.mdx)
-- [Use CodeGate with Cline](./use-with-cline.mdx)
-- [Use CodeGate with Continue](./use-with-continue.mdx)
-- [Use CodeGate with GitHub Copilot](./use-with-copilot.mdx)
+Now that CodeGate is running, proceed to
+[configure your AI assistant/agent](../integrations/index.mdx).
## Remove CodeGate
-If you decide to stop using CodeGate, follow the removal steps for your IDE
-integration:
+If you decide to stop using CodeGate, follow the removal steps for your
+[integration](../integrations/index.mdx), then stop and remove the CodeGate
+container and volume:
-- [Remove CodeGate - aider](./use-with-aider.mdx#remove-codegate)
-- [Remove CodeGate - Cline](./use-with-cline.mdx#remove-codegate)
-- [Remove CodeGate - Continue](./use-with-continue.mdx#remove-codegate)
-- [Remove CodeGate - GitHub Copilot](./use-with-copilot.mdx#remove-codegate)
+```bash
+docker stop codegate && docker rm codegate
+docker volume rm codegate_volume
+```
diff --git a/docs/index.md b/docs/index.md
index b2b3abd..f570db5 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -37,10 +37,10 @@ CodeGate supports several development environments and AI providers.
AI coding assistants / IDEs:
-- **[GitHub Copilot](./how-to/use-with-copilot.mdx)** with Visual Studio Code
+- **[GitHub Copilot](./integrations/copilot.mdx)** with Visual Studio Code
(JetBrains coming soon!)
-- **[Continue](./how-to/use-with-continue.mdx)** with Visual Studio Code and
+- **[Continue](./integrations/continue.mdx)** with Visual Studio Code and
JetBrains IDEs
CodeGate supports the following AI model providers with Continue:
@@ -54,10 +54,9 @@ AI coding assistants / IDEs:
- Anthropic
- OpenAI
-- **[Aider](./how-to/use-with-aider.mdx)** with Ollama and OpenAI-compatible
- APIs
+- **[Aider](./integrations/aider.mdx)** with Ollama and OpenAI-compatible APIs
-- **[Cline](./how-to/use-with-cline.mdx)** with Visual Studio Code
+- **[Cline](./integrations/cline.mdx)** with Visual Studio Code
CodeGate supports Ollama, Anthropic, OpenAI-compatible APIs, and LM Studio
with Cline.
diff --git a/docs/integrations/_category_.yaml b/docs/integrations/_category_.yaml
new file mode 100644
index 0000000..4820194
--- /dev/null
+++ b/docs/integrations/_category_.yaml
@@ -0,0 +1,2 @@
+label: 'Integrations'
+position: 25
diff --git a/docs/how-to/use-with-aider.mdx b/docs/integrations/aider.mdx
similarity index 92%
rename from docs/how-to/use-with-aider.mdx
rename to docs/integrations/aider.mdx
index 9681c92..76c268b 100644
--- a/docs/how-to/use-with-aider.mdx
+++ b/docs/integrations/aider.mdx
@@ -1,8 +1,8 @@
---
title: Use CodeGate with aider
-description: Configure aider for CodeGate
-sidebar_label: Use with aider
-sidebar_position: 90
+description: Configure aider to use CodeGate
+sidebar_label: Aider
+sidebar_position: 10
---
import AiderProviders from '../partials/_aider-providers.mdx';
@@ -40,7 +40,7 @@ a response like "CodeGate version 0.1.13":
Learn more about CodeGate's features:
-- [Access the dashboard](./dashboard.md)
+- [Access the dashboard](../how-to/dashboard.md)
- [CodeGate features](../features/index.mdx)
## Remove CodeGate
diff --git a/docs/how-to/use-with-cline.mdx b/docs/integrations/cline.mdx
similarity index 84%
rename from docs/how-to/use-with-cline.mdx
rename to docs/integrations/cline.mdx
index d95344b..bef9b50 100644
--- a/docs/how-to/use-with-cline.mdx
+++ b/docs/integrations/cline.mdx
@@ -1,15 +1,15 @@
---
title: Use CodeGate with Cline
-description: Configure the Cline IDE extension
-sidebar_label: Use with Cline
-sidebar_position: 90
+description: Configure the Cline extension for VS Code
+sidebar_label: Cline
+sidebar_position: 20
---
import useBaseUrl from '@docusaurus/useBaseUrl';
import ThemedImage from '@theme/ThemedImage';
-[Cline](https://github.com/cline/cline) is an autonomous coding agent for Visual
-Studio Code that supports numerous API providers and models.
+[Cline](https://cline.bot/) is an autonomous coding agent for Visual Studio Code
+that supports numerous API providers and models.
CodeGate works with the following AI model providers through Cline:
@@ -50,8 +50,8 @@ To configure Cline to send requests through CodeGate:
@@ -71,8 +71,8 @@ sidebar and type `codegate version`. You should receive a response like
@@ -104,7 +104,7 @@ Here is an example of how to use the `requests` package:
Learn more about CodeGate's features and how to use them:
-- [Access the dashboard](./dashboard.md)
+- [Access the dashboard](../how-to/dashboard.md)
- [CodeGate features](../features/index.mdx)
## Remove CodeGate
diff --git a/docs/how-to/use-with-continue.mdx b/docs/integrations/continue.mdx
similarity index 96%
rename from docs/how-to/use-with-continue.mdx
rename to docs/integrations/continue.mdx
index 9c0f765..f15b882 100644
--- a/docs/how-to/use-with-continue.mdx
+++ b/docs/integrations/continue.mdx
@@ -1,8 +1,8 @@
---
title: Use CodeGate with Continue
description: Configure the Continue IDE plugin
-sidebar_label: Use with Continue
-sidebar_position: 100
+sidebar_label: Continue
+sidebar_position: 30
---
import Tabs from '@theme/Tabs';
@@ -110,7 +110,7 @@ Below are examples of complete Continue configurations for each supported
provider. Replace the values in ALL_CAPS. The configuration syntax is the same
for VS Code and JetBrains IDEs.
-
+
You need Ollama installed on your local system with the server running
@@ -119,7 +119,7 @@ You need Ollama installed on your local system with the server running
CodeGate connects to `http://host.docker.internal:11434` by default. If you
changed the default Ollama server port or to connect to a remote Ollama
instance, launch CodeGate with the `CODEGATE_OLLAMA_URL` environment variable
-set to the correct URL. See [Configure CodeGate](./configure.md).
+set to the correct URL. See [Configure CodeGate](../how-to/configure.md).
Replace `MODEL_NAME` with the names of model(s) you have installed locally using
`ollama pull`. See Continue's
@@ -288,7 +288,8 @@ To use this provider, download your desired model file in GGUF format from the
[Hugging Face library](https://huggingface.co/models?library=gguf&sort=trending).
Then copy it into the `/app/codegate_volume/models` directory in the CodeGate
container. To persist models between restarts, run CodeGate with a Docker volume
-as shown in the [recommended configuration](./install.md#recommended-settings).
+as shown in the
+[recommended configuration](../how-to/install.md#recommended-settings).
Example using huggingface-cli to download our recommended models for chat (at
least a 7B model is recommended for best results) and autocomplete (a 1.5B or 3B
@@ -340,7 +341,7 @@ running locally or access to a remote server to use this provider.
CodeGate connects to `http://localhost:8000` by default. If you changed the
default Ollama server port or to connect to a remote Ollama instance, launch
CodeGate with the `CODEGATE_VLLM_URL` environment variable set to the correct
-URL. See [Configure CodeGate](./configure.md).
+URL. See [Configure CodeGate](../how-to/configure.md).
A vLLM server hosts a single model. Continue automatically selects the available
model, so the `model` parameter is not required. See Continue's
@@ -385,8 +386,8 @@ Continue chat and type `codegate version`. You should receive a response like
@@ -418,7 +419,7 @@ Here is an example of how to use the `requests` package:
Learn more about CodeGate's features and how to use them:
-- [Access the dashboard](./dashboard.md)
+- [Access the dashboard](../how-to/dashboard.md)
- [CodeGate features](../features/index.mdx)
## Remove CodeGate
diff --git a/docs/how-to/use-with-copilot.mdx b/docs/integrations/copilot.mdx
similarity index 95%
rename from docs/how-to/use-with-copilot.mdx
rename to docs/integrations/copilot.mdx
index 637fa2f..d4dc294 100644
--- a/docs/how-to/use-with-copilot.mdx
+++ b/docs/integrations/copilot.mdx
@@ -1,8 +1,8 @@
---
title: Use CodeGate with GitHub Copilot
-description: Configure the Copilot IDE plugin
-sidebar_label: Use with GitHub Copilot
-sidebar_position: 110
+description: Configure your IDE to proxy Copilot traffic
+sidebar_label: GitHub Copilot
+sidebar_position: 50
---
import Tabs from '@theme/Tabs';
@@ -48,8 +48,8 @@ first with `docker stop codegate && docker rm codegate`.
is used to maintain a secure end-to-end connection with Copilot.
To prevent the certificate from changing on each restart, launch CodeGate
- with a persistent data volume. To do this, add a `--mount` parameter to your
- `docker run` command:
+ with a persistent data volume. To do this, make sure your `docker run`
+ command includes the `--mount` parameter:
`--mount type=volume,src=codegate_volume,dst=/app/codegate_volume`
@@ -242,8 +242,8 @@ Copilot chat and type `codegate version`. You should receive a response like
@@ -275,7 +275,7 @@ Here is an example of how to use the `requests` package:
Learn more about CodeGate's features and how to use them:
-- [Access the dashboard](./dashboard.md)
+- [Access the dashboard](../how-to/dashboard.md)
- [CodeGate features](../features/index.mdx)
## Remove CodeGate
diff --git a/docs/integrations/index.mdx b/docs/integrations/index.mdx
new file mode 100644
index 0000000..c50c16e
--- /dev/null
+++ b/docs/integrations/index.mdx
@@ -0,0 +1,8 @@
+---
+title: CodeGate integrations
+description: Integrate CodeGate with your favorite AI coding tools
+---
+
+import DocCardList from '@theme/DocCardList';
+
+
diff --git a/docs/partials/_aider-providers.mdx b/docs/partials/_aider-providers.mdx
index 9b2308d..16c3f1f 100644
--- a/docs/partials/_aider-providers.mdx
+++ b/docs/partials/_aider-providers.mdx
@@ -3,7 +3,7 @@ import TabItem from '@theme/TabItem';
import LocalModelRecommendation from './_local-model-recommendation.md';
-
+
You need an [OpenAI API](https://openai.com/api/) account to use this provider.
diff --git a/docs/partials/_cline-providers.mdx b/docs/partials/_cline-providers.mdx
index e1faf5f..a266102 100644
--- a/docs/partials/_cline-providers.mdx
+++ b/docs/partials/_cline-providers.mdx
@@ -5,7 +5,7 @@ import ThemedImage from '@theme/ThemedImage';
import LocalModelRecommendation from './_local-model-recommendation.md';
-
+
You need an [Anthropic API](https://www.anthropic.com/api) account to use this
@@ -21,8 +21,8 @@ To enable CodeGate, enable **Use custom base URL** and enter
@@ -42,8 +42,8 @@ To enable CodeGate, set the **Base URL** to `https://localhost:8989/openai`.
@@ -70,8 +70,8 @@ locally using `ollama pull`.
@@ -91,8 +91,8 @@ you'll use with CodeGate, open the **Load** tab on the right and increase the
@@ -114,8 +114,8 @@ for example `lm_studio/qwen2.5-coder-7b-instruct`.
diff --git a/docs/quickstart-continue.mdx b/docs/quickstart-continue.mdx
index 8c80137..525b82a 100644
--- a/docs/quickstart-continue.mdx
+++ b/docs/quickstart-continue.mdx
@@ -1,7 +1,7 @@
---
-title: Quickstart guide - Continue
-description: Get up and running with CodeGate and Continue
-sidebar_label: Quickstart - Continue
+title: Quickstart guide - Continue and Ollama
+description: Get up and running with CodeGate, Continue, and Ollama
+sidebar_label: Quickstart - Continue + Ollama
sidebar_position: 10
---
@@ -12,8 +12,8 @@ import ThemedImage from '@theme/ThemedImage';
This guide will get you up and running with CodeGate in just a few minutes using
Visual Studio Code, the open source Continue AI assistant, and a locally-hosted
-LLM. By the end, you'll learn how CodeGate helps protect your privacy and
-improve the security of your applications.
+LLM using Ollama. By the end, you'll learn how CodeGate helps protect your
+privacy and improve the security of your applications.
:::info
@@ -22,7 +22,7 @@ through Continue. In this tutorial, you'll use Ollama to run a code generation
model on your local machine.
If you have access to a provider like Anthropic or OpenAI, see
-[Use CodeGate with Continue](./how-to/use-with-continue.mdx) for complete
+[Use CodeGate with Continue](./integrations/continue.mdx) for complete
configuration details, then skip ahead to
[Explore CodeGate's features](#explore-codegates-features) in this tutorial.
@@ -55,7 +55,7 @@ Download and run the container using Docker:
```bash
docker pull ghcr.io/stacklok/codegate:latest
-docker run --name codegate -d -p 8989:8989 -p 9090:9090 --restart unless-stopped ghcr.io/stacklok/codegate:latest
+docker run --name codegate -d -p 8989:8989 -p 9090:9090 --mount type=volume,src=codegate_volume,dst=/app/codegate_volume --restart unless-stopped ghcr.io/stacklok/codegate:latest
```
This pulls the latest CodeGate image from the GitHub Container Registry and
@@ -261,7 +261,7 @@ Check out the rest of the docs to learn more about
[Features](./features/index.mdx).
If you have access to a hosted LLM provider like Anthropic or OpenAI, see
-[Configure Continue to use CodeGate](./how-to/use-with-continue.mdx#configure-continue-to-use-codegate)
+[Configure Continue to use CodeGate](./integrations/continue.mdx#configure-continue-to-use-codegate)
to learn how to use those instead of Ollama.
Finally, we want to hear about your experiences using CodeGate. Join the
diff --git a/static/img/continue-codegate-version-dark.webp b/static/img/continue-codegate-version-dark.webp
deleted file mode 100644
index a6ab3e7..0000000
Binary files a/static/img/continue-codegate-version-dark.webp and /dev/null differ
diff --git a/static/img/how-to/cline-codegate-version-dark.webp b/static/img/integrations/cline-codegate-version-dark.webp
similarity index 100%
rename from static/img/how-to/cline-codegate-version-dark.webp
rename to static/img/integrations/cline-codegate-version-dark.webp
diff --git a/static/img/how-to/cline-codegate-version-light.webp b/static/img/integrations/cline-codegate-version-light.webp
similarity index 100%
rename from static/img/how-to/cline-codegate-version-light.webp
rename to static/img/integrations/cline-codegate-version-light.webp
diff --git a/static/img/how-to/cline-provider-anthropic-dark.webp b/static/img/integrations/cline-provider-anthropic-dark.webp
similarity index 100%
rename from static/img/how-to/cline-provider-anthropic-dark.webp
rename to static/img/integrations/cline-provider-anthropic-dark.webp
diff --git a/static/img/how-to/cline-provider-anthropic-light.webp b/static/img/integrations/cline-provider-anthropic-light.webp
similarity index 100%
rename from static/img/how-to/cline-provider-anthropic-light.webp
rename to static/img/integrations/cline-provider-anthropic-light.webp
diff --git a/static/img/how-to/cline-provider-lmstudio-dark.webp b/static/img/integrations/cline-provider-lmstudio-dark.webp
similarity index 100%
rename from static/img/how-to/cline-provider-lmstudio-dark.webp
rename to static/img/integrations/cline-provider-lmstudio-dark.webp
diff --git a/static/img/how-to/cline-provider-lmstudio-light.webp b/static/img/integrations/cline-provider-lmstudio-light.webp
similarity index 100%
rename from static/img/how-to/cline-provider-lmstudio-light.webp
rename to static/img/integrations/cline-provider-lmstudio-light.webp
diff --git a/static/img/how-to/cline-provider-ollama-dark.webp b/static/img/integrations/cline-provider-ollama-dark.webp
similarity index 100%
rename from static/img/how-to/cline-provider-ollama-dark.webp
rename to static/img/integrations/cline-provider-ollama-dark.webp
diff --git a/static/img/how-to/cline-provider-ollama-light.webp b/static/img/integrations/cline-provider-ollama-light.webp
similarity index 100%
rename from static/img/how-to/cline-provider-ollama-light.webp
rename to static/img/integrations/cline-provider-ollama-light.webp
diff --git a/static/img/how-to/cline-provider-openai-dark.webp b/static/img/integrations/cline-provider-openai-dark.webp
similarity index 100%
rename from static/img/how-to/cline-provider-openai-dark.webp
rename to static/img/integrations/cline-provider-openai-dark.webp
diff --git a/static/img/how-to/cline-provider-openai-light.webp b/static/img/integrations/cline-provider-openai-light.webp
similarity index 100%
rename from static/img/how-to/cline-provider-openai-light.webp
rename to static/img/integrations/cline-provider-openai-light.webp
diff --git a/static/img/how-to/cline-settings-dark.webp b/static/img/integrations/cline-settings-dark.webp
similarity index 100%
rename from static/img/how-to/cline-settings-dark.webp
rename to static/img/integrations/cline-settings-dark.webp
diff --git a/static/img/how-to/cline-settings-light.webp b/static/img/integrations/cline-settings-light.webp
similarity index 100%
rename from static/img/how-to/cline-settings-light.webp
rename to static/img/integrations/cline-settings-light.webp
diff --git a/static/img/how-to/continue-codegate-version-dark.webp b/static/img/integrations/continue-codegate-version-dark.webp
similarity index 100%
rename from static/img/how-to/continue-codegate-version-dark.webp
rename to static/img/integrations/continue-codegate-version-dark.webp
diff --git a/static/img/how-to/continue-codegate-version-light.webp b/static/img/integrations/continue-codegate-version-light.webp
similarity index 100%
rename from static/img/how-to/continue-codegate-version-light.webp
rename to static/img/integrations/continue-codegate-version-light.webp
diff --git a/static/img/how-to/continue-extension-dark.webp b/static/img/integrations/continue-extension-dark.webp
similarity index 100%
rename from static/img/how-to/continue-extension-dark.webp
rename to static/img/integrations/continue-extension-dark.webp
diff --git a/static/img/how-to/continue-extension-light.webp b/static/img/integrations/continue-extension-light.webp
similarity index 100%
rename from static/img/how-to/continue-extension-light.webp
rename to static/img/integrations/continue-extension-light.webp
diff --git a/static/img/how-to/copilot-codegate-version-dark.webp b/static/img/integrations/copilot-codegate-version-dark.webp
similarity index 100%
rename from static/img/how-to/copilot-codegate-version-dark.webp
rename to static/img/integrations/copilot-codegate-version-dark.webp
diff --git a/static/img/how-to/copilot-codegate-version-light.webp b/static/img/integrations/copilot-codegate-version-light.webp
similarity index 100%
rename from static/img/how-to/copilot-codegate-version-light.webp
rename to static/img/integrations/copilot-codegate-version-light.webp
diff --git a/static/img/how-to/lmstudio-server-dark.webp b/static/img/integrations/lmstudio-server-dark.webp
similarity index 100%
rename from static/img/how-to/lmstudio-server-dark.webp
rename to static/img/integrations/lmstudio-server-dark.webp
diff --git a/static/img/how-to/lmstudio-server-light.webp b/static/img/integrations/lmstudio-server-light.webp
similarity index 100%
rename from static/img/how-to/lmstudio-server-light.webp
rename to static/img/integrations/lmstudio-server-light.webp
diff --git a/vercel.json b/vercel.json
new file mode 100644
index 0000000..3a0794d
--- /dev/null
+++ b/vercel.json
@@ -0,0 +1,9 @@
+{
+ "redirects": [
+ {
+ "source": "/how-to/(use-with-):path(aider|cline|continue|copilot)",
+ "destination": "/integrations/:path",
+ "permanent": true
+ }
+ ]
+}