Skip to main content
AI/MLjeremylongshore

finta-local-dev-loop

'Set up Finta workflow automation and data export for local analysis.

Stars
2,267
Source
jeremylongshore/claude-code-plugins-plus-skills
Updated
2026-05-31
Slug
jeremylongshore--claude-code-plugins-plus-skills--finta-local-dev-loop
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/jeremylongshore/claude-code-plugins-plus-skills/HEAD/plugins/saas-packs/finta-pack/skills/finta-local-dev-loop/SKILL.md -o .claude/skills/finta-local-dev-loop.md

Drops the SKILL.md into .claude/skills/finta-local-dev-loop.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Finta Local Dev Loop

Overview

Finta is primarily UI-driven without a public API. For local automation, use CSV exports from Finta combined with Python scripts for analysis, reporting, and integration with other tools.

Instructions

Export Pipeline Data

  1. In Finta, go to Pipeline > Export > CSV
  2. Save as pipeline-export.csv

Analyze Fundraise Pipeline

import pandas as pd
from datetime import datetime

# Load Finta export
df = pd.read_csv("pipeline-export.csv")

# Pipeline summary
summary = df.groupby("Stage").agg(
    count=("Name", "count"),
    avg_check=("Check Size", "mean"),
).reset_index()

print("Pipeline Summary:")
print(summary.to_string(index=False))

# Conversion rates
stages = ["Researching", "Reaching Out", "Intro Meeting", "Follow-up", "Due Diligence", "Term Sheet", "Closed"]
for i in range(len(stages) - 1):
    current = len(df[df["Stage"] == stages[i]])
    next_stage = len(df[df["Stage"] == stages[i+1]])
    rate = (next_stage / current * 100) if current > 0 else 0
    print(f"  {stages[i]} -> {stages[i+1]}: {rate:.0f}%")

Weekly Pipeline Report

def generate_weekly_report(df: pd.DataFrame) -> str:
    total = len(df)
    active = len(df[df["Stage"].isin(["Intro Meeting", "Follow-up", "Due Diligence"])])
    term_sheets = len(df[df["Stage"] == "Term Sheet"])
    closed = len(df[df["Stage"] == "Closed"])

    return f"""
Fundraise Pipeline Report ({datetime.now().strftime('%Y-%m-%d')})
==================================================
Total investors: {total}
Active conversations: {active}
Term sheets: {term_sheets}
Closed: {closed}
"""

Resources

Next Steps

See finta-sdk-patterns for integration patterns.