Initial commit

This commit is contained in:
Zhongwei Li
2025-11-30 08:57:54 +08:00
commit 8f952ee727
50 changed files with 11199 additions and 0 deletions

View File

@@ -0,0 +1,23 @@
# Agent Smith Templates
This directory contains composable template configurations for PocketSmith onboarding.
## Structure
- **primary/** - Primary income structure templates (choose ONE)
- **living/** - Living arrangement templates (choose ONE)
- **additional/** - Additional income source templates (choose MULTIPLE)
## Usage
Templates are YAML files that define:
- Categories to create
- Categorization rules
- Tax tracking configuration
- Smart alerts
During onboarding, templates are selected and merged using `scripts/setup/template_merger.py`.
## Template Schema
See individual layer README files for YAML schema details.

View File

@@ -0,0 +1,15 @@
# Additional Income Templates
Select MULTIPLE templates for additional income sources beyond your primary income.
## Available Templates
- `side-hustle.yaml` - Freelancing, consulting, gig work
- `property-investor.yaml` - Rental income, negative gearing, CGT
- `share-investor.yaml` - Dividends, franking credits, share CGT
- `crypto-investor.yaml` - Cryptocurrency trading and staking
- `trust-structures.yaml` - Family trust, company distributions
## YAML Schema
Same structure as primary templates, with `layer: additional` and higher priority values (3+).

View File

@@ -0,0 +1,175 @@
name: Airbnb Host
layer: additional
description: |
Short-term rental income tracking for Airbnb, Stayz, and similar platforms.
Includes expense apportionment for owner-occupied properties and CGT considerations.
categories:
- name: "Airbnb:Income"
parent: null
description: "Short-term rental income from Airbnb, Stayz, etc."
- name: "Airbnb:Cleaning & Laundry"
parent: null
description: "Cleaning services and laundry for guests"
- name: "Airbnb:Guest Amenities"
parent: null
description: "Toiletries, coffee, tea, snacks for guests"
- name: "Airbnb:Linen & Towels"
parent: null
description: "Linen, towels, bedding for guest accommodation"
- name: "Airbnb:Platform Fees"
parent: null
description: "Airbnb/Stayz service fees and commissions"
- name: "Airbnb:Repairs & Maintenance"
parent: null
description: "Repairs and maintenance related to rental use"
- name: "Airbnb:Utilities"
parent: null
description: "Utilities attributable to rental use (apportioned)"
- name: "Airbnb:Insurance"
parent: null
description: "Host insurance and additional coverage"
- name: "Airbnb:Marketing & Listings"
parent: null
description: "Photography, listing fees, advertising"
rules:
- id: airbnb-income
pattern: "Airbnb.*payout|Airbnb.*income|Stayz.*payout|booking.com.*payout|short.*term.*rental.*income"
category: "Airbnb:Income"
confidence: high
labels: ["Assessable Income", "Rental Income"]
description: "Detect short-term rental income"
- id: airbnb-cleaning
pattern: "cleaning.*Airbnb|laundry.*guest|linen.*service|professional.*clean.*rental"
category: "Airbnb:Cleaning & Laundry"
confidence: high
labels: ["Tax Deductible", "Apportioned"]
description: "Detect cleaning and laundry expenses"
- id: guest-amenities
pattern: "toiletries.*guest|coffee.*Airbnb|tea.*guest|snacks.*guest|welcome.*pack"
category: "Airbnb:Guest Amenities"
confidence: medium
labels: ["Tax Deductible", "Apportioned"]
description: "Detect guest amenity purchases"
- id: linen-towels
pattern: "linen.*rental|towels.*guest|bedding.*Airbnb|sheets.*accommodation"
category: "Airbnb:Linen & Towels"
confidence: high
labels: ["Tax Deductible", "Apportioned"]
description: "Detect linen and towel purchases"
- id: platform-fees
pattern: "Airbnb.*service.*fee|Airbnb.*commission|Stayz.*fee|booking.*commission"
category: "Airbnb:Platform Fees"
confidence: high
labels: ["Tax Deductible"]
description: "Detect platform service fees"
- id: rental-repairs
pattern: "repair.*rental|maintenance.*Airbnb|fix.*guest.*room|handyman.*rental"
category: "Airbnb:Repairs & Maintenance"
confidence: medium
labels: ["Tax Deductible", "Apportioned", "Repairs vs Improvements"]
description: "Detect repairs related to rental use"
- id: rental-utilities
pattern: "electricity.*rental|gas.*rental|water.*rental|internet.*rental"
category: "Airbnb:Utilities"
confidence: low
labels: ["Tax Deductible", "Apportioned"]
description: "Detect utilities for apportionment (requires manual review)"
- id: host-insurance
pattern: "Airbnb.*insurance|host.*insurance|short.*term.*rental.*insurance"
category: "Airbnb:Insurance"
confidence: high
labels: ["Tax Deductible", "Apportioned"]
description: "Detect host insurance premiums"
- id: listing-marketing
pattern: "photography.*listing|Airbnb.*listing|property.*photos.*rental"
category: "Airbnb:Marketing & Listings"
confidence: medium
labels: ["Tax Deductible"]
description: "Detect marketing and listing expenses"
tax_tracking:
income_tracking: true
expense_apportionment_required: true
apportionment_basis: "days_rented"
cgt_main_residence_exemption_impact: true
record_keeping_days_rented: true
record_keeping_days_personal: true
alerts:
- type: apportionment_reminder
schedule: quarterly
message: "Calculate expense apportionment: days rented vs personal use"
- type: days_rented_tracker
schedule: monthly
message: "Record days rented this month for expense apportionment"
- type: eofy_airbnb_reminder
schedule: annual
before_date: "06-15"
message: "EOFY - compile Airbnb income, calculate apportioned expenses, document days rented vs personal use"
- type: cgt_exemption_warning
trigger: annual
message: "Using main residence for income may affect CGT main residence exemption. Keep detailed records."
- type: gst_threshold_warning
trigger: annual_income_exceeds
threshold: 75000
message: "Airbnb income + other business income exceeds $75k - GST registration may be required"
labels:
- name: "Assessable Income"
description: "Income assessable for tax purposes"
color: "green"
auto_apply: true
- name: "Rental Income"
description: "Short-term rental income"
color: "lightgreen"
auto_apply: false
- name: "Tax Deductible"
description: "Deductible expense (may require apportionment)"
color: "green"
auto_apply: false
- name: "Apportioned"
description: "Expense requiring apportionment by rental vs personal use"
color: "orange"
auto_apply: true
- name: "Repairs vs Improvements"
description: "Requires classification: repairs (deductible) vs improvements (capital)"
color: "orange"
auto_apply: false
dependencies:
requires: []
conflicts_with: ["property-investor"]
notes: "Use property-investor for long-term rentals. Use airbnb-host for short-term/part-time hosting."
metadata:
created: "2025-11-25"
version: "1.0.0"
author: "Agent Smith"
priority: 3
ato_guidance: "Airbnb income is assessable. Expenses must be apportioned if property is also used privately. Keep records of days rented vs personal use."

View File

@@ -0,0 +1,175 @@
name: Crypto Investor
layer: additional
description: |
Cryptocurrency investment tracking with ATO-compliant CGT and income reporting.
Covers exchanges, staking, DeFi yields, and NFT transactions.
categories:
- name: "Crypto:Purchases"
parent: null
description: "Cryptocurrency purchases (establishes cost base)"
- name: "Crypto:Sales"
parent: null
description: "Cryptocurrency sales (CGT events)"
- name: "Crypto:Staking Income"
parent: null
description: "Staking rewards and interest (ordinary income)"
- name: "Crypto:DeFi Yields"
parent: null
description: "DeFi protocol yields and liquidity rewards (ordinary income)"
- name: "Crypto:Airdrops & Forks"
parent: null
description: "Airdropped tokens and fork distributions (ordinary income at receipt)"
- name: "Crypto:NFT Purchases"
parent: null
description: "NFT purchases (establishes cost base)"
- name: "Crypto:NFT Sales"
parent: null
description: "NFT sales (CGT events)"
- name: "Crypto:Gas Fees"
parent: null
description: "Network gas fees (adds to cost base)"
- name: "Crypto:Exchange Fees"
parent: null
description: "Trading and platform fees"
rules:
- id: crypto-purchase
pattern: "CoinSpot|Binance|Coinbase|Kraken|Independent.*Reserve|Swyftx|BTC.*Markets|crypto.*buy|BTC.*purchase|ETH.*purchase"
category: "Crypto:Purchases"
confidence: medium
labels: ["Crypto", "Cost Base"]
description: "Detect cryptocurrency purchases on Australian exchanges"
- id: crypto-sale
pattern: "crypto.*sell|BTC.*sale|ETH.*sale|sold.*crypto"
category: "Crypto:Sales"
confidence: medium
labels: ["Crypto", "CGT Event"]
description: "Detect cryptocurrency sales (CGT event)"
- id: staking-rewards
pattern: "staking.*reward|staked.*income|validator.*reward|POS.*reward"
category: "Crypto:Staking Income"
confidence: high
labels: ["Crypto", "Ordinary Income"]
description: "Detect staking rewards (ordinary income)"
- id: defi-yields
pattern: "DeFi|yield.*farming|liquidity.*pool|lending.*interest|Aave|Compound|Uniswap.*reward"
category: "Crypto:DeFi Yields"
confidence: medium
labels: ["Crypto", "Ordinary Income"]
description: "Detect DeFi protocol yields"
- id: airdrops
pattern: "airdrop|token.*distribution|fork.*distribution"
category: "Crypto:Airdrops & Forks"
confidence: high
labels: ["Crypto", "Ordinary Income"]
description: "Detect airdrops and fork distributions"
- id: nft-purchase
pattern: "NFT.*purchase|OpenSea.*buy|Rarible.*buy|digital.*art.*purchase"
category: "Crypto:NFT Purchases"
confidence: medium
labels: ["Crypto", "NFT", "Cost Base"]
description: "Detect NFT purchases"
- id: nft-sale
pattern: "NFT.*sale|OpenSea.*sale|sold.*NFT"
category: "Crypto:NFT Sales"
confidence: medium
labels: ["Crypto", "NFT", "CGT Event"]
description: "Detect NFT sales"
- id: gas-fees
pattern: "gas.*fee|network.*fee|ETH.*fee|transaction.*fee.*crypto"
category: "Crypto:Gas Fees"
confidence: high
labels: ["Crypto", "Cost Base Addition"]
description: "Detect blockchain gas fees"
- id: exchange-fees
pattern: "trading.*fee.*crypto|exchange.*fee|platform.*fee.*crypto"
category: "Crypto:Exchange Fees"
confidence: high
labels: ["Crypto"]
description: "Detect exchange and trading fees"
tax_tracking:
cgt_tracking: true
cgt_discount_eligible: true
cgt_discount_holding_period: 365
cost_base_tracking: true
cost_base_includes_fees: true
income_tracking: true
separate_income_vs_capital: true
alerts:
- type: crypto_cgt_event
trigger: sale_detected
message: "Crypto sale detected - calculate CGT (12-month holding = 50% discount)"
- type: crypto_income_reminder
schedule: quarterly
message: "Report crypto staking/DeFi income on quarterly basis"
- type: eofy_crypto_reminder
schedule: annual
before_date: "06-15"
message: "EOFY - compile all crypto CGT events and income. ATO requires detailed records."
- type: cost_base_reminder
trigger: purchase_detected
message: "Record AUD value at time of purchase for accurate cost base"
labels:
- name: "Crypto"
description: "Cryptocurrency transaction"
color: "bitcoin-orange"
auto_apply: false
- name: "CGT Event"
description: "Capital gains tax event (crypto disposal)"
color: "gold"
auto_apply: true
- name: "Cost Base"
description: "Establishes or adds to CGT cost base"
color: "lightblue"
auto_apply: false
- name: "Cost Base Addition"
description: "Expense that adds to CGT cost base"
color: "skyblue"
auto_apply: false
- name: "Ordinary Income"
description: "Taxed as ordinary income (not CGT)"
color: "green"
auto_apply: true
- name: "NFT"
description: "Non-fungible token transaction"
color: "purple"
auto_apply: false
dependencies:
requires: []
conflicts_with: []
metadata:
created: "2025-11-25"
version: "1.0.0"
author: "Agent Smith"
priority: 3
ato_guidance: "ATO treats cryptocurrency as CGT asset. Staking/interest = ordinary income. Keep records of all transactions in AUD."

View File

@@ -0,0 +1,129 @@
name: Property Investor
layer: additional
description: |
Rental property income and expenses tracking.
Includes negative gearing calculation and CGT cost base tracking.
categories:
- name: "Rental Income"
parent: null
description: "Rent received from investment properties"
- name: "Property:Interest"
parent: null
description: "Mortgage interest on investment loans"
- name: "Property:Rates & Strata"
parent: null
description: "Council rates and strata fees"
- name: "Property:Repairs & Maintenance"
parent: null
description: "Repairs and maintenance expenses"
- name: "Property:Property Management"
parent: null
description: "Property management fees"
- name: "Property:Insurance"
parent: null
description: "Landlord insurance premiums"
- name: "Property:Depreciation"
parent: null
description: "Depreciation (manual entry from schedule)"
rules:
- id: rental-income
pattern: "rent.*received|rental.*income|tenant.*payment"
category: "Rental Income"
confidence: high
labels: ["Property: {address}"]
description: "Detect rental income payments"
- id: property-loan-interest
pattern: "investment.*loan|property.*mortgage|loan.*interest"
category: "Property:Interest"
confidence: medium
labels: ["Tax Deductible", "Property: {address}"]
description: "Detect investment property loan interest"
- id: council-rates
pattern: "council.*rates|strata|body.*corporate"
category: "Property:Rates & Strata"
confidence: high
labels: ["Tax Deductible", "Property: {address}"]
description: "Detect rates and strata fees"
- id: property-repairs
pattern: "plumber|electrician|handyman|repairs.*property|maintenance.*rental"
category: "Property:Repairs & Maintenance"
confidence: medium
labels: ["Tax Deductible", "Property: {address}", "Repairs vs Improvements"]
description: "Detect repair and maintenance expenses"
- id: property-management-fee
pattern: "property.*management|real.*estate.*fee|letting.*fee"
category: "Property:Property Management"
confidence: high
labels: ["Tax Deductible", "Property: {address}"]
description: "Detect property management fees"
tax_tracking:
negative_gearing_calculation: true
cgt_cost_base_tracking: true
cgt_discount_eligible: true
cgt_discount_holding_period: 365
depreciation_schedule_tracking: true
alerts:
- type: rental_schedule_reminder
schedule: annual
before_date: "06-15"
message: "EOFY - prepare rental property income/expense schedule for tax return"
- type: cgt_event_reminder
trigger: property_sale_detected
message: "Property sale detected - calculate CGT on disposal"
- type: negative_gearing_summary
schedule: quarterly
message: "Quarterly negative gearing summary available"
labels:
- name: "Tax Deductible"
description: "Property expense claimable on tax return"
color: "green"
auto_apply: false
- name: "Negative Gearing"
description: "Deductible loss against other income"
color: "darkgreen"
auto_apply: false
- name: "Capital Improvement"
description: "Adds to CGT cost base (not immediately deductible)"
color: "gold"
auto_apply: false
- name: "Repairs vs Improvements"
description: "Requires classification for tax treatment"
color: "orange"
auto_apply: false
- name: "Property: {address}"
description: "Expense for property at {address}"
color: "brown"
auto_apply: false
requires_configuration: true
configuration_prompt: "Enter property address:"
dependencies:
requires: []
conflicts_with: []
metadata:
created: "2025-11-22"
version: "1.0.0"
author: "Agent Smith"
priority: 3

View File

@@ -0,0 +1,103 @@
name: Share/ETF Investor
layer: additional
description: |
Share and ETF portfolio tracking with dividend income and CGT events.
Includes franking credit extraction and wash sale detection.
categories:
- name: "Dividends:Franked"
parent: null
description: "Fully franked dividend income"
- name: "Dividends:Unfranked"
parent: null
description: "Unfranked dividend income"
- name: "Share Sales"
parent: null
description: "Capital gains/losses from share sales"
- name: "Brokerage Fees"
parent: null
description: "Trading and brokerage fees"
rules:
- id: franked-dividends
pattern: "dividend.*franked|franking.*credit|DRP|dividend.*reinvestment"
category: "Dividends:Franked"
confidence: high
labels: ["Franked Dividend"]
description: "Detect franked dividend payments"
- id: unfranked-dividends
pattern: "dividend.*unfranked|distribution.*trust"
category: "Dividends:Unfranked"
confidence: high
description: "Detect unfranked dividend payments"
- id: share-sale
pattern: "share.*sale|stock.*sale|sold.*shares|CGT.*event"
category: "Share Sales"
confidence: medium
labels: ["Capital Gain"]
description: "Detect share sale transactions (CGT event)"
- id: brokerage
pattern: "CommSec|SelfWealth|Stake|brokerage|trading.*fee"
category: "Brokerage Fees"
confidence: high
labels: ["Tax Deductible"]
description: "Detect brokerage and trading fees"
tax_tracking:
dividend_tracking: true
franking_credit_extraction: true
cgt_tracking: true
cgt_discount_eligible: true
cgt_discount_holding_period: 365
wash_sale_detection: true
wash_sale_period: 30
alerts:
- type: dividend_income_summary
schedule: quarterly
message: "Quarterly dividend income summary with franking credits"
- type: cgt_event_detected
trigger: share_sale_detected
message: "Share sale detected - track CGT event and holding period"
- type: wash_sale_warning
trigger: repurchase_within_30_days
message: "Warning: Share repurchased within 30 days - potential wash sale"
labels:
- name: "Tax Deductible"
description: "Share trading expense claimable"
color: "green"
auto_apply: false
- name: "Capital Gain"
description: "Capital gains event (CGT applicable)"
color: "gold"
auto_apply: true
- name: "Capital Loss"
description: "Capital loss (offset against gains)"
color: "brown"
auto_apply: false
- name: "Franked Dividend"
description: "Dividend with franking credits attached"
color: "teal"
auto_apply: true
dependencies:
requires: []
conflicts_with: []
metadata:
created: "2025-11-22"
version: "1.0.0"
author: "Agent Smith"
priority: 3

View File

@@ -0,0 +1,832 @@
name: Comprehensive Foundation
layer: foundation
description: |
Detailed category structure with deep hierarchies for granular tracking.
Best for detail-oriented people, business owners, or those optimizing tax deductions.
80+ categories with 2-3 levels of hierarchy for precise expense tracking.
categories:
# ============================================================
# INCOME
# ============================================================
- name: "Income"
parent: null
description: "All income sources"
- name: "Income:Employment"
parent: "Income"
description: "Employment income"
- name: "Income:Employment:Salary & Wages"
parent: "Income:Employment"
description: "Regular salary and wage payments"
- name: "Income:Employment:Bonuses & Commissions"
parent: "Income:Employment"
description: "Performance bonuses, sales commissions"
- name: "Income:Employment:Allowances"
parent: "Income:Employment"
description: "Travel allowance, car allowance, other"
- name: "Income:Government Benefits"
parent: "Income"
description: "Centrelink and government payments"
- name: "Income:Government Benefits:Family Benefits"
parent: "Income:Government Benefits"
description: "Family Tax Benefit, Child Care Subsidy"
- name: "Income:Government Benefits:Income Support"
parent: "Income:Government Benefits"
description: "JobSeeker, Disability Support, Age Pension"
- name: "Income:Government Benefits:Child Support"
parent: "Income:Government Benefits"
description: "Child support received"
- name: "Income:Other Income"
parent: "Income"
description: "Miscellaneous income"
- name: "Income:Other Income:Tax Refunds"
parent: "Income:Other Income"
description: "ATO tax refunds, GST refunds"
- name: "Income:Other Income:Gifts & Winnings"
parent: "Income:Other Income"
description: "Cash gifts, competition winnings, lottery"
- name: "Income:Other Income:Reimbursements"
parent: "Income:Other Income"
description: "Work reimbursements, refunds"
# ============================================================
# HOUSING
# ============================================================
- name: "Housing"
parent: null
description: "Home-related expenses"
- name: "Housing:Rent or Mortgage"
parent: "Housing"
description: "Rent or mortgage payments"
- name: "Housing:Rent or Mortgage:Rent"
parent: "Housing:Rent or Mortgage"
description: "Rental payments"
- name: "Housing:Rent or Mortgage:Mortgage Repayments"
parent: "Housing:Rent or Mortgage"
description: "Principal and interest payments"
- name: "Housing:Rates & Levies"
parent: "Housing"
description: "Government and strata charges"
- name: "Housing:Rates & Levies:Council Rates"
parent: "Housing:Rates & Levies"
description: "Municipal council rates"
- name: "Housing:Rates & Levies:Water Rates"
parent: "Housing:Rates & Levies"
description: "Water service charges"
- name: "Housing:Rates & Levies:Strata Levies"
parent: "Housing:Rates & Levies"
description: "Body corporate, strata fees"
- name: "Housing:Maintenance & Repairs"
parent: "Housing"
description: "Home maintenance costs"
- name: "Housing:Maintenance & Repairs:Repairs"
parent: "Housing:Maintenance & Repairs"
description: "Plumbing, electrical, emergency repairs"
- name: "Housing:Maintenance & Repairs:Improvements"
parent: "Housing:Maintenance & Repairs"
description: "Renovations, upgrades, capital improvements"
- name: "Housing:Maintenance & Repairs:Garden & Lawn"
parent: "Housing:Maintenance & Repairs"
description: "Gardening, lawn care, landscaping"
- name: "Housing:Home Insurance"
parent: "Housing"
description: "Home and contents insurance"
- name: "Housing:Furnishings"
parent: "Housing"
description: "Furniture, appliances, home setup"
# ============================================================
# UTILITIES
# ============================================================
- name: "Utilities"
parent: null
description: "Essential household services"
- name: "Utilities:Electricity"
parent: "Utilities"
description: "Electricity bills and charges"
- name: "Utilities:Gas"
parent: "Utilities"
description: "Natural gas, LPG"
- name: "Utilities:Water"
parent: "Utilities"
description: "Water usage charges"
- name: "Utilities:Internet"
parent: "Utilities"
description: "Home internet, NBN"
- name: "Utilities:Phone"
parent: "Utilities"
description: "Mobile and landline"
- name: "Utilities:Phone:Mobile"
parent: "Utilities:Phone"
description: "Mobile phone plans, prepaid"
- name: "Utilities:Phone:Landline"
parent: "Utilities:Phone"
description: "Home phone service"
# ============================================================
# FOOD & DINING
# ============================================================
- name: "Food & Dining"
parent: null
description: "Food and beverage expenses"
- name: "Food & Dining:Groceries"
parent: "Food & Dining"
description: "Food shopping"
- name: "Food & Dining:Groceries:Supermarket"
parent: "Food & Dining:Groceries"
description: "Woolworths, Coles, Aldi, IGA"
- name: "Food & Dining:Groceries:Specialty Stores"
parent: "Food & Dining:Groceries"
description: "Butcher, baker, deli, fruit shop"
- name: "Food & Dining:Groceries:Online Delivery"
parent: "Food & Dining:Groceries"
description: "Online grocery delivery services"
- name: "Food & Dining:Restaurants"
parent: "Food & Dining"
description: "Dining out"
- name: "Food & Dining:Takeaway & Delivery"
parent: "Food & Dining"
description: "Takeaway food"
- name: "Food & Dining:Takeaway & Delivery:Fast Food"
parent: "Food & Dining:Takeaway & Delivery"
description: "McDonald's, KFC, etc."
- name: "Food & Dining:Takeaway & Delivery:Food Delivery"
parent: "Food & Dining:Takeaway & Delivery"
description: "Uber Eats, Menulog, DoorDash"
- name: "Food & Dining:Coffee & Cafes"
parent: "Food & Dining"
description: "Coffee shops, cafe visits"
- name: "Food & Dining:Alcohol & Beverages"
parent: "Food & Dining"
description: "Bottleshops, liquor, soft drinks"
# ============================================================
# TRANSPORTATION
# ============================================================
- name: "Transportation"
parent: null
description: "Transport and vehicle expenses"
- name: "Transportation:Vehicle Ownership"
parent: "Transportation"
description: "Owning and running a vehicle"
- name: "Transportation:Vehicle Ownership:Fuel"
parent: "Transportation:Vehicle Ownership"
description: "Petrol, diesel, LPG"
- name: "Transportation:Vehicle Ownership:Maintenance & Servicing"
parent: "Transportation:Vehicle Ownership"
description: "Regular servicing, oil changes"
- name: "Transportation:Vehicle Ownership:Repairs"
parent: "Transportation:Vehicle Ownership"
description: "Breakdowns, accident repairs, tyres"
- name: "Transportation:Vehicle Ownership:Registration & Insurance"
parent: "Transportation:Vehicle Ownership"
description: "Rego, CTP, comprehensive insurance"
- name: "Transportation:Vehicle Ownership:Car Wash & Detailing"
parent: "Transportation:Vehicle Ownership"
description: "Cleaning, detailing, car care"
- name: "Transportation:Parking & Tolls"
parent: "Transportation"
description: "Parking and road tolls"
- name: "Transportation:Parking & Tolls:Parking"
parent: "Transportation:Parking & Tolls"
description: "Street parking, parking meters, car parks"
- name: "Transportation:Parking & Tolls:Tolls"
parent: "Transportation:Parking & Tolls"
description: "E-tag, toll roads, M1, M2, etc."
- name: "Transportation:Public Transport"
parent: "Transportation"
description: "Buses, trains, trams, ferries"
- name: "Transportation:Public Transport:Opal/Myki Card"
parent: "Transportation:Public Transport"
description: "Prepaid transport cards"
- name: "Transportation:Public Transport:Tickets"
parent: "Transportation:Public Transport"
description: "Single tickets, day passes"
- name: "Transportation:Rideshare & Taxis"
parent: "Transportation"
description: "Uber, Didi, taxis"
# ============================================================
# HEALTHCARE
# ============================================================
- name: "Healthcare"
parent: null
description: "Medical and health expenses"
- name: "Healthcare:Medical Services"
parent: "Healthcare"
description: "Doctor visits and medical care"
- name: "Healthcare:Medical Services:GP & Specialists"
parent: "Healthcare:Medical Services"
description: "General practitioner, specialist doctors"
- name: "Healthcare:Medical Services:Tests & Pathology"
parent: "Healthcare:Medical Services"
description: "Blood tests, x-rays, scans, pathology"
- name: "Healthcare:Medical Services:Hospital & Emergency"
parent: "Healthcare:Medical Services"
description: "Hospital visits, emergency care, ambulance"
- name: "Healthcare:Dental"
parent: "Healthcare"
description: "Dental care"
- name: "Healthcare:Dental:General Dental"
parent: "Healthcare:Dental"
description: "Check-ups, cleaning, fillings"
- name: "Healthcare:Dental:Orthodontics"
parent: "Healthcare:Dental"
description: "Braces, Invisalign, orthodontic treatment"
- name: "Healthcare:Pharmacy"
parent: "Healthcare"
description: "Pharmacy and medications"
- name: "Healthcare:Pharmacy:Prescriptions"
parent: "Healthcare:Pharmacy"
description: "PBS prescriptions, scripts"
- name: "Healthcare:Pharmacy:Over the Counter"
parent: "Healthcare:Pharmacy"
description: "Non-prescription medicines, first aid"
- name: "Healthcare:Allied Health"
parent: "Healthcare"
description: "Other health services"
- name: "Healthcare:Allied Health:Physiotherapy"
parent: "Healthcare:Allied Health"
description: "Physio, exercise physiology"
- name: "Healthcare:Allied Health:Psychology & Counselling"
parent: "Healthcare:Allied Health"
description: "Psychologist, counsellor, mental health"
- name: "Healthcare:Allied Health:Other Therapies"
parent: "Healthcare:Allied Health"
description: "Chiro, osteo, massage, acupuncture"
- name: "Healthcare:Optical"
parent: "Healthcare"
description: "Eye care, glasses, contacts"
- name: "Healthcare:Health Insurance"
parent: "Healthcare"
description: "Private health insurance premiums"
# ============================================================
# PERSONAL CARE & APPEARANCE
# ============================================================
- name: "Personal Care"
parent: null
description: "Personal grooming and care"
- name: "Personal Care:Hair & Beauty"
parent: "Personal Care"
description: "Hair and beauty services"
- name: "Personal Care:Hair & Beauty:Haircuts & Styling"
parent: "Personal Care:Hair & Beauty"
description: "Barber, hairdresser, hair treatments"
- name: "Personal Care:Hair & Beauty:Beauty Services"
parent: "Personal Care:Hair & Beauty"
description: "Nails, waxing, facials, beauty treatments"
- name: "Personal Care:Toiletries & Cosmetics"
parent: "Personal Care"
description: "Personal hygiene products"
- name: "Personal Care:Toiletries & Cosmetics:Skincare & Cosmetics"
parent: "Personal Care:Toiletries & Cosmetics"
description: "Makeup, skincare, fragrances"
- name: "Personal Care:Toiletries & Cosmetics:Personal Hygiene"
parent: "Personal Care:Toiletries & Cosmetics"
description: "Shampoo, soap, deodorant, dental care"
- name: "Clothing & Footwear"
parent: null
description: "Clothes and shoes"
- name: "Clothing & Footwear:Adults"
parent: "Clothing & Footwear"
description: "Adult clothing and shoes"
- name: "Clothing & Footwear:Kids"
parent: "Clothing & Footwear"
description: "Children's clothing and shoes"
- name: "Clothing & Footwear:Accessories"
parent: "Clothing & Footwear"
description: "Bags, wallets, jewellery, watches"
# ============================================================
# ENTERTAINMENT & RECREATION
# ============================================================
- name: "Entertainment & Recreation"
parent: null
description: "Entertainment and leisure"
- name: "Entertainment & Recreation:Subscriptions"
parent: "Entertainment & Recreation"
description: "Streaming and digital services"
- name: "Entertainment & Recreation:Subscriptions:Streaming Video"
parent: "Entertainment & Recreation:Subscriptions"
description: "Netflix, Stan, Disney+, Binge"
- name: "Entertainment & Recreation:Subscriptions:Streaming Music"
parent: "Entertainment & Recreation:Subscriptions"
description: "Spotify, Apple Music, YouTube Music"
- name: "Entertainment & Recreation:Subscriptions:Gaming"
parent: "Entertainment & Recreation:Subscriptions"
description: "PlayStation Plus, Xbox Game Pass, etc."
- name: "Entertainment & Recreation:Subscriptions:News & Publications"
parent: "Entertainment & Recreation:Subscriptions"
description: "Newspapers, magazines, digital subscriptions"
- name: "Entertainment & Recreation:Fitness & Sport"
parent: "Entertainment & Recreation"
description: "Fitness and sports activities"
- name: "Entertainment & Recreation:Fitness & Sport:Gym Membership"
parent: "Entertainment & Recreation:Fitness & Sport"
description: "Gym, fitness classes, personal training"
- name: "Entertainment & Recreation:Fitness & Sport:Sports & Activities"
parent: "Entertainment & Recreation:Fitness & Sport"
description: "Sports clubs, equipment, registration fees"
- name: "Entertainment & Recreation:Events & Outings"
parent: "Entertainment & Recreation"
description: "Events and activities"
- name: "Entertainment & Recreation:Events & Outings:Movies & Cinema"
parent: "Entertainment & Recreation:Events & Outings"
description: "Movie tickets, cinema"
- name: "Entertainment & Recreation:Events & Outings:Concerts & Theatre"
parent: "Entertainment & Recreation:Events & Outings"
description: "Live music, theatre, performances"
- name: "Entertainment & Recreation:Events & Outings:Sports Events"
parent: "Entertainment & Recreation:Events & Outings"
description: "AFL, NRL, cricket, sports tickets"
- name: "Entertainment & Recreation:Hobbies"
parent: "Entertainment & Recreation"
description: "Hobby-related expenses"
- name: "Entertainment & Recreation:Books & Media"
parent: "Entertainment & Recreation"
description: "Books, audiobooks, magazines, DVDs"
- name: "Entertainment & Recreation:Gaming"
parent: "Entertainment & Recreation"
description: "Video games, board games, gaming gear"
# ============================================================
# EDUCATION & DEVELOPMENT
# ============================================================
- name: "Education"
parent: null
description: "Education and learning"
- name: "Education:School"
parent: "Education"
description: "Primary and secondary school"
- name: "Education:School:School Fees"
parent: "Education:School"
description: "Tuition fees, private school fees"
- name: "Education:School:School Uniforms"
parent: "Education:School"
description: "Uniforms, sports gear"
- name: "Education:School:Excursions & Activities"
parent: "Education:School"
description: "School camps, excursions, activities"
- name: "Education:Tertiary Education"
parent: "Education"
description: "University, TAFE, higher education"
- name: "Education:Tertiary Education:Tuition Fees"
parent: "Education:Tertiary Education"
description: "HECS, course fees, semester fees"
- name: "Education:Tertiary Education:Textbooks & Materials"
parent: "Education:Tertiary Education"
description: "Textbooks, course materials, stationery"
- name: "Education:Courses & Training"
parent: "Education"
description: "Professional development, short courses"
- name: "Education:Tutoring"
parent: "Education"
description: "Private tutoring, coaching"
# ============================================================
# KIDS & FAMILY
# ============================================================
- name: "Kids & Family"
parent: null
description: "Child-related expenses"
- name: "Kids & Family:Childcare & Education"
parent: "Kids & Family"
description: "Childcare services"
- name: "Kids & Family:Childcare & Education:Daycare"
parent: "Kids & Family:Childcare & Education"
description: "Long day care, family day care"
- name: "Kids & Family:Childcare & Education:Before/After School Care"
parent: "Kids & Family:Childcare & Education"
description: "OOSH, vacation care"
- name: "Kids & Family:Activities"
parent: "Kids & Family"
description: "Kids activities and sports"
- name: "Kids & Family:Activities:Sports"
parent: "Kids & Family:Activities"
description: "Kids sports, swimming lessons, team fees"
- name: "Kids & Family:Activities:Music & Arts"
parent: "Kids & Family:Activities"
description: "Music lessons, art classes, dance"
- name: "Kids & Family:Toys & Entertainment"
parent: "Kids & Family"
description: "Toys, games, kid entertainment"
- name: "Kids & Family:Baby Supplies"
parent: "Kids & Family"
description: "Nappies, formula, baby products"
- name: "Kids & Family:Pocket Money & Allowances"
parent: "Kids & Family"
description: "Kids pocket money, allowances"
# ============================================================
# FINANCIAL SERVICES
# ============================================================
- name: "Financial Services"
parent: null
description: "Banking and financial costs"
- name: "Financial Services:Bank Fees"
parent: "Financial Services"
description: "Banking fees and charges"
- name: "Financial Services:Bank Fees:Account Fees"
parent: "Financial Services:Bank Fees"
description: "Monthly account fees, transaction fees"
- name: "Financial Services:Bank Fees:ATM Fees"
parent: "Financial Services:Bank Fees"
description: "ATM withdrawal fees, foreign ATM fees"
- name: "Financial Services:Interest & Finance Charges"
parent: "Financial Services"
description: "Interest and finance costs"
- name: "Financial Services:Interest & Finance Charges:Credit Card Interest"
parent: "Financial Services:Interest & Finance Charges"
description: "Credit card interest charges"
- name: "Financial Services:Interest & Finance Charges:Loan Interest"
parent: "Financial Services:Interest & Finance Charges"
description: "Personal loan interest, other loan costs"
- name: "Financial Services:Accounting & Tax"
parent: "Financial Services"
description: "Accountant, tax agent, bookkeeping"
# ============================================================
# INSURANCE
# ============================================================
- name: "Insurance"
parent: null
description: "Insurance premiums (non-health, non-vehicle)"
- name: "Insurance:Life & Income Protection"
parent: "Insurance"
description: "Life insurance and income protection"
- name: "Insurance:Life & Income Protection:Life Insurance"
parent: "Insurance:Life & Income Protection"
description: "Life insurance premiums"
- name: "Insurance:Life & Income Protection:Income Protection"
parent: "Insurance:Life & Income Protection"
description: "Income protection, TPD, trauma insurance"
- name: "Insurance:Pet Insurance"
parent: "Insurance"
description: "Pet insurance premiums"
- name: "Insurance:Travel Insurance"
parent: "Insurance"
description: "Travel insurance, overseas coverage"
- name: "Insurance:Other Insurance"
parent: "Insurance"
description: "Other insurance policies"
# ============================================================
# SHOPPING & HOUSEHOLD
# ============================================================
- name: "Shopping"
parent: null
description: "General retail and household"
- name: "Shopping:Household Items"
parent: "Shopping"
description: "Household goods and supplies"
- name: "Shopping:Household Items:Furniture"
parent: "Shopping:Household Items"
description: "Furniture, beds, sofas, tables"
- name: "Shopping:Household Items:Appliances"
parent: "Shopping:Household Items"
description: "Fridges, washing machines, electronics"
- name: "Shopping:Household Items:Homewares"
parent: "Shopping:Household Items"
description: "Kitchen items, bedding, décor, storage"
- name: "Shopping:Household Items:Cleaning Supplies"
parent: "Shopping:Household Items"
description: "Cleaning products, laundry detergent"
- name: "Shopping:General Retail"
parent: "Shopping"
description: "Department stores and misc purchases"
- name: "Shopping:Electronics"
parent: "Shopping"
description: "Computers, phones, tablets, tech"
- name: "Shopping:Hardware & DIY"
parent: "Shopping"
description: "Bunnings, hardware, DIY supplies"
# ============================================================
# GIFTS & DONATIONS
# ============================================================
- name: "Gifts & Donations"
parent: null
description: "Gifts and charitable giving"
- name: "Gifts & Donations:Gifts"
parent: "Gifts & Donations"
description: "Birthday, Christmas, special occasion gifts"
- name: "Gifts & Donations:Charitable Donations"
parent: "Gifts & Donations"
description: "Charity donations, sponsorships"
# ============================================================
# PETS
# ============================================================
- name: "Pets"
parent: null
description: "Pet-related expenses"
- name: "Pets:Food & Supplies"
parent: "Pets"
description: "Pet food, litter, supplies"
- name: "Pets:Veterinary"
parent: "Pets"
description: "Vet visits, medications, surgery"
- name: "Pets:Grooming & Boarding"
parent: "Pets"
description: "Grooming, pet sitting, boarding kennels"
# ============================================================
# TRAVEL & HOLIDAYS
# ============================================================
- name: "Travel & Holidays"
parent: null
description: "Travel and holiday expenses"
- name: "Travel & Holidays:Accommodation"
parent: "Travel & Holidays"
description: "Hotels, Airbnb, holiday rentals"
- name: "Travel & Holidays:Flights & Transport"
parent: "Travel & Holidays"
description: "Airfares and transport"
- name: "Travel & Holidays:Flights & Transport:Airfares"
parent: "Travel & Holidays:Flights & Transport"
description: "Domestic and international flights"
- name: "Travel & Holidays:Flights & Transport:Car Hire"
parent: "Travel & Holidays:Flights & Transport"
description: "Rental cars, car hire"
- name: "Travel & Holidays:Activities & Tours"
parent: "Travel & Holidays"
description: "Tours, attractions, activities"
- name: "Travel & Holidays:Holiday Spending"
parent: "Travel & Holidays"
description: "Meals, shopping, misc while on holiday"
# ============================================================
# GOVERNMENT & ADMIN
# ============================================================
- name: "Government & Fees"
parent: null
description: "Government charges and official fees"
- name: "Government & Fees:Fines & Penalties"
parent: "Government & Fees"
description: "Fines and late fees"
- name: "Government & Fees:Fines & Penalties:Traffic Fines"
parent: "Government & Fees:Fines & Penalties"
description: "Speeding, parking, traffic infringements"
- name: "Government & Fees:Fines & Penalties:Other Fines"
parent: "Government & Fees:Fines & Penalties"
description: "Library fines, other penalties"
- name: "Government & Fees:Licences & Registration"
parent: "Government & Fees"
description: "Licences and registrations"
- name: "Government & Fees:Licences & Registration:Driver Licence"
parent: "Government & Fees:Licences & Registration"
description: "Licence renewal, learner's permit"
- name: "Government & Fees:Licences & Registration:Professional Registration"
parent: "Government & Fees:Licences & Registration"
description: "Trade licences, professional registrations"
- name: "Government & Fees:Legal & Professional"
parent: "Government & Fees"
description: "Legal fees, solicitors, conveyancing"
# ============================================================
# DEBT & SAVINGS
# ============================================================
- name: "Debt Payments"
parent: null
description: "Loan and debt repayments"
- name: "Debt Payments:Personal Loans"
parent: "Debt Payments"
description: "Personal loan repayments"
- name: "Debt Payments:Credit Cards"
parent: "Debt Payments"
description: "Credit card payments"
- name: "Debt Payments:BNPL"
parent: "Debt Payments"
description: "Afterpay, Zip Pay, buy now pay later"
- name: "Debt Payments:Other Debt"
parent: "Debt Payments"
description: "Other debt repayments"
# ============================================================
# TRANSFERS & OTHER
# ============================================================
- name: "Transfers & Adjustments"
parent: null
description: "Account transfers and movements"
- name: "Transfers & Adjustments:Savings Transfers"
parent: "Transfers & Adjustments"
description: "Transfers to savings accounts"
- name: "Transfers & Adjustments:Investment Contributions"
parent: "Transfers & Adjustments"
description: "Super contributions, shares, investments"
- name: "Transfers & Adjustments:Internal Transfers"
parent: "Transfers & Adjustments"
description: "Transfers between own accounts"
- name: "Uncategorised"
parent: null
description: "Transactions not yet categorised"
rules:
# ============================================================
# COMMON GROCERY STORES (Australia)
# ============================================================
- type: category
name: Woolworths → Groceries
patterns: [Woolworths, WOOLWORTHS]
category: Food & Dining > Groceries
confidence: 95
- type: category
name: Coles → Groceries
patterns: [Coles, COLES]
category: Food & Dining > Groceries
confidence: 95
- type: category
name: Aldi → Groceries
patterns: [Aldi, ALDI]
category: Food & Dining > Groceries
confidence: 95
- type: category
name: IGA → Groceries
patterns: [IGA]
category: Food & Dining > Groceries
confidence: 95
labels: []
tax_tracking:
detailed_expense_tracking: true
receipt_tracking_enabled: true
alerts: []
dependencies:
requires: []
conflicts_with: ["minimal", "standard"]
metadata:
created: "2025-11-23"
version: "1.0.0"
author: "Agent Smith"
priority: 0
category_count: 186

View File

@@ -0,0 +1,121 @@
name: Minimal Foundation
layer: foundation
description: |
Simple, broad category structure for basic expense tracking.
Best for people who prefer simplicity and don't need detailed breakdowns.
20 top-level categories covering essential expense areas.
categories:
# Income
- name: "Income"
parent: null
description: "All income sources"
# Housing & Home
- name: "Housing"
parent: null
description: "Rent, mortgage, rates, home expenses"
- name: "Utilities"
parent: null
description: "Electricity, gas, water, internet, phone"
# Food
- name: "Food & Dining"
parent: null
description: "Groceries, restaurants, takeaway"
# Transportation
- name: "Transportation"
parent: null
description: "Fuel, public transport, vehicle costs"
# Health
- name: "Healthcare"
parent: null
description: "Medical, dental, pharmacy, Medicare gap"
# Personal & Lifestyle
- name: "Personal Care"
parent: null
description: "Haircuts, cosmetics, toiletries"
- name: "Clothing"
parent: null
description: "Clothes, shoes, accessories"
- name: "Entertainment"
parent: null
description: "Movies, streaming, hobbies, recreation"
- name: "Education"
parent: null
description: "School fees, courses, textbooks"
# Financial
- name: "Insurance"
parent: null
description: "Health, car, home, life insurance"
- name: "Banking & Fees"
parent: null
description: "Bank fees, account charges, ATM fees"
- name: "Debt Payments"
parent: null
description: "Loan repayments, credit card payments"
# Discretionary
- name: "Shopping"
parent: null
description: "General retail, online shopping, household items"
- name: "Gifts & Donations"
parent: null
description: "Presents, charity donations"
- name: "Pets"
parent: null
description: "Pet food, vet, supplies"
# Special
- name: "Travel & Holidays"
parent: null
description: "Flights, accommodation, holiday expenses"
- name: "Subscriptions"
parent: null
description: "Streaming, memberships, recurring services"
# Other
- name: "Government & Fees"
parent: null
description: "Rates, fines, registration, licences"
- name: "Uncategorised"
parent: null
description: "Transactions not yet categorised"
rules: []
# No rules in foundation - rules come from primary/living/additional templates
labels: []
# No labels in foundation
tax_tracking:
basic_expense_tracking: true
alerts: []
dependencies:
requires: []
conflicts_with: ["standard", "comprehensive"]
note: "Foundation templates are mutually exclusive - choose only one"
metadata:
created: "2025-11-23"
version: "1.0.0"
author: "Agent Smith"
priority: 0 # Lowest priority - applied first
category_count: 20

View File

@@ -0,0 +1,65 @@
name: Single Person
layer: living
description: |
Managing finances independently without shared household expenses.
Adds simple rules for common single-person expense patterns.
Note: Categories are provided by Foundation template. This template adds
only rules to help categorize common single-person expenses.
categories: []
# No special categories needed - Foundation provides Housing, Utilities, Groceries, etc.
# Living templates add labels and rules, not categories.
rules:
- id: rent-payment
pattern: "rent|rental.*payment|real.*estate"
category: "Rent/Mortgage"
confidence: high
description: "Detect rent payments"
- id: electricity-bill
pattern: "electricity|power.*bill|energy.*australia"
category: "Electricity"
confidence: high
description: "Detect electricity bills"
- id: gas-bill
pattern: "gas.*bill|natural.*gas"
category: "Gas"
confidence: high
description: "Detect gas bills"
- id: water-bill
pattern: "water.*bill|water.*rates"
category: "Water"
confidence: high
description: "Detect water bills"
- id: internet-phone
pattern: "internet|telstra|optus|vodafone|phone.*bill|mobile"
category: "Internet & Phone"
confidence: high
description: "Detect internet and phone bills"
- id: groceries
pattern: "woolworths|coles|aldi|iga|grocery"
category: "Groceries"
confidence: high
description: "Detect grocery shopping"
tax_tracking: {}
alerts: []
labels: []
dependencies:
requires: []
conflicts_with: ["shared-joint", "shared-hybrid", "separated-parents", "sharehouse"]
metadata:
created: "2025-11-22"
version: "1.0.0"
author: "Agent Smith"
priority: 2

View File

@@ -0,0 +1,361 @@
name: Standard Foundation
layer: foundation
description: |
Balanced category structure with 1-2 levels of hierarchy.
Best for most people - detailed enough for insights, simple enough to maintain.
45 categories with logical groupings for common Australian expenses.
categories:
# ============================================================
# INCOME
# ============================================================
- name: "Income"
parent: null
description: "All income sources"
- name: "Income:Employment"
parent: "Income"
description: "Salary, wages, bonuses"
- name: "Income:Government Benefits"
parent: "Income"
description: "Centrelink, Family Tax Benefit, Child Support"
- name: "Income:Other"
parent: "Income"
description: "Gifts, refunds, miscellaneous income"
# ============================================================
# HOUSING
# ============================================================
- name: "Housing"
parent: null
description: "Home-related expenses"
- name: "Housing:Rent or Mortgage"
parent: "Housing"
description: "Rent payments or mortgage repayments"
- name: "Housing:Rates & Levies"
parent: "Housing"
description: "Council rates, water rates, strata levies"
- name: "Housing:Maintenance & Repairs"
parent: "Housing"
description: "Home repairs, maintenance, improvements"
- name: "Housing:Home Insurance"
parent: "Housing"
description: "Home and contents insurance"
# ============================================================
# UTILITIES
# ============================================================
- name: "Utilities"
parent: null
description: "Essential household services"
- name: "Utilities:Electricity"
parent: "Utilities"
description: "Electricity bills"
- name: "Utilities:Gas"
parent: "Utilities"
description: "Gas bills"
- name: "Utilities:Water"
parent: "Utilities"
description: "Water bills"
- name: "Utilities:Internet & Phone"
parent: "Utilities"
description: "Internet, mobile, landline"
# ============================================================
# FOOD & DINING
# ============================================================
- name: "Food & Dining"
parent: null
description: "Food and beverage expenses"
- name: "Food & Dining:Groceries"
parent: "Food & Dining"
description: "Supermarket, grocery shopping"
- name: "Food & Dining:Restaurants"
parent: "Food & Dining"
description: "Dining out, cafes"
- name: "Food & Dining:Takeaway & Delivery"
parent: "Food & Dining"
description: "Takeaway, food delivery services"
# ============================================================
# TRANSPORTATION
# ============================================================
- name: "Transportation"
parent: null
description: "Transport and vehicle expenses"
- name: "Transportation:Fuel"
parent: "Transportation"
description: "Petrol, diesel"
- name: "Transportation:Public Transport"
parent: "Transportation"
description: "Trains, buses, trams, ferries, Opal/Myki"
- name: "Transportation:Vehicle Maintenance"
parent: "Transportation"
description: "Repairs, servicing, tyres"
- name: "Transportation:Registration & Insurance"
parent: "Transportation"
description: "Rego, CTP, car insurance"
- name: "Transportation:Parking & Tolls"
parent: "Transportation"
description: "Parking fees, tolls, e-tags"
- name: "Transportation:Rideshare & Taxis"
parent: "Transportation"
description: "Uber, taxis, rideshare"
# ============================================================
# HEALTHCARE
# ============================================================
- name: "Healthcare"
parent: null
description: "Medical and health expenses"
- name: "Healthcare:Medical"
parent: "Healthcare"
description: "GP visits, specialists, Medicare gap"
- name: "Healthcare:Dental"
parent: "Healthcare"
description: "Dentist, orthodontist"
- name: "Healthcare:Pharmacy & Prescriptions"
parent: "Healthcare"
description: "Medications, pharmacy items, PBS"
- name: "Healthcare:Health Insurance"
parent: "Healthcare"
description: "Private health insurance premiums"
- name: "Healthcare:Other Health"
parent: "Healthcare"
description: "Physio, chiro, optical, allied health"
# ============================================================
# PERSONAL & LIFESTYLE
# ============================================================
- name: "Personal Care"
parent: null
description: "Personal grooming and care"
- name: "Personal Care:Hair & Beauty"
parent: "Personal Care"
description: "Haircuts, salons, beauty treatments"
- name: "Personal Care:Toiletries & Cosmetics"
parent: "Personal Care"
description: "Personal hygiene products, cosmetics"
- name: "Clothing & Footwear"
parent: null
description: "Clothes, shoes, accessories"
- name: "Entertainment & Recreation"
parent: null
description: "Entertainment, hobbies, recreation"
- name: "Entertainment & Recreation:Streaming & Subscriptions"
parent: "Entertainment & Recreation"
description: "Netflix, Spotify, Stan, gaming subscriptions"
- name: "Entertainment & Recreation:Hobbies & Activities"
parent: "Entertainment & Recreation"
description: "Sports, gym, clubs, hobbies"
- name: "Entertainment & Recreation:Events & Outings"
parent: "Entertainment & Recreation"
description: "Movies, concerts, sports events, activities"
# ============================================================
# EDUCATION & DEVELOPMENT
# ============================================================
- name: "Education"
parent: null
description: "Education expenses"
- name: "Education:School Fees & Costs"
parent: "Education"
description: "School fees, uniforms, excursions"
- name: "Education:Courses & Training"
parent: "Education"
description: "TAFE, uni, online courses, professional development"
- name: "Education:Books & Supplies"
parent: "Education"
description: "Textbooks, stationery, learning materials"
# ============================================================
# FINANCIAL
# ============================================================
- name: "Financial Services"
parent: null
description: "Banking, fees, and financial costs"
- name: "Financial Services:Bank Fees"
parent: "Financial Services"
description: "Account fees, ATM fees, transaction charges"
- name: "Financial Services:Interest & Charges"
parent: "Financial Services"
description: "Credit card interest, loan fees"
- name: "Insurance"
parent: null
description: "Insurance premiums (non-health, non-vehicle)"
- name: "Insurance:Life Insurance"
parent: "Insurance"
description: "Life, income protection, TPD"
- name: "Insurance:Other Insurance"
parent: "Insurance"
description: "Pet insurance, travel insurance, other"
# ============================================================
# DISCRETIONARY
# ============================================================
- name: "Shopping"
parent: null
description: "General retail and household items"
- name: "Shopping:Household Items"
parent: "Shopping"
description: "Furniture, appliances, homewares"
- name: "Shopping:General Retail"
parent: "Shopping"
description: "Department stores, online shopping, misc purchases"
- name: "Gifts & Donations"
parent: null
description: "Gifts and charitable giving"
- name: "Pets"
parent: null
description: "Pet food, vet, grooming, supplies"
# ============================================================
# TRAVEL
# ============================================================
- name: "Travel & Holidays"
parent: null
description: "Travel and holiday expenses"
- name: "Travel & Holidays:Accommodation"
parent: "Travel & Holidays"
description: "Hotels, Airbnb, holiday rentals"
- name: "Travel & Holidays:Flights & Transport"
parent: "Travel & Holidays"
description: "Airfares, car hire, transfers"
# ============================================================
# KIDS (if applicable)
# ============================================================
- name: "Kids & Family"
parent: null
description: "Child-related expenses"
- name: "Kids & Family:Childcare"
parent: "Kids & Family"
description: "Daycare, before/after school care, vacation care"
- name: "Kids & Family:Activities & Sports"
parent: "Kids & Family"
description: "Kids sports, music lessons, activities"
- name: "Kids & Family:Other Kid Expenses"
parent: "Kids & Family"
description: "Toys, birthday parties, kid-specific costs"
# ============================================================
# GOVERNMENT & ADMIN
# ============================================================
- name: "Government & Fees"
parent: null
description: "Government charges and official fees"
- name: "Government & Fees:Fines & Penalties"
parent: "Government & Fees"
description: "Traffic fines, parking fines, late fees"
- name: "Government & Fees:Licences & Registration"
parent: "Government & Fees"
description: "Driver licence, professional registrations"
# ============================================================
# OTHER
# ============================================================
- name: "Transfers & Adjustments"
parent: null
description: "Account transfers, savings, investments"
- name: "Uncategorised"
parent: null
description: "Transactions not yet categorised"
rules:
# ============================================================
# COMMON GROCERY STORES (Australia)
# ============================================================
- type: category
name: Woolworths → Groceries
patterns: [Woolworths, WOOLWORTHS]
category: Food & Dining > Groceries
confidence: 95
- type: category
name: Coles → Groceries
patterns: [Coles, COLES]
category: Food & Dining > Groceries
confidence: 95
- type: category
name: Aldi → Groceries
patterns: [Aldi, ALDI]
category: Food & Dining > Groceries
confidence: 95
- type: category
name: IGA → Groceries
patterns: [IGA]
category: Food & Dining > Groceries
confidence: 95
labels: []
tax_tracking:
basic_expense_tracking: true
alerts: []
dependencies:
requires: []
conflicts_with: ["minimal", "comprehensive"]
metadata:
created: "2025-11-23"
version: "1.0.0"
author: "Agent Smith"
priority: 0
category_count: 65
recommended: true

View File

@@ -0,0 +1,349 @@
{
"name": "Foundation: Personal Living",
"description": "Core personal expense categories for everyday living, aligned with ATO guidance",
"layer": "foundation",
"priority": 0,
"applies_to": ["all"],
"ato_aligned": true,
"categories": [
{
"name": "Income",
"parent": null,
"description": "All income sources",
"ato_section": "Income"
},
{
"name": "Salary/Wages",
"parent": "Income",
"description": "Employment income from salary or wages",
"ato_section": "Item 1"
},
{
"name": "Other Income",
"parent": "Income",
"description": "Income not covered by other categories",
"ato_section": "Item 24"
},
{
"name": "Interest Income",
"parent": "Income",
"description": "Interest from bank accounts and investments",
"ato_section": "Item 10"
},
{
"name": "Food & Dining",
"parent": null,
"description": "Food and meal expenses"
},
{
"name": "Groceries",
"parent": "Food & Dining",
"description": "Supermarket and grocery shopping"
},
{
"name": "Restaurants",
"parent": "Food & Dining",
"description": "Dining out at restaurants"
},
{
"name": "Cafes & Takeaway",
"parent": "Food & Dining",
"description": "Coffee shops and takeaway food"
},
{
"name": "Housing & Utilities",
"parent": null,
"description": "Housing costs and utilities"
},
{
"name": "Rent/Mortgage",
"parent": "Housing & Utilities",
"description": "Rent or mortgage payments"
},
{
"name": "Electricity",
"parent": "Housing & Utilities",
"description": "Electricity bills"
},
{
"name": "Gas",
"parent": "Housing & Utilities",
"description": "Gas bills"
},
{
"name": "Water",
"parent": "Housing & Utilities",
"description": "Water bills"
},
{
"name": "Internet & Phone",
"parent": "Housing & Utilities",
"description": "Internet and phone services"
},
{
"name": "Home Maintenance",
"parent": "Housing & Utilities",
"description": "Repairs and maintenance for your home"
},
{
"name": "Transportation",
"parent": null,
"description": "Transport and vehicle expenses"
},
{
"name": "Fuel",
"parent": "Transportation",
"description": "Petrol and diesel for personal vehicles"
},
{
"name": "Public Transport",
"parent": "Transportation",
"description": "Buses, trains, trams, ferries"
},
{
"name": "Vehicle Registration",
"parent": "Transportation",
"description": "Vehicle registration and CTP insurance"
},
{
"name": "Vehicle Maintenance",
"parent": "Transportation",
"description": "Car servicing and repairs"
},
{
"name": "Parking & Tolls",
"parent": "Transportation",
"description": "Parking fees and road tolls"
},
{
"name": "Healthcare & Insurance",
"parent": null,
"description": "Medical expenses and insurance"
},
{
"name": "Medical",
"parent": "Healthcare & Insurance",
"description": "Doctor visits and medical expenses"
},
{
"name": "Dental",
"parent": "Healthcare & Insurance",
"description": "Dental care expenses"
},
{
"name": "Pharmacy",
"parent": "Healthcare & Insurance",
"description": "Prescription and over-the-counter medications"
},
{
"name": "Health Insurance",
"parent": "Healthcare & Insurance",
"description": "Private health insurance premiums"
},
{
"name": "Life Insurance",
"parent": "Healthcare & Insurance",
"description": "Life and income protection insurance"
},
{
"name": "Personal & Lifestyle",
"parent": null,
"description": "Personal care and lifestyle expenses"
},
{
"name": "Clothing & Footwear",
"parent": "Personal & Lifestyle",
"description": "Clothing and shoes for personal use"
},
{
"name": "Personal Care",
"parent": "Personal & Lifestyle",
"description": "Haircuts, cosmetics, toiletries"
},
{
"name": "Entertainment & Recreation",
"parent": "Personal & Lifestyle",
"description": "Entertainment, hobbies, and recreation"
},
{
"name": "Fitness & Wellness",
"parent": "Personal & Lifestyle",
"description": "Gym memberships, fitness activities, wellness"
},
{
"name": "Gifts & Donations",
"parent": "Personal & Lifestyle",
"description": "Gifts and charitable donations (donations may be tax deductible)",
"ato_section": "D9"
},
{
"name": "Shopping",
"parent": null,
"description": "Online shopping and retail purchases"
},
{
"name": "Online Services",
"parent": "Shopping",
"description": "Online payment services and digital purchases"
},
{
"name": "Banking & Fees",
"parent": null,
"description": "Banking fees and charges"
},
{
"name": "Bank Fees",
"parent": "Banking & Fees",
"description": "Account keeping fees and transaction fees"
},
{
"name": "Interest Charges",
"parent": "Banking & Fees",
"description": "Interest on personal loans and credit cards"
},
{
"name": "Transfers",
"parent": "Banking & Fees",
"description": "Transfers between accounts"
}
],
"rules": [
{
"name": "groceries-supermarkets",
"payee_pattern": "woolworths|coles|aldi|iga|foodland|costco|harris farm|fruit market|drakes|supa.*iga|ritchies|foodworks|friendly grocer",
"category": "Groceries",
"confidence": 0.95
},
{
"name": "restaurants-dining",
"payee_pattern": "restaurant|bistro|steakhouse|italian|chinese|thai|indian|japanese|korean|vietnamese|cafe.*restaurant",
"category": "Restaurants",
"confidence": 0.90
},
{
"name": "cafes-coffee",
"payee_pattern": "cafe|coffee|starbucks|gloria jeans|mccafe|donut king|boost juice",
"category": "Cafes & Takeaway",
"confidence": 0.90
},
{
"name": "fast-food-takeaway",
"payee_pattern": "mcdonald|kfc|hungry jack|domino|pizza hut|subway|nando|red rooster|grill'd|guzman|schnitz",
"category": "Cafes & Takeaway",
"confidence": 0.95
},
{
"name": "fuel-petrol",
"payee_pattern": "shell|bp|caltex|ampol|7-eleven|united.*petrol|metro.*petrol|mobil|esso",
"category": "Fuel",
"confidence": 0.95
},
{
"name": "electricity-providers",
"payee_pattern": "agl|origin|energy australia|red energy|alinta|simply energy|powershop|momentum energy|click energy|sumo|dodo.*power|lumo|people.*energy|diamond.*energy",
"category": "Electricity",
"confidence": 0.95
},
{
"name": "gas-providers",
"payee_pattern": "agl.*gas|origin.*gas|energy australia.*gas|simply energy.*gas|sumo.*gas",
"category": "Gas",
"confidence": 0.90
},
{
"name": "water-providers",
"payee_pattern": "water.*corporation|sydney.*water|yarra.*valley.*water|sa.*water|icon.*water|unitywater|hunter.*water|city west.*water",
"category": "Water",
"confidence": 0.95
},
{
"name": "internet-telco",
"payee_pattern": "telstra|optus|vodafone|tpg|iinet|aussie.*broadband|dodo|belong|internode|southern.*phone|exetel|spintel|tangerine|superloop|mate.*communicate",
"category": "Internet & Phone",
"confidence": 0.95
},
{
"name": "public-transport",
"payee_pattern": "opal|myki|go card|translink|metro.*trains|bus.*service|citylink",
"category": "Public Transport",
"confidence": 0.95
},
{
"name": "parking-tolls",
"payee_pattern": "secure.*parking|wilson.*parking|toll|e-tag|linkt|citylink|eastlink|go via",
"category": "Parking & Tolls",
"confidence": 0.95
},
{
"name": "pharmacy-chemist",
"payee_pattern": "chemist|pharmacy|priceline|terry white|amcal|blooms|soul pattinson|discount.*drug",
"category": "Pharmacy",
"confidence": 0.95
},
{
"name": "health-insurance",
"payee_pattern": "bupa|medibank|hcf|nib|ahm|health.*fund|health.*insurance",
"category": "Health Insurance",
"confidence": 0.95
},
{
"name": "gym-fitness",
"payee_pattern": "gym|fitness|anytime.*fitness|goodlife|f45|jetts|snap.*fitness|crossfit|yoga|pilates",
"category": "Fitness & Wellness",
"confidence": 0.90
},
{
"name": "entertainment-streaming",
"payee_pattern": "netflix|spotify|disney|stan|amazon.*prime|apple.*music|youtube.*premium|paramount|binge",
"category": "Entertainment & Recreation",
"confidence": 0.95
},
{
"name": "entertainment-cinema",
"payee_pattern": "hoyts|event.*cinema|village.*cinema|reading.*cinema|movie.*ticket",
"category": "Entertainment & Recreation",
"confidence": 0.95
},
{
"name": "clothing-retail",
"payee_pattern": "myer|david jones|target|kmart|big w|uniqlo|h&m|zara|cotton on|rebel.*sport|nike|adidas",
"category": "Clothing & Footwear",
"confidence": 0.85
},
{
"name": "personal-care-services",
"payee_pattern": "hair.*salon|barber|hairdresser|beauty|nail.*salon|spa|massage",
"category": "Personal Care",
"confidence": 0.90
},
{
"name": "bank-fees",
"payee_pattern": "account.*fee|monthly.*fee|transaction.*fee|atm.*fee|overdraft.*fee|international.*transaction.*fee",
"category": "Bank Fees",
"confidence": 0.95
},
{
"name": "transfers-generic",
"payee_pattern": "transfer|bpay|osko",
"category": "Transfers",
"confidence": 0.80
},
{
"name": "paypal-generic",
"payee_pattern": "PAYPAL",
"category": "Online Services",
"confidence": 0.60,
"labels": ["$LABEL_GENERIC_PAYPAL"]
}
],
"labels": [],
"name": "Foundation: Personal Living",
"layer": "foundation",
"metadata": {
"version": "1.0.0",
"priority": 0,
"created": "2025-11-25",
"ato_alignment": "2024-25 tax year",
"recommended_for": ["new_users", "migration_users"]
}
}

View File

@@ -0,0 +1,15 @@
# Living Arrangement Templates
Choose ONE template that matches how you manage household finances.
## Available Templates
- `single.yaml` - Managing finances alone
- `shared-joint.yaml` - Partner/spouse, pooled income, joint accounts
- `shared-hybrid.yaml` - Some joint accounts, some separate
- `separated-parents.yaml` - Child support, shared custody expenses
- `sharehouse.yaml` - Splitting bills with roommates
## YAML Schema
Same structure as primary templates, with `layer: living`.

View File

@@ -0,0 +1,114 @@
name: Separated/Divorced Parents
layer: living
description: |
Managing finances with child support obligations and shared custody expenses.
Tracks child-related spending for tax and legal documentation.
categories: []
# No special categories needed - use standard expense categories
# Labels indicate child-related expenses and which parent paid
rules:
- id: child-support-payment
pattern: "child.*support|CSA.*payment|maintenance.*payment"
# No category override - transactions should be categorized as Transfer or similar
confidence: high
description: "Label child support payments"
labels: ["Child Support", "Child Support Paid"]
- id: child-support-received
pattern: "child.*support.*received|CSA.*deposit"
# No category override - transactions should be categorized as Transfer or Income
confidence: high
description: "Label child support receipts"
labels: ["Child Support", "Child Support Received"]
- id: kids-activities
pattern: "sport|swimming|dance|music.*lessons|scouts|karate"
# No category override - use standard Entertainment/Recreation category
confidence: medium
description: "Label children's activity expenses"
labels: ["Kids Expense"]
- id: kids-medical
pattern: "pediatric|child.*doctor|dentist.*kids|orthodontist|therapy.*child"
# No category override - use standard Medical/Health category
confidence: medium
description: "Label children's medical expenses"
labels: ["Kids Expense", "Medical"]
- id: kids-education
pattern: "school.*fees|uniform.*school|textbook|excursion|tuckshop"
# No category override - use standard Education category
confidence: high
description: "Label education-related expenses"
labels: ["Kids Expense", "Education"]
tax_tracking:
child_support_documentation: true
custody_expense_tracking: true
alerts:
- type: child_support_reconciliation
schedule: monthly
message: "Reconcile child support payments and custody expenses"
- type: ato_documentation_reminder
schedule: annual
before_date: "06-15"
message: "EOFY - compile child-related expenses for tax return"
labels:
- name: "Child Support"
description: "Child support payment or receipt"
color: "skyblue"
auto_apply: false
- name: "Custody Period"
description: "Expense during custody period"
color: "lightpurple"
auto_apply: false
- name: "Shared Child Expense"
description: "Child expense split with ex-partner"
color: "coral"
auto_apply: false
- name: "Contributor: {parent_a_name}"
description: "Paid by {parent_a_name}"
color: "orange"
auto_apply: false
requires_configuration: true
configuration_prompt: "Enter name for Parent A:"
- name: "Contributor: {parent_b_name}"
description: "Paid by {parent_b_name}"
color: "cyan"
auto_apply: false
requires_configuration: true
configuration_prompt: "Enter name for Parent B:"
- name: "Kids: {child_1_name}"
description: "Expense for {child_1_name}"
color: "pink"
auto_apply: false
requires_configuration: true
configuration_prompt: "Enter name for first child:"
- name: "Kids: {child_2_name}"
description: "Expense for {child_2_name}"
color: "lightgreen"
auto_apply: false
requires_configuration: true
configuration_prompt: "Enter name for second child:"
dependencies:
requires: []
conflicts_with: ["single", "shared-joint", "sharehouse"]
# Note: Can be combined with shared-hybrid for divorced parents now living with new partner
metadata:
created: "2025-11-22"
version: "1.0.0"
author: "Agent Smith"
priority: 2

View File

@@ -0,0 +1,73 @@
name: Shared Household - Hybrid Finances
layer: living
description: |
Living with partner/spouse with mix of joint and separate accounts.
Some expenses shared (bills, groceries), some kept separate (personal spending).
categories: []
# No special categories needed - use standard expense categories
# Account indicates if shared, labels indicate who paid
rules:
- id: shared-expense-labeling
pattern: ".*"
# No category override - use existing categorization
# Just apply labels based on account and contributor
confidence: high
split_percentage: 50
description: "Label shared expenses with contributor info"
labels: ["Shared Expense"]
tax_tracking:
expense_splitting_enabled: true
default_split_ratio: 0.5
alerts:
- type: split_expense_reconciliation
schedule: monthly
message: "Time to reconcile shared expenses with partner"
labels:
- name: "Shared Expense"
description: "Expense split with partner"
color: "purple"
auto_apply: false
- name: "Contributor: {partner_a_name}"
description: "Paid by {partner_a_name}"
color: "orange"
auto_apply: false
requires_configuration: true
configuration_prompt: "Enter name for Partner A:"
- name: "Contributor: {partner_b_name}"
description: "Paid by {partner_b_name}"
color: "cyan"
auto_apply: false
requires_configuration: true
configuration_prompt: "Enter name for Partner B:"
- name: "Personal: {partner_a_name}"
description: "{partner_a_name} personal spending"
color: "lightorange"
auto_apply: false
requires_configuration: true
configuration_prompt: "Enter name for Partner A:"
- name: "Personal: {partner_b_name}"
description: "{partner_b_name} personal spending"
color: "lightcyan"
auto_apply: false
requires_configuration: true
configuration_prompt: "Enter name for Partner B:"
dependencies:
requires: []
conflicts_with: ["single", "shared-joint", "sharehouse"]
# Note: Can be combined with separated-parents for new relationships after divorce
metadata:
created: "2025-11-22"
version: "1.0.0"
author: "Agent Smith"
priority: 2

View File

@@ -0,0 +1,51 @@
# Primary Income Templates
Choose ONE template that matches your main source of income.
## Available Templates
- `payg-employee.yaml` - Salary/wage earner
- `sole-trader.yaml` - ABN holder, contractor, quarterly BAS
- `small-business.yaml` - Business owner with employees
- `retiree.yaml` - Superannuation/pension income
- `student.yaml` - Minimal income, government payments, HECS
## YAML Schema
```yaml
name: Template Name
layer: primary
description: |
Multi-line description of this template.
categories:
- name: "Category Name"
parent: null # or "Parent Category Name"
description: "Category purpose"
rules:
- id: unique-rule-id
pattern: "regex pattern"
category: "Target Category"
confidence: high|medium|low
description: "What this rule does"
tax_tracking:
bas_enabled: true|false
gst_method: cash|accrual
# ... other tax config
alerts:
- type: alert_type
schedule: quarterly|monthly
message: "Alert message"
dependencies:
requires: []
conflicts_with: ["other-template-id"]
metadata:
created: "YYYY-MM-DD"
version: "1.0.0"
priority: 1
```

View File

@@ -0,0 +1,112 @@
name: PAYG Employee
layer: primary
description: |
Salary or wage earner with tax withheld by employer.
Suitable for standard employment situations with work-related expense deductions.
categories:
- name: "Salary/Wages"
parent: null
description: "Employment income from salary or wages"
- name: "PAYG Tax Withheld"
parent: null
description: "Tax withheld from salary by employer"
- name: "Work Expenses"
parent: null
description: "Work-related expenses that may be tax deductible"
- name: "Work Expenses:Uniforms"
parent: "Work Expenses"
description: "Uniforms, protective clothing, laundry"
- name: "Work Expenses:Tools & Equipment"
parent: "Work Expenses"
description: "Tools and equipment required for work"
- name: "Work Expenses:Vehicle"
parent: "Work Expenses"
description: "Vehicle expenses for work travel (excl. commuting)"
- name: "Work Expenses:Self-Education"
parent: "Work Expenses"
description: "Study directly related to current employment"
labels:
- name: "Tax Deductible"
description: "Work-related expense claimable on tax return"
color: "green"
auto_apply: false
- name: "Requires Receipt"
description: "Receipt required for ATO substantiation"
color: "yellow"
auto_apply: false
- name: "Work Expense"
description: "Work-related expense"
color: "purple"
auto_apply: true
rules:
- id: salary-payment
pattern: "salary|wage.*payment|payroll|fortnightly.*pay"
category: "Salary/Wages"
confidence: high
description: "Detect regular salary/wage payments"
- id: payg-tax
pattern: "PAYG.*tax|tax.*withheld|ATO.*payment"
category: "PAYG Tax Withheld"
confidence: high
description: "Detect PAYG tax withholding"
- id: uniform-expense
pattern: "uniform|workwear|protective.*clothing|laundry.*work"
category: "Work Expenses:Uniforms"
confidence: medium
description: "Detect uniform and protective clothing expenses"
labels: ["Tax Deductible", "Work Expense"]
- id: work-tools
pattern: "tools?|equipment|laptop.*work|computer.*work"
category: "Work Expenses:Tools & Equipment"
confidence: medium
description: "Detect work tool and equipment purchases"
labels: ["Tax Deductible", "Requires Receipt", "Work Expense"]
- id: work-vehicle
pattern: "fuel.*work|parking.*work|tolls.*work|uber.*work"
category: "Work Expenses:Vehicle"
confidence: low
description: "Detect work-related vehicle expenses (requires verification)"
labels: ["Tax Deductible", "Requires Receipt", "Work Expense"]
tax_tracking:
bas_enabled: false
payment_summary_reconciliation: true
work_expense_threshold: 300
logbook_required: false
alerts:
- type: work_expense_threshold
trigger: annual_total_exceeds
threshold: 300
category: "Work Expenses"
message: "Work expenses exceed $300 - ensure you have receipts for all claims"
- type: eofy_reminder
schedule: annual
before_date: "06-15"
message: "EOFY approaching - gather payment summary and work expense receipts"
dependencies:
requires: []
conflicts_with: ["sole-trader", "small-business"]
metadata:
created: "2025-11-22"
version: "1.0.0"
author: "Agent Smith"
priority: 1

View File

@@ -0,0 +1,141 @@
name: Sole Trader / Contractor
layer: primary
description: |
ABN holder running a business as a sole trader or independent contractor.
Includes quarterly BAS obligations and GST tracking.
categories:
- name: "Business Income"
parent: null
description: "Income from ABN-related business activities"
- name: "Business Expenses"
parent: null
description: "Tax-deductible business expenses"
- name: "Business Expenses:Office Supplies"
parent: "Business Expenses"
description: "Stationery, software, subscriptions"
- name: "Business Expenses:Travel"
parent: "Business Expenses"
description: "Business travel and accommodation"
- name: "Business Expenses:Home Office"
parent: "Business Expenses"
description: "Home office expenses (percentage allocation)"
- name: "Business Expenses:Professional Development"
parent: "Business Expenses"
description: "Training, courses, professional memberships"
- name: "Business Expenses:Marketing"
parent: "Business Expenses"
description: "Advertising, website, business cards"
- name: "GST Collected"
parent: "Business Income"
description: "GST component of business income"
- name: "GST Paid"
parent: "Business Expenses"
description: "GST component of business expenses"
labels:
- name: "Tax Deductible"
description: "Business expense claimable on tax return"
color: "green"
auto_apply: false
- name: "GST Applicable"
description: "Includes GST component for BAS"
color: "blue"
auto_apply: true
- name: "Business Use"
description: "Business-related expense or income"
color: "purple"
auto_apply: true
- name: "Home Office"
description: "Home office percentage claim"
color: "brown"
auto_apply: false
- name: "Input Tax Credit"
description: "Eligible for GST credit on BAS"
color: "darkblue"
auto_apply: false
rules:
- id: abn-payment-detection
pattern: "ABN.*payment|invoice.*paid|client.*payment|contractor.*payment"
category: "Business Income"
confidence: high
description: "Detect ABN payments from clients"
labels: ["Business Use", "GST Applicable"]
- id: home-office-percentage
pattern: "electricity|internet|rent|mortgage.*interest"
category: "Business Expenses:Home Office"
confidence: medium
percentage: 20
description: "Allocate home expenses to business use"
requires_user_confirmation: true
labels: ["Tax Deductible", "Business Use", "Home Office"]
- id: office-supplies
pattern: "officeworks|staples|adobe|microsoft.*365|canva|software"
category: "Business Expenses:Office Supplies"
confidence: high
description: "Detect office supply and software purchases"
labels: ["Tax Deductible", "Business Use", "GST Applicable"]
- id: professional-development
pattern: "course|training|conference|webinar|udemy|coursera|linkedin.*learning"
category: "Business Expenses:Professional Development"
confidence: medium
description: "Detect professional development expenses"
labels: ["Tax Deductible", "Business Use", "GST Applicable"]
- id: marketing-expense
pattern: "google.*ads|facebook.*ads|instagram.*ads|domain.*registration|web.*hosting|vistaprint"
category: "Business Expenses:Marketing"
confidence: high
description: "Detect marketing and advertising expenses"
labels: ["Tax Deductible", "Business Use", "GST Applicable"]
tax_tracking:
bas_enabled: true
bas_frequency: quarterly
gst_method: cash
instant_asset_writeoff: true
instant_asset_threshold: 20000
home_office_percentage: 20
alerts:
- type: quarterly_bas_reminder
schedule: quarterly
before_days: 14
message: "BAS due in 14 days - ensure all invoices and expenses are recorded"
- type: instant_asset_threshold
trigger: transaction_over_threshold
threshold: 20000
message: "Purchase over $20k - may require depreciation schedule instead of instant write-off"
- type: gst_registration_threshold
trigger: annual_income_exceeds
threshold: 75000
category: "Business Income"
message: "Business income approaching $75k - GST registration may be required"
dependencies:
requires: []
conflicts_with: ["payg-employee", "small-business"]
metadata:
created: "2025-11-22"
version: "1.0.0"
author: "Agent Smith"
priority: 1