Ask Swimm
/ask Swimm
is an AI-powered coding assistant that provides instant, relevant responses to coding questions, tailored specifically to the unique context of your codebase. Available in the IDE, /ask
provides developers with answers to their questions, delivering insights like your most tenured developers would.
Benefits | Why use /ask Swimm ? |
---|---|
Your contextual answers | Swimm specializes in answering code questions specific to your codebase, including complex questions that previously required experienced developers to answer. |
Capture New Knowledge | Feedback loops in /ask Swimm encourage adding developer knowledge when regularly asked questions need more information. New knowledge immediately improves future answers. |
Avoid Context Decay | Out-of-date knowledge is worse than no knowledge. Swimm connects your knowledge directly to code, updating every time the underlying code changes. |
Understand Legacy Code | Static codebase analysis and patented algorithms enable coverage of undocumented code, enabling answers to questions from day 1. |
Enable /ask Swimm​
All repositories​
- Navigate to your workspace settings.
- Click on
AI & feature access
. - Toggle
Ask Swimm
to enable it for all existing and new repositories in your workspace.
Individual repositories​
Click on the ellipsis ...
for your repository and go to Integrations & Settings
.
Toggle Ask Swimm
to enable it for your repository.
Note: Admin privileges in your workspace are required to activate this feature.
Analyze your repository​
If this is your first time using /ask
, click Analyze to understand your repository's codebase and provide relevant answers to your questions.
This may take up to 30 minutes, depending on the size of your repository. You're free to explore other areas, but please keep your IDE active during this process.
Ask Questions​
For the best results, frame your questions clearly and concisely. /ask Swimm
understands your codebase and can help you answer a variety of questions related to coding practices, troubleshooting, and workflow optimization.
Example questions​
- What is X? - “What is a Playlist in this repository?”
- Where is X implemented? - “Where is the editor implemented?”
- How do we X in Y? - “How do we send analytics in the editor?”
- Where do we use X? - “Where do we use the Firestore API in the code?”
- How to add X? - “How should I add a new plugin to the system?”
Best practices​
Be specific​
✅ “Where is the Playlist feature implemented?”
❌ “Where is the Playlist feature implemented and how do we use it effectively?”
✅ “How do we trigger a run of the CLI?”
❌ “How do we trigger a run of the CLI and why would we do it in the backend?”
Keep it short​
✅ “How do we validate input from the user in forms?”
❌ “When the user provides information, it can be in many places, and we need to validate the information that the user provided. How do we do that?”
Ask follow-up questions​
When asking a question, you might get an incomplete answer or one that doesn’t answer your question. When this happens, ask follow-up questions on the same thread. /ask
is aware of the conversation and this will help improve present and future responses.
Capture knowledge​
It's recommended to create a Swimm document with the insights or solutions provided by /ask
after a chat session. This helps to create a valuable knowledge base in your repository for your colleagues.
Any AI model you use may not understand the many nuances of your codebase, such as reasoning for your development - business logic, architectural decisions and more.
The more human-level context you add to your docs, the more intuitive /ask
becomes. We analyze the code and use your existing documentation and knowledge sources as context so that we can provide better answers to your questions.
Help teammates with their questions​
If you have a response that you believe needs more information, you can share the question with your team.
They will be notified of your request via email and your question will appear below their existing Ask Swimm
chat sessions.
The person who is an expert in the area will be able to select the question and review Swimm's response (may vary from the original query).
Next, they can create a Swimm document to answer the question with the necessary information and commit it to the repository.
The requester should fetch the document from the updated branch, reanalyze the repository, and Ask Swimm
to review the updated response that takes into account the newly created Swimm document.
No training: Swimm does not train the AI model, but it does take into account any updated code and Swimm documentation that is added to the repository. It is built this way to allow Ask Swimm
to provide more accurate responses over time, based on the context only you and your colleagues would know.
Multiple chat sessions​
Leverage multiple chat sessions to keep conversations focused and contextually organized.
You can start a new chat session in the /ask
section of the Swimm IDE plugin. This feature helps in maintaining the flow and relevance of discussions within the plugin.
Rate Limits​
Usage​
Monthly rate limits are in effect for /ask
and depend on your specific plan.
Data Processing and Privacy​
Swimm vs. GitHub Copilot​
Swimm and GitHub Copilot are different types of AI Code Assistants, so they aren’t directly comparable. Here’s a comparison of the two.
Need help?​
Head over to the /ask Swimm FAQ section or security page to learn more about our Azure OpenAI Integration.
This document is automatically kept up to date using Swimm.