- Dengan menghubungkan data akun keuangan dan konektor MCP, pemeriksaan keuangan berulang dapat diotomatisasi hanya dengan prompt berdasarkan saldo, riwayat transaksi, investasi, dan informasi pinjaman
- Metode Codex CLI cron-job yang lama sering rusak karena masalah login web, rendering browser, 2FA, dan keterbatasan passkey, sehingga sulit menjaga pemeriksaan per akun tetap berjalan stabil
- Otomatisasi email harian yang dibangun ulang menggabungkan jadwal pagi, custom connector, dan alat
email_me() agar semua akun dan kekayaan bersih dirangkum lalu dikirim, dan isinya juga bisa diubah hanya dengan menyesuaikan prompt
- Otomatisasi pemantauan transaksi mendeteksi transaksi anomali dan arus keluar besar dengan membandingkannya terhadap pola terbaru, lalu diatur agar mengirim email hanya saat syarat terpenuhi sehingga mengurangi notifikasi yang tidak perlu
- Pendekatan ini memungkinkan otomatisasi operasional yang dipersonalisasi diuji dan diperluas dengan cepat dengan biaya sangat rendah, serta membuat pemeriksaan keuangan yang terhubung ke data real-time bisa ditangani langsung bahkan oleh non-developer
Cara menyusun otomatisasi
- Driggsby terhubung ke akun keuangan lewat Plaid, lalu mengekspos alat seperti saldo, riwayat transaksi, informasi investasi, dan informasi pinjaman melalui MCP
- Awalnya penggunaan berfokus pada interaksi percakapan yang mengajukan pertanyaan ke Claude saat diperlukan, tetapi kemudian terlihat pola berulang seperti mengecek kekayaan bersih, meninjau saldo, dan memantau transaksi
- Claude Code routines mempermudah mengotomatiskan tugas berulang semacam ini hanya dengan prompt
- Tanpa perlu menulis kode agent loop terpisah atau menyiapkan lingkungan deployment, cukup hubungkan prompt dan konektor MCP agar bisa berjalan
- Jika data dan alat dapat dihubungkan dengan rapi melalui konektor MCP, maka otomatisasi bisa disusun
Batasan metode lama dan peralihannya
- Sebelumnya, dengan Codex CLI cron-job non-interaktif, sistem dikonfigurasi untuk login ke akun bank, kartu kredit, sekuritas, dan pensiun, mengambil saldo serta transaksi terbaru, lalu mengirim email ringkasan keuangan harian
- Chrome DevTools MCP digunakan untuk login ke tiap situs web dan mengekstrak informasinya
- Tugasnya sederhana, yaitu mengirim email ringkasan keuangan harian ke pasangan suami istri, tetapi praktiknya sering rusak
- Kegagalan berulang kembali terjadi keesokan harinya, dan masalah rendering browser atau permintaan 2FA yang tak terduga sering membuat proses berhenti di tingkat akun
- Ada juga kasus GPT mengubah format email sepenuhnya, atau bingung saat berjalan sehingga hanya mengambil informasi dari satu akun
- Beberapa akun baru yang perlu ditambahkan bahkan hanya mengizinkan login dengan passkey
- Karena gangguan berulang ini, setiap kali email yang diharapkan tidak datang harus ditangani secara manual, dan untuk membuat proses itu tidak terlalu menegangkan, Driggsby pun dibangun
Otomatisasi email harian
- Hal pertama yang dibangun ulang adalah email harian, dengan tujuan menerima ringkasan rapi semua akun dan kekayaan bersih setiap pagi
- Informasi ini sebelumnya berada di spreadsheet lama di suatu tempat di Google Drive
- Memperbaruinya hanya memakan sekitar 15 menit, tetapi gesekan kecil itu membuatnya jarang diperbarui, paling banyak hanya sekitar sekali tiap 6 bulan
- Di routines, konfigurasi awal selesai dengan sangat mudah hanya lewat input prompt, pengaturan jadwal pagi, dan menghubungkan Driggsby custom connector
- Namun pada awalnya belum ada cara untuk mengirim email, dan saat Gmail connector dipasang, yang dihasilkan hanya draf yang rapi
- Gmail connector tidak bisa benar-benar mengirim, hanya bisa membuat draft
- Untuk mengatasinya, ditambahkan alat MCP
email_me() ke Driggsby, dan pendekatan ini bekerja dengan cukup nyaman
- Penerima dibatasi hanya ke email terverifikasi milik pemilik akun, dan tautan serta gambar diblokir agar tingkat keamanannya tetap bisa diterima
- Isi dipaksa dalam Markdown, lalu CSS ditambahkan ke email yang merender Markdown untuk mengurangi ketidakkonsistenan format yang muncul di tiap eksekusi
- Beberapa bug kecil bisa diperbaiki relatif mudah berkat inspectability dari routines
- UI-nya terlihat seperti sesi Claude Code biasa di Claude Desktop atau aplikasi web, sehingga mudah memeriksa statusnya langsung saat berjalan
- Setelah pengujian, email harian benar-benar mulai sampai, dan setelah itu perubahan isi email juga bisa dilakukan dengan menyesuaikan prompt saja di UI routines tanpa mengubah kode
- Karena item yang dilihat oleh masing-masing pasangan berbeda, dimungkinkan juga menyusun email harian yang berbeda untuk masing-masing orang dengan prompt terpisah
Pemantauan transaksi anomali dan pengeluaran
- Setelah email harian stabil, mulai ditambahkan lebih banyak otomatisasi dengan memanfaatkan fakta bahwa agent bisa dijalankan tanpa beban infrastruktur terpisah
- Pertama, disusun pemantauan transaksi anomali menggunakan data transaksi, dan pada routine mingguan diatur untuk memuat transaksi kartu kredit Amex selama 1 tahun namun berfokus terutama pada 7 hari terakhir
- Jika transaksi 7 hari terakhir tampak tidak terduga dibanding pola masa lalu, seperti penagihan ganda, perubahan biaya langganan, atau nama/deskripsi merchant yang asing, maka sistem mengirim email
- Jika transaksi 7 hari terakhir normal dan konsisten, notifikasi dibatasi agar tidak dikirim
- Prompt sederhana seperti ini bisa menghasilkan false positive, tetapi biaya untuk menyempurnakannya seiring waktu maupun biaya peninjauannya tampak rendah
- Berikutnya, pada akun giro dibuat routine untuk memantau arus keluar besar yang tak terduga
- Hanya transaksi satu hari terakhir yang ditinjau, dan dibandingkan dengan pola 12 bulan sebelumnya untuk mencari transaksi di atas $500 yang berupa arus keluar besar atau arus keluar yang tidak biasa
- Karena otomatisasi berjalan setiap hari, cakupan peninjauan sengaja dibatasi ketat hanya ke satu hari terakhir
- Jika ada item yang memenuhi syarat, sistem mengirim email berjudul "Checking account outflow alert", dan jika tidak ada maka tidak memberi notifikasi
- Setelah itu, pendekatan ini diperluas hingga mencakup pemantauan investasi, analisis langganan, dan pemantauan berbagai kategori pengeluaran
- Karena sangat mudah dikonfigurasi dengan routines, seiring waktu kebutuhan untuk menggabungkan banyak kondisi sekaligus atau menyempurnakan prompt dengan lebih detail akan makin besar
Mengapa ini penting
- Kekuatan utama routines adalah bisa dicoba hampir tanpa usaha
- Begitu ada prompt yang terpikir, otomatisasi bisa langsung dijalankan
- Yang menonjol adalah bahwa bahkan non-developer pun dapat langsung menangani otomatisasi berbasis cloud yang terhubung ke data live
- Pasangannya yang seorang CPA juga menarik data real-time dari Driggsby dan menjalankan otomatisasinya sendiri
- Pola penggunaan seperti ini memungkinkan pembuatan otomatisasi operasional yang dipersonalisasi dengan cepat hanya menggunakan prompt dan konektor
1 komentar
Komentar Hacker News
Baru-baru ini aku mencoba menyusun seperti ini sendiri. Sinkronkan transaksi rekening giro/kartu kredit ke Google Sheets dengan https://tiller.com/, lalu mirror spreadsheet itu ke DB Supabase gratis dengan GitHub Actions
Aku membuat Claude/Codex bisa mengakses riwayat transaksi dan saldo lewat kueri berbahasa Inggris menggunakan Supabase MCP atau psql, dan kemampuannya menemukan pola langganan atau pola aneh cukup mengesankan. Terutama perkiraan arus kas, yang biasanya tidak terlalu bagus di tool online, hasilnya lumayan, misalnya aku bisa bertanya berapa banyak yang aman dipindahkan ke tabungan berdasarkan pola pengeluaran bulanan dan kas yang tersedia
Untuk klasifikasi otomatis, Claude cukup bagus menangani DSL kustom. Aku menyuruhnya membuat rule set tabel markdown untuk normalisasi penerima pembayaran/kategori, dan rule itu juga dijalankan bersama di GitHub Actions
Apakah ditarik lewat sesuatu seperti Plaid, apakah masih harus menyerahkan kredensial web banking, dan bagaimana 2FA ditangani
Untuk institusi keuangan yang tidak punya API resmi, aku juga khawatir apakah masih bergantung pada screen scraping, dan kalau ada bug yang menyebabkan klik atau persetujuan yang tidak disengaja, bahkan transfer yang salah, apa yang terjadi. Memang katanya read-only, tapi di perbankan pribadi aku hampir tidak pernah melihat bank yang benar-benar mendukung akun pendamping read-only
Aku juga penasaran apakah ada asuransi atau jaminan supaya pengguna bisa mendapat ganti rugi jika terjadi kerugian finansial besar, dan khawatir juga dengan implikasi privasi karena seluruh data bank diperlihatkan ke dua perusahaan. Aku pernah dengar soal class action terkait data yang dijual atau dibagikan secara tidak semestinya, tapi tidak tahu sebenarnya apa yang terjadi
Ada juga klausul di syarat bank yang menyatakan kita setuju untuk tidak membagikan kata sandi ke pihak ketiga. Rasanya tidak nyaman menyerahkan keuangan pribadiku ke layanan web/cloud; aku lebih suka software klien yang berjalan lokal dan berkomunikasi dengan API bank. Penasaran apakah ada yang seperti itu di Kanada
Katanya open banking akan datang, tapi masih tidak jelas apakah software buatan pribadi bisa mengaksesnya secara langsung. Kalau memang benar-benar tepercaya, dan ada kebijakan yang mewajibkan minimnya penyimpanan internal setelah data diunduh, aku juga ingin memakai API bank
Aku sudah pakai Tiller sejak Mint diakuisisi Intuit, dan setup-ku mirip. Bedanya aku menghubungkan akses sheets dengan model qwen lokal dan API key buatan sendiri via OAuth, tapi pendekatan Claude Routine sepertinya jauh lebih mudah
Aku ingin melihat keseluruhan cara setup-nya, terutama prompt apa yang dipakai
Mungkin karena kekayaan bersih-ku kecil, tapi jujur aku kurang paham kenapa ini bernilai
Aku juga tidak ingin LLM mengirim email setiap hari, dan kalau aku perlu melihat posisi investasi lebih sering daripada per kuartal, rasanya aku justru harus pindah ke investasi yang lebih aman. Aku agak tertarik dengan tool budgeting, tapi aku ingin itu sepenuhnya deterministik
Perencanaan keuanganku umumnya cukup tenang, jadi menurutku lebih baik mencari pekerjaan bergaji lebih tinggi daripada menghabiskan lebih banyak waktu mengoptimalkan pengeluaran dari kondisi sekarang
Hal yang terkait angka menurutku memang seharusnya sepenuhnya deterministik
Aku pernah menunjukkan DB SQLite ke LLM dan memintanya menjelaskan apa yang terlihat dari transaksi lima tahun terakhir, dan hal-hal yang ditangkap atau diingatkannya cukup mengesankan. Tapi aku tidak yakin ada nilai praktis yang benar-benar membuatku mengubah sesuatu
Untuk sementara aku akan coba membuatnya meninjau tiap bulan, tapi bahkan hanya dengan memperbarui anggaran aku biasanya sudah tahu kondisi keuanganku, jadi belum jelas seberapa membantu itu
Aku memakainya untuk melacak kartu kredit dan rekening giro, dan kalau mau, kamu juga bisa menyambungkan MCP ke sana untuk menganalisis data terpusat itu
Aku tinggal di Kanada dan memakai https://lunchmoney.app/ untuk pelacakan dengan integrasi Plaid
Ada API-nya, jadi aku menyuruh LLM membuat CLI, dan hasilnya agen bisa mengambil hampir semua data yang dibutuhkan sesuka hati
Hal lain yang kusuruh lakukan adalah menumpuk rule penandaan, dan itu berjalan sekali sehari lewat cron. Kadang aku juga menyuruhnya meninjau rule-rule itu supaya membuat rule baru untuk transaksi yang belum terklasifikasi
Menurutku pola membuat LLM mengabadikan pekerjaan ke dalam rule engine atau kode itu cukup bagus. Setelah ada CLI yang bisa dikueri, kita bisa menyuruh agen melakukan hampir apa saja
Untuk yang tertarik, aku akan membagikan gambaran besar setup infrastruktur/keamanan kami
Backend dan CLI kami ditulis dalam Rust dengan linting ketat, webapp berjalan di atas Axum, dan terhubung ke Postgres lewat sqlx
Fitur finansial bersifat read-only. Tidak ada tool transfer, pembayaran tagihan, atau pengiriman uang, dan uang juga tidak bisa dipindahkan dari permukaan AI
Dari Plaid kami hanya meminta transaksi, investasi, dan utang; kami tidak meminta auth/transfer/payment initiation, jadi kami tidak menerima nomor rekening atau routing penuh, hanya mask empat digit terakhir dasar
Nama pengguna dan kata sandi bank masuk ke Plaid Link tanpa melewati kami, dan kami hanya menyimpan access token per institusi
Plaid access token disimpan di DB terpisah di balik satu layanan custody Cloud Run. Saat disimpan, token dienkripsi dengan Cloud KMS, broker memanggil endpoint KMS encrypt/decrypt, dan material root key tidak pernah keluar dari batas Google HSM. Hanya service account broker yang punya hak enkripsi/dekripsi, dan webapp tidak punya izin membaca DB itu
Untuk setiap panggilan enkripsi/dekripsi, kami mengirim Plaid item ID sebagai AAD agar ciphertext untuk satu item tidak bisa ditukar lalu didekripsi sebagai token item lain
Setiap layanan Cloud Run berjalan dengan cloud identity dan DB role masing-masing, dan pemanggilan internal antar layanan juga diautentikasi dengan identity token berumur pendek
DB operasional tidak punya public IP, dan secret tidak disimpan di source atau image container, melainkan di managed secret storage
AI connector menggunakan OAuth 2.1 + PKCE dan memiliki scope per pengguna, serta bisa dicabut lewat UI. Setiap tool call dicatat bersama nama tool, argumen yang sudah dibersihkan, klien pemanggil, dan alasan yang diajukan agen, sehingga pengguna bisa melihat apa yang diminta LLM atas nama mereka
Permukaan AI tidak memiliki tool fetch-URL, shell, atau I/O serbaguna; hanya mengembalikan data finansial terstruktur. Networking, IAM, dan grant DB semuanya dikelola lewat Terraform, dan perubahan infrastruktur juga hanya dilakukan lewat jalur itu
Akses infrastruktur dikendalikan dengan 2FA dan security key
Rasanya seperti kamu memahami audiens situs ini, dan fakta bahwa keamanan dirancang dengan teliti di setiap lapisan membuatku lebih percaya pada keseluruhan tool ini
Aku juga sempat mencoba membangun sesuatu yang mirip sendiri; MVP awalnya hanya mengunduh PDF laporan secara manual lalu memakai Claude untuk menyiapkan ledger untuk akuntansi plain text, dengan rencana menambahkan Plaid nanti
Aku khususnya penasaran bagaimana orang-orang menggunakan Plaid. Untuk mulai, apakah perlu jumlah pengguna tertentu, atau apakah aku bisa membuat akun Plaid untuk penggunaan pribadi hanya agar rekening pribadi dan bisnis milikku terhubung ke API yang rapi
Hati-hati saat memakai Routine
Ada catatan kecil yang nyaris tidak terlihat, bahwa dalam mode routine, tool MCP selalu diizinkan termasuk izin tulis. Jadi secara teknis agen bisa saja mengubah resource sesukanya
Ini kelihatan seperti solusi yang mencari masalah. https://tiller.com/ saja sudah bekerja dengan sangat baik, dan kamu bisa melakukan semua perhitungan yang diinginkan di spreadsheet, plus tidak ada halusinasi
Aku juga tidak terlalu paham kenapa orang ingin ringkasan LLM yang panjang lebar untuk dibaca. Kalau kamu sesekali mengklasifikasikan pengeluaran sendiri, anomali biasanya langsung terlihat, dan dengan Tiller itu juga mudah dilakukan
Akan ada banyak sekali produk berbeda di area ini, dan produk kami hanyalah salah satu pendekatan di antaranya. Aku senang melihat lebih banyak percobaan seperti ini
Yang lebih besar adalah bahwa LLM bisa dengan mudah menyerap dan menggabungkan berbagai sumber data
Era Finance kami sedang membangun solusi yang tepat untuk ini. Era Context adalah MCP yang menghubungkan agen apa pun yang kompatibel ke keuangan pribadi, dan bisa dilihat di https://era.app
Saat ini kami fokus pada tool baca, tapi tool tulis seperti transfer uang atau pelunasan utang juga sedang disiapkan
Kalau ada fitur yang diinginkan, aku ingin mengajak kalian mengirim email ke alex di domain itu. Sebagai konteks, aku Alex sang CEO, hampir baru di HN, sebelumnya memimpin web presence stripe.com, dan sebelumnya lagi ada di Square/CashApp
Mungkin pertarungannya memang sudah kalah, tapi aku tetap tidak mengerti kenapa orang ingin menyerahkan seluruh riwayat transaksi keuangan ke LLM
Rasanya penyedia LLM juga tidak punya perlindungan yang lebih kuat atas penggunaan data seperti ini dibanding industri keuangan. Industri keuangan sendiri saja sudah kejam dalam hal mengumpulkan, menambang, dan menjual data kita
Sebagai orang yang tertarik pada pola pengeluaran atau investasi, bahkan dengan prompt yang sangat dasar pun aku pernah menemukan hal-hal yang sebelumnya terlewat
Tentu saja membuat ini aman sangat sulit, dan karena itu aku sudah memikirkan bagian itu sangat lama
Jadi aku kurang paham apa sebenarnya masalahnya
Bank utamaku, Monzo di Inggris, menyediakan API lengkap dan trigger webhook untuk event
Karena itu aku bisa membuat bot WhatsApp yang menanyakan alasan jika ada transaksi tidak biasa, dan LLM hanya kupakai untuk penalarannya. Aku juga menyiapkan otomatisasi yang setiap hari menjelang tengah malam menyapu saldo ke rekening tabungan untuk memaksimalkan bunga harian
Aku mempertahankan saldo kecil saja di rekening harian, lalu jika siang hari ada pengeluaran, dana diisi kembali dari tabungan agar saldo rendah itu tetap terjaga. Kalau butuh pengeluaran lebih besar, baru kupindahkan secara manual
Saat mencoba menganalisis transaksi lama dengan Claude, aku terus mengalami halusinasi seperti membuat tagihan yang tidak ada, menambahkan item baru, dan menghitung ganda
Untuk urusan keuangan, Claude tidak cukup kalau hanya benar 95%. Aku harus selalu waspada dan meninjau hasilnya, jadi dalam kasusku nilainya praktis hilang
Aku juga merasa Claude cukup sering berhalusinasi, terutama pada dataset yang tidak lengkap atau terbatas