Back to Projects

Investment Memo Automation

A fully automated investment research tool that generates a professional research memo on any company — public or private — with a single command. It runs a pipeline of AI agents in parallel, gathers data from the web, and outputs a formatted Word document saved locally and auto-opened when done.

AI AgentsAutomationInvestment ResearchMarket IntelligencePythonClaude API

Try it — enter a company name

Generate a live AI-powered investor research memo on any public or private company

Powered by Claude AI · Kindly Limit Report Generation to 3

Cost Per Run

$0.04 – $0.08

~5,000–8,000 Claude API tokens per full run

Use Case

Built for investment professionals who need fast, structured intelligence on companies — without hours of manual research.

Buy-Side Investors
Rapidly screen public companies before earnings calls or position sizing. Get 4-quarter financials, competitive context, and sentiment signals from historical transcripts — all in one structured memo, in minutes.
Private Equity
Accelerate deal sourcing and pre-LOI diligence on private companies. Surface funding history, investor base, headcount growth trends, and competitive positioning before committing analyst hours to a target.
Venture Capital
Evaluate early-stage and growth companies at scale. Instantly pull TAM/SAM/SOM estimates, founder backgrounds, recent news, and competitive landscape — turning first-look research from a day-long task into a five-minute read.

What It Does

Public Companies

Full investment memo including 4-quarter financial tables — revenue, gross profit, net income, EPS, and YoY growth — pulled directly from the company's investor relations page.

+ Sentiment Analysis Coming Soon

Historical earnings call transcripts analyzed for sentiment shifts, management tone, and forward guidance signals.

Private Companies

Comprehensive profile built from web signals — funding rounds, investor base, headcount growth, news coverage, competitive positioning, and any known ARR or revenue indicators from funding data. Financials step is skipped automatically.

How It Works — The 4-Step Pipeline

Agents are orchestrated in a specific order to maximize accuracy and efficiency.

Step 1
Public / Private CheckSequential — runs first

Determines whether the company is publicly traded. This runs before everything else because its result controls what happens in Step 3.

Step 2
9 Parallel Research AgentsParallel — all fire simultaneously

The core of the system. All 9 agents run at the same time using Python's ThreadPoolExecutor, each doing independent research on a different dimension of the company.

Step 3
FinancialsConditional — public companies only

Only runs if the company is public. Pulls financial data from the company's investor relations page using the ticker and IR URL from Step 1. Skipped entirely for private companies.

Step 4
Synthesize + DocumentSequential — runs last

The Synthesizer agent merges all outputs into a structured 9-section investor memo — including competitive landscape and risks tables — then saves it as a .docx file and auto-opens it.

The Agents — What Each One Does

AgentRole
public_privateDetermines if the company is publicly listed on any exchange globally (NYSE, NASDAQ, LSE, TSX, ASX, etc.) — returns ticker, exchange, market cap, and IR URL
overviewCompany description, founding year, HQ, products/services, business model, and stage
market_sectorPrimary sector, sub-sector, target customers, geography, market trends, and regulatory environment
tam_sam_somMarket size estimates — Total Addressable Market, Serviceable Addressable Market, Serviceable Obtainable Market
competitorsDirect and indirect competitors, competitive positioning
fundingAll funding rounds (Crunchbase + web search), investors, total raised, last valuation
foundersFounding team profiles (LinkedIn scraper + web search)
employeesCurrent headcount, growth trend, and hiring signals
news5 most recent news items about the company (2025–2026 prioritized)
financialsPublic companies only — last 4 quarters of revenue, gross profit, net income, EPS, YoY growth pulled from investor relations
synthesizerMerges all agent JSON outputs into a structured 9-section investor memo via Claude — including competitive landscape table and risks table

Tech Stack

Claude API

Powers every agent — each does web search → ask Claude → return structured JSON

DuckDuckGo

Free web search, no API key required

Playwright

Headless browser for LinkedIn scraping (with cookie caching after first login)

Crunchbase

Funding data via public pages + web search fallback

Google Docs API

Creates and saves the final .docx report

Caching

Each agent's output saved as JSON in outputs/<CompanyName>/; re-running reuses cached data unless --no-cache is passed

Output Structure

outputs/

<Company Name>/

public_private.json

overview.json

market_sector.json

tam_sam_som.json

competitors.json

funding.json

founders.json

employees.json

financials.json

news.json

Investment_Opportunity_<Company Name>_<Date>.docx