NEW Browse AI tools across categories — updated daily. See what's new →

Dexter Finance

Build autonomous financial research agents that analyze stocks, SEC filings, earnings calls, and market data to produce investment reports. Use when: automating investment research, building AI-pow...

Version1.0.0
LicenseMIT
Token count~1,451
UpdatedJun 5, 2026

Build autonomous financial research agents that analyze stocks, SEC filings, earnings calls, and market data to produce investment reports. Use when: automating investment research, building AI-powered stock analysis, creating financial due diligence agents.

Install

Quick install

via npx skills · works with 57+ agents
npx skills add https://github.com/virattt/dexter
Or pick agent:
npx skills add virattt/dexter --agent claude-code
npx skills add virattt/dexter --agent cursor
npx skills add virattt/dexter --agent codex
npx skills add virattt/dexter --agent opencode
npx skills add virattt/dexter --agent github-copilot
npx skills add virattt/dexter --agent windsurf
More install options

Shorthand — useful for multi-skill repos:

npx skills add virattt/dexter

Manual — clone the repo and drop the folder into your agent's skills directory:

git clone https://github.com/virattt/dexter.git
cp -r dexter ~/.claude/skills/
How to use: Once installed, ask your agent to "use the Dexter Finance skill" or describe what you want (e.g. "Build autonomous financial research agents that analyze stocks, SEC filings, ear"). Requires Node.js 18+.

Dexter Finance

Build autonomous financial research agents that analyze stocks, SEC filings, earnings calls, and market data to produce investment reports. Use when: automating investment research, building AI-powered stock analysis, creating financial due diligence agents.

---
name: dexter-finance
description: >-
Build autonomous financial research agents that analyze stocks, SEC filings, earnings calls,
and market data to produce investment reports. Use when: automating investment research,
building AI-powered stock analysis, creating financial due diligence agents.
license: MIT
compatibility: "Node.js 18+ or Python 3.10+"
metadata:
author: terminal-skills
version: "1.0.0"
category: data-ai
tags:


  • finance

  • stocks

  • sec-filings

  • investment

  • research


---

Dexter Finance

Build autonomous financial research agents using Dexter — an agent framework for deep financial analysis covering SEC filings, earnings calls, market data, and investment report generation.

Overview

Dexter follows a four-stage research pipeline: data collection (EDGAR API, market data, transcripts), analysis (financial ratios, sentiment), synthesis (cross-referencing patterns and anomalies), and report generation (investment memos in PDF/Markdown). It supports single-stock deep dives and batch research across watchlists.

Instructions

Installation

npm install dexter-finance
# or: pip install dexter-finance

Set up API keys:

export OPENAI_API_KEY="sk-..."        # or ANTHROPIC_API_KEY
export SEC_EDGAR_USER_AGENT="Company Name [email protected]"
export ALPHA_VANTAGE_KEY="..."         # optional, for market data

Research a Single Stock

import { DexterAgent } from "dexter-finance";

const agent = new DexterAgent({
  model: "claude-sonnet-4-20250514",
  tools: ["sec-filings", "market-data", "earnings-transcripts"],
});

const report = await agent.research({
  ticker: "AAPL",
  depth: "full",
  periods: 4,
});

console.log(report.summary);
console.log(report.recommendation);
await report.save("aapl-report.md");

SEC Filing Analysis

import { EdgarClient } from "dexter-finance";

const edgar = new EdgarClient({ userAgent: "MyApp [email protected]" });

const filing = await edgar.getFiling({ ticker: "MSFT", type: "10-K", latest: true });

console.log(filing.sections.riskFactors);
console.log(filing.sections.financialStatements);
console.log(filing.sections.mdAndA);

for (const table of filing.financialTables) {
  console.log(`${table.name}:`, table.toJSON());
}

Earnings Call Analysis

import { EarningsAnalyzer } from "dexter-finance";

const analyzer = new EarningsAnalyzer({ model: "claude-sonnet-4-20250514" });

const analysis = await analyzer.analyze({ ticker: "NVDA", quarter: "Q4-2025" });

console.log(analysis.sentiment);
console.log(analysis.guidanceChanges);
console.log(analysis.managementTone);
console.log(analysis.analystConcerns);

Financial Ratios

import { FinancialMetrics } from "dexter-finance";

const ratios = await new FinancialMetrics().calculate({ ticker: "AMZN", period: "TTM" });

console.log(ratios.profitability); // { grossMargin, operatingMargin, netMargin, roe }
console.log(ratios.valuation);     // { pe, ps, pb, evEbitda }
console.log(ratios.growth);        // { revenueYoY, epsYoY, fcfYoY }

Anomaly Detection

import { AnomalyDetector } from "dexter-finance";

const flags = await new AnomalyDetector().scan({
  ticker: "XYZ",
  checks: ["accounting-changes", "insider-trading", "guidance-cuts",
           "audit-opinions", "related-party", "revenue-recognition"],
});

for (const flag of flags) {
  console.log(`${flag.severity.toUpperCase()}: ${flag.type} — ${flag.description}`);
}

Examples

Example 1: Full Investment Memo for META

import { ReportGenerator } from "dexter-finance";

const generator = new ReportGenerator({
  model: "claude-sonnet-4-20250514",
  template: "investment-memo",
});

const report = await generator.generate({
  ticker: "META",
  sections: ["executive-summary", "business-overview", "financial-analysis",
             "competitive-position", "risk-factors", "valuation", "recommendation"],
  format: "markdown",
  maxPages: 5,
});

await report.save("meta-investment-memo.md");
await report.toPDF("meta-investment-memo.pdf");
// Produces a 5-page memo with financial tables, ratio analysis, and buy/hold/sell recommendation

Example 2: Daily Market Briefing for a Watchlist

import { BriefingAgent } from "dexter-finance";

const briefing = new BriefingAgent({
  model: "claude-sonnet-4-20250514",
  watchlist: ["AAPL", "GOOGL", "MSFT", "AMZN", "NVDA"],
});

const daily = await briefing.generate({
  includePreMarket: true,
  includeEarningsCalendar: true,
  includeMacroEvents: true,
});

console.log(daily.marketOverview);
console.log(daily.watchlistMoves);
console.log(daily.earningsToday);
// Output: structured briefing with price changes, upcoming earnings, and macro events

Guidelines

  • Set SEC_EDGAR_USER_AGENT to a valid company/email — EDGAR rate-limits anonymous requests
  • Use depth: "quick" for screening, "full" for deep dives — saves tokens and time
  • Batch research runs concurrently — set concurrency based on your API rate limits
  • Anomaly detection is most useful on small/mid-cap stocks where coverage is thin
  • Combine with a scheduler (cron) for automated daily briefings
  • Always validate AI-generated financial analysis — treat outputs as research drafts, not advice

---

Source: https://github.com/virattt/dexter
Author: TerminalSkills
Discovered via: skillsdirectory.com
Genre: business

SKILL.md source

---
name: Dexter Finance
description: Build autonomous financial research agents that analyze stocks, SEC filings, earnings calls, and market data to produce investment reports. Use when: automating investment research, building AI-pow...
---

# Dexter Finance

Build autonomous financial research agents that analyze stocks, SEC filings, earnings calls, and market data to produce investment reports. Use when: automating investment research, building AI-powered stock analysis, creating financial due diligence agents.

---
name: dexter-finance
description: >-
  Build autonomous financial research agents that analyze stocks, SEC filings, earnings calls,
  and market data to produce investment reports. Use when: automating investment research,
  building AI-powered stock analysis, creating financial due diligence agents.
license: MIT
compatibility: "Node.js 18+ or Python 3.10+"
metadata:
  author: terminal-skills
  version: "1.0.0"
  category: data-ai
  tags:
    - finance
    - stocks
    - sec-filings
    - investment
    - research
---

# Dexter Finance

Build autonomous financial research agents using [Dexter](https://github.com/virattt/dexter) — an agent framework for deep financial analysis covering SEC filings, earnings calls, market data, and investment report generation.

## Overview

Dexter follows a four-stage research pipeline: data collection (EDGAR API, market data, transcripts), analysis (financial ratios, sentiment), synthesis (cross-referencing patterns and anomalies), and report generation (investment memos in PDF/Markdown). It supports single-stock deep dives and batch research across watchlists.

## Instructions

### Installation

```bash
npm install dexter-finance
# or: pip install dexter-finance
```

Set up API keys:

```bash
export OPENAI_API_KEY="sk-..."        # or ANTHROPIC_API_KEY
export SEC_EDGAR_USER_AGENT="Company Name [email protected]"
export ALPHA_VANTAGE_KEY="..."         # optional, for market data
```

### Research a Single Stock

```typescript
import { DexterAgent } from "dexter-finance";

const agent = new DexterAgent({
  model: "claude-sonnet-4-20250514",
  tools: ["sec-filings", "market-data", "earnings-transcripts"],
});

const report = await agent.research({
  ticker: "AAPL",
  depth: "full",
  periods: 4,
});

console.log(report.summary);
console.log(report.recommendation);
await report.save("aapl-report.md");
```

### SEC Filing Analysis

```typescript
import { EdgarClient } from "dexter-finance";

const edgar = new EdgarClient({ userAgent: "MyApp [email protected]" });

const filing = await edgar.getFiling({ ticker: "MSFT", type: "10-K", latest: true });

console.log(filing.sections.riskFactors);
console.log(filing.sections.financialStatements);
console.log(filing.sections.mdAndA);

for (const table of filing.financialTables) {
  console.log(`${table.name}:`, table.toJSON());
}
```

### Earnings Call Analysis

```typescript
import { EarningsAnalyzer } from "dexter-finance";

const analyzer = new EarningsAnalyzer({ model: "claude-sonnet-4-20250514" });

const analysis = await analyzer.analyze({ ticker: "NVDA", quarter: "Q4-2025" });

console.log(analysis.sentiment);
console.log(analysis.guidanceChanges);
console.log(analysis.managementTone);
console.log(analysis.analystConcerns);
```

### Financial Ratios

```typescript
import { FinancialMetrics } from "dexter-finance";

const ratios = await new FinancialMetrics().calculate({ ticker: "AMZN", period: "TTM" });

console.log(ratios.profitability); // { grossMargin, operatingMargin, netMargin, roe }
console.log(ratios.valuation);     // { pe, ps, pb, evEbitda }
console.log(ratios.growth);        // { revenueYoY, epsYoY, fcfYoY }
```

### Anomaly Detection

```typescript
import { AnomalyDetector } from "dexter-finance";

const flags = await new AnomalyDetector().scan({
  ticker: "XYZ",
  checks: ["accounting-changes", "insider-trading", "guidance-cuts",
           "audit-opinions", "related-party", "revenue-recognition"],
});

for (const flag of flags) {
  console.log(`${flag.severity.toUpperCase()}: ${flag.type} — ${flag.description}`);
}
```

## Examples

### Example 1: Full Investment Memo for META

```typescript
import { ReportGenerator } from "dexter-finance";

const generator = new ReportGenerator({
  model: "claude-sonnet-4-20250514",
  template: "investment-memo",
});

const report = await generator.generate({
  ticker: "META",
  sections: ["executive-summary", "business-overview", "financial-analysis",
             "competitive-position", "risk-factors", "valuation", "recommendation"],
  format: "markdown",
  maxPages: 5,
});

await report.save("meta-investment-memo.md");
await report.toPDF("meta-investment-memo.pdf");
// Produces a 5-page memo with financial tables, ratio analysis, and buy/hold/sell recommendation
```

### Example 2: Daily Market Briefing for a Watchlist

```typescript
import { BriefingAgent } from "dexter-finance";

const briefing = new BriefingAgent({
  model: "claude-sonnet-4-20250514",
  watchlist: ["AAPL", "GOOGL", "MSFT", "AMZN", "NVDA"],
});

const daily = await briefing.generate({
  includePreMarket: true,
  includeEarningsCalendar: true,
  includeMacroEvents: true,
});

console.log(daily.marketOverview);
console.log(daily.watchlistMoves);
console.log(daily.earningsToday);
// Output: structured briefing with price changes, upcoming earnings, and macro events
```

## Guidelines

- Set `SEC_EDGAR_USER_AGENT` to a valid company/email — EDGAR rate-limits anonymous requests
- Use `depth: "quick"` for screening, `"full"` for deep dives — saves tokens and time
- Batch research runs concurrently — set `concurrency` based on your API rate limits
- Anomaly detection is most useful on small/mid-cap stocks where coverage is thin
- Combine with a scheduler (cron) for automated daily briefings
- Always validate AI-generated financial analysis — treat outputs as research drafts, not advice


---

**Source**: https://github.com/virattt/dexter
**Author**: TerminalSkills
**Discovered via**: skillsdirectory.com
**Genre**: business

Related skills 6

tzst

★ Featured

Use when the user needs to create, extract, flatten, list, test, install, script, or troubleshoot `tzst` CLI workflows for `.tzst` or `.tar.zst` archives, including compression levels, streaming mode, extraction filters, conflict resolution, JSON output, or standalone binary setup, even if they describe the archive task without naming `tzst`.

xixu-me 152k
Productivity

xdrop

★ Featured

Use this skill when the user wants to send or fetch files through an Xdrop server from the terminal, asks to automate encrypted Xdrop share-link workflows, provides an Xdrop `/t/:transferId#k=...` link to download and decrypt locally, or needs Xdrop CLI flags such as `--quiet`, `--json`, `--expires-in`, `--output`, or `--api-url`, even if they do not explicitly mention the skill name.

xixu-me 152k
Productivity

develop-userscripts

★ Featured

Use when building, debugging, packaging, or publishing browser userscripts for Tampermonkey or ScriptCat, including GM APIs, metadata blocks, permission issues, @match/@grant/@connect setup, ScriptCat background or scheduled scripts, UserConfig blocks, or subscription workflows.

xixu-me 109k
Productivity

triage

★ Featured

Triage issues through a state machine driven by triage roles. Use when user wants to create an issue, triage issues, review incoming bugs or feature requests, prepare issues for an AFK agent, or manage issue workflow.

mattpocock 108k
Productivity

browser-use

★ Featured

Automates browser interactions for web testing, form filling, screenshots, and data extraction. Use when the user needs to navigate websites, interact with web pages, fill forms, take screenshots, or extract information from web pages.

browser-use 76k
Productivity

Typefully / typefully

★ Featured Official

Create, schedule, and publish social media content across X, LinkedIn, Threads, Bluesky, and Mastodon

Typefully 23
Marketing & Sales