Attribution: based on finance skill patterns by @@anton-roos.
Fetch recent finance news for Yahoo symbols (stocks, ETFs, indices) using yfinance.
It is optimized for:
Use this skill when the user asks:
If the user asks for multiple symbols, run the script once per symbol and merge/summarize results.
Common trigger phrases:
yfinanceThese scripts are intended to be run from a terminal. The agent should:
1) ensure dependencies installed
2) run the scripts
3) summarize results cleanly
Install:
cd {baseDir}
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
deactivate
Run from this skill directory.
Install dependencies:
pip install -r {baseDir}/requirements.txt
Examples:
python {baseDir}/scripts/market_news.py AAPL
python {baseDir}/scripts/market_news.py TSLA --limit 15
python {baseDir}/scripts/market_news.py ^GSPC --limit 10
python {baseDir}/scripts/market_news.py NVDA --no-cache
python {baseDir}/scripts/market_news.py AAPL --ttl 60
python {baseDir}/scripts/market_news.py AAPL --ttl 0 --no-cache
python {baseDir}/scripts/market_news.py AAPL --limit 8
python {baseDir}/scripts/market_news.py MSFT --limit 8
python {baseDir}/scripts/market_news.py NVDA --limit 8
Then produce one consolidated summary grouped by symbol.
1) Detect requested symbol(s) and desired depth (limit, default 10).
2) Run the script for each symbol.
3) Parse JSON and extract top items by recency and relevance.
4) For every returned news item, include its URL (url preferred, fallback to link).
5) Return a concise human summary plus per-item links.
6) If there are zero items, say so clearly and suggest retry (--no-cache) or another symbol.
symbol, source, fetched_at_*, count, items, note.title, publisher, published_at_unix, published_at_utc, url, link, summary.Mandatory rule:
url first; if missing, use link.URL not available for that item.Recommended item format:
- <title>
Publisher: <publisher>
Published (UTC): <published_at_utc>
URL: <url or link>
Suggested response structure:
1) One-line market/news context (if obvious).
2) Bulleted top headlines.
3) Caveat if coverage is sparse or stale.
count = 0: return "No recent items found" and suggest --no-cache retry.共 1 个版本