Install
$ agentstack add skill-dikondaashish-claude-agent-skills-job-pipeline-os ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Job Pipeline OS
A complete job search operating system that runs in local markdown files: pipeline tracking, tailored resumes and cover letters, interview prep, follow-up scripts, and visa-sponsorship-aware strategy. Uses a consistent data model per opportunity and supports add, tailor, prep, move, follow-up, weekly review, sponsorship check, and offer evaluation.
1. FIRST-TIME SETUP
If this skill has just been activated and no pipeline-config.md exists (or the user says "set up my pipeline"), ask the user once for the following and store the result in pipeline-config.md in the user's workspace or a designated folder:
| Field | Example | |-------|---------| | Full name | Jane Doe | | Target roles | Software Engineer, ML Engineer | | Target locations | San Francisco, Remote, New York | | Experience level | new grad / 1–3 yrs / 3–5 yrs / senior | | Visa status | US citizen / GC / OPT / H-1B / need sponsorship | | Target salary range | $X–$Y base (or "market") | | Deal-breakers | e.g., no startups under Series B; must be remote | | Resume text | User pastes full resume (stored for reuse) | | LinkedIn URL | profile link |
Confirm back and say: "Pipeline config saved. Use add [job URL] to add opportunities, tailor [company] for materials, prep [company] for interview prep, and weekly review for your dashboard."
2. DATA MODEL
Each opportunity is stored as opportunities/[company-slug].md. Use this exact structure (adapt section names if the user already has a different convention):
# [Company Name] — [Role Title]
## Details
- **URL:** [job posting URL]
- **Location:** [city / remote / hybrid]
- **Salary:** [range if listed]
- **Stage:** TARGET | APPLIED | PHONE_SCREEN | TECHNICAL | ONSITE | OFFER | ACCEPTED | REJECTED | WITHDRAWN
- **Applied:** YYYY-MM-DD
- **Last Updated:** YYYY-MM-DD
- **Visa Sponsorship:** YES | NO | UNKNOWN | ASKED-PENDING
- **Referral:** [name or NONE]
- **Source:** LinkedIn | company site | referral | recruiter
## Contacts
- [Name] — [Title] — [email or LinkedIn]
## Materials Used
- Resume version: v1 | v2 | custom
- Cover letter: yes | no
- Outreach: yes | no, date
## Timeline
- YYYY-MM-DD: [event, e.g., "Recruiter screen scheduled"]
## Notes
[Anything relevant]
## Interview Notes
[Questions asked, answers given, feedback received]
When creating or updating an opportunity file, use the company-slug (lowercase, hyphens, no spaces) as the filename, e.g. acme-corp.md, google.md.
3. COMMANDS
Implement each command as a workflow. Commands are case-insensitive; [company] can be company name or slug.
COMMAND: add [job URL or description]
- Parse the job description (JD): Extract role title, company name, location, requirements (must-haves), nice-to-haves.
- Detect sponsorship language:
- "must be authorized to work" / "no sponsorship" / "authorized to work in the US without sponsorship" → NO
- "will sponsor" / "visa sponsorship available" / "H-1B sponsorship" → YES
- No mention → UNKNOWN (tell user to investigate)
- Create the opportunity file under opportunities/[company-slug].md with Stage = TARGET (or APPLIED if they already applied).
- Output: "Added [Company] — [Role]. Sponsorship: [YES/NO/UNKNOWN]. Want me to generate tailored materials now?"
COMMAND: tailor [company]
- Load the user's resume from pipeline-config.md (or resume-base.md / resume-ml.md / resume-backend.md as appropriate).
- Load the opportunity file for [company].
- Output:
- (a) Tailored resume bullets — Reorder and reword to match JD keywords; suggest which existing bullets to lead with.
- (b) Cover letter — Company-specific; reference their products, mission, or recent news; 3–4 short paragraphs.
- (c) Outreach message — For LinkedIn connection or referral request (1–2 short paragraphs).
- (d) Key skills to emphasize — List 5–7 from the JD to highlight in interview and materials.
Use [references/resume-templates.md](references/resume-templates.md) for ATS and formatting rules.
COMMAND: prep [company]
- Load the opportunity file for [company].
- Research the company (use web search): e.g., "[company] engineering culture values 2025", "[company] tech stack", "[company] recent news".
- Output:
- (a) Company brief — Mission, product, recent news, tech stack.
- (b) 15 likely interview questions — Based on JD (behavioral + technical where applicable).
- (c) STAR stories — Map 3–5 stories from the user's resume to their requirements; suggest which story for which question.
- (d) 5 smart questions to ask the interviewer — Role-specific, not generic.
- (e) Red flags to watch for — Culture, stability, sponsorship vagueness.
COMMAND: move [company] [new stage]
- Update the opportunity file: set Stage to the new stage (e.g., PHONE_SCREEN, TECHNICAL, ONSITE, OFFER, REJECTED, WITHDRAWN).
- Update Last Updated to today.
- If moved to REJECTED: Ask: "Want to send a post-rejection email to keep the relationship warm?" If yes, generate one using [
references/outreach-scripts.md](references/outreach-scripts.md). - If moved to OFFER: Automatically run the offer evaluation workflow (see command evaluate offer [company]).
COMMAND: follow-up [company]
- Load the opportunity file; check days since last contact (from Timeline or Applied date).
- Generate the appropriate follow-up email based on stage:
- After application (e.g., 7 days): "Following up on my application for [role]…"
- After interview (24–48 hrs): Thank-you note with a specific callback to a discussion point.
- After final round (e.g., 5 days no response): Brief, professional status check.
- Output the email and suggest adding a Timeline entry when they send it.
Use [references/outreach-scripts.md](references/outreach-scripts.md) for tone and templates.
COMMAND: weekly review
- Scan all files in opportunities/ (all opportunity markdown files).
- Aggregate by Stage: TARGET, APPLIED, PHONE_SCREEN, TECHNICAL, ONSITE, OFFER, ACCEPTED, REJECTED, WITHDRAWN.
- Output in this format:
📊 JOB SEARCH WEEKLY REVIEW — [week of date]
PIPELINE HEALTH:
🎯 Targets: [n]
📤 Applied: [n]
📞 Phone screens: [n]
💻 Technicals: [n]
🏢 Onsites: [n]
💰 Offers: [n]
⚡ THIS WEEK'S ACTIONS:
- [Company]: follow up — 7 days since application
- [Company]: interview in 3 days — run prep command
- [Company]: offer expires [date] — evaluate now
🔴 STALE (no update in 14+ days):
- [list companies to follow up or remove]
💡 RECOMMENDATION:
[One line: e.g., "Apply rate is low — add 5 more targets" / "Interview-to-offer ratio is strong — focus on closing" / "2 offers expiring — prioritize evaluation"]
Optionally run scripts/pipeline-stats.py if the user has it, and include or summarize its output (application rate, response rate, interview rate, offer rate, bar chart).
COMMAND: sponsorship check [company]
- Load [
references/sponsorship-guide.md](references/sponsorship-guide.md). - Check: Is this company known to sponsor H-1B? (from guide or web: DOL LCA data, company careers page.)
- Generate an email the user can send to HR/recruiter to ask about sponsorship without hurting candidacy:
Hi [name],
I'm excited about the [role] position and wanted to ask about visa sponsorship. I'm currently on [OPT/STEM OPT] and will need H-1B sponsorship in [timeframe]. Is this something [Company] supports for this role? I want to make sure we're aligned before we go further.
Thanks,
[Your name]
- If company is unknown, suggest checking the USCIS LCA database or company careers page and offer to draft the email anyway.
COMMAND: evaluate offer [company]
- Load [
references/offer-evaluation.md](references/offer-evaluation.md). - Ask the user (or use data from the opportunity file if already there): base salary, bonus, equity (type, amount, vesting), benefits, location, remote policy, visa sponsorship plan (if applicable), start date.
- Output:
- Compensation vs market: above / at / below (for role and level).
- Equity analysis: worth considering / not worth much at typical outcomes (brief caveat).
- Visa path: Will they sponsor? Timeline? Any risk?
- Total comp vs alternatives in pipeline (if any other offers or late-stage).
- Questions to ask before accepting (vesting, benefits, role scope, sponsorship in writing).
- Negotiation leverage points (e.g., competing offer, signing bonus, start date).
Do not invent market numbers; use ranges from the reference or say "compare to levels.fyi / Glassdoor for your level and location."
4. VISA SPONSORSHIP MODULE
Load [references/sponsorship-guide.md](references/sponsorship-guide.md) whenever the user's pipeline-config indicates they need sponsorship (OPT, H-1B, etc.).
Quick reference:
- Almost always sponsor: Google, Meta, Amazon, Microsoft, Apple, Netflix, Salesforce, Uber, Lyft, Airbnb, Stripe, most Big Tech.
- Usually sponsor (Series B+): Most well-funded startups with US entities.
- Rarely sponsor: Early-stage startups, many non-tech companies, agencies, some regional employers.
Timeline reality check for OPT holders:
- 12-month OPT: Must get H-1B (or other status) by end of OPT or leave/change status.
- STEM OPT (36 months total): Must get H-1B by end of 24-month extension if staying in US.
- H-1B lottery: Registration typically March; cap selection; filing by employer; start October 1 (fiscal year).
- If not selected: Company can re-register next year; consider cap-gap if on OPT when H-1B is filed.
- O-1: Alternative for "extraordinary ability"; some companies open to this for senior hires.
When adding or tailoring for a company, flag sponsorship (YES/NO/UNKNOWN) and suggest sponsorship check [company] or the HR email when UNKNOWN.
5. RESUME VERSION MANAGER
Track multiple resume versions so tailoring can start from the right base:
| File | Use case | |------|----------| | resume-base.md (or pipeline-config resume section) | Master / general version | | resume-ml.md | ML/AI-focused variant | | resume-backend.md | Backend/systems-focused variant | | resume-frontend.md | Frontend-focused variant (optional) |
When tailoring:
- If the JD is ML/AI-heavy → suggest starting from resume-ml.md.
- If backend/infra → resume-backend.md.
- Otherwise → resume-base.md or the main resume in pipeline-config.
In the opportunity file, record Resume version: v1 / v2 / custom so the user knows which variant was used for that application.
Scripts
scripts/pipeline-stats.py — When the user runs weekly review or asks for "pipeline stats", run this script if available. It reads all **opportunities/.md* files and outputs:
- Application rate, response rate, interview rate, offer rate
- ASCII bar chart of pipeline stages
- Average days per stage
- Benchmarks (e.g., "Many engineers apply to 100–150 companies, get ~10–15 screens, 3–5 onsites, 1–2 offers")
If the script is not present or fails, compute a simple count of stages from the opportunity files and show the weekly review format without the script output.
References
| File | When to use | |------|-------------| | [references/sponsorship-guide.md](references/sponsorship-guide.md) | Sponsorship check; visa timeline; how to ask HR; red flags | | [references/resume-templates.md](references/resume-templates.md) | Tailoring; ATS rules; bullet format (action + metric + impact) | | [references/outreach-scripts.md](references/outreach-scripts.md) | Cold/warm outreach; referral request; recruiter reply; post-rejection | | [references/offer-evaluation.md](references/offer-evaluation.md) | Evaluate offer; total comp; equity; negotiation; what not to say |
Notes for Skill Maintainers
- File locations: Assume opportunities live in opportunities/ and config in pipeline-config.md unless the user specifies otherwise. Create the folder/file when the user first runs add or setup.
- Company slug: Derive from company name (lowercase, replace spaces with hyphens, remove punctuation).
- Web search: Use for company research in prep and for sponsorship/LCA lookups when needed; do not invent sponsorship status.
- No live APIs: This skill works offline-first with markdown; no requirement to call external APIs except for optional web search for prep and sponsorship.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: dikondaashish
- Source: dikondaashish/Claude-agent-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.