Skip to main content

turath-research-skill

This skill provides specialized tools for searching and retrieving Islamic classical texts from the Turath.io API and local metadata database. Use this skill when researching Islamic literature, finding book references, extracting page content, or creating content based on classical Islamic texts.

Informations de source

Dépôt
herbras/bantu-ai-turathTool
Dernière activité de la source
18 janvier 2026 à 15:49
Langue détectée de SKILL.md
anglais
Étoiles
1
Forks
1

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Explorateur de fichiers
2 fichiers

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
turath-research-skill
description
This skill provides specialized tools for searching and retrieving Islamic classical texts from the Turath.io API and local metadata database. Use this skill when researching Islamic literature, finding book references, extracting page content, or creating content based on classical Islamic texts.
# Turath Research Skill This skill provides direct access to the Turath.io library (100,000+ Islamic classical texts) and local metadata database for deep research into Islamic literature. ## When to Use This skill should be used when: - Searching for specific Arabic terms across Islamic classical texts - Retrieving book details, author biographies, or page content - Finding category or author IDs for filtered searches - Creating content based on classical Islamic texts (articles, videos, social media) - Building research workflows for Islamic studies ## Available Functions Import from `src/turath_skill/scripts/turath_tools.py`: ```python from src.turath_skill.scripts.turath_tools import ( search_library, get_book_details, get_page_content, get_author_bio, get_filter_ids, list_all_categories, list_all_authors, ) ``` ### 1. `search_library(q, precision=0, cat=None, author=None, ...)` Search the library for Arabic queries. Returns results enriched with local metadata. **Parameters:** - `q` (str): Arabic search query - `precision` (int): 0=broad, 3=exact match - `cat` (str): Category IDs to filter (comma-separated) - `author` (str): Author IDs to filter (comma-separated) **Example:** ```python results = await search_library(q="صحيح البخاري", precision=3) # Returns: {"count": 99733, "data": [...]} ``` ### 2. `get_book_details(book_id, include=None)` Get detailed information about a specific book. **Parameters:** - `book_id` (int): The book ID - `include` (str): Optional - "meta,index" for table of contents **Example:** ```python details = await get_book_details(book_id=9942, include="index") # Returns book info with local enrichment (PDF links, author, category) ``` ### 3. `get_page_content(book_id, pg)` Get the text content of a specific page. **Parameters:** - `book_id` (int): The book ID - `pg` (int): Page number **Example:** ```python page = await get_page_content(book_id=9942, pg=5) # Returns: {"text": "...page content..."} ``` ### 4. `get_author_bio(author_id)` Get author biography and death dates. **Example:** ```python bio = await get_author_bio(author_id=123) ``` ### 5. `get_filter_ids(category_name=None, author_name=None)` Find category/author IDs by Arabic name for filtering searches. **Example:** ```python ids = await get_filter_ids(category_name="فقه") # Returns: {"category_ids": "11,17,14,16,18,15,12,19"} ``` ### 6. `list_all_categories()` List all 40 available categories. **Example:** ```python cats = await list_all_categories() # Returns: {"categories": [{"id": 11, "name": "أصول الفقه"}, ...]} ``` ### 7. `list_all_authors()` List all 3,102 available authors. **Example:** ```python authors = await list_all_authors() # Returns: {"authors": [{"id": 1, "name": "...", "death": 123}, ...]} ``` ## Workflow Examples ### Research Workflow ```python # 1. Find category ID ids = await get_filter_ids(category_name="الفقه الشافعي") # 2. Search with filter results = await search_library(q="الصلاة", cat=ids["category_ids"]) # 3. Get book details book = await get_book_details(book_id=results["data"][0]["book_id"]) # 4. Extract page content page = await get_page_content(book_id=book["id"], pg=1) ``` ### Content Creation Workflow ```python # Get book structure details = await get_book_details(book_id=9942, include="index") # Extract content for each topic for pg in range(1, 10): content = await get_page_content(book_id=9942, pg=pg) # Process content for articles/videos/social media ``` ## Local Database The skill uses a local SQLite database (`data/turath_metadata.db`) containing: - 40 categories - 3,102 authors - Book metadata with PDF links This enables offline metadata access and enriches API results with additional information. ## Test Scripts Available test scripts in `_test_/`: - `test_new_functional_tools.py` - Core function tests - `test_simple_islamic.py` - Islamic query workflow test - `test_agent_tools.py` - All available tools test - `content_generator_ushul.py` - Content generation from Ushul book
Voir sur GitHub