agentsclimarketplace

Editorial resume

Skill wilson534/editorial-resume

Single-page A4 PDF resume skill for Claude Code / Codex — turn your context into a tier-1-tech-grade resume in editorial bilingual style.

Install
npx -y skills add wilson534/editorial-resume

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Generate a single-page A4 PDF resume in editorial bilingual (中/英) style — the kind that lands top-tier tech jobs. Trigger when the user asks to build, write, update, polish, or export their resume; or wants a "looks-like-Peng-Zhiwei's-resume" PDF. Reads the user's context (chat history, attached docs, GitHub repos, LinkedIn dump, prior drafts) and produces a printable PDF without asking 20 questions.

SKILL.md

5.5 KB, as published. Nobody here has run it

Editorial Resume

A single-page A4 resume PDF generator with editorial bilingual layout. Outputs resume.pdf from the user's context with zero or minimal questions.

When to use

  • User asks "帮我做简历 / write my resume / update my CV / export my resume to PDF"
  • User wants a printable PDF version of their portfolio/profile
  • User uploads an old resume / LinkedIn export / GitHub README and wants it polished into a standard tier-1-tech resume

What you do

You are responsible for end-to-end PDF generation. Do NOT make the user fill a form. The whole point is "one shot from context".

Step 1 — Gather information from context

Mine the conversation history, any attached files, and the user's repo for:

FieldWhere to look
Name (Zh + En)first message, signature, GitHub profile, prior resume
Role / titleinferred from job target the user mentions, or current role
Tagline / one-linerwhat kind of work they ship; pull from their bio
ContactsGitHub, email, WeChat, phone, personal site, LinkedIn
个人简介 (summary)2-4 sentences synthesizing what they've shipped
实习经历 (internships)dated work entries with org, role, 3-4 bullets each
项目经历 (projects)independent projects with link, role, 3 bullets
教育背景school + major + GPA + honors
奖项荣誉 (awards)competition wins, scholarships, recognitions
技能 (skills)grouped: tools / stack / methods / domain
黑客松项目 (hackathons)one-line each, optional

If a section is genuinely missing from context, omit it — don't fabricate. Better a 1-page resume with 5 sections than a stretched one with empty padding.

If critical fields are missing (name, at least one work/project), ask once in a single bundled message (not a sequence of small questions).

Step 2 — Read the reference

Open examples/example-resume.html to internalize:

  • The CSS variables, fonts, font sizes, line heights — copy these verbatim, do not redesign
  • The bilingual mixing: Chinese for sections/labels, English for tech terms wrapped in <span class="en-lg"> for typographic harmony
  • The bullet density: each bullet is 1-2 lines, leads with a verb or quantified outcome
  • The 1-page A4 constraint — total content height must fit ~1090px

Step 3 — Write the resume HTML

Create a new HTML file at the user's project root (e.g. resume.html) that:

  1. Reuses examples/example-resume.html's CSS block byte-for-byte (including the :root variables and all class definitions)
  2. Replaces the content within .page with the user's data, following the same DOM structure
  3. Embeds the avatar as <img class="avatar" src="..."> — accept any local path or web URL the user provides; if no avatar, omit the <img> tag and let .header-left flex naturally
  4. Keeps all <span class="en-lg">…</span> wrapping for English terms in titles (improves typographic balance with mixed CJK)

Step 4 — Render PDF + auto-fit to one page

Run scripts/render.py with the HTML path:

python3 scripts/render.py /path/to/resume.html

This:

  • Renders via Playwright's bundled Chromium (the only reliable headless renderer for CJK on macOS — system Chrome's headless mode renders CJK as blank)
  • Outputs resume.pdf next to the HTML
  • Reports the page count
  • If >1 page: progressively tightens .section margin-top, .entry margin-bottom, and .page padding until it fits, or reports back so you can suggest content cuts

If rendering still spills to page 2 after auto-fit, suggest the user cut content (drop the weakest bullet, merge two short entries, etc.) — never let a resume be 1.05 pages.

Step 5 — Show result

Print the absolute path of the generated PDF. If the environment supports it, also show a screenshot/preview of the first page so the user can sanity-check before sharing.

Style rules (non-negotiable)

  • Single page A4 — never 2 pages. Density beats whitespace for fresh-grad/IC resumes.
  • No emojis in the resume body.
  • No filler adjectives ("热爱", "擅长沟通", "团队合作精神") — replace with quantified outcomes.
  • Bullets lead with verb + outcome: "主导 X 0-1 定义与交付,达成 Y 指标" beats "参与了 X 的工作".
  • English tech terms keep their casing: LangChain, LangGraph, Agent, Marketplace, to-Reader — wrap in <span class="en-lg"> if it improves rhythm.
  • Numbers > prose: "599 名学生扫描,识别 76 篇有论文记录" beats "扫描了大量论文".

First-time setup (only if Playwright is missing)

pip3 install playwright
python3 -m playwright install chromium

The render script checks for these and prints clear errors if missing.

Files

  • examples/example-resume.html — reference resume (彭智炜's actual one). Read this to learn the style. Don't copy his content.
  • examples/example-avatar.jpg — reference avatar (use only as visual reference for portrait crop ratio: 76×102, slight 3px radius).
  • scripts/render.py — Playwright PDF renderer with auto-fit-to-one-page logic.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.