Find related Wikipedia sources for a topic or category, group them into named book sets, and create source stubs. Light — uses summaries only, no full article fetches.
Discovers related Wikipedia sources and organises them into thematic book sets. Light — summaries only, no full article fetches.
Ask the user (or read from context):
topicId, topicCategoryId, or superCategoryIdRead all sources files for the scope to avoid re-searching known sources.
For each topic in scope:
python3 .claude/skills/generate-questions/scripts/search_wiki.py "{topicName}" --results 8
python3 .claude/skills/generate-questions/scripts/search_wiki.py "{topicName} history" --results 5
python3 .claude/skills/generate-questions/scripts/search_wiki.py "{topicName} records" --results 5
If exit 3 (network down): abort and report.
Collect all results (title, summary, url). Deduplicate by URL. Skip sources already in the sources files.
Read summaries only. Group sources into thematic clusters where each cluster:
For each cluster, create/update entry in assets/questions/book_sets/{superCategoryId}.json:
{
"id": "bs_{slug}",
"name": "{Descriptive cluster name}",
"summary": "{2–3 sentences describing what story this set tells}",
"superCategoryId": "{superCategoryId}",
"topicCategoryIds": ["{topicCategoryId}"],
"topicIds": ["{topicId}"],
"sourceIds": ["{src_id}", ...],
"createdAt": "{ISO date}"
}
For each new source (not yet in any sources file), write a stub entry to assets/questions/sources/{topicId}.json:
{
"id": "src_{slug}",
"title": "{Wikipedia article title}",
"url": "{Wikipedia mobile URL}",
"summary": "{summary from search result}",
"categories": [],
"topicIds": ["{topicId}"],
"articleText": null,
"facts": [],
"questionIds": []
}
N book sets created/updated
M new source stubs added to sources files
Topics covered: {list}
Accepts source stubs from stdin (output of search_wiki.py) to allow chaining:
python3 .claude/skills/generate-questions/scripts/search_wiki.py "tennis" | # pipe to relearn or research-rabbit