urban-design
Domain skill for urban planning and city structure extraction.
Entity Types
| Type |
Description |
district |
Named city district or neighborhood |
ward |
Administrative ward or section |
quarter |
City quarter (e.g., merchant quarter) |
plaza |
Public plaza or gathering space |
market_square |
Market area or trade hub |
slums |
Impoverished area |
noble_district |
Wealthy or aristocratic area |
port_district |
Waterfront or harbor area |
Extraction Rules
- Named districts: Extract with exact name and characteristics
- Social geography: Map wealth distribution across the city
- Infrastructure: Roads, walls, gates, utilities mentioned
- Activity zones: Commercial, residential, religious, industrial areas
- Historical layers: Old vs new city sections
Output Format
Write to entities/world.json (world-team file):
{
"districts": [
{
"id": "4dbf72a5-1a2b-4b3c-9d4e-5f6a7b8c9d0e",
"tenant_id": "t-1",
"name": "Merchant Quarter",
"city_id": "l-1",
"district_type": "commercial",
"population": 12000,
"safety_level": 0.6,
"prosperity_level": 0.8,
"is_active": true,
"created_at": "2026-02-14T10:00:00+00:00",
"updated_at": "2026-02-14T10:00:00+00:00"
}
],
"slums": [
{
"id": "c2d8b8a1-9e7b-4c6d-8a1b-2c3d4e5f6a7b",
"tenant_id": "t-1",
"name": "The Warrens",
"city_id": "l-1",
"district_type": "slums",
"population": 25000,
"safety_level": 0.2,
"prosperity_level": 0.1,
"is_active": true,
"created_at": "2026-02-14T10:00:00+00:00",
"updated_at": "2026-02-14T10:00:00+00:00"
}
]
}
Key Considerations
- Social inequality: Slums vs noble districts show wealth gap
- Mixed use: Many areas are residential + commercial
- Historical layers: Cities have old and new sections
- Cross-references: If needed, track relationships separately in drafts, but final JSON must match
LoreData.from_dict.
1---2name: urban-design3description: Extract urban planning entities from narrative text. Use when analyzing city districts, wards, quarters, plazas, markets, slums, noble districts, and port areas.4---5# urban-design
6
7Domain skill for urban planning and city structure extraction.
8
9## Entity Types
10
11| Type | Description |
12|------|-------------|
13| `district` | Named city district or neighborhood |
14| `ward` | Administrative ward or section |
15| `quarter` | City quarter (e.g., merchant quarter) |
16| `plaza` | Public plaza or gathering space |
17| `market_square` | Market area or trade hub |
18| `slums` | Impoverished area |
19| `noble_district` | Wealthy or aristocratic area |
20| `port_district` | Waterfront or harbor area |
21
22## Extraction Rules
23
241. **Named districts**: Extract with exact name and characteristics
252. **Social geography**: Map wealth distribution across the city
263. **Infrastructure**: Roads, walls, gates, utilities mentioned
274. **Activity zones**: Commercial, residential, religious, industrial areas
285. **Historical layers**: Old vs new city sections
29
30## Output Format
31
32Write to `entities/world.json` (world-team file):
33
34```json
35{
36 "districts": [
37 {
38 "id": "4dbf72a5-1a2b-4b3c-9d4e-5f6a7b8c9d0e",
39 "tenant_id": "t-1",
40 "name": "Merchant Quarter",
41 "city_id": "l-1",
42 "district_type": "commercial",
43 "population": 12000,
44 "safety_level": 0.6,
45 "prosperity_level": 0.8,
46 "is_active": true,
47 "created_at": "2026-02-14T10:00:00+00:00",
48 "updated_at": "2026-02-14T10:00:00+00:00"
49 }
50 ],
51 "slums": [
52 {
53 "id": "c2d8b8a1-9e7b-4c6d-8a1b-2c3d4e5f6a7b",
54 "tenant_id": "t-1",
55 "name": "The Warrens",
56 "city_id": "l-1",
57 "district_type": "slums",
58 "population": 25000,
59 "safety_level": 0.2,
60 "prosperity_level": 0.1,
61 "is_active": true,
62 "created_at": "2026-02-14T10:00:00+00:00",
63 "updated_at": "2026-02-14T10:00:00+00:00"
64 }
65 ]
66}
67```
68
69## Key Considerations
70
71- **Social inequality**: Slums vs noble districts show wealth gap
72- **Mixed use**: Many areas are residential + commercial
73- **Historical layers**: Cities have old and new sections
74- **Cross-references**: If needed, track relationships separately in drafts, but final JSON must match `LoreData.from_dict`.