about
がっかり (gakkari) — “disappointed / let down.” OL — Office Lady. The small sigh of opening your bank app and seeing the monthly total.
Gakkari OL is a calm terminal subscription tracker. It runs locally, stores everything in a single SQLite file next to the code, and reminds you what renews this week in the visual idiom of a Japanese textboard.
No accounts. No cloud sync. No telemetry. No gamification.
install
Requires Python 3.12 or newer.
pip install git+https://github.com/kenrinzero/gakkari-ol
Then launch:
$ python -m gakkari
Once installed, the gakkari console script also works (.venv\Scripts\gakkari.exe on Windows).
features
- CRUD with soft-delete — subs are never hard-deleted; cancelled is the terminal state.
- Multi-currency totals — ECB rates from frankfurter.dev, cached daily.
- Gross / net VAT modes, per-row tax mode + rate.
- Adaptive notice board — 1 to 2 week rolling textboard window. Trial-expiry warnings with louder kaomoji.
- Auto-advance (k) + undo (u) — one keystroke advances a renewal and logs it to a local ledger; u reverses the last one.
- History view (h) — renewal log grouped by month with subtotals; the current month shows actual vs. your estimate.
- Archive view (v) + resume (r) — surface cancelled subs dimmed for reference; r resumes the highlighted one.
- Conversion column (c) — show each row converted to your base (or any chosen) currency next to its native price.
- Duplicate (D) & payment-method tags — clone a sub into a prefilled form; tag which card it's on, and filter by it.
- Budget watch — set a monthly income; the notice board flags when committed spend goes over.
- Safe by default — rotating daily DB backup, import validation + duplicate-guard, Decimal-precise money.
- Sort & totals cycles — date / period / name / amount; estimate / monthly / yearly / by-period / by-category / 30·60·90-day forecast / income.
- CSV & JSON import / export, full EN / JA bilingual UI.
- Daily
--noticeCLI for Windows Task Scheduler, cron, login scripts.
preview
This is the notice panel for an active install — adaptive textboard with renewal posts, trial warnings, deterministic kaomoji per day.
────────────────────────────────────────
Upcoming renewals
────────────────────────────────────────
1 :OL :2026-05-28(木) ID:66e347b3
Spotify renews today!
+ 1 more
キタ━━━(゚∀゚)━━━!!
────────────────────────────────────────
2 :OL :2026-05-29(金) ID:e0130a8d
No renewals today
( ´∀`)
────────────────────────────────────────
3 :OL :2026-05-30(土) ID:22174871
Pixiv Premium renews today!
Σ(゚Д゚)
────────────────────────────────────────
4 :OL :2026-06-02(火) ID:dea2b7ff
NewApp Beta trial ends today!
(((;゚Д゚)))
────────────────────────────────────────
〜 終 〜
keybindings
Editing
- a
- Add
- e
- Edit
- d
- Delete (cancel)
- D
- Duplicate
- k
- Kept it · advance & log
- u
- Undo last k
- →
- Notes
Views
- /
- Filter
- g
- Gross / Net
- p
- Paused
- v
- Archive
- r
- Resume (un-cancel)
- o
- Sort cycle
- t
- Totals cycle
- c
- Convert column
Screens
- h
- History
- n
- Notices ↔ Tutorial
App
- s
- Settings
- x
- Export
- i
- Import
- l
- Language
- q
- Quit
- ?
- Help
daily notice
python -m gakkari --notice reads the database and prints today’s renewals plus a 7-day preview, then exits. Wire it into Windows Task Scheduler (or cron, or login scripts) and you’ll see what renews this week before you open anything else.
[Gakkari OL] Upcoming renewals — 2026-05-12 (火) ─────────────────────────────────────────────── !! TODAY (1): - Spotify USD 9.99 (monthly) Upcoming (next 7 days): +2d 2026-05-14 (木) Netflix USD 15.49 +5d 2026-05-17 (日) Domain USD 12.00
credits
Built collaboratively with several AI models, each contributing a distinct stage:
- Mistral Large 2 — original concept
- Grok Imagine — mascot character design
- Claude Sonnet 4.7 — initial scaffold and visual style
- Claude Opus 4.6 — feature implementation (Phases 1–4)
- Claude Opus 4.7 — Phases 5–6: CLI, restructure, history, ledger, archive, trial expiry, sort/totals/convert cycles, notice window, tutorial
- Claude Opus 4.8 — convert-column currency, income totals, 0.4.0: spending insights, undo, backups, import guards, payment-method, test suite + CI
- Mavis (MiniMax-M3) — 0.4.2: notice board respects status, test coverage
MIT licensed. Source on GitHub.