Glow is a lightweight, zero-dependency VS Code extension that generates clean Git commit messages from staged diffs and local workspace context.
Website • GitHub • Ko-Fi • Buy Me a Coffee
- Zero Bloat: Minimal, blazing-fast bundle (under 30KB) compiled using
esbuild. No webviews, database layers, or heavy client SDKs. - Five Core Providers: OpenAI, Anthropic, Google Gemini, OpenRouter, and Ollama.
- Dynamic Model Fetching: Pulls active, up-to-date lists of models straight from the provider APIs. If keys are missing or offline, enter any custom model identifier manually.
- Smart Diff Compactor: Automatically filters out lockfiles, generated assets, binary files, and minified code, enforcing a safe 30k character limit to protect against rate limits and token window errors.
- Context Aware: Optionally scans files like
CHANGELOG.mdor user-defined documentation in your workspace root, feeding the recent history to the LLM to align your commit message style and version numbers automatically. - Customizable Prompt: Define your own system prompt and temperature parameters to enforce Conventional Commits or custom naming conventions.
- Secure Key Storage: Uses VS Code's native
SecretStorageto keep your API keys safe. - Status Bar Integration: Shows the currently active model. Click to swap models or providers instantly.
- Interruptible: Full cancel support for aborting in-progress LLM calls.
- Configure API Keys:
- Open the Command Palette (
Ctrl+Shift+PorCmd+Shift+P). - Run
Glow: Configure API Keysand input your keys for the providers you want to use.
- Open the Command Palette (
- Select Model:
- Click the Glow status bar item in the bottom-left of VS Code, or run
Glow: Select Model / Providerfrom the Command Palette. - Select your provider and model (either from the fetched list or enter a custom one).
- Click the Glow status bar item in the bottom-left of VS Code, or run
- Generate Message:
- Stage your git changes in the SCM panel.
- Click the sparkle icon (
Glow: Generate Commit Message) in the SCM title bar, or run it via the Command Palette. - The message will be typed directly into your commit box!
| Command Title | Command ID | Location / Trigger |
|---|---|---|
| Glow: Generate Commit Message | glow.generateCommitMessage |
SCM Title Bar (Sparkle Icon) / Command Palette |
| Glow: Cancel Generation | glow.cancelGeneration |
SCM Title Bar (Close Icon) / Command Palette |
| Glow: Select Model / Provider | glow.selectModel |
Status Bar Item / Command Palette |
| Glow: Configure API Keys | glow.configureKeys |
Command Palette / Settings Links |
You can customize the behavior of Glow in VS Code Settings (glow.*):
glow.provider: Selected LLM provider (openai,anthropic,google,openrouter, orollama).glow.model: Model identifier (e.g.gpt-4o-mini,claude-3-5-sonnet-latest,gemini-2.5-flash).glow.systemPrompt: Custom instructions for structuring commit messages.glow.includeWorkspaceDocs: Toggle readingCHANGELOG.mdor other files for additional generation context.glow.contextFiles: List of filenames in the workspace root to scan for context (defaults to["CHANGELOG.md"]).glow.temperature: Set the LLM temperature (0.0 to 2.0).glow.openaiBaseUrl: Custom endpoint URL for OpenAI.glow.anthropicBaseUrl: Custom endpoint URL for Anthropic.glow.googleBaseUrl: Custom endpoint URL for Google Gemini.glow.openrouterBaseUrl: Custom endpoint URL for OpenRouter.glow.ollamaBaseUrl: Custom endpoint URL for Ollama.
- Support Email: support@pinkpixel.dev
- Discord: Connect with us on Discord
@sizzlebopz - Funding: Support our work on Buy Me a Coffee or Ko-Fi
This project is licensed under the Apache 2.0 License. See the LICENSE file for details.
Dream it, Pixel it ✨
Made with 💖 by Pink Pixel