git-investigate ยท diff
git:20260305.3ae8b92 to git:20260321.4a2afd0
1 added, 1 removed. Audit A to A.
---
name: git-investigate
description: "Git history investigation. Use when: tracking code changes, finding where bugs were introduced, root cause analysis. Not for: code exploration (use code-explore), issue analysis (use issue-analyze). Output: history trace + root cause report."
- allowed-tools: Bash(git:*), Read, Grep, Glob
+ allowed-tools: Bash(git:*), Read, Grep, Glob, Agent
---
# Git Investigate Skill
## Trigger
- Keywords: code history, git blame, track changes, who wrote this, when was it changed, root cause, code archaeology
## When NOT to Use
- Code review (use codex-review)
- Feature development (use feature-dev)
- Just want to read code (use Read directly)
## Command
```bash
/git-investigate src/service/xxx.ts:123 # Specific line
/git-investigate processToken # Function name
/git-investigate "error message" # Keyword
```
## Workflow
```
Locate code -> git blame -> find commit -> trace history -> analyze changes -> report
```
## Investigation Framework
| Question | Method |
| ------------------ | ----------------------------- |
| Who wrote it? | `git blame` |
| When was it changed?| `git log --follow` |
| Why was it changed?| commit message + PR |
| What was missed? | `git diff` compare original vs problematic version |
## Common Patterns
| Pattern | Symptom | Root Cause |
| ------------------ | -------------------- | ----------------------------- |
| Type removed | Enum value deleted | Assumed no longer needed |
| Condition simplified| If conditions reduced| Missed during refactoring |
| Rename | Partially unchanged | Incomplete search-and-replace |
| Boundary ignored | Only handles main flow| Edge cases not considered |
## Output
```markdown
## Git Investigation Report
- **Target**: <file/feature>
- **Timeline**: <commit range>
- **Root cause**: <analysis>
- **Introduced by**: <commit hash + author>
```
## Verification
- Report includes: investigation target, author info, timeline, original vs problematic code
- Root cause has clear analysis
- Fix recommendation is specific and actionable
## References
- `references/commands.md` - Git command reference + report template
## Examples
```
Input: Who changed this line of code?
Action: git blame -> find commit -> trace PR -> output report
```
```
Input: When was this bug introduced?
Action: git log -p -S -> locate introduction point -> analyze cause -> output report
```