---
title: "AI assistant"
url: https://phatdev.net/en/docs/creditmate/tro-ly-ai
lang: en
updated: 2026-10-21
alternate:
  vi: https://phatdev.net/docs/creditmate/tro-ly-ai
markdown: https://phatdev.net/en/docs/creditmate/tro-ly-ai.md
---

# AI assistant

Part of the doc set: [CreditMate](https://phatdev.net/en/docs/creditmate.md)

> The assistant bubble, AI providers, cost and budget, card knowledge base, drafts only.

**Assistant** is the conversational part of CreditMate. You ask in plain language: how much is due this month, which card to use for a purchase, what the annual-fee waiver conditions are. The assistant answers from the figures in the app and from the card knowledge library, and it can only create drafts; it never posts to the ledger by itself.

<div style="margin:1.6em 0"><figure style="margin:0"><a href="https://phatdev.net/uploads/p/creditmate/assistant-vi-light-3840.webp" target="_blank" rel="noopener" class="pd-th-light" style="display:block;border:0" aria-label="AI assistant: step-by-step setup with Gemini, Claude or ChatGPT, API keys kept in the Keychain (4K)"><img src="https://phatdev.net/uploads/p/creditmate/assistant-vi-light-1920.webp" srcset="/uploads/p/creditmate/assistant-vi-light-960.webp 960w, /uploads/p/creditmate/assistant-vi-light-1920.webp 1920w, /uploads/p/creditmate/assistant-vi-light-3840.webp 3840w" sizes="(max-width: 900px) 100vw, 760px" width="3840" height="2160" alt="AI assistant: step-by-step setup with Gemini, Claude or ChatGPT, API keys kept in the Keychain" loading="lazy" decoding="async" style="width:100%;height:auto;display:block;border:1px solid var(--line);border-radius:12px"></a><a href="https://phatdev.net/uploads/p/creditmate/assistant-vi-dark-3840.webp" target="_blank" rel="noopener" class="pd-th-dark" style="display:block;border:0" aria-label="AI assistant: step-by-step setup with Gemini, Claude or ChatGPT, API keys kept in the Keychain (4K)"><img src="https://phatdev.net/uploads/p/creditmate/assistant-vi-dark-1920.webp" srcset="/uploads/p/creditmate/assistant-vi-dark-960.webp 960w, /uploads/p/creditmate/assistant-vi-dark-1920.webp 1920w, /uploads/p/creditmate/assistant-vi-dark-3840.webp 3840w" sizes="(max-width: 900px) 100vw, 760px" width="3840" height="2160" alt="AI assistant: step-by-step setup with Gemini, Claude or ChatGPT, API keys kept in the Keychain" loading="lazy" decoding="async" style="width:100%;height:auto;display:block;border:1px solid var(--line);border-radius:12px"></a><figcaption style="margin-top:8px;font-size:13px;line-height:1.5;color:var(--muted);text-align:center">AI assistant: step-by-step setup with Gemini, Claude or ChatGPT, API keys kept in the Keychain</figcaption></figure></div>

## The floating bubble

The assistant appears as a floating bubble on every tab, so you can ask right where you are. Tapping the bubble opens the chat directly. Quick-reply buttons match real situations, for example when a payment is about to fall due. If no AI source is configured, the app uses on-device AI; if that is not available, the "Set up assistant" screen walks you through it step by step.

## AI providers

You choose one of these sources:

- **Apple on-device:** runs entirely on the device and needs no API key.
- **Google Gemini.**
- **Anthropic Claude.**
- **OpenAI ChatGPT.**
- **Local AI compatible with OpenAI:** a model you run yourself on your device or local network.

Cloud API keys are stored in the Keychain, sent only in request headers, and never appear in source code or backups. Before first use of a cloud AI, the app shows a consent sheet so you know what data will be sent. Full card numbers, CVV and anything in the vault are never given to the assistant.

## Reasoning level

For Gemini you pick a reasoning level, Low, Medium or High, directly under the model name. A higher level gives more careful answers but uses more tokens.

## Cost and monthly budget

The app counts input tokens, cached-read tokens and output tokens for each request, then converts them to a cost with integers using a sourced price table. The usage section has a daily cost chart. You set a monthly budget: the app warns at 80% and blocks at 100%.

The price table is marked unverified. If a model has no price in the table, the cost of that request is **unknown**, not 0, and it is not silently added to the total as 0.

## The card knowledge library and scope

The assistant has a tool that searches the knowledge library on card eligibility, fee schedules and offers for 27 banks. Retrieved content is treated as untrusted data: foreign text cannot give the assistant commands. The assistant stays within personal finance and credit cards and declines topics outside that scope. When it answers about an offer, it states the offer's validity, the date the data was last updated, and a reminder that the information is unverified.

## The assistant only creates drafts

When you ask the assistant to record a transaction or a payment, the result is a draft. You must review and confirm it; the confirmation token is tied to the content of the draft, so changed content cannot reuse it. Every AI call is kept in a durable log on the device so you can inspect it.

## Memory and context

The assistant remembers context across turns and summarizes automatically when the conversation reaches about 60% of the context window. Long-term memory stores useful facts selectively, such as spending habits, and retrieves them with text search combined with embeddings. The assistant answers in the app's language, Vietnamese or English.
