fred
SkillDev toolsUS/global macro time series from St. Louis Fed FRED — CPI, GDP, Fed funds, yields, M2, DXY, etc.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the fred skill
What this skill tells your AI
The instructions your AI receives, as published by kansoku-trade/kansoku in .claude/skills/fred/SKILL.md and read by ahel’s review.
Response language: match user input (zh-CN / zh-TW / en).
When to use
Trigger phrases:
- CPI / core CPI / PCE / PPI / inflation / 通胀 / 核心通胀
- GDP / 国内生产总值
- unemployment / 失业率 / U-3 / U-6 / nonfarm / 非农
- Fed funds / 联储利率 / SOFR
- 2Y / 10Y yield / yield curve / 美债利率 / 收益率曲线
- M1 / M2 / 货币供应
- DXY / 美元指数 / USD index
- VIX / 10Y breakeven / 通胀预期
- WTI / Brent / 油价 / gold
- consumer sentiment / 消费者信心 / housing starts / retail sales
Workflow
- Resolve user phrasing to a FRED series ID — first via
aliases.json(curated), thensearch.pyif no alias matches. - Run
series.py <SERIES_ID|alias>for observations + metadata. - Synthesise NL reply with units, frequency, and last update date; cite "Source: St. Louis Fed (FRED)".
Environment is auto-loaded on script import from .env at project root (or ~/.config/market-intel/env as fallback) — no manual source needed.
CLI examples
# Latest 60 monthly CPI observations
python3 .claude/skills/fred/scripts/series.py CPI
# 2Y Treasury yield, last 30 daily observations
python3 .claude/skills/fred/scripts/series.py "2Y yield" --limit 30
# 10-year breakeven inflation, custom window, ascending
python3 .claude/skills/fred/scripts/series.py T10YIE --start 2024-01-01 --order asc
# Discover series IDs
python3 .claude/skills/fred/scripts/search.py "consumer price index" --limit 10
# Bypass cache
python3 .claude/skills/fred/scripts/series.py CPI --fresh
Output shape
{
"ok": true,
"data": [{"date": "2026-04-01", "value": 314.2}, ...],
"meta": {
"series_id": "CPIAUCSL",
"title": "Consumer Price Index for All Urban Consumers: All Items",
"units": "Index 1982-1984=100",
"frequency": "Monthly",
"seasonal_adjustment": "SA",
"last_updated": "2026-05-13 07:36:01-05",
"count_returned": 60,
"alias_resolved": "CPI"
}
}
Available aliases
See aliases.json for the curated CN/EN → series ID map. Common ones:
| Alias | Series ID |
|---|---|
| CPI | CPIAUCSL |
| core CPI / 核心 CPI | CPILFESL |
| PCE | PCEPI |
| GDP | GDPC1 |
| unemployment / 失业率 | UNRATE |
| nonfarm / 非农 | PAYEMS |
| Fed funds / 联储利率 | DFF |
| 10Y yield / 美债 10 年 | DGS10 |
| yield curve | T10Y2Y |
| DXY / 美元指数 | DTWEXBGS |
| M2 | M2SL |
| VIX | VIXCLS |
| 10Y breakeven / 通胀预期 | T10YIE |
If the user's phrase isn't in the map, fall back to search.py "<query>" and pick the highest-popularity non-discontinued result.
Error handling
| Exit code | Meaning | LLM action |
|---|---|---|
| 0 | Success | Parse data, narrate. |
| 2 | Missing FRED_API_KEY | Tell user to register at https://fred.stlouisfed.org/docs/api/api_key.html and add to .env at project root. |
| 3 | HTTP 4xx or non-JSON | Surface error from hint. |
| 4 | Network | Suggest retry. |
Known limitations
- Daily series may have weekend/holiday gaps (FRED returns NaN as
.; we normalise tonull). - "Discontinued" series filtered by default in
search.py— use--include-discontinuedto override. - Series metadata cache TTL 24 h; observation cache TTL 1 h. Use
--freshfor the latest.
Related skills
longbridge-quotefor live equity quotes.gdeltfor narrative / sentiment context.sec-edgarfor individual-company filings.
Signals
- GitHub stars
- 314
- Forks
- 36
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
fred- Source
- github.com/kansoku-trade/kansoku