Install
openclaw skills install @justintsmith/car-buying-assistantHelp Justin research, compare, and decide on new/used cars in Ontario, Canada (and nearby markets) using structured workflows, web research, and local files. Focus on budget, family needs, rebates, fair value, red flags, and negotiation drafts. Never send money or share payment details.
openclaw skills install @justintsmith/car-buying-assistantThis skill turns the agent into a car-buying analyst for Justin, with a focus on Ontario, Canada and neighbouring markets.
It does not automate logins, purchases, or payments. It works by:
~/Documents/CarSearch/This skill MUST obey the following:
Never send money.
Never share payment or identity details.
No automated logins.
Always ask before contacting dealers or sellers.
Treat all scraped data as approximate.
This skill writes reports under:
~/Documents/CarSearch/
sessions/
YYYY-MM-DD-<slug>/
criteria.md # what we’re looking for
listings.json # normalized candidates
comparison.md # ranked options + reasoning
negotiation.md # draft emails / negotiation notes
notes.md # scratchpad / follow-ups
archive/
... # older sessions moved here
The agent should create the sessions/ subfolder for each new search and use a slug like xterra-under-7k-vancouver.
Use this workflow whenever Justin asks for car-buying help, e.g.:
"Help me find a used Xterra under $7k in Vancouver"
"Find a safe, fuel-efficient family car under $25k in Ontario"
"Compare these three listings and tell me whether to buy one or keep looking"
Ask a few quick questions and record the answers in criteria.md:
<= $7k, $15–25k).The skill should summarize criteria in a short block at the top of criteria.md.
Sources (always via public pages or links Justin provides):
For each candidate Justin is interested in (or that looks promising), extract:
source (e.g. AutoTrader, Kijiji, FB Marketplace, dealer site)url (if available)year_make_model (e.g. 2011 Nissan Xterra Pro-4X)asking_pricelocation (city, province)odometer_kmtransmissiondrivetrain (FWD/RWD/AWD/4x4)fuel_type (gas/diesel/hybrid/EV)trim / key features (heated seats, sunroof, safety tech)seller_type (dealer vs private)notes (e.g., "claims no accidents", "new tires", "rust visible in photos")Store these in listings.json as an array of objects. The helper script scripts/normalize_listings.py can be used to clean up this JSON if needed.
Use web research (Reddit, Canadian Black Book, forums, YouTube reviews) to answer:
Summarize this per model in comparison.md under a "Model Notes" section.
For the current listings.json, produce a ranked comparison in comparison.md:
For each candidate, include:
Year Make Model – $price – km – city – dealer/privategood deal, fair, or overpriced based on research.Also include a high-level table if helpful:
| # | Vehicle | Price | km | Location | Seller | Deal? | Notes |
|---|---------|-------|----|----------|--------|-------|-------|
| 1 | 2011 Xterra Pro-4X | $6,900 | 220k | Vancouver | Private | Fair | Some rust, older tires |
Explicitly flag red flags for each candidate (in comparison.md):
Recommend pre-purchase inspection and Carfax or equivalent for any serious contender.
In negotiation.md, help Justin prepare to talk to sellers/dealers:
Always include a clear disclaimer in drafts:
"I’m still evaluating my options and not ready to commit today, just gathering info."
Never send messages directly; Justin sends them via his own email/phone.
Finally, provide a clear recommendation in comparison.md:
Include a short reasoning block:
scripts/normalize_listings.pyA small helper to normalize JSON listings and ensure they have consistent keys.
Usage example:
cd ~/.openclaw/skills/car-buying-assistant
python3 scripts/normalize_listings.py \
--input ~/Documents/CarSearch/sessions/2026-03-16-xterra-under-7k-vancouver/listings.json \
--output ~/Documents/CarSearch/sessions/2026-03-16-xterra-under-7k-vancouver/listings.normalized.json
It:
null/empty strings,scripts/report_template.mdA markdown template for comparison.md reports, with sections for:
The agent can copy this template into each new session folder and fill it in.
When Justin says:
"adapt your general research and email skills to help me find and buy a used Xterra under $7k in Vancouver"
The flow should be:
Create a new session folder:
~/Documents/CarSearch/sessions/2026-03-16-xterra-under-7k-vancouver/
Write criteria.md with:
<= $7,000<= 250,000 kmSearch AutoTrader.ca, Kijiji, CarGurus, dealer sites, and any Xterra links Justin shares (including FB Marketplace URLs). For ~5–10 promising listings, extract fields into listings.json.
Research Xterra ownership in Canada via Reddit and forums:
Use that to annotate each candidate in comparison.md:
Draft 1–2 inquiry emails in negotiation.md for the best candidate(s), asking about:
Give a clear recommendation:
All actions involving purchases, messaging sellers, or sharing personal details remain under Justin’s direct control.