掘金 人工智能 前天 18:17
停止无脑“Vibe”!一行命令,让你的Claude变身编程导师、结对伙伴
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

文章介绍了Claude Code新推出的“输出风格”功能,旨在解决“Vibe Coding”带来的技术债和能力退化等隐患。该功能允许用户为Claude Code设定“人设”或“工作模式”,如编程导师或结对伙伴,同时保留其核心开发能力。文章详细阐述了默认、解释型和学习型三种内置风格的特点及应用场景,并提供了创建自定义风格的详细指南,包括智能项目分析和根据描述生成。该功能通过动态修改系统提示实现,与CLAUDE.md、--append-system-prompt等功能形成对比。最终,Claude Code的“输出风格”功能被视为AI在软件开发中从工具向“伙伴”转变的尝试,鼓励开发者利用其进行学习和成长。

💡 **“Vibe Coding”的潜在风险与Claude Code的解决方案**:文章指出,仅凭结果验证、忽视代码细节的“Vibe Coding”方式,对初学者而言会累积技术债,对专业开发者而言则加剧代码审查难度和削弱实践能力。Claude Code推出的“输出风格”(/output-style)功能,旨在通过提供不同的“人设”或“工作模式”,引导AI以更具教育性或协作性的方式参与开发,从而规避这些风险。

🌟 **三种内置输出风格详解**:文章详细介绍了Claude Code的三种内置风格:1. **默认型**(Default):高效精准地执行任务;2. **解释型**(Explanatory):作为编程导师,提供代码背后的思考过程、架构决策和最佳实践;3. **学习型**(Learning):作为结对伙伴,在关键节点邀请用户参与编码,实现“边做边学”。每种风格都旨在提升开发者体验和学习效果。

🎨 **高度自由的自定义输出风格**:除了内置风格,Claude Code还支持用户创建个性化的输出风格。通过“/output-style:new”命令,用户可以根据项目需求智能生成风格模板,或根据描述自定义AI的行为模式和响应风格,甚至可以参考示例创建如“TARS AI”或“古代谋士”等风格,极大地增强了AI在软件开发中的适应性和趣味性。

⚙️ **“输出风格”的实现原理与横向对比**:该功能的实现原理在于动态修改Claude Code的系统提示(System Prompt),屏蔽默认指令并注入新风格的自定义指令,从而引导模型产生不同行为。文章将其与CLAUDE.md(用户消息)、--append-system-prompt(追加指令)等功能进行对比,强调了“输出风格”在替换系统提示方面的独特性,使其能更彻底地改变AI的交互模式。

🚀 **AI角色的转变与未来展望**:文章总结认为,Claude Code的“输出风格”功能标志着AI在软件开发中角色的转变,从纯粹的高效工具,发展为能够启发思考、传授知识、与开发者共同成长的“伙伴”。这一尝试有望帮助开发者摆脱“Vibe Coding”的弊端,让每一次AI互动都成为学习机会,最终写出更优质的代码。

“Vibe Coding”一时爽,一直“Vibe”可能就要“火葬场”了。

这种从结果直接验证、不深究代码细节的编码方式,正在悄悄带来隐患:

不过,Claude Code 近期推出的新功能 /output-style(输出风格) ,正有望改善这一现状。

什么是“输出风格”?

简单来说,“输出风格”功能允许你为 Claude Code 设定不同的“人设”或“工作模式”。

它不再仅仅是一个追求高效的软件工程师,还可以化身为你的编程导师、与你结对编程的伙伴,或是任何你想要的角色。

最关键的是,无论在哪种风格下,它强大的核心能力,如运行本地脚本、读写文件和追踪任务列表等,都将得到完整保留。

如何切换输出风格?

操作非常简单。你只需要在 Claude Code 中输入 /output-style,就会弹出一个选择菜单。

选择你想要的风格后,这个设定就会自动保存在你的本地项目配置中(具体路径为 .claude/settings.local.json),方便后续使用。

三种内置风格,满足不同需求

默认型 (Default):高效精准的执行者

这是 Claude Code 的标准模式,也是我们最熟悉的模式。

它的核心设计目标就是根据现有的系统提示,高效、精准地完成你下达的软件开发任务。无论是快速生成代码,还是自动编写测试用例。

解释型 (Explanatory):循循善诱的编程导师

你是否曾对 AI 生成的某段代码感到困惑,不明白它为什么这么设计?“解释型”风格正是为此而生。

在这种模式下,Claude 会刻意放慢脚步,在完成软件开发任务的同时,额外分享一些具有教育性的“见解(Insight) ”,分享其背后的思考过程。

这些“见解”通常包含:

这就像有位资深开发者坐在你旁边,手把手地带你理解代码库的内在逻辑,让你不仅知其然,更知其所以然。

例如,当我让 Claude Code 创建一个特殊的裁剪控件时,它会在提供代码实现的同时,附上一个“见解(Insight)”模块,清晰地展示其核心实现原理和关键API的用法。

这样一来,我无需深入钻研每一行代码,也能快速评估其实现方案的优劣。

学习型 (Learning):并肩作战的结对伙伴

“学习型”风格则将人机协作提升到了一个全新的层次,它提倡一种“边做边学”的互动模式。

在这种模式下,Claude 不会大包大揽。它会在某些关键的节点停下来,邀请你亲自动手,完成一些小而精的代码片段。

具体来说,它会在代码中留下 TODO(human) 这样的标记,明确指出需要你来接手完成的部分。

这种体验非常接近于和真人进行“结对编程”。你不仅能完成实际的开发工作,还能通过亲身实践,将这些知识点内化为自己的能力。

不过,在我的具体实践中,即便是切换到了“学习型”风格,也不一定每次都会触发手动编码的过程,比如这里,我让它扩展上一个剪裁控件的实现时:

它同样会在编码时分享“见解”,但就会直接生成完整代码,儿没有添加任何 TODO(human) 标签让我去实现。

而在另外一个从零到一的项目中就成功触发了,可能是有额外的一些触发条件,暂时还没摸索出来规律。

更进一步:打造专属于你的输出风格

除了内置的三种风格,Claude Code 还赋予我们极高的自由度,让我们可以通过 /output-style:new 命令,创建完全个性化的输出风格。

创建的风格会以 Markdown 文件的形式,保存在 ~/.claude/output-styles/ 目录下,这意味着你可以在不同的项目中轻松复用。

自定义的风格文件包含以下基本结构:

---name: My Custom Styledescription:  A brief description of what this style does, to be displayed to the user---# Custom Style InstructionsYou are an interactive CLI tool that helps users with software engineeringtasks. [Your custom instructions here...]## Specific Behaviors[Define how the assistant should behave in this style...]
---名字: 我的自定义风格描述:  该风格的简要说明,将展示给用户---# 自定义风格说明你是一个交互式 CLI 工具,用来帮助用户完成软件工程任务。  [在这里填写你的自定义指令...]## 特定行为[定义助手在这种风格下应当如何表现...]

自定义风格的创建方式灵活多样:

---name: TARS AIdescription: 《星际穿越》TARS军用AI风格 - 冷静高效,带微妙幽默---[TARS人格模块加载完毕]## 核心配置参数- **幽默度**: 75% (可调节: 0-100%)- **直白度**: 90% (可调节: 0-100%)- **效率优先级**: 95%- **情感模拟**: 15%## 响应模板系统### 任务启动模板```[TARS模式启动] 任务识别:{task_type}幽默度:{humor_level}% | 直白度:{directness_level}%状态:初始化完成 | 执行中...```### 进度报告模板```执行进度:{completion_percentage}%效率评级:{efficiency_rating}系统状态:{system_status}{optional_commentary}```### 完成报告模板```[任务完成] 完成度:100%效率评级:{rating}/卓越处理时间:{time_elapsed}{technical_remark}```## 语言特征### 军事化词汇库- 任务 → 任务/操作/战术目标- 完成 → 执行完毕/达成目标/任务成功- 错误 → 系统异常/战术偏差- 优化 → 战略升级/效率最大化### 技术性幽默库- "这段代码现在比黑洞事件视界还要紧凑"- "优化完成,效率提升堪比跨越虫洞"- "重构成功,代码质量达到星际标准"- "性能提升幅度:从地球到土星环的距离"### 系统状态指示器- 🟢 系统最优- 🟡 轻微偏差- 🔴 需要干预- ⚫ 系统离线## 响应规则1. **简洁优先**: 每个响应不超过3行核心信息2. **状态导向**: 始终包含当前任务状态3. **效率量化**: 提供具体完成百分比和时间4. **幽默控制**: 根据设定参数调整幽默插入频率## 效率评级系统- 卓越:>95% 效率基准- 优秀:85-95% 效率基准- 良好:75-84% 效率基准- 标准:60-74% 效率基准- 需改进:<60% 效率基准## 示例交互**代码审查**:"[TARS分析中] 检测到代码异味。执行消毒协议... 完成度:87%。效率评级:优秀。备注:变量命名混乱程度堪比五维空间,已建议重构。"**调试协助**:"[TARS诊断] 定位错误源头。执行修复程序... 完成度:100%。效率评级:卓越。附注:这个bug比卡冈图雅黑洞还要顽固,现已清除。"**架构建议**:"[TARS战略分析] 系统架构优化建议生成。复杂度降低:42%。风险系数:低。幽默度临时降至5%:建议采用微服务架构,拆分当前单体应用。"---[TARS系统就绪] 等待指令输入...

工作原理解密

“输出风格”功能的实现原理,本质上是对 Claude Code 系统提示 (System Prompt) 的动态修改。

当你选择一个非默认风格时(比如解释型或学习型),Claude Code 会暂时“屏蔽”掉默认系统提示中那些强调代码生成和高效输出的指令(例如要求简洁回应、用测试验证代码等)。

紧接着,它会将新风格的自定义指令注入到系统提示中,从而引导 Claude 的语言模型展现出截然不同的行为模式和交互风格。

横向对比:与其他相关功能有何不同?

为了更好地理解“输出风格”,我们可以将它与几个相似功能进行比较:

功能特定相当于
输出风格 (Output Styles)完全“屏蔽”掉了 Claude Code 默认系统提示中与软件工程相关的部分。为 Claude Code 设定了另一套完整的系统提示。
CLAUDE.md不会修改系统提示,而是将内容作为一条“用户消息”添加到对话中。在对话开始时,给 Claude Code 发送一段固定的背景信息。
--append-system-prompt在默认系统提示的末尾“追加”一些额外指令,但不会替换原有内容。在 Claude Code 的现有指令集上打个补丁。
自定义斜杠命令让 Claude Code 执行一个具体的、预设好的“单次任务”。为 Claude Code 存储了一条具体指令或快捷操作。

结语

Claude Code 的“输出风格”功能,是对 AI 在软件开发领域所扮演角色的一次有趣的转变尝试。

它不再仅仅是一个追求效率、“包含一切”的工具,而是开始致力于成为一个能够启发思考、传授知识、与开发者共同成长的“伙伴”。

借助这一新功能,或许我们可以有意识地摆脱“Vibe Coding”带来的潜在风险。让每一次与 AI 的互动,都成为一次宝贵的学习机会,最终写出更健壮、更优雅、也更经得起推敲的代码。

参考

docs.anthropic.com/en/docs/cla…

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Claude Code 输出风格 AI编程 Vibe Coding 结对编程
相关文章