Tesla Status Skill
Query Tesla vehicle status and information via TeslaMate API.
When to Use
✅ USE this skill when:
- User asks "Tesla status" or "check my Tesla"
- Want to know battery level, range, or charging status
- Need vehicle location or recent trips
- Checking if vehicle is locked/climate is on
- Monitoring battery health and vehicle efficiency
When NOT to Use
❌ DON'T use this skill when:
- Direct Tesla API access is needed (use Tesla's official API)
- Vehicle commands beyond wake-up (use Tesla app or other tools)
- Historical data analysis beyond recent drives
- Real-time vehicle control (unlocking, starting climate, etc.)
Prerequisites
- TeslaMate - Self-hosted data logger (GitHub)
- TeslaMate API - REST API for TeslaMate (GitHub)
- Python 3 with
requestsmodule installed
Quick Start
Install Python requests module:
pip install requestsEnsure TeslaMate API is running:
curl http://localhost:8686/api/v1/carsCheck your Tesla status:
~/.openclaw/skills/tesla-status/tesla-status.sh status
Commands
Get All Cars
tesla cars
Lists all Tesla vehicles registered in TeslaMate with basic details.
Get Car Status
tesla status [car_id]
Gets detailed status including battery, charging, climate, location, and security status. Defaults to car ID 1.
Get Battery Health
tesla battery [car_id]
Gets detailed battery health metrics including degradation percentage, max range, and capacity.
Get Current Charge
tesla charge [car_id]
Gets current charging session information (if vehicle is charging).
Get Vehicle Details
tesla details [car_id]
Gets vehicle specifications including model, trim, VIN, color, and wheel type.
Wake Vehicle
tesla wake [car_id]
Sends a wake-up command to bring the vehicle online (requires TESLAMATE_API_TOKEN).
Examples
Basic Status Check
tesla status
Output:
Vehicle: Motor AAT
State: offline
Battery Level: 77%
Estimated Range: 370.04 km
Locked: True
Location: 39.95679, 116.302934
List All Vehicles
tesla cars
Output:
Found 1 cars:
Car ID: 1
Name: "Motor AAT"
Model: Y
VIN: LRWYGCEK5PC179877
Battery Health Check
tesla battery
Output (JSON):
{
"battery_health": {
"max_range": 498.87,
"current_range": 494.82,
"battery_health_percentage": 99.14
}
}
Configuration
API Host
By default, the skill connects to http://localhost:8686. To change:
export TESLAMATE_API_HOST="http://localhost:8080"
API Token (for wake commands)
export TESLAMATE_API_TOKEN="your-api-token-here"
Car ID
Default is car ID 1. Specify different car:
tesla status 2
API Endpoints Used
| Endpoint | Description |
|---|---|
GET /api/v1/cars |
List all vehicles |
GET /api/v1/cars/:CarID/status |
Detailed vehicle status |
GET /api/v1/cars/:CarID/battery-health |
Battery health metrics |
GET /api/v1/cars/:CarID/charges/current |
Current charging session |
POST /api/v1/cars/:CarID/wake_up |
Wake vehicle command |
Troubleshooting
"No cars found"
- Check TeslaMate API is running:
curl http://localhost:8686/api/healthz - Verify TeslaMate is collecting data from your vehicle
"Vehicle is offline"
- This is normal when vehicle is parked/asleep
- Use
tesla waketo bring it online (requires token)
"Python requests module missing"
- Install:
pip install requestsorpip3 install requests
"API token required"
- Set
TESLAMATE_API_TOKENenvironment variable - Token must be configured in TeslaMate API
Notes
- Real-time data: Vehicle must be online/awake for fresh data
- Cached data: Shows last known state when vehicle is asleep
- Location accuracy: May show last known location when offline
- Battery health: Calculated from TeslaMate historical data
- Security: API token required for wake commands only
Related Skills
- apple-reminders - For scheduling Tesla-related reminders
- cron - For automated regular status checks
- weather - Check weather at vehicle location