BDJobs Job Apply
/install bdjobs-job-apply
BDJobs Job Apply
Use this skill to help a user manage BDJobs job searching and applying without needing to know APIs or code.
What this skill does
- Save resume text/LaTeX into
data/resume.md - Save credentials and preferences into
data/userDetails.json - Log in and save auth data into
data/loggedInData.json - Refresh applied jobs into
data/appliedJobIds.json - Keep a not-liked list in
data/notLikedJobIds.json - Search jobs and return raw job details for AI matching
- Auto-apply to matched jobs when asked
- Undo/cancel an applied job when asked
- Update expected salary for an already applied job
Onboarding flow
When the user first sets up this skill, ask for these values in plain language:
- BDJobs username
- BDJobs password
- Resume text or LaTeX
everyDayApplyCount(default: 2)everyDayCronTime(default:12:00 PM)isFresher(yes/no)Experiencein years- Preferred
jobLocation(optional, leave blank for all)
Save them in:
data/userDetails.jsondata/resume.md
If the user has extra search filters or matching rules, store them in data/preferences.json.
Login flow
Before search/apply work, always ensure data/loggedInData.json exists.
If missing:
- run
ChecKUsername - take
guidId - run
Login - save
token,refreshToken,encryptId,decodeId, andguidIdtodata/loggedInData.json
If login returns 401 at any point:
- run
ChecKUsernameagain - run
Loginagain - overwrite
data/loggedInData.json
Search flow
When the user asks for fresh jobs:
- Clear
data/suggestedJobs.json - Run
scripts/bdjobs-refresh-applied.jsto updatedata/appliedJobIds.jsonfromGetApplyPositionInfoV1 - Run
scripts/bdjobs-fetch-jobs.jswith--keyword,--isFresher,--postedWithin,--pg, and--jobLocationto fetch raw job lists fromGetJobSearch - Run
scripts/bdjobs-filter-jobs.jsto exclude already-applied and not-liked job IDs beforeJob-Details - For selected job IDs, run
scripts/bdjobs-job-details.jsto fetch full job details - Let AI compare the raw job details with
data/resume.mdanddata/preferences.json - Run
scripts/bdjobs-rank-jobs.jsto save the top 5 matched jobs intodata/suggestedJobs.json - Show the contents of
data/suggestedJobs.jsonto the user
Recommended match threshold:
- show apply suggestions only if match is above 40%
- if the user asks for a looser list, show 30%+
AI matching details:
- Compare the raw job details with
data/resume.mdanddata/preferences.json - Judge fit from skills, education, age, experience, responsibilities, location, and preferences
- Output a suggested job list with match percentages
Auto-apply flow
When the user asks to auto-apply:
- Ensure login exists
- Refresh applied jobs first
- Search fresh jobs
- Let AI score the raw job details against the resume and preferences
- For each approved job:
- call
JobApply - read
MinimumSalary - use it as
expectedSalaryinJobApplyPost - call
JobApplyPost - if successful, always show
matchingScore - if successful, add the job ID to
data/appliedJobIds.json - save result in
data/lastApplyResult.json
- call
- Send Telegram notification only after success
Undo/cancel flow
When the user asks to undo an application:
- Ensure login exists
- Call
UndoJobApplywith job ID andFormValue - If successful, remove the job ID from
data/appliedJobIds.json - Save result in
data/lastUndoResult.json
Expected salary update flow
When the user asks to update salary for an applied job:
- Ensure login exists
- Call
UpdateExpectedSalary - Save result in
data/lastSalaryUpdateResult.json
Files used by this skill
Important files live inside this skill folder:
data/resume.mddata/userDetails.jsondata/loggedInData.jsondata/appliedJobIds.jsondata/notLikedJobIds.jsondata/preferences.jsondata/suggestedJobs.jsondata/lastApplyResult.jsondata/lastUndoResult.jsondata/lastSalaryUpdateResult.json
Script entry points
Run scripts from the skill folder, not the workspace root:
scripts/init-job-profile.jsscripts/bdjobs-login.jsscripts/bdjobs-refresh-applied.jsscripts/bdjobs-fetch-jobs.js
bdjobs-fetch-jobs.js accepts:
--keyword=...--isFresher=true|false--postedWithin=...(optional day count, any number)--pg=...--jobLocation=...scripts/bdjobs-filter-jobs.jsscripts/bdjobs-job-details.jsaccepts--jobId=...or a positional job idscripts/bdjobs-rank-jobs.jsscripts/bdjobs-apply.jsscripts/bdjobs-undo.jsscripts/bdjobs-update-salary.js
Matching rules
Use the resume and these signals:
- Job title
- Company name
- Job description
- Education requirements
- Age requirement
- Experience requirement
- Additional job requirements
- Suggested skills
- Job location
- Job nature
- User preferences from
data/preferences.json
Helpful behavior
When presenting jobs to the user:
- keep language simple
- explain only what matters
- include the direct job link
- mention whether it looks worth applying
When the user wants automation, do the work directly with the scripts.
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install bdjobs-job-apply - 安装完成后,直接呼叫该 Skill 的名称或使用
/bdjobs-job-apply触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
BDJobs Job Apply 是什么?
BDJobs job search, matching, applying, undoing, and salary-update automation for OpenClaw. Use when the user wants to set up BDJobs credentials/preferences,... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 155 次。
如何安装 BDJobs Job Apply?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install bdjobs-job-apply」即可一键安装,无需额外配置。
BDJobs Job Apply 是免费的吗?
是的,BDJobs Job Apply 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
BDJobs Job Apply 支持哪些平台?
BDJobs Job Apply 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 BDJobs Job Apply?
由 Sazidul Alam(@sazidulalam47)开发并维护,当前版本 v1.0.5。