resume-extraction
Extract a PDF, DOCX, pasted resume, or RenderCV YAML into a structured RenderCV-compatible candidate profile with source-backed facts and confidence.
Skill by kyle-kw
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/kyle-kw-resume-extraction
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/resume-extraction
What's inside
- Skill name
resume-extraction- Description
- Extract a PDF, DOCX, pasted resume, or RenderCV YAML into a structured RenderCV-compatible candidate profile with source-backed facts and confidence. Use when importing, normalizing, or validating a resume before job matching or tailoring.
- License
- MIT
- Instructions
- 96 lines in SKILL.md · view on GitHub
Files (2)
- SKILL.md
- openai.yaml · agents/
SKILL.md (first lines)
# Resume Extraction
Convert the supplied resume text into the JSON contract below. Treat the resume as the only source of biographical truth.
## Rules
1. Preserve names, employers, dates, degrees, metrics, links, and technologies exactly unless normalizing whitespace.
2. Never infer an employer, date, metric, responsibility, credential, or skill that is not supported by the source.
3. Put uncertain text in the closest field, lower its fact confidence, and set `confirmed` to `false`.
4. Keep accomplishment bullets concrete and concise. Do not turn ordinary responsibilities into invented achievements.
5. Reuse the supplied fallback profile when extraction is incomplete.
6. Return JSON only. Do not wrap it in Markdown.
7. Treat `rawText` as the source whether it came from a PDF text layer, DOCX, or page-by-page visual transcription. Page markers such as `--- Page 2 ---` are source identifiers, not resume content.
8. Keep every distinct job, project, and education record as a separate array item. Never merge employers, schools, degrees, or date ranges.
9. Split every date range into `startDate` and `endDate`. For `2024.12 - 至今`, return `startDate: "2024.12"` and `endDate: "至今"`. Never place a full range in one field and never add a leading dash.
10. Normalize degrees to `本科`, `硕士`, `博士`, or `其他`. For any other degree, set `degree` to `其他` and preserve the exact source wording in `degreeDetail`.
11. Every fact created during import must use `confirmed: false`; only the user can confirm imported facts.
## Output contract
Return one `ResumeProfile` object:
```json
{
"id": "resume-master",
"name": "",
"headline": "",
"email": "",
"phone": "",
"location": "",
"website": "",
"summary": "",
"templateId": "ai-engineering",
"professionalSkills": [{
"id": "",
"label": "核心方向",
"items": [""]
}],
"experiences": [{
"id": "",
"company": "",
"position": "",
"location": "",
"startDate": "",
"endDate": "",
"highlights": [""]
}],
"education": [{
"id": "",
"institution": "",
"area": "",
"degree": "",
"degreeDetail": "",
"startDate": "",
"endDate": "",
"highlights": []
}],
"projects": [{
"id": "",
"name": "",
"summary": "",
"startDate": "",
"endDate": "",
"highlights": []
}],
"certifications": [{
"id": "",
"name": "",
"issuer": "",
"date": ""
}],
"facts": [{
"id": "fact-stable-id",
"category": "identity|experience|education|skill|project|certification|other",
"value": "",
"source": "section and source excerpt identifier",
"confidence": 0.0,
"confirmed": false
}],
"preferences": {
"targetRoles": [],
"cities": [],
"remotePreference": "flexible",
"energizingTasks": [],
"drainingTasks": [],
"hardConstraints": []
},
"sourceFileName": "",
"updatedAt": "ISO-8601",
"version": 1
}
```
Use a confidence of at least `0.9` only for directly readable source claims. Keep user preferences empty; they are collected separately.From kyle-kw/ai-job-app, MIT.
More from kyle-kw/ai-job-app
- 0.777score
job-fit
kyle-kw
Evaluate a job posting against a confirmed resume and stated job preferences, producing evidence-backed fit dimensions, hard constraints, strengths, gaps…
SkillAFreshness: A★ 107Claude Code +9 - 0.777score
interview-preparation
kyle-kw
Generate a focused interview preparation plan from aggregated local job-market statistics and, when available, confirmed resume facts.
SkillAFreshness: A★ 107Claude Code +9 - 0.777score
greeting-message
kyle-kw
Generate one concise Chinese greeting for a recruiter using a target job and confirmed resume facts.
SkillAFreshness: A★ 107Claude Code +9 - 0.773score
resume-coverage
kyle-kw
Classify how a trusted resume covers a fixed set of job requirements using explicit resume paths and confirmed fact IDs.
SkillAFreshness: A★ 107Claude Code +9 - 0.773score
report-competitiveness
kyle-kw
Classify how a trusted master resume covers a fixed list of aggregated market skills using verifiable resume paths and confirmed fact IDs.
SkillAFreshness: A★ 107Claude Code +9 - 0.773score
resume-chat
kyle-kw
Propose reviewable structured edits to a local master resume from a user conversation, optionally using one job or a server-resolved local market sample as…
SkillAFreshness: A★ 107Claude Code +9 - 0.773score
job-detail-extraction
kyle-kw
Extract clean, source-grounded job, company, and business-registration fields from a noisy BOSS job-detail page captured as plain text.
SkillAFreshness: A★ 107Claude Code +9
Compare and alternatives
Featured in
Signals
- Stars
- 107
- Forks
- 5
- Open issues
- 1
- Last commit (this folder)
- Jul 12, 2026 (3 months ago)
- Last release
- Oct 10, 2026 (17 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/kyle-kw/ai-job-app
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from kyle-kw
- 0.777score
job-fit
kyle-kw
Evaluate a job posting against a confirmed resume and stated job preferences, producing evidence-backed fit dimensions, hard constraints, strengths, gaps…
SkillAFreshness: A★ 107Claude Code +9 - 0.777score
interview-preparation
kyle-kw
Generate a focused interview preparation plan from aggregated local job-market statistics and, when available, confirmed resume facts.
SkillAFreshness: A★ 107Claude Code +9 - 0.777score
greeting-message
kyle-kw
Generate one concise Chinese greeting for a recruiter using a target job and confirmed resume facts.
SkillAFreshness: A★ 107Claude Code +9 - 0.773score
resume-coverage
kyle-kw
Classify how a trusted resume covers a fixed set of job requirements using explicit resume paths and confirmed fact IDs.
SkillAFreshness: A★ 107Claude Code +9 - 0.773score
report-competitiveness
kyle-kw
Classify how a trusted master resume covers a fixed list of aggregated market skills using verifiable resume paths and confirmed fact IDs.
SkillAFreshness: A★ 107Claude Code +9 - 0.773score
resume-chat
kyle-kw
Propose reviewable structured edits to a local master resume from a user conversation, optionally using one job or a server-resolved local market sample as…
SkillAFreshness: A★ 107Claude Code +9
Cite this page
resume-extraction skill. Agent Mart. https://agentmart.dev/skills/kyle-kw-resume-extraction (last updated 2026-10-24)