360 Secure SkillHub
360 安全技能中心

Interview Prep

核心功能:确定目标岗位/方向后,生成结构化学习计划,按子主题推送1个详细知识点+10道大厂面试题,周期性回顾内容,每3次推送更新计划,支持设置每日定时推送。典型场景:互联网各岗位求职面试准备,如刷题、知识点梳理、面经学习。输入为目标岗位/方向,输出含知识点、面试题、回顾内容及学习进度。

chenyuan99
chenyuan99
热度 12.40
最近更新 2026-07-12 22:54:27
分类:知识依赖:联网浏览搜索 / 读写文件 / 第三方 API / 内部调用大模型应用场景:教学辅导 / 研究 / 任务管理 / 测验 ...

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add interview-prep
Metadata
name
interview-prep
description
通过在线搜索整理指定方向或岗位的面经,生成求职学习计划并持续推送知识点和面试题。当用户提到面经、面试题、面试准备、求职学习、刷题、知识点整理、岗位面经、面试攻略等需求时使用此技能。

面经助手

通过在线搜索整理互联网指定方向或岗位的面经,帮助用户系统化准备面试。核心能力:生成学习计划 → 按子主题逐次推送知识点+面试题 → 周期性回顾 → 动态调整计划。

核心设计原则

一个主题≠一次推送。每个主题根据知识量拆分为多个子主题(sub_topic),每次推送聚焦一个子主题的1个知识点+10道面试题。只有当一个主题的所有子主题学完后,才推进到下一个主题。这样做是因为:10道题无法覆盖一个大主题,拆细后每次学习内容更聚焦、面试题更深入、回顾更有效。

工作流程

Step 0:确定方向

用户首次使用时,确认目标方向或岗位(如"大模型算法工程师"、"Go后端开发"、"信创项目经理")。如果用户已经明确说了方向,直接使用,不要再问。

Step 1:生成求职学习计划

  1. 使用 search_web 搜索该方向的面试题、面经、知识体系、招聘要求,关键词必须拼接大厂名+面试轮次,示例:
    • "{方向} 字节跳动 技术面 面经 2025/2026"
    • "{方向} 阿里 一面 面经 知识点"
    • "{方向} 腾讯 二面 面试题"
    • "{方向} 美团 技术面 岗位要求"
  2. 基于搜索结果,生成结构化的学习计划,包含若干主题(建议 8-12 个),按从基础到进阶排列
  3. 每个主题包含:主题名称、子主题列表(2-5个,根据知识量决定)、重要程度(⭐~⭐⭐⭐⭐⭐)
    • 子主题是该主题下的细分学习单元,如"提示词工程"可拆为:基础Prompt模式、思维链(CoT)、Prompt模板管理与版本控制
    • 知识量大的主题多拆几个子主题,知识量小的可以只拆1-2个
  4. 将学习计划保存到 ./面经助手/{方向}/learning_plan.md
  5. 创建状态文件 ./面经助手/{方向}/state.json,初始内容:
    {
      "direction": "{方向}",
      "total_calls": 0,
      "current_topic_index": 0,
      "current_sub_index": 0,
      "asked_questions": [],
      "plan_updates": 0,
      "created_at": "YYYY-MM-DD"
    }
    
  6. 向用户展示学习计划概览

Step 2:首次推送(total_calls == 0)

  1. 读取学习计划,取第一个主题的第一个子主题(topic_index=0, sub_index=0)
  2. 使用 search_web 搜索该子主题的详细知识和面试题,关键词必须拼接大厂名+面试轮次,示例:
    • "{子主题} 字节跳动 一面 面经 答案"
    • "{子主题} 阿里 技术面 面试题"
    • "{子主题} 腾讯 二面 知识点详解"
    • "{子主题} 美团 一面 常见考点"
  3. 输出内容:
    • 1个详细知识点:聚焦当前子主题,结构化讲解(概念、原理、应用场景、易错点),不少于 300 字
    • 10个面试题+答案:尽量从搜索结果中获取真实面试题;若搜索结果中无答案,由 AI 自行解答但必须标注"[AI生成答案]"。题目聚焦该子主题,覆盖不同难度和角度
    • 后续使用方法:告知用户可以通过“继续查找XX方向面经”/"下一篇面经"的方式继续推送。
  4. 更新 state.json:total_calls +1,将 10 道题的摘要加入 asked_questions
  5. 判断子主题推进:current_sub_index +1;若已超过当前主题的子主题数,则 current_topic_index +1 且 current_sub_index = 0
  6. 不需要回顾章节(首次无历史题目)

Step 3:后续推送(total_calls > 0)

  1. 读取 state.json,根据 current_topic_index 和 current_sub_index 定位当前子主题
  2. 若所有主题的所有子主题已学完,提示用户可选择重新开始或深入某主题
  3. 搜索当前子主题的知识点和面试题(同 Step 2 的搜索方式)
  4. 输出内容:
    • 1个详细知识点(同 Step 2,聚焦当前子主题)
    • 10个面试题+答案(同 Step 2)
    • 回顾章节:从 asked_questions 中随机抽取 5 道,以简略形式呈现(只列题目+答案要点,不展开),标题为"📋 回顾打卡"
  5. 更新 state.json:total_calls +1,新题目加入 asked_questions
  6. 判断子主题推进:current_sub_index +1;若超出当前主题子主题数,则 current_topic_index +1 且 current_sub_index = 0

Step 4:每 3 次更新学习计划

当 total_calls 为 3 的倍数时(3、6、9...),在推送知识点之前先执行计划更新:

  1. 重新搜索该方向的最新面经和面试趋势,关键词拼接大厂名+面试轮次:
    • "{方向} 字节跳动 技术面 最新面经 2026"
    • "{方向} 阿里 一面 新考点"
    • "{方向} 腾讯 二面 技术趋势"
  2. 对比现有学习计划,判断是否需要:
    • 加强某主题的权重(近期高频出现)
    • 补充新主题(新技术/新考点出现)
    • 合并过细的主题或拆分过粗的主题
    • 增减子主题:某主题搜索后发现知识量比预期大→增加子主题;比预期小→合并子主题
  3. 更新 learning_plan.md,在文件顶部记录更新日志(日期+变更摘要)
  4. 更新 state.json 的 plan_updates +1
  5. 继续执行 Step 3 的子主题推送

输出格式

每次推送按以下格式输出:

## 📖 今日知识点:{主题名称} · {子主题名称}

{详细知识点内容,结构化呈现}

---

## 🎯 面试题(10道)

**Q1.** {题目}
> **A:** {答案}  [AI生成答案]  ← 仅AI生成的答案加此标注

**Q2.** {题目}
> **A:** {答案}

...(共10道)

---

## 📋 回顾打卡  ← 仅 total_calls > 0 时出现

1. **{题目摘要}** → {答案要点}
2. **{题目摘要}** → {答案要点}
3. **{题目摘要}** → {答案要点}
4. **{题目摘要}** → {答案要点}
5. **{题目摘要}** → {答案要点}

---

📊 进度:主题 {current_topic_index+1}/{总主题数} · 子主题 {current_sub_index+1}/{当前主题子主题数} | 累计学习:{total_calls}次 | 计划更新:{plan_updates}次

状态文件说明

所有状态保存在 ./面经助手/{方向}/ 目录下:

  • learning_plan.md:学习计划(含主题、子主题列表和更新日志)
  • state.json:进度状态(调用次数、当前主题索引、当前子主题索引、已出题目、计划更新次数)

读取 state.json 时,如果文件不存在,视为首次使用,从 Step 1 开始。如果文件存在但 direction 与当前不同,确认用户是否切换方向。

搜索策略

  • 大厂面经优先:搜索关键词必须拼接大厂名称和面试轮次,确保获取真实面经而非泛泛的面试题库。固定使用以下组合:
    • 大厂列表:腾讯、字节跳动、阿里、滴滴、美团、百度、京东、小红书、华为、快手
    • 面试轮次:一面、二面、三面、技术面、HR面
    • 关键词模板:{方向} {大厂名} {一面/二面/技术面} 面经,例如"AI产品经理 字节跳动 技术面 面经"、"大模型算法 阿里 一面 面经"
  • 搜索关键词加入年份以确保时效性
  • 每次搜索至少用 2-3 组不同关键词交叉验证,覆盖不同大厂和轮次,避免单一来源偏差
  • 面试题答案优先采用搜索结果中的原文;原文不可靠或缺失时才由 AI 补充,并标注
  • 搜索时聚焦当前子主题而非整个主题,确保题目深度和针对性
  • 优先搜索招聘网站(牛客网、LeetCode、掘金、CSDN、知乎等)的真实面经

Step 5:首次推送后建议创建每日学习计划

在 Step 2(首次推送)完成后,向用户建议创建每日定时推送:

  1. 在首次推送的末尾添加建议文本:
    💡 **建议**:我可以帮你设置每日定时推送,每天自动推送一轮面经(默认中午12:00),这样你不用自己记着,到点自动学。要设置吗?你也可以指定其他时间。
    
  2. 如果用户同意:
    • 使用定时任务能力创建每日重复日程,参数如下:
      • summary: 面经助手每日推送 - {方向}
      • dtstart: 当天或次日的 1200(默认中午12:00,用户指定其他时间则用用户指定值)
      • description 工单内容:
        执行面经助手技能,推送{方向}方向的下一轮面经。
        步骤:
        1. 读取 ./面经助手/{方向}/state.json 获取当前进度
        2. 如果 total_calls 是 3 的倍数,先更新学习计划(Step 4)
        3. 读取 ./面经助手/{方向}/learning_plan.md 定位当前子主题
        4. 搜索该子主题的大厂面经和面试题
        5. 按技能输出格式推送:知识点 + 10道面试题 + 回顾打卡
        6. 更新 state.json 进度
        7. 通知用户推送内容
        
    • 创建成功后告知用户日程已设置
  3. 如果用户拒绝或忽略,不再重复建议
  4. state.json 中记录定时任务/日程UID,字段 daily_schedule_uid,便于后续管理(暂停/修改时间/取消)

边界处理

  • 用户问"下一个"→ 推进到下一个子主题推送,不重新生成计划
  • 用户想跳到某主题 → 更新 current_topic_index 和 current_sub_index=0 后推送
  • 用户想重新开始 → 清空 asked_questions,两个 index 归零,保留 learning_plan
  • 用户想换方向 → 确认后为新方向创建独立目录,不影响原有进度
  • 搜索结果不足时 → 如实告知用户,用 AI 知识补充但标注来源
  • 某子主题搜索结果特别丰富 → 可临时拆分为更细的子主题,更新 learning_plan 和 state
  • 用户想暂停每日推送 → 读取 state.json 中的 daily_schedule_uid,用 calendar_delete 删除日程
  • 用户想修改推送时间 → 读取 daily_schedule_uid,用 calendar_update 修改 dtstart
  • 用户想取消每日推送 → 删除日程,并清空 state.json 中的 daily_schedule_uid

本内容由 Coze AI 生成,请遵循相关法律法规及《人工智能生成合成内容标识办法》使用与传播。