Skip to content

Releases: VonTerraProject501c3/slushpile

Slushpile 1.4.0 — describe the job, not the company

Choose a tag to compare

@aaddrick aaddrick released this 09 Aug 20:53

/slushpile:job-board-search now takes a description of the work you want and where you want it. Naming a company still works exactly as before. Both are valid entry points, and neither replaced the other.

Before this, $1 was mandatory. The skill went straight to that company's careers board, and location was only a filter inside that one board's search. Someone with no target company in mind had no way in.

A new Phase 0 runs in query mode only. It resolves your description into a list of candidate companies, then filters that list before anything gets searched:

  • Excluded companies, relocation rules, and remote preference come out of preferences.yaml.
  • Already-searched companies, ones inside a recheck window, and excluded ones come out of companies.md.
  • Each filter step reports what it removed, so you see which rule cost you which company instead of a survivor count.
  • The run caps at ten companies unless you say otherwise, and it names what it cut to get there.

It shows you the list and waits. Nothing gets searched until you say yes. That confirmation is what makes it reasonable to hand the skill a vague sentence.

Query constraints are additive. Asking for roles near one city does not withdraw your compensation floor or anything else you set at onboarding. preferences.yaml still applies in full.

Everything downstream of Phase 0 is unchanged. A query run and a named-company run produce the same shape of assessment, which keeps both comparable in the calibration table.

/slushpile:job-board-search Stripe
/slushpile:job-board-search applied AI roles within 50 miles of Martinsville, VA that fit my profile

Why this was worth a release

The capability looked like it already existed. Ask Claude for a market query and you get a reasonable answer: it web-searches, picks companies, runs the per-company path on each one. That behaviour lived in the conversation, though, not in the skill file. It varied by harness and by model, nothing in the file claimed it, and there was no point where it stopped to ask before spending your tokens on ten companies you'd already ruled out. This release makes it a documented mode with a confirmation step.

The rest of the pipeline

Nine skills and eight agent definitions, all Markdown, running inside your coding agent. It builds a resume and cover letter for a posting, then sends them to seven reviewers whose job is to reject you. Five run at once and can't see each other's findings. A synthesis pass reads all five. A contrarian reads everything after that and can overrule the result.

Installing

claude plugin marketplace add aaddrick/slushpile
claude plugin install slushpile@slushpile

Upgrading from an earlier version:

claude plugin marketplace update slushpile
claude plugin install slushpile@slushpile

MIT. Runs on Claude Code, Codex, Gemini CLI, and Cursor.

Before you use the new mode

A query is a starting point, not an answer. Phase 0 is a language model guessing which companies match a sentence you wrote, and it will guess wrong on some of them. Read the list before you confirm it. The filters are there to protect your time, and the ten-company cap is there so a bad guess costs you one confirmation instead of an afternoon.

Slushpile 1.0.0 — an adversarial job search with a memory

Choose a tag to compare

@aaddrick aaddrick released this 09 Aug 02:26
5009a33

Slushpile grades your resume against the other people who applied to the same requisition that week, not against the posting's keywords.

It's a job application pipeline that runs inside your coding agent. Nine skills and eight agent definitions, all Markdown. It builds the resume and cover letter for a posting, then spends most of its effort trying to talk you out of sending them.

Seven reviewers, and they argue. Five run at once and can't see each other's findings. A hiring manager then reads all five. A contrarian reads everything after that, including the hiring manager, and can overrule it.

A verdict per channel, with a probability range. Cold portal submission, warm referral, cold outreach, and two kinds of inbound each get their own number instead of one blended answer. Materials quality is scored separately from submission expected value, and those two routinely disagree.

It remembers. Onboarding writes profile.md, preferences.yaml, and stories.md into your own directory. What the review finds gets written back, so later applications start from a better place than the first.

It never submits anything. No skill touches an application portal, an email, or a form. It writes files and you send them.

Cover letters come from a voice agent built on a corpus of your own writing. One ships as a working example so the pipeline runs out of the box. That one is my voice, and there's a separate tool for generating yours.

Nothing in the pipeline hardcodes a personal fact. Every one of them lives in your preferences.yaml or profile.md, and a CI gate fails the build if one leaks into a shipped skill.

Before you install

It's built to be usable when it says no. It will tell you a differentiator you're proud of is median, and it will sometimes tell you not to apply.

Claude Code is the only supported harness with subagent dispatch, so the five parallel reviewers genuinely run in parallel there. On Codex, Cursor, and Gemini CLI the seven personas run sequentially in one context. Same output shape, slower, and slightly more prone to one reviewer's reasoning bleeding into the next.

Install pdftotext if you can, so the reviewers read what an applicant tracking system reads rather than what a PDF viewer shows. A LaTeX toolchain is optional and only matters if you use the two shipped document templates. Everything else works on extracted text.

Install

# Claude Code
claude plugin marketplace add aaddrick/slushpile
claude plugin install slushpile@slushpile

# Codex
codex plugin marketplace add aaddrick/slushpile --ref main
codex plugin add slushpile@slushpile

# Gemini CLI
gemini extensions install https://github.com/aaddrick/slushpile

Then run /slushpile:onboard in the directory where your job search should live. Don't use a checkout of the plugin for that. The workspace is going to hold your employment history and your compensation figures.

MIT licensed. Cursor and any other harness are covered in INSTALL.md, and README.md walks through how the pipeline works.