Skip to main content Skills Marketplace Discover and explore AI skills built by the community.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Copy promptShow prompt details A direct command skips the review prompt. Inspect the source before running it.
npx skills add https://github.com/johnalbertini14-glitch/openclaw-skills --skill vehicle-trackerThe command stays on one line. Scroll horizontally to inspect it before copying.
Prefer a local copy? Download the files currently available to SkillsMP.
Download Zip Downloading... More from this repository Related occupations SOC
Based on SOC occupation classification
name vehicle-tracker description Track vehicle expenses (gas, maintenance, parts) in Google Sheets and save related photos. Handles mileage, cost, category, and photo organization.
Vehicle Expense Tracker
A multi-language vehicle expense tracking tool that supports Google Sheets and local Excel files.
Features
i18n Support : Multiple languages via locale files (locales/*.json)
Google Sheets Integration : Write directly to Google Sheets via API
Local Excel Fallback : Saves to local .xlsx files if no Spreadsheet ID configured
Metric/Imperial Units : Configurable unit system (km/L vs mi/gal)
Photo Management : Auto-saves and renames photos with timestamps
Aliases : Support vehicle aliases (e.g., "my car" → "Toyota Camry 2020")
Defaults : Auto-fill quantity and unit based on category
🚀 Initialization (First-Time Setup)
Step 1: Choose Your Locale
Available locales:
zh-TW - 繁體中文 (Taiwan)
en-US - English (US)
ja-JP - 日本語
Step 2: Create config.json
Copy the template below and save as skills/vehicle-tracker/config.json:
{
"locale" : "en-US" ,
"unit_system" : "metric"
,
"vehicles"
:
{
}
,
"aliases"
:
{
}
,
"default_vehicle"
:
null
,
"category_defaults"
:
{
}
}
Step 3: Copy Category Defaults from Locale Based on your chosen locale and unit system, copy the appropriate category defaults.
{
"category_defaults" : {
"Gas" : { "unit" : "liter" } ,
"Accessory" : { "unit" : "pc" , "quantity" : 1 } ,
"Repair" : { "unit" : "job" , "quantity" : 1 } ,
"Maintenance" : { "unit" : "service" , "quantity" : 1 } ,
"Purchase" : { "unit" : "unit" , "quantity" : 1 }
}
}
{
"category_defaults" : {
"Gas" : { "unit" : "gallon" } ,
"Accessory" : { "unit" : "pc" , "quantity" : 1 } ,
"Repair" : { "unit" : "job" , "quantity" : 1 } ,
"Maintenance" : { "unit" : "service" , "quantity" : 1 } ,
"Purchase" : { "unit" : "unit" , "quantity" : 1 }
}
}
{
"category_defaults" : {
"加油" : { "unit" : "公升" } ,
"周邊" : { "unit" : "個" , "quantity" : 1 } ,
"維修" : { "unit" : "件" , "quantity" : 1 } ,
"保養" : { "unit" : "次" , "quantity" : 1 } ,
"買車" : { "unit" : "輛" , "quantity" : 1 }
}
}
{
"category_defaults" : {
"給油" : { "unit" : "リットル" } ,
"アクセサリー" : { "unit" : "個" , "quantity" : 1 } ,
"修理" : { "unit" : "件" , "quantity" : 1 } ,
"メンテナンス" : { "unit" : "回" , "quantity" : 1 } ,
"購入" : { "unit" : "台" , "quantity" : 1 }
}
}
Step 4: Add Your Vehicle Option A: Google Sheets (recommended for cloud sync)
Create a Google Spreadsheet
Share it with a Google Service Account (see google-workspace skill)
Add the Spreadsheet ID to config:
{
"vehicles" : {
"My Car 2020" : "1ABC123...xyz"
} ,
"default_vehicle" : "My Car 2020"
}
Option B: Local Excel (no setup required)
Just add the vehicle name without an ID:
{
"vehicles" : {
"My Car 2020" : null
} ,
"default_vehicle" : "My Car 2020"
}
Files will be saved to ~/vehicle_tracker/My_Car_2020.xlsx.
Step 5: Add Aliases (Optional) {
"aliases" : {
"car" : "My Car 2020" ,
"toyota" : "My Car 2020"
}
}
Step 6: Custom Paths (Optional) Override default directories:
{
"photo_base_dir" : "/path/to/photos" ,
"local_excel_dir" : "/path/to/excel/files" ,
"sheet_name" : "Expenses"
}
Default paths: ~/vehicle_tracker
Complete config.json Example {
"locale" : "en-US" ,
"unit_system" : "imperial" ,
"vehicles" : {
"Toyota Camry 2020" : "1ABC123...spreadsheet_id" ,
"Honda Civic 2018" : null
} ,
"aliases" : {
"camry" : "Toyota Camry 2020" ,
"civic" : "Honda Civic 2018" ,
"car" : "Toyota Camry 2020"
} ,
"default_vehicle" : "Toyota Camry 2020" ,
"category_defaults" : {
"Gas" : { "unit" : "gallon" } ,
"Accessory" : { "unit" : "pc" , "quantity" : 1 } ,
"Repair" : { "unit" : "job" , "quantity" : 1 } ,
"Maintenance" : { "unit" : "service" , "quantity" : 1 } ,
"Purchase" : { "unit" : "unit" , "quantity" : 1 }
} ,
"photo_base_dir" : "~/vehicle_tracker" ,
"local_excel_dir" : "~/vehicle_tracker"
}
Usage
Preview (Dry Run) - Always do this first! python3 skills/vehicle-tracker/tracker.py \
--vehicle "camry" \
--mileage 15000 \
--category "Gas" \
--cost 45.50 \
--quantity 12.5 \
--dry-run
Execute (After user confirms) python3 skills/vehicle-tracker/tracker.py \
--vehicle "camry" \
--mileage 15000 \
--category "Gas" \
--cost 45.50 \
--quantity 12.5
With Photos python3 skills/vehicle-tracker/tracker.py \
--vehicle "camry" \
--mileage 15200 \
--category "Maintenance" \
--cost 89.99 \
--description "Oil change" \
--photos "/path/to/receipt.jpg" \
--dry-run
Arguments Argument Required Description --vehicleOptional Vehicle name or alias. Uses default if omitted. --mileageRequired Current odometer reading --categoryRequired Expense category --costRequired Expense amount (currency symbols auto-removed) --quantityOptional Quantity (uses default if available) --unitOptional Unit (uses category mapping if available) --dateOptional Date YYYY-MM-DD (defaults to today) --descriptionOptional Additional notes --photosOptional Photo file paths to save --dry-runFlag Preview only, no write
Adding a New Locale Create locales/{code}.json based on existing locale files. Required fields:
language_name
sheet_name
columns_metric / columns_imperial
photo_prefix
messages
units_metric / units_imperial
default_units_metric / default_units_imperial
Supported Locales Code Language Unit Systems zh-TW繁體中文 metric, imperial en-USEnglish (US) metric, imperial ja-JP日本語 metric, imperial