记录 CS146S: The Modern Software Developer 的学习过程:中文课程笔记、课堂资料,以及编程智能体与 MCP 的作业实践。
目前整理了 第 1–5 节课程笔记,作业目录覆盖 Week 1–2。可以从下面的课程导航开始阅读,也可以直接进入作业目录运行实践代码。
这是个人学习仓库。中文笔记包含个人理解与延伸资料,课程安排、要求和原始材料以课程方发布的内容为准。
按本仓库的第 1–5 节编号导航;部分笔记正文使用不同的讲次标记,阅读时可结合主题与日期对应。
| 节次 | 日期 | 主题 | 笔记 |
|---|---|---|---|
| 01 | 2026-09-22 | 现代软件开发者、最小可用编程 Agent | 阅读笔记 |
| 02 | 2026-09-24 | 编码智能体解剖:系统提示、工具、配置、计划与上下文压缩 | 阅读笔记 |
| 03 | 2026-09-29 | 高级提示与上下文工程 | 阅读笔记 |
| 04 | 2026-10-01 | MCP、工具调用与 Agent Skills | 阅读笔记 |
| 05 | 2026-10-07 | Agent Skills 实战与最佳实践 | 阅读笔记 |
建议按顺序阅读:先理解智能体的工具循环,再看真实产品的组成、上下文组织,以及 MCP 和 Skills 如何接入实际工作。
课堂资料目录 按日期保留第 1、2 节的课件、示例与中文补充材料。
作业原文保存在各周的 assignment.md,writeup.md 保留作答提纲;代码与运行说明另列如下。
| 周次 | 主题 | 当前内容 | 入口 |
|---|---|---|---|
| Week 1 | 捕获并分析 Claude Code 会话 | Windows 下的 mitmproxy / CC Switch 中继脚本与抓包说明 | 作业要求 · 抓包配置 · 作答提纲 |
| Week 2 | MCP Server 与认证 | 湖南师范大学教务系统的 Hunnu EAMS MCP 实现、配置模板与测试 | 作业要求 · 运行说明 · 作答提纲 |
通过 stdio 向智能体提供只读教务工具,支持课表、成绩、培养计划,以及空教室和开课查询。每位使用者需要在自己的电脑上完成学校 SSO 登录,服务随后使用本地缓存的会话。
使用 Python 3.12 和 Poetry,在仓库根目录执行:
cd CS146s课程作业
poetry install
poetry run playwright install chromium
poetry run pytest -q
cd week2
poetry run python -m hunnu_mcp login
poetry run python -m hunnu_mcp将 .mcp.json.example 复制为 .mcp.json,把 cwd 改为本机 week2 目录的绝对路径,再交给支持 MCP 的智能体客户端加载。详细说明见 Week 2 README;基础 Python 环境配置见 作业目录 README。
工具调用不会自动打开登录浏览器。遇到 auth_required 或 auth_expired 时,在 week2 目录重新运行登录命令。
抓包内容可能包含 API 密钥、请求正文和个人信息;教务会话缓存也属于敏感数据。不要提交 .env、.mcp.json、.claude/、*.flows 或会话缓存,仓库已有相应忽略规则。公开配置使用 .example 模板。
.
├── README.md
├── CS146S_第01节课_… .md
├── CS146S_第02节课_… .md
├── CS146S_第03节课-高级提示与上下文工程.md
├── CS146S-第04节课-MCP工具调用与AgentSkills.md
├── CS146S-第05节课-AgentSkills实战与最佳实践.md
├── CS146S The Modern Software Developer/
│ ├── CS146S_第01节课_2026-09-22/
│ └── CS146S_第02节课_2026-09-24/
└── CS146s课程作业/
├── pyproject.toml
├── poetry.lock
├── week1/ 作业原文、抓包说明与中继脚本
└── week2/
├── README.md MCP 运行说明
├── hunnu_mcp/ MCP 服务实现
└── tests/ 解析、会话与 MCP 协议测试
课件、课堂材料和作业原文的版权归课程方及各自作者。个人笔记仅供学习参考,发现理解偏差或链接问题欢迎通过 Issue 指出。