swissdevjobs-cli plugin

A Claude Code plugin and CLI: IT job search with salary on nine boards in eight countries, applications and a log of sent ones.

  • 106 ★ on the repository
  • Last commit
  • MIT
Plugin

Extended access

Why this level

  • The `direct-apply` command sends an application with your name, email and CV to the board site.
  • Name, email and CV path live in `.env` and the application history in a local SQLite database.
All reasons and checks

stupidoodle/swissdevjobs-cli

Install

Works in

In your terminal, with SkillFoxx CLI

npx skillfoxx add plugins/swissdevjobs-cli

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • The `direct-apply` command sends an application with your name, email and CV to the board site.
  • Name, email and CV path live in `.env` and the application history in a local SQLite database.

This is third-party code. Review the repository files before installing.

What it does

swissdevjobs-cli is a Claude Code plugin with a built-in MCP server and the `sdj` CLI for searching jobs on nine boards: swissdevjobs.ch, germantechjobs.de, four regional DevITjobs boards, jobs.ch, jobup.ch and MyCareersFuture. Jobs filter by technology, salary, remote and location, and every command has JSON output, so an agent can use it directly. The tool recovers the true posting date from the MongoDB ObjectId, remembers in a local SQLite where you already applied and hides those jobs on every board. The `direct-apply` command submits an application through the site form and, when a board takes no direct applications, returns the company ATS address.

Who it is for. Developers looking for work in Switzerland, Germany, the UK, the Netherlands, France, the US, Canada or Singapore who want to filter jobs by pay.

Good fit when

  • A list of remote Kubernetes jobs with pay above a given sum is needed.
  • A search runs across all boards of a country or region in one query.
  • Jobs repeat across boards and already submitted applications must be hidden.
  • An agent submits an application to a swissdevjobs posting through the site form with your CV.
  • You want to see the most requested technologies on the boards.

Not a fit when

  • You have not read the swissdevjobs.ch terms and automating on top of the site requires reading them.
  • Jobs are sought on Russian-language boards.
  • Applications are about to go out in bulk to unread postings: the author asks not to do that.

Example request

Find senior Python jobs in Zurich paying above 140k CHF and hide the ones I already applied to.

Limitations

The plugin needs `uv` and the CLI needs Python 3.9 or newer. Salary is not on every board: jobs.ch and jobup.ch hide it. Applications through them go to the company ATS link. Partner postings often lack a pay range and the tool refuses a direct application to them. `direct-apply` needs your name, email and CV path in `.env` or in the install prompts. The author asks to keep the request rate human and not to strip the cache.

How to disable. Remove the plugin through the `/plugin` menu and the CLI with uv. Delete the configuration `~/.config/swissdevjobs-cli/` and the cache `~/.cache/swissdevjobs-cli/` with the applications database by hand.

FAQ

How do I install the plugin in Claude Code?

Run `/plugin marketplace add Stupidoodle/swissdevjobs-cli` and `/plugin install swissdevjobs@swissdevjobs`. Claude Code asks for your name, email and CV path and starts the MCP server through `uvx`, so `uv` is required.

How do I install only the CLI?

`uv tool install git+https://github.com/Stupidoodle/swissdevjobs-cli` installs the `sdj` and `swissdevjobs` commands. The package is not on PyPI.

How do I filter jobs by salary and technology?

For example, `sdj list --tech Kubernetes --remote --min-salary 90000 --sort salary`. The salary filter works on boards that publish pay.

Where does the true posting date come from?

Sites refresh `activeFrom` when they bump a posting. The tool decodes the creation time from the MongoDB ObjectId, so an old job does not look new.

Where do I apply for a jobs.ch posting?

On the company site. jobs.ch, jobup.ch and MyCareersFuture have no built-in application, so `direct-apply` refuses and returns the address to apply at.

Discussion

No questions or reviews yet.

Plugins
Official

A job search plugin for Claude Code: finds openings, tailors resumes, writes cover letters and fills out application forms

PluginBroad access459Repository stars

MCP server and CLI for job hunting: scans 130+ careers pages nightly, scores roles against your resume and drafts applications

MCP serverExtended access219Repository stars
Editors’ pick

Job search inside your coding agent: scores each listing against your CV from 1 to 5, tailors a PDF resume, drafts letters and tracks applications

WorkflowExtended access82.3KRepository stars

Plugin for Codex and Claude Code that fills job applications in a visible browser from your resume and stops before submit

PluginBroad access139Repository stars

JustHireMe is a local-first job-search desktop app that gives an agent a skill and a stdio MCP server to work with job data safely.

SkillExtended access2.3KRepository stars

A Claude Code kit: a skill scores a job posting, a builder makes CVs and letters, and a daily scanner looks for new ads.

SkillExtended access76Repository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
swissdevjobs-cli (this card)no106
JobSpy MCPnonot required4,721searches LinkedIn, Indeed, Glassdoor and ZipRecruiter; swissdevjobs-cli works with pay-transparent boards and keeps an application log
Himalayas Remote Jobs: remote job search over MCPyesOAuth21a remote MCP server for the single Himalayas board; swissdevjobs-cli merges nine boards and submits applications

README in short

Search runs across nine boards in one query and every command has a `--json` mode. A repeat application comes back as data and raises no error. The author asks you to read site terms before automating.

README badge

Report a problem