Sign inSign up

alextlittle/job-search-agent-dashboard

By alextlittle

•Updated 19 days ago

A customisable multi-agent job search assistant, built with the Claude Agent SDK.

Image
0

122

alextlittle/job-search-agent-dashboard repository overview

A customisable multi-agent job search assistant, built with the Claude Agent SDK. It finds job listings and companies worth watching and scores them against your CV/preferences. It never applies to anything on your behalf - this is a triage/reporting dashboard, not an auto-apply bot.

Full source, README, and design docs: https://github.com/alexlittle/job-search-agent⁠

⁠Quick start

docker run alone will start the dashboard, but with no port published and nothing mounted, you won't see it in a browser and nothing you configure will survive a restart. Use one of these two instead.

Grab docker-compose.yml from the repo above, then from the same directory:

touch .env   # required first - see the comment at the top of docker-compose.yml for why
docker compose up

Open http://localhost:5000⁠ - a first-run onboarding wizard walks you through everything (Anthropic API key, contact email, CV upload, job-search criteria).

⁠Without compose: docker run
touch .env
mkdir -p data profile config
docker run -p 5000:5000 \
  -v "$(pwd)/.env:/app/.env" \
  -v "$(pwd)/data:/app/data" \
  -v "$(pwd)/profile:/app/profile" \
  -v "$(pwd)/config:/app/config" \
  alextlittle/job-search-agent-dashboard:latest

Then open http://localhost:5000⁠.

Why the volumes matter: .env, data/ (the SQLite store), and profile/ (your CV/criteria) are all written to at runtime - by the onboarding wizard and by normal use. Skip the mounts and everything you configure is lost the moment the container stops.

Security note: the dashboard has no login of its own - anyone who can reach the port can see your CV, criteria, and cost history. Both commands above only expose it to the machine running Docker (127.0.0.1/localhost); don't publish it more broadly without adding your own auth layer in front of it.

⁠Running the fetch/scoring pipelines

The dashboard only displays results - fetching and scoring is a separate one-off command against the same container/volumes:

docker compose run --rm dashboard uv run python -m job_search_agent.coordinator
docker compose run --rm dashboard uv run python -m job_search_agent.companies   # separate, much less frequent

(swap docker compose run --rm dashboard for docker run --rm -v ... alextlittle/job-search-agent-dashboard:latest with the same four -v flags above if you're not using compose)

Tag summary

Content type

Image

Digest

sha256:d7c2170a3…

Size

183.1 MB

Last updated

19 days ago

docker pull alextlittle/job-search-agent-dashboard