Internship Project Preparation Tool
LiuMengxuan04/shushu-internship-tool
Turns a target internship job description into a resume-ready, interview-ready project by finding and auditing GitHub projects and drafting resume bullets and interview Q&A.
Routes job-search requests to modes for evaluating offers, scanning portals, generating tailored CVs, tracking applications and drafting outreach, starting from a pasted job URL or description.
$ npx skills add career-ops-hq/career-ops --skill career-ops -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install career-ops-hq/career-ops career-ops --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/career-ops-hq/career-ops.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/career-ops .claude/skills/career-ops && 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 "career-ops" agent skill from https://github.com/career-ops-hq/career-ops/tree/main/.agents/skills/career-ops into .claude/skills/career-ops/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "career-ops", 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/career-ops-hq/career-ops/tree/main/.agents/skills/career-opsType 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 career-ops-hq/career-ops --skill career-ops -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install career-ops-hq/career-ops career-ops --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/career-ops-hq/career-ops.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/career-ops .agents/skills/career-ops && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "career-ops" agent skill from https://github.com/career-ops-hq/career-ops/tree/main/.agents/skills/career-ops into .agents/skills/career-ops/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "career-ops", 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 career-ops-hq/career-ops --skill career-ops -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install career-ops-hq/career-ops career-ops --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/career-ops-hq/career-ops.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/career-ops .cursor/skills/career-ops && 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 "career-ops" agent skill from https://github.com/career-ops-hq/career-ops/tree/main/.agents/skills/career-ops into .cursor/skills/career-ops/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "career-ops", 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/career-ops-hq/career-ops.git --path .agents/skills/career-ops--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 career-ops-hq/career-ops --skill career-ops -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install career-ops-hq/career-ops career-ops --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/career-ops-hq/career-ops.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/career-ops .gemini/skills/career-ops && 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 "career-ops" agent skill from https://github.com/career-ops-hq/career-ops/tree/main/.agents/skills/career-ops into .gemini/skills/career-ops/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "career-ops", 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 career-ops-hq/career-ops career-opsInstalls 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 career-ops-hq/career-ops --skill career-ops -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/career-ops-hq/career-ops.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/career-ops .github/skills/career-ops && 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 "career-ops" agent skill from https://github.com/career-ops-hq/career-ops/tree/main/.agents/skills/career-ops into .github/skills/career-ops/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "career-ops", 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 career-ops-hq/career-ops --skill career-ops -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install career-ops-hq/career-ops career-ops --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/career-ops-hq/career-ops.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/career-ops .opencode/skills/career-ops && 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 "career-ops" agent skill from https://github.com/career-ops-hq/career-ops/tree/main/.agents/skills/career-ops into .opencode/skills/career-ops/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "career-ops", 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.
career-opsRoutes job-search requests to modes for evaluating offers, scanning portals, generating tailored CVs, tracking applications and drafting outreach, starting from a pasted job URL or description.
career-ops is a job-search command center that runs inside several agent CLIs, and this skill is its router. It first finds the project root by walking up from the skill file until it reaches a folder holding both `AGENTS.md` and `modes/`, and it resolves every path against that root rather than the current directory. If neither marker is found, it stops and asks you to locate the checkout.
The router picks a mode from the input. An empty call shows a command menu, a pasted job description or URL starts the auto-pipeline, and named modes such as `oferta`, `ofertas`, `contacto` and `deep` go to their own flows. Invocation differs by tool: a slash command where the CLI registers one, auto-discovery in Cursor and Pi, and plain-language prompts in Codex, including headless runs with `codex exec`. The project description adds that it scores jobs against your CV, tailors resumes and cover letters, prepares interviews and leaves the final submit step to you.
Read from SKILL.md and the folder at commit 9570926. 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.
Shell commands in SKILL.md call:
codexFrom 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.
Career-Ops Job Search Center loads about 3.6k tokens when it runs. Until then it costs about 71 tokens; SKILL.md has 1,097 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 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.
The full file from career-ops-hq/career-ops at commit 9570926, republished under its MIT licence (© career-ops-hq). 1,097 words, ~3,587 tokens.
.claude/skills/career-ops/SKILL.md (or your agent's skills folder).career-ops is a multi-CLI job-search command center. The routing below is shared across supported agent CLIs even when the invocation surface differs.
Before reading any repo-relative path, derive PROJECT_ROOT from this loaded SKILL.md: start at the skill file's directory and walk upward until the nearest directory containing both AGENTS.md and modes/. Resolve every path in this router (modes/, config/, data/, scripts, templates, and output paths) against PROJECT_ROOT, never against the process's current working directory. This is required even when the checkout itself is nested (for example Development\\career-ops) or the command starts from a subdirectory. If those two sentinels cannot be found, stop and locate the career-ops checkout before reading or writing files.
/career-ops..cursor/skills/career-ops/ and is auto-discovered; ask for a mode by name, or paste a JD/URL to trigger auto-pipeline..agents/skills/career-ops/ and exposed as /skill:career-ops; AGENTS.md loads from the repo root as project context, so there is no wrapper file. Headless Pi workers use pi -p "prompt". Project skill discovery follows Pi's per-folder trust decision: /trust applies to future Pi processes, so restart pi before invoking /skill:career-ops (-a trusts a single run and needs no restart).codex in the repo root. Slash commands are not guaranteed in Codex, so ask Codex to run the same mode by name if /career-ops is unavailable.codex exec "prompt".Codex prompt examples that map to the same router semantics:
Evaluate this JD with career-ops auto-pipeline: https://company.com/jobs/123
Run the career-ops scan mode and summarize new matches.
Run the career-ops pipeline mode for data/pipeline.md.
Run the career-ops pdf mode for the latest evaluated role.
Run the career-ops tracker mode and summarize the current statuses.Determine the mode from $mode:
| Input | Mode |
|---|---|
| (empty / no args) | discovery -- Show command menu |
| JD text or URL (no sub-command) | auto-pipeline |
oferta | oferta |
ofertas | ofertas |
contacto | contacto |
deep | deep |
interview-prep | interview-prep |
interview | interview |
master-profile | master-profile |
intake | intake |
eu-swe | regional/eu-swe |
interview/plan | interview/plan |
interview/practice | interview/practice |
interview/debrief | interview/debrief |
pdf | pdf |
ats | ats |
text | text |
latex | latex |
latex-tex | latex-tex |
email | email |
add | add |
expand | expand |
training | training |
project | project |
tracker | tracker |
agent-inbox | agent-inbox |
inbox | agent-inbox |
pipeline | pipeline |
apply | apply |
scan | scan |
discover | discover |
triage | triage |
batch | batch |
patterns | patterns |
calibrate | calibrate |
offer-prep | offer-prep |
titles | titles |
upskill | upskill |
followup | followup |
reply-watch | reply-watch |
outcome | outcome |
interview-redflag | interview-redflag |
update | update |
cover | cover |
Auto-pipeline detection: If $mode is not a known sub-command AND contains JD text (keywords: "responsibilities", "requirements", "qualifications", "about the role", "we're looking for", company name + role) or a URL to a JD, execute auto-pipeline.
If $mode is not a sub-command AND doesn't look like a JD, show discovery.
Before executing any mode, read config/profile.yml if it exists and resolve:
language.output → ISO language code for human-facing output. Default: en.language.modes_dir → optional market-mode directory. This controls market vocabulary and local evaluation rules only. It may be a single string (one declared market, the historical default) or a list of declared candidate markets for a candidate genuinely running parallel campaigns in more than one market at once (#3793), e.g. modes_dir: [modes/de, modes/zh]. When a list is given, the FIRST entry is primary and supplies the evaluation-mode file (Block A-F rules can only run from one market's file at a time); EVERY declared market's _shared.md is loaded into context. modes itself is a valid declared candidate for markets without a localized directory; when first it supplies modes/oferta.md, and its baseline modes/_shared.md is loaded once. Per posting, judge which declared market actually applies from the JD's own MARKET signals (hiring-entity jurisdiction, currency, benefits/legal vocabulary) — never from the JD's language alone. If genuinely ambiguous, an interactive session asks and stops before persistence; an unattended worker uses the primary market and records that fallback in the report header or Block G.Inject this directive after loading the mode instructions and before producing any user-visible content:
Write all human-facing output in
{language.output}regardless of the language of these instructions or of the job description. This includes reports, tracker notes, PDFs, cover letters, outreach, interview prep, form answers, and summaries. Iflanguage.modes_dirsupplies market-specific vocabulary (one market, or several declared at once), keep the market logic but explain terms in{language.output}when needed.
language.output is authoritative for prose. modes_dir is market context; it must not force the prose language.
If your CLI supports /career-ops, show this menu. In Codex, surface the same options in plain text and map the requested mode the same way.
Concrete equivalents for Codex prompt-driven sessions:
/career-ops {JD} ↔ "Evaluate this JD with career-ops auto-pipeline: {JD or URL}"
/career-ops scan ↔ "Run the career-ops scan mode and summarize new matches."
/career-ops pipeline ↔ "Run the career-ops pipeline mode for data/pipeline.md."
/career-ops pdf ↔ "Run the career-ops pdf mode for the latest evaluated role."
/career-ops email ↔ "Run the career-ops email mode for the latest evaluated role."
/career-ops tracker ↔ "Run the career-ops tracker mode and summarize the current statuses."Show this menu:
career-ops -- Command Center
Available commands:
/career-ops {JD} → AUTO-PIPELINE: evaluate + report + PDF + tracker (paste text or URL)
/career-ops pipeline → Process pending URLs from inbox (data/pipeline.md)
/career-ops oferta → Evaluation only A-F (no auto PDF)
/career-ops ofertas → Compare and rank multiple offers
/career-ops contacto → LinkedIn power move: find contacts + draft message
/career-ops deep → Deep research prompt about company
/career-ops interview-prep → Generate company-specific interview prep doc
/career-ops interview → Interactive profile/CV onboarding interview
/career-ops master-profile → Import, review, and validate your Master Career Profile
/career-ops intake → Build or enrich your profile from documents/ (master CV, LinkedIn export; nothing written without confirm)
/career-ops eu-swe → Calibrate a European SWE application before CV/apply/interview
/career-ops interview/plan → Time-blocked prep plan for an upcoming interview
/career-ops interview/practice → Practice interview, one question at a time with feedback
/career-ops interview/debrief → Post-interview debrief: close gaps, predict next round
/career-ops pdf → PDF only, ATS-optimized CV
/career-ops ats → ATS-friendliness check of a generated CV (score + fixable issues)
/career-ops text → Tailored markdown CV (mirrors cv.md, no PDF)
/career-ops latex → Export CV as LaTeX/Overleaf .tex
/career-ops latex-tex → Tailor your own resume.tex in place (opt-in; cv.md stays default)
/career-ops cover → Cover letter: standalone JD paste or /career-ops cover {slug}
/career-ops email → Formal application email draft (draft-only; never sends, submits, or clicks)
/career-ops add → Add a project/paper/role to your CV (fetch + preview + confirm)
/career-ops expand → Auto-discover and add missing competencies from profile links
/career-ops training → Evaluate course/cert against North Star
/career-ops project → Evaluate portfolio project idea
/career-ops tracker → Application status overview
/career-ops agent-inbox → Queue/drain requests for the next session (data/agent-inbox.md)
/career-ops apply → Live application assistant (reads form + generates answers)
/career-ops scan → Scan portals and discover new offers
/career-ops discover → Resolve a company list to scannable ATS boards + append to portals.yml (zero-token)
/career-ops triage → Fast first-pass go/no-go score from modes/_brief.md (writes no files)
/career-ops batch → Batch processing with parallel workers
/career-ops patterns → Analyze rejection patterns and improve targeting
/career-ops calibrate → Check whether evaluation scores predict your real outcomes (advisory only)
/career-ops offer-prep → Read a received offer/contract with the candidate: clause walk + lawyer questions (not legal advice)
/career-ops titles → Suggest adjacent job titles from your CV to broaden the search
/career-ops upskill → Aggregate skill-gap analysis from your evaluated reports
/career-ops followup → Follow-up cadence tracker: flag overdue, generate drafts
/career-ops outcome → Record application outcome & archive artifacts
/career-ops update → Update career-ops system files with diff preview + compat check
Inbox: add URLs to data/pipeline.md → /career-ops pipeline
Or paste a JD directly to run the full pipeline.After determining the mode, load the necessary files before executing:
If modes/_custom.md exists, read it after modes/_profile.md and before the selected mode file. It contains user house rules and procedural preferences. It may override workflow/style defaults, but it never adds factual claims about the candidate.
Resolve language.modes_dir before applying the path shorthand below. With no setting, use modes. With a scalar directory, preserve the existing behavior: use that directory's _shared.md and localized mode file when it provides one. With a list, load every declared directory's _shared.md exactly once (including the baseline modes/_shared.md when modes appears), but use only the FIRST entry's evaluation-mode file for Blocks A-F; later entries contribute context, never a competing evaluation file. User-layer _profile.md and _custom.md remain under modes/.
_shared.md + their mode fileRead the resolved shared context (default modes/_shared.md) + modes/_profile.md (if exists) + modes/_custom.md (if exists) + the resolved selected mode file (default modes/{mode}.md). For an A-F evaluation, that selected file is the primary directory's evaluation mode; do not also load an evaluation file from a secondary directory.
Applies to: auto-pipeline, oferta, ofertas, pdf, text, contacto, apply, pipeline, scan, batch
Read modes/_profile.md (if exists) + modes/_custom.md (if exists) + modes/{mode}.md
Applies to: tracker, agent-inbox, deep, interview-prep, interview, master-profile, regional/eu-swe, interview/plan, interview/practice, interview/debrief, latex, latex-tex, training, project, patterns, titles, upskill, followup, reply-watch, outcome, cover, email, add, offer-prep, discover, intake, ats, calibrate
Read modes/{mode}.md only. Do not preload _shared.md, _profile.md or _custom.md: the mode file names the one context file it reads and the ones it must not. Values it takes from config/profile.yml (language.output, pipeline.triage_threshold) are resolved here and injected; the mode never reads that file itself.
Applies to: triage
For scan, apply (with Playwright), and pipeline (3+ URLs): launch as a worker/subagent with the resolved shared context + _profile.md (if exists) + _custom.md (if exists) + the resolved selected mode file injected into the worker prompt. If your CLI exposes an Agent(...) primitive, the call looks like this:
Agent(
subagent_type="general-purpose",
prompt="[output language directive]\n\n[content of modes/_shared.md, or resolved shared context: every declared _shared.md once]\n\n[content of modes/_profile.md if exists]\n\n[content of modes/_custom.md if exists]\n\n[content of modes/{mode}.md, or resolved selected mode file; primary evaluation file for Blocks A-F]\n\n[invocation-specific data]",
description="career-ops {mode}"
)Execute the instructions from the loaded mode file.
© career-ops-hq, 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/career-ops of career-ops-hq/career-ops.
Open the folder on GitHubat commit 9570926
Career-Ops Job Search Center 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 |
|---|---|---|---|---|---|---|
| Career-Ops Job Search Center this skillcareer-ops-hq/career-ops | 74k | — | ~3.6k | Automated safety check: Pass | MIT | |
| Internship Project Preparation ToolLiuMengxuan04/shushu-internship-tool | 2.1k | — | ~2.3k | Automated safety check: Pass | Custom licence | |
| Offer Negotiationreactive-resume/reactive-resume | 44k | — | ~10k | Automated safety check: Pass | MIT | |
| Job Application AssistantMadsLorentzen/ai-job-search | 45k | — | ~1.2k | Automated safety check: Notes | MIT | |
| Backend and Agent Project Selectorlishuangqiang/backend-agent-resume-scout | 350 | — | ~1.4k | Automated safety check: Pass | Apache-2.0 | |
| LLM Intern Skillwanyichen06/LLMInternSkill | 326 | — | ~1.2k | Automated safety check: Pass | MIT |
LiuMengxuan04/shushu-internship-tool
Turns a target internship job description into a resume-ready, interview-ready project by finding and auditing GitHub projects and drafting resume bullets and interview Q&A.
reactive-resume/reactive-resume
Evaluates and negotiates job offers. An agent skill from reactive-resume/reactive-resume.
MadsLorentzen/ai-job-search
Evaluates job postings against your profile, then tailors a LaTeX CV and cover letter and prepares interview answers for the roles you pursue.
lishuangqiang/backend-agent-resume-scout
Finds backend or AI agent projects on GitHub that are worth putting on a resume, checks them against local source and writes a Markdown resume package.
wanyichen06/LLMInternSkill
A skill your agent uses when polishing, diagnosing, tailoring, or exporting resumes for LLM, RAG, Agent, Agentic RL, post-training, pretraining, AIGC, search/ranking, multimodal, AI backend, or LLM…
reactive-resume/reactive-resume
Tailors one resume to one specific job posting. An agent skill from reactive-resume/reactive-resume.
career-ops-hq/career-ops
How to scan a job source through an Apify actor as a keyed provider.
career-ops-hq/career-ops
Pulls job leads from a Gmail label into the career-ops pipeline, extracting job URLs from DMARC-passing emails and de-duplicating against existing leads.
career-ops-hq/career-ops
Copies a career-ops application tracker into a Notion database and reads saved Notion records back into the pipeline as job leads.
Categories
Routes job-search requests to modes for evaluating offers, scanning portals, generating tailored CVs, tracking applications and drafting outreach, starting from a pasted job URL or description. career-ops is a job-search command center that runs inside several agent CLIs, and this skill is its router.md` and `modes/`, and it resolves every path against that root rather than the current directory.
Career-Ops Job Search Center fits situations like: evaluating a job posting you have a link to against your CV; scanning job portals for new matches; generating a tailored CV or PDF for a specific role; tracking applications and preparing for an interview.
Run `npx skills add career-ops-hq/career-ops --skill career-ops -a claude-code`. Or copy the skill folder (.agents/skills/career-ops in career-ops-hq/career-ops) into .claude/skills/career-ops in your project. Claude Code loads it when a task matches its description.
Run `npx skills add career-ops-hq/career-ops --skill career-ops -a codex`. Or copy the skill folder (.agents/skills/career-ops in career-ops-hq/career-ops) into .agents/skills/career-ops 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 career-ops-hq/career-ops --skill career-ops -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/career-ops, .gemini/skills/career-ops, .github/skills/career-ops and .opencode/skills/career-ops in your project.
Going by SKILL.md and its folder, Career-Ops Job Search Center needs the command-line tools its instructions call (codex). Our summary lists: A career-ops checkout containing `AGENTS.md` and a `modes/` folder; A supported agent CLI such as Claude Code, Codex, Cursor or Pi.
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 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.
Career-Ops Job Search Center is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.6k tokens (SKILL.md is roughly 14k 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 Career-Ops Job Search Center: Internship Project Preparation Tool (LiuMengxuan04/shushu-internship-tool, 2.1k stars), Offer Negotiation (reactive-resume/reactive-resume, 44k stars), Job Application Assistant (MadsLorentzen/ai-job-search, 45k stars) and Backend and Agent Project Selector (lishuangqiang/backend-agent-resume-scout, 350 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
career-ops-hq (a GitHub organization) maintains it in career-ops-hq/career-ops, which has 74,002 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 11, 2026.
Source: career-ops-hq/career-ops on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.