Skip to content
| Marketplace
Sign in
Visual Studio Code>SCM Providers>575 Haiku CommitNew to Visual Studio Code? Get it now.
575 Haiku Commit

575 Haiku Commit

AIMatey

|
11 installs
| (0) | Free
Generate 5-7-5 haiku commit messages using AI
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info
Haiku Commit logo

575 Haiku Commit

Generate 5‑7‑5 haiku commit messages using AI, right from VS Code's Source Control panel. Turn everyday commits into tiny poems your team can actually skim.

VS Marketplace · Installs · Rating · Build · Release

575 Haiku Commit


🎓 Blueprint Repo — Learn to Build VS Code Extensions

Blueprint Guide

This repo is more than an extension — it's a learning resource. Clone it, reshape it, ship your own.

What You Get Guide
Real extension architecture (commands, SCM, settings, providers) Guide 00 — Template this repo
Retry patterns, prompt engineering, validation All Guides
Release checklist & CI hygiene Release Prep

Generating from SCM

60‑second quick start (users)

  1. Install from Marketplace: AIMatey.575-haiku-commit
  2. Run "Haiku Commit: Set Haiku Provider" and "Set Haiku API Key" once
  3. Stage changes → press Ctrl+Shift+H / Cmd+Shift+H to generate your first haiku

For contributors & docs readers Start here: Development · Release Prep · Learning Guides

Table of Contents

For users

  • Features
  • Installation
  • Setup
  • Usage
  • Requirements
  • Extension Settings
  • Tips
  • Troubleshooting
  • Privacy & Security
  • FAQ
  • Gallery

For contributors & maintainers

  • Developer docs
  • Release Prep
  • Learning Guides
  • Roadmap
  • Contributing & Policies
  • Maintainers
  • Support
  • Versioning
  • License
  • Credits

Pull request whispers
Five–seven–five logs the change
Tests nod in silence

Features

575 Haiku Commit turns staged diffs into short, 5‑7‑5 commit messages that are easy to scan in history while staying fun and memorable for the team.

  • 🎋 Generate commit messages in traditional haiku format (5-7-5 syllables)
  • 🤖 Multiple providers: Anthropic, OpenAI GPT‑5, and Google Gemini 2.5
  • ⚡ Quick keyboard shortcut: Ctrl+Shift+H (or Cmd+Shift+H on Mac)
  • 📝 Automatically fills in the Source Control commit message box
  • 🎨 Works with any git repository

Why Haiku Commits?

If you already stage small, meaningful diffs, 575 Haiku Commit gives you a crisp 5‑7‑5 commit that teams remember and can skim fast, without bikeshedding over phrasing.

Installation

From Marketplace

  • Install from the VS Code Marketplace: 575 Haiku Commit
  • Or via CLI: code --install-extension AIMatey.575-haiku-commit
  • Building/running from source? See docs/DEVELOPMENT.md.

Setup

  1. Choose a provider in Settings (haikuCommit.provider): anthropic, openai, or gemini. If unset, the extension will prompt you on first use.
  2. Get an API key for the selected provider:
    • Anthropic → Anthropic Console
    • OpenAI → OpenAI API Keys
    • Gemini → Google AI Studio
  3. Open VS Code Settings (Ctrl+, or Cmd+,) and search for “Haiku Commit”.
  4. Either:
    • Enter the key in the matching setting (haikuCommit.anthropicApiKey, haikuCommit.openaiApiKey, or haikuCommit.geminiApiKey), or
    • Run “Haiku Commit: Set Haiku API Key” and paste your key when prompted.

The extension will prompt you on first use if a provider or key is missing, so you can also just install, run, and follow the prompts.

Requirements

  • VS Code 1.80.0 or higher
  • A git repository
  • An API key for the provider you select in haikuCommit.provider
    • Anthropic when provider=anthropic
    • OpenAI when provider=openai
    • Gemini when provider=gemini

Troubleshooting

  • No staged changes → Stage files first (for example git add -p) and rerun.
  • Missing API key or provider → Run:
    • “Haiku Commit: Set Haiku Provider”
    • “Haiku Commit: Set Haiku API Key”
  • Rate limits or network errors → The extension retries transient errors with a brief backoff. If failures persist, wait a moment and try again.
  • Non‑git folders → Commands only work inside a git repository.
  • Need logs? → View → Output → select “Haiku Commit”, or run “Haiku Commit: Show Logs”.

Setting the API key via command or status bar

  • Command Palette: run "Haiku Commit: Set Haiku API Key" to paste your key at any time.
  • Status Bar: when no key is configured, a key icon appears ("Set Haiku API Key"). Click it to set your key.

Switching providers from the Command Palette

  • Run "Haiku Commit: Set Haiku Provider" and choose Anthropic, OpenAI (GPT‑5), or Gemini 2.5. The key prompt and defaults will adjust automatically.

Setting/Overriding the Model

  • Run "Haiku Commit: Set Haiku Model" to set a shared model override.
  • You can now pick from a curated dropdown of recommended models per provider, or choose "Custom…" to enter any valid model id.
  • If you keep the shared override empty, provider‑specific defaults apply automatically.

Model precedence: the shared override (haikuCommit.model) takes priority for all providers. If it’s empty, the provider‑specific model setting is used (haikuCommit.openaiModel or haikuCommit.geminiModel). If that is also empty, the built‑in default for the selected provider is used.

When switching providers via "Haiku Commit: Set Haiku Provider", the extension offers to auto‑set the recommended model for that provider. If no shared override is set, it sets the provider’s recommended default. If a shared override is present, you can update it, keep it, or clear it to use the provider’s recommended model.

Configured Models — curated, selectable in the Model picker

Anthropic

  • Claude Sonnet 4.5 (latest): claude-sonnet-4-5-20250929
  • Claude Sonnet 4 (preferred): claude-sonnet-4-20250514
  • Claude Haiku 3.5 (fastest): claude-3-5-haiku-20241022 (alias: claude-3-5-haiku-latest)

OpenAI

  • GPT‑5 2025‑08‑07: gpt-5-2025-08-07
  • GPT‑5 Mini 2025‑08‑07 (preferred): gpt-5-mini-2025-08-07
  • GPT‑5 Nano 2025‑08‑07 (cheapest): gpt-5-nano-2025-08-07

Gemini

  • Gemini 2.5 Pro: gemini-2.5-pro
  • Gemini 2.5 Flash Preview (preferred — 1M token context): gemini-2.5-flash-preview-09-2025
  • Gemini 2.5 Flash‑Lite Preview (cheapest): gemini-2.5-flash-lite-preview-09-2025

Notes

  • The dropdown shows these curated models per provider and can be updated in src/providers/models.catalog.ts.
  • You can still enter any valid model id via the “Custom…” option.

Or the extension will prompt you for your API key on first use.

Usage

All methods assume you already have a provider + API key set up (see Setup) and that your changes are staged in git.

Method 1: Keyboard Shortcut

  1. Stage your changes in git
  2. Press Ctrl+Shift+H (Windows/Linux) or Cmd+Shift+H (Mac)
  3. Watch as a beautiful haiku appears in your commit message box! 🌸

Method 2: Command Palette

  1. Stage your changes in git
  2. Open Command Palette (Ctrl+Shift+P or Cmd+Shift+P)
  3. Type "Generate Haiku Commit Message"
  4. Press Enter

Method 3: Source Control Button

  1. Stage your changes in git
  2. Look for the haiku button in the Source Control panel title bar
  3. Click it to generate a haiku

Multiple Options (Samples)

If you set haikuCommit.samples to a value greater than 1 (max 5), the extension will generate multiple haikus and present a selection list. Pick your favorite and it will be placed in the SCM input box.

Extension Settings

Core settings include provider, model, strict 5‑7‑5 enforcement, number of samples, and token / retry limits. See VS Code Settings → “Haiku Commit” for the full list.

See all settings
  • haikuCommit.anthropicApiKey: Your Anthropic API key for generating haiku commit messages.
  • haikuCommit.strict575 (default: true): Enforce exact 5‑7‑5 syllable counts. If the model output doesn’t match, the extension retries with corrective guidance up to two times.
  • haikuCommit.maxDiffLength (default: 4000): Maximum characters of the staged diff sent to the AI. Large diffs are truncated with a marker.
  • haikuCommit.samples (default: 1, min 1, max 5): Number of haikus to generate and choose from.
  • haikuCommit.model (default: empty): Shared model override (advanced). Precedence: if this value is non‑empty it is used for all providers; otherwise we use the provider‑specific model setting; otherwise the built‑in default (Anthropic: claude-sonnet-4-20250514; OpenAI: gpt-5-mini-2025-08-07; Gemini: gemini-2.5-flash-preview-09-2025).
  • haikuCommit.provider (default: empty): AI provider. Leave empty to be prompted to choose.
  • haikuCommit.openaiApiKey: Your OpenAI API key. Required when provider is openai.
  • haikuCommit.openaiModel (default: gpt-5-mini): OpenAI model (e.g., gpt-5, gpt-5-mini, or gpt-5-nano). Used only when haikuCommit.model is empty. See model guide: https://platform.openai.com/docs/guides/latest-model
  • haikuCommit.geminiApiKey: Your Gemini (Google AI Studio) API key. Required when provider is gemini.
  • haikuCommit.geminiModel (default: gemini-2.5-flash): Gemini model (gemini-2.5-pro, gemini-2.5-flash, gemini-2.5-flash-lite). Used only when haikuCommit.model is empty. Docs: https://ai.google.dev/gemini-api/docs/models#gemini-2.5-pro https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-lite
  • haikuCommit.maxTokens (default: 200): Token cap for the response payload; lower values shorten outputs, higher values allow more verbose haikus.
  • haikuCommit.maxRetries (default: 2): Number of corrective retries when enforcing strict 5‑7‑5 syllable counts.
  • haikuCommit.debug (default: false): Enable verbose logging in the “Haiku Commit” output channel for troubleshooting.

When strict mode cannot be satisfied after retries, you can choose to use the best attempt, try again, or cancel.

Project Structure
575-haiku-commit/
├── src/
│   └── extension.ts      # Main extension code
├── package.json           # Extension manifest
├── tsconfig.json          # TypeScript configuration
└── README.md              # This file

Developer docs

Maintainer-only depth lives in /docs so the README can stay user-first:

  • Development, manual validation, diagnostics: docs/DEVELOPMENT.md
  • Release checklist (packaging/publishing/tagging): docs/RELEASE_PREP.md
  • Learning guides hub (repo-as-blueprint): docs/GUIDES.md — start with docs/guides/00-template-this-repo.md

Release Prep

  • Run pnpm run release:verify.
  • Follow the checklist in docs/RELEASE_PREP.md.

Learning Guides

We keep longer-form guides focused on how to build VS Code extensions like this repo in docs/GUIDES.md.

If you’re here to learn/replicate (not just use the haiku generator), start with:

  • Guide 00 — Template this repo into your VS Code extension: docs/guides/00-template-this-repo.md

Tips

  • Stage meaningful chunks of changes for better haikus
  • The AI analyzes your actual code changes to create relevant haikus
  • Large diffs are automatically truncated to stay within API limits
  • If the haiku doesn't fit, you can always generate a new one!

Privacy & Security

This extension is designed to keep everything local except the minimum required to generate a haiku.

  • Your API key for the selected provider is stored in VS Code Settings on your machine (one of haikuCommit.anthropicApiKey, haikuCommit.openaiApiKey, or haikuCommit.geminiApiKey). It is not committed to this repository.
  • The extension sends your staged git diff to the selected provider’s API for haiku generation. No other data is transmitted.
    • Anthropic: https://api.anthropic.com/v1/messages
    • OpenAI: https://api.openai.com/v1/responses
    • Gemini: Google AI Studio endpoints (models ...:generateContent)
  • No telemetry is collected; the extension does not track usage or send analytics.
  • You can remove the key at any time via Settings or by running “Haiku Commit: Set Haiku API Key” and clearing the value.

Contributing & Policies

  • See CONTRIBUTING.md for setup, style, and PR guidelines.
  • Read our CODE_OF_CONDUCT.md.
  • Security issues? See SECURITY.md.

Contributions are welcome! Please feel free to submit a Pull Request.

Maintainers

  • Adam Grenier (@akgrenier)

Support

  • Bugs/feature requests → GitHub Issues
  • Questions/ideas → GitHub Discussions (or Issues if Discussions aren’t enabled yet)
  • Security issues → see SECURITY.md

Versioning

We follow SemVer. See CHANGELOG.md and GitHub Releases for notes. Breaking changes are called out in release notes.

Roadmap

  • [x] Launch v1 with Anthropic, OpenAI, and Gemini providers
  • [ ] Hybrid message mode toggle (switch between haiku then conventional subject and vice versa)
  • [ ] Rich UI entry points (SCM toolbar button + activity bar view)
  • [ ] Tone/style customization ("zen", "summary", "cheeky")
  • [ ] VSCode "creating an extension" in-repo how-to guide series
  • [ ] Partial diff QuickPick for staged-file selection
  • [ ] Enhanced error UX with actionable guidance
  • [ ] Multi-window status bar consistency
  • [ ] PR Haiku Bot that comments poetic summaries on pull requests
  • [ ] VS Code walkthrough onboarding to showcase haiku generation end-to-end

FAQ

  • Q: Do I need an API key?
    • A: Yes. Set the key for the provider you choose (Anthropic, OpenAI, or Gemini). The extension prompts you if it’s missing.
  • Q: Does my code get uploaded?
    • A: Only the staged git diff is sent to the selected provider to generate the haiku.
  • Q: Can I switch providers?
    • A: Yes. Run “Haiku Commit: Set Haiku Provider” and choose Anthropic, OpenAI, or Gemini.
  • Q: Why is a haiku sometimes labelled “approximate”?
    • A: With strict575=false, we still show whether the output truly matches 5‑7‑5; otherwise it’s labelled approximate.

Gallery

Open Gallery — screenshots and GIFs

Generating from SCM Stage changes, press Cmd+Shift+H, haiku appears.

Commit message filled with haiku SCM commit message box filled with a 5‑7‑5 haiku.

Haiku generated notification Success notification after generation.

Status bar Set API Key Status bar key prompt when an API key is missing.

Set Provider QuickPick Choose Anthropic, OpenAI (GPT‑5), or Gemini 2.5.

Set Model input Optional shared model override input.

Enter API Key flow Secure input box for provider API key.

Back to top

License

MIT

Credits

Built with ❤️ using:

  • VS Code Extension API

Enjoy your poetic commits! 🌸📝✨

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft