← Back to portfolio

AI · Event-driven automation

Independent product

Finance Concierge

An event-driven financial assistant that converts Outlook signals into deduplicated obligations, actions, forecasts, and Telegram conversations.

Abstract three-dimensional event pipeline transforming financial signals into actions.

Read this first

The system at a glance.

What I built
A personal finance pipeline that turns messages and commands into a structured financial task ledger.
My contribution
System design and implementation across ingestion, rule evaluation, AI boundaries, persistence, scheduling, and chat delivery.
Core challenge
Automate useful financial work without creating duplicate obligations or hiding why an action happened.
Key technologies
Node.js, Hono, Prisma, Microsoft Graph, Telegram API, AI agents

Capability flow

How the system works.

Each step connects a user action to the system capability behind it.

  1. Read incremental signals

    Microsoft Graph delta polling collects new and changed messages from multiple Outlook sources.

  2. Normalize and deduplicate

    Provider identifiers and deduplication keys make repeated polling safe to replay.

  3. Apply rules and reasoning

    Deterministic classification controls when bounded AI reasoning is useful and what it may produce.

  4. Create financial state

    Payments and actions become explicit tasks with source, status, amount, and notification state.

  5. Close the loop in Telegram

    The assistant delivers reminders, accepts updates, and exposes reports and cash-flow forecasts.

Engineering judgment

Decisions that shaped the system.

Constraint
Polling, retries, and process restarts can deliver the same financial signal more than once.
Decision
Use provider identities, unique deduplication keys, and processed/notified markers instead of relying on one transaction.
Why it mattered
The complete pipeline can be retried without duplicating a bill, task, or message.
Trade-off
Every stage must expose stable identity and completion state.
Constraint
AI interpretation is useful, but money-related automation must remain explainable and controllable.
Decision
Keep deterministic rules around bounded agent decisions and attach the source and rule to each outcome.
Why it mattered
A user can understand why an obligation exists and correct it through the same interface.
Trade-off
The agent has less freedom than an open-ended assistant, by design.

Technical evidence

Skills backed by this system.

Open any skill to see the other products and professional work connected to it.

Technology stack

  • Node.js
  • TypeScript
  • Hono
  • Prisma
  • Microsoft Graph
  • Telegram

Test the product surface

Move from architecture to a working interaction.

Try Finance Concierge in Product Lab