Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 6 additions & 5 deletions context/MAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ skills/ Skill collection and skill-level documentation
signal-sweep/ Discovery — scan the universe, surface tickers
sec-edgar-skill/ Data — SEC EDGAR filings, ownership, 13F holders
market-scout/ Data — price, peers, transcripts (Yahoo Finance)
bottom-up-analyst/ Analysis — one ticker → auditable memo (the conductor)
bottom-up-analyst/ Analysis — one operating company → scoped answer or memo
pitch-like-lou/ Voice — finished thesis → VIC-style pitch
context/ Agent-maintained project documentation
```
Expand Down Expand Up @@ -64,14 +64,14 @@ sessions, and unrelated settings remain profile-local and untouched.

```mermaid
flowchart TD
SS[signal-sweep<br/>surfaces tickers] --> BUA[bottom-up-analyst<br/>deep dive + memo]
SS[signal-sweep<br/>surfaces tickers] --> BUA[bottom-up-analyst<br/>analysis + optional memo]
BUA --> SEC[sec-edgar-skill<br/>filings]
BUA --> MS[market-scout<br/>price / peers / transcripts]
BUA --> PLL[pitch-like-lou<br/>renders pitch]
```

- `bottom-up-analyst` is the brain and conductor: it decides what to pull, reasons over it,
and writes the memo. The data skills never decide what matters.
- `bottom-up-analyst` selects evidence, reasons over it, and produces the requested analysis or
full memo. Retrieval contracts and source semantics remain in the data skills.
- The two filing/market data skills know nothing of each other and are swappable.
- `signal-sweep` and SEC-facing `sec-edgar-skill` commands read `EDGAR_IDENTITY` and use
on-disk cache contracts defined in their `_common.py` modules. The SEC skill's routine 13F
Expand All @@ -80,7 +80,8 @@ flowchart TD

## Production order

`signal-sweep` → `bottom-up-analyst` → memo → optionally `pitch-like-lou`.
For a full thesis: `signal-sweep` → `bottom-up-analyst` → memo → optionally
`pitch-like-lou`.

For the package installation and isolated-profile workflow, start at the root
[`README.md`](../README.md). For the collection overview, start at
Expand Down
8 changes: 5 additions & 3 deletions skills/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ they form a research pipeline.
| **Discovery** | [`signal-sweep`](signal-sweep/) | Scan SEC filings and market data to surface new investment ideas. |
| **Data** | [`sec-edgar-skill`](sec-edgar-skill/) | Retrieve and extract SEC filings, ownership, and 13F holder data. |
| **Data** | [`market-scout`](market-scout/) | Pull prices, returns, peers, sector screens, and transcripts. |
| **Analysis** | [`bottom-up-analyst`](bottom-up-analyst/) | Turn one ticker into an auditable investment memo. |
| **Analysis** | [`bottom-up-analyst`](bottom-up-analyst/) | Turn one operating company into scoped analysis or an auditable investment memo. |
| **Voice** | [`pitch-like-lou`](pitch-like-lou/) | Render a finished thesis as a VIC-style pitch. |

## Data flow
Expand All @@ -28,15 +28,17 @@ they form a research pipeline.
```

`bottom-up-analyst` is the conductor. It decides what to pull, reasons over the evidence,
values the business, and writes the memo. The data skills never decide what matters.
values the business, and produces the requested analysis or full memo. The data skills supply
the underlying evidence.

`signal-sweep` and `sec-edgar-skill` are independent data sources. `market-scout` is also
swappable: the analyst can use a different market-data provider without changing its
reasoning workflow.

The voice skill renders from a finished thesis; it is not an idea generator.

**Production order:** signal-sweep → bottom-up-analyst → memo → optionally pitch-like-lou.
**Production order for a full thesis:** signal-sweep → bottom-up-analyst → memo → optionally
pitch-like-lou.

## Progressive disclosure

Expand Down
119 changes: 55 additions & 64 deletions skills/bottom-up-analyst/README.md
Original file line number Diff line number Diff line change
@@ -1,64 +1,55 @@
# Bottom-Up Analyst

An [agent skill](SKILL.md) that turns **one company** into an **earned investment thesis**,
written up as a detailed, auditable due-diligence memo. It is the analytical engine of a
bottom-up research stack: given a ticker or a name, it drives SEC-filing and market-data
tools for grounding, reasons over the evidence, classifies the business into an archetype,
triangulates an intrinsic-value range, tries to kill its own thesis, and writes the memo.

## Where it sits

The **analyst** in a three-layer stack: the [data skills](../sec-edgar-skill/) ground it, and
[`pitch-like-lou`](../pitch-like-lou/) renders a pitch from its memo. The analyst is the missing
middle — it decides what to pull, reasons to a verdict, values the business, and writes the memo;
the data skills decide nothing and Lou assumes the work is already done. See the
[stack overview](../README.md) for how the four compose. **Production order:** analyst → memo →
(optionally) Lou pitches from it; the definition of done is a **pitch-ready memo**.

## What it does

- **Classifies** the company into one of six archetypes and loads the matching playbook —
*compounder, hypergrowth, cyclical, turnaround/inflection, special-situation, deep-value* —
so the right questions get the weight. (Lou's three value-investing shapes are a subset;
the rest extend past where he worked. "Anything else" falls back to the core method.)
- **Normalizes** GAAP into owner earnings — maintenance vs. growth capex, stock comp, deferred
revenue, one-offs — and shows capital allocation as a year-by-year trend.
- **Analyzes competitive position** filings-first (including *peers'* filings for management
commentary), using the web only for what filings genuinely can't give — and labels it.
- **Values** by triangulation, weighted by archetype, with a **reverse-DCF** ("what's priced
in?") as a first-class lens alongside forward DCF, EPV, and multiples.
- **Stress-tests** every thesis against the archetype's disqualifiers and a borrowed
discipline: separate what you *know* from what you *believe*, concede the weak points, never
let conviction outrun the evidence.

## Layout

- `SKILL.md` — the skill itself (the entry point an agent loads): the loop, archetype routing,
how it drives the tools, and the valuation tooling.
- `references/` — lazily-loaded guides: the memo template, normalization, competitive analysis,
valuation, ownership signals, and one playbook per archetype (`references/archetypes/`).
- `scripts/` — thin, self-documenting valuation tools:
- `dcf.py` — two-stage DCF, **forward** (assumptions → intrinsic value) and **reverse**
(price → implied growth), with a bear/base/bull sensitivity table.
- `epv.py` — Earnings Power Value, the no-growth floor.

## Setup

The valuation scripts are pure-Python (standard library only) — no install needed:

```bash
python scripts/dcf.py --help
python scripts/epv.py --help
```

For the data layer, install and configure [`sec-edgar-skill`](../sec-edgar-skill/) (it needs an
`EDGAR_IDENTITY`) and, for market data, [`market-scout`](../market-scout/); this skill drives
those tools but does not re-document them.

## A note on scope

This skill produces analysis, not advice. It is a tool for doing research rigorously and
honestly; it does not know your circumstances and nothing it writes is a recommendation to buy
or sell a security. Its entire design — the honesty markup, the pre-mortem, the
verified-vs-assumed tagging — exists to keep an LLM's fluent prose tethered to evidence, so
that a human can audit every claim and reach their own judgment.
# Bottom-Up Analyst

An [agent skill](SKILL.md) for substantive, long-only fundamental research on one
non-financial operating company. It turns filing, market, industry, and ownership evidence
into a scoped answer or a full, auditable due-diligence memo.

The framework is designed for companies whose operating economics and cash flows can be
underwritten. It is not the primary framework for banks, insurers, REITs, funds, or
predominantly binary-asset companies.

## What it does

- Scales the work to the question instead of forcing every request into a full memo.
- Selects one or more optional analytical lenses: compounder, hypergrowth, cyclical,
turnaround, special situation, or deep value.
- Reconciles reported results to normalized economics without double-counting stock
compensation, leases, working capital, or enterprise-to-equity adjustments.
- Underwrites competitive position, management incentives, ownership, and governance when
they are material to value.
- Chooses valuation methods for the business rather than mechanically running every method.
- Separates verified evidence, estimates, assumptions, and external evidence, with citations.
- Builds the strongest countercase and lets conviction fall when evidence is incomplete.

## Layout

- `SKILL.md` — workflow, evidence discipline, resource routing, and script examples.
- `references/memo_template.md` — adaptable full-memo skeleton.
- `references/guide_*.md` — normalization, competition, valuation, and
ownership/governance guidance.
- `references/archetypes/` — optional playbooks for six common thesis shapes.
- `scripts/dcf.py` — forward, explicit-forecast, and reverse enterprise DCF.
- `scripts/epv.py` — no-growth Earnings Power Value arithmetic.

## Setup

The valuation scripts use only the Python standard library:

```bash
python scripts/dcf.py --help
python scripts/epv.py --help
```

They require material assumptions explicitly. `dcf.py` accepts free cash flow to the firm
(FCFF), discounts it at WACC, and bridges enterprise value to equity using net claims: debt and
other senior claims less non-operating assets.

Install and configure [`sec-edgar-skill`](../sec-edgar-skill/) for SEC evidence and
[`market-scout`](../market-scout/) for market data and transcripts. Each data skill owns its
runtime, cache, and source instructions.

## Scope and judgment

This skill supports research, not personalized investment advice. Its memo is an auditable
argument rather than a recommendation tailored to a person's circumstances. A human remains
responsible for checking the evidence, assumptions, suitability, and decision.
Loading
Loading