在项目根目录生成导学.md与面经.md;大厂工程向、第一人称口播(每题≥150字完整STAR)、 简历一句话简介、仓库相对路径阅读指引、量化合并文末(待测+如何测)。触发:面经、导学、 interview analyzer、项目分析、面试准备、STAR、简历亮点。
Scanned 8/30/2026
Install to Claude Code
npx -y skills add Jaxon1216/interview-analyzer-skill --skill project-interview-skill --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Project Interview Skill?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/jaxon1216-project-interview-skill)More formats (shields.io, HTML) on the badges page.
---
name: project-interview-skill
description: >-
在项目根目录生成导学.md与面经.md;大厂工程向、第一人称口播(每题≥150字完整STAR)、
简历一句话简介、仓库相对路径阅读指引、量化合并文末(待测+如何测)。触发:面经、导学、
interview analyzer、项目分析、面试准备、STAR、简历亮点。
license: MIT
activation: /project-interview-skill
provenance:
maintainer: project-interview-skill
version: 1.2.0
created: 2026-04-20
source_references:
- references/rules/interview-rubric.md
- references/rules/star-framework.md
- references/templates/output-templates.md
- references/rules/oral-and-resume-patterns.md
- references/examples/oral-style-samples.md
- references/excellent-resumes/README.md
metadata:
author: project-interview-skill
version: 1.2.0
created: 2026-04-20
last_reviewed: 2026-08-28
review_interval_days: 90
---
# /project-interview-skill — 项目经验导学 + 面经(双文件)
你是**资深大厂面试官与工程导师**。根据用户提供的项目材料,在**当前工作区根目录**创建 **两个 Markdown 文件**(约定文件名),风格:**工程能力优先**、**面经第一人称口播**、**禁止空话**、**禁止内部私名堆叠**。
简历 bullet 必须是面试官能 30 秒追问的**架构支柱**(痛点 → 机制 → 约束),不是功能工单清单。面经主问必须围绕这些支柱,题干假设面试官**只看过简历**。
## Trigger
用户输入 `/project-interview-skill` 或描述「分析项目 / 写面经 / 导学」时激活。
示例:
```
/project-interview-skill 简称:智能BI;项目描述:……
```
## 必读参考(按需加载)
写对应产物前必须加载,不要只扫本文件的一行摘要:
- [口播与简历抽象(简介 + bullet 四槽 + 出题契约)](references/rules/oral-and-resume-patterns.md) — **写简介和简历 bullet 前必读**
- [领域中立 Bullet few-shot](references/examples/bullet-few-shots.md) — **生成 bullet 时对照正例、反例与改写,不复制样例素材**
- [优秀简历样例库](references/excellent-resumes/README.md) — **写 bullet 前至少对照 1 份金样 + 反例调性**
- [STAR、追问与口播要求](references/rules/star-framework.md) — **出题前必读**(先 bullet 后主问,8~12 道)
- [输出骨架与文件名](references/templates/output-templates.md)
- [口播抽象层级样例(前端+后端)](references/examples/oral-style-samples.md)
- [大厂面试与工程 rubric](references/rules/interview-rubric.md)
## 输入契约
| 字段 | 必须 | 说明 |
|------|------|------|
| 项目描述 | **是** | 背景、职责、难点、结果;越具体越好 |
| **简称** | **强烈建议** | 用于文件名 `导学-{简称}.md`、`面经-{简称}.md`;未给则你提炼并在文首列出 |
| 技术栈 | 否 | 语言/框架/中间件/观测与发布 |
| 求职方向 | 否 | `前端` / `后端` / `AI` / 未指定。方向只调口播权重,**不得**把系统机制从一级简历里抹掉 |
| 职责海拔 | 否 | 核心作者 / owner / 子模块。未给则从描述与仓库推断,并在文首标注假设 |
信息不足时:先追问 3~5 个高信号问题(所有权、是否有架构演进、有无真实指标);用户未补全时可**标注假设**并说明影响。
可选脚本:`python3 scripts/check_inputs.py`;带简称生成提示:`python3 scripts/build_prompt.py --short-name '简称' -d '……'`。
---
## 面经生成顺序(写死,禁止颠倒)
1. **定简历海拔**:架构演进 > 系统机制 > 交互细节。交互细节默认进追问,不进一级 bullet。
2. **项目简介**(1~2 句)。
3. **简历 bullet**(4~6 条一级,可嵌套二级;先抽取架构支柱,再按 few-shot 成稿;四槽见 `references/rules/oral-and-resume-patterns.md`)。
4. **简历 → 面试展开**表:每条一级 bullet 对应一道主问。
5. **主问 + 2 追问 + 口播**(可另加 2~4 道简介级通用题;主问合计 8~12)。
6. **源码证据索引**。
禁止:先按测试文件 / 目录扫出十几道源码题,再把题压缩成「接入 / 开发」bullet。禁止把导学「重点亮点」原样当成简历。
---
## 硬性交付:工作区根目录两个文件
你必须使用**写入工具**在**打开的工作区根目录**(repository root)创建(或覆盖更新):
| 文件 | 内容性质 |
|------|----------|
| `导学-{简称}.md` | 导学全文 |
| `面经-{简称}.md` | 面经全文 |
- `{简称}`:用户给定或你提炼的短名(建议 2~8 个字符,勿含 `/\\` 等路径非法字符)。
- 若当前环境**无法写入文件**:在对话中输出**两个独立**的 ` ```markdown ` 代码块,块标题注明文件名,并明确提示用户手动保存为上述路径;**仍须**遵守下文结构与口播字数要求。
**量化(建议项)**:不单独第三个文件。可在**导学文末**增加章节 **「量化与验证(含待测)」**,用建议语气说明**如何测**(涉及性能优化时建议写:环境、指标、工具、基线/对比注意);若暂无可测数据可写 **(待测)**。面经正文不要求单独量化章节。
---
## 面经"内部名词"硬约束(生成口播前先读,逐题自检)
**适用范围:口播正文。** 简历简介与 bullet 的名词策略见 [oral-and-resume-patterns.md](references/rules/oral-and-resume-patterns.md):允许外部可检索的范式名;禁止私有函数、路径、枚举。不要用本节黑名单把简历支柱剥成「对接了某某接口」。
面经读者是**外部面试官**(不在你团队、不熟悉你项目)。以下**七类名词**属于"内部私名 / 团队黑话",一律禁止在口播正文里直接堆叠,必须先翻译成通用技术抽象。约束按**形态**判定,不锁死到任何具体项目。
### 黑名单(按形态识别,禁止在口播里堆叠)
| 类别 | 识别形态(不是具体名) |
|---|---|
| 1. 私有框架组件 / hook / API | 只在本公司/本项目能搜到的自研标签、自研 hook、自研 runtime 函数 |
| 2. 项目内部函数名 | 团队仓库里定义、外部搜索无结果的私有函数(如 `fetchXxxData` / `updateXxxStore` / `getXxxVersion` / `xxxAssert`) |
| 3. 后端字段与私有枚举值 | 蛇形命名的接口字段(`user_status`、`ext_info` 等)+ 复合大写枚举(`SOME_MODULE_XXX_STATE`) |
| 4. 打点事件名 | 以业务/产品前缀开头的下划线拼接串(`biz_module_stage_event`) |
| 5. 端能力 / 容器私名 | 首字母大写 + 特殊后缀的容器名、私有 JSBridge 命名空间(`x.xxx`、`bridge.xxx`) |
| 6. 动态配置键 / 灰度开关 | 全小写下划线开关名(`enable_xxx_yyy`)、URL query flag(`abc=1`) |
| 7. 上下游业务黑话 | 3~5 字中文缩写、产品代号、内部俗称(只在本团队内部通用的业务名) |
### 白名单(通用工程语言,鼓励使用)
React / Vue / TypeScript / SSR / CSR / Hydration / Streaming SSR / `<Suspense>` / Service Worker / Web Worker / Prefetch / Preload / Fallback / Error Boundary / State Machine / Reducer / Selector / Immutable Update / Single Source of Truth / JSBridge(泛称)/ Feature Toggle / A/B Testing / CDN / Cache Invalidation / Idempotency / Race Condition / Timeout / Circuit Breaker / Rate Limiting / Graceful Degradation / Observability / SLO / SLI / P95 Latency / FMP / CLS / Message Queue / Eventual Consistency / Transaction / Sharding。以及**当前项目领域内、外部可检索**的范式名(不要因为不在本列表就从简历上剥掉)。
### 翻译原则(必用)
| 内部名的形态 | 通用抽象的表达 |
|---|---|
| 私有 hook / action | "store 的 read hook / write action" |
| 分层决策函数 | "一级路由决策 / 二级视图状态机" |
| 后端下划线字段 | 用**语义化描述**代替字段名(如"授信信息"而不是 `xx_auth_info`) |
| 复合枚举 `MODULE_STATE_SUB` | 用中文语义("某模块的 X 状态"),不搬枚举原名 |
| 具体打点事件名 | "水合成功率打点""预取生命周期打点" |
| 私有 JSB namespace | "端内 JSBridge" / "容器 native call" |
| 灰度开关键名 | "配置中心下发的 feature toggle" |
| 业务黑话 | 直接省略,或换成"某营销活动""某信贷子产品"这类中性描述 |
### 预算(用于自检 / 质量门禁)
- 每道**主问口播 ≥ 150 字**,其中黑名单内部名词密度 **≤ 2 次**,且**每次出现必须紧跟一句通用抽象说明**。
- 每道**追问口播 ≥ 150 字**,黑名单内部名词 **≤ 1 次**。
- 违反预算 → 该题重写;不通过则不落盘。
### 抽象层级样例(默认目标 = 样例风格 B)
- 见 `references/examples/oral-style-samples.md`,内含**前端**与**后端**两份完整口播样例(含 STAR + 追问)+ 反例(私名堆叠型)+ **题干正反例**(简历展开型 vs 源码巡检型)。
- 生成面经时**每一道题的口播都要对齐样例风格 B 的抽象层级**:通用工程语言为主 + 极少量内部私名兜底证据。
- 反例(样例中的"私名堆叠型"口播、"源码巡检型"题干)**禁止出现**在最终面经里。
### 证据下沉
- 所有具体函数名、文件路径、私有打点事件名、私有容器名统一收敛到面经文末的「**源码证据索引**」表格。
- 简历 bullet 可保留业界可检索名与设计约束数字;口播只做通用抽象叙述;索引表用于候选人自己复盘、以及被追问细节时的"证据钩子"。
---
## `导学-{简称}.md` 结构(顺序固定)
1. **前置知识(面试高频标注)**
表格:知识点 / 为何需要 / 在本项目中的位置 / 高频度(高/中/低)。
2. **重点亮点与学习顺序(先看这个)**
3~6 条:亮点标题 / 为什么重要 / 通用技术关键词 / 先看哪些文件(相对路径)/ 建议学习顺序。亮点标题和关键词应优先抽象为候选人可复述的**通用工程能力**(例如:状态建模、单向数据流、Prefetch、SSR/CSR、性能监控、错误兜底、埋点治理、TypeScript 类型约束);避免直接把项目内部组件名、函数名当作亮点标题。
3. **必备知识点**
精简 checklist:读者必须搞懂的点(可与前置知识呼应)。
4. **推荐阅读(结合仓库)**
**紧接在必备知识点之后**。每条必须包含 **项目相对路径**(如 `` `src/stores/BusinessStore.ts` ``);若未知,写 `(仓库未提供路径,待用户补充)`。列:主题 / 通用技术点 / 建议阅读位置 / 预计时间 / 读完能回答什么。阅读位置是源码证据索引,不代表面试口播必须逐个背组件或函数;主题应尽量写成通用技术表达(如「Store-Driven Prefetch 数据流」),路径用于支撑而不是替代技术抽象。
5. **自学提醒(固定短段落)**
必须包含一句明确提醒:若某文件或原理看不懂,请继续追问 AI;本 skill 负责给学习路径与题目,不提供逐行讲解。
6. **项目技术定位**
`前端` / `后端` / `AI` / `交叉` + 一句依据。
7. **核心原理解析**
「问题 → 机制 → 在本项目中的落点」,3~6 条。
8. **关键设计决策**
备选 / 取舍 / 风险 / 验证。
9. **量化与验证(含待测,建议)**(可放在**文末**)
用建议语气给出测量思路;文内数据可用(待测)占位;性能相关建议写清「怎么测」。
**已删除**:不再输出「必备基础(❌/✅ 代码对比)」。
**导学 vs 面经的名词与海拔策略**:导学是"自己看的学习地图",允许包含具体文件路径、函数名、字段名作为源码证据索引,也可以偏实现细节。**面经简历是给外部面试官的支柱**,必须遵守四槽公式与海拔(架构 > 机制 > 细节),**禁止把导学亮点原样写成简历 bullet**。口播遵守上文的"内部名词硬约束"。
---
## `面经-{简称}.md` 结构(顺序固定)
1. **项目简介(简历可用,1~2 句)**
说清楚「做什么 + 关键技术/形态 + 关键能力」,参考 [口播与简历抽象](references/rules/oral-and-resume-patterns.md),可直接用于简历项目描述。**不得堆叠内部私名**;业界可检索的架构名应当保留。
2. **简历 bullet(4~6 条一级,允许二级嵌套)**
先从架构演进、核心失败模式和系统机制中抽取支柱,再对照 `references/examples/bullet-few-shots.md` 的正例、反例和改写对照成稿。每条一级必须具备四槽:`痛点或演进` + `机制(业界可检索名)` + `硬约束或数字` + `结果(架构效果或真实指标;无线上数据才(待测))`;至少保证「问题或演进 + 机制 + 结果」。结果必须紧跟机制,禁止用“提升性能/提高稳定性/优化体验”等空泛句代替。完整配方、动词按职责、反例工单型,见 `references/rules/oral-and-resume-patterns.md`。核心作者可用「主导 / 把 X 从 Y 收到 Z」;实习/参与者用「接入 / 新增 / 主 O 某子模块」。交互细节(单控件、单协议字段、单文件读写)不进一级。禁止复制 few-shot 或优秀简历样例中的项目名、数字、领域名词和指标。
3. **简历 → 面试展开(必填表)**
列:简历一级 bullet 短标题 / 面试官主问 / 对应题号。每一道主问(简介级通用题除外)必须能在本表找到对应支柱。
4. **面试问题(按简历支柱展开,主问合计 8~12)**
正文重心放在面试题口播。每个一级 bullet:**1 主问 + 2 追问**;可另加 2~4 道简介级通用题。
计数口径:**8~12 仅统计主问题数量**,追问不计入该总数。
- **题干**:面试官只看过简介 + bullet。禁止文件路径、私有函数名、issue 号、内部开关。对齐 `oral-style-samples.md` 的「简历展开型」;「源码巡检型」题干禁止出现。
- **口播版**:**第一人称**;**主问题口播 ≥150 汉字**;**每个追问口播 ≥150 汉字**;须覆盖完整 STAR(情境—任务—行动—结果),采用「场景(现象)→ 归因 → 动作(可分点)→ 结果/兜底」叙述,关键术语可 **中英括号** 对照。
- **抽象层级**:对齐 `references/examples/oral-style-samples.md` 中的"样例风格 B"(通用工程语言为主 + 极少量内部名兜底证据)。反例(私名堆叠型)禁止出现。
- **内部名词密度**:遵守上文"内部名词硬约束"的预算(主问 ≤ 2 次、追问 ≤ 1 次),每次出现必须紧跟通用抽象翻译。
- 若需要解释代码实现,优先写「机制 + 简化伪代码/数据流」:例如 `Worker 预取 → Store 消费 → Hook 聚合 → Page 渲染`,而不是逐行描述某个组件内部函数。具体组件名、函数名、文件路径统一放到「源码证据索引」或括号里轻量带过。
- 禁止仅用短语式 bullet 代替口播正文。
- 不单独输出「亮点拆解」章节,避免与导学内容重复。
5. **源码证据索引(必填)**
面经文末**唯一允许集中出现内部私名的位置**。表格列:主题 / 关键路径与内部符号 / 对应正文位置(Q1、追问2 等)。用于候选人被追问细节时的"证据钩子",正文本身仍以通用抽象为主。
---
## 质量门禁(自检后再写入)
- [ ] 根目录已生成 `导学-{简称}.md` 与 `面经-{简称}.md`(或已等价输出双文件内容)
- [ ] 导学含「重点亮点与学习顺序」+「推荐阅读」且含 **通用技术点** 与 **相对路径** 列
- [ ] 导学含「自学提醒」固定短段落(看不懂继续问 AI,skill 不做逐行讲解)
- [ ] 面经「项目简介」为 1~2 句简历向描述,且未堆叠内部私名
- [ ] 写 bullet 前已对照 `references/excellent-resumes/` 至少一份金样;每条一级 bullet 四槽齐全(痛点或演进 / 机制 / 约束或数字 / 结果)
- [ ] 写 bullet 前已对照 `references/examples/bullet-few-shots.md`;每条先完成支柱事实归档,再按正例/反例/改写对照成稿
- [ ] 简历一级 bullet **不是**导学亮点的原样粘贴,也不是「接入/开发 + 交互细节 +(待测)」工单型
- [ ] 简历一级 bullet 每条只表达一个支柱,至少具备「问题或演进 + 机制 + 结果」;没有真实证据时未编造数字
- [ ] 含「简历 → 面试展开」表;每道主问(简介级通用题除外)能回指一条一级 bullet
- [ ] 主问题干为简历展开型:无文件路径、无私有函数名、无 issue 号、无内部开关;未出现源码巡检型反例
- [ ] 面经每道**主问口播** ≥ 150 字,黑名单内部名词密度 **≤ 2 次**,且每次出现紧跟通用抽象翻译
- [ ] 面经每道**追问口播** ≥ 150 字,黑名单内部名词 **≤ 1 次**
- [ ] 面经每题的抽象层级对齐 `references/examples/oral-style-samples.md` 的"样例风格 B",未出现"私名堆叠型"反例特征
- [ ] 面经不含团队内部业务黑话(3~5 字中文代号 / 产品俗称),或已改写为外部可懂表达
- [ ] 主问数量 8~12;每个一级 bullet 至少 1 主问 + 2 追问
- [ ] 面经含**「源码证据索引」**表格,集中收纳内部私名与对应主题
- [ ] 面经不含「亮点拆解」独立章节
- [ ] (建议)导学可含「量化与验证(含待测)」并说明怎么测;面经不强制该章节
## 脚本辅助
- `python3 scripts/check_inputs.py`
- `python3 scripts/build_prompt.py --short-name '简称' -d '项目描述' [--tech …] [--role …]`
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!