---
title: "Finance Coach Skill"
date: 2026-02-25
type: project
blurb: "Claude Code skill that turns personal finance data into a forward-looking dashboard — projections, scenario modeling, FI tracking, and investment thesis workshops."
canonical: https://dazuck.com/projects#finance-coach
---

A Claude Code skill that connects to personal finance tools via MCP and adds what they can't do on their own: forward-looking projections, scenario modeling, financial independence tracking, and investment thesis stress-testing. Five modes — financial picture, projection ("what if we buy a house?"), thesis workshop (five analyst personas debate an investment idea), meeting prep, and tax planning.

The centerpiece is an auto-generated HTML dashboard with Chart.js visualizations. Key metrics up top, then a scenario explorer where you toggle between income, business growth, and market return assumptions and watch 10-year net worth trajectories shift in real time. FI progress with Coast FI milestones, forward-looking goal feasibility, and portfolio allocation tracking. A collapsible "Go deeper" section holds portfolio perspectives (five AI personas synthesize investment recommendations from actual data) and an interactive scenario builder.

The thesis workshop mode is the most unusual piece — five personas (Macro Strategist, Market Mechanic, Fundamental Analyst, Wealth Steward, Challenger) each analyze an investment thesis in their own voice, then synthesize where they agree and disagree. The Challenger persona evolved from a generic Contrarian — instead of reflexive disagreement, it proposes falsification criteria for the thesis and names specific conditions that would prove you wrong.

## What we learned building it

The interesting part isn't the feature list — it's what happened when AI met real personal finance data across seven iterative sessions.

**Your assumptions are wrong, and AI will confidently build on them.** The household spending estimate was based on mental math. When we finally connected real financial data, the actual number was significantly different. For two full sessions before that, the AI had been generating elaborate projections, sensitivity tables, and scenario analyses — all precisely wrong because the input was wrong. The lesson: AI makes bad assumptions look rigorous. Always connect to the real data source first.

**Plausible-looking projections are the most dangerous kind of wrong.** The projection engine had a bug where income continued forever — even past retirement age. The 10-year charts looked reasonable, so nobody questioned them. It wasn't until we scrutinized the actual year-by-year numbers that the missing retirement income cutoff surfaced. A chart that looks right suppresses the instinct to verify. The fix wasn't just the bug — it was adding a survival table ("money lasts until age X") that forces the projection to make falsifiable claims.

**Research beats gut feel by a lot.** Spending growth started as a 2% guess, got bumped to 3% because "more conservative," then actual research (BLS Consumer Expenditure Survey, EBRI, Blanchett 2014) showed 3% flat was 56% over-provisioned compared to how real households actually spend across age brackets. The phased model (faster growth in young family years, declining in retirement) completely changed the survival analysis. The AI could access and synthesize the academic literature in minutes — but only when prompted to look instead of accepting the assumption.

**The skill should route, not teach.** Early versions had enormous prompts trying to teach Claude tax law, portfolio theory, and financial planning principles. They didn't work well — too much context, too generic. What worked: structured routing (five modes with activation triggers), data protocols (query Monarch for X, compute Y, show Z), and references to external documents for stable facts. The skill is an orchestration layer that points Claude's existing knowledge at the right problem with the right data. Less instruction, more structure.

**Multiple AI agents editing the same artifact creates pipeline gaps.** One agent added achievement icons to the dashboard template's sample data and renderer. A different agent later generated the actual runtime data — without the icons, because it never saw the first agent's work. The dashboard has a multi-stage pipeline (Python generator → JSON data → HTML template → JS renderer), and an edit at one stage doesn't propagate to others. This is the AI equivalent of a team communication problem.

---
*This is the source markdown for https://dazuck.com/projects#finance-coach.*  
*Full writing + projects index: https://dazuck.com/llms-full.txt*
