Skip to content
Back to skills

Classify Lifestyles

ASecurity

Classify lifestyle categories for all biographical stories. Use when asked to classify or reclassify lifestyles.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 27, 2026
datagoapi

Works with

  • api

Security analysis

A100/100

Scanned September 27, 2026

npx -y skills add David-Li0406/meta-skill-evloving --skill classify-lifestyles --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Classify Lifestyles?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Classify Lifestyles
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/david-li0406-classify-lifestyles/badge)](https://www.skillsdirectory.com/skills/david-li0406-classify-lifestyles)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: classify-lifestyles
description: Classify lifestyle categories for all biographical stories. Use when asked to classify or reclassify lifestyles.
---

# Lifestyle Classification Workflow

You are classifying the economic lifestyle of all people in `_lives/` and `_lives_pending/` to improve filtering and visualization on the website.

## Categories

Use exactly these five categories:

1. **Hunter-Gatherer** - foraging societies (no agriculture)
2. **Pastoralist** - primarily livestock herding (mobile/semi-nomadic)
3. **Farmer** - agricultural cultivation (peasants, smallholders, agricultural laborers, farm household workers)
4. **Rural Non-Farm** - non-agricultural rural work (village craftspeople, rural servants, rural laborers, rural traders)
5. **Urban** - town/city dwellers (regardless of occupation)

## How to Classify

For each person:

1. **Read the occupation field** in the YAML debug comments (`# occupation:`)
2. **Check the narrative context** for clues about settlement type
3. **Consider these markers**:
   - **Urban indicators**: references to "town," "city," "plaza," "market," "street," "workshop," officials/priests present, multiple named establishments
   - **Rural indicators**: "village," "hamlet," dispersed settlement, primarily household-based work
   - **Grid cell limitations**: The `urban_area percentage` can be misleading since HYDE grid cells are ~10km x 10km - a small town can exist in a 0.03% urban cell

4. **Apply decision tree**:
   - If narrative clearly describes town/city life → **Urban**
   - Else if occupation is hunter/gatherer/forager → **Hunter-Gatherer**
   - Else if occupation is herder/pastoralist → **Pastoralist**
   - Else if occupation is cultivation/farming/agricultural labor → **Farmer**
   - Else if rural setting with non-agricultural work → **Rural Non-Farm**
   - Else (ambiguous/uncertain) → **Add "FLAG: " prefix to lifestyle** (e.g., `lifestyle: "FLAG: Urban"`) so you can grep for it later

## Edge Cases

- **Migrant workers who move to cities**: Classify by where they spend their adult life (e.g., construction worker living in cities = Urban)
- **District capitals**: Small district capitals count as Urban even if grid cell is mostly rural
- **Infants who die**: Classify by parents' occupation and setting
- **Mixed occupations**: Choose primary occupation (e.g., "farmer + occasional craft" = Farmer)

## FLAG System

Add "FLAG: " prefix to the lifestyle field when ANY of these occur:

1. **Classification uncertain** - occupation is ambiguous or mixed
2. **Urban location mismatch** - classified as Urban but:
   - `urban_area percentage` is very low (<0.5%)
   - Narrative doesn't clearly describe town/city
3. **Missing key data** - no occupation field found
4. **Contradictory information** - occupation and narrative don't match

Examples:
- `lifestyle: "FLAG: Urban"` - classified as Urban but uncertain
- `lifestyle: "FLAG: Farmer"` - mixed agro-pastoral occupation, chose Farmer
- `lifestyle: "FLAG: Rural Non-Farm"` - mining settlement, urban_area% very low but might be small town

## Process

**CRITICAL: Process ONE file at a time. NO batch processing.**

Work through files systematically:

1. Read ONE file's occupation and narrative context
2. Determine the correct category for THIS file
3. If uncertain, add "FLAG: " prefix to the lifestyle value
4. **BEFORE updating**: Record the old classification value
5. Add a new `old_lifestyle:` field in frontmatter with the original value
6. Update the `lifestyle:` field in frontmatter with new classification (with FLAG prefix if uncertain)
7. Move to the NEXT file and repeat steps 1-6
8. Track progress (report every 25 stories)

## Example Classifications

- **Construction laborer living in cities** → Urban
- **Peasant farmer on family land** → Farmer
- **Agricultural day laborer** → Farmer
- **Village weaver/blacksmith** → Rural Non-Farm
- **Maasai herder** → Pastoralist
- **Atlantic Forest forager** → Hunter-Gatherer
- **Small-town artisan with workshop** → Urban (even if urban_area = 0.03%)
- **Domestic worker in urban household** → Urban
- **Household farm worker** → Farmer

## Output Format

For each file, add the old value and update the current value:
```yaml
old_lifestyle: "Rural"
lifestyle: "Urban"
```

The `lifestyle:` value should be one of: `"Hunter-Gatherer"`, `"Pastoralist"`, `"Farmer"`, `"Rural Non-Farm"`, or `"Urban"`.

The `old_lifestyle:` field preserves the original automatic classification for comparison.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…