Get Job
agentenatalie/get-job.skill
实习.skill / get-job.skill:从岗位调研、简历改写到分轮次面试准备的全流程求职 skill。适合找工作、投实习、校招、秋招、春招、暑期实习、社招、跳槽、转行、跨专业求职、留学生求职,以及产品经理、运营、市场、咨询、AI 产品、AI Coding、数据分析、技术岗等目标岗位准备。
Search, inspect, and explicitly process persisted recruitment mail with bounded model analysis and guarded application writes.
The automated check flagged lines worth reading first. See the safety section below.
$ npx skills add 849879772/recruitops-agent --skill recruitment-mail -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install 849879772/recruitops-agent recruitment-mail --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/849879772/recruitops-agent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/recruitment-mail .claude/skills/recruitment-mail && rm -rf skills-srcUse ~/.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/
Install the "recruitment-mail" agent skill from https://github.com/849879772/recruitops-agent/tree/main/.agents/skills/recruitment-mail into .claude/skills/recruitment-mail/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recruitment-mail", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/849879772/recruitops-agent/tree/main/.agents/skills/recruitment-mailType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add 849879772/recruitops-agent --skill recruitment-mail -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install 849879772/recruitops-agent recruitment-mail --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/849879772/recruitops-agent.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/recruitment-mail .agents/skills/recruitment-mail && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "recruitment-mail" agent skill from https://github.com/849879772/recruitops-agent/tree/main/.agents/skills/recruitment-mail into .agents/skills/recruitment-mail/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recruitment-mail", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add 849879772/recruitops-agent --skill recruitment-mail -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install 849879772/recruitops-agent recruitment-mail --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/849879772/recruitops-agent.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/recruitment-mail .cursor/skills/recruitment-mail && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "recruitment-mail" agent skill from https://github.com/849879772/recruitops-agent/tree/main/.agents/skills/recruitment-mail into .cursor/skills/recruitment-mail/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recruitment-mail", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/849879772/recruitops-agent.git --path .agents/skills/recruitment-mail--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add 849879772/recruitops-agent --skill recruitment-mail -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install 849879772/recruitops-agent recruitment-mail --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/849879772/recruitops-agent.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/recruitment-mail .gemini/skills/recruitment-mail && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "recruitment-mail" agent skill from https://github.com/849879772/recruitops-agent/tree/main/.agents/skills/recruitment-mail into .gemini/skills/recruitment-mail/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recruitment-mail", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install 849879772/recruitops-agent recruitment-mailInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add 849879772/recruitops-agent --skill recruitment-mail -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/849879772/recruitops-agent.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/recruitment-mail .github/skills/recruitment-mail && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "recruitment-mail" agent skill from https://github.com/849879772/recruitops-agent/tree/main/.agents/skills/recruitment-mail into .github/skills/recruitment-mail/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recruitment-mail", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add 849879772/recruitops-agent --skill recruitment-mail -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install 849879772/recruitops-agent recruitment-mail --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/849879772/recruitops-agent.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/recruitment-mail .opencode/skills/recruitment-mail && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "recruitment-mail" agent skill from https://github.com/849879772/recruitops-agent/tree/main/.agents/skills/recruitment-mail into .opencode/skills/recruitment-mail/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recruitment-mail", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
recruitment-mailSearch, inspect, and explicitly process persisted recruitment mail with bounded model analysis and guarded application writes.
Recruitment Mail is an agent skill from 849879772/recruitops-agent. Search, inspect, and explicitly process persisted recruitment mail with bounded model analysis and guarded application writes.
Its SKILL.md is about 3.3k 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 Business, Finance & HR, covering Recruiting and HR. The repository describes itself as: Local-first recruitment intelligence and application operations agent. The licence is MIT.
9 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 1584307. It shows what the files ask for, not the result of running them.
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.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Recruitment Mail loads about 3.3k tokens when it runs. Until then it costs about 36 tokens; SKILL.md has 1,720 words of instructions outside code blocks.
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.
The automated check found patterns that need a careful read before installing.
If interrupted, discover saved runs without asking the user for an internal ID;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.
The full file from 849879772/recruitops-agent at commit 1584307, republished under its MIT licence (© 849879772). 1,720 words, ~3,265 tokens.
.claude/skills/recruitment-mail/SKILL.md (or your agent's skills folder).An application with no valid saved record_url is 仅邮件更新 (mail-only), not an
invalid application. Its missing website link must not block a uniquely bound,
verified mail event or trigger a browser follow-up. The same evidence, identity,
time, approval, and forward-only stage rules below still apply. An unmatched mail
requires user-confirmed binding where applicable; do not invent a link or a match.
For a request to process mail, use recruitment_mail_run_start and keep the assistant
turn open. It waits for up to 20 seconds; if continuation_required=true, call
recruitment_mail_run_status(run_id=the_returned_id,wait_ms=20000) until the saved run
reaches a terminal state, then report its actual outcomes. A bounded wait returning
active is not a failure or a reason to ask the user whether to continue. Never end
with only “后台已启动,请稍后询问”. Progress cards remain visible during the wait.
Only the full recruitment crawl uses that fire-and-forget interaction.
Always pass the current conversation's thread_id when starting conversational
mail processing. Never guess the newest global task to attach an unrelated chat.
If the run returns awaiting_confirmation, the task is NOT completed: report
“等待你选择关联岗位” and let the workbench's single confirmation dialog collect the
choice. Do not keep polling, ask the user to type a job name/“继续”, or create another
processing run for these pending records. The durable original scope is resumed
by the confirmation action after a valid human-approved binding; other failed or
completed mail is not replayed. Closing the dialog means later, not rejection.
The final automatic summary is read-only and must describe that exact run's saved
receipt; it never authorizes syncing, processing, binding, or stage writes again.
Before reporting mail results, inspect the saved run's freshness and sync_warning.
synced confirms a mailbox refresh; cached reuses a recent refresh and must not be
described as a new fetch. If sync_warning=true, report “未确认最新邮件,仅处理本地已保存邮件”
and the actual local processing outcomes. A partial run may mean synchronization
failed even when all local messages were processed. not_requested means no refresh
was requested; never infer mailbox freshness from local processing success. A
mail_sync_in_progress response means another sync is pending, not that it failed.
Mailbox freshness does not prove new model analysis. Read model_attempted_count
(messages sent to triage/analysis), model_call_count, historical_failure_count,
and failure_results[].analysis_source. history means a saved outcome was reused,
not a new model attempt. model_attempted_count is not a completed-analysis count.
Use saved safe diagnostics: http_401/403 is authentication, http_429 is rate
limiting, http_5xx is a service response, transport_failed is a transport failure,
and output/schema errors do not prove service unavailability. An old generic
DeepSeekClientError cannot identify the underlying cause.
The service retries transient transport/408/429/5xx failures at most once per
model request with short backoff, and allows at most three processing rounds for
the same evidence/input with cooldowns. A legacy generic client failure gets one
bounded compatibility round. Status polls never spend or reset a retry budget.
After those limits, or after configuration/output failures, do not automatically
keep starting runs to retry the failure. When the user explicitly requests a retry,
use recruitment_mail_run_start(retry_failed=true,record_ids=[selected failed IDs],refresh=false).
This requires 1–50 explicit failed records, freezes their current digests, does not
refresh/expand the mailbox, and authorizes only one new bounded round per selected
record. Successful mail cannot be retried. Follow the normal bounded wait until
terminal. User-triggered retry does not waive evidence, identity, forward-only
stage, or source-bound schedule idempotency checks.
If interrupted, discover saved runs without asking the user for an internal ID;
resume only on their instruction via recruitment_mail_run_control(action=resume)
and keep waiting in this turn. Pause/cancel is explicit and cannot be undone by a
status poll. For a progress-only query, read once with wait_ms=0; do not start work.
The durable run freezes and processes batches internally through the same guarded
recruitment_mail_process pipeline. The legacy per-batch limits below apply only
when that lower-level tool is used directly, not to the durable run's read-only waits.
Assessment invitations (assessment) remain classified as assessment mail but map to
applied, not a written-test stage. Explicit written-test notices (written_test) map
to written. Use the mail content to distinguish them; neither case may roll back a
later application stage.
The confirmation dialog supports multiple applications only for a validated
company-wide assessment/written-test event without an exclusive job title/code.
Use allows_multiple and selection_scope from binding candidates, not an
assistant-created guess. A user may select several same-company applications in
one approved binding; application_ids and applications are authoritative, while
the legacy application_id is only the compatible primary target. Job-specific
notifications remain single-target. Do not auto-select, approve, expand to all
company applications, or replay one confirmation per selected job.
After confirmation the original run resumes once, validates each selected identity
and forward-only event update independently, and exposes application_results.
Report partial failures separately; one successful application does not prove every
selected application was updated. The one source-bound schedule_item lists its
application_ids/associated_jobs; never create a copy per selected application.
recruitment_mail_search,
recruitment_mail_detail, and recruitment_mail_review are read-only; their refresh path may
sync the mailbox but must not update application progress or create schedule items. Only an
explicit recruitment_mail_process pass may create a schedule item.
Review previews require existing validated model analysis. If it is missing, report that
processing is required; never lower thresholds or use historical keyword fields as evidence.recruitment_mail_processing_status only to inspect persisted processing state. It does not
synchronize mail, call a model, or write. Distinguish model proposed analysis from verified
identity/event evidence and the actual written or unchanged application outcome.recruitment_mail_process only when the user explicitly requests processing.
Omit timeout_ms to use its default 90000, or set at most 90000; do not discover this limit by a rejected call.
It performs the bounded triage/full-analysis pass and invokes the unified guarded write path;
do not replay pending body classification in the tool or fan out one write call per message.
One call processes at most ten messages, not the whole mailbox. For a request to process all
pending mail, continue with the same original scope when has_more=true and processed>0.
Make at most five batch calls per turn. Do not reset failure budgets or expand an explicit scope;
an explicit user retry uses the targeted durable-run entry described above.
Stop on blocked results, no progress, or the call limit and report remaining_count.
Aggregate all batch counts; never say all mail is processed merely because one batch completed.
Before claiming completion, require has_more=false and scope_complete=true, inspect
recruitment_mail_processing_status, and disclose any unresolved/failed records across batches.assessment, written_test, interview, and
action_required, it also creates or reuses the source-bound item in the shared
schedule_event_snapshots table and returns it as that result's schedule_item. A company-only
assessment or action reminder may legitimately have application_id=null; never force an
application binding from a company or job-title guess. Inspect each returned schedule_item,
plus the batch totals schedule_items_created and schedule_items_time_unconfirmed.
Do not call schedule_manage(action=create) to recreate a mail-derived item, even when its
time is unconfirmed; use the returned item. If the user explicitly asks to edit an existing
mail-derived item, schedule_manage(action=update) is allowed; preserve its source and
source_ref and do not create a second item.
Treat completed and partial as results to inspect,
not permission to invent success; blocked, failed, ambiguous_application,
pending_association, and failed_terminal remain unresolved or failed as reported.application_id=null. When an application is explicitly supplied for a schedule item, use its
exact company/job identity and reject a mismatch; do not infer the binding. An unchanged or
stale application result is not a write.retryable=false outcome for the
same persisted evidence version must not be resubmitted with altered quotations, IDs, or
prompts. Apart from the service's bounded transient retries, retry only when evidence/input
changes or the user explicitly authorizes the targeted retry_failed=true run. A retry of
mail analysis is not authority to replay or bypass a rejected application-stage write.schedule_manage; mail-derived schedule items must come from recruitment_mail_process, with
schedule_manage(action=update) reserved for an explicit edit of an existing returned item.模型建议, 已验证, 已写入, 状态未变化, 无法确认, and 执行失败. Report
notifications separately as 普通通知已处理(无需关联) and reminders as 待办提醒.
Neither category is a verified unchanged application status. A pure thank-you/welcome receipt
needs no application association. Read its full body first; real events and actions take precedence.
has_more=false or zero pending only means no runnable batch remains. If unfinished_count>0
or scope_complete=false, explicitly report remaining unresolved/failed mail; do not say all mail
is resolved or the mailbox is fully completed. Use Chinese summary labels, not raw English keys.
Summarize only this invocation's results and unresolved items in scope. Do not list old
completed mail (for example Dahua/DJI) or read their bodies just to decorate the summary.
Refresh processing status before the final answer and before offering to process any
previously mentioned unresolved IDs. Current persisted states override conversation history.
If no runnable items remain but unresolved items exist, say the automatic batch finished
and report the remaining required actions, not that every mail was resolved.
Historical results may be mentioned only when the user explicitly asks about history or
a current conflict requires that specific evidence. Never equate listing metadata with
rereading or reprocessing an email.
Never claim that a
proposed model analysis was verified or that a guarded write occurred without the returned write
result.© 849879772, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/recruitment-mail of 849879772/recruitops-agent.
Open the folder on GitHubat commit 1584307
Recruitment Mail 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Recruitment Mail this skill849879772/recruitops-agent | 130 | — | ~3.3k | Automated safety check: Warn | MIT | |
| Get Jobagentenatalie/get-job.skill | 632 | — | ~1.7k | Automated safety check: Pass | CC-BY-NC-ND-4.0 | |
| Resume Reviewerweeelin98/ResumeDom | 173 | — | ~2.4k | Automated safety check: Pass | None | |
| Build Resume Portfolio Sitetao943/build-resume-portfolio-site | 195 | — | ~5.8k | Automated safety check: Pass | None | |
| Cyber Resume Reviewermubix/cyber-resume-reviewer-skill | 184 | — | ~2.9k | Automated safety check: Pass | MIT | |
| Repo To Resume TailorSsabby1/repo-to-resume-tailor | 127 | — | ~1.8k | Automated safety check: Pass | MIT |
agentenatalie/get-job.skill
实习.skill / get-job.skill:从岗位调研、简历改写到分轮次面试准备的全流程求职 skill。适合找工作、投实习、校招、秋招、春招、暑期实习、社招、跳槽、转行、跨专业求职、留学生求职,以及产品经理、运营、市场、咨询、AI 产品、AI Coding、数据分析、技术岗等目标岗位准备。
weeelin98/ResumeDom
Build, assess, review, and tailor evidence-backed US-market technology resumes for computer-science interns and new graduates.
tao943/build-resume-portfolio-site
A skill your agent uses when turning resume materials and an optional job description into verified, approved content and a runnable React + Vite resume or portfolio site, or when redesigning an…
mubix/cyber-resume-reviewer-skill
Review, tailor, score, or rewrite IT and cybersecurity resumes.
Ssabby1/repo-to-resume-tailor
Analyze a full code repository and generate one resume-ready project description grounded in repository evidence.
browser-act/skills
This skill helps users extract GitHub repository project details and contributor contact information using keywords, stars, and update dates.
849879772/recruitops-agent
Run, diagnose, and validate local recruitment crawler operations.
849879772/recruitops-agent
Inspect recruitment schedules, detect conflicts, and manage local interview or test events.
849879772/recruitops-agent
Verify and update recorded applications from page evidence through the connected desktop or Edge browser bridge.
849879772/recruitops-agent
Search, explain, compare, and recommend persisted campus recruitment jobs.
Categories
Search, inspect, and explicitly process persisted recruitment mail with bounded model analysis and guarded application writes. Recruitment Mail is an agent skill from 849879772/recruitops-agent. Search, inspect, and explicitly process persisted recruitment mail with bounded model analysis and guarded application writes.
Recruitment Mail fits situations like: tasks that involve Recruiting and HR.
Run `npx skills add 849879772/recruitops-agent --skill recruitment-mail -a claude-code`. Or copy the skill folder (.agents/skills/recruitment-mail in 849879772/recruitops-agent) into .claude/skills/recruitment-mail in your project. Claude Code loads it when a task matches its description.
Run `npx skills add 849879772/recruitops-agent --skill recruitment-mail -a codex`. Or copy the skill folder (.agents/skills/recruitment-mail in 849879772/recruitops-agent) into .agents/skills/recruitment-mail in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add 849879772/recruitops-agent --skill recruitment-mail -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/recruitment-mail, .gemini/skills/recruitment-mail, .github/skills/recruitment-mail and .opencode/skills/recruitment-mail in your project.
SKILL.md names no scripts, command-line tools or credentials: Recruitment Mail is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md flagged 1 warning(s): tells the agent its actions are pre-authorized / not to stop for confirmation. Read the flagged lines before installing; the check is not a guarantee either way.
Recruitment Mail is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Recruitment Mail: Get Job (agentenatalie/get-job.skill, 632 stars), Resume Reviewer (weeelin98/ResumeDom, 173 stars), Build Resume Portfolio Site (tao943/build-resume-portfolio-site, 195 stars) and Cyber Resume Reviewer (mubix/cyber-resume-reviewer-skill, 184 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
849879772 (a GitHub user) maintains it in 849879772/recruitops-agent, which has 130 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on October 7, 2026.
Source: 849879772/recruitops-agent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.