Fetch and display Bible verses in multiple translations with optional language filtering. Use when users explicitly request to quote a specific verse (e.g., "quote John 3:16" or "quote Matthew 5:3")...
Retrieve and display Bible verses from BibleHub and eBible corpus with optional language filtering. The skill executes a Python script that fetches verse data in standardized format and presents it in clear, formatted output. Supports 1000+ translations across hundreds of languages.
This skill fetches verses from two sources:
.data/commentaryThe eBible data is already processed and stored in the .data git repository. If a verse is not available in your sparse checkout, add the chapter using:
cd .data && git sparse-checkout add commentary/{BOOK}/{chapter:03d}
# Example: cd .data && git sparse-checkout add commentary/NAM/001
Use this skill when:
Do NOT use this skill when:
Extract the Bible reference from the user's request. The reference format follows STANDARDIZATION.md:
scripts/book_codes.py for complete mappingIf user specifies languages, determine ISO-639-3 codes:
engspafragrchebSee STANDARDIZATION.md for complete ISO-639-3 language code list.
Use the script from the project root:
# All languages (1000+ translations)
python3 src/tools/fetch_verse.py "MAT-005-003"
# English only
python3 src/tools/fetch_verse.py "JHN 3:16" --lang eng
# Multiple languages
python3 src/tools/fetch_verse.py "GEN 1:1" --lang eng,spa,fra
# Original languages only
python3 src/tools/fetch_verse.py "ROM 8:28" -l grc,heb
Supported formats:
MAT-005-003 (recommended, per STANDARDIZATION.md)"JHN 3:16", GEN.1.1 (also accepted)Language filtering:
--lang / -l: Filter by comma-separated ISO-639-3 codes--all: Override any filtering (fetch everything)Present the output from the fetch script. The script returns JSON with translation codes as keys and verse text as values.
Format the output clearly:
{lang}-{version} or {lang}-{version}-{year}User: "quote John 3:16"
Action: Convert "John" to USFM code "JHN", then execute:
python3 src/tools/fetch_verse.py "JHN 3:16"
Expected behavior: Display John 3:16 in 1000+ translations from all languages
User: "quote Matthew 5:3 in English"
Action: Convert "Matthew" to USFM code "MAT", use eng language code:
python3 src/tools/fetch_verse.py "MAT 5:3" --lang eng
Expected behavior: Display Matthew 5:3 in English translations only (~50 versions)
User: "quote Genesis 1:1 in English, Spanish, and French"
Action: Convert "Genesis" to USFM code "GEN", use multiple language codes:
python3 src/tools/fetch_verse.py "GEN 1:1" --lang eng,spa,fra
Expected behavior: Display Genesis 1:1 in English, Spanish, and French translations
User: "quote Romans 8:28 in the original languages"
Action: Convert "Romans" to USFM code "ROM", use Greek and Hebrew codes:
python3 src/tools/fetch_verse.py "ROM 8:28" -l grc,heb
Expected behavior: Display Romans 8:28 in Greek (and Hebrew if available for NT context)
User: "quote Matthew 5:3"
Action: Convert to standardized format with zero-padding:
python3 src/tools/fetch_verse.py "MAT-005-003"
Expected behavior: Display Matthew 5:3 in all available translations (using STANDARDIZATION.md format)
.data/commentary).data/commentary/{BOOK}/{chapter:03d}/{verse:03d}/{BOOK}-{chapter:03d}-{verse:03d}-translations-ebible.yamlcd .data && git sparse-checkout add commentary/{BOOK}/{chapter:03d}
--lang to filter by ISO-639-3 codes (e.g., --lang eng,spa,fra)If the script returns an error, check:
fetch_verse.py - Main verse fetcher with language filteringbook_codes.py - USFM 3.0 book code mappings and reference parserbiblehub_fetcher.py - BibleHub integrationSTANDARDIZATION.md - Verse reference format, language codes, and citation standardsSCHEMA.md - Data structure and citation requirementsATTRIBUTION.md - Source credits and citation codes