Skip to content
cccskills
FreePublished on GitHubEnglish overview

CrimeStats

Get crime rates, recent incident summaries, year-over-year changes, and city comparisons from public US data sources. Each figure is tied to a source and data year, with caveats such as reporting delays and incomplete incident feeds explained.

OriginalShow the original description

Pulls US city crime statistics from public sources (FBI crime data, city police data portals, state open-data portals, rate aggregators): rates per 100K, year-over-year trends, recent incidents and city comparisons, defaulting to a configured home city. USE WHEN crime stats, crime rate, crime trends, violent crime, property crime, recent incidents, neighborhood safety, compare cities, is my city safe. NOT FOR people investigations.

danielmiessler/LifeOS19,636 stars(GitHub 19,636 + cccskills 0)

Run score Not tested

See how to install

Good for

  • Check crime rates for a specified US city
  • Compare crime trends with nearby cities
  • Review recent reported incidents
  • See whether violent crime is rising

Overview

What it does

CrimeStats gathers crime statistics for US cities from public sources, including FBI data, police portals, and state open-data sites. It can summarize rates per 100,000 people, year-over-year changes, violent and property crime categories, recent reported incidents, and comparisons across cities or regions. If you do not name a city, it uses the configured city. Figures include their source and data year, along with relevant limits such as FBI reporting delays or partial incident feeds.

When it helps

Use it to examine crime in a US city where you live or plan to visit, compare regional patterns, or review recent incident reports. For smaller cities, it can show absolute counts alongside per-capita rates, since a small number of incidents can shift those rates substantially.

Example requests

  • “Summarize crime statistics for my configured city, with sources and data years.”
  • “Is violent crime increasing in this area?”
  • “Compare the crime rate with the neighboring city.”

Notes

The skill covers US cities. For first use, city information must be entered in a configuration file. If no city is configured, it asks for the city and state. An FBI API key is optional according to the provided material. It does not report or store names of people involved in incidents and is not for investigating individuals.

This overview was written by AI (OpenAI Codex) from the public SKILL.md. Check the original below for the exact behavior.

Document check

AI checked the SKILL.md for operations that need care and for setup requirements. The score comes only from actually running the skill (hands-on test).

SafetyAre sending data, deleting files, and running commands disclosed?
AGoodIt explicitly prohibits reporting or storing names of people involved in incidents.
Easy setupDoes it need few tools or API keys, and are they documented?
AGoodSetup.md covers configuration, and the FBI API key is optional.

Not counted in the score. Rated by AI (OpenAI Codex) as of Oct 28, 2026. Treat it as a guide and read the original before installing.

Disagree? Request a re-evaluation

Tell us which point is wrong and why. No login needed. We will check it against the SKILL.md, redo the evaluation, and show the result here.

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

Files included (7)

  • SKILL.md8.0 KB
  • DataSources.md11.0 KB
  • Intents/CompareRegion.md3.3 KB
  • Intents/IncidentReport.md4.4 KB
  • Intents/QuickStats.md2.8 KB
  • Intents/TrendAnalysis.md3.6 KB
  • Setup.md4.8 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

CrimeStats

Contents: Ideal State · Anti-criteria · Intent Routing · Data & Config · Data Storage · Gotchas · Examples

Pulls and analyzes US city crime statistics from public data sources — rates per 100K, year-over-year trends, recent incidents, and regional comparisons — for the configured default city or any named one. Crime stats live across a dozen sites that disagree with each other, FBI UCR data lags, incident feeds are partial, and a city name can be ambiguous across states, so the skill knows which source to trust for which question: the configured city's police portal (Config.md) for local incident data, AreaVibes, CrimeGrade and HomeSnacks for rate snapshots, CityRating and FBI UCR for multi-year trends, SpotCrime and Patch for recent incidents, and the state DOJ open-data CSVs for agency-level data.

Ideal State

  • The numbers are for the city the user meant: the named city verified by its state (and county and ZIP for the configured city), or the configured default city when none was named.
  • Every reported figure names its source and data year, and the answer flags the caveat that shapes it (source baselines that disagree, FBI lag, felony-only portal counts, partial incident feeds, small-city rate swings).
  • Rate answers carry, when available, the total, property, violent, burglary, robbery and vehicle theft rates per 100,000, the YoY change as a percentage, and the percentage above or below the national average, with absolute numbers alongside for small cities.
  • Each pull is saved as dated JSON under the Data Storage path, so a later run can compare against it.

Anti-criteria

  • Never reports or stores the names of people arrested, accused or involved in an incident: figures, offenses, dates and block-level locations only.

Intent Routing

IntentTriggerFile
QuickStats"crime stats", "how safe is", "crime rate for"Intents/QuickStats.md
TrendAnalysis"crime trends", "getting worse", "increasing crime"Intents/TrendAnalysis.md
IncidentReport"recent incidents", "what happened", "police reports this week"Intents/IncidentReport.md
CompareRegion"compare", "vs", "safer than", "how does X compare"Intents/CompareRegion.md
FileRead when
DataSources.mdchoosing or calling a source: URL patterns, the police-portal access patterns by type (CitizenRIMS, Socrata, ArcGIS, map-only), FBI and state DOJ access, the dated national averages
Setup.mdfirst-time setup: filling Config.md, finding the police portal type, the optional FBI API key, a proof command

Data & Config

All city-specific values (default city, county, state, ZIP, neighboring cities, the local police portal URL, and the concrete per-city source URLs) live in the principal's own config, not in this skill. First-time setup and a proof command: Setup.md.

<configRoot>/LIFEOS/USER/CUSTOMIZATIONS/SKILLS/CrimeStats/Config.md configRoot is $CLAUDE_CONFIG_DIR when set, else ~/.claude.

Default city: when no city is specified, use default_city (with its state, ZIP, and population) from Config.md. If Config.md is absent or default_city is unset, ask which city and state to use, and point at Setup.md so the answer can become the default; never guess a city. Load Config.md for the local police portal, neighboring cities, and city-resolved source URLs whenever an intent needs them. Skill files stay generic and describe the procedure against "the configured city."

Neighboring cities for comparison: the neighboring_cities list in Config.md (or, for any other target city, geographically adjacent cities of similar size).

Data Storage

Historical data persists at: ~/.claude/LIFEOS/MEMORY/DATA/CrimeStats/. The directory does not exist on a fresh install, so every intent runs mkdir -p ~/.claude/LIFEOS/MEMORY/DATA/CrimeStats before its first write.

File naming: YYYY-MM-DD_{city}_{state}_{intent}.json

Example: 2026-03-22_springfield_xx_quickstats.json

Gotchas

  • Police-portal counts are not FBI counts. Each portal publishes whatever offenses the department chooses (CitizenRIMS, for example, lists felonies only), so read a dataset's offense list before comparing its totals with FBI UCR figures, which include all reported offenses.
  • Portal date parameters are vendor-specific. CitizenRIMS wants JS toDateString() form with the correct weekday ("Tue Mar 24 2026") and returns 500 on a wrong one; generate the string, never type it (DataSources.md Tier 0). Socrata and ArcGIS take ISO timestamps.
  • FBI annual data lags the calendar year by five to eight months. The national estimates arrive as a First Look around May and the full Reported Crimes in the Nation report around August of the following year; agency-level monthly data has been on the Crime Data Explorer since August 2025. Check the CDE for the latest year before saying a year of FBI data does not exist, and name the data year with every figure.
  • AreaVibes vs NeighborhoodScout vs CrimeGrade use different baselines. Rates can differ 10-40% across sources. Always cite the source.
  • SpotCrime incident data is not comprehensive. It only shows reported incidents from participating agencies. Absence of data != absence of crime.
  • Same-name-different-state confusion is common. Many US cities share a name across states. Always verify you're pulling the configured city in its state (county + ZIP in Config.md), not a same-named city elsewhere.
  • Crime mapping sites are often paywalled or bot-protected. NeighborhoodScout limits free access. Fall back to AreaVibes or CrimeGrade.
  • State DOJ open-data portals have agency-level data where the state publishes it, but the explorers are client-rendered apps — use the downloadable CSV datasets, not web scraping.
  • Per-capita rates swing wildly for small cities. Below roughly 100,000 residents (check population in Config.md or the census figure for a named city) a handful of incidents moves the rate noticeably. Always show absolute numbers alongside per-100K rates.

Examples

Example 1: Quick city snapshot

User: "What are the crime stats for my city?"  (or a named city + state)
-> QuickStats intent (default city from Config.md if none named)
-> Rates per 100K, % vs national and YoY change for each category, a safety grade and a one-line takeaway, sources cited

Example 2: Trend analysis

User: "Is violent crime going up here?"
-> TrendAnalysis intent
-> YoY table against neighboring cities, the state and the nation, plus a multi-year table when the data exists and 3-5 key findings

Example 3: Recent incidents

User: "What crimes were reported in my city this week?"
-> IncidentReport intent
-> Incident list with dates, locations, types, a count summary and any patterns

Example 4: Regional comparison

User: "How does my city compare to the neighboring one for crime?"
-> CompareRegion intent (neighbors from Config.md)
-> Side-by-side table of every metric with the national baseline, YoY trends, victimization risk, and the safest city named

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

AnnualReports

FreeSummary

Find and fetch vendor cybersecurity reports, then compare their findings on topics such as ransomware, breaches, cloud security, and AI. Analyses identify the reports consulted and cite each figure by vendor, year, and report, including where sources disagree.

  • Find reports in a cybersecurity topic area
  • Fetch a specific vendor report
  • Compare ransomware findings across reports
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

Compare a component's own design needs with the goals of the larger system through three structured passes. The result identifies conflicts, recommends an appropriate scope, and assesses whether the proposed design fits the whole.

  • Choosing between a service, a library, and inline code
  • Comparing feature requests with product goals
  • Checking how new components fit an existing system
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

Aphorisms

FreeSummary

Find quotes that fit a text’s themes, with attribution and a short reason for each suggestion. Add sourced quotes, research thinkers, and organize a quote collection by theme and usage history to avoid repetition.

  • Finding a fitting quote for a newsletter
  • Saving sourced quotes without duplicates
  • Researching a thinker’s quotes by theme
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

Art

FreeSummary

Create blog illustrations, technical diagrams, comparisons, comics, and icons through workflows tailored to each format. The skill guides composition, color, and model selection, then stages generated images for review before they are used in a project.

  • Creating blog header illustrations
  • Explaining a system with a technical diagram
  • Visualizing comparisons and timelines
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

ArtDirection

FreeSummary

Assess the visual quality of images, films, slides, and site captures against a brief and craft criteria. Two vision judges score the work and rank defects, guiding bounded revision; delivery is gated on a passing critique, with human calibration labels recorded separately.

  • Reviewing a render and listing the most important visual defects
  • Iterating on a film or slide deck until it meets a defined bar
  • Checking whether an image reads as professional
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

ArXiv

FreeSummary

Find arXiv papers by topic, research category, or paper ID. Retrieve titles, authors, abstracts, and links, check new submissions, and add AlphaXiv's AI-generated overviews when available to help decide which papers to read.

  • Checking new AI and machine learning papers
  • Finding papers on a specific research topic
  • Looking up a paper by its ID or arXiv URL
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

See all skills by danielmiessler

Report a problem with this skill