Automate Job Applications Using Your Daily Driver Browser

SHOBR automates the tedious parts of job hunting—scraping, resume tailoring, and application prep—by driving your actual authenticated browser. No headless bots, no credential extraction.

LinkLoot access
Free
Provider costs
Unknown
The useful part2 min read

What you get from it

What it does

SHOBR (Simulate Human Occupational-Bureaucratic Rituals) is a UNIX-style job search automation tool that prepares applications while keeping you in control. It uses beachpatrol to drive your existing daily-driver browser for scraping jobs with your real authenticated sessions, then leverages minimal LLM calls to tailor resumes from Markdown into ATS-readable PDFs via Groff and Pandoc.

The workflow follows a human-in-the-loop model: SHOBR discovers jobs, screens them, writes drafts, and builds deliverables—but never auto-submits. You approve each application step manually. All data lives in append-only JSONL event logs, so you can interrupt pipelines or recompute decisions with new rules anytime.

Who it helps

Job seekers who want to automate repetitive tasks (finding listings, tailoring CVs) without resorting to "spray and pray" mass applications or risky headless browsers that trigger detection. Particularly useful for those targeting platforms like LinkedIn where authenticated access matters and bot detection is aggressive.

Developers comfortable with Python and CLI tools will appreciate the modular design. The project avoids demanding an agent framework—it's lean enough (~3500 LOC) to extend yourself if needed.

Getting started

Prerequisites:

  • Install beachpatrol first (the hard dependency). See its README for setup.
  • Python 3.14+

Installation:

git clone https://github.com/sebastiancarlos/shobr
cd shobr
uv sync  # installs any-llm-sdk[openai]
uv tool install .

The toolchain requires Groff and Pandoc for PDF compilation. Ensure these are available on your system.

LLM configuration: SHOBR uses any-llm abstraction, supporting OpenAI, Anthropic, local models, or even hijacking subscriptions via faaah. Configure your preferred provider before running.

Limits and costs

  • No auto-submit: Final application clicks remain manual by design.
  • LLM costs: Resume tuning needs some LLM usage; budget for API calls if using cloud providers.
  • Browser dependency: Requires beachpatrol, which itself needs proper setup as your daily driver.
  • MIT licensed: Free to use, modify, distribute. Hosting/execution costs depend on your infrastructure choices.
  • Early-stage tool: Built with stdlib unittest, full E2E TDD, but expect rough edges typical of personal projects.
Community

Discussion

Share practical experience, questions, or warnings with the community.

0

Sign in to join the discussion and vote on comments.

No comments yet. Start the discussion.
Keep exploring

More from this topic

More in Tools & Apps