AI-powered LinkedIn job search assistant that scrapes real-time listings, filters by technology and location, and scores each match — delivered through chat.
Before first use, the user needs a Google Gemini API key for AI scoring. Ask for it and save it:
python3 scripts/job_hunter.py setkey "USER_GEMINI_KEY_HERE"
If the user doesn't have one, searches still work but without AI scoring (all jobs get a neutral 0.5 score). Free keys available at https://aistudio.google.com/apikey
When the user asks to search for jobs, gather these parameters conversationally:
Don't ask for ALL parameters — just ask the essentials (keywords, technologies, countries) and use sensible defaults for the rest. Let the user add filters if they want.
python3 scripts/job_hunter.py search '{
"keywords": "Python developer",
"technologies": ["Python", "FastAPI", "AWS"],
"countries": ["Spain", "Germany"],
"remote": true,
"experience": "mid",
"exclude": ["consultant"],
"min_score": 0.6,
"max_pages": 3
}'
The script returns JSON with scored jobs. Present the results in a clean format:
> 1. Senior Python Engineer — TechCorp
> Madrid, Spain | Remote | €50k-60k
> Score: 0.92 — "Excelente match: remoto, Python/FastAPI"
> https://linkedin.com/jobs/view/12345
Show the top results (score >= min_score) sorted by score. If there are many results, show the top 10 and mention how many more are available.
Important: Searches take time (30-90 seconds) due to LinkedIn scraping. Tell the user to wait.
Users can save jobs they like for later review:
# Save a job
python3 scripts/job_hunter.py save '{
"title": "Senior Python Engineer",
"company": "TechCorp",
"location": "Madrid",
"url": "https://linkedin.com/jobs/view/12345",
"score": 0.92,
"notes": "Great match, applied on 2026-03-19"
}'
# List saved jobs
python3 scripts/job_hunter.py saved
# Remove a saved job
python3 scripts/job_hunter.py unsave "https://linkedin.com/jobs/view/12345"
# Show recent searches
python3 scripts/job_hunter.py history
# Re-run a previous search
python3 scripts/job_hunter.py rerun 1
Detect the user's language and:
All data stored as JSON in ~/.openclaw/job-hunter/:
config.json — Gemini API key and settingshistory.json — search historysaved.json — saved jobsSee references/search_format.md for full schemas.
共 1 个版本