Show HN: Pulse Local, a Mac budgeting app whose AI models run on your machine

niztk 95 points 49 comments October 13, 2026
pulseos.finance · View on Hacker News

Hi HN, I'm Niz. Pulse Local is a budgeting app for Mac (Apple Silicon, beta) that answers questions about your spending with models that run on your machine. Local mode needs no account. The ledger and your questions stay on the machine, and the app sends no analytics or crash logs. I felt there are not enough consumer apps that run locally with no calls to the outside world that help us manage sensitive corners of our lives. This app in its local variant only downloads a couple of models and occasional updates, it does not send any analytics nor data. Features-wise, Pulse local is a complete budgeting app that offers an assistant built on top of a fine-tuned model and thousands of rules embedded in the code itself. I'm sharing it for free with options to help me continue experimenting with fine-tuning and expanding along this direction. How it works: you import a CSV from any bank, in any currency. When you ask a question, a tuned Qwen3 0.6B model reads it into a structured query, and code, not the model, does the money math against the ledger. A 4B checker model double-checks each money answer; when the two readings disagree, the app says it is not sure instead of guessing. That change took wrong answers from about one in five to 5 in 494 questions across our last three tests. The write-up covers how we test, the designs that failed, and the limits of the claim: https://pulseos.finance/pulse-local/writing/agree-or-not-sur... The tuned weights are on Hugging Face (PulseOS/pulse-local-qwen3-0.6b). Limitations: the first start downloads about 2.9 GB of models. With the checker on, a money answer takes 12 to 14 seconds (you can turn the checker off). Small models can still misread an open-ended question. The app answers in English. Mac only for now; Windows is next. The app is free. An optional Connected mode (Sync Pass, $29/year) syncs US banks through Plaid; transactions pass through our server's memory and are not stored. Feedback welcome, especially on wrong answers and on questions it should handle but does not.

Discussion Highlights (15 comments)

terwint

Very nice project. I think this is is in the step of the right direction for agent-driven assistance. > How it works: you import a CSV from any bank, in any currency. I think this is where you're going to lose people. If you're having to pull in data from multiple different sources, each with their own flow for exporting, I think this might be a non-starter for creating good financial habbit. I recnetly had success integrating my local AI agent with Monarch money via an open source monarch MCP project. It took a bit of (AI) hacking the login stuff, but now I'm able to pull transactions, query patterns, have a daily report generated from hermes, etc. Much more technical that your target audience but possibly offers some inspiration.

arm32

Your domain name is younger than 30 days old so my firewall blocks it. :/

nico

Very cool. What does it use the model for? Could you replace it with something lighter, like some classifiers[0]? Or do you need the chat? Besides the chat, what other tasks is the model used for? Thank you! 0: https://jeffyclassify.com/blog/when-llms-fail-at-classificat...

altmanaltman

I use budgeting apps on a daily basis, and I'll just share my personal feedback: I'm absolutely not downloading ~3 gigs for a budget app. Everything I need to "ask" the app is already available to me in the form of reports, charts, and tables. I don't really have many open-ended questions about my budget because anything important to track is already handled deterministically. Also yes, it's local but the data you're importing is already with a private organization on the cloud. In that sense, having a local copy of it does not really do anything for me in terms of privacy etc. As I said, I use budgeting apps daily (one for personal use (self-made), another for business (very old freenium era software that has not failed me in the last 5+ years of self-hosting it)) and I do not see any need for generative AI in that workflow from my pov. YMMV

lathiat

I love the idea of local only apps woth no network comms. I do wish macOS had some way you could enforce that out of the box though. Rather than trust the claims of the developer. Another app I love that does the same. Queryable which lets you natural language search your photos on device on iOS and predates most of the current AI craze (2022) and also apple adding this themselves to photos: https://queryable.app/

snehesht

Congrats on launching, I’m working on a similar idea with local models.

tantalor

This is the most confusing product page I've ever seen. What is it even trying to tell me?

seemaze

Makes me want to play around with the nemotron finance[0] fine tune released a while back.. [0] https://fastino.ai/blog/fastino-nemotron-3-5-lightning-finan...

yieldcrv

long landing pages are a sign of AI psychosis you only need 2 sections. an above the fold area and something below the fold. simple. thanks for making this. “its private” is not a selling point, whats other differentiators does it have? really the AI analysis and potential agentic aspect right? you could point out that it doesnt use data centers or harm the environment without explaining how or what that means upfront

robotresearcher

Feedback: manually categorizing transactions is a common and tedious task. Your 'for review' transaction list shows the category, but it's not editable. To review and fix the category, you must: - read the category - click on the '...' button at the end of the line (not near the thing you want to correct, and not my first guess for settings the category) - this creates a popup - mouse into the popup and click on the dropdown for setting the category. Just have the category label in the list clickable, to show the category dropdown. It saves one click, two mouse movements, and having to figure out that '...' is the action you need to fix a category.

zyk_computer

I'm curious why you built a full budgeting app instead of adding a local AI chat to an existing open source app like Actual Budget.

herf

Plaid is the main risk - if they were hacked, that's way worse than a log of my AI queries. What's exciting with LLMs is the possibility to do classification much better.

codebje

I gave it a go and imported a transaction CSV from my bank - National Australia Bank. 150 row CSV. The Description import column was assigned to the Merchant Name CSV column (the Merchant import column was also assigned to this CSV column) and as a result 25 rows were going to be ignored. Here's the CSV header row: Date,Amount,Account Number,,Transaction Type,Transaction Details,Balance,Category,Merchant Name,Processed On Hand-picking the Description column to be assigned to the details column sorted it out; not sure how you're auto-selecting column mappings but maybe 'details' should be recognised as closer to 'description' than 'merchant name' is.

haisin5555

You have a free budgeting app for Mac? Can you have as an app so I can download it in my iPhone? Can Pulse Local connect to my bank app and automatically records my spendings? Also am curious about your reasoning behind usage of Qwen3.0 model as well!

LewisOrton

after a “not sure,” how often does reprhasing get a correct answer on the next try/do users give up? retries could make a simple lookup surprisingly slow?

Semantic search powered by Rivestack pgvector
9,386 stories · 88,435 chunks indexed