网淘吧来吧,欢迎您!

返回首页 微信
微信
手机版
手机版

Resume Assistant

2026-03-28 新闻来源:网淘吧 围观:16
电脑广告
手机广告

📝 简历助手

这是一款AI驱动的Clawbot技能,用于润色简历、定制职位匹配、多格式导出以及提供专业评分。版本:1.0.0 ·许可证:MIT ·代码仓库: github.com/Wscats/resume-assistant


概述

简历助手是一款Clawbot技能,能帮助求职者创建、完善和优化其简历,同时提供全面的清单审核、评分以及多格式导出功能,集成了单一项目无法提供的完整服务。


在AI智能体中的使用

快速开始

简历助手是一款标准的Clawbot技能,可以被任何兼容的AI智能体加载和调用。以下是不同的集成方式。

💬 自然语言(推荐)

您无需记忆任何命令——只需描述您的需求:

💬 "Create a resume for a software engineer position"
💬 "Polish my resume and fix any issues"
💬 "Optimize my resume for ATS"
💬 "Tailor my resume for this job description: [paste JD]"
💬 "Convert my resume to PDF"
💬 "Score my resume and tell me how to improve"
💬 "What's wrong with my resume?"
💬 "Here's my resume, can you help?"

助手会理解您的意图,并自动引导至相应的工作流程:

您说助手执行
"为[职位]创建一份简历"询问你的背景 → 构建一份量身定制的简历
"润色 / 修正 / 改进我的简历"运行40+项检查清单 → 返回优化版本
"针对ATS优化"检查ATS兼容性 → 优化关键词与格式
"针对此职位描述进行定制:..."分析职位描述 → 差距分析 → 定制化简历
"转换为PDF / Word / ..."使用专业模板导出为所选格式
"评分 / 评级 / 评估我的简历"百分制评分 → 优势及改进计划
"这是我的简历,能帮忙吗?"先评分 → 建议后续步骤

对话示例

创建新简历:

You:   Create a resume for a frontend engineer position at a startup

Bot:   I'd be happy to help! To get started, could you share:
       1. Your work experience (companies, roles, dates, key achievements)
       2. Education background
       3. Technical skills
       4. Any specific job posting you're targeting? (optional)

You:   I have 3 years at Shopify working on React...

Bot:   Here's your tailored resume:
       [generates complete resume]
       
       Would you like me to score, polish, or export it?

快速改进:

You:   Here's my resume, what do you think?
       [pastes resume]

Bot:   📊 Resume Score: 68/100 (Grade: C)
       Top 3 Issues:
       1. ❌ No quantified achievements
       2. ⚠️ Weak action verbs
       3. ⚠️ Missing keywords for target role
       
       Would you like me to polish it now?

You:   Yes, polish it

Bot:   [runs full polish with 40+ checklist items]

针对特定职位定制:

You:   Tailor my resume for this job description:
       Senior Backend Engineer at Stripe
       Requirements: Go, distributed systems, payment APIs...

Bot:   🎯 Job Analysis Complete
       📊 Current Match: 62% → After Optimization: 89%
       [generates tailored version]

选项一:通过 clawbot 使用斜杠命令

如需更精确的控制,可直接在 clawbot 对话中使用斜杠命令:

/resume polish
Please polish my resume:

John Doe
Senior Frontend Engineer | 5 years experience
Skills: JavaScript, React, Vue, Node.js
...

选项二:集成至AI智能体框架

1. 注册技能

将此项目注册为AI智能体的技能:

{
  "skills": [
    {
      "name": "resume-assistant",
      "path": "./skills/resume-assistant",
      "manifest": "skill.json"
    }
  ]
}

2. 加载提示词

处理简历相关请求时,提示词文件按此顺序加载:

1. prompts/system.md      ← Persona & quality standards (loaded first)
2. prompts/<command>.md    ← Load per command: specific instructions
3. templates/<style>.md    ← Load on demand (export command only)

3. 构建完整提示词

/resume polish为例

# Python pseudocode
ROLE_SYS = "system"    # LLM message role constant
ROLE_USR = "user"      # LLM message role constant

def build_prompt(command, args):
    # Step 1: Load the skill persona prompt
    persona_prompt = load_file("prompts/system.md")

    # Step 2: Load command-specific prompt
    command_prompt = load_file(f"prompts/{command}.md")

    # Step 3: Combine prompts into LLM messages
    combined = persona_prompt + "\n\n" + command_prompt
    messages = [
        {"role": ROLE_SYS, "content": combined},
        {"role": ROLE_USR, "content": args["resume_content"]}
    ]

    # Step 4: Add optional parameters to user message
    if args.get("language"):
        messages[1]["content"] += f"\n\nLanguage: {args['language']}"

    return messages
// JavaScript pseudocode
const ROLE_SYS = 'system';  // LLM message role constant
const ROLE_USR = 'user';    // LLM message role constant

async function buildPrompt(command, args) {
  // Step 1: Load the skill persona prompt
  const personaPrompt = await loadFile('prompts/system.md');

  // Step 2: Load command-specific prompt
  const commandPrompt = await loadFile(`prompts/${command}.md`);

  // Step 3: Combine prompts into LLM messages
  const combined = `${personaPrompt}\n\n${commandPrompt}`;
  const messages = [
    { role: ROLE_SYS, content: combined },
    { role: ROLE_USR, content: args.resume_content }
  ];

  // Step 4: Add optional parameters
  if (args.language) {
    messages[1].content += `\n\nLanguage: ${args.language}`;
  }

  return messages;
}

——以下是AI智能体构建提示词的方式:

选项三:REST API

# Polish a resume
curl -X POST https://your-agent-api.com/skills/resume-assistant/polish \
  -H "Content-Type: application/json" \
  -d '{
    "resume_content": "Your resume content...",
    "language": "en"
  }'

# Score a resume
curl -X POST https://your-agent-api.com/skills/resume-assistant/score \
  -H "Content-Type: application/json" \
  -d '{
    "resume_content": "Your resume content...",
    "target_role": "Senior Frontend Engineer",
    "language": "en"
  }'

# Customize for a job
curl -X POST https://your-agent-api.com/skills/resume-assistant/customize \
  -H "Content-Type: application/json" \
  -d '{
    "resume_content": "Your resume content...",
    "job_description": "Job description...",
    "language": "en"
  }'

# Export to a format
curl -X POST https://your-agent-api.com/skills/resume-assistant/export \
  -H "Content-Type: application/json" \
  -d '{
    "resume_content": "Your resume content...",
    "format": "html",
    "template": "modern"
  }'

若AI智能体提供HTTP API,可通过RESTful端点调用:

from langchain.tools import Tool

# Define tools based on skill.json commands
resume_tools = [
    Tool(
        name="resume_polish",
        description="Polish and improve resume with 40+ checklist items",
        func=lambda input: agent.run_skill(
            "resume-assistant", "polish",
            {"resume_content": input, "language": "en"}
        )
    ),
    Tool(
        name="resume_score",
        description="Score a resume on 100-point scale with improvement suggestions",
        func=lambda input: agent.run_skill(
            "resume-assistant", "score",
            {"resume_content": input, "language": "en"}
        )
    ),
    Tool(
        name="resume_customize",
        description="Customize resume for a specific job position",
        func=lambda input: agent.run_skill(
            "resume-assistant", "customize",
            {"resume_content": input.split("---JD---")[0],
             "job_description": input.split("---JD---")[1],
             "language": "en"}
        )
    ),
    Tool(
        name="resume_export",
        description="Export resume to Word/Markdown/HTML/LaTeX/PDF",
        func=lambda input: agent.run_skill(
            "resume-assistant", "export",
            {"resume_content": input, "format": "html", "template": "modern"}
        )
    ),
]

选项四:LangChain/LlamaIndex集成

指令路由

graph TD
    A["User Input"] --> B{"Contains<br/>slash command?"}
    B -- "Yes" --> C{"Parse command"}
    C -- "/resume polish" --> D["Load polish.md"]
    C -- "/resume customize" --> E["Load customize.md"]
    C -- "/resume export" --> F["Load export.md"]
    C -- "/resume score" --> G["Load score.md"]
    B -- "No" --> H{"Intent detection"}
    H -- "polish/improve/fix" --> D
    H -- "job/apply/match" --> E
    H -- "export/download/convert" --> F
    H -- "score/rate/evaluate" --> G
    D --> I["Build Prompt<br/>Call LLM"]
    E --> I
    F --> I
    G --> I
    I --> J["Return Result"]

AI智能体应将用户请求路由至正确指令:

参数验证AI智能体在调用前应验证参数,需参考skill.json

def validate_args(command, args):
    """Validate arguments against skill.json schema."""
    schema = load_skill_json()
    cmd_schema = next(c for c in schema["commands"] if c["name"] == command)

    for arg in cmd_schema["arguments"]:
        # Check required fields
        if arg["required"] and arg["name"] not in args:
            raise ValueError(f"Missing required argument: {arg['name']}")

        # Check enum constraints
        if "enum" in arg and arg["name"] in args:
            if args[arg["name"]] not in arg["enum"]:
                raise ValueError(
                    f"Invalid value for {arg['name']}: {args[arg['name']]}. "
                    f"Must be one of: {arg['enum']}"
                )

        # Apply defaults
        if arg["name"] not in args and "default" in arg:
            args[arg["name"]] = arg["default"]

    # Check max resume length
    max_len = schema["config"]["max_resume_length"]
    if len(args.get("resume_content", "")) > max_len:
        raise ValueError(f"Resume exceeds {max_len} character limit")

    return args

文件:

指令集

/resume polish内含40多项检查清单涵盖8大类别,助您获得全面优化的简历

参数:

名称类型必填默认值描述
resume_content字符串简历文本(纯文本或Markdown格式)
language字符串enen表示英语,zh表示中文

您将获得:

  • 每项检查(联系方式、个人总结、工作经历、教育背景、技能、语法、格式、ATS)的✅/❌/⚠️ 结果清单
  • 一份经过全面润色、包含强力行动动词和量化成果的完整简历
  • 按优先级分类的变更摘要:🔴 关键 → 🟡 重要 → 🟢 次要 → 💡 建议
  • 行动动词参考表与量化指南

/resume customize

为一份特定的职位发布定制您的简历

包含差距分析和关键词优化。

参数:名称类型必需默认值
描述resume_content字符串
简历文本job_description字符串
目标职位描述或职位名称language字符串enen用于英语,zh用于中文

您将获得:

  • 职位描述分解(必备技能、优先技能、职责、关键词)
  • 差距分析矩阵,将每个要求与您的简历进行映射
  • 定制的简历,关键词自然融入其中
  • 关键词覆盖报告:修改前 vs. 修改后
  • 额外福利:求职信要点 + 面试准备笔记

/简历 导出

将您的简历转换为Word、Markdown、HTML、LaTeX 或 PDF 格式并提供专业模板。

参数:

名称类型必需默认值描述
简历内容字符串简历文本(优先Markdown格式)
格式字符串Word|Markdown|HTML|LaTeX|PDF
模板字符串专业型专业型|现代型|极简型|学术型

模板:

模板风格最适合
专业型海军蓝色,衬线标题,经典边框金融、咨询、法律、医疗
现代型蓝绿色点缀,创意布局,表情符号图标科技、初创公司、产品、市场营销
极简型单色系,极度简洁,内容密集资深专业人士、工程领域
学术型正式衬线字体,多页,出版物风格教职人员、研究、博士申请

导出详情:

  • HTML:包含嵌入式CSS的独立文件,4种配色主题,@media print已优化
  • LaTeX:完整可编译的.tex使用XeLaTeX并支持CJK
  • Word文档:采用Pandoc优化的Markdown格式,包含YAML前置元数据及转换命令
  • PDF文档:针对打印优化的HTML格式,采用A4页面尺寸,支持多种转换方法
  • Markdown文档:结构清晰、格式规范,便于版本控制

/简历评分

获取百分制专业评估并提供具体改进建议。

参数说明:

参数名称参数类型是否必需默认值描述
resume_content字符串简历文本内容
target_role字符串适合度评估的目标职位
语言字符串enen用于英语,zh用于中文

评分维度(100分):

维度分数评估内容
内容质量30成就、行为动词、相关性、完整性
结构与格式25布局、一致性、长度、章节顺序
语言与语法20语法、拼写、语气、清晰度
ATS优化15关键词、标准标题、格式兼容性
影响力与印象106秒测试、职业故事、专业度

评分等级:A+ (95-100) → A (90-94) → B+ (85-89) → B (80-84) → C+ (75-79) → C (70-74) → D (60-69) → F (<60)

您将获得:

  • 带各维度理由的分数细分
  • 基于您简历具体示例的前3大优势
  • 按优先级排序的改进建议,包含修改前 → 修改后改写示例
  • 职位匹配度评估(若提供目标职位):匹配分数、竞争力百分位、优势、差距
  • 含工作量预估的5步行动计划

推荐工作流程

┌──────────────────────────────────────────────────────┐
│                  Recommended Workflow                 │
├──────────────────────────────────────────────────────┤
│                                                      │
│  1. /resume score     ← Know where you stand         │
│     💬 "Score my resume"                             │
│          │                                           │
│          ▼                                           │
│  2. /resume polish    ← Fix all issues               │
│     💬 "Polish my resume"                            │
│          │                                           │
│          ▼                                           │
│  3. /resume customize ← Tailor per application       │
│     💬 "Tailor for this JD: ..."                     │
│          │                                           │
│          ▼                                           │
│  4. /resume export    ← Generate final files         │
│     💬 "Convert to PDF"                              │
│          │                                           │
│          ▼                                           │
│  5. /resume score     ← Verify improvement           │
│     💬 "Score my resume again"                       │
│                                                      │
└──────────────────────────────────────────────────────┘

提示:

  1. 从获取评分开始——如果您已有简历,先了解您的基准水平
  2. 然后进行优化在针对具体职位进行定制之前,先完善所有基础内容
  3. 定制为每个申请单独定制——通用的模板不适用
  4. 导出最后一步——先完善内容,再调整格式
  5. 使用Markdown作为你的工作格式——它可以清晰地转换为所有其他格式
  6. 再次评分在润色和定制后,用以衡量改进效果

项目结构

resume-assistant/
├── skill.json                    # Skill manifest (JSON)
├── skill.yaml                    # Skill manifest (YAML)
├── SKILL.md                      # This documentation
├── prompts/
│   ├── system.md                 # Persona definition & quality standards
│   ├── polish.md                 # Polish prompt: 40+ item checklist
│   ├── customize.md              # Customize prompt: gap analysis & keywords
│   ├── export.md                 # Export prompt: 5 formats × 4 templates
│   └── score.md                  # Score prompt: 100-point rubric
├── templates/
│   ├── professional.md           # Classic corporate template
│   ├── modern.md                 # Contemporary tech/startup template
│   ├── minimal.md                # Ultra-clean senior template
│   ├── academic.md               # Formal academic CV template
│   └── export/
│       ├── resume.html           # HTML template (4 CSS themes)
│       └── resume.tex            # LaTeX template (XeLaTeX + CJK)
└── examples/
    ├── sample-resume-en.md       # English sample (high quality)
    ├── sample-resume-zh.md       # Chinese sample (high quality)
    ├── sample-resume-weak.md     # Weak sample (for scoring demo)
    └── usage.md                  # Usage examples & workflow guide

语言支持

语言代码功能
英语en完全支持,遵循美式/英式惯例
中文zh完全支持,遵循中英文混排规范,支持CJK导出

配置

描述
最大简历长度10,000 字符最大输入长度
支持的语言英语,中文可用语言
支持的导出格式Word、Markdown、HTML、LaTeX、PDF可用导出格式
scats
免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏
文章底部电脑广告
手机广告位-内容正文底部
上一篇:Vincent - Wallet 下一篇:T Trading

相关文章

您是本站第291879名访客 今日有274篇新文章/评论