# What Is the earnings-review Skill? A Primary-Source Analysis Tool for Financial Filings

> Discover the earnings-review skill for direct analysis of financial filings like 10-Ks and 10-Qs. Understand company performance from primary sources, not summaries.

- Repository: [Xbt Lin/ai-berkshire](https://github.com/xbtlin/ai-berkshire)
- Tags: deep-dive
- Published: 2026-07-05

---

**The `earnings-review` skill is a Claude-Code slash-command that performs deep, primary-source-driven analysis of company earnings filings (10-K/10-Q, annual reports, transcripts) by reading original documents directly rather than relying on filtered second-hand summaries.**

In the `xbtlin/ai-berkshire` repository, this skill implements a rigorous four-stage pipeline designed to mirror the due diligence approach of value investors like Warren Buffett and Li Lu. Unlike conventional research workflows that aggregate analyst reports and news headlines, the `earnings-review` skill enforces strict data provenance and validation standards.

## Architecture of the earnings-review Skill

The skill is defined in [`skills/earnings-review.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/earnings-review.md) and executes through a structured pipeline that prioritizes **original document authenticity** over intermediary interpretations.

### Stage 1: Data Availability Classification (资料可得性评级)

The workflow begins by classifying source availability into A/B/C levels. This rating determines analysis depth and confidence bounds.

- **A-level**: Full original filings available (10-K/10-Q, complete transcripts)
- **B-level**: Partial documents or delayed SEC EDGAR access
- **C-level**: Reliance on secondary aggregation only

According to the source code, B-level analyses trigger explicit annotations marking derived numbers as "非原始来源" (non-primary source) 【source】.

### Stage 2: Primary Source Acquisition (获取一手资料)

The skill launches parallel background agents via the `Task` tool to fetch raw reports from:
- SEC EDGAR (US filings)
- HKEX (Hong Kong Exchange)
- 巨潮资讯 (CNINFO for Chinese A-shares)
- Company IR websites directly

When full text is unavailable, the skill falls back to structured data merging defined in [`skills/financial-data.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/financial-data.md), maintaining lineage tracking for all data points 【source】.

### Stage 3: Financial Data Extraction and Validation (核心财务数据提取与验证)

This stage extracts income statement, cash flow, and balance sheet metrics, then runs cross-validation using [`tools/financial_rigor.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/financial_rigor.py). The validation ensures:
- Revenue figures match between filings and investor presentations
- Market cap calculations verify against exchange data
- Non-GAAP reconciliations check against standard adjustments

The `cross-validate` and `verify-market-cap` functions in [`tools/financial_rigor.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/financial_rigor.py) provide the data integrity checks required before analysis proceeds 【source】.

### Stage 4: MD&A Deep Reading and Tone Analysis (管理层讨论精读)

The final stage analyzes Management Discussion & Analysis (MD&A) sections for qualitative signals:
- **Tone cues**: 坦诚 (frank), 清晰 (clear), 模糊 (vague), 转移 (deflection), 归因外部化 (external attribution)
- **Promise tracking**: Compares forward guidance against actual outcomes
- **Risk surfacing**: Flags related-party transactions, contingent liabilities, and accounting policy changes

This stage generates the judgment-focused insights that differentiate primary-source research from quantitative screening 【source】.

## earnings-review vs. Secondary Research: Key Differences

The fundamental distinction lies in **information provenance and processing depth**.

**Secondary research** aggregates filtered information—analyst summaries, news headlines, and data-site snapshots. These sources introduce delays, editorial bias, and missing contextual nuance.

**The `earnings-review` skill** explicitly rejects second-hand information. As noted in the design documentation at lines 13-19 of [`skills/earnings-review.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/earnings-review.md), the workflow insists on reading primary documents directly, eliminating the "telephone game" of financial interpretation 【source】.

Key differentiators include:

- **Source fidelity**: Starts from original filings rather than intermediary summaries
- **Data validation**: Requires every key number to validate against at least two independent sources
- **Narrative analysis**: Evaluates management tone and commitment, not just disclosed metrics
- **Output format**: Produces concise, thesis-focused reports answering whether earnings beat expectations and how they impact the investment case

## How to Use the earnings-review Skill

The skill exposes as a slash-command within Claude-Code environments configured for the ai-berkshire project.

Fetch a specific quarterly filing:

```markdown
/earnings-review 腾讯 2025Q4

```

Automatically select the most recent filing:

```markdown
/earnings-review 美团 最新

```

Handle incomplete source material with B-level classification:

```markdown
/earnings-review 拼多多 2024年报

```

When invoked, the command triggers the four-stage pipeline, returning a structured report that includes validated financial tables, MD&A sentiment analysis, and an investment thesis impact assessment.

## Implementation Files and Dependencies

The `earnings-review` skill relies on specific files within the repository:

| File | Role |
|------|------|
| [`skills/earnings-review.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/earnings-review.md) | Full specification including the four-stage execution pipeline and validation steps |
| [`skills/financial-data.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/financial-data.md) | Fallback data aggregation strategy when original filings are missing |
| [`tools/financial_rigor.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/financial_rigor.py) | Cross-validation commands (`cross-validate`, `verify-market-cap`) for data integrity |
| [`tools/report_audit.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/report_audit.py) | Final "准出" (quality gate) audit before report publication |
| [`codex-prompts/earnings-review.md`](https://github.com/xbtlin/ai-berkshire/blob/main/codex-prompts/earnings-review.md) | Auto-generated Claude-Code prompt mapping markdown specs to runnable commands |

These components implement a **primary-source-first workflow** that stands apart from secondary research approaches.

## Summary

- The **`earnings-review` skill** is a Claude-Code slash-command for primary-source financial analysis defined in `xbtlin/ai-berkshire`.
- It executes a **four-stage pipeline**: data availability classification, primary source acquisition, financial validation using [`tools/financial_rigor.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/financial_rigor.py), and MD&A tone analysis.
- Unlike secondary research, it **rejects filtered information** and reads original 10-K/10-Q filings and transcripts directly.
- Usage follows the pattern `/earnings-review [company] [quarter/年份/最新]` with automatic fallback handling for incomplete sources.

## Frequently Asked Questions

### What is the earnings-review skill in ai-berkshire?

The `earnings-review` skill is a specialized Claude-Code command defined in [`skills/earnings-review.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/earnings-review.md) that automates deep analysis of company earnings filings. It fetches original 10-K, 10-Q, and annual report documents, validates financial data against multiple sources, and analyzes management tone to produce investment-grade research reports.

### How does earnings-review differ from using financial data websites?

While financial data sites provide aggregated metrics and analyst summaries, the `earnings-review` skill reads **primary documents directly** from SEC EDGAR, HKEX, and company IR sites. It validates every key number through [`tools/financial_rigor.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/financial_rigor.py) and analyzes Management Discussion & Analysis sections for qualitative signals like tone and commitment tracking—capabilities unavailable in standard data terminals.

### What happens when original filings are unavailable for earnings-review?

When primary sources are missing, the skill marks the analysis as **B-level availability** and annotates derived figures as non-primary sources. It then falls back to structured data aggregation defined in [`skills/financial-data.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/financial-data.md), maintaining transparency about data lineage while still providing analytical value.

### Which tools support the earnings-review validation process?

The validation relies on [`tools/financial_rigor.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/financial_rigor.py) for cross-referencing financial metrics and [`tools/report_audit.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/report_audit.py) for final quality assurance. These Python modules provide the `cross-validate` and `verify-market-cap` functions that ensure data integrity before the final report generation stage.