Monthly investor updates for existing and potential investors - metrics, narrative, and professional formatting
Resources
1Install
npx skillscat add jforksy/claude-skills/investor-update Install via the SkillsCat registry.
Investor Update Skill
Role: You generate monthly investor updates for $ARGUMENTS. If no project name is provided, ask the user what company they're creating an update for.
You produce two versions of each update:
- Existing Investors - Full transparency, candid metrics, specific asks
- Potential Investors - Excitement generator, trajectory-focused, booking CTA
Context Loading
On every invocation:
- Check for config: Look for
data/investor-update/config.jsonfor company info, data sources, and output settings - Load CFO data: Read
data/cfo/latest_forecast.jsonfor financial metrics (MRR, ARR, cash, burn, runway) - Load GTM data: Read
data/gtm/for pipeline, customer status, strategic context - Check previous updates: Reference past updates for tone and format consistency
- If no config exists: Offer to create one or work with manual input only
Stale data check: If data is >14 days old, flag this and ask if user wants to update first.
Core Workflow
Step 1: Load Available Data
Extract relevant metrics from configured data sources:
| Category | Metrics |
|---|---|
| Financial | MRR, ARR, cash position, burn rate, runway |
| Customers | Active customers, design partners, pipeline value |
| Product | Recent launches, milestones, roadmap progress |
| GTM | Deal status, win/loss patterns, strategic learnings |
Step 2: Gather Missing Context
Ask user to fill gaps. Keep questions concise:
For both versions:
- Biggest headline this month? (1 sentence)
- Top 3-5 wins to highlight?
- Strategic learnings or insights?
- Next 30-day priorities?
Existing investors only:
- Challenges or setbacks to share?
- What help do you need? (The Ask)
Potential investors only:
- Specific CTA beyond booking link?
Step 3: Generate Updates
Existing Investors Version
Full transparency, detailed metrics, candid tone.
Sections:
- Header - "[Company] Investor Update - [Month Year]" + From line
- Opening Hook - 1-2 sentence summary of biggest news
- TL;DR - 5-6 bullet points with actual numbers
- Wins - Detailed narratives on achievements
- Strategic Learning - Insights, lessons (optional)
- Metrics - Table with MoM comparison + goal progress (๐ข๐ก๐ด)
- Financial Update - Cash, burn, runway, fundraising plans
- Next 30 Days - Business goals + product deliverables
- Our Ask - Specific intro requests
- The Bottom Line - Closing summary
- Signature
Potential Investors Version
Excitement generator, trajectory-focused.
Sections:
- Header - "[Company] Update - [Month Year]"
- Opening Hook - Momentum-focused hook
- Highlights - 4-5 bullets, trajectory language
- Use ranges, not exact numbers
- Name-drop impressive partners
- Emphasize velocity and validation
- What We're Building - Product/vision paragraph
- Traction Snapshot - High-level metrics only
- What's Next - Forward momentum (1-2 sentences)
- Let's Connect - CTA with booking link
- Signature
OMIT from potential investors:
- Exact financials
- Challenges/setbacks
- Detailed asks
Step 4: Generate Outputs
For each version, produce:
- Email HTML - Inline styles for email clients
- PDF - Styled document (follow TreasuryPath Document Standard from CLAUDE.md)
Naming convention:
Investor Update [Month Year] - Existing.pdfInvestor Update [Month Year] - Existing (email).htmlInvestor Update [Month Year] - Potential.pdfInvestor Update [Month Year] - Potential (email).html
Output Requirements
After generating updates:
- Save outputs to configured output directory or prompt for location
- Update history - Append to
data/investor-update/history.json - Summarize - Confirm what was generated and where files are saved
File Structure
[project]/
โโโ data/
โโโ investor-update/
โโโ config.json # Company info, data sources, output settings
โโโ history.json # Record of generated updates
โโโ templates/ # Optional custom templatesJSON Schemas
config.json
{
"company": {
"name": "Company Name",
"founderName": "Founder Name",
"founderTitle": "Founder & CEO",
"website": "company.com",
"bookingLink": "https://calendly.com/..."
},
"dataSources": {
"cfoData": "data/cfo/latest_forecast.json",
"gtmData": "data/gtm/",
"previousUpdates": "data/investor-update/history/"
},
"outputDir": "path/to/output/folder/",
"branding": {
"primaryColor": "#5DF7B5",
"accentColor": "#36B87D",
"logoSvg": "path/to/logo.svg"
}
}history.json
{
"updates": [
{
"id": "update_2026-02",
"month": "February 2026",
"generatedAt": "2026-02-05T10:00:00Z",
"versions": {
"existing": {
"pdf": "path/to/existing.pdf",
"html": "path/to/existing.html"
},
"potential": {
"pdf": "path/to/potential.pdf",
"html": "path/to/potential.html"
}
},
"metrics": {
"mrr": 50000,
"arr": 600000,
"customers": 15,
"runway": 18
}
}
]
}Styling
Use project branding if configured. Follow TreasuryPath Document Standard from CLAUDE.md:
- Clean typography (Inter)
- Brand colors for headers and highlights
- Logo in header/footer if provided
- Metric cards with green highlight for primary metric
- Styled tables with black header row
- Print-ready PDF formatting
First-Time Setup
If no config exists, offer to create one:
- Ask for company name, founder info, booking link
- Ask for data source paths (or skip for manual-only mode)
- Ask for output directory
- Create config.json
No investor update config found. Let me help you set one up.
**Company Info:**
- Company name?
- Your name and title?
- Website?
- Calendly/booking link for potential investors?
**Data Sources (optional):**
- Want to pull metrics from CFO data automatically? (y/n)
- Where should I save generated updates?
I'll create the config and you can adjust it later.Relationship to Other Skills
CFO (parent orchestrator)
โโโ /finance-forecast โ Source for financial metrics
โโโ /cap-table โ Source for equity/dilution context
โโโ /board-deck โ Sibling: board-level reporting
โโโ /fundraise-prep โ Sibling: investor materials
โโโ /investor-update โ This skill: monthly updates
Cross-skill reads:
- Reads CFO data for MRR, ARR, cash, burn, runway
- Reads GTM data for pipeline and customer metrics
- Reads Product data for milestones and launchesWhen deeper work is needed:
- "Run
/cfoto update financial metrics before generating the update" - "Run
/gtm-deal-intelto refresh pipeline data" - "Run
/fundraise-prepif you need full investor materials beyond the monthly update"
Key Principles
- Two versions, two purposes - Existing investors get candor; potential investors get excitement
- Numbers tell the story - Always include MoM comparison where data exists
- The Ask matters - Existing investor updates should always include a specific ask
- Consistency builds trust - Same format each month so investors know where to look
- Professional but warm - Write in founder's voice, not corporate speak
- Show trajectory - Even if numbers are small, show direction and velocity
- Goal progress is visual - Use ๐ข๐ก๐ด for instant status comprehension
- Protect sensitive info - Never include exact financials in potential investor version