AI-powered CLI tool that transforms raw guitar tablature into beautifully formatted markdown with metadata using Google Gemini. Converts plain text tabs into structured markdown with YAML front matter, chord positioning, and proper formatting.
This skill helps you work with Rechord, a Python CLI tool that enhances guitar tablature files using Google's Gemini AI. It converts raw tab text into well-formatted markdown with YAML front matter containing song metadata.
Rechord processes guitar tablature files and enhances them with:
1. **Create and activate virtual environment:**
```bash
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
```
2. **Install dependencies:**
```bash
pip install -r requirements.txt
pip install -e .
# For development with testing and linting:
pip install -e ".[dev]"
```
3. **Set up API key:**
- Ensure `GEMINI_API_KEY` is set in environment or `.env` file
- Required before running any enhancement commands
```bash
rechord enhance input_tab.txt
rechord enhance input_tab.txt --validate
```
```bash
rechord batch "*.txt" --output-dir ./enhanced
rechord batch "**/*.txt" --output-dir ./enhanced --recursive
rechord batch "{*.txt,*.tab}" --output-dir ./enhanced --validate
```
```bash
rechord validate enhanced_tab.md
```
```bash
pytest tests/ -v
pytest tests/test_formatter.py -v
pytest tests/test_formatter.py::TestTabFormatter::test_parse_tab_with_front_matter -v
pytest tests/ --cov=rechord
```
```bash
ruff check .
ruff check . --fix
ruff format .
```
**GeminiClient** (`rechord/gemini_client.py`):
**TabFormatter** (`rechord/formatter.py`):
**CLI** (`rechord/cli.py`):
1. YAML front matter with metadata (NO title header after front matter)
2. Tab notation in ```tab blocks for 6-line tablature ONLY
3. Lyrics with chords positioned above each line
4. No chord definitions section
5. No verse/chorus/section markers
6. Capo info in YAML only (e.g., `capo: 8`)
7. Chord progressions as plain text, not in tab blocks
Uses Google's `google-genai` library (v1.31.0+):
The prompt includes enhanced French support:
1. Always run tests after changes: `pytest tests/ -v`
2. Ensure code passes linting: `ruff check .`
3. Format with ruff before committing: `ruff format .`
4. Validate output format follows the rules above
5. Test with both English and French content if modifying enhancement logic
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/rechord-guitar-tab-enhancer/raw