Skip to main content
ClaudeWave
Skill1.3k repo starsupdated 3d ago

air-quality

Check live air quality anywhere with zero API keys — Open-Meteo's air-quality API via curl, decoded from raw PM2.5 and AQI numbers into what they mean for going outside. Use when asked what's the air quality, is it safe to run outside, AQI in my city, or pollution levels right now. Produces the current AQI and pollutant levels, the plain-language health read with the standard bands, and the rerunnable command.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/mohitagw15856/pm-claude-skills /tmp/air-quality && cp -r /tmp/air-quality/exports/openclaw/air-quality ~/.claude/skills/air-quality
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Air Quality Skill

Air quality is a daily decision input — run outside or inside, windows open or closed, mask or not — and Open-Meteo serves it globally over plain HTTPS, no key, no signup. This skill fetches it, then does the part the raw number doesn't: translating PM2.5 and AQI into the standard health bands, matched to what the user was actually deciding.

## What This Skill Produces

- **The read** — one sentence: the air right now and what it suggests for the stated activity
- **The numbers** — AQI plus the pollutants that matter (PM2.5, PM10, ozone, NO₂), with the timestamp
- **The bands** — where today sits on the standard scale, so the number has meaning
- **The command** — the exact curl, rerunnable

## Required Inputs

Ask for these if not provided:
- **Location** — lat/lon or a place name (geocode first: `https://geocoding-api.open-meteo.com/v1/search?name=Delhi&count=1`)
- **The decision behind the question** — a run, a bike commute, a sensitive-lungs household, open windows — the read is calibrated to it
- **Which index they think in** — US AQI or European AQI (the API serves both; the numbers differ substantially for the same air)

## Framework: The Fetch and the Read

1. **The call:** `curl -s "https://air-quality-api.open-meteo.com/v1/air-quality?latitude=28.61&longitude=77.21&current=pm2_5,pm10,ozone,nitrogen_dioxide,us_aqi,european_aqi"` — add `&hourly=pm2_5,us_aqi&forecast_days=2` when the question is "when today will it be best."
2. **The US AQI bands, stated every time:** 0–50 good · 51–100 moderate · 101–150 unhealthy for sensitive groups · 151–200 unhealthy · 201–300 very unhealthy · 301+ hazardous. A bare "AQI 137" is not an answer; "137 — unhealthy for sensitive groups; fine for most, skip the long run if asthmatic" is.
3. **PM2.5 is the headline pollutant** for health questions (it reaches deep lung tissue); ozone matters for afternoon exercise; NO₂ tracks traffic. Match the pollutant discussed to the question asked.
4. **Timing beats averages:** pollution has a daily shape (traffic peaks, afternoon ozone) — for exercise questions, pull the hourly series and name the cleanest window rather than judging the day by one reading.
5. **Model honesty:** Open-Meteo's air quality is model-derived (CAMS), not a monitor on the user's street — excellent for bands and trends, not for litigation. Say "modeled" when precision is being leaned on, and point sensitive-health decisions to local official monitors.

## Output Format

# Air Quality: [location] — [timestamp]

**[One sentence: the band, and the answer to their actual decision.]**

| Metric | Now | Band |
|---|---|---|
[US or EU AQI per preference · PM2.5 · the pollutant relevant to their question]

[If timing asked: the hourly shape and the recommended window]

Source: Open-Meteo air-quality API (modeled/CAMS) · rerun: `[exact curl]`
*Advisory reading — for medical-grade decisions use official local monitoring.*

## Quality Checks

- [ ] The band appears with the number — never a bare AQI value
- [ ] US vs European AQI is disambiguated
- [ ] The read addresses the stated activity, not generic health advice
- [ ] Timing questions get the hourly series, not a single reading
- [ ] The modeled-data caveat appears when precision matters

## Anti-Patterns

- [ ] Do not answer from memory — fetch or hand over the command
- [ ] Do not mix up the two AQI scales — a European 80 and a US 80 are different airs
- [ ] Do not medicalize — bands and general guidance, with sensitive cases routed to official sources
- [ ] Do not judge a whole day by one hour when the question is "when"
- [ ] Do not dump all pollutants undigested — lead with the one the question is about
ai-ethics-reviewSkill

Conduct a structured ethical review of an AI or ML feature, model, or product. Use when preparing to deploy an AI system, assessing algorithmic risk, auditing a model for bias, or producing a responsible AI impact assessment. Produces a structured ethics review covering fairness, transparency, privacy, safety, accountability, and societal impact with a risk tier score, pre-deployment checklist, and prioritised mitigations.

ai-product-canvasSkill

Structure AI and ML product decisions with the rigour of any product decision. Use when building AI-powered features, evaluating LLM integrations, designing AI products, or assessing AI readiness. Produces a complete AI product canvas covering problem definition, model approach, data requirements, evaluation framework, UX design, responsible AI checklist, and launch monitoring plan.

design-handoff-briefSkill

Transform feature briefs into structured design briefs that give designers the context they need before opening Figma. Use when asked to write a design brief, create a design handoff, brief a designer on a new feature, or translate a PRD into design requirements. Produces a brief with user goal, emotional context, success criteria, constraints, edge cases, and out-of-scope boundaries.

experiment-designerSkill

Design statistically rigorous A/B tests and interpret experiment results. Use when asked to design an experiment, run an A/B test, calculate sample size, interpret test results, or assess whether an experiment was successful. Produces a complete experiment design with hypothesis, sample size, run time, success criteria, and risk flags — or a results interpretation with ship/iterate/kill recommendation.

multi-source-signal-synthesiserSkill

Synthesises user signals from multiple research sources into a unified, weighted insight brief. Use when you have data from interviews, support tickets, NPS verbatims, app reviews, or sales calls and need to reconcile contradictions, surface the underlying need behind requests, or answer 'what are users really telling us'. Produces ranked insights with confidence ratings, source weighting rationale, divergent signal analysis by user segment, and a research gap identification section.

data-analysis-standardSkill

Structure a product data analysis, metric deep-dive, funnel analysis, or cohort study. Use when asked to analyse product metrics, investigate a drop in conversion, explain a data change to stakeholders, or find the root cause of a metric movement. Produces a structured analysis with question, root cause, confidence level, and recommended action.

product-health-analysisSkill

Interpret product metrics against goals and surface actionable signals. Use when asked to analyse product health, review key metrics, investigate a performance issue, produce a health report, or assess product-market fit signals. Produces a structured health report with RAG status, trend analysis, root cause hypotheses, and prioritised actions.

retention-analysisSkill

Structure a retention analysis, churn investigation, or engagement deep-dive for any product team. Use when asked to analyse user retention, investigate churn, measure DAU/MAU, or build a retention improvement plan. Produces a retention snapshot with root cause hypotheses, aha-moment correlation, and prioritised interventions.