跳到正文
meng shao· @shao__meng · X·· 2 小时前AI 评分72
AI 导读

斯坦福大学 @mihail_eric 的「CS146S: The Modern Software Developer」第三周课程公开,主题为 Agent Skills and CLI,首次加入客座讲师 @leerob,讲义见 https://themodernsoftware.dev。

正文

斯坦福大学「AI 原生软件开发」第三周课程已公开

@mihail_eric 教授的「CS146S: The Modern Software Developer」已经进行到了第三周,主题是:
Agent Skills and CLI,这周第一次有客座老师加入,居然是 @leerob ,期待!
https://themodernsoftware.dev

第三周:Agent Skills and CLI
Skills 是什么、SKILL.md + 脚本如何编码工作流、Web skills 如何扩展 Agent 能力边界、如何在 CLI 下高效工作
https://docs.google.com/presentation/d/15bPu5c-i8D8McTh6l7SpUPk2n9M_Y-CdDQLfyzL8RD8/edit?usp=sharing

前两周完成了两层铺垫:Week 1 拆解 Coding Agent 的内部机制(Agent Loop、read/write/edit/bash 四件套、system prompt 的组织方式),Week 2 讲上下文工程与 MCP(RePPIT 流程、SDD、工具的 Agent Ergonomics 设计)。Week 3 顺理成章地回答下一个问题:当 Agent 具备了调用工具的能力(MCP)之后,如何把“做事的方法”本身交给它。

课表安排也印证了这条主线:Week 4 讲 CLAUDE.md / AGENTS.md / hooks(仓库级定制),Week 5 讲 agent-ready codebase。Skills 处在“给 agent 的能力”与“给 agent 的环境”之间,是承上启下的一环。

一起看看讲义中的部分重要内容

讲义中展示了几个 Skills 分类
· 代码理解与规划:RePPIT skills、Matt Pocock 的 grill-me / grill-with-docs
· 验证:create-verification-skill
· 代码风格:编码最佳实践类 skill
· 杂项 / 浏览器解析:http://browse.sh

最佳实践
关于写什么:
· 一个 skill 只做一件事(keep scope focused);
· 维护你自己的、可跨项目移植的技能集;
· 从自己的对话记录里挖,skills 是写成 markdown 的流程,翻你自己的聊天记录,看你在哪些地方出手纠正过 agent,那里就藏着一个值得编码的 skill。这是最实用的方法论:你的干预点 = 你的技能点;
· 厨师自带刀具穿梭于各个厨房(@poteto 的比喻),个人技能集是工程师的随身工具;
· 别浪费 token/时间重造轮子:给 agent 配一个 CLI 工具,把样板流程包进 skill。

关于怎么写:
· description 要包含触发场景和用户实际会输入的短语,大多数 skill 失败于“从未被触发”;
· 渐进式披露:SKILL.md 正文保持精简,长参考资料放到 skill 目录的附属文件里按需引用,因为正文每次触发都会加载进上下文;
· 模块化组合:skill 之间可以互相引用;
· 维护一个验证 skill,让 agent 能检查自己的产出,这就形成了改进闭环。

讲义中分享的三个 Skills
1. pstack(Cursor 插件)@poteto
https://github.com/cursor/plugins/tree/main/pstack

2. Skills For Real Engineers @mattpocockuk
https://github.com/mattpocock/skills

3. A browser CLI for your AI Agents @browserbase
https://browse.sh/

引用meng shao@shao__meng
斯坦福大学「AI 原生软件开发」第二周课程已公开 @mihail_eric 教授带来的这门「CS146S: The Modern Software Developer」已经进行到了第二周,主题是:高级上下文工程 https://themodernsoftware.dev/ 这周课程分为两节: 高级提示技巧 + RePPIT 框架与 SDD MCP 与工具调用全解:理论、搭建与工具设计 # RePPIT 框架:五步工作流 RePPIT (Research, Propose, Plan, Implement, Test) and spec-driven development 本周的方法论主体,Mihail 用一个自己 vibe code 出来的 Mint(个人记账应用)克隆做现场演示,为它添加"按类目显示消费趋势线"的功能。关键设定是:他自己也没读过这个代码库的代码,以此模拟接手陌生代码的真实场景。 五步各自要点: 1. Research(研究) — 只记录"现状是什么",明确禁止提出改进建议。产出一份结构化的研究文档:代码库有哪些组件、行为契约是什么、关键代码位置在哪。这份文档有双重作用:既为后续步骤播种上下文(用压缩后的表示替代喂原始代码),也帮人自己建立足够的心理模型去鉴别智能体输出的好坏。 2. Propose(提议) — 基于研究文档,让智能体给出两个相互独立的方案(附权衡分析与开放问题)。为什么是两个?讲师用 PCA 打比方:他要的是"正交的主成分",强制智能体探索解空间的两个不同方向,更多方案收益递减,剩下的判断空间留给人。人在这两步的参与度最高:作为理解产品需求与系统约束的专家做出选择,这是当前人类杠杆最大的位置。 3. Plan(计划) — 用模板化的设计文档填充:现状、功能性与非功能性需求、设计决策与权衡、技术设计(讲师特意要求带行号,让计划接近代码级别)、测试计划、可观测性、未来考虑。其中最有价值的一节是明确圈定范围外的事项("不要碰这些,只做范围内的工作")这是防止智能体跑偏做无关改动的重要护栏。 4. Implement(实现) — 提示词几乎就是一句"执行计划"。真正值得注意的变化是:现代智能体(如 Cursor)会隐式地打开浏览器、造测试数据、通过 CSV 接口上传来验证自己刚写的功能,实现与测试正在合并为一步。若你的智能体没有此能力,可加 Playwright 之类的 MCP server 补足。 5. Test(测试) — 分两层。行为契约(上传 CSV → 看到趋势线)由智能体的浏览器交互直接验证;性能、可读性、安全性等超出行为契约的部分交给 agent 驱动的代码审查(实践中常见四五个专门化智能体各管一域,安全、性能、风格,由协调智能体汇总成一份报告)。 # 上下文管理的三个实操问题 这是现场问答中含金量最高的部分(依据为 LangWatch 对 2,451 个 Claude Code 会话的实证研究): 何时压缩(compact)? 在 25 万–45 万 token 之间执行压缩,宁可偏晚也不要太早,压缩过早的代价远高于过晚。原始研究还发现上下文利用率随窗口膨胀急剧衰减:5 万以下时利用率 47.5%,60 万以上时只剩 2.5%;而压缩后 5 步内用户纠错率会升至基线的 2.37 倍(存在"压缩后迷雾期"),所以也不能无节制地压。 何时清空重开? 演示中讲师做了一次他自认不妥的操作:选定方案后没清上下文,导致落选方案的 token 仍留在窗口里干扰执行。他的原则是倾向于清空,把关键信息写入文件,用压缩表示开新会话。另外不要从臃肿的父会话 fork 子智能体(有人因此一天烧掉 11 亿 token),应让子智能体从干净的小上下文起步。 模型怎么分配? 前段(研究/提议/计划)用最强的模型,因为思考集中在这里;后段(实现/测试)可以用轻量模型。这是一种直接的工程化降本手段。 # MCP 与工具调用 第二次课覆盖 MCP 的理论、搭建与工具设计。配套阅读勾勒出三个层次: 1. 协议本身:server/client/tool/transport 的基本模型——让智能体以标准化方式调用外部能力。 2. 工程实践:Cloudflare 的企业级方案直面 MCP 落地的四大痛点,供应链风险(本地 server 依赖未审计软件)、授权失控(员工各装各的)、工具 schema 洪水(52 个工具约 9,400 token,Code Mode 把它们收拢成 2 个工具约 600 token,降 94%)以及影子 MCP 检测。其"门户 + 默认拒绝 + 审计日志"的架构是 MCP 企业化的一套参考答案。 3. 工具设计的"人机工学":为智能体设计工具不是把 REST API 直接包一层——API 的组织逻辑服务人类浏览,而智能体需要的是低歧义、可组合、schema 精简的调用面。这与上一讲的"smart tokens"一脉相承:工具定义本身也占用上下文,也是要经营的成本。 # 生态对比:三条规格驱动路线 阅读材料中的 OpenSpec 与 Superpowers 正是 RePPIT 的工业化对照物,三者共享同一思想内核(先探索、再提案、再计划、后执行、终验证),但形态不同: RePPIT:讲师自用一年半打磨的个人技能集,轻量、可自由改造 OpenSpec(约 6.8 万 star):以 /explore → /propose → /apply → /verify → /archive 命令固化为目录化的规格产物(proposal.md、specs/、design.md、tasks.md),强调规格随工作演进且团队与智能体对齐 Superpowers(约 30 万 star):讲师称之为"我讲的框架的强化版",一整套可组合的技能库(头脑风暴、写计划、执行计划、代码审查、TDD、系统性调试),并强制执行"测试先行、系统化而非临时起意、证据优先于声明"的纪律。讲师特别点出:这个 30 万 star 的仓库本质就是一组 SKILL.md 技能文件,这本身就是"工作流即代码"的绝佳例证。
在 X 查看被引用的帖子

来源:meng shao · x.com