<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: SoloCFO</title>
    <description>The latest articles on DEV Community by SoloCFO (@thesolocfo).</description>
    <link>https://dev.to/thesolocfo</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3898550%2F905f127c-fa51-4358-8f67-d773013c72bf.png</url>
      <title>DEV Community: SoloCFO</title>
      <link>https://dev.to/thesolocfo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/thesolocfo"/>
    <language>en</language>
    <item>
      <title>My financial advisor doesn't know I bought NVDA yesterday. My AI agent does.</title>
      <dc:creator>SoloCFO</dc:creator>
      <pubDate>Sun, 26 Apr 2026 09:28:22 +0000</pubDate>
      <link>https://dev.to/thesolocfo/my-financial-advisor-doesnt-know-i-bought-nvda-yesterday-my-ai-agent-does-36i0</link>
      <guid>https://dev.to/thesolocfo/my-financial-advisor-doesnt-know-i-bought-nvda-yesterday-my-ai-agent-does-36i0</guid>
      <description>&lt;p&gt;I tried the obvious stuff first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Spreadsheets.&lt;/strong&gt; Accurate, but mute. They sit there. They don't tell me when something matters. I'd open the file once a quarter, panic-update some cells, and close it again.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Robo-advisors.&lt;/strong&gt; Generic. They don't know my retirement-account contribution caps. They don't know I have a side income I'm trying to grow. They don't know about the ticker I bought yesterday. They give me a 60/40 allocation and a polite email once a month.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AI chatbots.&lt;/strong&gt; Every conversation starts from zero. Ten minutes of "I'm 35, I make X, I have Y in retirement, I want to retire at Z" before I get to my actual question.&lt;/p&gt;

&lt;p&gt;What I actually wanted was a CFO who already knows my situation. Reads my portfolio. Knows my retirement target year. Remembers I'm overweight in tech and under-allocated to dividends. Surfaces the one signal that matters this week — not the seventeen that don't.&lt;/p&gt;

&lt;p&gt;So I built it. Here's what it looks like.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fucwnaby23wha6rchbtz9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fucwnaby23wha6rchbtz9.png" alt="ARIA rotation review" width="800" height="901"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That's it. No "what's your risk profile, sir?" No "I am an AI and cannot give financial advice." It already has the context. It just answers.&lt;/p&gt;

&lt;p&gt;Same agent, different question:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1gjnhio98kc6olenpbbg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1gjnhio98kc6olenpbbg.png" alt="Finance retirement scenario" width="800" height="773"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Two agents. One routing prefix. Backed by local JSON files I update myself. No SaaS. No my-data-on-someone's-server. Just folders.&lt;/p&gt;

&lt;h2&gt;
  
  
  The trick: lazy loading
&lt;/h2&gt;

&lt;p&gt;The naive way to build a multi-agent system is to load every agent definition into every conversation. By turn 30 you've burned through your context window and Claude is hallucinating.&lt;/p&gt;

&lt;p&gt;The trick is a routing table at the root. Only that table loads at startup. When I type &lt;code&gt;[INVEST]&lt;/code&gt;, the router matches the prefix and &lt;em&gt;then&lt;/em&gt; pulls in the full ARIA agent + its knowledge files. Type &lt;code&gt;[FINANCE]&lt;/code&gt; and it swaps to the other agent's stack instead.&lt;/p&gt;

&lt;p&gt;Result: ~80% token reduction on long sessions, and each agent stays sharp because its context isn't polluted by the other one's history.&lt;/p&gt;

&lt;p&gt;The routing pattern is six lines of Markdown. Claude reads it, matches my prefix, loads only what's needed. That's the whole magic.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get it
&lt;/h2&gt;

&lt;p&gt;Repo: &lt;a href="https://github.com/jasonsieg22/claude-finance-agents" rel="noopener noreferrer"&gt;github.com/jasonsieg22/claude-finance-agents&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;MIT licensed. Fork it, strip the example numbers, drop your real ones into the gitignored slots, and you have your own CFO by the end of the afternoon.&lt;/p&gt;

&lt;p&gt;Full writeup on Substack: &lt;a href="https://thesolocfo.substack.com/p/my-financial-advisor-doesnt-know" rel="noopener noreferrer"&gt;thesolocfo.substack.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;— solocfo&lt;/p&gt;

</description>
      <category>claude</category>
      <category>ai</category>
      <category>opensource</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
