Git commit message and PR description generator using AMD Lemonade via lemonade-python-sdk.
Diffron is a production-ready reference implementation of the lemonade-python-sdk β submitted to the AMD Lemonade Developer Challenge 2026.
- π€ Auto Commit Messages - Generates Conventional Commits format messages from your staged changes
- π PR Descriptions - Creates detailed PR titles and descriptions from branch diffs
- π Lemonade Integration - Works with your local Lemonade LLM server (no cloud required)
- πͺ Windows Ready - Fully compatible with GitHub Desktop 3.5.5+ hooks support
- β‘ Auto-Detection - Automatically finds your running Lemonade instance
- π― Model Flexible - Use any Lemonade-compatible model (default: qwen2.5-it-3b-FLM)
Lemonade is AMD's local LLM server for Ryzen AI PCs.
- Download the installer from AMD Lemonade Releases
- Run
Lemonade_Server_Installer.exe - Launch Lemonade Server from the desktop shortcut
- Download a model via the Lemonade UI (e.g.,
qwen2.5-it-3b-FLM)
π Documentation: AMD Ryzen AI - Lemonade Setup
Our Python SDK for AMD Lemonade API:
pip install lemonade-sdkπ Source: github.com/Tetramatrix/lemonade-python-sdk
Set Lemonade Server URL (Permanent):
- System Properties β Environment Variables
- New User Variable:
- Name:
LEMONADE_SERVER_URL - Value:
http://localhost:8020
- Name:
Or Temporary (current session):
set LEMONADE_SERVER_URL=http://localhost:8020pip install diffronpython -c "from diffron.git_hooks import install_hooks; install_hooks(global_install=True)"# Make a change
echo "test" > test.txt
git add test.txt
# Commit - hooks generate the message automatically!
git commit -m "anything"Expected output:
[master abc123] feat: add test.txt file
1 file changed, 1 insertion(+)
| Software | Version | Purpose |
|---|---|---|
| Python | 3.9+ | Runtime |
| Git | 2.0+ | Version control |
| GitHub Desktop | 3.5.5+ | Git GUI (Windows) |
| lemonade-sdk | Latest | AMD Lemonade API client |
| Lemonade | Latest | Local LLM server |
See docs/SETUP.md for detailed Windows-specific instructions.
# Install hooks globally
python -c "from diffron.git_hooks import install_hooks; install_hooks(global_install=True)"
# Generate PR description
python -c "from diffron import generate_pr_description; pr = generate_pr_description(); print(pr.format_output())"
# Check status
python -c "from diffron import is_lemonade_running, is_hooks_installed; print('Lemonade:', is_lemonade_running()); print('Hooks:', is_hooks_installed(check_global=True))"from diffron import DiffronClient
# Create client
client = DiffronClient()
# Generate commit message
msg = client.generate_commit_message()
print(msg) # "feat: add user authentication"
# Generate PR description
pr = client.generate_pr_description(branch="feature/my-feature")
print(f"TITLE: {pr.title}")
print(f"DESCRIPTION: {pr.description}")
# Install hooks
client.install_hooks(global_install=True)- Make changes to your files
- Open GitHub Desktop
- Enter any commit message (e.g., "auto")
- Click "Commit to main"
- Diffron replaces your message with AI-generated message
| Variable | Default | Description |
|---|---|---|
LEMONADE_SERVER_URL |
http://localhost:8020 |
Lemonade server URL |
DIFFRON_MODEL |
qwen2.5-it-3b-FLM |
Model name to use |
DIFFRON_MAX_DIFF_CHARS |
4000 |
Max diff characters |
# System-wide
setx DIFFRON_MODEL "qwen2.5-coder-7b"
# Current session
set DIFFRON_MODEL=qwen2.5-coder-7bfrom diffron import DiffronClient
# Use different model
client = DiffronClient(model="your-model-name")| Document | Description |
|---|---|
| SETUP.md | Complete installation guide for Windows |
| HOOKS.md | Git hooks architecture and internals |
| USAGE.md | Detailed usage examples |
| Project | Description |
|---|---|
| lemonade-python-sdk | π AMD Lemonade Challenge Submission - Python SDK for AMD Lemonade API |
| Diffron | Production-ready reference implementation using lemonade-python-sdk (this repo) |
| Aicono | AI Assistant (Desktop App) |
| TabNeuron | Browser Connector / Memory |
| Sorana | Advanced AI Interface |
| RyzenZPilot | Hardware Optimization |
Note: Lemonade is AMD's local LLM server for Ryzen AI PCs. Diffron uses lemonade-python-sdk to communicate with Lemonade's API.
π AMD Lemonade Developer Challenge 2026: This project demonstrates the capabilities of lemonade-python-sdk as a real-world application built on AMD Lemonade.
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 1. User makes changes and runs: git commit β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 2. Git hook executes prepare-commit-msg β
β - Location: C:/Users/Name/.diffron-hooks/ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 3. Hook reads staged diff: git diff --cached β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 4. Hook calls Lemonade API β
β - URL: http://localhost:8020/api/v1 β
β - Model: qwen2.5-it-3b-FLM β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 5. AI generates Conventional Commit message β
β - "feat: add user authentication module" β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 6. Git opens editor with generated message β
β - User can review/modify before saving β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
# Start Lemonade
lemonade serve qwen2.5-it-3b-FLM
# Verify URL
echo %LEMONADE_SERVER_URL%# Check GitHub Desktop version (must be 3.5.5+)
# Help β About
# Verify hooks path
git config --global core.hooksPath
# Reinstall hooks
python -c "from diffron.git_hooks import install_hooks; install_hooks(global_install=True)"# Download model
lemonade pull qwen2.5-it-3b-FLM
# Verify model name
set DIFFRON_MODEL=qwen2.5-it-3b-FLMSee docs/SETUP.md for complete troubleshooting guide.
MIT License - see LICENSE for details.
Contributions welcome! This is an open source project.
- Fork the repository
- Create a feature branch
- Make your changes
- Run tests
- Submit a pull request
git clone https://github.com/diffron/diffron.git
cd diffron
pip install -e ".[dev]"pytest tests/- Lemonade - Local LLM server by the Lemonade team
- GitHub Desktop - Git GUI with hooks support (3.5.5+)
- Conventional Commits - Commit message format specification
Version: 0.1.0 | Last updated: 2026-03-28