BalaGaneshKumar

Job Hunter Agent Phase 1 — Development skill for Claude Code

Development community

Phase 1 archive of a job-hunting dashboard I built entirely by prompting Claude, with no programming background.

How to install Job Hunter Agent Phase 1

This entry records only its repository, not the path inside it, so there is no exact command to give. Open BalaGaneshKumar/Job-Hunter-Agent-Phase-1 and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Job Hunter Agent Phase 1 does

Phase 1 archive of a job-hunting dashboard I built entirely by prompting Claude, with no programming background. Automated scraping was removed after hitting job portals' ToS restrictions — kept here as a documented, working local tool for tracking applications.

Alternatives in Development

  • Add Chart — Renamed → /portaljs-add-chart 2.3k ★
  • /hunt — Active vulnerability hunting on a target 1.8k ★
  • Src Hunter Skill — 实战 SRC / 众测 / Bug bounty 漏洞挖掘 Claude Code skill — 19 个攻击类 playbook、305 个结构化 payload、263 个 WAF/EDR 绕过、2887 份 Ha 602 ★

README

JobHunterAgent — Phase 1 (Archived)

Automated job-search assistant for Portal B, Portal A, and Portal C: a Counter → Scraper → Validator pipeline driven by a local dashboard, plus a manual "Career" application tracker.

**Status: Phase 1, stopped here.** See [Limitation](#limitation-why-this-stopped) below.

Per-file documentation

Every `.py` file has a matching doc in [`docs/`](./docs) (e.g. `docs/scraper.py.md`) covering its role, functions, and dependencies.

Architecture

  • Counter (job_counter.py + counter_portal_b.py / counter_portal_a.py / counter_portal_c.py) — estimates total job count per keyword/location before scraping.
  • Scraper (scraper.py + scraper_portal_b.py / scraper_portal_a.py / scraper_portal_c.py) — pulls job listings via Selenium, writes to scraper_jobs.xlsx → jobs.csv.
  • Validator (validator.py + validator_portal_b.py / validator_portal_a.py / validator_portal_c.py) — opens each scraped job's URL and classifies it Internal/External/Ineligible.
  • Dashboard (dashboard_server.py + dashboard_*.py) — local web UI (localhost:8080) to configure, launch, and monitor the above as subprocesses, plus a Career tab for manually tracked applications.
  • Shared infrastructure: create_driver.py / antibot_helpers.py (browser lifecycle), search_state.py (resumable scrape state), tracker.py / blacklist_manager.py (persistence), workflow_tracker.py (progress/logging).

Modules

  • Scraper modules (per portal) — one module per job portal handles discovery of postings for that portal.
  • create_driver — sets up the browser session used for scraping.
  • search_state — tracks scraping progress (current page, job counts, completed flags) per portal so runs can resume instead of restarting.
  • tracker — writes discovered jobs to a job store (Excel/CSV) and syncs to a master jobs file.
  • job_counter — determines total postings/pages available for a search before scrapin