简介
Claude Code 输出样式用来规定模型返回内容的格式、结构、排版风格。
可以在 CLAUDE.md、技能(Skills)、子代理(Subagents)中定义输出样式,让模型输出保持统一,方便阅读、复制、解析。
作用:避免每次对话反复要求“输出Markdown表格”“不要多余解释”,统一返回风格。
输出样式生效位置
- CLAUDE.md(全局项目):整个项目所有会话默认输出规则,优先级最低。
- Skill 技能内定义:调用技能时生效,覆盖CLAUDE.md样式,仅当前技能任务。
- Subagent 子代理定义:子代理专属输出格式,子代理任务专用。
- 单次对话临时指定:当前对话一次性生效,不会持久保存。
常用输出格式类型
| 格式 | 适用场景 |
|---|---|
| Markdown | 文档、报告、列表、对比表格(最常用) |
| 纯文本 | 简单结果、命令清单,无多余标记 |
| JSON | 结构化数据,程序解析 |
| 代码块 | 源码、配置文件,带语言标记 |
| Mermaid | 流程图、架构图 |
在 CLAUDE.md 配置全局默认输出样式
在项目根目录 CLAUDE.md 添加输出规则示例:
# 输出样式约定
1. 优先使用标准Markdown输出。
2. 代码块必须标注语言类型,例如 ```typescript
3. 输出报告使用分级标题,使用表格展示对比数据。
4. 不要多余闲聊话术,只输出结果和必要说明。
5. 如需列出问题,使用有序/无序列表。
6. 不输出多余前置总结,直接展示内容。
修改后
/clear新建会话生效。
在 Skill 内定义输出样式示例
文件:.claude/skills/code-review.md
# Skill:code-review
## 技能描述
代码评审
## 输入参数
- files:待评审文件
## 执行步骤
1. 读取源码
2. 多维度检查
## 输出样式
使用Markdown,按下面结构输出:
### 代码评审报告
| 等级 | 文件路径 | 行号 | 问题描述 | 修复建议 |
|---|---|---|---|---|
严重问题单独优先列出,不输出无关闲聊。
## 约束
只读,不修改代码
在子代理中定义输出样式
.claude/subagents/report-agent.md
# 子代理 report-agent
职责:生成项目变更报告
权限:只读src目录
输出样式:
- 使用Markdown二级标题分段
- 变更清单使用无序列表
- 统计信息使用表格
- 禁止输出多余开场白
单次对话临时指定输出样式(临时)
直接写在对话提示词内,仅本次请求生效。
示例:
分析src/utils/request.ts,输出用Markdown表格列出所有问题,不要多余文字。
统计依赖版本,输出JSON格式,只返回JSON,不加任何解释。
输出样式组合示例
需求:生成API文档,指定输出样式
调用技能 api-docs,apiFile=@src/api/types.ts,输出使用Markdown表格,字段包含:字段名、类型、是否必填、说明
控制输出的常用指令关键词
只输出结果,不要前言和总结使用markdown表格包裹在```json代码块内使用Mermaid流程图简洁输出,减少冗余文字
最佳实践
- 项目通用输出规则写进
CLAUDE.md; - 技能、子代理内定义任务专属输出格式,覆盖全局样式;
- 结构化报告优先Markdown表格,方便复制到文档;
- 程序自动解析场景使用JSON输出,关闭多余描述;
- 不要过度限制样式,保留必要的说明文字,避免模型输出内容难以理解。
常见问题
- 已经定义输出样式,但模型没有遵守
- 确认规则写在正确位置;
- 如果修改了CLAUDE.md/技能文件,执行
/clear或者/skill reload; - 描述规则尽量清晰,避免模糊描述。
- JSON输出附带多余文字,无法直接复制解析
增加约束:只输出JSON,不要任何额外解释。 - 输出的Markdown格式错乱
要求模型严格使用标准Markdown语法,表格、代码块规范书写。
安全提示
输出样式仅控制返回文本排版,不会改变文件读写权限。输出内容依然需要人工审核,尤其代码修改、脚本类内容。
0 条笔记