Observed since 21 Oct, 11:03 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
AI-powered validation tool that ensures code changes match Jira story requirements
Automatically validate that code changes match Jira story requirements using AI. Prevent scope creep and ensure developers work on what they committed to.
AI Intent Tracker validates every commit against Jira stories:
git clone https://github.com/yourusername/intent_aware_git.git
cd intent_aware_git
pip install -r requirements.txt
pip install -e .
# Copy template
cp .env.example .env
# Edit .env with your credentials:
# JIRA_URL=https://yourcompany.atlassian.net
# JIRA_EMAIL=you@company.com
# JIRA_API_TOKEN=<your_token>
# OPENAI_API_KEY=<your_key>
Get Jira API token: https://id.atlassian.com/manage-profile/security/api-tokens
# Add .github/workflows/pr-summary.yml to your repo
# Add secrets to GitHub repo settings
# Done! Validation happens automatically on PRs
cd /path/to/your/project
intent install-hooks
# Make changes
git add .
# Commit with Jira ID
git commit -m "PROJ-123: Add OAuth authentication"
# With hook: validates immediately
# Without hook: validates on PR (GitHub Action)
Developer → commit → push → PR → GitHub Action validates → Manager reviews
↑ Zero setup, can't bypass
What Happens:
PROJ-123: Add featureDeveloper → commit → pre-commit hook validates → instant feedback
What Happens:
intent install-hooksgraph LR
A[Commit with PROJ-123] --> B[Extract Jira ID]
B --> C[Fetch Jira Story]
C --> D[Get Git Diff]
D --> E[AI Validation]
E --> F{Score >= 3?}
F -->|Yes| G[Pass]
F -->|No| H[Block]
# 1. Work on Jira story
# 2. Make changes
git add .
# 3. Commit normally with Jira ID
git commit -m "PROJ-456: Add OAuth2 login button"
# 4. Push
git push origin feature-branch
# 5. Create PR
# → GitHub Action validates automatically
# → Posts alignment report
# One-time setup
intent install-hooks
# Then commit as normal
git commit -m "PROJ-456: Add OAuth2 login button"
# → Hook validates immediately (5 seconds)
# → Get instant feedback
# → GitHub Action still validates on PR
Pull Request #234: "Add OAuth and fix styling"
Status Checks:
[PASS] intent-validation - Passed
Comment from AI Intent Tracker:
---
## Jira Story Validation Report
### PROJ-123: Add OAuth2 authentication
**Alignment Score:** 9/10 (Confidence: 95%)
**Status:** aligned
**Key Functionality Present:** Yes
**What Aligns:**
- OAuth2 flow implementation present
- Token validation logic added
- Proper error handling included
**Suggestions:**
- Consider adding unit tests for token refresh
### Summary
- Average Score: 9.0/10
- Stories Validated: 1
- Critical Issues: 0
Manager Actions:
[INFO] Validating commit against Jira story...
[SUCCESS] Found Jira ID: PROJ-123
[INFO] Fetching Jira story PROJ-123...
[SUCCESS] Story: Add OAuth2 authentication
Type: Story | Status: In Progress
[ANALYSIS] Intent Alignment:
Score: 9/10 | Confidence: 95% | Status: aligned
[OK] Key functionality present
[OK] GOOD alignment
[MATCHES] What aligns:
• OAuth2 flow implementation present
• Token validation logic added
• Proper error handling included
[SUCCESS] Commit validation passed!
[CRITICAL] MISMATCH - Code does NOT implement stated intent!
Score: 2/10 [FAIL]
[WARNING] Discrepancies:
• Story says "fix styling" but OAuth system was refactored
• Database schema changes not mentioned in story
• Auth configuration modified - out of scope
[SUGGESTIONS]
• Split into multiple stories
• Current changes should be PROJ-790, PROJ-791
• Only style changes belong in PROJ-789
[BLOCKED] Commit blocked due to alignment < 3/10
Story: PROJ-789: Fix login button styling
What Developer Changed:
Result: Score 2/10 → Blocked → Developer splits into proper stories
git commit -m "PROJ-100: Add user profile page"
git commit -m "PROJ-101: Add profile photo upload"
git commit -m "PROJ-102: Add profile edit form"
Result: Each story validated separately, granular feedback per story
# Production hotfix
SKIP_INTENT_VALIDATION=1 git commit -m "HOTFIX: Fix crash"
ai-intent-tracker/
│
├── cli/ # Python CLI code
│ ├── commands.py # CLI commands
│ ├── jira_client.py # Jira API integration
│ ├── ai_validator.py # AI validation logic
│ ├── install_hooks.py # Git hook installer
│ └── utils.py # Helpers
│
├── hooks/
│ └── pre-commit # Git pre-commit hook
│
├── .github/
│ └── workflows/
│ └── pr-summary.yml # PR validation action
│
├── tests/ # Unit tests
├── README.md
├── requirements.txt
└── setup.py
# Required for Jira integration
JIRA_URL=https://yourcompany.atlassian.net
JIRA_EMAIL=you@company.com
JIRA_API_TOKEN=your_token_here
# Required for AI validation
OPENAI_API_KEY=your_openai_key
# Optional: Control validation behavior
ENABLE_AI_VALIDATION=true
SKIP_INTENT_VALIDATION=false
Add these to your repository settings:
JIRA_URLJIRA_EMAILJIRA_API_TOKENOPENAI_API_KEYRepository Settings → Branches → main →
☑️ Require status checks to pass
☑️ intent-validation
Now PRs can't be merged without passing validation!
curl -u your.email@company.com:token https://yourcompany.atlassian.net/rest/api/3/myselfPROJECT-123 (uppercase)ENABLE_AI_VALIDATION=false# Check hook is installed
ls -la .git/hooks/pre-commit
# Check it's executable
chmod +x .git/hooks/pre-commit
# Test manually
.git/hooks/pre-commit
All these work:
"PROJ-123: Add feature"
"[PROJ-123] Add feature"
"PROJ-123 Add feature"
"Add feature (PROJ-123)"
Most commits work normally without any special markers. Only use these for edge cases:
# Normal commit (no skip marker needed)
git commit -m "PROJ-123: Add OAuth feature"
# → Validates automatically
# Skip validation (only when needed)
git commit -m "PROJ-123: Emergency hotfix [skip-validation]"
git commit -m "Update README [no-validation]"
# Alternative: environment variable
SKIP_INTENT_VALIDATION=1 git commit -m "Config tweak"
When to skip (rare cases):
You DON'T need skip markers for:
Edit .github/workflows/pr-summary.yml:
# Block if score < 5 (default is 3)
if critical_issues or score < 5:
sys.exit(1)
Contributions are welcome! Please feel free to submit a Pull Request.
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ for better code reviews
**3. Commit with Jira ID**
```bash
# Commit message MUST include Jira ID
git commit -m "PROJ-123: Add OAuth2 authentication"
# The pre-commit hook will:
# → Extract PROJ-123 from message
# → Fetch story details from Jira
# → Analyze code changes vs story intent with AI
# → Block commit if misaligned (score < 3/10)
# → Warn if low alignment (score < 5/10)
4. Push and create PR
git push origin feature-branch
# GitHub Action automatically runs on PR
# → Validates all commits against their Jira stories
# → Posts validation report as PR comment
# → Shows alignment scores for manager review
1. Review PR with validation report
2. Approve or request changes
[INFO] Validating commit against Jira story...
[SUCCESS] Found Jira ID: PROJ-123
[INFO] Fetching Jira story PROJ-123...
[SUCCESS] Story: Add OAuth2 authentication
Type: Story | Status: In Progress
[INFO] Running AI validation against Jira story...
[ANALYSIS] Intent Alignment:
Score: 9/10 | Confidence: 95% | Status: aligned
[OK] Key functionality present
[OK] GOOD alignment - Changes match intent well
[MATCHES] What aligns:
• OAuth2 flow implementation present
• Token validation logic added
• Proper error handling included
[SUCCESS] Commit validation passed!
## Jira Story Validation Report
### PROJ-123: Add OAuth2 authentication
**Alignment Score:** 9/10 (Confidence: 95%)
**Status:** aligned
**Key Functionality Present:** Yes
**What Aligns:**
- OAuth2 flow implementation present
- Token validation logic added
- Proper error handling included
**Suggestions:**
- Consider adding unit tests for token refresh
- Document OAuth2 configuration in README
---
### Summary
- **Average Score:** 9.0/10
- **Stories Validated:** 1
- **Critical Issues:** 0
- **Low Alignment:** 0
- **Good Alignment:** 1
# Skip all validation
SKIP_INTENT_VALIDATION=1 git commit -m "PROJ-123: Hotfix"
# Skip only AI validation
ENABLE_AI_VALIDATION=false git commit -m "PROJ-123: Minor change"
Add these to your repository secrets for PR validation:
JIRA_URLJIRA_EMAILJIRA_API_TOKENOPENAI_API_KEYgit commit -m "PROJ-123: description"ENABLE_AI_VALIDATION=falseContributions are welcome! Please feel free to submit a Pull Request.
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 1.0.0 | 11 Jan 2026 | 6 |
This describes our collected data; it is not a security assessment.
Shared repository data · GitHub
Observed since 21 Oct, 11:03 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:e8e003b959a4eba5e46a9a3a4f089d8eaf42fa417a078cb04b2552d200220bac