Nighthawk Blame
A VS Code/Cursor extension that displays git blame information inline at the end of each line.
Features
- Inline Blame Annotations: See who last modified each line directly in your editor
- Hover Details: View full commit information including hash, author, date, and message
- Configurable Display: Customize date format, colors, message length, and more
- Performance Optimized: Caching and debouncing for smooth editing experience

Installation
From VSIX
- Download the
.vsix file from Releases
- In VS Code, open the Command Palette (
Ctrl+Shift+P / Cmd+Shift+P)
- Run
Extensions: Install from VSIX...
- Select the downloaded file
From Source
git clone https://gitlab.com/nighthawk-oss/nighthawk-blame.git
cd nighthawk-blame
npm install
npm run compile
Then press F5 in VS Code to launch the Extension Development Host.
Usage
Once installed, blame information automatically appears at the end of the current line when editing any file in a git repository.
Commands
| Command |
Description |
Nighthawk Blame: Toggle Blame Visibility |
Enable or disable inline blame annotations |
Nighthawk Blame: Copy Commit Hash |
Copy the commit hash for the current line |
Access commands via the Command Palette (Ctrl+Shift+P / Cmd+Shift+P).
Configuration
Configure the extension in your VS Code settings:
| Setting |
Type |
Default |
Description |
nighthawk-blame.enabled |
boolean |
true |
Enable/disable inline blame annotations |
nighthawk-blame.dateFormat |
string |
"relative" |
Date format: "relative", "absolute", or "short" |
nighthawk-blame.showCommitMessage |
boolean |
true |
Show commit message in inline annotation |
nighthawk-blame.maxMessageLength |
number |
50 |
Maximum commit message length before truncation |
nighthawk-blame.decorationColor |
string |
"#6b7280" |
Color of the inline blame text (hex) |
nighthawk-blame.delay |
number |
100 |
Delay in ms before showing blame after cursor movement |
Example Settings
{
"nighthawk-blame.enabled": true,
"nighthawk-blame.dateFormat": "relative",
"nighthawk-blame.showCommitMessage": true,
"nighthawk-blame.maxMessageLength": 40,
"nighthawk-blame.decorationColor": "#888888",
"nighthawk-blame.delay": 150
}
Requirements
- VS Code 1.85.0 or higher (Cursor)
- Git installed and available in PATH
- Files must be in a git repository
Development
# Install dependencies
npm install
# Compile TypeScript
npm run compile
# Watch for changes
npm run watch
# Lint code
npm run lint
Project Structure
nighthawk-blame/
├── src/
│ ├── extension.ts # Extension entry point
│ ├── config.ts # Configuration handling
│ ├── git/
│ │ └── blameProvider.ts # Git blame execution & parsing
│ ├── decorations/
│ │ └── decorationManager.ts # Inline text decorations
│ └── hover/
│ └── hoverProvider.ts # Hover information provider
├── package.json # Extension manifest
└── tsconfig.json # TypeScript configuration
Contributing
See CONTRIBUTING.md for guidelines on how to contribute to this project.
License
This project is licensed under the MIT License - see the LICENSE file for details.