SkillAgentSearch skills...

Commandjobs

Command Jobs uses AI to help software engineers find the best jobs

Install / Use

/learn @nicobrenner/Commandjobs

README

<center>
     ██████╗ ██████╗ ███╗   ███╗███╗   ███╗ █████╗ ███╗   ██╗██████╗ 
    ██╔════╝██╔═══██╗████╗ ████║████╗ ████║██╔══██╗████╗  ██║██╔══██╗
    ██║     ██║   ██║██╔████╔██║██╔████╔██║███████║██╔██╗ ██║██║  ██║
    ██║     ██║   ██║██║╚██╔╝██║██║╚██╔╝██║██╔══██║██║╚██╗██║██║  ██║
    ╚██████╗╚██████╔╝██║ ╚═╝ ██║██║ ╚═╝ ██║██║  ██║██║ ╚████║██████╔╝
    ╚═════╝ ╚═════╝ ╚═╝     ╚═╝╚═╝     ╚═╝╚═╝  ╚═╝╚═╝  ╚═══╝╚═════╝ 
                                                                    
                       ██╗ ██████╗ ██████╗ ███████╗                 
                       ██║██╔═══██╗██╔══██╗██╔════╝                 
                       ██║██║   ██║██████╔╝███████╗                 
                  ██   ██║██║   ██║██╔══██╗╚════██║                 
                  ╚█████╔╝╚██████╔╝██████╔╝███████║                 
                   ╚════╝  ╚═════╝ ╚═════╝ ╚══════╝                 
<p>📺 Use AI to find the best jobs for your resume and preferences</p> <p>🧘🏻 A distraction-free, local-first, command line interface to scrape online jobs, and filter them to your needs</p>

   

<a alt="Guided Command Jobs Demo" href="https://www.loom.com/share/403ea058ab91401fbb6ccee7faa22bb7" target=_blank><img src="https://cdn.loom.com/sessions/thumbnails/403ea058ab91401fbb6ccee7faa22bb7-with-play.gif" width="100%"/></a>

</center>

Using AI, Command Jobs makes sure to find only the absolute best matches for your experience, skills and job preferences

Stop wasting your time with online tools that are not built for you, the job finder

Command Jobs is the only job searching tool that runs from where you work, the terminal. And yes, it also doesn't make you read through hundreds of job listings just to find a couple of good matches

This is just starting out! Follow along as we improve it

To get started, check out Quick Start, Configuration and Usage

🙏🏼🤗❤️

Note: If you want to add another source of job listings, go to this issue and add it as a suggested source

Updates

  • Optimized docker building and running

  • Added new scraper for Workday, currently scraping NVIDIA, CROWDSTRIKE, RED HAT and SALESFORCE.

    • The scraper currently scrapes for all countries on posts no older than a week back!
  • Building in public:

    • ❤️ If you want to contribute to this project and want to take a crack at writing tests for it, it would be amazing! 🤗 Here's a ticket to write a new test, and a walk-through of the current test code: Request to create: Test displaying the resume text 🙏🏼

    • Video walkthrough, from git clone all the way to finding the best matches

      • Command Jobs Walkthrough
    • Here's a little bit of the internals of the application. Very high level overview of the features as well as the database. If you want to see more, or would like a deeper explanation, please create an Issue, thank you

      • Command Jobs Internals
    • Just wrote the first test! 😅 And it's in no small part thanks to Agentic's Glide, which they recently launched (see announcement here). I was about to switch from ncurses to python-prompt-toolkit, and failing that from python to Go, so I could build Command Jobs using Bubble Tea 🤩😍🤤

      • First test with Glide
    • Check out the amazing ancv, a tool for building a really cool ascii version of your resume on the terminal! 🤗 (love the joke with the Venn diagram). Will need to integrate it as a library with Command Jobs

    • Tried out ShellGPT and made a small PR to highlight its chat interface in the README. It's a pretty cool tool to use GPT from the terminal. Next I want to try coding a bit with aider

      • ShellGPT
    • Decided to try to build this project as openly as possible, in that spirit, I just recorded a coding session in which I go through the process of trying to resolve a bug (issue #12), and finding 3 other bugs instead!

      If you are just getting started with coding, it's also a pretty good overview of a basic software project management. In the video I show the whole workflow of not only writing code, but also managing an environment, dealing with errors, documenting the process in Github, managing git and branches, commiting, pushing and merging code, updating documentation (like now), and sharing/promoting

    • Trying to solve #12

  • Thank you to the Hacker News community for the encouragement, enthusiasm and support. Check out this thread: Show HN: Tech jobs on the command line

Features

  • View and navigate AI-matched job listings directly from the terminal "AI job matches"

  • Scrape job listings from "Ask HN: Who's hiring?" posts on Hacker News

    "Ask HN: Who's hiring?" March 2024

  • Process listings with GPT to find the best matches for you

    • The app asks GPT for each job listing, if it's a good fit for your resume
    • The prompt includes the resume, the job listing, a section for json formating the results, a role description, a job preferences section, and some additional questions
    • You get a filtered list of the best matches for your resume and preferences

In the works

  • Track job applications directly in the terminal

  • Scrape job listings from additional sources

  • Add cronjob that runs periodically to scrape

  • Alerts about new matches found

  • Anything you'd like to see? Please add a ticket

Usage

"Command Jobs main menu"

After going through the Configuration and successfully running Command Jobs

You will get a menu with the options below. To navigate the menu, just use the arrow keys and select options with Enter. You can quit at any time by pressing q

When first running the app, open the Edit Resume section and paste the text of your resume, no need to include your name or contact info (you can see an example resume on config/base_resume.sample. Alternatively, you can paste your resume text directly into a base_resume.txt file on the base folder of the code

Then, get some job listings into the app by running Scrape "Ask HN: Who's hiring?". You can see the first few listings in the Navigate jobs in the local db section (if you want to see more, you can also open job_listings.db directly with sqlite3 and check out the contents)

For the next step, make sure you've reviewed your .env file and have adapted the prompts to your preferences for job matching

Once you have your Resume ready, jobs in the local db and the prompts configured, run Find best matches for resume with AI. That will run through the listings to find a match of your resume and job preferences (for now, it is limited at 5 checks per run, you can modify that through changing the LIMIT in the query within fetch_job_listings() in src/database_manager.py)

When the GPT analysis is done, you get access to the AI found X listings match your resume option, where you can navigate the best matches found

The menu includes:

  • Edit Resume: Add or replace the text of your resume for AI matching
  • Scrape "Ask HN: Who's hiring?": Scrape job listings from Hacker News
  • Navigate jobs in the local db: Browse listings stored locally
  • Find best matches for resume with AI: Match listings to your resume using AI
  • AI found X listings match your resume: Review personalized job matches

To exit the application, press q

Quick Start

Video walkthrough, from git clone all the way to finding the best matches

  • Command Jobs Walkthrough

Below is the step by step

  • Clone the repository:

    • git clone https://github.com/nicobrenner/commandjobs.git
    • cd commandjobs
  • Run via Docker

    1. Build the Docker image:

      • docker-compose -f docker/docker-compose.yml build
    2. Run the Docker container (make sure you've setup your OpenAI API key in your .env file - see Configuration section below):

      • docker-compose -f docker/docker-compose.yml run --rm app
  • (if you don't want to use Docker) Run with Python in a Virtual Environment

    1. Set up a Python virtual environment and activate it:

      • python3 -m venv venv
      • source venv/bin/activate
    2. Install the dependencies:

      • pip install -r config/requirements.txt
    3. Run the application (make sure you've setup your OpenAI API key in your .env file - see [

Related Skills

View on GitHub
GitHub Stars168
CategoryDevelopment
Updated1mo ago
Forks16

Languages

Python

Security Score

100/100

Audited on Feb 13, 2026

No findings