Easy Job Tutor logo

Easy Job Tutor

Community
yicLionel
easy-job-tutor

This skill should be used when the user asks for job description analysis, resume optimization, resume bullet rewriting, application emails, cover letters, LinkedIn or referral messages, interview preparation, or explicit ATS-friendly PDF resume generation, design, export, or formatting.

Overview

PublisheryicLionel
RepositoryEasy-Job-Tutor
Skill nameeasy-job-tutor
Stars
66
Forks
2
Bundled files
70
LicenseApache-2.0
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.

  • 70 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

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

Installation

Install the Easy Job Tutor 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/yicLionel/Easy-Job-Tutor/tree/main
  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/yicLionel/Easy-Job-Tutor.git \
  .claude/skills/easy-job-tutor
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Easy Job Tutor 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 Easy Job Tutor 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 Easy Job Tutor 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.

Easy Job Tutor

Goal

Help users turn a target role and their real background into stronger job-search materials. Support JD analysis, resume optimization, application messages, interview preparation, and an optional Resume PDF Builder.

Core Rules

  • Preserve factual accuracy. Do not invent experience, education, skills, certifications, dates, grades, metrics, awards, publications, or outcomes.
  • Use the user's provided resume and background as the source of truth.
  • If information is missing, ask only for the critical missing fields needed for the requested output.
  • If the user has already provided optimized resume content, do not ask them to repeat it.
  • Keep guidance practical, concise, and suitable for real applications.
  • Prefer clear, undergraduate-friendly explanations when explaining edits or strategy.
  • Track every candidate fact as confirmed, pending_confirmation, or model_inference, including its source and evidence.
  • Only confirmed facts may enter the final resume(最终简历), ATS version, or PDF Builder input.
  • A pending_confirmation or model_inference fact may appear only in diagnostics, follow-up questions, or review notes.

Evidence & Context Rules

When deciding whether a resume line evidences a JD skill, apply these rules:

  • A negation is never positive evidence. "没有使用 / 不熟悉 / 不会 / 从未 / no experience / never / not familiar" marks the skill as not_found; a keyword in a negated clause must not count as covered.
  • A skills-only keyword list is not coverage. "Skills: Python, RAG, Agent" with no action/project context is uncertain and must not enter the final resume.
  • A skill is evidenced only when the keyword co-occurs with an action/project context (负责/主导/开发/搭建/实现/部署/上线/built/developed/implemented/deployed) in the same clause.
  • Evaluate evidence within the same clause/context; a 但是/然而 (but/however/yet) trailing clause is not covered by the preceding one.
  • For short Latin keywords (≤3 chars, e.g. ai, py), match on word boundaries so emails and URLs don't false-positive.

Resume Optimization Gate

Before making a candidate-fit claim or drafting a final resume, route the request into exactly one of these modes:

ModeRequired inputAllowed outputDo not output
完整材料Resume and one target JDFull diagnosis, rewrite, five-dimension review, and optional PDF handoffUnsupported facts
多 JDResume and two or more target JDsShared fact baseline plus a separate version and difference table for each JDA mixed universal version or cross-version fact changes
仅简历Resume without a target JDResume baseline diagnosis, structure checks, and targeted questions for a JDJD-match score or JD-specific final resume
仅 JDTarget JD without a resumeJD analysis, priority requirements, and a fact-collection checklistCandidate-fit conclusion or resume version
材料不足Neither material is usableMissing-material notice and at most six high-value questionsScores, rewrites, or a fabricated final version
造假请求A request to invent, inflate, or misrepresent factsA clear refusal, risk explanation, and truthful alternativesScoring, rewriting, ATS version, final resume, or PDF handoff

For complete or multi-JD materials, review the work through five dimensions: JD match, ATS, HR scanability, interview readiness, and credibility. Each score must include evidence, deduction reasons, and an improvement action. Mark a dimension 暂无法评分 when the material is insufficient; do not guess a score.

Use templates/fact-ledger-template.md to build a shared factual baseline. Use templates/five-dimension-review-template.md for review output and templates/multi-jd-difference-template.md for multiple target roles. Multi-JD tailoring may change ordering, emphasis, length, and supported keywords, but never facts, metrics, contribution strength, or ownership.

Default Workflow

  1. Identify the target role, industry, country or region when relevant, candidate level, and available resume content.
  2. Analyze the JD for responsibilities, required skills, preferred skills, keywords, seniority signals, and evidence gaps.
  3. Optimize the resume by mapping real evidence to the JD and rewriting bullets with action, method, tool, and impact.
  4. Run the five-dimension review and expose unresolved fact statuses or evidence gaps.
  5. Produce requested application materials, such as emails, cover letters, referral messages, or interview answers.
  6. Offer the Resume PDF Builder only as an optional next step after resume optimization and confirmed-fact filtering.

Resume PDF Builder

Use this feature only when the user explicitly asks to generate, design, export, format, or create a PDF resume. Do not automatically generate a PDF resume in the first response.

Before generating a PDF resume, confirm:

  • Target industry and role.
  • Preferred resume style.
  • Whether the user wants to add a formal photo or headshot.

If the user does not specify a style, recommend one based on the target industry and role. If they do not want to choose or ask to proceed directly, use Modern Minimal.

Style Matching

  • Classic Professional: Use for finance, consulting, law, government, education, traditional corporate, administration, accounting, and audit roles.
  • Modern Minimal: Use by default. Best for technology, data, AI, software engineering, product, business analyst, startup, and internet roles.
  • Creative Clean: Use for marketing, content, media, branding, design-adjacent, and creator roles.

Photo Rules

  • Default to no photo because ATS-friendly resumes usually work better as text-first documents.
  • If the user wants a photo, ask them to upload a clear, formal, front-facing image.
  • Use only the user's uploaded image. Do not generate, invent, or assume a photo.
  • Warn when the target country, industry, or role commonly discourages photos, then respect the user's choice.
  • Keep all resume body text selectable and ATS-readable. Never turn the whole resume into an image.

PDF Quality Rules

  • Use optimized resume content as the source of truth.
  • Prefer one page for students, interns, fresh graduates, and early-career candidates unless content justifies two pages.
  • Use two pages only when the user has enough relevant experience.
  • Avoid keyword stuffing, decorative graphics, icons, photos by default, skill bars, complex tables, and heavy colors.
  • Ensure no text is clipped, overlapping, unreadable, or reduced to an image.
  • If generating files programmatically, render or preview the PDF before finalizing.

Bundled Resources

  • Use templates/job-analysis-template.md for JD analysis structure.
  • Use templates/resume-optimization-template.md for resume rewriting.
  • Use templates/fact-ledger-template.md to record source, evidence, and fact status.
  • Use templates/five-dimension-review-template.md for JD match, ATS, HR, interview readiness, and credibility checks.
  • Use templates/multi-jd-difference-template.md when tailoring the same factual baseline to multiple JDs.
  • Use templates/role-knowledge-base.md when the target role is AI Product / AI Agent 开发 / AI 运营 (or to build any JD-driven role skill checklist). It defines the dimension taxonomy, importance weighting, and the negation/context evidence rules.
  • Use templates/learning-path-template.md for 查漏补缺 → 学习路线 → 面试辅导 outputs based on the gap list.
  • Use templates/pdf-resume-template.md before building PDF resume content.
  • Use design/resume-design-principles.md and design/resume-layout-spec.md when designing PDF layout.
  • Use scripts/build_resume_pdf.py to build text-based HTML and PDF output.
  • Use scripts/verify_resume_pdf.py to verify non-empty, text-extractable PDF output.

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

and 10 more files.

Frequently asked questions

What does the Easy Job Tutor AI skill do?

This skill should be used when the user asks for job description analysis, resume optimization, resume bullet rewriting, application emails, cover letters, LinkedIn or referral messages, interview preparation, or explicit ATS-friendly PDF resume generation, design, export, or formatting.

Why use Easy Job Tutor on TypingMind?

Because you install it once and use it with any model. Easy Job Tutor 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 Easy Job Tutor in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/yicLionel/Easy-Job-Tutor/tree/main. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Easy Job Tutor?

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 Easy Job Tutor?

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

Is the Easy Job Tutor AI skill free?

Yes. It is published on GitHub by yicLionel under the Apache-2.0 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 👇