Vibe Resume Editor logo

Vibe Resume Editor

Community
LiuMengxuan04
vibe-resume-editor

Use when editing VibeResume templates, converting resume facts and target roles into polished one-page or two-page HTML resumes, and validating the generated PDF.

Overview

PublisherLiuMengxuan04
Repositoryvibe-resume
Skill namevibe-resume-editor
Stars
640
Forks
50
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by LiuMengxuan04 on GitHub. Read the source before you install it.

Installation

Install the Vibe Resume Editor AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/LiuMengxuan04/vibe-resume/tree/main/skills/vibe-resume-editor
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/LiuMengxuan04/vibe-resume.git /tmp/vibe-resume
mkdir -p .claude/skills
cp -r /tmp/vibe-resume/skills/vibe-resume-editor .claude/skills/vibe-resume-editor
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Vibe Resume Editor in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Vibe Resume Editor on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Vibe Resume Editor is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

VibeResume Editor

Purpose

Use this skill to help a user maintain a resume in the VibeResume templates. The PDF is generated by scripts/export-pdf.mjs.

Template sources:

  • Standard one-page template: templates/internship-employment/standard-one-page/index.html + styles.css
  • Dense one/two-page technical template: templates/internship-employment/dense-two-page/index.html + templates/internship-employment/dense-two-page/styles.css
  • Research application template: templates/research-application/research-classic/index.html + templates/research-application/research-classic/styles.css

Core Rules

  • Keep the resume credible and specific. Do not invent degrees, employers, dates, awards, metrics, or project claims when editing a real resume.
  • Use templates/internship-employment/standard-one-page/ by default when the user does not specify length.
  • When the user explicitly asks for two pages, a dense resume, or has substantial technical experience that clearly needs two pages, default to templates/internship-employment/dense-two-page/.
  • When the user is applying for a PhD, research internship, research assistant role, or needs to foreground publications and a representative research contribution, use templates/research-application/research-classic/.
  • The dense template is backward compatible: keep one .resume-page for a one-page version, or two .resume-page elements for a two-page version.
  • The research template intentionally exports as a continuous long page. Do not force it into A4 unless the user explicitly requires A4.
  • Prefer concise, formal resume wording with strong verbs, concrete scope, and measurable outcomes.
  • Keep the selected template's semantic HTML structure unless a section truly needs to be added or removed.
  • Keep visual edits scoped to styles.css, and preserve the screen-to-PDF export mechanism.
  • Treat company/project logos as optional. Use SVG/vector icons when useful, but keep text-only names when no suitable asset is available.
  • When a company logo is needed, proactively ask the user to manually search and download an SVG from https://www.iconfont.cn/, verify that it is the intended company mark, and attach it for the Agent to copy into assets/logos/. An official company brand/media library is also preferred. For AI model/product/provider icons, read https://lobehub.com/icons/skill.md, inspect @lobehub/icons toc, and use getLobeIconCDN. Production resumes must reference local files and never hotlink.

Demo And Easter Egg Policy

For template/demo mode:

  • Treat the profile, education, roles, project details, dates, contact data, awards, and skills as mock content.
  • The avatar at assets/avatar.png is AI-generated and should be described that way in docs.
  • The dense demo uses user-provided Iconfont SVGs for ByteDance, Kuaishou, and Meituan, plus Bilibili.Color for Bilibili. Label every company with Mock 模拟经历, keep all role details fictional, and match each role bar's background/accent color to the selected icon's primary color.
  • In the dense template, render company logos directly on the role bar with transparency. Do not add a white tile, white border, extra outline, or decorative radius around a logo. Calibrate each SVG separately because artwork canvases contain different amounts of whitespace: target a perceived mark height near 75–80% of the 44px role bar, using roughly 35–39px display boxes in the current template. Preserve aspect ratio and never crop or stretch the artwork.
  • Preserve the dense template's reference typography: A3 portrait proportions; 12pt-equivalent body; 22.5pt-equivalent name; 18pt-equivalent section headings; 13.5–15pt-equivalent project and role headings; PingFang SC for Chinese with the repository's local EB Garamond files for Latin text. Do not casually substitute an all-sans or all-serif font stack.
  • Demo company logos are optional local SVG assets under assets/logos/; remove or replace them if they would misrepresent a real resume.
  • MiniCode may remain as a real open-source easter egg: https://github.com/LiuMengxuan04/MiniCode.

For personal-resume mode:

  • Replace mock personal details with user-provided facts.
  • Ask for missing high-impact facts only when they are necessary; otherwise use placeholders that are visibly marked.
  • Remove or replace easter eggs if they would misrepresent the user's experience.

Editing Workflow

  1. Inspect README.md, scripts/export-pdf.mjs, and the HTML/CSS pair for the selected template.
  2. Identify whether the task is demo/template maintenance or a real personal resume.
  3. Select templates/internship-employment/standard-one-page/, templates/internship-employment/dense-two-page/, or templates/research-application/research-classic/ using the rules above.
  4. Update resume content in the selected HTML file.
  5. Adjust spacing, width, typography, density, and page balance in the selected CSS file only when needed.
  6. For company logos, ask the user to manually download the intended SVG from https://www.iconfont.cn/ (or an official brand library) and attach it; then copy it into assets/logos/. For AI/model/provider marks, follow https://lobehub.com/icons/skill.md: inspect toc, select a supported variant, use getLobeIconCDN, and store it locally. Do not guess slugs or substitute a product logo for a company logo without explicit user approval.
  7. Keep links, email, phone, and visible labels consistent.
  8. Run the PDF export.
  9. Verify the PDF has the requested page count and contains all major sections.

Export And Validation

Required export path

  • The browser is for HTML preview only. Do not use the browser's Print / Save as PDF output as the deliverable PDF.
  • Always generate the final PDF through the repository's official exporter: npm run export:pdf, npm run export:pdf:dense-two-page, npm run export:pdf:research-classic, or ./export-pdf.sh <output> <input-html>.
  • If a user clicks the in-page print button, treat that result as a preview diagnostic only and regenerate the deliverable with the official script.

Use:

bash
npm install
npm run export:pdf

For the dense two-page template:

bash
npm run export:pdf:dense-two-page

For the research application template:

bash
npm run export:pdf:research-classic

Then check:

bash
pdfinfo export/vibe-resume-demo.pdf
pdftotext export/vibe-resume-demo.pdf -

Validation expectations:

  • pdfinfo reports the requested page count: one page for the root and research templates, one or two pages for the dense template.
  • The PDF text includes profile, education, internships or research work, projects or publications, and skills.
  • No important section is clipped or missing.
  • For two pages, both pages have intentional section boundaries and balanced bottom whitespace; a project or role must not be accidentally split across pages.
  • The generated PDF visually matches the browser page closely because the exporter uses Chromium screen layout.

Useful User Prompts

text
把这份模板改成我的算法实习简历,保持一页 PDF,突出模型部署、推理优化和工程落地。
text
根据这个 JD 调整我的项目经历,把关键词自然融入简历,但不要编造没有做过的事情。
text
这个 PDF 底部留白太大,帮我微调页面宽度、字号和间距,保持网页预览和 PDF 一致。

Frequently asked questions

What does the Vibe Resume Editor AI skill do?

Use when editing VibeResume templates, converting resume facts and target roles into polished one-page or two-page HTML resumes, and validating the generated PDF.

Why use Vibe Resume Editor on TypingMind?

Because you install it once and use it with any model. Vibe Resume Editor is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Vibe Resume Editor in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/LiuMengxuan04/vibe-resume/tree/main/skills/vibe-resume-editor. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Vibe Resume Editor?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Vibe Resume Editor?

As many as you like. As long as a model supports skills, you can use Vibe Resume Editor with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Vibe Resume Editor AI skill free?

Yes. It is published on GitHub by LiuMengxuan04 under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇