historical-research
Domain skill for historical and chronological extraction.
Entity Types
| Type |
Description |
era |
Historical era, age, or epoch |
era_transition |
Transition between eras |
timeline |
Chronological sequence of events |
calendar |
Calendar or timekeeping system |
holiday |
Holiday or special date |
season |
Named season or time of year |
alliance |
Historical or political alliance |
empire |
Empire or major state entity |
kingdom |
Kingdom or sovereign territory |
nation |
Nation or country |
Extraction Rules
- Eras: Named periods (Age of Magic, Dark Times) — extract with timeframe
- Transitions: What caused era changes (wars, discoveries, cataclysms)
- Timelines: Chronological sequence of mentioned events
- Calendars: Timekeeping systems, named months, cycles
- States: Empires, kingdoms, nations — with their boundaries and rulers
Output Format
Write to entities/society.json (society-team file):
{
"eras": [
{
"id": 1,
"world_id": 1,
"name": "Age of Magic",
"description": "Ancient era when sorcerers ruled the skies",
"start_date": "1026-01-01T00:00:00+00:00",
"end_date": "1526-01-01T00:00:00+00:00",
"parent_era_id": null,
"child_era_ids": [],
"major_events": ["Great War"],
"cultural_notes": "Magic was central to society",
"technological_level": "Arcane",
"is_ongoing": false,
"color_code": "#5b3bff",
"created_at": "2026-02-14T10:00:00+00:00",
"updated_at": "2026-02-14T10:00:00+00:00",
"version": 1
}
],
"era_transitions": [
{
"id": 2,
"world_id": 1,
"name": "The Great War Transition",
"description": "Magic waned after the Great War, ending the Age of Magic",
"from_era_id": 1,
"to_era_id": 3,
"transition_date": "1526-01-01T00:00:00+00:00",
"transition_type": "catastrophic",
"trigger_events": ["Great War"],
"key_figures": [5],
"social_impact": "Collapse of mage houses",
"economic_impact": null,
"political_impact": null,
"magical_impact": "Mana scarcity",
"stories_and_legends": ["The Last Spell"],
"artifacts": [],
"created_at": "2026-02-14T10:00:00+00:00",
"updated_at": "2026-02-14T10:00:00+00:00",
"version": 1
}
],
"next_id": 3
}
Key Considerations
- Relative time: Not all systems use absolute dates (cycles, ages)
- Multiple perspectives: History may differ by culture (victors write history)
- Cross-references: If needed, track relationships separately in drafts, but final JSON must match
LoreData.from_dict.
1---2name: historical-research3description: Extract historical entities from narrative text. Use when analyzing eras, timelines, calendars, holidays, seasons, alliances, empires, kingdoms, and era transitions.4---5# historical-research
6
7Domain skill for historical and chronological extraction.
8
9## Entity Types
10
11| Type | Description |
12|------|-------------|
13| `era` | Historical era, age, or epoch |
14| `era_transition` | Transition between eras |
15| `timeline` | Chronological sequence of events |
16| `calendar` | Calendar or timekeeping system |
17| `holiday` | Holiday or special date |
18| `season` | Named season or time of year |
19| `alliance` | Historical or political alliance |
20| `empire` | Empire or major state entity |
21| `kingdom` | Kingdom or sovereign territory |
22| `nation` | Nation or country |
23
24## Extraction Rules
25
261. **Eras**: Named periods (Age of Magic, Dark Times) — extract with timeframe
272. **Transitions**: What caused era changes (wars, discoveries, cataclysms)
283. **Timelines**: Chronological sequence of mentioned events
294. **Calendars**: Timekeeping systems, named months, cycles
305. **States**: Empires, kingdoms, nations — with their boundaries and rulers
31
32## Output Format
33
34Write to `entities/society.json` (society-team file):
35
36```json
37{
38 "eras": [
39 {
40 "id": 1,
41 "world_id": 1,
42 "name": "Age of Magic",
43 "description": "Ancient era when sorcerers ruled the skies",
44 "start_date": "1026-01-01T00:00:00+00:00",
45 "end_date": "1526-01-01T00:00:00+00:00",
46 "parent_era_id": null,
47 "child_era_ids": [],
48 "major_events": ["Great War"],
49 "cultural_notes": "Magic was central to society",
50 "technological_level": "Arcane",
51 "is_ongoing": false,
52 "color_code": "#5b3bff",
53 "created_at": "2026-02-14T10:00:00+00:00",
54 "updated_at": "2026-02-14T10:00:00+00:00",
55 "version": 1
56 }
57 ],
58 "era_transitions": [
59 {
60 "id": 2,
61 "world_id": 1,
62 "name": "The Great War Transition",
63 "description": "Magic waned after the Great War, ending the Age of Magic",
64 "from_era_id": 1,
65 "to_era_id": 3,
66 "transition_date": "1526-01-01T00:00:00+00:00",
67 "transition_type": "catastrophic",
68 "trigger_events": ["Great War"],
69 "key_figures": [5],
70 "social_impact": "Collapse of mage houses",
71 "economic_impact": null,
72 "political_impact": null,
73 "magical_impact": "Mana scarcity",
74 "stories_and_legends": ["The Last Spell"],
75 "artifacts": [],
76 "created_at": "2026-02-14T10:00:00+00:00",
77 "updated_at": "2026-02-14T10:00:00+00:00",
78 "version": 1
79 }
80 ],
81 "next_id": 3
82}
83```
84
85## Key Considerations
86
87- **Relative time**: Not all systems use absolute dates (cycles, ages)
88- **Multiple perspectives**: History may differ by culture (victors write history)
89- **Cross-references**: If needed, track relationships separately in drafts, but final JSON must match `LoreData.from_dict`.