The commit message generator that actually understands your code.
CommitBee parses your code with tree-sitter, maps diff hunks to symbol spans, and gives the LLM structured semantic context.
~/project
Every other tool just pipes your diff to an LLM and hopes for the best.
What other tools see
- fn validate(&self) -> bool {
- self.token.len() > 0
- }
+ fn validate(&self) -> Result<(), AuthError> {
+ if self.token.is_empty() {
+ return Err(AuthError::EmptyToken);
+ }
+ self.check_expiry()?;
+ Ok(())
+ }"update validate function"
What CommitBee sees
Symbol: validate()
Modified signature: bool -> Result<(), AuthError>
Evidence: BREAKING_CHANGE
Public API return type changed
Evidence: BUG_FIX
Error handling added (was ignoring failures)
A 7-stage pipeline from diff to commit
Watch how CommitBee processes your code, step by step.
Step 1 of 7
Git Service
Tree-sitter
Splitter
Context Builder
LLM
Validator
Sanitizer
📂
Git Service
Reading staged changes...
3 files staged: auth.rs, config.rs, tests/auth_test.rs
Dive deeper
Explore the full documentation to master CommitBee.