← ClaudeAtlas

job-feedslisted

Aggregate sanctioned public job feeds into one deduplicated local database, match postings against the user's career lanes, and render a filterable self-contained HTML report. Use whenever the user wants to search or monitor job boards - "find me remote platform engineering roles", "what jobs came up this week", "check the job boards", "aggregate job listings", "what's new since I last looked" - or wants a report of current openings across multiple sites. Covers eight documented JSON APIs and RSS feeds (Arbeitnow, Jobicy, Remotive, Remote OK, Working Nomads, 4 Day Week, We Work Remotely, Python.org Jobs), weighted towards the German and EU-remote market. NOT for LinkedIn - that needs a signed-in session and is a separate tool. This skill never scrapes HTML, never works around a block, and never republishes what it collects.
kevin-burns/claude-skills · ★ 7 · Data & Documents · score 78
Install: claude install-skill kevin-burns/claude-skills
# job-feeds Eight job boards, one deduplicated database, one report. Every source is a **documented JSON API or RSS feed the publisher offers** — this is not a scraper. ## Provenance Data comes from, and credit is due to: [Arbeitnow](https://www.arbeitnow.com) · [Jobicy](https://jobicy.com) · [Remotive](https://remotive.com) · [Remote OK](https://remoteok.com) · [Working Nomads](https://www.workingnomads.com) · [4 Day Week](https://4dayweek.io) · [We Work Remotely](https://weworkremotely.com) · [Python.org Jobs](https://www.python.org/jobs/) **Remote OK requires attribution and a dofollow backlink** as a condition of API access, and Arbeitnow's `meta.terms` asks the same. The generated report carries these automatically. Do not strip them. ## Setup The script is stdlib-only, so `python3` works as well as `uv`. Define the function at the **start of each command block** — shell state does not persist between calls, and a relative path will not resolve from another repo: **Pick ONE of these.** They are alternatives, not a sequence — a new-user test found that pasting them together silently gave the second one, because the later definition overwrites the first. Simplest, and fully supported since the script is stdlib-only: ```bash jfeeds() { python3 "$HOME/.claude/skills/job-feeds/scripts/job_feeds.py" "$@"; } ``` Or under `uv`, resolving it even when it is off PATH: ```bash UV="$(command -v uv || ls "$HOME/.local/bin/uv" "$HOME/.cargo/bin/uv" /opt/homebrew/bin/uv /usr