Inspiration
Inspiration
Every tax season in Malaysia, I dig through phone photos, PDFs and emails trying to remember what I bought that counts for relief. Laptops, gym fees, dental bills, internet bills, insurance: each has its own category and cap, and it is easy to miss money you could claim or claim something you shouldn't. These are private financial documents, so I don't want to upload them to a random cloud app. A home NAS is exactly where they should be sorted.
What it does
You tell it a tax year and a folder, for example "Prepare my LHDN reliefs for 2025 from my Receipts folder." The Skill:
- Finds every document and photo from that year in the folders you chose
- Reads photographed receipts with on-NAS OCR
- Extracts the merchant, date, amount and what was bought
- Sorts each item into the official LHDN YA 2025 relief categories, applying each cap and sub-limit (for example RM2,500 lifestyle, RM1,000 sports, RM1,000 check-ups inside the RM10,000 medical limit)
- Pulls year-to-date EPF and SOCSO contributions from payslips
- Flags anything a receipt cannot prove (a serious-illness diagnosis, a parent relationship, a registered childcare centre) as needs review instead of guessing
- Shows a draft, and only after you approve, saves one summary file with every amount linked to its source document
- Optionally tags each document with its relief category for next year's audit trail
Nothing is moved or deleted, and every write waits for your approval.
How I built it
I built it with the official UGREEN Skill Developer Package (uliya-skill-kit 0.7.3). It is an orchestration Skill: the main Skill delegates each step to UGREEN's NAS experts and passes only real results to the next step.
- file-agent (ug-filesystem) finds the year's documents and images
- photo-agent (ug-photo vision-ocr) reads photographed receipts
- document-agent (ug-document extract, receipt schema) pulls out the key fields
- knowledge-agent (ug-knowledge save-text) saves the summary
- file-agent (ug-filemgr tags) adds optional category tags
The relief categories and caps live in a reference table summarised from LHDN's public Tax Relief YA 2025 list on hasil.gov.my. An AI assistant helped draft and review the Skill under my direction.
Challenges I ran into
Tax rules are full of exceptions. A receipt can show you paid a hospital, but not whether the illness qualifies. I had to decide where the Skill should stop and ask a human, and wrote clear needs-review rules for those cases instead of letting the AI guess. Handling every delegation state (failed, cancelled, waiting for the user, waiting for approval) without losing partial results also took careful design.
Accomplishments I'm proud of
The Skill passes UGREEN's official checker with zero errors and zero warnings. More importantly, it never invents a number: every total traces back to a real file on the NAS, and anything uncertain is shown to the user instead of hidden.
What I learned
Good AI workflows are as much about what the AI refuses to do as what it does. Local-first matters most for documents people are nervous about sharing, and financial records are top of that list.
What's next
- Category tables for future years of assessment as LHDN updates them
- Testing OCR accuracy on faded thermal receipts and Malaysian e-invoices on a real UGREEN AI NAS
- A spouse mode for couples filing separately, so shared receipts are split correctly ## What it does
How we built it
Challenges we ran into
Accomplishments that we're proud of
What we learned
What's next for My Tax Relief Organizer
Built With
- markdown
- ug-document
- ug-filemgr
- ug-filesystem
- ug-knowledge
- ug-photo
- ugos
- ugreen
