Vibe-Research: Skill for Claude Code

.agents/skills/earnings-analysis/SKILL.md

earnings-analysis is a skill for Claude Code, Codex from simonlin1212/Vibe-Research. It costs 216 tokens per session (2,186 once invoked), scanned A, original, MIT.

A rulebook for breaking down company financial reports, which often publish year-to-date totals rather than separate quarterly figures.

In plain words
What is it for?
Use it to analyze quarterly and annual earnings, margins, expenses, debt, cash flow, non-recurring items, and changes in financial performance.
Why use it?
It keeps comparisons consistent by separating single-quarter results, trailing-twelve-month totals, year-over-year growth, and one-time gains or losses. All derived figures must come from recorded calculations.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: installed under .agents/ (shared by several agents); mentions AGENTS.md.

This is simonlin1212/Vibe-Research's own configuration. It tells Claude Code and Codex how to work on Vibe-Research itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything Vibe-Research configures →

About the project

Vibe Research is a local financial research workspace in which an AI agent gathers market data, performs multi-step analysis, and preserves reports, evidence, calculations, and research history. It is for investment research across Chinese, US, and Hong Kong stocks, including market reviews, company studies, portfolios, debates, and backtesting. The catalogue contains skills and an instruction for working with this research agent.

simonlin1212/Vibe-Research · 2,435 stars · on GitHub · viberesearch.wiki

Reuse

Borrowing it

Nothing to install: this file belongs to simonlin1212/Vibe-Research. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/simonlin1212/Vibe-Research/main/.agents/skills/earnings-analysis/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/simonlin1212/Vibe-Research

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for earnings-analysis

README.md
[![agentmods](https://agentmods.dev/badge/skills/simonlin1212/vibe-research/earnings-analysis/github.svg)](https://agentmods.dev/skills/simonlin1212/vibe-research/earnings-analysis)
Your own site
<a href="https://agentmods.dev/skills/simonlin1212/vibe-research/earnings-analysis"><img src="https://agentmods.dev/badge/skills/simonlin1212/vibe-research/earnings-analysis/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for earnings-analysis

Your own site · 80×15
<a href="https://agentmods.dev/skills/simonlin1212/vibe-research/earnings-analysis"><img src="https://agentmods.dev/badge/skills/simonlin1212/vibe-research/earnings-analysis.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 216 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,186 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00216 $0.02186
Opus 5 $0.00108 $0.01093
Sonnet 5 $0.00043 $0.00437
Haiku 4.5 $0.00022 $0.00219

Measured 10d ago against content hash c4a0db40c1e0, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

earnings-analysis scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.agents/skills/earnings-analysis/SKILL.md · 73 lines

How it starts

The opening of the file, as written. The whole thing — 73 lines — stays where its author put it; the contents beside it link to each section on GitHub.

财报拆解(earnings-analysis)

对应 company-research SOP 第 2 阶段(financials)的口径说明书,也用于任何"业绩怎么样"的追问。原则:累计值是原料,单季是基本单位,TTM 看规模,最新期看转向;每一步拆分 / 求和 / 比率都是一次 calc 调用

0. 四条铁律

  1. A 股财报披露的是报告期累计值(Q1 / H1 / Q1–Q3 / 全年);任何"单季""环比"都必须经 quarterize 拆出来,不在脑子里减。
  2. 扣非 vs 归母:估值分子用扣非(一次性损益不能 ×4),增速主判用归母(与一致预期 EPS 同口径),两者并列报、差异大时必须解释(投资收益 / 补助 / 减值 / 公允价值变动)。
  3. 分子分母同期、同口径:同比对同季、TTM 对 TTM,不拿累计值比单季。
  4. 比率(毛利率 / 净利率 / 费用率 / 负债率 / 占比)一律 ratio(numerator, denominator, label, unit_in),两数同单位由你保证,calc 不换算单位。

1. 口径地图

口径 定义 calc 函数 用途 禁用
累计值(YTD) 报告期披露原值 —(证据) 原料 不直接比较不同长度的报告期
单季 Q1 = YTD(Q1);Qn = YTD(n) − YTD(n−1) quarterize(cumulative, unit, money=true) 基本单位 上一期缺失 → 该季无值,不拿平均代替
最新单季 最新非空单季 latest_quarter(single_quarters, unit, money=true) 估值分子(扣非)、转向判断
TTM 近 4 季之和 ttm_sum(single_quarters, end_period, unit, money=true) 规模、TTM PE 任一季缺失即 not_meaningful(不拿 3 季凑)
TTM 同比 TTM(end) ÷ TTM(end − 4 季) − 1 ttm_yoy(...) 可持续增速事实、交叉验证前瞻 CAGR 需 8 季连续
环比 Q(end) ÷ Q(end − 1) − 1 qoq(...) 拐点 / 动量信号 禁止当增速、禁止年化、禁止做 PEG 分母
单季同比 Q(end) ÷ Q(end − 4) − 1 growth_rate(current, base, label) 看"这一季相对去年"的方向 禁止做 PEG 分母(低基数假性吹大)
比率 两个同期同单位科目之比 ratio(numerator, denominator, label, unit_in) 毛利率 / 净利率 / 费用率 / 负债率 / 经营现金流 ÷ 净利润 分母 ≤ 0 → not_meaningful,如实写

EPS 序列(元/股)用 money=false;金额类 money=true 由 calc 归一单位。

2. 拆解流程(与 SOP financials 阶段一致)

  1. fetch_financials(★ 必需)→ 营收 / 归母 / 扣非 / EPS 的累计值序列(近 8–12 报告期)。
  2. quarterize 各跑一次:revenue_cum、net_profit_parent_cum、net_profit_deducted_cum(unit=元, money=true)。
  3. latest_quarter(扣非)→ 估值分子;ttm_sum(归母与扣非各一次)→ 中间量;ttm_yoy(主用归母,扣非并列)→ 增速事实;qoq(最新单季扣非)→ 拐点信号。
  4. 三表交叉(○ 可选端点):sina_income_statement / sina_balance_sheet / sina_cashflow(A 股)、em_global_income / em_global_balance / em_global_cashflowyahoo_financials(US / HK)。只作核对与补充科目(毛利、费用、经营现金流、应收、存货、有息负债),科目原值按源原样记录,不换算。
  5. 比率:毛利率 = ratio(毛利, 营收);净利率 = ratio(净利润, 营收);费用率 = ratio(某费用, 营收);经营现金流 / 净利润 = ratio(经营现金流净额, 净利润);资产负债率 = ratio(总负债, 总资产)——每个比率一次调用,分子分母同期同单位,记 calc id。
  6. 每次 calc 调用都传 --run-dir(CLI 会把该次计算记录写入运行目录的 calcs/,编排器收尾时合并为契约产物 calculations.json;不要手工写任何文件),阶段 JSON 引用 calculation_id;缺口走 SOP §2 的结构化 gaps。

Read the full file on GitHub · 73 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 10d ago First seen · 73 lines · 216 tokens per session scan A c4a0db40c1e0

Subscribe to this mod's changes

earnings-analysis is a skill published in the GitHub repository simonlin1212/Vibe-Research (2,435 stars, last pushed 3d ago), licensed MIT. It adds 216 tokens to every session and 2,186 once invoked, about $0.0011 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

daily-deep-brief

A scheduled, pre-market investment briefing for Hong Kong and United States stocks. A deterministic preparation step gathers data and an agent adds judgment, while a later step validates and publishes the result.

KCNyu/clawock · 163 tokens

hk-stock-analysis

A workspace-aware analysis workflow for Hong Kong-listed stocks. It retrieves prices, technical indicators, market comparisons, and news through a local data pipeline, then adds Hong Kong-specific investment context.

KCNyu/clawock · 126 tokens

us-stock-analysis

Workspace-aware US stock analysis for kcn. Routes through clawock analyze-us / clawock us-quotes instead of generic web search, then layers fundamental/technical/news analysis on top. Use when user asks to analyze a US ticker (e.g. "analyze AAPL", "look at RKLB", "compare TSLA vs NVDA"), check earnings, run…

KCNyu/clawock · 97 tokens

portfolio-swarm-review

Multi-agent swarm review of kcn's current holdings. Inspired by TauricResearch/TradingAgents framework already in workspace — three-tier analysis (analysts → bull/bear debate → risk debate + judge) with confidence scoring. Use for post-close reviews, holiday/next-session planning, pre-add sizing decisions, and any…

KCNyu/clawock · 90 tokens

investment-decision

Run a clawock investment decision — read the prepared request, research with the host's own tools, write decision.json with evidence and an explicit bull/bear debate, and let Python validate and settle. Use when the user asks for an investment decision or a clawock run request is present.

KCNyu/clawock · 62 tokens

investment-decision

Read the clawock request file, write decision.json, let clawock validate. Use when a clawock run request is present in .clawock/work/.

KCNyu/clawock · 36 tokens