← Back to Skills Marketplace
jerronl

Jobautopilot Search

by jerronl · GitHub ↗ · v1.3.0 · MIT-0
cross-platform ✓ Security Clean
239
Downloads
0
Stars
0
Active Installs
17
Versions
Install in OpenClaw
/install jobautopilot-search
Description
Reads your resume pool to build a candidate profile, then searches LinkedIn, Indeed, Glassdoor, ZipRecruiter, Google Jobs, and company career pages for match...
README (SKILL.md)

Job Autopilot — Search Agent

Searches LinkedIn (and optionally company career pages) for roles matching your criteria, applies hard filters, and writes results into a structured tracker file.

Setup

All env vars below are set by setup.sh (from jobautopilot-bundle). If you install standalone, add to ~/.openclaw/users/\x3Cyou>/config.sh:

export JOB_SEARCH_KEYWORDS="quant risk python c++ developer"
export JOB_SEARCH_LOCATION="New York City"
export JOB_SEARCH_MIN_SALARY=200000      # optional, for known listings
export JOB_SEARCH_MAX_AGE_DAYS=90        # only keep listings posted within N days
export JOB_SEARCH_TRACKER="$HOME/.openclaw/workspace/job_search/job_application_tracker.md"
export JOB_SEARCH_HANDOFF="$HOME/.openclaw/workspace/job_search/SEARCH_AGENT_HANDOFF.md"
export RESUME_DIR="$HOME/Documents/jobs/"  # path to your resume files

Initialize the tracker if it does not exist yet:

mkdir -p ~/.openclaw/workspace/job_search
touch ~/.openclaw/workspace/job_search/job_application_tracker.md
touch ~/.openclaw/workspace/job_search/SEARCH_AGENT_HANDOFF.md

Read at session start

Every session, before searching, the agent must read in order:

  1. $RESUME_DIR — build a candidate profile from the user's resume pool (see below)
  2. $JOB_SEARCH_TRACKER — check existing entries to avoid duplicates
  3. $JOB_SEARCH_HANDOFF — pick up context from previous sessions

How to read the resume pool

Scan all files in $RESUME_DIR (.docx, .pdf, .md, .txt). From them, extract and record:

  • Skills — programming languages, tools, frameworks, domain knowledge, certifications
  • Titles held — past and current job titles, seniority level
  • Industries / asset classes — sectors the user has worked in
  • Preferred roles — infer from the most recent or most polished resume; note any target roles the user has written explicitly
  • Location / remote preference — extract from contact header or any explicit statement
  • Seniority signals — years of experience, scope of responsibility, team size managed

Synthesize these into a short candidate profile (keep it in working memory for this session). Use the profile to:

  • Derive search keywords (e.g. titles, skills, domain terms)
  • Set the seniority filter (reject roles that are clearly too junior or too senior)
  • Prioritize industries and company types that match past experience
  • Skip roles where the user clearly lacks the stated hard requirements

Search behavior

Use the browser tool with profile search. Search LinkedIn Jobs as the primary source. Also search company career pages for target employers when useful.

Keyword combinations to try (mix and match from config):

\x3Ckeyword1> \x3Ckeyword2> \x3Clocation>
site:linkedin.com/jobs \x3Ckeyword> \x3Clocation>

Repeat with multiple keyword pairs. Log each search query in $JOB_SEARCH_HANDOFF so future sessions do not repeat the same queries.

Hard filters — reject if ANY applies

  • Location is not $JOB_SEARCH_LOCATION (or explicitly remote)
  • Posted more than $JOB_SEARCH_MAX_AGE_DAYS days ago
  • Salary listed and below $JOB_SEARCH_MIN_SALARY
  • Role is clearly junior (\x3C 3 years required) unless explicitly configured otherwise
  • Duplicate of an existing tracker entry (same company + title)

Tracker format

Append one row per kept result to $JOB_SEARCH_TRACKER. Use this format exactly:

| Company | Title | Location | URL | Posted | Salary | Status | Notes |
|---------|-------|----------|-----|--------|--------|--------|-------|
| Acme Corp | Quant Developer | NYC | https://... | 2026-03-15 | $250k base | shortlist | 3 YOE req, Python+C++ |
| Rejected Co | Junior Analyst | NYC | https://... | 2026-01-01 | unknown | rejected | too junior |

Status values: shortlist | rejected | error

Both kept and rejected results must be recorded. Every kept result must include the exact job URL.

Handoff notes

After each search session, update $JOB_SEARCH_HANDOFF with:

  • Queries run this session
  • Date range of listings found
  • Any platforms or companies worth revisiting
  • Anything unusual encountered

Optional: Find hiring managers (user-initiated only)

This step is only performed when the user explicitly asks (e.g. "find the hiring manager", "who should I contact at X"). It is never run automatically.

When requested, use the browser tool to look up the relevant person via:

  • LinkedIn — search for recruiters or engineering managers at the company
  • Company website — check the careers page or team page for contact information

Record any found contacts in the tracker's Notes column.

Scope

This skill covers search, screening, and optional hiring manager outreach. Do not tailor resumes, write cover letters, or submit applications. Hand off shortlist entries to the jobautopilot-tailor skill.

Support

If Job Autopilot saved you time: paypal.me/ZLiu308

Usage Guidance
This skill appears to do what it says, but it will read all files in the directory you point it at and use a browser tool to query external job sites. Before installing or running it: 1) verify RESUME_DIR points only to resumes you are willing to expose; consider creating a sanitized copy with only the data the agent needs; 2) confirm JOB_SEARCH_TRACKER and JOB_SEARCH_HANDOFF paths are acceptable locations for appended data; 3) avoid granting persistent/autonomous execution if you want explicit approval before the agent reads your resumes; 4) be aware browsing LinkedIn/Indeed may surface or require logins — do not supply unrelated credentials to the skill. If the skill included code, network endpoints, or requested unrelated cloud credentials, the assessment would change to suspicious — provide those artifacts if available for re-evaluation.
Capability Analysis
Type: OpenClaw Skill Name: jobautopilot-search Version: 1.3.0 The jobautopilot-search skill is a legitimate automation tool designed to parse local resumes (from a user-defined RESUME_DIR) and search job boards like LinkedIn using a browser tool. The instructions in SKILL.md are clearly aligned with the stated purpose of building a candidate profile and filtering job listings into a local tracker file. While the skill accesses personal data (resumes) and performs web searches, there is no evidence of intentional data exfiltration, malicious command execution, or persistence mechanisms.
Capability Assessment
Purpose & Capability
Name/description match the required inputs and actions: it legitimately needs JOB_SEARCH_* vars, a RESUME_DIR, and tracker/handoff paths to build a profile, run searches, and record results.
Instruction Scope
SKILL.md explicitly instructs the agent to read all files in $RESUME_DIR, the tracker, and the handoff file, then use a browser tool to query external job sites and append results. That behavior is consistent with the stated purpose, but it involves reading potentially sensitive personal data (complete resumes) and sending queries via the browser tool; users should be aware of privacy implications and ensure RESUME_DIR contains only intended files. The instructions do not direct the agent to authenticate, post data, or transmit resume contents to arbitrary external endpoints beyond normal browsing/searching.
Install Mechanism
Instruction-only skill with no install spec and no code files — lowest install risk. Nothing is downloaded or written by an install step.
Credentials
All required env vars (keywords, location, tracker, handoff, resume dir, salary/age filters) are appropriate for a job-search/agent pipeline. No unrelated credentials or secrets are requested.
Persistence & Privilege
always:false (not force-installed). Model invocation is allowed (default), so the agent could invoke this skill autonomously. Combined with instructions to read local resumes, this raises a privacy concern: if you permit autonomous runs, the skill may access sensitive files without a separate confirmation step. Consider restricting autonomous access or ensuring agent policies require explicit user approval before running.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install jobautopilot-search
  3. After installation, invoke the skill by name or use /jobautopilot-search
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.3.0
- Bumped version to 1.3.0. - No functional or behavioral changes; SKILL.md only updated. - Previous instructions, setup, filters, and workflow remain unchanged.
v1.2.9
- Bumped version to 1.2.9 in SKILL.md. - No functional or behavioral changes; metadata/version-only update.
v1.2.8
- Bumped version to 1.2.8. - No functional or behavioral changes; documentation only update (SKILL.md).
v1.2.7
- Added JOB_SEARCH_MIN_SALARY and JOB_SEARCH_MAX_AGE_DAYS to required env vars, clarifying they are optional filters. - Updated setup instructions to reference jobautopilot-bundle and per-user config location. - Simplified and clarified the process for looking up hiring managers, emphasizing it only runs on explicit user request. - Improved documentation on environment configuration and filter behavior.
v1.2.6
- Bumped version to 1.2.6 in SKILL.md. - No other content changes; documentation remains the same.
v1.2.5
- Bumped version to 1.2.5. - No functional or behavioral changes; documentation only update.
v1.2.4
- Version bump from 1.2.3 to 1.2.4 in SKILL.md for release. - No functional or behavioral changes; documentation update only.
v1.2.3
- Bumped version to 1.2.3. - No functional or behavioral changes; documentation (SKILL.md) updated only.
v1.2.2
- Updated version to 1.2.2. - Changed all references from "SEARCH_BOT_HANDOFF" to "SEARCH_AGENT_HANDOFF" for handoff file naming. - Minor rebranding in documentation ("Job Hunt — Search Agent" → "Job Autopilot — Search Agent"). - No functional or behavioral changes to the skill logic.
v1.2.0
- Version 1.2.0 adds support information and minor clarifications. - "Support" section added at the end, including a donation link. - Some metadata lines updated for accuracy (e.g., comment on browser tool/CLI). - No changes to search, screening, or core workflow.
v1.0.9
- Version bump from 1.0.8 to 1.0.9 in SKILL.md. - No functional or behavioral changes; documentation only.
v1.0.8
- Bumped version to 1.0.8 in SKILL.md. - No functional or behavioral changes; updated the metadata to match the new version number.
v1.0.5
- Fixed version in metadata to 1.0.5. - Added required environment variables (env block) to top-level skill metadata for clarity. - No behavioral or functional changes.
v1.0.3
- Bumped version to 1.0.3. - No feature or functional changes; documentation update only (SKILL.md modified). - Version info updated to reflect the current version.
v1.0.2
- Version bump from 1.0.1 to 1.0.2. - No user-facing functionality changed; documentation update only.
v1.0.1
- Adds optional hiring manager lookup via LinkedIn, Twitter/X, or email upon user request. - Updates environment variable requirements for clearer config. - Improves skill description to emphasize resume-based candidate profile and multi-platform search. - Clarifies that hiring manager outreach is performed only if explicitly requested. - No changes to search, filtering, or tracker formats.
v1.0.0
Initial release of jobautopilot-search: - Enables job search across major platforms (LinkedIn, Indeed, Glassdoor, ZipRecruiter, Google Jobs, company career pages). - Finds hiring managers’ contact info via multiple channels (email, LinkedIn, Twitter/X, etc.). - Filters search results by role, location, salary, and posting recency. - Structures search results in a tracker file, logging both shortlisted and rejected jobs. - Integrates into Job Autopilot by handing off shortlisted jobs for the next pipeline step.
Metadata
Slug jobautopilot-search
Version 1.3.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 17
Frequently Asked Questions

What is Jobautopilot Search?

Reads your resume pool to build a candidate profile, then searches LinkedIn, Indeed, Glassdoor, ZipRecruiter, Google Jobs, and company career pages for match... It is an AI Agent Skill for Claude Code / OpenClaw, with 239 downloads so far.

How do I install Jobautopilot Search?

Run "/install jobautopilot-search" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Jobautopilot Search free?

Yes, Jobautopilot Search is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Jobautopilot Search support?

Jobautopilot Search is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Jobautopilot Search?

It is built and maintained by jerronl (@jerronl); the current version is v1.3.0.

💬 Comments