Skip to content

Flesh out knowledgebase docs a bit #150

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 6 commits into from
Nov 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/about/features.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ changes.

![Irony in Committable Suggestions - CodeRabbit](/img/about/ironic-committable.png)

### 7. Learnings {#learnings}
### 7. [Learnings](/integrations/knowledge-base#learnings) {#learnings}

- **CodeRabbit** learns from user chat interactions to gain tribal knowledge on your
repositories and organization.
Expand Down
36 changes: 27 additions & 9 deletions docs/integrations/knowledge-base.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,54 @@
---
title: External Knowledge Base
description: Integrate CodeRabbit with an external knowledge base for issue tracking.
title: Knowledge Base
description: Learn about CodeRabbit's internal knowledge base and its integrations with external services.
sidebar_label: Knowledge Base
sidebar_position: 4
---

CodeRabbit integrates with external knowledge bases to provide a seamless experience for issue tracking. This will allow CodeRabbit to use the context from the linked issues while reviewing the code.
CodeRabbit utilizes an internal knowledge base that integrates with several external services to provide a seamless review and issue management experience.

## Jira {#jira}
## Issues

### CodeRabbit App
The issues knowledge base allows CodeRabbit to use the context from linked and related issues while reviewing the code.

### Jira {#jira}

#### CodeRabbit App

1. Navigate to [integrations][integrations] in the CodeRabbit app.
2. Toggle the Jira switch to enable the integration.

Upon enabling the Jira integration, CodeRabbit will redirect you to the Jira login page. Enter your Jira credentials to authenticate the integration.

### CodeRabbit Configuration
#### CodeRabbit Configuration

1. Add Jira's Project Keys to the `knowledge_base.jira.project_keys` field in your project's CodeRabbit configuration file at `.coderabbit.yaml`.

## Linear {#Linear}
### Linear {#Linear}

### CodeRabbit App
#### CodeRabbit App

1. Navigate to [integrations][integrations] in the CodeRabbit app.
2. Toggle the Linear switch to enable the integration.

Upon enabling the Linear integration, CodeRabbit will redirect you to the Linear login page. Enter your Linear credentials to authenticate the integration.

### CodeRabbit Configuration
#### CodeRabbit Configuration

1. Add Linear's Team Keys to the `knowledge_base.linear.team_keys` field in your project's CodeRabbit configuration file at `.coderabbit.yaml`.

[integrations]: https://app.coderabbit.ai/integrations

## Learnings {#learnings}

You can tell the bot to remember things about either specific lines in files, or generally about the entire repository, or even across repositories.

For example you can add a comment in a PR to chat directly with CodeRabbit. `@coderabbitai always remember to enforce camelCase`.

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

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.

By default, CodeRabbit will store its data in the `coderabbitai/data` branch unless you set `ON_PREM_KNOWLEDGE_BASE_BRANCH=<branch_name>` with a different value.