Tung Pham
Built at Meta Global AI Developer Hackathon · Oct 26, 2026 · Remote

Ý tưởng lấy cảm hứng từ app quản lý tài chính cá nhân làm trước đó (Valo); toàn bộ code trợ lý trong repo này được viết mới trong tuần thi 27/10–05/11/2026. (The idea is inspired by Valo, a personal-finance app I built earlier; all assistant code in this repo was written new during the hackathon week.) Valo Agent (Beta) is a Vietnamese-language personal-finance AI coach, not a Q&A chatbot. Most people in Vietnam know they should keep an emergency fund and plan for retirement, but they never turn that into action, and they have no easy way to understand their social-insurance (BHXH) pension. Valo Agent keeps a persistent coaching profile (goals, dated commitments, progress, history of missed commitments), runs every session through GROW with OSKAR, WOOP and Motivational Interviewing / Stages of Change layers, ends each session with a concrete commitment, then follows up and asks what got in the way when a commitment is missed. Key features: - Deterministic engine computes every number (emergency-fund months, asset mix, spending vs budget, goal timelines, what-if, A/B comparison, job-loss shock); the LLM only narrates. A Verifier agent blocks any draft that contains digits or number words not backed by an engine fact, and every number in the UI shows its formula, source and data date. - Proactive, event-driven checks: the agent speaks up only when data crosses a threshold (emergency fund below 3 months, overspending, planned retirement age earlier than legal age), plus periodic progress summaries. - Multi-agent roles: Collector (read-only data), Analyst (engine + structured threshold events), Coach (dialogue via Muse Spark), Verifier (fact checking), and an Orchestrator that only receives summaries. - Action tools: create goals, set reminders, what-if simulation, plan A vs B, 6-month job-loss shock. - BHXH assistant: contribution history by year and month, gap-month detection, legal retirement age vs planned age, replacement rate, projected pension, and a 31–85 age slider. - Two data paths: a Valo adapter (paste/JSON/HTTP, with a labeled mock fallback) and a 13-question coaching onboarding for non-Valo users that ends in a visual financial map. The demo uses only the fictional "Mr. Sample" dataset; no real data, keys or tokens are in the repo. Runs with one command (npm start, no dependencies), 16 tests. Live demo: https://valo-agent-ten.vercel.app