Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Track vehicle expenses (gas, maintenance, parts) in Google Sheets and save related photos. Handles mileage, cost, category, and photo organization.
Track vehicle expenses (gas, maintenance, parts) in Google Sheets and save related photos. Handles mileage, cost, category, and photo organization.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
A multi-language vehicle expense tracking tool that supports Google Sheets and local Excel files.
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
Available locales: zh-TW - 繁體中文 (Taiwan) en-US - English (US) ja-JP - 日本語
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": {} }
Based on your chosen locale and unit system, copy the appropriate category defaults. For English (metric): { "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 } } } For English (imperial): { "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 } } } For 繁體中文 (metric): { "category_defaults": { "加油": { "unit": "公升" }, "周邊": { "unit": "個", "quantity": 1 }, "維修": { "unit": "件", "quantity": 1 }, "保養": { "unit": "次", "quantity": 1 }, "買車": { "unit": "輛", "quantity": 1 } } } For 日本語 (metric): { "category_defaults": { "給油": { "unit": "リットル" }, "アクセサリー": { "unit": "個", "quantity": 1 }, "修理": { "unit": "件", "quantity": 1 }, "メンテナンス": { "unit": "回", "quantity": 1 }, "購入": { "unit": "台", "quantity": 1 } } }
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.
{ "aliases": { "car": "My Car 2020", "toyota": "My Car 2020" } }
Override default directories: { "photo_base_dir": "/path/to/photos", "local_excel_dir": "/path/to/excel/files", "sheet_name": "Expenses" } Default paths: ~/vehicle_tracker
{ "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" }
python3 skills/vehicle-tracker/tracker.py \ --vehicle "camry" \ --mileage 15000 \ --category "Gas" \ --cost 45.50 \ --quantity 12.5 \ --dry-run
python3 skills/vehicle-tracker/tracker.py \ --vehicle "camry" \ --mileage 15000 \ --category "Gas" \ --cost 45.50 \ --quantity 12.5
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
ArgumentRequiredDescription--vehicleOptionalVehicle name or alias. Uses default if omitted.--mileageRequiredCurrent odometer reading--categoryRequiredExpense category--costRequiredExpense amount (currency symbols auto-removed)--quantityOptionalQuantity (uses default if available)--unitOptionalUnit (uses category mapping if available)--dateOptionalDate YYYY-MM-DD (defaults to today)--descriptionOptionalAdditional notes--photosOptionalPhoto file paths to save--dry-runFlagPreview only, no write
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
CodeLanguageUnit Systemszh-TW繁體中文metric, imperialen-USEnglish (US)metric, imperialja-JP日本語metric, imperial
Workflow acceleration for inboxes, docs, calendars, planning, and execution loops.
Largest current source with strong distribution and engagement signals.