|
| 1 | +--- |
| 2 | +title: Issue Chat |
| 3 | +sidebar_label: Issue Chat |
| 4 | +description: Learn how to use CodeRabbit's chat capabilities within issues |
| 5 | +sidebar_position: 10 |
| 6 | +--- |
| 7 | + |
| 8 | +```mdx-code-block |
| 9 | +import ProPlanNotice from '@site/src/components/ProPlanNotice.mdx'; |
| 10 | +
|
| 11 | +<ProPlanNotice /> |
| 12 | +``` |
| 13 | + |
| 14 | +# Issue Chat |
| 15 | + |
| 16 | +CodeRabbit provides an intelligent chat interface directly within GitHub and GitLab issues. This allows developers to have natural conversations about code, get answers to questions, create AI powered code searches, plan features, and gain deeper insights into their codebase - all without leaving their issue tracking workflow. |
| 17 | + |
| 18 | +## Getting Started |
| 19 | + |
| 20 | +To start a conversation with CodeRabbit in any issue: |
| 21 | + |
| 22 | +1. Simply mention `@coderabbitai` (or your custom bot name if configured) in an issue comment |
| 23 | +2. Ask your question or make your request in natural language |
| 24 | +3. CodeRabbit will analyze the context and respond accordingly |
| 25 | + |
| 26 | +:::note |
| 27 | +Organizations can configure a custom bot name by creating their own bot user. The bot will respond to mentions of that custom name instead of `@coderabbitai`. |
| 28 | +::: |
| 29 | + |
| 30 | +## Core Capabilities |
| 31 | + |
| 32 | +### Code Analysis |
| 33 | + |
| 34 | +When chatting in issues, CodeRabbit has access to your repository and powerful tools that allow it to analyze and understand your codebase like a real developer. This includes: |
| 35 | + |
| 36 | +- Full access to search and analyze the repository code |
| 37 | +- Advanced static analysis capabilities |
| 38 | +- Command line tools for code search and manipulation (e.g. grep, awk, sed, etc.) |
| 39 | +- Complete git history and metadata information |
| 40 | +- Access to past CodeRabbit learnings and insights |
| 41 | + |
| 42 | +This allows CodeRabbit to: |
| 43 | + |
| 44 | +- Search through code to find relevant examples |
| 45 | +- Analyze code patterns and relationships |
| 46 | +- Generate statistics and metrics |
| 47 | +- Provide context-aware answers about the codebase |
| 48 | +- Create AI powered code searches |
| 49 | +- Use tribal knowledge from learnings to enhance responses |
| 50 | + |
| 51 | +### Feature Planning Support |
| 52 | + |
| 53 | +Issue chat is particularly valuable during feature planning phases: |
| 54 | + |
| 55 | +- **Code Impact Analysis**: Ask about which parts of the codebase might be affected by proposed changes |
| 56 | +- **Pattern Discovery**: Find similar implementations or related code |
| 57 | +- **Dependency Mapping**: Understand relationships between components |
| 58 | +- **Technical Feasibility**: Get insights into potential challenges or approaches |
| 59 | + |
| 60 | +Example conversation: |
| 61 | + |
| 62 | +```text |
| 63 | +User: @coderabbitai We're planning to add JWT authentication. Which parts of our codebase currently handle auth? |
| 64 | +
|
| 65 | +CodeRabbit: I'll analyze the codebase for authentication-related code... |
| 66 | +
|
| 67 | +[Analysis results with relevant files, patterns, and suggestions] |
| 68 | +``` |
| 69 | + |
| 70 | +## Additional Use Cases |
| 71 | + |
| 72 | +### Open Source Support |
| 73 | + |
| 74 | +CodeRabbit can help maintain open source projects by: |
| 75 | + |
| 76 | +- Answering common support questions |
| 77 | +- Providing code examples |
| 78 | +- Explaining error messages |
| 79 | +- Suggesting debugging steps |
| 80 | + |
| 81 | +Example: |
| 82 | + |
| 83 | +```text |
| 84 | +User: @coderabbitai I'm getting "TypeError: Cannot read property 'config' of undefined" |
| 85 | +
|
| 86 | +CodeRabbit: Let me help troubleshoot that error... |
| 87 | +
|
| 88 | +[Detailed explanation and solution steps] |
| 89 | +``` |
| 90 | + |
| 91 | +### Documentation Assistance |
| 92 | + |
| 93 | +Use issue chat to: |
| 94 | + |
| 95 | +- Generate API documentation |
| 96 | +- Create usage examples |
| 97 | +- Update README files |
| 98 | +- Write tutorials |
| 99 | + |
| 100 | +Example: |
| 101 | + |
| 102 | +```text |
| 103 | +User: @coderabbitai Can you help document the new authentication middleware? |
| 104 | +
|
| 105 | +CodeRabbit: I'll analyze the middleware and create documentation... |
| 106 | +
|
| 107 | +[Generated documentation with examples] |
| 108 | +``` |
| 109 | + |
| 110 | +### Marketing Content Generation |
| 111 | + |
| 112 | +CodeRabbit can assist with creating: |
| 113 | + |
| 114 | +- Release announcements |
| 115 | +- Blog post drafts |
| 116 | +- Social media content |
| 117 | +- Community updates |
| 118 | + |
| 119 | +Example: |
| 120 | + |
| 121 | +```text |
| 122 | +User: @coderabbitai Help me write a Reddit post about our new GraphQL features |
| 123 | +
|
| 124 | +CodeRabbit: I'll create a draft post highlighting the key features... |
| 125 | +
|
| 126 | +[Generated Reddit post with technical details and benefits] |
| 127 | +``` |
| 128 | + |
| 129 | +## Best Practices |
| 130 | + |
| 131 | +1. **Be Specific** |
| 132 | + - Provide context in your questions |
| 133 | + - Mention specific files or features when relevant |
| 134 | + - Clarify your goals or requirements |
| 135 | + |
| 136 | +2. **Iterative Refinement** |
| 137 | + - Start with broad questions |
| 138 | + - Follow up for more details |
| 139 | + - Ask for clarification when needed |
| 140 | + |
| 141 | +3. **Collaborative Planning** |
| 142 | + - Include stakeholders in the conversation |
| 143 | + - Use issue chat to document decisions |
| 144 | + - Reference related issues or PRs |
| 145 | + |
| 146 | +## Related Resources |
| 147 | + |
| 148 | +- [Agentic Chat](./agent_chat.md) |
| 149 | +- [Issue Creation](./issue-creation.md) |
| 150 | +- [Commands](./commands.md) |
| 151 | + |
| 152 | +Need help? Join our community on [Discord](https://discord.gg/coderabbit) or contact our support team. |
0 commit comments