Vincent
Vincent is a copilot for data scientists that can perform a wide range of actions within Jupyter Notebooks, including generating, running, editing, and deleting cells.
Vincent autonomously breaks down higher-level tasks into steps, reasons based on outputs (including visual ones), and proceeds until the task is complete.

Features
Multi-step Actions
Every time Vincent acts, you can see the steps breakdown by clicking the “Steps” toggle in the chat.
Every step has an associated plan (sort of like a thought) and action related to a specific cell. Clicking on the action will scroll to the related cell and vice-versa. You can also revert the notebook to a specific step - This will undo all the notebook edits after that point.

Chat-only Mode with @ask
In addition to Vincent's full notebook interactions, you can use a Chat-only Mode by prefixing your message with @ask
. When you start your message with @ask
, Vincent treats your input as a chat query rather than a command that triggers changes in your notebook.
What this means:
- No Notebook Edits: Vincent will not add, edit, or delete any notebook cells when using
@ask
. The conversation stays entirely in the chat window.
- Parallel Conversations: This mode lets you ask quick questions or request clarifications without interfering with the ongoing notebook operations.
- Safe Experimentation: If you’re exploring ideas or need guidance,
@ask
lets you interact with Vincent without the risk of unintended code modifications.
How to use it:
Simply begin your message with @ask
followed by your question or request.
Edit Plans
You can edit Vincent’s plans to get it to do what you want. This is often easier and more intuitive than following up in the chat. To do that, just click on the edit icon for a specific plan and save. When you edit a step, it will automatically revert to that step and run from there.

Automatic Error Correction
When Vincent runs a cell and gets an error, it will fix it automatically. When the user runs a cell manually and gets an error - clicking the cell will prompt a Fix Error
button in the chat.

Prompt Enhancements
The prompt enhancement system reviews the current notebook context, previous messages, and your prompt to generate a detailed plan and suggestions before execution. This helps you understand what Vincent “sees” and refine your prompt for the best results

Skills
Skills are predefined prompts that extend Vincent’s functionality. You can invoke them with an "@", for example: @web-search
. When invoked, Vincent applies the skill’s instructions to your request.

The list of skills is open source and available on GitHub. You can contribute your own skills to the repository or add them directly in the Preferences tab!
Each skill has a mention, description, content, and a status that can be either active or inactive:
- Active Skills: Automatically considered by Vincent; no mention required, though mentioning improves accuracy.
- Inactive Skills: Ignored unless specifically mentioned.
Custom Instructions
Custom Instructions allow you to set persistent guidelines that apply to all notebooks. For example:
- Use Plotly instead of Matplotlib for plotting.
- Follow PEP 8 coding guidelines.
These instructions become part of the context, so you don’t need to repeat them every time.
Control and Permissions
Vincent has three modes of interaction with notebook cells:
No Edits: Vincent can only add new cells and rerun existing ones.
Selected Cells (Default): Vincent can edit cells (indicated in the context bar) that are either:
- Currently visible in your viewport , or
- Manually selected by pressing the
+
button and clicking cells (indicated in the context bar) (use shift
+ up
/down
or cmd
+click for multiple selections)
Full Notebook: Send your message with cmd
+ enter
to give Vincent permission to edit any cell in the notebook.
Vincent can always add new cells and rerun existing ones regardless of the mode.

Self-Hosting Options
Vincent supports using your own API keys with:
- OpenAI API
- Azure OpenAI
- Google Cloud (Gemini)
- AWS Bedrock (Claude)
- OpenRouter
Configure provider and credentials via cmd
+shift
+p
and typing Vincent: Configure Credentials
.
Requirements
- Visual Studio Code version 1.90.1 or higher
- An active internet connection
- A Jupyter notebook for interactive Python execution
For any questions, feedback, or support, please reach out to us at support@bespo.ai.
Enjoy!