Skip to content

Guide · Agent skill

How to use the LinkedIn Job Search agent skill (linkedin-search)

Updated · written with AI from the project's own documentation and checked against our catalogue data

The linkedin-search skill lets an AI agent look up current job openings on LinkedIn's public job board for any country, city or remote roles. It is aimed at job seekers who want a quick list of recent postings in one place, and at developers who want a scriptable, dependency-free search tool. After this guide you will know what the skill does, how to install it, how to ask for jobs in plain language, and what limits to respect.

LinkedIn Job Searchai-job-search-dev/ai-job-search · MIT

Quick start

  1. 1Install Bun. Make sure the bun runtime is installed, since the CLI will not run without it.
  2. 2Download the skill ZIP. Download the linkedin-search ZIP from our page.
  3. 3Place the skill. Unzip into ~/.claude/skills/ or a project's .claude/skills/, or upload the ZIP under Settings → Capabilities → Skills in the Claude apps.
  4. 4Ask for jobs. Describe the role and the place, for example asking for data engineer jobs in Bengaluru.
  5. 5Add filters. Mention a posting age or remote preference; the agent maps these to --jobage or --remote.
  6. 6Open a posting. Ask for details on a specific job ID or URL to get its full description.

What is an agent skill, and what does this one do?

An agent skill is a folder of instructions and tools that an AI agent can load when a request matches its description. This skill is for job searches: once installed, the agent can find job listings in a given location, filtered by keyword, posting age and workplace type, and can pull the full description, seniority and employment type for a specific posting.

It does this by running a small bundled TypeScript CLI with Bun. The CLI fetches public LinkedIn pages and returns results as JSON, a table or plain text. No LinkedIn login or API key is needed.

Install the linkedin-search skill

Download the ZIP for the skill from our page and unzip it into one of these locations: ~/.claude/skills/ for your user account, or .claude/skills/ inside a project folder. Alternatively, in the Claude apps, go to Settings → Capabilities → Skills and upload the ZIP.

Before the skill can run, Bun must be installed, because the CLI will not run without it. The skill's own README says bun install is optional and only pulls TypeScript dev types, since the CLI has zero runtime dependencies.

  • Requirement: Bun runtime on your machine
  • Requirement: internet access to linkedin.com
  • No API keys, accounts or credentials are needed

Trigger the skill with a natural request

You do not need to type commands. Ask in ordinary language and mention the place explicitly, because the location is always supplied by you. The skill's description lists trigger phrases such as find a job, job search, search for jobs, job openings, vacancies, hiring, positions open, remote jobs, and are there any X jobs in <place>. It also covers looking up a specific job posting you already have.

Good requests name a role and a place, for example: find data engineer jobs in Bengaluru posted in the last 30 days.

  • Are there any product manager jobs in Berlin?
  • Show remote paralegal openings.
  • Look up this job posting: 4426311357

Run a search yourself (command reference)

If you want to run the CLI directly, the search command takes a required --location flag and optional --query, --jobage, --jobage-minutes, --remote, --page, --limit and --format flags. The default format is json. Location accepts a LinkedIn place string such as Berlin, Germany, or Remote.

  • --location <text> / -l <text>: required, e.g. "Mumbai, Maharashtra, India"
  • --query <text> / -q <text>: keyword search, recommended
  • --jobage <days>: 1, 7, 14 or 30; omit for all postings
  • --jobage-minutes <n>: sub-day precision, e.g. 30; use only one of --jobage or --jobage-minutes
  • --remote <mode>: remote, hybrid or onsite
  • --page <n>: 1-indexed, 10 results per page
  • --limit <n> / -n <n>: caps total results client-side
  • --format json|table|plain
bun run .agents/skills/linkedin-search/cli/src/cli.ts search --location "<place>" [flags]

Look up the full detail of one posting

The detail command takes a job ID from search results, a full LinkedIn jobs/view/ URL, or a urn:li:jobPosting: URN. It returns the full description, seniority, employment type, job function and industries. The plain format is the best choice for reading one job.

bun run .agents/skills/linkedin-search/cli/src/cli.ts detail 4426311357 --format plain

Safety notes: scripts and network access

This skill runs scripts and uses the network. Its allowed tool is limited to running the bundled cli/src/cli.ts with bun. It reads public LinkedIn job pages only, and it does not submit applications or contact recruiters.

The skill is for personal use only. Automated access is against LinkedIn's Terms of Service, so keep volume low and do not use it commercially or for bulk data collection. The CLI retries rate-limited or server-error responses with exponential backoff, but you remain responsible for how often you run it. Errors are written to stderr as a JSON object with error and code fields, and the process exits with code 1.

  • Keep volume low; do not use for lead generation or bulk scraping
  • Do not use commercially
  • Errors go to stderr with exit code 1

Tips for better results

Name the place as LinkedIn would, such as City, Region, Country. Pair --query with --location for focused results, since the source recommends keyword search. Use --format table when scanning many results and --format plain for a single posting. Page size is fixed at 10 results, so use --page to see more.

  • Use --jobage 7 for the freshest listings, or --jobage-minutes 30 for very recent ones
  • Use --remote remote with a country location to narrow to remote roles
  • Check the test fixtures in cli/tests if you want to see sample data offline

What people use it for

  • Finding recent openings for a role in a specific city, such as data engineer roles in Bengaluru from the last 30 days.
  • Comparing product manager postings in Berlin with remote-only roles.
  • Searching for fully remote roles in any sector, such as paralegal openings.
  • Pulling the full description, seniority and employment type of one posting before deciding whether to apply yourself.
  • Using the CLI as a scriptable, dependency-free starting point for your own job search tool.

Frequently asked questions

Is the linkedin-search skill free?

The source does not state a price. It is published under the MIT licence. Check the repository's licence file for the full terms.

Do I need a LinkedIn account or API key?

No. The skill reads LinkedIn's public job pages and needs no login, API key, account or credentials.

What do I need installed to run it?

You need the Bun runtime and internet access to linkedin.com. The CLI will not run without Bun.

Where do I put the skill files?

Unzip the downloaded ZIP into ~/.claude/skills/ or a project's .claude/skills/ folder, or upload the ZIP in the Claude apps under Settings → Capabilities → Skills.

Can it apply to jobs for me?

No. The skill only reads listings and does not submit applications or contact recruiters.

Can I use it for bulk scraping or lead generation?

The skill's docs say automated access breaches LinkedIn's Terms of Service. Keep volume low, and do not use it commercially or for bulk data collection.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Use this skill if you want an agent to pull a quick, filtered list of public LinkedIn openings for a city or remote role, and you have Bun installed. Pick something else if you need bulk data, lead generation, commercial use, or an tool that applies to jobs for you.

Download the skill