NAME
.kiro/steering/*.md — instruction file for Kiro
SYNOPSIS
~/.kiro/steering/
.kiro/steering/
METADATA
DESCRIPTION
Kiro steering files are Markdown instruction files that guide Kiro, Amazon's AI-powered IDE. They live in the `.kiro/steering/` directory at both project and global (~/.kiro/steering/) levels. Each file requires YAML frontmatter with an `inclusion` field that controls activation: `always` (every request), `auto` (Kiro decides based on relevance matching against the description), or `manual` (only when explicitly referenced).
Steering files support optional `globs` in frontmatter for file-pattern scoping. Project-level files are intended to be committed to version control and shared with the team, while global files express personal preferences.
Kiro also uses the `.kiro/` directory for specs (requirements documents), hooks (automated actions), and tasks, but only the `steering/` subdirectory contains instruction files.
Lower numbers load first. Higher-priority files override lower ones.
STRUCTURE
ANNOTATED EXAMPLE
1---
2inclusion: always
3description: "Core coding standards for the project"
4---
5
6# Code Standards
7
8## TypeScript Conventions
9- Use strict mode with no `any` types
10- Prefer `interface` over `type` for object shapes
11- Use barrel exports from `index.ts` files
12
13## Error Handling
14- Wrap async operations in try/catch
15- Use custom error classes from `src/errors/`
16- Never swallow errors silently
17
18---
19
20## Example: Auto-loaded file (.kiro/steering/react-patterns.md)
21
22```markdown
23---
24inclusion: auto
25description: "React component patterns and hooks conventions"
26globs:
27 - "src/components/**"
28 - "**/*.tsx"
29---
30
31# React Patterns
32- Functional components only
33- Custom hooks in `src/hooks/`
34- Use React.memo for expensive renders
35```
COMMON MISTAKES
Without the inclusion field, Kiro may not load the steering file at all. The frontmatter is required, not optional. Every steering file needs at minimum `inclusion` to define its activation behavior.
The `.kiro/` directory contains other Kiro configuration (specs, hooks, tasks). Only Markdown files inside the `steering/` subdirectory are treated as instruction files.
When inclusion is set to `auto`, Kiro uses the description field to determine whether the steering file is relevant to the current task. Without a description, Kiro has no signal and may skip the file entirely.