diff --git a/docs/integrations/knowledge-base.md b/docs/integrations/knowledge-base.md
index a749bbe..3579a81 100644
--- a/docs/integrations/knowledge-base.md
+++ b/docs/integrations/knowledge-base.md
@@ -47,10 +47,24 @@ For example you can add a comment in a PR to chat directly with CodeRabbit. `@co
 
 Or you can comment directly on some lines of code in the PR. `@coderabbitai do not complain about lack of error handling here, it is handled higher up the execution stack.`
 
-## On-premises
+## Self-hosted knowledge base {#self-hosted}
 
 For self-hosted / on-premises deployments, you can enable the knowledge base features by setting `ON_PREM_KNOWLEDGE_BASE=true` in the environment variables for your self-hosted docker image.
 
-You must also be running ChromaDB. Use image `chromadb/chroma:0.5.20`. In your CodeRabbit docker image environment variables, set `CHROMADB_URL` to point to the hostname where ChromaDB can be reached. For persistance of your ChromaDB data, mount `/chroma/chroma` in the container to a volume mount. For more information on ChromaDB docker deployment, including how to set up authentication, refer to the [official documentation](https://docs.trychroma.com/deployment/docker). CodeRabbit will use CHROMA_CLIENT_AUTH_CREDENTIALS if it is set.
+You must also be running ChromaDB. Use image `chromadb/chroma:0.5.20`. In your CodeRabbit docker image environment variables, set `CHROMADB_URL` to point to the hostname where ChromaDB can be reached. For persistance of your ChromaDB data, mount `/chroma/chroma` in the container to a volume mount. For more information on ChromaDB docker deployment, including how to set up authentication, refer to the [official documentation](https://docs.trychroma.com/deployment/docker). CodeRabbit will use `CHROMA_CLIENT_AUTH_CREDENTIALS` if it is set.
 
-By default, CodeRabbit will store its data in the `coderabbitai/data` branch unless you set `ON_PREM_KNOWLEDGE_BASE_BRANCH=<branch_name>` with a value.
+By default, CodeRabbit will store its data in the `coderabbitai/data` branch, unless you set a value for `ON_PREM_KNOWLEDGE_BASE_BRANCH=<branch_name>`.
+
+### Walkthrough
+
+- Set up a ChromaDB service on your cloud provider of choice. There is extensive documentation for generic Docker deploys, as well as cloud native deployments, in the [official Chroma documentation](https://docs.trychroma.com/deployment)
+- Configure your environment variables for your CodeRabbit self-hosted deploy to be able to access Chroma.
+- Restart your CodeRabbit service so it has access to the new environment variable settings.
+- Create a new PR in your SCM platform.
+- Add a comment to the PR to tell CodeRabbit to remember something.
+
+`@coderabbitai always make sure to enforce camelCase`
+
+- CodeRabbit should respond that it has added a learning.
+- Check out the branch called `coderabbit/data` in the repository (or whatever branch name you have set for `ON_PREM_KNOWLEDGE_BASE_BRANCH`). It should contain a file called learnings.json with an entry containing what you told it to remember.
+- Future PRs should utilize the contents of this learnings file. Congratulations! You have configured the CodeRabbit Self-hosted knowledge base.
diff --git a/docs/self-hosted/github.md b/docs/self-hosted/github.md
index 45aa184..aad24ef 100644
--- a/docs/self-hosted/github.md
+++ b/docs/self-hosted/github.md
@@ -123,6 +123,7 @@ CHROMADB_URL=[http://chromadb:8000]
 - For `GITHUB_APP_PEM_FILE`, flatten the PEM file by replacing newlines with `\n`.
 - For `GITHUB_HOSTNAME`, use GitHub Enterprise server's hostname, for example, “github.acme-inc.com”
 - You can generate `CODERABBIT_API_KEY` from CodeRabbit UI -> Organizations Settings -> API Keys.
+- Refer to the [Self-hosted knowledge base](/integrations/knowledge-base#self-hosted) section for details on the `ON_PREM_KNOWLEDGE_BASE`.
 
 :::