Tesla Fleet API

🚗 官方 API 远程控车工具集

通过 Tesla 官方 Fleet API 远程控制车辆,支持空调预热、充电管理、车门锁止等命令,需开发者注册及 OAuth 认证,安全性取决于密钥管理。

收藏
12.1k
安装
4.1k
版本
1.1.8
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

Tesla Fleet API Skill 是连接 Tesla 官方 Fleet API 的命令行工具集,允许开发者通过程序化方式远程管理 Tesla 车辆。核心功能分为三大类:

1. 车辆状态读取 (vehicle_data.py)

  • 实时获取电池电量、充电状态、续航里程、室内外温度、GPS 位置、门锁状态、软件版本等信息
  • 支持格式化输出与原始 JSON 两种模式,便于集成到自动化工作流

2. 远程指令执行 (command.py)

  • 气候控制:启动/停止空调、设置温度、开启狗狗模式/露营模式、座椅加热/通风/自动调节、方向盘加热
  • 充电管理:启停充电、设置充电限值(50-100%)
  • 安全控制:车门上锁/解锁、鸣笛、闪灯、唤醒车辆
  • 预约预处理:按星期几或一次性设置出发前的电池/座舱预热时间

3. 认证与配置 (auth.py)

  • 处理 OAuth 2.0 授权流程(支持交互式登录与代码交换)
  • 自动刷新访问令牌(refresh token 轮换机制)
  • 域名注册与虚拟密钥登记(签发车辆命令必需)

显著优点

  • 官方 API 支持:基于 Tesla 官方 Fleet API,非逆向工程,稳定性与合规性优于非官方方案
  • 命令签名安全:使用 Tesla 官方 vehicle-command 代理进行 ECDSA 签名,符合 Tesla 最新安全要求(2024年后强制要求)
  • 多区域适配:内置欧洲、北美、中国三个区域的 API 端点自动切换
  • 车辆自动识别:单车辆用户无需指定 VIN,自动选择;多车辆支持名称/VIN 精确指定
  • 完善的 CLI 体验:子命令结构清晰、参数提示友好、输出可读性强

潜在缺点与局限性

  • 高门槛配置:需完成 Tesla 开发者账号注册、OAuth App 创建、域名验证、公钥托管、TLS 证书配置等繁琐流程
  • 依赖外部代理:车辆命令必须通过 tesla-http-proxy 本地代理转发,需维护 Go 环境及 TLS 基础设施
  • 车辆在线要求:多数命令要求车辆处于在线状态,睡眠中需先执行 wake 命令
  • 速率限制:Tesla API 存在未公开的调用频率限制,频繁操作可能触发限流
  • 功能覆盖不全:部分车辆功能(如哨兵模式控制、行车记录仪访问)尚未开放 API

适合人群

  • 智能家居自动化爱好者:希望将 Tesla 集成到 Home Assistant、OpenClaw 等自动化平台
  • 开发者/DevOps 工程师:需要批量管理车队或构建 Tesla 周边应用的开发者
  • 高级车主:追求极致自定义控制、愿意投入技术配置时间的 Tesla 车主

常规风险

| 风险类别 | 具体描述 | 缓解建议 |
|---------|---------|---------|
| 密钥泄露 | `TESLA_CLIENT_SECRET`、`TESLA_PRIVATE_KEY` 泄露可导致车辆被远程控制 | 使用环境变量或密钥管理服务,禁止硬编码;定期轮换 |
| 代理配置错误 | TLS 证书或域名配置错误可能导致中间人攻击风险 | 严格验证证书链,使用自签名 CA 时妥善保管根证书 |
| 令牌过期未处理 | 长期运行的自动化脚本可能因令牌失效中断 | 实现 `auth.py refresh` 的自动重试逻辑 |
| 车辆误操作 | 命令发送到错误车辆(如同名车辆)或误触关键操作 | 多车辆环境强制使用 VIN 指定;关键操作添加确认步骤 |
| API 变更兼容 | Tesla 频繁更新 API 协议,旧版本可能突然失效 | 关注 `TESLA_VEHICLE_COMMAND_VERSION` 更新,及时升级 skill |

技术依赖

  • 运行时:Python 3、Bash、OpenSSL、Git
  • 代理编译:Go 环境(用于安装 tesla-http-proxy
  • 网络:需可访问 Tesla 云服务端点,部分地区需考虑网络连通性

Tesla Fleet API 内容

scripts文件夹
手动下载zip · 36.7 kB
auth.pytext/plain
请选择文件