Skip to content
Back to skills

jobhunt

ASecurity

Korean developer job search, end to end — finds postings (Wanted, Jumpit, LinkedIn, Saramin, JobKorea, company career sites), scores them against the user's experience, builds a tailored resume A4 PDF, writes cover-letter answers, researches the company, prepares and drills interviews, and logs results. Use for finding or evaluating postings, a company-specific resume or cover letter, interview prep or mock interviews, and application status.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 7, 2026
ai-agentspythongobashgit

Works with

  • claude code

Security analysis

A100/100

Pro scans all 13 files and shows the line behind each finding

Scanned October 7, 2026

npx -y skills add jojaden/jobhunt --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of jobhunt?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for jobhunt
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/jojaden-jobhunt-jobhunt/badge)](https://www.skillsdirectory.com/skills/jojaden-jobhunt-jobhunt)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: jobhunt
description: Korean developer job search, end to end — finds postings (Wanted, Jumpit, LinkedIn, Saramin, JobKorea, company career sites), scores them against the user's experience, builds a tailored resume A4 PDF, writes cover-letter answers, researches the company, prepares and drills interviews, and logs results. Use for finding or evaluating postings, a company-specific resume or cover letter, interview prep or mock interviews, and application status.
argument-hint: "[menu | onboard | scan | evaluate <url> | tailor | cover | deep | interview [plan|practice|debrief] | track | outcome | report]"
---

# Find postings → evaluate → apply → interview — router

Resume content lives in yaml; layout and build are `scripts/render.py`. All personal data lives in `data/` and never goes to git.
Save every fact, requirement, or judgment correction the user gives into the matching file under `data/` right away, so the next run reuses it. Screening and tailoring get sharper with use.
Full design: `docs/ROADMAP.md`.

**Language.** These instruction files are English for the agent only. Everything the user sees is Korean: replies, questions, reports, tables and their headings, files written under `data/`, and resume text. Korean strings quoted in these files (state values, section headings, templates, example sentences) are used verbatim.

## Repository

The folder holding this SKILL.md is the repository root (`scripts/setup.sh` links the skill folder to the repository). Every path and command below is relative to the repository root.

```
SKILL.md                    this file (routes to modes)
modes/_shared.md            shared rules, sources of truth, data/ file map, Korean hiring terms (always read first)
modes/onboard.md            first-time setup, personalization file check
modes/scan.md               finding postings and first-pass screening
modes/evaluate.md           evaluating a posting (gates, requirement map, tailoring plan)
modes/tailor.md             writing, building, and reviewing a tailored resume
modes/cover.md              cover letter and application-form answers
modes/deep.md               company research note (why this company, reverse questions, red flags)
modes/interview.md          interview plan · practice drill · debrief · red flags
modes/track.md              application tracker
modes/outcome.md            patterns across results and debriefs → rule changes
scripts/render.py           yaml → HTML → PDF + PNG, designs A/B/C, runs post-build checks
scripts/check.py            page count · orphaned headings · links · placeholders · style checks
scripts/check_links.py      link reachability (stdlib only, runs anywhere)
scripts/git_log.sh          author-filtered commit log from a local git repository
scripts/setup.sh            skill link into installed agents (~/.claude/skills, ~/.codex/skills, or SKILLS_DIR) + Playwright Chromium, fonts (Pretendard, Noto Sans/Serif CJK KR), poppler
scripts/scan.py             posting collection (Wanted · Jumpit · LinkedIn · Saramin · Greenhouse · Lever · Toss · NHN · Kakao · Naver · Baemin · LINE · greetinghr · ninehire · plain-HTML career pages) → filters → pipeline.md
scripts/alive.py            closing check for tracked postings
scripts/tracker.py          application log (add/set) and combined report table (report)
scripts/score.py            posting score (line-level judgment file → per-item scores)
scripts/cover_check.py      cover-letter answers: character counts per limit + style rules
scripts/report_html.py      posting report as one HTML file
scripts/discover.py         company discovery (tech blogs · GitHub · Wanted · known companies → career site and ATS detection → sources.yaml)
scripts/weekly.sh           the LLM-free part of the weekly scan (scan → alive → report)
scripts/providers/          per-site collectors
references/sources.md       per-site collection method (endpoints, body location, closing check)
references/scoring.md       posting scoring (classification, calculation, calibration)
references/judgment.md      what the agent judges beyond the scripts (score review, searching where scripts can't reach)
references/company_seed.yaml default candidates for company discovery (well-known Korean dev companies)
references/yaml_schema.md   resume yaml format
references/writing_rules.md sentence rules and how to check them
references/style_rules.yaml banned words · translationese · symbol limits (read by check.py)
references/resume_guide.md  general resume rules (project count, numbers, links …)
references/cover_letter.md  cover-letter structure, banned content, length
references/interview_questions.md how interviewers ask: question styles, follow-up patterns, answer shapes, topic map
examples/example.yaml       fictional example person
docs/ROADMAP.md             design and stages
data/                       user data (git-ignored; only the structure is committed)
  profile/ experience/ preferences/ portfolio/ search/ job_postings/ applications/ resumes/ output/ interview/
```

## On start

1. Go to the repository root. If the skill folder is a link, that is the folder it points to. If this environment cannot reach the folder (a cloud workspace, say), ask the user to connect the repository folder; if there is no repository, ask for its GitHub URL and clone it.
2. Read `modes/_shared.md`.
3. Run the session-start check in `modes/onboard.md`. Tell the user about any missing personalization file.
4. Read `data/preferences/standing.md`. Anything already decided there is settled; use it without asking again.
5. If the host attaches project files to this session (e.g. a Claude project, a Codex workspace), also check the finalized yaml and guide documents there.

## Modes

This skill is one router over several modes; they share `data/`, so one entry point keeps the steps connected. Pick the mode from the argument when the host passes one (`/jobhunt interview practice`), otherwise from the request. Hosts without slash commands get the same result from "jobhunt 의 interview 모드로 …".

| Argument | Example request | Mode |
|---|---|---|
| (none), `menu` | "뭐 할 수 있어?", "메뉴" | show the menu below |
| `onboard` | "처음 설정", "내 조건 바꿀래", "목표 역할 추가" | `modes/onboard.md` |
| `scan` | "공고 찾아줘", "새 공고 있어?", "주간 스캔" | `modes/scan.md` (run `bash scripts/weekly.sh` first) |
| `scan discover` | "회사 더 찾아줘", "수집 회사 넓혀줘" | `modes/scan.md` step 0 (`scripts/discover.py`) |
| `scan triage` | "새로 수집한 공고 선별해줘" | `modes/scan.md` from step 4 |
| `report` | "공고 현황 보여줘", "표로 보여줘" | `python3 scripts/report_html.py`, then "Showing the posting report" below |
| `evaluate` | a posting URL or body, "이 공고 어때?" | `modes/evaluate.md`, then the auto flow below |
| `tailor` | "이 공고용 이력서 만들어줘", "이력서 고쳐줘", "다시 빌드" | `modes/tailor.md` (no evaluation yet → offer evaluate first) |
| `cover` | "자소서 써줘", "지원서 문항 답 써줘" | `modes/cover.md` |
| `deep` | "이 회사 조사해줘", "어떤 회사야?" | `modes/deep.md` |
| `interview plan` | "면접 준비", "prep {회사}" | `modes/interview.md` plan |
| `interview practice` | "모의 면접", "예상 질문으로 연습", "꼬리질문 해줘" | `modes/interview.md` practice |
| `interview debrief` | "면접 봤어", "면접에서 이런 질문 받았어" | `modes/interview.md` debrief |
| `track` | "지원했어", "서류 붙었어", "떨어졌어", "지원 현황" | `modes/track.md` (`scripts/tracker.py`) |
| `outcome` | "결과 분석해줘", "왜 자꾸 떨어지지" | `modes/outcome.md` |

### Menu

Shown in Korean when no mode is given: one line per mode with its argument and an example request, grouped as 공고 찾기 (`scan`, `report`) · 지원 준비 (`evaluate`, `tailor`, `cover`, `deep`) · 면접 (`interview plan|practice|debrief`) · 기록·학습 (`track`, `outcome`, `onboard`). End with the next step that fits the user's current state (e.g. new postings waiting to be screened, an interview scheduled in the tracker memo).

### Auto flow from a posting

Given a posting URL or body with no other instruction: evaluate → (user decides to apply) tailor → cover if the form has questions → track `지원함` → (document pass) deep + interview plan → interview practice → debrief after each stage. Confirm with the user between steps; never submit anything on the user's behalf.

### Showing the posting report

The report is one self-contained HTML file so any agent (Claude Code, Codex, Grok, …) and any browser can open it. How to put it in front of the user depends on the host, never the other way round:

- Host that can publish HTML pages (e.g. Claude Artifacts): also write the skeleton-less version with `--fragment <path>` and publish that file; keep publishing to the same page so the link stays.
- Any other host: open `data/search/reports/postings.html` in the user's browser (`open` on macOS) or give the path.
- Text-only fallback: `python3 scripts/tracker.py report --alive` prints the same rows as a Markdown table.

Do not hand-write report HTML or restyle it per session; change `scripts/report_html.py` and `DESIGN.md` together when the design changes.

Files in this skill

  • .impeccable/design.json26 KB
  • AGENTS.md8.8 KB
  • CLAUDE.md313 B
  • DESIGN.md19.2 KB
  • PRODUCT.md3.2 KB
  • README.en.md21.9 KB
  • SKILL.md9.2 KB
  • assets/design-b-p2.png65.5 KB
  • assets/flow.en.png80.1 KB
  • assets/flow.ko.png70.5 KB
  • data/README.md1.9 KB
  • docs/ROADMAP.md6.3 KB
  • examples/example.yaml4.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…