大家好,我是子昕,一个干了10年的后端开发,现在在AI编程这条路上边冲边摸索,每天都被新技术追着跑。
作为一名深度使用AI编程工具的开发者,相信你一定遇到过这些令人头疼的问题:
语言偏好问题 :Kiro默认总是用英文回复,每次都要在对话中强调“请用中文回复”,简直让人抓狂。明明是中国开发者,为什么不能记住我的语言偏好?
重复解释项目规则 :每开启一个新对话,都要重新向AI解释项目的技术栈、代码规范、目录结构等信息。今天说了用React + TypeScript,明天又要重新介绍一遍,感觉在和一个“失忆症”患者对话。
缺少统一标准 :团队里不同的开发者使用Kiro时,得到的代码风格和实现方案千差万别,缺乏一致性。
很多朋友都在问:Kiro有没有类似Cursor那样的rules文件功能?能不能让AI记住我的偏好和项目规则?
答案是:有的! Kiro的Steering功能正是为了解决这些痛点而生。
核心功能详解:Steering让AI拥有“项目记忆”
什么是Steering?
Steering是Kiro的核心功能之一,它通过.kiro/steering/目录下的markdown文件,为AI提供持久性的项目知识。简单来说,就是给Kiro配置一个长期记忆,让它记住你的项目偏好、编码规范和技术选型。
如何创建Steering?
只需要点击「Generate Steering Docs」按钮,Kiro会自动分析项目,然后生成三个默认Steering文件:
三个默认文件:构建AI的基础认知
Kiro会自动创建三个基础文件,构成AI对项目的核心理解:
1. product.md - 产品概述
定义产品目标、用户群体、核心功能和业务目标。让AI理解技术决策背后的为什么。
2. tech.md - 技术栈
记录框架、库、开发工具和技术约束。AI会优先推荐你已确定的技术方案。
3. structure.md - 项目结构
规定文件组织、命名规范、导入模式等架构决策。确保生成的代码完美融入现有代码库。
product.md
tech.md
structure.md
解决语言偏好问题:一次设置,永久生效
想让Kiro默认用中文回复?在任意steering文件中添加语言偏好即可:
## 交流偏好
- 默认使用中文进行所有交流和代码注释
- 代码变量和函数名使用英文,但注释必须使用中文
- 错误信息和调试信息优先使用中文解释
三种包含模式:精准控制上下文
Steering文件支持三种包含模式,让你精确控制何时加载特定规则:
1. Always Included(默认模式)
---
inclusion: always
---
核心标准文件,每次对话都会自动加载。适合技术栈、编码规范等通用规则。
2. Conditional Inclusion(条件包含)
---
inclusion: fileMatch
fileMatchPattern: "components/**/*.tsx"
---
只在处理匹配文件时自动加载。比如组件规范只在编辑React组件时生效。
3. Manual Inclusion(手动包含)
---
inclusion: manual
---
通过#steering-file-name手动引用。适合特殊场景的专用指南。
上面自动创建了三个默认的以及新建了一个自定义的Steering文件,开启一个新的会话之后,效果就是这样的:
会自动引用Steering文件,不需要再每次重述一遍。
实战示例:打造你的专属规则库
API规范文件 (api-standards.md)
---
inclusion: fileMatch
fileMatchPattern: "app/api/**/*"
---
## API开发规范
### 响应格式
所有API必须返回统一格式:
{
"code": 200,
"message": "操作成功",
"data": {},
"timestamp": 1635724800
### 错误处理
- 400: 参数错误
- 401: 未授权
- 500: 服务器错误
组件开发规范 (component-standards.md)
---
inclusion: fileMatch
fileMatchPattern: "src/components/**/*.tsx"
---
## React组件开发规范
### 组件结构
1. 导入顺序:React -> 第三方库 -> 内部组件 -> 类型定义
2. 使用函数式组件 + Hook
3. Props接口必须导出,命名为`{ComponentName}Props`
### 样式规范
- 使用Tailwind CSS类名
- 复杂样式抽取为独立的样式组件
- 颜色变量使用设计系统定义
中文偏好文件 (chinese-preferences.md)
---
inclusion: always
---
## 交流和编码偏好
### 语言设置
- 所有对话、解释、注释默认使用中文
- 变量名、函数名使用英文(遵循编程规范)
- git commit信息使用中文描述
### 代码注释规范
- 函数和类必须有中文注释说明用途
- 复杂逻辑需要行内中文注释
- TODO和FIXME使用中文描述
引用实际文件:保持同步更新
Steering还支持引用项目中的实际文件,确保规则与代码保持同步:
## API接口规范
参考最新的接口文档:#[[file:api/openapi.yaml]]
## 组件示例
标准按钮组件实现:#[[file:components/ui/button.tsx]]
## 环境配置
环境变量配置模板:#[[file:.env.example]]
最佳实践:让Steering发挥最大价值
- 保持专注 :一个文件只负责一个领域
- 命名清晰
:使用描述性文件名,如
api-rest-conventions.md - 包含上下文 :解释决策原因,不只是规则本身
- 提供示例 :用代码片段展示标准实现
- 定期维护 :随项目演进更新规则
总结:一次配置,终身受益
通过Steering功能,我们彻底解决了AI编程助手的“失忆”问题:
语言偏好固化 :一次设置中文偏好,告别每次重复指定
项目规则持久化 :技术栈、编码规范自动记忆
团队标准统一 :所有成员使用相同的AI规则
智能上下文管理 :根据文件类型自动加载相关规则
相比Cursor的简单rules文件,Kiro的Steering功能更加灵活强大:支持条件加载、文件引用、模块化管理,真正做到了一次配置,终身受益。
如果你还在为每次都要调教AI而烦恼,赶紧试试Steering功能吧!
建立好规则库后,你会发现Kiro变成了真正懂你的专属编程助手。
你在使用Kiro时还遇到了哪些痛点?欢迎在评论区分享,我们一起探讨解决方案!
最后,我建了一个AI编程交流群,如果感兴趣,可以后台加我微信进群。
觉得有用就点个关注呗,我会继续用我这半吊子水平为大家带来更多AI编程工具的第一手体验~
「点赞、转发、在看」
和大家一起看
