From sentiment-analysis
This skill should be used when the user asks about news sentiment, media coverage tone, recent headline analysis, financial news sentiment, how the press is covering a stock, or news-driven market mood for a publicly traded company.
npx claudepluginhub tradeinsight-info/investment-analysis-skills --plugin sentiment-analysisThis skill uses the workspace's default tool permissions.
Fetch financial news articles for a company published in the past 24 hours and score
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Analyzes multiple pages for keyword overlap, SEO cannibalization risks, and content duplication. Suggests differentiation, consolidation, and resolution strategies when reviewing similar content.
Share bugs, ideas, or general feedback.
Fetch financial news articles for a company published in the past 24 hours and score each headline for sentiment. Produce a news channel score from -10 (very bearish) to +10 (very bullish).
If a ticker is provided, confirm the company name via WebSearch:
{ticker} stock company name site:finance.yahoo.com OR site:stockanalysis.com
If only a company name is provided, resolve the ticker the same way.
Run:
cat ${CLAUDE_PLUGIN_ROOT}/config.json 2>/dev/null
If the file exists and contains newsapi.key (i.e., config["newsapi"]["key"]),
proceed to Step 3a. Otherwise proceed to Step 3b (WebSearch fallback).
WebFetch the following URL, substituting:
{ticker}: the stock ticker symbol{company_name}: URL-encoded company name{ISO_24h_ago}: current UTC time minus 24 hours in format YYYY-MM-DDTHH:MM:SSZ{KEY}: the resolved string value of config["newsapi"]["key"]https://newsapi.org/v2/everything?q={ticker}%20OR%20%22{company_name}%22&from={ISO_24h_ago}&sortBy=publishedAt&language=en&pageSize=20&apiKey={KEY}
Extract from each article: title, description, source.name, publishedAt, url.
Use the first 20 results.
Run WebSearch:
"{company_name}" OR "{ticker}" stock news site:reuters.com OR site:bloomberg.com OR site:seekingalpha.com OR site:finance.yahoo.com
Extract up to 20 headline + description pairs from search results.
Record source as "WebSearch" and note in output: "News via WebSearch — no NewsAPI key configured"
For each article headline + description pair, assign a score from -1.0 to +1.0:
Score the combination of headline + description together. A positive headline with a cautionary description should score lower than the headline alone suggests.
news_score = mean(all_headline_scores) × 10
Identify the 3 articles with the highest absolute score value (strongest signal, regardless of direction — these are the most signal-rich stories). These are the "key headlines" to surface in output.
If fewer than 5 articles were found, add this warning to output: "⚠️ Low news volume ({n} articles) — score may not be representative"
Return the following structured result (consumed by sentiment-report and sentiment-analyst):
NEWS SENTIMENT RESULT
Ticker: {ticker}
Company: {company_name}
Channel Score: {news_score} / 10
Signal: {label per signal bands below}
Article Count: {n}
Source: {NewsAPI | WebSearch}
Low Volume Warning: {yes | no}
Key Headlines (highest absolute sentiment score):
1. [{score}] "{title}" — {source_name}
{url}
2. [{score}] "{title}" — {source_name}
{url}
3. [{score}] "{title}" — {source_name}
{url}
Signal bands: