名称: mechanic
描述: "车辆维护追踪与机械顾问。追踪里程、保养周期、燃油经济性、费用、保修和召回信息。研究制造商保养计划、估算费用、预测保养日期、记录服务商,并主动提醒即将到期或已超期的保养。支持 VIN 解码与车辆规格自动填充、NHTSA 召回监控、带异常检测的 MPG 追踪、保修到期提醒、出行前/季节性检查清单、里程预测、服务商历史记录、税务抵扣集成、紧急信息卡和每英里成本分析。适用于讨论车辆维护、换油、保养周期、里程追踪、燃油经济性、保修、召回、房车维护、车顶密封、发电机保养、滑出舱、冬季防护或任何与机械相关的话题。支持任何车辆类型,包括卡车、汽车、摩托车、越野摩托车、全地形车、房车和船只。"
主页: https://github.com/ScotTFO/mechanic-skill
元数据: {"clawdbot":{"emoji":"🔧"}}
追踪任意组合车辆的里程和保养周期——卡车、汽车、摩托车、房车、越野摩托车、全地形车、船只等。解码 VIN 以自动填充车辆规格,研究制造商推荐的保养计划,追踪保养历史,估算费用,监控召回,追踪燃油经济性,管理保修,并主动提醒即将到期和已超期的保养。
所有用户数据存储在 <workspace>/data/mechanic/:
| 文件 | 用途 |
|---|---|
state.json |
所有车辆:当前里程/小时数、历史记录、保养记录、加油记录、保修、服务商、紧急信息 |
<key>-schedule.json |
每辆车的保养计划,包含周期和费用估算 |
约定: 技能逻辑位于 <skill>/,用户数据位于 <workspace>/data/mechanic/。这确保了在技能更新或重新安装时数据安全。
如果 <workspace>/data/mechanic/state.json 不存在:
1. 创建 <workspace>/data/mechanic/ 目录
2. 询问用户想要追踪哪些车辆
3. 对于每辆车,运行 添加新车辆 工作流(包括为每辆车选择检查频率)
4. 创建包含车辆条目的 state.json
5. 设置 cron 任务(见 里程检查设置)
{
"settings": {
"check_in_tz": "America/Phoenix"
},
"providers": [
{
"id": "jims_diesel",
"name": "Jim's Diesel Repair",
"location": "123 Main St, Mesa, AZ",
"phone": "480-555-1234",
"specialties": ["diesel", "trucks"],
"rating": 5,
"notes": "Great with Power Stroke engines"
}
],
"vehicles": {
"f350": {
"label": "2021 Ford F-350 6.7L Power Stroke",
"schedule_file": "f350-schedule.json",
"check_in_frequency": "monthly",
"current_miles": 61450,
"last_updated": "2026-01-26",
"last_check_in": "2026-01-26",
"vin": "1FT8W3BT0MED12345",
"vin_data": {
"decoded": true,
"decoded_date": "2026-01-26",
"year": 2021,
"make": "Ford",
"model": "F-350",
"trim": "Lariat",
"body_class": "Pickup",
"drive_type": "4WD",
"engine": "6.7L Power Stroke V8 Turbo Diesel",
"displacement_l": 6.7,
"cylinders": 8,
"fuel_type": "Diesel",
"transmission": "10-Speed Automatic",
"doors": 4,
"gvwr_class": "Class 3",
"bed_length": "8 ft",
"wheel_base": "176 in",
"plant_country": "United States",
"plant_city": "Louisville",
"raw_response": {}
},
"business_use": false,
"business_use_percent": 0,
"mileage_history": [
{"date": "2026-01-26", "miles": 61450, "source": "user_reported"}
],
"service_history": [
{
"service_id": "oil_filter",
"date": "2025-11-15",
"miles": 58000,
"hours": null,
"notes": "Full synthetic Motorcraft FL-2051S",
"actual_cost": 125.00,
"provider": {
"id": "jims_diesel",
"name": "Jim's Diesel Repair",
"parts_warranty_months": 12,
"labor_warranty_months": 6
}
}
],
"fuel_history": [
{
"date": "2026-01-20",
"gallons": 32.5,
"cost": 108.55,
"odometer": 61300,
"mpg": 14.2,
"notes": "Regular fill-up"
}
],
"warranties": [
{
"type": "factory_powertrain",
"provider": "Ford",
"start_date": "2021-03-15",
"end_date": "2026-03-15",
"start_miles": 0,
"end_miles": 60000,
"coverage_details": "Engine, transmission, drivetrain components",
"status": "active"
}
],
"recalls": {
"last_checked": "2026-01-26",
"open_recalls": [],
"completed_recalls": []
},
"emergency_info": {
"vin": "1FT8W3BT0MED12345",
"insurance_provider": "State Farm",
"policy_number": "SF-123456789",
"roadside_assistance_phone": "1-800-555-1234",
"tire_size_front": "275/70R18",
"tire_size_rear": "275/70R18",
"tire_pressure_front_psi": 65,
"tire_pressure_rear_psi": 80,
"oil_type": "15W-40 CK-4 Full Synthetic",
"oil_capacity": "15 quarts",
"coolant_type": "Motorcraft Orange VC-3DIL-B",
"def_type": "API certified DEF",
"tow_rating_lbs": 20000,
"gvwr_lbs": 14000,
"gcwr_lbs": 37000,
"key_fob_battery": "CR2450",
"fuel_type": "Diesel (Ultra Low Sulfur)",
"fuel_tank_gallons": 48,
"notes": ""
}
}
},
"last_service_review": "2026-01-26"
}
顶级字段:
- settings — 全局设置(时区等)
- providers — 可重复使用的服务商列表
- vehicles — 以简短标识符为键(例如 f350、rv、crf450)
- last_service_review — 上次全面检查的日期
每辆车字段:
- label — 人类可读的车辆名称
- schedule_file — 保养计划 JSON 文件的路径
- check_in_frequency — 询问里程的频率(每周/每两周/每月/每季度)
- current_miles / current_hours — 最新已知读数
- last_updated / last_check_in — 日期追踪
- vin — 车辆识别码(用于召回、VIN 解码和紧急信息)
- vin_data — 从 NHTSA VPIC API 解码的 VIN 数据(规格、发动机、变速箱等)
- business_use — 车辆是否用于商业用途(布尔值)
- business_use_percent — 商业用途百分比(0-100)
- mileage_history — 按时间顺序排列的里程/小时数条目数组
- service_history — 按时间顺序排列的已完成保养数组(包含可选的 actual_cost 和 provider)
- fuel_history — 按时间顺序排列的加油记录数组
- warranties — 保修记录数组
- recalls — 召回监控状态(上次检查时间、未完成/已完成)
- emergency_info — 快速参考的车辆规格和紧急联系人
加载技能时,读取:
1. <workspace>/data/mechanic/state.json — 所有车辆的当前状态
2. 根据讨论内容,读取相关的 <key>-schedule.json 文件
当用户想要追踪一辆新车时:
首先询问 VIN。 如果用户提供了 VIN,运行 VIN 解码(见下文)以自动填充年份、品牌、型号、发动机、变速箱、驱动类型和其他规格。这可以节省用户回答您能自动查找的问题的时间。
询问:
- VIN(强烈推荐 — 自动填充规格、启用召回监控、紧急信息)
- 年份、品牌、型号(仅在未提供 VIN 时询问)
- 发动机/配置(仅在未提供 VIN 或 VIN 解码不完整时询问)
- 使用模式 — 日常通勤、拖挂、越野、周末玩具等
- 当前里程/小时数
- 商业用途? — 如果是,百分比是多少?(启用税务抵扣追踪)
- 保修信息 — 是否有有效的原厂或延保?到期日期/里程?
- 紧急信息 — 保险公司、道路救援号码、轮胎尺寸(可稍后填写)
如果用户手头没有 VIN,请继续手动输入信息,并注明稍后可以添加 VIN 以解锁自动填充和召回监控。
询问使用情况以分类保养计划:
| 使用情况 | 强度等级 | 影响 |
|---|---|---|
| 正常通勤 | 正常 | 标准周期 |
| 拖挂、载重 | 严苛 | 更短的周期(通常为正常的 50-75%) |
| 越野、多尘环境 | 严苛 | 更短的周期,更频繁的滤清器更换 |
| 极端温度(炎热沙漠、严寒) | 严苛 | 更短的周期,关注液体/电池 |
| 赛道/竞赛 | 严苛+ | 激进的周期,专用液体 |
| 轻度使用,车库存放 | 正常 | 标准周期,但注意基于时间的项目 |
大多数制造商同时发布“正常”和“严苛/特殊条件”计划。使用匹配的计划。
询问他们希望多久被询问一次这辆车的里程/小时数:
| 频率 | 最适合 |
|---|---|
| 每周 | 越野摩托车、竞赛车辆、商业/车队、高里程日常通勤车 |
| 每两周 | 活跃的骑手/驾驶员,保养周期短的车辆 |
| 每月 | 大多数汽车和卡车(推荐默认值) |
| 每季度 | 季节性车辆、低里程、车库珍藏车、存放的船只 |
根据车辆类型和使用模式建议频率,但允许用户覆盖。
查找制造商推荐的保养周期,针对特定的年份/品牌/型号/发动机:
- 使用网络搜索查找官方保养计划
- 检查车主手册中的周期
- 参考爱好者论坛获取实际建议
- 结合第 2 步中的使用强度等级
创建 <workspace>/data/mechanic/<key>-schedule.json:
{
"vehicle": {
"year": 2021,
"make": "Ford",
"model": "F-350",
"type": "truck",
"engine": "6.7L Power Stroke V8 Turbo Diesel",
"transmission": "10R140 10-Speed Automatic",
"duty": "severe",
"notes": "Tows fifth wheel RV"
},
"services": [
{
"id": "oil_filter",
"name": "Engine Oil & Filter Change",
"interval_miles": 7500,
"interval_months": 6,
"details": "Specific oil type, filter part number, capacity, and any special instructions.",
"priority": "critical",
"cost_diy": "$XX-XX",
"cost_shop": "$XX-XX",
"cost_dealer": "$XX-XX",
"cost_note": "Optional note about related expensive repairs"
}
]
}
每个保养项目必需:
- id — 唯一的蛇形命名标识符
- name — 人类可读的名称
- 至少一个周期:interval_miles、interval_months、interval_hours 或 interval_rides
- details — 具体的零件、液体、容量和任何警告
- priority — critical、high、medium 或 low
- cost_diy、cost_shop、cost_dealer — 估算的费用范围
研究费用:
- 搜索该特定车辆每项保养的典型费用
- DIY = 仅零件成本
- Shop = 独立维修店
- Dealer = 制造商经销商
- 对于故障/维修费用显著高于保养费用的项目,添加 cost_note
将车辆添加到 state.json 的 vehicles 对象下:
{
"<key>": {
"label": "2021 Ford F-350 6.7L Power Stroke",
"schedule_file": "<key>-schedule.json",
"check_in_frequency": "monthly",
"current_miles": 61450,
"current_hours": null,
"last_updated": "2026-01-26",
"last_check_in": "2026-01-26",
"vin": null,
"vin_data": {
"decoded": false
},
"business_use": false,
"business_use_percent": 0,
"mileage_history": [
{"date": "2026-01-26", "miles": 61450, "source": "user_reported"}
],
"service_history": [],
"fuel_history": [],
"warranties": [],
"recalls": {
"last_checked": null,
"open_recalls": [],
"completed_recalls": []
},
"emergency_info": {
"vin": null,
"insurance_provider": null,
"policy_number": null,
"roadside_assistance_phone": null,
"tire_size_front": null,
"tire_size_rear": null,
"tire_pressure_front_psi": null,
"tire_pressure_rear_psi": null,
"oil_type": null,
"oil_capacity": null,
"coolant_type": null,
"tow_rating_lbs": null,
"gvwr_lbs": null,
"key_fob_battery": null,
"fuel_type": null,
"fuel_tank_gallons": null,
"notes": ""
}
}
}
键命名: 使用简短、易记的标识符 — f350、civic、r1、rv、crf450、harley、bass_boat 等。
更新 cron 任务提示以包含新车辆。如果此车辆的频率高于当前的 cron 计划,则将 cron 更新为更高的频率运行。
如果提供了 VIN,运行 VIN 解码 以自动填充车辆规格、紧急信息字段和计划文件的车辆部分。向用户展示解码的信息以供确认。
如果提供了 VIN,立即检查未完成的召回(见 NHTSA 召回监控)。如果没有 VIN,则按品牌/型号/年份检查。
| 类型 | 追踪 | 关键保养项目 |
|---|---|---|
| 汽车 | 里程 | 机油、滤清器、刹车、轮胎、变速箱、冷却液 |
| 卡车 | 里程 | 同汽车 + 差速器液、分动箱(四驱)、拖挂时刹车磨损更重 |
| 摩托车 | 里程 | 机油、链条/链轮、气门间隙、前叉油、刹车液、冷却液(液冷)、轮胎(磨损更快) |
| 越野摩托车 | 小时数 + 骑行次数 | 空气滤清器(每次骑行!)、机油(非常频繁)、气门间隙、悬挂保养、链条、冷却液 |
| 全地形车/多功能车 | 小时数 + 里程 | 类似越野摩托车 + CV 防尘套、皮带(CVT)、绞盘保养 |
| 房车/拖车 | 里程 + 月份 | 车顶/密封胶检查、滑出舱、轮毂轴承、电动刹车、轮胎(基于年限)、水系统、发电机、冬季防护 |
| 船只 | 小时数 | 机油、水泵叶轮、下单元液、锌块/阳极、冬季防护、拖车轴承 |
| 五轮拖车/拖车 | 里程 + 月份 | 无发动机,但需注意:轴承、刹车、轮胎、车顶、密封件、滑出舱、管道、液化石油气、季节性准备 |
保养可以使用任意组合:
- interval_miles — 基于里程表
- interval_hours — 发动机/使用小时数(发电机、越野摩托车、船只)
- interval_months — 基于时间(