Agent skill

Bosszp

by guyi-a in guyi-a/pi-ling

Boss 直聘岗位搜索的完整操作手册。触发场景:用户说"找工作"/"看岗位"/"搜招聘"/"投简历"/"跳槽"/"Boss 直聘"/"看看有什么工作"/"帮我看下 XX 岗位"等。前提:必须走 browserbridge(Boss 需要用户 Chrome 登录态;browseruse 独立环境登不上)。包含 URL 模板、城市编码表、Vue data 抽取…

MITAuto-check passedProductivity & Automation

Install Bosszp

skills CLI
$ npx skills add guyi-a/pi-ling --skill bosszp -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install guyi-a/pi-ling bosszp --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/guyi-a/pi-ling.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/bosszp .claude/skills/bosszp && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
bosszp
GitHub stars
106
Token cost
~2.4k tokens
SKILL.md length
542 words
Files
1
Skills in repo
5
Repo updated
First seen
Licence
MIT

At a glance

Boss 直聘岗位搜索的完整操作手册。触发场景:用户说"找工作"/"看岗位"/"搜招聘"/"投简历"/"跳槽"/"Boss 直聘"/"看看有什么工作"/"帮我看下 XX 岗位"等。前提:必须走 browserbridge(Boss 需要用户 Chrome 登录态;browseruse 独立环境登不上)。包含 URL 模板、城市编码表、Vue data 抽取…

  • Works in 7 steps: 前提检查 → 登录检查(分两级) → URL 直拼(免搜索框交互) → …
  • Tasks that involve Browser automation
  • SKILL.md covers 决策优先级, 工作流, 输出格式(返回给上游) and 硬性纪律, plus 2 more sections
  • Reaches zhipin.com

What it does

Bosszp is an agent skill from guyi-a/pi-ling. Boss 直聘岗位搜索的完整操作手册。触发场景:用户说"找工作"/"看岗位"/"搜招聘"/"投简历"/"跳槽"/"Boss 直聘"/"看看有什么工作"/"帮我看下 XX 岗位"等。前提:必须走 browserbridge(Boss 需要用户 Chrome 登录态;browseruse 独立环境登不上)。包含 URL 模板、城市编码表、Vue data 抽取 JS(绕字体反爬)、登录检查、滚动加载策略、返回格式。

Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Productivity & Automation, covering Browser automation. It works with Vue.js. The licence is MIT.

When your agent uses it

  • Tasks that involve Browser automation

Example prompts

  • “Boss 直聘”
  • “看看有什么工作”
  • “帮我看下 XX 岗位”
  • “/bosszp”

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. 前提检查
  2. 登录检查(分两级)
  3. URL 直拼(免搜索框交互)
  4. 城市编码表
  5. 等页面加载 + 滚动扩容
  6. 提取岗位数据(分两步、限量)
  7. 收尾

What it can do on your machine

Read from SKILL.md and the folder at commit 17a71f6. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are javascript and markdown).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • zhipin.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Bosszp loads about 2.4k tokens when it runs. Until then it costs about 54 tokens; SKILL.md has 542 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~54
When it runs · the whole SKILL.md, loaded when a task matches
~2.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from guyi-a/pi-ling at commit 17a71f6, republished under its MIT licence (© guyi-a). 542 words, ~2,408 tokens.

Download SKILL.mdSave it as .claude/skills/bosszp/SKILL.md (or your agent's skills folder).
name
bosszp
description
Boss 直聘岗位搜索的完整操作手册。触发场景:用户说"找工作"/"看岗位"/"搜招聘"/"投简历"/"跳槽"/"Boss 直聘"/"看看有什么工作"/"帮我看下 XX 岗位"等。前提:必须走 browser_bridge(Boss 需要用户 Chrome 登录态;browser_use 独立环境登不上)。包含 URL 模板、城市编码表、Vue data 抽取 JS(绕字体反爬)、登录检查、滚动加载策略、返回格式。

Skill: bosszp(Boss 直聘岗位搜索)

用 browser_bridge 打开用户 Chrome,在 Boss 直聘上按关键词 + 城市搜岗位,用一段特殊 JS 从页面 Vue 组件里读明文数据,返回结构化列表。

决策优先级

  • 只走 browser_bridge,不用 browser_use(Boss 需要登录态,use 是独立环境登不上)
  • 先 browser_bridge(action='extension_status');ready=false 立刻停下告诉上游"用户没装 Kro Browser Bridge 扩展"
  • 已连接的 browser_id 从 list_sessions 拿

工作流

1. 前提检查
browser_bridge(action='extension_status')      // ready 必须 true
browser_bridge(action='list_sessions')         // 拿 browser_id
browser_bridge(action='list_pages', browser_id=...) // 找已打开的 zhipin.com tab
2. 登录检查(分两级)

未登录也能查到部分岗位,但结果稀少且没薪资/HR 信息 —— 不算合格结果。必须要求用户先登录再继续。

2.1 快速判断(先做这一步)

list_pages 返回的每个 page 都带 url 和 title。先看这两个,命中任一条就是未登录,直接停下,不要跑 execute_script:

  • URL 包含 /web/user/(Boss 未登录时会重定向到这里,包括 /web/user、/web/user/、/web/user/login 等)
  • URL 包含 /account/login
  • title 包含"登录"或"注册"(比如 【BOSS直聘注册登录】...)
  • title 包含"未登录"
2.2 深度检查(快速判断没命中时才用)

只有当 URL/title 看起来是正常岗位页(/web/geek/job 等)时,才 execute_script 二次确认。下面这条已经压成单行(execute_script 有换行会静默返 null,见下面硬约束):

js
(function(){var url=window.location.href;var title=document.title||'';var isLoginPage=url.indexOf('/web/user')!==-1||url.indexOf('/account/login')!==-1||title.indexOf('登录')!==-1||title.indexOf('注册')!==-1;var userNameEl=document.querySelector('.nav-figure img, .user-nav .name, .geek-nav .name, [class*=user-name], [class*=userName]');var userName='';if(userNameEl){userName=(userNameEl.alt||userNameEl.getAttribute('title')||userNameEl.textContent||'').trim();}var links=document.querySelectorAll('a');var hasLoginLink=false;for(var i=0;i<links.length;i++){var h=links[i].getAttribute('href')||'';if(h.indexOf('user/login')!==-1||h.indexOf('user/register')!==-1){hasLoginLink=true;break;}}return JSON.stringify({is_login_page:isLoginPage,is_logged_in:!!userName||(!hasLoginLink&&!isLoginPage),user_name:userName,has_login_link:hasLoginLink});})()

改动要点:登录链接检测原来用 a[href*="user/login"](有嵌套引号,不稳定),改成 document.querySelectorAll('a') + JS 里遍历 href 字符串匹配,完全没有嵌套引号。

判定与返回

is_logged_in=false、返回 value=null、或 2.1 命中登录页 → 立刻停下,返回给上游:

用户在 Boss 直聘上未登录,无法进行完整搜索。请用户在 Chrome 里打开 https://www.zhipin.com/ 完成登录后重试。

不要:

  • 明明 URL 已经是登录页还去跑 execute_script(浪费一步)
  • 未登录状态下继续抓取(结果不全,浪费一次尝试)
  • 尝试猜密码或替用户点登录
  • 犹豫"要不要试试看能拿多少" —— 一律停下
3. URL 直拼(免搜索框交互)
https://www.zhipin.com/web/geek/job?query={keyword}&city={city_code}

用 open_tab 直接跳到目标 URL。

4. 城市编码表
城市code城市code城市code
全国100010000北京101010100上海101020100
广州101280100深圳101280600杭州101210100
成都101270100南京101190100武汉101200100
西安101110100苏州101190400长沙101250100
郑州101180100重庆101040100天津101030100
合肥101220100青岛101120200厦门101230200
东莞101281600大连101070200佛山101280800
福州101230100济南101120100昆明101290100
宁波101210400无锡101190200珠海101280700
沈阳101070100哈尔滨101050100长春101060100

不在表里的、海外城市 → 用"全国"(100010000)兜底。

5. 等页面加载 + 滚动扩容

open_tab 后:

  1. wait_for(timeout_ms=8000) — 等基础渲染
  2. execute_script 数当前卡数:
    js
    (function(){ return document.querySelectorAll('.job-card-wrap').length; })()
  3. 卡数 > 0 才继续,否则再等 1-2 秒重数(Boss SSR + 客户端渲染慢)
  4. 循环扩容(最多 5 轮):
    • scroll(y=3000) 触发懒加载
    • 重新数卡
    • 卡数 ≥ 30 或跟上一轮相同 → 停止扩容
6. 提取岗位数据(分两步、限量)

Boss 用 CSS @font-face 混淆部分数字字段(薪资等),但大多数关键信息(岗位名、公司名、城市、要求)在 DOM 里是明文。

6.1 先探测有多少岗位卡

一定要先跑这一步确认卡片存在,再跑抽取。

js
(function(){ return document.querySelectorAll('.job-card-wrap').length; })()

返回数字才能进下一步。返回 null → wait_for 一下重试;仍 null 停下报告。

6.2 首选:Vue data 抽取(明文薪资,绕字体反爬)

Boss 用 @font-face 字体反爬 DOM 里的薪资数字,但 Vue 组件挂在 DOM 上的 __vue__ expando 属性可以读(在 content script isolated world 也能读,因为它是 DOM 元素属性,不是 window 全局)。$data.jobList 里的 salaryDesc 是明文 "15-25K"。

先跑这条(默认取 10 个,agent 要 N 个就改 slice(0,10) 里的数字):

js
(function(){function findJobList(vm,depth){if(depth>8)return null;var d=vm.$data||{};if(d.jobList&&Array.isArray(d.jobList)&&d.jobList.length>0)return d.jobList;var children=vm.$children||[];for(var j=0;j<children.length;j++){var r=findJobList(children[j],depth+1);if(r)return r;}return null;}var el=document.querySelector('#wrap');if(!el||!el.__vue__)return JSON.stringify({count:0,jobs:[],source:'vue_unavailable'});var list=findJobList(el.__vue__,0);if(!list)return JSON.stringify({count:0,jobs:[],source:'vue_no_list'});var slice=list.slice(0,10);var jobs=slice.map(function(item){return {title:item.jobName||'',salary:item.salaryDesc||'',company:item.brandName||'',area:(item.cityName||'')+(item.areaDistrict?' '+item.areaDistrict:'')+(item.businessDistrict?' '+item.businessDistrict:''),experience:item.jobExperience||'',education:item.jobDegree||'',tags:item.skills||[],company_tags:[item.brandStageName||'',item.brandScaleName||'',item.brandIndustry||''].filter(function(x){return x;}),hr:item.bossName||'',url:'https://www.zhipin.com/job_detail/'+item.encryptJobId+'.html',welfare:item.welfareList||[]};});return JSON.stringify({count:jobs.length,jobs:jobs,source:'vue_data'});})()

返回体的 source 字段:

  • vue_data → 成功,jobs[].salary 是明文,直接用
  • vue_unavailable / vue_no_list → Vue 挂载点变了或页面还没渲染完 → 跑 6.3 DOM 回退
6.3 回退:DOM 抽取(薪资可能字体反爬)

Vue 路径失败时才用。DOM 里的薪资经常是乱码字符(-K·薪),其它字段(title / company / area / tags)一般明文:

js
(function(){var items=Array.prototype.slice.call(document.querySelectorAll('.job-card-wrap'),0,10);var jobs=[];for(var i=0;i<items.length;i++){var item=items[i];var titleEl=item.querySelector('.job-name, [class*=job-title]');var salaryEl=item.querySelector('.job-salary, [class*=salary]');var companyEl=item.querySelector('.job-card-footer a, .company-name, [class*=company-name]');var areaEl=item.querySelector('.job-area, [class*=job-area]');var linkEl=item.querySelector('a[href]');var href=linkEl?linkEl.getAttribute('href'):'';if(href&&href.indexOf('http')!==0){href='https://www.zhipin.com'+href;}var tagEls=item.querySelectorAll('.tag-list li, .tag-list span, [class*=job-tag] li');var tags=[];for(var j=0;j<tagEls.length;j++){var x=(tagEls[j].textContent||'').trim();if(x)tags.push(x);}if(titleEl){jobs.push({title:(titleEl.textContent||'').trim(),salary:salaryEl?(salaryEl.textContent||'').trim():'',company:companyEl?(companyEl.textContent||'').trim():'',area:areaEl?(areaEl.textContent||'').trim():'',url:href,tags:tags});}}return JSON.stringify({count:jobs.length,jobs:jobs,source:'dom'});})()

注意:

  • 用户要 N 个岗位就把两处 slice(0,10) / slice.call(...,0,10) 里的 10 都改成 N;默认 10
  • Vue 路径拿到的 salary 明文;DOM 路径拿到的 salary 大概率是字体反爬乱码,返回给上游时注明"薪资字段疑似反爬,仅供参考"
  • 两条脚本已经压成单行,agent 复制粘贴时别加换行/缩进"美化",加了就静默返 null
7. 收尾
  • 不要主动 close_tab —— 保留搜索结果页给用户,方便他自己继续看/继续投递。用户明确说"关掉"才关
  • 多城市 / 多关键词多轮时,用 URL 去重(seen_urls: Set<string>),也不影响 tab 生命周期

输出格式(返回给上游)

markdown
## 招聘搜索结果

**范围**:关键词 = Go 后端工程师 · 城市 = 北京 / 上海 · 抓取 32 个 · 数据源 vue_data

### 1. 高级 Go 后端开发工程师 · 字节跳动
- 薪资:40-70K · 15薪
- 城市:北京 海淀 中关村
- 要求:3-5 年 · 本科
- 技术栈:Go / gRPC / Kubernetes / Redis
- 公司:D 轮及以上 · 10000人以上 · 互联网
- 链接:https://www.zhipin.com/job_detail/xxx.html

### 2. Go 工程师 · Shopee
...
Show full SKILL.md (226 more words)Show less

硬性纪律

  1. 未登录立刻停 — 报告"用户需要先登录 Boss",别做别的
  2. 抓不到就停 — Vue data 找不到 + DOM fallback 拿到 0 个 → 报告"页面结构可能变了",不要死循环
  3. 最多 5 轮 scroll — 收敛条件到达或轮数满就停
  4. 最多 50 个岗位 — 不要贪
  5. 只走 bridge — 不要因为扩展没连就切 browser_use,Boss 那条路进不去
  6. 不点击用户 tab 上的内容 — 只操作 agent 自己 open_tab 打开的搜索页
  7. 不主动 close_tab / close_session — 用户 Chrome 保留原样;搜索完的结果页给用户自己看

失败处理

现象措施
extension_status.ready=false立刻报告"用户没装/没启用 Kro Browser Bridge 扩展"
登录检查 is_logged_in=false立刻停下让用户登录,不要抓
登录检查显示 is_login_page: true用户被踢下线了,报告让用户重登
execute_script 返回 source:"dom" 且 count=0Boss 结构变了或 Vue 挂载在别处,报告页面异常
execute_script 直接报错(tool_result ok=false)等 2 秒后 wait_for 一次再重试;仍失败停下报告,不要死循环。常见原因:页面 JS 还没跑完 / 页面刚导航 / JS 语法错误
execute_script 返回 payload 巨大导致 tool 慢一次抓 50 个够了;如果 count 明显过大(>100),先 scroll 停止扩容
wait_for 超时网络慢或页面卡,报告一次然后继续尝试 extract;仍失败就停
tool 报 page_id not found用户可能关了 tab;重新 list_pages 或 open_tab
execute_script 稳健用法(硬性约束)

以下规矩不遵守,扩展会静默返 value: null,agent 拿不到任何错误信息盲猜半天。全都是踩坑踩出来的:

  1. 单行、无换行、无缩进 ← 最容易被忽视也最致命。脚本源码里不允许出现 \n。多行写法一律失败。所有语句 ; 分隔全部塞到一行。SKILL 里给的模板已经压好单行,agent 复制粘贴时不许"美化"
  2. IIFE + 显式 return:(function(){...return X;})()。裸表达式("hello"、1+1)一律返 null
  3. 禁用双引号 ":所有 JS 字符串用单引号 ',对象字面量 key 不加引号({title:x} 而不是 {"title":x})。JSON.stringify 返回值里有 " 无所谓,那不是源码
  4. CSS 属性选择器少用嵌套引号:[class*=job-name] 而不是 [class*="job-name"](job-name 是合法 CSS3 ident)。含 / : 等非 ident 字符的属性值(如 href 匹配 URL 片段),改用 JS 遍历判断,别塞到选择器里
  5. DOM expando 可以读:document.querySelector('#wrap').__vue__ 这种 Vue 挂在元素上的属性可以读(它是 DOM 元素属性,isolated world 能看到)。但 window.某某 / 直接引用 _PAGE 这种 page world 全局 大概率读不到,若必须访问用 try{ ... }catch(e){} 兜底
  6. 分两步走:先跑简单探测(.length)确认有货,再跑抽取;一次抽取超过 20 条容易返 null
  7. 返回体控制在 KB 级:slice(0, 10) 限量。用户要 10 个就 10 个,别贪
  8. 返回 null 处理:先 wait_for(timeout_ms=2000) 重试一次;仍 null 检查上述 1-7 项是否违规;连续 2 次 null 停下报告,不要死试

不该做

  • 用 execute_script 跑破坏性操作(修改用户 cookies / localStorage / 提交表单)
  • 一次开多个搜索 tab(并行会踩 Boss 频控)
  • 假装抓到 —— 没数据就说没数据,别编

© guyi-a, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/bosszp of guyi-a/pi-ling.

Open the folder on GitHubat commit 17a71f6

Compare with similar skills

Bosszp next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Bosszp compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Bosszp this skillguyi-a/pi-ling106—~2.4kAutomated safety check: PassMIT
Vue Inspectscott-fryxell/brayness124—~779Automated safety check: PassMIT
Dev-Browser CLI AutomationSawyerHood/dev-browser6.7k1 repos~455Automated safety check: PassMIT
Camoufox CLIBin-Huang/camoufox-cli3501 repos~4.5kAutomated safety check: PassMIT
Browser Use Terminalbrowser-use/terminal651—~2.1kAutomated safety check: PassMIT
Codex Bridge Chatgptanightmonarch/codex-bridge-chatgpt145—~1.1kAutomated safety check: PassMIT

Similar skills

  • Vue Inspect

    scott-fryxell/brayness

    Inspect live Vue 3 component state via agent-browser eval - no Devtools extension, no console.log.

    124 GitHub stars~779 tokensUpdated 10 days ago
    Productivity & AutomationAuto-check passed
  • Dev-Browser CLI Automation

    SawyerHood/dev-browser

    Browser automation with persistent named pages via the dev-browser CLI. Use when users ask to navigate websites, fill forms, take screenshots, extract web…

    6.7k GitHub starsUsed in 1 repo~455 tokens
    Productivity & AutomationAuto-check passed
  • Camoufox CLI

    Bin-Huang/camoufox-cli

    Anti-detect browser automation CLI & Skills for AI agents. An agent skill from Bin-Huang/camoufox-cli.

    350 GitHub starsUsed in 1 repo~4.5k tokens
    Productivity & AutomationAuto-check passed
  • Browser Use Terminal

    browser-use/terminal

    Direct browser control via the Browser Use Terminal CLI. An agent skill from browser-use/terminal.

    651 GitHub stars~2.1k tokensUpdated 1 mo ago
    Productivity & AutomationAuto-check passed
  • Codex Bridge Chatgpt

    anightmonarch/codex-bridge-chatgpt

    A skill your agent uses when a complex repository task needs ChatGPT web reasoning while Codex remains responsible for local evidence, edits, and tests.

    145 GitHub stars~1.1k tokensUpdated 1 mo ago
    Productivity & AutomationAuto-check passed
  • Webctl

    cosinusalpha/webctl

    Browser automation via CLI. An agent skill from cosinusalpha/webctl.

    419 GitHub stars~1.7k tokensUpdated 4 mo ago
    Productivity & AutomationAuto-check passed

More from guyi-a/pi-ling

  • PDF

    guyi-a/pi-ling

    PDF 相关的所有操作:从零生成(reportlab / pypdf)、格式转化(md/html → PDF)、修改(合并 / 拆分 / 旋转 / 加水印 / 提图片 / 元数据)、读内容(pdfplumber / extractdocumenttext)、OCR 扫描件、加密解密。触发场景:用户说"生成 PDF" / "做份 PDF 简历" / "合并这几份 PDF" / "给 PDF…

    106 GitHub stars~3.3k tokensUpdated 22 days ago
    Auto-check passed
  • PPTX

    guyi-a/pi-ling

    PowerPoint 幻灯片(.pptx / .potx)的所有操作:从零生成(pptxgenjs Node 库)、基于模板编辑(unpack XML → 改 → clean → pack)、格式转化(pptx → PDF / 图片、.ppt → .pptx)、读取分析。触发场景:用户说"做份 PPT" / "生成幻灯片" / "演讲 slide" / "培训材料" / "项目汇报" /…

    106 GitHub stars~2.3k tokensUpdated 22 days ago
    Auto-check passed
  • DOCX

    guyi-a/pi-ling

    Word 文档(.docx)的日常处理:md → docx(生成简历/报告)、docx → PDF/图片(分享预览)、.doc → .docx(老格式升级)。触发场景:用户说"生成 Word 版" / "做份 Word 简历" / "把这份报告转 Word" / "这份 .doc 打不开" / "docx 转 PDF" 等。读 docx 内容走 agent 已有的…

    106 GitHub stars~1.1k tokensUpdated 22 days ago
    Auto-check passed
  • Inline Visualization

    guyi-a/pi-ling

    当回答涉及流程、架构、机制、因果、对比、时间线、状态机、层级关系,或用户明确要求画图 / 图解 / 示意图时使用。把内容画成对话内直接渲染的图(自包含 HTML/SVG),而不是用文字罗列。不承接数值图表(折线/柱状/饼图,当前无图表库)、海报、头像、写实插画、地图。

    106 GitHub stars~555 tokensUpdated 22 days ago
    Auto-check passed

Works with

Questions about Bosszp

What does Bosszp do?

Boss 直聘岗位搜索的完整操作手册。触发场景:用户说"找工作"/"看岗位"/"搜招聘"/"投简历"/"跳槽"/"Boss 直聘"/"看看有什么工作"/"帮我看下 XX 岗位"等。前提:必须走 browserbridge(Boss 需要用户 Chrome 登录态;browseruse 独立环境登不上)。包含 URL 模板、城市编码表、Vue data 抽取…. Bosszp is an agent skill from guyi-a/pi-ling.

When should I use Bosszp?

Bosszp fits situations like: tasks that involve Browser automation.

How do I install Bosszp in Claude Code?

Run `npx skills add guyi-a/pi-ling --skill bosszp -a claude-code`. Or copy the skill folder (.agents/skills/bosszp in guyi-a/pi-ling) into .claude/skills/bosszp in your project. Claude Code loads it when a task matches its description.

How do I install Bosszp in Codex?

Run `npx skills add guyi-a/pi-ling --skill bosszp -a codex`. Or copy the skill folder (.agents/skills/bosszp in guyi-a/pi-ling) into .agents/skills/bosszp in your project. Codex loads it when a task matches its description.

Can I use Bosszp in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add guyi-a/pi-ling --skill bosszp -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/bosszp, .gemini/skills/bosszp, .github/skills/bosszp and .opencode/skills/bosszp in your project.

What does Bosszp need to run?

SKILL.md names no scripts, command-line tools or credentials: Bosszp is instructions for the agent only.

Does Bosszp access the network?

SKILL.md names 1 domain. In commands or code: zhipin.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Bosszp safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Bosszp use?

Bosszp is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Bosszp use?

About 2.4k tokens (SKILL.md is roughly 9.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Bosszp?

Skills that share tags, products or a category with Bosszp: Vue Inspect (scott-fryxell/brayness, 124 stars), Dev-Browser CLI Automation (SawyerHood/dev-browser, 6.7k stars), Camoufox CLI (Bin-Huang/camoufox-cli, 350 stars) and Browser Use Terminal (browser-use/terminal, 651 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Bosszp?

guyi-a (a GitHub user) maintains it in guyi-a/pi-ling, which has 106 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on September 16, 2026.

Source: guyi-a/pi-ling on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.