longbridge-buffett-moat-analyzer
Prompt-only Buffett-style moat diagnostic. Given a single ticker, produces a five-dimension verdict — moat / financial health / management / valuation / long-term visibility — closed with a Buffett-voice narrative, an explicit holding-period expectation, and a mandatory data-source appendix whose final row is a one-line reconciliation summary.
Response language: detect the user's input language (Simplified Chinese / Traditional Chinese / English) and render the entire report — every section heading, label, dimension write-up, Buffett-voice narrative, user-education block, appendix row, reconciliation summary, and disclaimer — in that one language. Do not mix languages within a single output. The output template in
references/output.mdis shown in English for reference; translate it as a whole into the user's language using the label-translation lookup in that file. The error / data-source tables inside this SKILL.md remain 3-column because they document what the skill says under each language — that 3-column form is for the skill's reference docs, not for the user-facing report.
When to use
- "巴菲特会买茅台吗" / "巴菲特會買茅台嗎" / "would Buffett buy Moutai"
- "帮我用巴菲特的方法诊断 700.HK" / "幫我用巴菲特的方法診斷 700.HK" / "diagnose 700.HK Buffett-style"
- "AAPL 有护城河吗" / "AAPL 有護城河嗎" / "does AAPL have a moat"
- "这只股票是不是好生意" / "這隻股票是不是好生意" / "is this a good business"
- "NVDA 的护城河宽不宽" / "NVDA 的護城河寬不寬" / "how wide is NVDA's moat"
- "我持有比亚迪 6 个月了,长期值得拿吗" / "我持有比亞迪 6 個月了,長期值得拿嗎" / "I've held BYD 6 months, worth holding long-term"
For Graham-style net-net cigar-butt analysis, use longbridge-graham-stock-analysis. For pure DCF intrinsic value, use longbridge-dcf. For three-statement reading, use longbridge-financial-report. For comparable peers, use longbridge-peer-comparison.
Cognitive frame (do not skip)
Buffett strategy is long-term ownership of high-quality businesses, not market timing. Two things every output must surface alongside the score:
- Holding-period expectation — Buffett's reference is "ideally forever, at minimum 3 years." If the user has a < 3-year capital horizon, warn explicitly that this framework is not the right lens.
- Price vs business quality — "A great business at a fair price is far better than a fair business at a great price." The valuation dimension is a margin-of-safety check on a separately-scored quality verdict; never collapse quality and price into one number.
Two failure modes the user must be able to distinguish:
- "Great business, wait for price" → moat wide, financials clean, but valuation rich → 🟡 watchlist with a target-price band, not a buy.
- "Cheap but no moat" → low PE/PB but moat narrow or absent → ❌ not a Buffett candidate; redirect to Graham (
longbridge-graham-stock-analysis).
Workflow
- Resolve symbol to
<CODE>.<MARKET>(e.g.00700.HK,AAPL.US,600519.SH). - Sector triage:
- Bank / insurance / brokerage → moat framework still applies but tweak financial-health dimension (use ROA, NIM, NPL, capital adequacy in place of FCF/leverage). Note this in the report.
- Pre-revenue / heavy-loss / lifecycle-stage-zero biotech → halt: Buffett framework needs a track record; suggest the user use
longbridge-fundamentalfor an early-stage view instead. - ST / 退市风险 / listed < 3 years → emit report but tag earnings-stability and capital-allocation dimensions as "insufficient history" and pro-rate scores.
- Fetch raw data via Longbridge CLI first (parallel where possible). See §CLI. If
longbridgeis missing, fall back to MCP (see §MCP fallback). Use WebSearch only for items genuinely outside Longbridge (industry outlook, qualitative management signals, brand surveys, regulatory news). - Reconciliation gate (勾稽校验) — runs before any scoring. See §Reconciliation. Two-state outcome:
- Pass (every check within tolerance) → proceed to scoring. A one-line summary of the result still appears at the end of the data-source appendix.
- Fail (any check exceeds tolerance) → halt scoring, emit a halt message naming the failing check and gap, still print the data-source appendix and reconciliation summary.
- Five-dimension scoring — each dimension gets a 1–5 star rating with concrete evidence. See
references/scoring.mdfor the rubric per dimension. - Holding-period mapping — derive expected minimum hold from moat width (★★★★★ → 5y+, ★★★★ → 3–5y, ★★★ → 1–3y, ★★ or below → not a Buffett candidate). See
references/scoring.md§Holding-period. - Output the report defined in
references/output.md— diagnostic card → 5-dimension detail → Buffett-voice narrative → user education block → Data Source Appendix (mandatory) ending with the reconciliation summary line. Close with the disclaimer variant matching the user's input language (single-language only — seereferences/output.md§Disclaimer variants).
CLI
Run longbridge <subcommand> --help to verify exact flags before each call — do not hard-code flag names without verification. Primary calls (run in parallel):
# Balance sheet — leverage, equity (PB / ROE denominator), debt
longbridge financial-report <SYMBOL> --kind BS --report af --format json # last 5 annual (10y ideal — fetch as many as available)
longbridge financial-report <SYMBOL> --kind BS --report qf --format json # last 4 quarterly
# Income statement — ROE, gross margin, earnings stability, EPS trend
longbridge financial-report <SYMBOL> --kind IS --report af --format json
longbridge financial-report <SYMBOL> --kind IS --report qf --format json
# Cash flow — FCF = OCF − Capex, capex intensity, buyback / dividend cash outflow
longbridge financial-report <SYMBOL> --kind CF --report af --format json
longbridge financial-report <SYMBOL> --kind CF --report qf --format json
# Snapshot: PE, PB, market cap, dividend yield, shares outstanding
longbridge calc-index <SYMBOL> --format json
longbridge quote <SYMBOL> --format json
# Long-window history for valuation-vs-history band
longbridge kline <SYMBOL> --period day --count 2500 --format json # ~10 years for PE/PB percentile
# Dividend & buyback history (capital allocation track record)
longbridge dividend <SYMBOL> --format json
longbridge corporate <SYMBOL> --format json # buyback / split / spin-off
# Ownership & insider activity (management alignment, capital allocation signals)
longbridge ownership <SYMBOL> --format json
longbridge insresearch <SYMBOL> --format json
# Company profile + industry classification (for moat-type hypothesis)
longbridge basicinfo <SYMBOL> --format json
longbridge company-profile <SYMBOL> --format json
# Peer set for moat / margin / ROE benchmarking
longbridge peer-comparison <SYMBOL> --format json
WebSearch fallback — only for items not available from Longbridge
| Missing data | WebSearch query pattern |
|---|---|
| Industry runway / disruption risk | "<industry> 2025 outlook", "<industry> disruption risk" |
| Brand / pricing-power signals | "<company> price increase 2024 2025", "<brand> brand value ranking" |
| Management qualitative track record | "<CEO name> capital allocation", "<CEO name> shareholder letter" |
| Regulatory / policy overhangs | "<sector> regulation <region> 2025" |
Latest insider transactions if ownership is stale | "<ticker> insider selling 2025" |
Every WebSearch-sourced figure must be tagged [Source: WebSearch — <publisher>, <date>, <url>] in the appendix; never silently mix it with Longbridge data.
Reconciliation (勾稽校验)
Before any scoring, verify the fetched figures are internally consistent. Reconciliation is user-visible in this skill — a one-line summary always appears as the final row of the Data Source Appendix (per the design doc's transparency requirement). If a check fails, scoring