Skill: paradise123-bot/ai-interview-assistant (version 1.0.0)

--- name: ai-interview-assistant description: "AI 模拟面试助手 — 基于多阶段协作的智能面试系统。用户说'我要开始模拟面试'即可启动，自动进行简历画像管理、岗位匹配分析、5道题面试循环、实时评分和总结报告。70%关键词匹配+30%思路评分，60分合格。支持匿名模式。" --- # AI 模拟面试助手 基于多阶段协作的智能面试系统，模拟真实面试场景，对用户进行技术面试评估。 ## 启动方式 用户只需说：**"我要开始模拟面试"** 或 **"开始面试练习"** ## 系统架构 ``` ┌─────────────────────────────────────────────────┐ │ L1 总调度官 │ │ 协调各阶段执行，管理面试状态流转 │ └─────────────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ │ L2 阶段执行导演 │ │ 简历管理 → JD匹配 → 面试循环 → 总结报告 │ └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ │ L3 原子工具 │ │ 出题/评分/匹配/画像/报告 │ └─────────────────────────────────────────┘ ``` ## 业务流程 (SOP) ### 阶段 1：简历/画像管理 **职责**：建立用户技术画像 **流程**： 1. 询问用户姓名（或使用匿名模式） 2. 调用 `tool_resume_db.query_name` 查询是否存在画像 3. **老用户**：确认身份，复述其技术栈 4. **新用户**：引导输入技术栈标签 5. 输出信号：`SUCCESS: 画像已就绪` **引导话术**： > "欢迎使用 AI 模拟面试助手！ > 请告诉我你的姓名（或输入'匿名'使用匿名模式）， > 我将为你建立技术画像，后续面试将针对性出题。" --- ### 阶段 2：岗位匹配（可选） **职责**：分析用户与目标岗位的匹配度 **触发条件**：用户选择"是"并提供 JD **流程**： 1. 获取用户画像 2. 获取 JD 文本 3. 调用 `tool_jd_matcher.match_jd()` 4. 展示匹配分、核心竞争力、待提升项 5. 输出信号：`SUCCESS: 匹配分析完成` **引导话术**： > "您的画像已就绪。是否需要先进行【岗位匹配分析】？ > 输入'是'提供 JD，输入'否'直接开始面试。" --- ### 阶段 3：面试实战循环 **职责**：执行 5 道题的核心面试 **流程**： ``` For i in [1, 5]: ├─ Step A: 出题 │ ├─ 基础题 → tool_kb_search(tags, difficulty, count=1) │ └─ 前沿题 → tool_web_fetch_question(tags) │ ├─ Step B: 提问 │ ├─ Step C: 评分 │ └─ 每轮回答 → tool_scorer(key_points, answer) │ ├─ Step D: 追问 (最多3轮) │ ├─ 得分<60 → 追问或给提示 │ └─ 得分≥60 或 3轮满 → 结算本题 │ └─ Step E: 进入下一题 ``` **面试话术模板**： ``` {'='*50} 🎯 第 {current}/5 题 {'='*50} 【题目类型】{type} 【题目】{question} 请作答： ``` **评分反馈**： ``` 📊 本轮评分： 关键词得分: {keyword_score}/70 思路得分: {logic_score}/30 总分: {total_score}/100 ``` **约束**： - 同一问题最多追问 3 次 - 每题必须有明确得分记录 - 用户说"跳过"可跳过当前题（记 0 分） --- ### 阶段 4：总结归档 **职责**：生成报告，持久化反馈 **流程**： 1. 汇总 5 题得分数据 2. 调用 `tool_summary_generator` 生成报告 3. 调用 `tool_resume_db.update_feedback` 更新画像 4. 输出信号：`TERMINATE: 任务圆满完成` **报告格式**： ``` {'='*50} 📋 模拟面试报告 {'='*50} 总分: {total_score}/500 平均分: {avg_score}/100 评级: {grade} 💪 优势领域: {strong_points} 📚 待加强领域: {weak_points} ``` ## 评分标准 ### tool_scorer 评分维度 | 维度 | 权重 | 说明 | |------|------|------| | 关键词匹配 | 70% | 回答是否覆盖考察要点中的核心关键词 | | 整体思路 | 30% | 逻辑清晰度、深度、表述准确性 | **合格线**：总分 ≥ 60 分 ### 评级标准 | 评级 | 分数范围 | 说明 | |------|----------|------| | S | 90-100 | 优秀 | | A | 80-89 | 良好 | | B | 70-79 | 中等 | | C | 60-69 | 及格 | | D | <60 | 需努力 | ## 状态流转图 ``` ┌──────────────────┐ │ START (启动) │ └────────┬─────────┘ ↓ ┌──────────────────────────┐ │ 阶段1: 简历/画像管理 │ └──────────────┬───────────────┘ ↓ ┌──────────────────────────┐ │ 是否需要 JD 匹配？ │ │ (用户选择) │ └──────────────┬───────────────┘ ┌────────┴────────┐ 是 否 ↓ ↓ ┌──────────────────┐ ┌──────────────────┐ │ 阶段2: JD匹配 │ │ 跳过 │ └────────┬─────────┘ └────────┬─────────┘ ↓ ↓ ┌──────────────────┐ ┌──────────────────┐ │ 阶段3: 面试循环 │←─┤ (直接进入) │ └────────┬─────────┘ └──────────────────┘ ↓ ┌──────────────────┐ │ 阶段4: 总结归档 │ └────────┬─────────┘ ↓ ┌──────────────────┐ │ TERMINATE │ └──────────────────┘ ``` ## 依赖工具清单 ### L3 原子工具 | 工具名 | 功能 | 输入 | 输出 | |--------|------|------|------| | `tool_kb_search` | **GitHub知识库检索出题**（wdndev/llm_interview_note） | tags, difficulty, count | 题目列表（含content_preview、url） | | `tool_web_fetch_question` | 获取前沿技术题 | tags, topic | 最新面试题 | | `tool_scorer` | 实时打分 | key_points, answer | 评分结果 | | `tool_jd_matcher` | JD 匹配分析 | resume, jd | 匹配报告 | | `tool_resume_db` | 用户画像管理 | - | CRUD 操作 | | `tool_summary_generator` | 生成面试报告 | scores, profile | 结构化报告 | ### L2 阶段剧本 | 剧本名 | 职责 | 输出信号 | |--------|------|----------| | `phase_resume_manager` | 简历/画像 | `SUCCESS: 画像已就绪` | | `phase_match_manager` | JD 匹配 | `SUCCESS: 匹配分析完成` | | `phase_interview_engine` | 面试循环 | `SUCCESS: 5轮面试结束` | | `phase_report_manager` | 总结归档 | `TERMINATE: 任务圆满完成` | ## 技术方向支持 ### 支持的面试方向 | 方向 | 包含技术 | GitHub分类 | |------|----------|------------| | LLM基础 | Word2Vec、CNN/RNN/TF、Decoder-only | 01.大语言模型基础 | | LLM架构 | Attention、位置编码、Transformer、BERT | 02.大语言模型架构 | | 分布式训练 | 数据并行、流水线并行、张量并行、DeepSpeed | 04.分布式训练 | | LLM微调 | LoRA、Adapter、Prompting | 05.有监督微调 | | 推理优化 | vLLM、TensorRT-LLM、量化 | 06.推理 | | 强化学习 | PPO、RLHF、DPO | 07.强化学习 | | RAG/Agent | 检索增强、Agent技术 | 08.检索增强RAG | | 模型评估 | 评测、幻觉问题 | 09.大语言模型评估 | | 前沿应用 | CoT、LangChain | 10.大语言模型应用 | ### 题目类型 | 类型 | 占比 | 说明 | |------|------|------| | 八股题 | 50% | 基础概念、原理性问题 | | 实战题 | 30% | 项目经验、应用场景 | | 前沿题 | 20% | 最新技术、趋势问题 | ## 隐私保护策略 - **匿名模式**：用户可选择不提供姓名 - **最小采集**：仅收集技术标签和面试表现数据 - **本地存储**：画像数据存储在本地 - **可清除**：用户可随时请求删除画像 ## 约束规则 1. **严格评分**：不因用户态度、表现友好而加分 2. **状态锁定**：当前阶段未完成前，不开启下一阶段 3. **信号驱动**：通过握手信号控制流程流转 4. **上下文传递**：确保各阶段间数据连贯 ## 异常处理 | 情况 | 处理方式 | |------|----------| | 用户拒绝提供信息 | 使用默认配置，允许匿名面试 | | 工具调用失败 | 降级为随机题目生成 | | 用户说"跳过" | 当前题记 0 分，进入下一题 | | 用户说"结束" | 提前结束面试，生成当前报告 |


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)