project-learning
以交互式课堂方式带用户学习一个代码项目,按章节讲解架构、模块、函数调用和数据流,并把关键图、代码地图、理解检查和课堂笔记沉淀到项目文档中
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
以交互式课堂方式带用户学习一个代码项目,按章节讲解架构、模块、函数调用和数据流,并把关键图、代码地图、理解检查和课堂笔记沉淀到项目文档中
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
从 target-aware case suite、task manifest 或 target/module/all selector 生成 pytest,执行 profile gate、Case IR、freshness check,并处理少量 UNPARSED 补写
构建模块级 fixture/module profile 或用例级 suite profile,把 Markdown 用例接入 test-codegen 管线
从已验证 pytest、Case IR 和 profile 中识别可沉淀模式,评估是否晋升为 assertion_rules、case_flows、fixture helper 或 emitter 规则
基于测试知识库和测试规范,为指定模块或需求 suite 生成 Markdown 用例和 mismatch 记录
测试资产维护分诊台:诊断项目当前状态,定位管线断裂层,路由到正确的 skill 或 CLI 命令
将外部/历史/公司测试平台用例迁移为 AITest Markdown suite 用例,并保留语义追溯、阻塞分类和人工 review 清单
| name | project-learning |
| description | 以交互式课堂方式带用户学习一个代码项目,按章节讲解架构、模块、函数调用和数据流,并把关键图、代码地图、理解检查和课堂笔记沉淀到项目文档中 |
| when_to_use | 当用户希望从小白视角学习一个项目、通读代码、理解重要函数/数据流,或要求“交互式学习”“课堂笔记”“写进 lesson/usebook”时 |
| argument-hint | [project_root] [lesson_dir] |
| arguments | ["project_root","lesson_dir"] |
| user-invocable | true |
| allowed-tools | Read Glob Grep Write Edit Bash |
| effort | high |
用课堂式节奏带用户学习一个代码项目:先建立心智模型,再逐层读入口、配置、核心模块、数据流、测试和扩展点。每节课只讲一个可消化主题,并把高价值内容沉淀为 lesson 文档。
帮助用户真正掌握项目,而不是只得到一次性摘要。
交付物包括:
输入 -> 处理 -> 输出。默认 lesson 目录按以下顺序选择:
$lesson_dir。docs/usebook/lessons/,使用它。docs/lessons/,使用它。docs/lessons/。lesson 文件命名:
lesson-1.md
lesson-2.md
lesson-3.md
...
如果已有 lesson,继续追加或创建下一节;不要覆盖用户已有笔记。
读取最小必要上下文:
README*AGENTS.md / CLAUDE.md / 项目协作说明pyproject.toml / package.json / 主配置文件输出 5-10 节学习路线。每节应包含:
不要在第一步就深入解释所有代码。
每节课按这个顺序讲:
lesson 文档建议结构:
# Lesson N:主题
> 学习目标:一句话说明本节目标。
## 调用图 / 数据流图
```mermaid
flowchart TD
A["输入"] --> B["核心处理"]
B --> C["输出"]
| 文件/函数 | 职责 | 本节理解重点 |
|---|---|---|
path/to/file.py | ... | ... |
如果用户指定“把第 2、4、5 点写进 lesson”,只写用户指定内容,避免扩写。
### 第四步:讲解深度控制
默认深度:
- 先解释模块职责和主调用链。
- 再解释关键函数。
- 最后解释关键行。
只有当用户明确要求“逐行解释”时,才做逐行解释。
解释代码时优先回答:
```text
这个函数为什么存在?
谁调用它?
它读什么输入?
它产生什么输出?
它改变了什么状态?
它失败时怎么表现?
它和上一层/下一层怎么连接?
每节结束时优先问检查问题,例如:
用户回答后:
优先使用 Mermaid:
flowchart TD
A["用户命令"] --> B["CLI 入口"]
B --> C["核心模块"]
C --> D["输出产物"]
图要服务理解,不要为了好看画大图。每张图控制在 5-12 个节点。
rg / rg --files。rg "function_name" 查证。一次完整学习任务完成时,应至少有: