چطور با Claude Code هزینهها را ثبت کنید و بودجهتان را مدیریت کنید
Claude Code را به دستیار مالی شخصیتان تبدیل کنید. نشانی کشف سرویس را به آن بدهید، بگذارید ورود با کد ایمیلی را کامل کند، کلید API را ذخیره کند و بعد از داخل ترمینال صورتحسابها را بخواند، ماندهها را تطبیق دهد و بودجه را بهروز نگه دارد.
Claude Code عامل هوش مصنوعی Anthropic است که در ترمینال شما اجرا میشود. این ابزار میتواند فایل بخواند، کد بنویسد، دستور اجرا کند و درخواست HTTP بفرستد. بیشتر کاربران از Claude Code برای توسعهٔ نرمافزار استفاده میکنند، اما اگر آن را به یک سامانهٔ ثبت هزینه با رابط ماشینی روشن و قابلاعتماد وصل کنید، برای مدیریت مالی شخصی هم بسیار کارآمد میشود.
اصل ماجرا ساده است: Claude Code را از طریق همین رابط ماشینی به یک سامانهٔ متنبازِ ثبت هزینه وصل میکنید و آن هم به دستیار مالی شخصی شما در ترمینال تبدیل میشود. صورتحساب بانکی را در اختیارش میگذارید، از او میخواهید تراکنشها را ثبت کند، ماندهها را بررسی کند و بودجه را بهروزرسانی کند؛ همه در قالب گفتوگوی عادی. نه لازم است بین صفحههای مختلف رابط کاربری رفتوآمد کنید، نه دادهها را دستی وارد کنید.
چرا Claude Code برای پیگیری هزینهها مناسب است
Claude Code در چند جنبهٔ مهم با ChatGPT یا نسخهٔ وب Claude فرق دارد؛ تفاوتهایی که برای امور مالی شخصی واقعاً مهماند:
روی دستگاه شما اجرا میشود و به فایلهایتان دسترسی دارد. وقتی صورتحساب بانکی را به شکل CSV یا PDF دانلود میکنید، Claude Code میتواند مستقیماً آن را از فایلسیستم بخواند. نیازی به بارگذاری، کپیپیست یا اسکرینشات نیست. کافی است بگویید فایل ~/Downloads/chase-march-2026.csv را بخواند تا همان فایل را بررسی کند.
فقط پیشنهاد نمیدهد، خودش اجرا میکند. Claude Code صرفاً یک دستور curl پیشنهاد نمیکند؛ آن را اجرا میکند. اگر لازم باشد ۵۰ تراکنش را در پایگاه دادهٔ هزینهها ثبت کند، SQL لازم را مینویسد، درخواست HTTP را میفرستد و نتیجه را بررسی میکند. همهٔ این مراحل در همان گفتوگو انجام میشود.
راهاندازی را بین نشستها به خاطر میسپارد. وقتی کلید API دریافتی را بیرون از حافظهٔ گفتگو ذخیره کنید، Claude Code میتواند در نشستهای بعدی دوباره از همان اتصال استفاده کند و لازم نیست هر بار فرایند کد ایمیلی را از نو طی کنید.
روی فایلهای محلی و حتی بدون اتکا به وب هم خوب کار میکند. اگر بخواهید صورتحسابها را پیشپردازش کنید، قالب CSV را تمیز کنید یا اسکریپت ورود داده بنویسید، Claude Code میتواند همهٔ این کارها را پیش از تماس با API روی همان دستگاه انجام دهد.
راهاندازی Claude Code برای امور مالی شخصی
برای شروع به دو چیز نیاز دارید: یک سامانهٔ ثبت هزینه با رابط ماشینی، و جایی برای نگهداشتن کلید ماندگاری که Claude Code بعد از ورود دریافت میکند.
Expense Budget Tracker یک سامانهٔ متنباز برای مدیریت مالی شخصی است که بر پایهٔ Postgres ساخته شده. نشانی رسمی کشف سرویس آن این است: GET https://api.expense-budget-tracker.com/v1/. میتوانید در نسخهٔ میزبانیشده ثبتنام کنید یا آن را روی سرور خودتان self-host کنید.
گام ۱: نشانی کشف سرویس را به Claude Code بدهید
به Claude Code بگویید با این آدرس متصل شود:
https://api.expense-budget-tracker.com/v1/
Claude Code باید با خواندن پاسخ نشانی کشف سرویس شروع کند و بعد این اطلاعات را از شما بخواهد:
- ایمیل حسابتان
- کد ۸ رقمیای که به صندوق ورودی ایمیل شما فرستاده شده
وقتی کد تأیید شود، سرویس یک کلید ماندگار در قالب واقعی API برمیگرداند؛ مثلاً ebta_....
گام ۲: کلید دریافتی را بیرون از حافظهٔ گفتگو ذخیره کنید
فرایند احراز هویت راحت است، اما خود کلید باید در جایی پایدار ذخیره شود. بکاند صریحاً به agentها میگوید که نباید فقط به تاریخچهٔ گفتگو تکیه کنند.
یک الگوی ساده این است:
export EXPENSE_BUDGET_TRACKER_API_KEY="ebta_your_key_here"
اگر میخواهید Claude Code این مقدار را در یک فایل .env محلی نگه دارد، باید این کار را صریحاً تأیید کنید. در غیر این صورت، آن را فقط برای نشست فعلی در shell نگه دارید و خودتان در جایی پایدار ذخیرهاش کنید.
گام ۳: فضای کاری پیشفرض را یکبار ذخیره کنید
بعد از اینکه Claude Code کد را تأیید کرد، باید اطلاعات حساب و فضاهای کاری شما را بارگذاری کند:
curl https://api.expense-budget-tracker.com/v1/me \
-H "Authorization: ApiKey $EXPENSE_BUDGET_TRACKER_API_KEY"
curl https://api.expense-budget-tracker.com/v1/workspaces \
-H "Authorization: ApiKey $EXPENSE_BUDGET_TRACKER_API_KEY"
بعد هم یکبار فضای کاری پیشفرض را برای همان کلید ذخیره کنید:
curl -X POST https://api.expense-budget-tracker.com/v1/workspaces/workspace-id/select \
-H "Authorization: ApiKey $EXPENSE_BUDGET_TRACKER_API_KEY"
بعد از این مرحله، برای /v1/sql دیگر نیازی به X-Workspace-Id نیست. اگر حساب شما فقط یک فضای کاری داشته باشد، API همان بار اول آن را بهصورت خودکار ذخیره و استفاده میکند.
گام ۴: یک فایل راهنما برای قواعد شخصی خودتان اضافه کنید
Claude Code وقتی دستهبندیها، حسابها و قواعد کاری شما را بداند، دقیقتر عمل میکند. برای همین، داشتن یک فایل محلی CLAUDE.md بسیار مفید است:
# Personal Finance
## Expense Tracker API
- Endpoint: https://api.expense-budget-tracker.com/v1/sql
- Auth: ApiKey in Authorization header
- API key is in the EXPENSE_BUDGET_TRACKER_API_KEY environment variable
- Default workspace is already saved for this key
- Request: POST with JSON body {"sql": "your query"}
- Response: {"rows": [...], "rowCount": N}
## My expense categories
Income: salary, freelance, side-projects
Fixed: rent, utilities, insurance, subscriptions
Daily: groceries, dining-out, transport, coffee
Lifestyle: clothing, entertainment, healthcare, travel
Planning: taxes, big-purchases, savings, emergency-fund
## My accounts
- chase-checking (USD) — main checking account
- wise-eur (EUR) — European account
- cash-usd (USD) — cash
## Rules
- Always check existing categories before inserting transactions
- After importing, verify account balances match the bank
- Use the exact category names listed above
- Store transactions in their original currency
گام ۵: Claude Code را باز کنید و کار را شروع کنید
cd ~/finances
claude
Claude Code فایل راهنمای محلی شما را میخواند، کلید API ذخیرهشده را دوباره به کار میگیرد و میتواند بلافاصله شروع به کار کند.
خواندن و ثبت صورتحساب بانکی با Claude Code
اینجا دقیقاً همان جایی است که Claude Code میدرخشد. صورتحساب بانکی را دانلود کنید و از او بخواهید آن را پردازش کند:
> I downloaded my Chase statement to ~/Downloads/chase-march-2026.csv.
> Parse it and record all transactions to my chase-checking account.
Claude Code این مراحل را انجام میدهد:
- فایل CSV را از فایلسیستم شما میخواند.
- هر ردیف را به اجزای اصلیاش تجزیه میکند: تاریخ، مبلغ و شرح.
- هر تراکنش را با یکی از دستهبندیهای هزینهٔ شما در
CLAUDE.mdتطبیق میدهد. - دستورهای
INSERTلازم را برای جدولledger_entriesمیسازد. - هر مورد را از طریق SQL API میفرستد.
- در پایان گزارش میدهد چه چیزهایی ثبت شده است.
شما خروجی را مرور میکنید، اگر دستهبندیای اشتباه بود از Claude Code میخواهید آن را اصلاح کند، و کار تمام است. تراکنشهای یک ماه کامل در چند دقیقه ثبت میشوند.
برای صورتحسابهای PDF یا اسکرینشاتهای برنامهٔ بانکی هم همین روش جواب میدهد. Claude Code میتواند تصویر و PDF را بخواند، دادهٔ تراکنشها را بیرون بکشد و آنها را به همان شکل ثبت کند.
تطبیق ماندهحسابها و پیدا کردن خطاها
بعد از ورود تراکنشها، همیشه بررسی کنید که عددها با واقعیت بانک یکی باشند:
> Check my account balances and compare them to what I see in the bank:
> chase-checking should be $4,230.15
> wise-eur should be €1,847.50
Claude Code از طریق SQL API روی نمای accounts پرسوجو میزند، ماندهها را مقایسه میکند و هر مغایرتی را به شما نشان میدهد. اگر مثلاً chase-checking بهجای ۴٬۲۳۰٫۱۵ دلار عدد ۴٬۱۸۰٫۱۵ دلار را نشان بدهد، Claude Code میتواند برای پیدا کردن آن ۵۰ دلارِ اختلاف کمک کند؛ شاید یک تراکنش جا افتاده یا دوبار ثبت شده باشد.
این بازبینی هفتگیِ ماندهحساب یکی از مهمترین عادتها در مدیریت مالی شخصی است. Kirill Markin، سازندهٔ Expense Budget Tracker، بیش از پنج سال است که تکتک تراکنشهای شخصیاش را دستهبندی میکند و این بررسی را هر هفته بدون استثنا انجام میدهد. همین نظم است که دادهها را در طول زمان قابلاعتماد نگه میدارد.
سؤال پرسیدن دربارهٔ خرجکردتان
وقتی دادههای هزینه در پایگاه داده ثبت شد، Claude Code میتواند با نوشتن SQL به هر پرسشی دربارهٔ امور مالی شما پاسخ دهد:
> How much did I spend on dining out in the last 3 months?
> What are my top 5 expense categories this month?
> Show me all transactions over $100 from last week.
> What's my average monthly grocery spending over the past 6 months?
Claude Code SQL را مینویسد، آن را روی API اجرا میکند و پاسخ را به زبان ساده به شما برمیگرداند. لازم نیست خودتان SQL بلد باشید، اما هر وقت خواستید میتوانید از او بخواهید همان پرسوجوی اجراشده را نشان بدهد تا آن را بررسی یا اصلاح کنید.
مدیریت پیشبینی بودجه
ثبت هزینه یعنی آنچه رخ داده را نگه دارید. بودجهریزی یعنی برای مرحلهٔ بعد برنامه داشته باشید. هر دو در همان پایگاه داده کنار هم قرار میگیرند.
جدول budget_lines پیشبینی ماهانهٔ شما را نگه میدارد؛ یعنی درآمد مورد انتظار و هزینهٔ برنامهریزیشده برای هر دستهبندی در هر ماه. این بخش را هم میتوانید از طریق Claude Code مدیریت کنید:
> Set my budget for April 2026:
> - groceries: $400
> - dining-out: $200
> - rent: $2,100
> - salary income: $8,500
> Copy everything else from March's budget.
Claude Code ردیفهای بودجهٔ ماه مارس را میخواند، ردیفهای آوریل را با تغییرات شما میسازد و آنها را از طریق SQL API مینویسد. در نتیجه یک پیشبینی غلتان ۱۲ ماهه دارید که بعداً میتوانید آن را در رابط وب مرور کنید.
یک روال ماهانهٔ خوب این است که در پایان هر ماه Claude Code را باز کنید و چیزی شبیه این بگویید:
> Compare my actual spending this month against the budget.
> For any category where I spent more than 20% over budget,
> adjust next month's forecast to be more realistic.
Claude Code ارقام واقعی را از ledger_entries میخواند، آنها را با برنامهٔ ثبتشده در budget_lines مقایسه میکند و پیشبینی را بهروزرسانی میکند. تحلیلی از این جنس اگر دستی انجام شود ممکن است ۳۰ دقیقه وقت بگیرد، اما با Claude Code در حدود ۲ دقیقه تمام میشود.
کار با چند ارز
اگر حسابهایی با ارزهای مختلف دارید، Claude Code این وضعیت را بهصورت طبیعی مدیریت میکند. سامانهٔ ثبت هزینه هر تراکنش را با ارز اصلی خودش ذخیره میکند و نرخ تبدیل را هر روز از ECB، CBR و NBS میگیرد.
> I received €2,500 freelance payment into wise-eur yesterday.
> Record it as income, category: freelance.
Claude Code دستور INSERT را با currency: 'EUR' و مبلغ درست مینویسد. بعداً اگر بپرسید «کل درآمد من در این ماه به دلار چقدر بوده؟» پایگاه داده هنگام اجرای پرسوجو و با استفاده از تازهترین نرخها تبدیل ارز را انجام میدهد و Claude Code فقط نتیجه را به شما گزارش میکند.
Claude Code چه کاری میتواند انجام دهد که رابطهای وب از عهدهاش برنمیآیند
قدرت Claude Code در امور مالی شخصی از ترکیب سه چیز میآید: دسترسی به فایل، اجرای درخواست HTTP و گفتوگو در یک ابزار واحد.
پردازش دستهای. پنج صورتحساب بانکی از حسابهای مختلف را در یک پوشه بگذارید و از Claude Code بخواهید همه را پردازش کند. هر فایل را میخواند، تراکنشها را در حساب درست ثبت میکند و در پایان ماندهها را تطبیق میدهد. انجام همین کار در یک رابط وب ممکن است یک ساعت کلیک و مرور بخواهد.
تحلیل سفارشی. مثلاً بپرسید: «در یک سال گذشته کدام ماهها بیشترین خرج سرگرمی را داشتهاند و بزرگترین تراکنشها چه بودهاند؟» هیچ برنامهٔ بودجهبندی معمولی دکمهای برای این پرسش ندارد. Claude Code پرسوجو را مینویسد، اجرا میکند و نتیجه را توضیح میدهد.
تبدیل قالب. اگر بانک شما CSV عجیبوغریبی با ستونهای ادغامشده و تاریخ اروپایی میدهد، میتوانید از Claude Code بخواهید اول فایل را تمیز کند. فایل را روی دستگاه شما بازنویسی میکند و بعد نسخهٔ تمیز را وارد میکند.
اسکریپتنویسی. میتوانید از Claude Code بخواهید یک اسکریپت پایتون بسازد که بعداً هم دوباره استفاده شود: «یک اسکریپت بنویس که CSV بانک Chase را وارد کند و همهٔ تراکنشها را ثبت کند. آن را در ~/finances/import-chase.py ذخیره کن.» دفعهٔ بعد فقط همان اسکریپت را اجرا میکنید؛ چه با Claude Code، چه بدون آن.
شمای پایگاه دادهای که Claude Code با آن کار میکند
رابط ماشینی Expense Budget Tracker مجموعهٔ کوچکی از رابطههای دادهای را در اختیار عاملهای هوش مصنوعی میگذارد که کار با آنها ساده و روشن است. این فهرست از طریق GET /v1/schema منتشر میشود.
| جدول | کاربرد |
|---|---|
ledger_entries |
همهٔ تراکنشهای درآمد و هزینه |
budget_lines |
برنامهٔ بودجه؛ مبلغ هر دستهبندی در هر ماه |
budget_comments |
یادداشتهای ثبتشده روی سلولهای بودجه |
exchange_rates |
نرخهای روزانهٔ ارز |
workspace_settings |
ترجیح مربوط به ارز گزارشگیری |
account_metadata |
طبقهبندی نقدشوندگی حسابها |
accounts |
نمای مربوط به ماندهٔ جاری هر حساب |
جدول ledger_entries ستونهای روشنی دارد: event_id، ts، account_id، amount، currency، kind، category، counterparty و note. به همین دلیل Claude Code معمولاً از همان بار اول میتواند دستورهای INSERT درست بنویسد؛ چون نام ستونها دقیقاً نشان میدهند چه چیزی در آنها ذخیره میشود.
امنیت و کنترل دسترسی
دادن دسترسی Claude Code به پایگاه دادهٔ هزینههایتان، در چهارچوب محدودیتهای SQL API، امن است.
هر پرسوجو از فیلتر Postgres Row Level Security عبور میکند. کلید API به کاربر شما متصل است و SQL فقط روی فضای کاری انتخابشده اجرا میشود؛ یعنی Claude Code حتی در یک پایگاه دادهٔ اشتراکی هم فقط به دادههای شما دسترسی دارد.
در هر درخواست فقط یک دستور مجاز است. نوع دستورهای پشتیبانیشده SELECT، WITH، INSERT، UPDATE و DELETE هستند. Claude Code نمیتواند جدول بسازد یا حذف کند، نمیتواند چند دستور را در قالب یک تراکنش واحد بفرستد، نمیتواند set_config() را صدا بزند و نمیتواند توضیح SQL یا شناسهٔ نقلقولشده بفرستد. SQL API همهٔ این محدودیتها را در سمت سرور اعمال میکند، فارغ از اینکه Claude Code چه چیزی بخواهد ارسال کند.
کلیدهای API بهصورت هش SHA-256 ذخیره میشوند و متن خام کلید هرگز وارد پایگاه داده نمیشود. بعداً هم میتوانید کلیدها را از داخل محصول لغو کنید. محدودیت نرخ استفاده را به ۱۰ درخواست در ثانیه و ۱۰٬۰۰۰ درخواست در روز محدود میکند؛ هر پاسخ هم مهلت انتظار ۳۰ ثانیهای و سقف ۱۰۰ ردیف دارد.
کلید API در متغیر محیطی محلی شما میماند. Claude Code هنگام ارسال درخواست آن را از $EXPENSE_BUDGET_TRACKER_API_KEY میخواند؛ بنابراین لازم نیست هیچوقت آن را در مخزن پروژه ثبت کنید.
گزینهٔ پیشرفته: استفادهٔ مستقیم از HTTP بدون ورود بومی عامل
اگر از قبل یک کلید API ماندگار برای Expense Budget Tracker دارید، Claude Code میتواند از فرایند کد ایمیلی عبور کند و مستقیماً از همان کلید استفاده کند. در این حالت هم همان مسیرها را صدا میزنید:
GET /v1/openapi.jsonبرای دریافت مشخصات ماشینخوان منتشرشدهGET /v1/schemaبرای رابطههای مجازPOST /v1/sqlبرای پرسوجوهای واقعی
این روش برای اسکریپتهای پایدار و محیطهای از قبل پیکربندیشده مفید است، اما برای بیشتر کاربران همان نشانی کشف سرویس بههمراه ورود با کد ایمیلی، سادهترین راهاندازی است.
یک روال واقعی: پیگیری هفتگی هزینهها در ۱۰ دقیقه
Kirill Markin سالهاست دقیقاً با همین روال کار میکند و جلسهٔ هفتگیاش در عمل تقریباً اینطور پیش میرود:
- صورتحسابهای بانکی را از همهٔ حسابها دانلود میکند. (۲ دقیقه)
- Claude Code را باز میکند و از او میخواهد فایلها را پردازش کند. (۳ دقیقه؛ کار را Claude Code انجام میدهد و شما فقط مرور میکنید)
- نتیجهٔ ثبتشده را بررسی میکند و دستهبندیهای اشتباه را اصلاح میکند. (۳ دقیقه)
- از Claude Code میخواهد همهٔ ماندهحسابها را با بانک تطبیق دهد. (۱ دقیقه)
- اگر آخر ماه باشد، از Claude Code میخواهد هزینهٔ واقعی را با بودجه مقایسه و پیشبینی را بهروزرسانی کند. (۲ دقیقه)
در مجموع، ظرف حدود ۱۰ دقیقه یک تصویر کامل از وضعیت مالیتان دارید: همهٔ تراکنشها دستهبندی شدهاند، همهٔ ماندهها بررسی شدهاند و بودجه بهروز شده است. این روش جواب میدهد چون بخشهای تکراری و خستهکنندهٔ کار، یعنی خواندن داده، دستهبندی، ثبت و محاسبه، دقیقاً همان چیزهایی هستند که Claude Code در آنها عالی است؛ در مقابل، قضاوت نهایی دربارهٔ دستهبندیها و تصمیمگیری برای تغییر بودجه همچنان در اختیار شما میماند.
شروع کار با Claude Code و Expense Budget Tracker
- اگر هنوز آن را نصب نکردهاید، Claude Code را نصب کنید.
- در expense-budget-tracker.com ثبتنام کنید یا برنامه را self-host کنید.
- آدرس
https://api.expense-budget-tracker.com/v1/را به Claude Code بدهید. - فرایند ورود با کد ایمیلی را کامل کنید و کلید برگشتی را در
EXPENSE_BUDGET_TRACKER_API_KEYذخیره کنید. - یک فضای کاری پیشفرض برای آن کلید انتخاب و ذخیره کنید.
- یک فایل محلی
CLAUDE.mdبا دستهبندیها، حسابها و قواعد کاری خودتان اضافه کنید. - Claude Code را در پوشهٔ مالیتان باز کنید و اولین صورتحساب بانکی را به آن بسپارید.
Claude Code شمای داده را بررسی میکند، دستهبندیهای شما را میشناسد و شروع میکند به ثبت تراکنشها. نتیجه را مرور کنید، هر مورد مشکوک را اصلاح کنید و یک سامانهٔ پیگیری هزینه خواهید داشت که با کمک هوش مصنوعی و از داخل ترمینال کار میکند.
Expense Budget Tracker با مجوز MIT منتشر شده و کاملاً متنباز است: github.com/kirill-markin/expense-budget-tracker. Claude Code هم از اینجا در دسترس است: docs.anthropic.com/en/docs/claude-code. شروع کار با هر دو ابزار رایگان است.