Agent skill

Earnings Recap

by himself65 in himself65/finance-skills

Analyze a company's most recent (or a specified past) earnings report from Yahoo Finance data (yfinance): actual vs estimated EPS, surprise size, revenue and margin trends, and the stock's price…

MITAuto-check passedBusiness, Finance & HR

Install Earnings Recap

skills CLI
$ npx skills add himself65/finance-skills --skill earnings-recap -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install himself65/finance-skills earnings-recap --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/himself65/finance-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/market-analysis/skills/earnings-recap .claude/skills/earnings-recap && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
earnings-recap
GitHub stars
3.4k
Token cost
~1.7k tokens
SKILL.md length
583 words
Files
3 (incl. references)
Skills in repo
25
Repo updated
First seen
Licence
MIT

At a glance

Analyze a company's most recent (or a specified past) earnings report from Yahoo Finance data (yfinance): actual vs estimated EPS, surprise size, revenue and margin trends, and the stock's price…

  • Works in 5 steps: Ensure yfinance Is Available → Identify the Ticker and Gather Data → Find the Report and Measure the Reaction → …
  • The user asks how earnings went — beat
  • SKILL.md covers Step 1: Ensure yfinance Is…, Step 2: Identify the Ticker…, Step 3: Find the Report and… and Step 4: Build the Earnings Recap, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Earnings Recap is an agent skill from himself65/finance-skills. Analyze a company's most recent (or a specified past) earnings report from Yahoo Finance data (yfinance): actual vs estimated EPS, surprise size, revenue and margin trends, and the stock's price reaction. Use this skill whenever the user asks how earnings went — beat or miss, earnings surprise, quarterly results, the post-earnings move, or an earnings call recap — including casual references to a past report such as "AMZN reported last night" or "how did they do". For an upcoming report, use earnings-preview.

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `README.md` and `references/api_reference.md`).

It sits in Business, Finance & HR, covering Stock and market analysis, Financial analysis and Meeting notes and agendas. It works with yfinance. The repository describes itself as: A collection of skills for AI financial analysis. The licence is MIT.

When your agent uses it

  • The user asks how earnings went — beat
  • Earnings surprise
  • Quarterly results
  • The post-earnings move

Example prompts

  • “AMZN reported last night”
  • “how did they do”
  • “/earnings-recap”

Requirements

  • Python 3

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Ensure yfinance Is Available
  2. Identify the Ticker and Gather Data
  3. Find the Report and Measure the Reaction
  4. Build the Earnings Recap
  5. Respond to the User

What it can do on your machine

Read from SKILL.md and the folder at commit 01fc7b4. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are python).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Earnings Recap loads about 1.7k tokens when it runs, and up to ~3k if it reads all its reference files. Until then it costs about 132 tokens; SKILL.md has 583 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~132
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from himself65/finance-skills at commit 01fc7b4, republished under its MIT licence (© himself65). 583 words, ~1,729 tokens.

Download SKILL.mdSave it as .claude/skills/earnings-recap/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
earnings-recap
description
Analyze a company's most recent (or a specified past) earnings report from Yahoo Finance data (yfinance): actual vs estimated EPS, surprise size, revenue and margin trends, and the stock's price reaction. Use this skill whenever the user asks how earnings went — beat or miss, earnings surprise, quarterly results, the post-earnings move, or an earnings call recap — including casual references to a past report such as "AMZN reported last night" or "how did they do". For an upcoming report, use earnings-preview.

Earnings Recap Skill

Generates a post-earnings analysis using Yahoo Finance data via yfinance. Covers the actual vs estimated numbers, surprise magnitude, stock price reaction, and financial context — a complete picture of what happened.

Important: Data is for research and educational purposes only. Not financial advice. yfinance is not affiliated with Yahoo, Inc.


Step 1: Ensure yfinance Is Available

Current environment status:

!`python3 -c "exec('try:\n import yfinance\n print(\'yfinance \' + yfinance.__version__ + \' installed\')\nexcept Exception:\n print(\'YFINANCE_NOT_INSTALLED\')')"`

If YFINANCE_NOT_INSTALLED, install it:

python
import subprocess, sys
subprocess.check_call([sys.executable, "-m", "pip", "install", "-q", "yfinance"])

If already installed, skip to the next step.


Step 2: Identify the Ticker and Gather Data

Extract the ticker from the user's request. Fetch all relevant post-earnings data in one script.

python
import yfinance as yf
import pandas as pd

ticker = yf.Ticker("AAPL")  # replace with actual ticker

# --- Earnings results ---
earnings_dates = ticker.get_earnings_dates(limit=12)  # report timestamps, newest first
earnings_hist = ticker.earnings_history               # last 4 quarters, indexed by fiscal quarter-end, oldest first

# --- Financial statements (about five quarters, newest first) ---
quarterly_income = ticker.quarterly_income_stmt
quarterly_cashflow = ticker.quarterly_cashflow
quarterly_balance = ticker.quarterly_balance_sheet

# --- Context ---
info = ticker.info
news = ticker.news
recommendations = ticker.recommendations
What to extract
Data SourceKey FieldsPurpose
get_earnings_dates()Earnings Date, EPS Estimate, Reported EPS, Surprise(%)Which report, when, and the beat/miss
earnings_historyepsEstimate, epsActual, epsDifference, surprisePercentLast four quarters' results by fiscal quarter
quarterly_income_stmtTotalRevenue, GrossProfit, OperatingIncome, NetIncome, BasicEPSActual financials
history()Daily closes around each reportStock price reaction
infocurrentPrice, marketCap, forwardPECurrent context
newsRecent headlinesEarnings-related news

Step 3: Find the Report and Measure the Reaction

earnings_history is indexed by fiscal quarter-end, not by announcement date, so take report timing from get_earnings_dates(): the most recent report is the newest row with a Reported EPS. Its timestamp (US Eastern) sets the reaction window: at or after 16:00 means the company reported after the close; anything earlier means before the open or, occasionally, during the session. If the user asked about a specific quarter, use that row instead.

python
def earnings_reaction(ticker, report_ts):
    """% move from the last close before the report to the first close after it."""
    daily = ticker.history(start=(report_ts - pd.Timedelta(days=10)).date(),
                           end=(report_ts + pd.Timedelta(days=10)).date())
    closes = daily["Close"]
    days = closes.index.date
    d = report_ts.date()
    if report_ts.hour >= 16:  # reported after the close: report-day close -> next close
        pre, post = closes[days <= d], closes[days > d]
    else:                     # before the open or intraday: prior close -> report-day close
        pre, post = closes[days < d], closes[days >= d]
    if pre.empty or post.empty:
        return None           # the reaction session hasn't closed yet
    return (post.iloc[0] / pre.iloc[-1] - 1) * 100

reported = earnings_dates[earnings_dates["Reported EPS"].notna()]
latest_ts = reported.index[0]
reaction_pct = earnings_reaction(ticker, latest_ts)

# Typical earnings-day move over the prior four reports
prior_moves = [earnings_reaction(ticker, ts) for ts in reported.index[1:5]]
avg_abs_move = pd.Series([abs(m) for m in prior_moves if m is not None]).mean()

If reaction_pct is None, the report came after the most recent close; say the regular-session reaction is still pending (an intraday history(..., prepost=True) call shows the after-hours move if the user wants it).


Show full SKILL.md (313 more words)Show less

Step 4: Build the Earnings Recap

Cover these areas, leading with the result:

  1. Headline result — EPS actual vs estimate with the surprise %, revenue with year-over-year growth, and the stock's reaction.
  2. Estimates vs actuals — EPS estimate, actual, and surprise ($ and %) for the quarter in question.
  3. Quarterly trends — revenue, gross margin, operating margin, and EPS for the recent quarters, with margins computed from the statements (gross profit / revenue, operating income / revenue). yfinance usually returns about five quarters, so year-over-year growth is available for the latest quarter only (column 0 vs column 4); show sequential change for the others rather than inventing a comparison.
  4. Price reaction — the move in the reaction session, how it compares with the stock's average absolute earnings move over the prior four reports, and whether the stock has since held, given back, or extended the move.
  5. What changed — margin direction vs the prior quarter, any shift in the revenue growth trajectory, how this surprise compares with the company's usual pattern, and current analyst sentiment if available.

Step 5: Respond to the User

Open with the headline — which quarter, when it was reported, the beat or miss, revenue growth, and the reaction — then the supporting tables. Say what matters: whether this was a meaningful beat or a low bar cleared, and whether the trend is improving or deteriorating. Keep it factual and leave out investment recommendations.

Include the caveats that apply: Yahoo Finance data doesn't capture everything from the call (guidance, segment detail), revenue is compared year over year from the statements rather than against a revenue consensus, the price reaction can reflect a broader market move that day, and this is not financial advice.


Reference Files

  • references/api_reference.md — Detailed yfinance API reference for earnings history and financial statement methods

Read the reference file when you need exact method signatures or to handle edge cases in the financial data.

© himself65, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (references) in plugins/market-analysis/skills/earnings-recap of himself65/finance-skills.

  • SKILL.md
  • README.md
  • references/api_reference.md

Open the folder on GitHubat commit 01fc7b4

Compare with similar skills

Earnings Recap next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Earnings Recap compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Earnings Recap this skillhimself65/finance-skills3.4k—~1.7kAutomated safety check: PassMIT
Macro Regime Detectortradermonty/claude-trading-skills3k1 repos~1.2kAutomated safety check: PassMIT
Stock AnalysisCoWork-OS/CoWork-OS477—~685Automated safety check: PassMIT
Stock Explorerfreestylefly/wesight946—~525Automated safety check: PassMIT
Equiblessickn33/agentic-awesome-skills47k—~2.3kAutomated safety check: PassMIT
Fin Earnings Recapcriptogus/agent-evolve-network288—~898Automated safety check: PassMIT

Similar skills

  • Macro Regime Detector

    tradermonty/claude-trading-skills

    Detect structural macro regime transitions (1-2 year horizon) using cross-asset ratio analysis.

    3k GitHub starsUsed in 1 repo~1.2k tokens
    Business, Finance & HRAuto-check passed
  • Stock Analysis

    CoWork-OS/CoWork-OS

    Analyze stocks, ETFs, and crypto using Yahoo Finance and Alpha Vantage.

    477 GitHub stars~685 tokensUpdated today
    Business, Finance & HRAuto-check passed
  • Stock Explorer

    freestylefly/wesight

    A Yahoo Finance (yfinance) powered financial analysis tool. An agent skill from freestylefly/wesight.

    946 GitHub stars~525 tokensUpdated 8 days ago
    Business, Finance & HRAuto-check passed
  • Equibles

    sickn33/agentic-awesome-skills

    Query Equibles for US stock market data: SEC filing search, XBRL financial statements, earnings call transcripts, insider and 13F holdings, and daily prices.

    47k GitHub stars~2.3k tokensUpdated yesterday
    Business, Finance & HRAuto-check passed
  • Fin Earnings Recap

    criptogus/agent-evolve-network

    Build a post-earnings recap for a stock using yfinance — headline result vs estimates, quarterly financial trends, stock price reaction, and what changed.

    288 GitHub stars~898 tokensUpdated yesterday
    Business, Finance & HRAuto-check passed
  • Fin Yfinance Data

    criptogus/agent-evolve-network

    Fetch market and fundamental data via the yfinance Python library — quotes, OHLC history, financial statements, holders, dividends, options, and more.

    288 GitHub stars~806 tokensUpdated yesterday
    Business, Finance & HRAuto-check passed

More from himself65/finance-skills

All 25 skills in this repo
  • Company Valuation

    himself65/finance-skills

    Estimate a public company's intrinsic value with DCF, relative (peer multiple), and sum-of-the-parts (SOTP) methods, then blend them into an implied share price with upside/downside vs the market…

    3.4k GitHub stars~3.3k tokensUpdated 5 days ago
    Auto-check passed
  • Discord Reader

    himself65/finance-skills

    Read Discord for financial research through opencli connected to the Discord desktop app: servers, channels, members, recent messages in the active channel, and message search.

    3.4k GitHub stars~1.8k tokensUpdated 5 days ago
    Auto-check passed
  • Earnings Preview

    himself65/finance-skills

    Build a pre-earnings briefing for a stock from Yahoo Finance data (yfinance): the upcoming report date and timing, consensus EPS and revenue estimates with their range, the beat/miss track record…

    3.4k GitHub stars~1.4k tokensUpdated 5 days ago
    Auto-check passed
  • Estimate Analysis

    himself65/finance-skills

    Analyze sell-side analyst estimates and how they are changing, using Yahoo Finance data (yfinance): EPS and revenue consensus by period, estimate ranges and dispersion, revision trends over…

    3.4k GitHub stars~1.8k tokensUpdated 5 days ago
    Auto-check passed
  • Finance Sentiment

    himself65/finance-skills

    Fetch normalized stock sentiment across Reddit, X.com, financial news, and Polymarket from the Adanos Finance API: buzz score, bullish percentage, mention or trade counts, and trend.

    3.4k GitHub stars~1.3k tokensUpdated 5 days ago
    Auto-check passed
  • Fintel Data

    himself65/finance-skills

    Query Fintel (fintel.io) institutional market data through its REST API or official MCP server.

    3.4k GitHub stars~2.2k tokensUpdated 5 days ago
    Auto-check: notes

Works with

Questions about Earnings Recap

What does Earnings Recap do?

Analyze a company's most recent (or a specified past) earnings report from Yahoo Finance data (yfinance): actual vs estimated EPS, surprise size, revenue and margin trends, and the stock's price…. Earnings Recap is an agent skill from himself65/finance-skills. Analyze a company's most recent (or a specified past) earnings report from Yahoo Finance data (yfinance): actual vs estimated EPS, surprise size, revenue and margin trends, and the stock's price reaction.

When should I use Earnings Recap?

Earnings Recap fits situations like: the user asks how earnings went — beat; earnings surprise; quarterly results; the post-earnings move.

How do I install Earnings Recap in Claude Code?

Run `npx skills add himself65/finance-skills --skill earnings-recap -a claude-code`. Or copy the skill folder (plugins/market-analysis/skills/earnings-recap in himself65/finance-skills) into .claude/skills/earnings-recap in your project. Claude Code loads it when a task matches its description.

How do I install Earnings Recap in Codex?

Run `npx skills add himself65/finance-skills --skill earnings-recap -a codex`. Or copy the skill folder (plugins/market-analysis/skills/earnings-recap in himself65/finance-skills) into .agents/skills/earnings-recap in your project. Codex loads it when a task matches its description.

Can I use Earnings Recap in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add himself65/finance-skills --skill earnings-recap -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/earnings-recap, .gemini/skills/earnings-recap, .github/skills/earnings-recap and .opencode/skills/earnings-recap in your project.

What does Earnings Recap need to run?

SKILL.md names no scripts, command-line tools or credentials: Earnings Recap is instructions for the agent only. Our summary lists: Python 3.

Does Earnings Recap access the network?

SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.

Is Earnings Recap safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Earnings Recap use?

Earnings Recap is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Earnings Recap use?

About 1.7k tokens (SKILL.md is roughly 6.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.3k tokens, read only when the agent opens those files.

What are the alternatives to Earnings Recap?

Skills that share tags, products or a category with Earnings Recap: Macro Regime Detector (tradermonty/claude-trading-skills, 3k stars), Stock Analysis (CoWork-OS/CoWork-OS, 477 stars), Stock Explorer (freestylefly/wesight, 946 stars) and Equibles (sickn33/agentic-awesome-skills, 47k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Earnings Recap?

himself65 (a GitHub user) maintains it in himself65/finance-skills, which has 3,388 GitHub stars. The repository holds 25 skills in this directory. The repository was last updated on October 5, 2026.

Source: himself65/finance-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.