This implements hooks for Gemini CLI to provide the following hooks.
gemini cli is terminal based chat interface. This means it is incapable of rendering rich output like HTML tables, Mermaid charts etc. This extension provides a way to render rich output in VSCode.
session-start: Called when a new session is started. This launches VSCode.before-model: Called before a model is invoked. This clears the per session file.after-model: Called after a model is invoked. This appends the model response to the per session file.- With each volley with the model, the above two hooks are called. If there is any rich output in the model response, it is rendered in VSCode.. Thus the VSCode acts as a sidekick to the Gemini CLI like Robin to Batman
session-end: Called when a new session ends. This delets the per session file.
- Node.js 23.6+
- npm
- Gemini CLI
- VSCode
codecommand in your path- (optional) Mermaid extension for Mermaid charts
git clone https://github.com/sandipchitale/sidekick.git
cd sidekick
npm install
gemini extension link .gemini extensions config sidekick
Configuring settings for "sidekick"...
✔ Setting "Keep Session File" (GEMINI_SIDEKICK_KEEP_SESSION_FILE) is already set. Overwrite? … yes
? Keep Session File
Whether to keep the session file after the session ends. › false (default) | true