远程职位查找器:AI 驱动的职业搜索 - Openclaw Skills

作者:互联网

2026-03-30

AI教程

什么是 远程职位查找器?

远程职位查找器是 Openclaw Skills 的一个高级扩展,旨在简化求职过程。它利用 Remote Rocketship API 为用户提供实时访问成千上万个远程优先职位的机会,而无需离开聊天界面。该技能通过完全自然的对话处理复杂的过滤、分页和偏好记忆,从而优先考虑无缝的用户体验。

通过将此技能集成到您的智能体中,您可以授权用户设置自动职位警报、按特定资历级别进行过滤,并使用简单的命令浏览列表。它消除了传统招聘网站的摩擦,使 Openclaw Skills 成为寻求下一次职业变动的现代远程专业人士的终极伴侣。

下载入口:https://github.com/openclaw/skills/tree/main/skills/lior539/remote-jobs-finder

安装与下载

1. ClawHub CLI

从源直接安装技能的最快方式。

npx clawhub@latest install remote-jobs-finder

2. 手动安装

将技能文件夹复制到以下位置之一

全局模式 ~/.openclaw/skills/ 工作区 /skills/

优先级:工作区 > 本地 > 内置

3. 提示词安装

将此提示词复制到 OpenClaw 即可自动安装。

请帮我使用 Clawhub 安装 remote-jobs-finder。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。

远程职位查找器 应用场景

  • 使用自然语言搜索特定的远程职位,如产品经理或后端开发人员。
  • 根据合法的就业资格或特定地理区域过滤工作机会。
  • 使用直观的短语(如“再给我看20个”)请求更多列表。
  • 设置自动监控,以每日或每小时的频率检查新的匹配职位。
  • 根据薪资要求、行业或特定的雇用类型(如合同工或全职)细化搜索。
远程职位查找器 工作原理
  1. 用户以自然语言发起请求,例如“帮我找一份远程工作”。
  2. 智能体进行简短的3个问题的入职引导,以确定职位偏好和地理位置限制。
  3. 该技能使用安全的服务器端 API 密钥调用 rr_jobs_search 工具。
  4. 从 Remote Rocketship 检索结果,并将其格式化为适用于 WhatsApp 的列表,包括薪资、地点和申请链接。
  5. 该技能在内存中存储用户偏好,以便轻松进行分页和未来的细化搜索,而无需重复数据。

远程职位查找器 配置指南

要在您的 Openclaw Skills 生态系统中部署此技能,您必须将 Remote Rocketship API 密钥配置为服务器端环境变量。

# 设置必需的环境变量
export RR_API_KEY='your_remote_rocketship_api_key'

# 将技能添加到您的 Openclaw 配置中
# 该技能将自动利用 rr_jobs_search 工具

注意:设置环境变量后,请确保重启网关。用户在聊天会话期间不需要提供自己的密钥。

远程职位查找器 数据架构与分类体系

该技能维护一个有状态的用户画像,以提高搜索相关性并支持分页。数据按照以下分类法组织:

字段 类型 描述
targetTitles 数组 目标职位名称或职能列表
locationFilters 数组 规范的地点名称(例如:英国、全球)
lastQueryFilters 对象 存储上次搜索状态以方便“再看20个”的请求
rankingPreference 字符串 确定结果是按最佳匹配还是最新优先排序
pollingCadence 字符串 自动后台检查的频率
name: remote-jobs-finder
version: 1.6.0
description: Fully conversational remote job finder for WhatsApp powered by Remote Rocketship. Uses rr_jobs_search tool (server-side RR_API_KEY) and supports pagination ("20 more").

Remote Rocketship × OpenClaw Skill (Natural Language Job Finder)

Use this skill whenever a user asks (in normal chat) to find remote jobs, browse opportunities, or set up an ongoing job search. This integration is powered by Remote Rocketship (https://www.remoterocketship.com).

Github repo: https://github.com/Lior539/openclaw-remote-jobs-finder

UX rule: fully conversational. Do not tell the user to run CLIs, use slash commands, or visit dashboards.


Fetching jobs (MANDATORY)

When the user wants real job listings, you MUST call the OpenClaw tool rr_jobs_search.

Hard rules:

  • Do NOT ask the user to run any CLI.
  • Do NOT claim you can’t fetch listings (you can).
  • Do NOT attempt raw HTTP calls from the model.

API key rules:

  • The Remote Rocketship API key is provided server-side via environment variable RR_API_KEY.
  • Never ask the user to paste secrets in WhatsApp.

Example call:

{
  "filters": {
    "page": 1,
    "itemsPerPage": 20,
    "jobTitleFilters": ["Product Manager"],
    "locationFilters": ["United Kingdom"]
  },
  "includeJobDescription": false
}

When to Trigger

Trigger on messages like:

  • “Help me find a remote job”
  • “Find me remote Product Manager roles”
  • “Show me remote jobs in the UK”
  • “Any new backend roles since yesterday?”
  • “Send me 20 more”
  • “Set this up to check every hour”

Conversation Flow

A) Onboarding (keep it short)

Ask only what you need. Prefer 1–3 quick questions, then fetch.

  1. Role / direction (required)
  • “What kind of roles are you looking for? (job titles, function, seniority)”
  1. Location eligibility (required)
  • “Where can you legally work from? (country / region)”
  1. Must-haves & deal-breakers (optional, single combined question)
  • “Any must-haves (salary/industry/async) or deal-breakers?”
  1. Monitoring cadence (optional)
  • “Want me to check for new matches on a schedule (hourly/daily/off)?”

If the user doesn’t want to answer everything, proceed with what you have and fetch results anyway.

B) First fetch (default)

  • Default itemsPerPage: 20 unless the user asks for a different batch size.
  • Keep includeJobDescription: false unless the user asks for deeper detail.

Preference Memory (important)

Maintain a simple user profile in memory so the user doesn’t need to repeat themselves:

  • targetTitles: string[]
  • locationFilters: string[]
  • seniorityFilters: string[] (if known)
  • employmentTypeFilters: string[] (if known)
  • mustHaves: string[]
  • dealBreakers: string[]
  • rankingPreference: "best_fit" | "newest_first"
  • pollingCadence: e.g. "hourly" / "daily" / "off"
  • lastQueryFilters: the last filters object used (for “20 more”)

If the user updates anything (“Actually only contract roles”), update memory.


Pagination & “20 more”

Store lightweight paging state:

  • filters
  • page
  • itemsPerPage
  • pagination.totalCount / hasNextPage

Rules:

  1. When the user tweaks filters, reset page back to 1 and fetch again.
  2. If they say “more”, “20 more”, “next page”, increment filters.page and call rr_jobs_search again with the last filters.
  3. Always mention what you’re showing (e.g., “Showing 21–40 of 134”).
  4. If hasNextPage is false, tell the user you’ve reached the end.

Output formatting (WhatsApp-friendly)

For each job, show as a bulleted list: Role Title — Company

  • ?? Posted:
  • Location (remote scope)
  • ?? Salary (or “Salary undisclosed”)
  • 1–2 line summary
  • ?? Link to apply
  • ?? Link to company homepage
  • ?? Link to company LinkedIn:

Keep it concise. After the list, ask what to do next:

  • “Want 20 more, or should I narrow by industry/seniority/salary?”

OpenClaw Tool to Use (required)

Tool: rr_jobs_search

Parameters:

  • filters (object): passed through to Remote Rocketship API filters
  • includeJobDescription (boolean, optional; default false)

The tool performs the POST to: https://www.remoterocketship.com/api/openclaw/jobs


Error handling

Status Meaning Agent guidance
401 Missing/invalid API key Tell the admin to set/repair RR_API_KEY server-side and restart the gateway. Do NOT ask the user for keys in chat.
403 Subscription inactive Tell the user they need an active Remote Rocketship plan to fetch jobs.
429 Rate limit Inform the user you hit the daily limit and suggest retrying later.
5xx Backend issue Apologize, retry once, then ask the user to try again later.

Filters (common)

Common filter keys you can use inside filters:

  • page (int, default 1)
  • itemsPerPage (int, default 20, max 50)
  • jobTitleFilters (string[])
  • locationFilters (string[]) — use canonical values like “United Kingdom”, “Worldwide”
  • keywordFilters (string[])
  • excludedKeywordFilters (string[])
  • seniorityFilters (string[]) — e.g. ["senior"]
  • employmentTypeFilters (string[]) — e.g. ["full-time"]

Prefer canonical titles/locations from RR lists when possible.

相关推荐