Thank you for your interest in contributing to Agent Blame!
# Clone the repository
git clone https://github.com/anthropics/agentblame.git
cd agentblame
# Install dependencies
bun install
# Build all packages
bun run buildagentblame/
├── packages/
│ ├── cli/ # CLI tool - all core functionality
│ │ └── src/
│ │ ├── lib/ # Core types, utilities, git operations
│ │ ├── capture.ts # Hook handler for Cursor/Claude Code
│ │ ├── post-merge.ts # GitHub Action entry point
│ │ ├── blame.ts # blame command
│ │ ├── sync.ts # sync command
│ │ └── index.ts # CLI entry point
│ └── chrome/ # Chrome extension for GitHub PR visualization
└── docs/ # Documentation
# Build all packages
bun run build
# Build specific package
bun run build:cli
bun run build:chrome
# Run CLI in development
bun run ab --help
bun run ab blame <file>
# Build Chrome extension
bun run build:chrome
# Load packages/chrome/dist/ as unpacked extension in Chrome- CLI: Run
bun run ab <command>from root - Chrome Extension: Load
packages/chrome/distas unpacked extension in Chrome - Hooks: Test by making AI edits in Cursor or Claude Code and checking
~/.agentblame/logs/
- Fork the repository
- Create a feature branch (
git checkout -b feature/my-feature) - Make your changes
- Run
bun run buildto ensure everything compiles - Commit your changes with a clear message
- Push to your fork and submit a Pull Request
- We use Biome for linting and formatting
- Run
bun run fmtto format code - Run
bun run lintto check for issues
For maintainers:
- Update version in relevant
packages/*/package.json - Commit and push to
main - Create a GitHub release with appropriate tags
Open an issue on GitHub if you have questions or run into problems.