Skip to content
freitaslab
ia · kiro

Kiro da AWS: guia completo do IDE agêntico que pensa antes de codar

Table of contents

Open Table of contents

Introdução

Se você já usou ferramentas como Cursor ou GitHub Copilot, sabe que são ótimas para gerar código rápido — mas frequentemente falham em features complexas. Falta contexto, decisões arquiteturais ficam implícitas, e é difícil rastrear “por que” aquele código foi escrito daquele jeito.

Kiro é a resposta da AWS para isso. Lançado em preview público em julho de 2025, é um IDE agêntico construído sobre Code OSS (a mesma base do VS Code) que inverte a lógica do desenvolvimento assistido por IA: em vez de gerar código direto do prompt, ele primeiro transforma sua ideia em especificações formais, designs técnicos e planos de implementação — e só depois escreve código.

Este guia cobre tudo que você precisa saber: os 4 pilares do Kiro (Specs, Hooks, Steering, MCP), exemplos práticos, boas práticas, armadilhas comuns, planos de preços e comparações com as alternativas do mercado.

Importante

Apesar de ter sido lançado pela AWS, Kiro não é um serviço AWS e não exige conta AWS. Você pode fazer login com Google, GitHub, Builder ID ou AWS IAM Identity Center. Ele funciona de forma agnóstica com qualquer stack e qualquer provedor de nuvem.

O que é o Kiro

Kiro é um ambiente de desenvolvimento integrado (IDE) que funciona como parceiro estruturado de desenvolvimento. A grande diferença para outras ferramentas de IA é que ele não é apenas um assistente de código — é um agente que formaliza o processo de desenvolvimento.

Os 4 pilares fundamentais:

  • Specs: transforma prompts em requisitos, design e tarefas rastreáveis
  • Agent Hooks: automações disparadas por eventos (salvar arquivo, criar, deletar, etc.)
  • Steering: conhecimento persistente sobre seu projeto, convenções e padrões
  • MCP: conecta a docs, APIs e bancos de dados via Model Context Protocol

Instalação e primeiros passos

Kiro está disponível para macOS, Linux e Windows. Como é baseado em Code OSS, se sua máquina roda VS Code, roda Kiro.

Passo a passo:

  1. Acesse kiro.dev/downloads e baixe o instalador
  2. Execute o instalador como qualquer outro aplicativo desktop
  3. No primeiro acesso, escolha entre Google, GitHub, Builder ID ou AWS IAM Identity Center
  4. Opcionalmente, importe seus temas, extensões e preferências do VS Code

Se preferir linha de comando (útil em SSH e CI/CD):

curl -fsSL https://cli.kiro.dev/install | bash
Trial generoso

Ao criar sua conta pela primeira vez via login social ou Builder ID, você ganha 500 créditos bônus utilizáveis em 30 dias — em qualquer plano, inclusive o gratuito.

Vibe Mode vs Spec Mode

O chat do Kiro tem dois modos de operação que definem como você trabalha com ele:

Modo padrão, conversacional. Você descreve o que quer, o Kiro executa diretamente. Ótimo para tarefas rápidas, prototipagem e exploração de ideias sem pressão.

Use quando: a tarefa é simples, você está explorando uma ideia, prototipando ou não tem requisitos rígidos.

"Crie um endpoint Express que retorna
uma lista de produtos mockados"

Resultado: código direto no editor, pronto para testar.

Modo estruturado. Kiro gera primeiro os requisitos em notação EARS, depois o design técnico com diagramas, e então uma lista de tarefas rastreáveis. Só depois disso o código é escrito.

Use quando: a feature é complexa, envolve equipe, precisa de documentação, tem regressões custosas ou requer alinhamento entre produto e engenharia.

"Implemente um sistema de autenticação multi-tenant
com JWT, refresh tokens e rate limiting por usuário"

Resultado: 3 arquivos gerados (requirements.md, design.md, tasks.md) e execução passo-a-passo.

Pilar 1: Specs — o coração do Kiro

Specs são o que diferencia o Kiro de todo o resto. Toda especificação gera três arquivos que ficam versionados junto com seu código:

01
requirements.md

User stories e critérios de aceitação em notação EARS

02
design.md

Arquitetura, diagramas de sequência e decisões técnicas

03
tasks.md

Lista de tarefas discretas e rastreáveis para implementar

Notação EARS — Easy Approach to Requirements Syntax

O arquivo requirements.md usa EARS, um padrão que força clareza e testabilidade:

WHEN [condição ou evento]
THE SYSTEM SHALL [comportamento esperado]

Exemplos reais:

WHEN um usuário envia um formulário com dados inválidos
THE SYSTEM SHALL exibir erros de validação ao lado dos campos

WHEN o token JWT expirou
THE SYSTEM SHALL retornar 401 e limpar o refresh token do cliente

WHEN o usuário tenta fazer upload de arquivo maior que 10MB
THE SYSTEM SHALL rejeitar com erro 413 e mensagem "Arquivo muito grande"

Os dois tipos de Spec

Usadas para construir features novas. Kiro oferece dois workflows:

Requirements-First: você começa descrevendo o comportamento desejado. Kiro gera requirements → design → tasks. Ideal para projetos greenfield ou product-led.

Design-First: você começa com arquitetura ou pseudocódigo. Kiro deriva os requisitos e tasks. Ideal quando há restrições técnicas rígidas (latência, compliance) ou quando você está portando designs de outras ferramentas.

Para diagnosticar e corrigir bugs com precisão, prevenindo regressões. Em vez de requirements.md, gera-se bugfix.md que documenta:

  • Comportamento atual (o bug)
  • Comportamento esperado
  • Comportamento que NÃO deve mudar (evita regressão)

Perfeito para bugs em sistemas críticos onde quebrar algo existente é caro.

Boas práticas com Specs

  • Commite as specs no Git junto com o código. Elas são documentação viva.
  • Revise requirements antes de ir para design — é mais barato corrigir cedo.
  • Mantenha specs pequenas e focadas. Uma spec = uma feature. Se ficar gigante, quebre em várias.
  • Use Bugfix Specs para qualquer bug em produção — a documentação do “o que NÃO mudar” é ouro.
  • Não pule o design.md — mesmo em features pequenas, 5 minutos pensando em arquitetura economizam horas.

Pilar 2: Agent Hooks — automações inteligentes

Um Agent Hook é a combinação de dois elementos: um evento gatilho e uma ação a ser executada. Quando o evento acontece, o Kiro executa automaticamente a ação em background — seja um prompt para o agente ou um comando shell.

Os 10 tipos de trigger disponíveis

TriggerQuando disparaUso típico
File SaveArquivo salvo que bate com padrãoLint, format, testes, docs
File CreateArquivo novo criadoBoilerplate, licença, teste
File DeleteArquivo deletadoLimpar imports órfãos
Prompt SubmitUsuário envia promptContexto, bloqueios, log
Agent StopAgente termina respostaCompilar, testar, revisar
Pre Tool UseAntes de usar ferramentaBloquear uso, adicionar contexto
Post Tool UseApós usar ferramentaAuditoria, formatação
Pre Task ExecutionAntes de task de specSetup, validar pré-requisitos
Post Task ExecutionApós task de specTestes, docs, notificação
Manual TriggerExecução sob demandaReview, scan, otimização

Exemplo real: auto-documentação

Título: "Atualizar docs ao salvar rota"
Evento: File Save
Padrão: "src/routes/**/*.ts"
Ação: Ask Kiro
Prompt: |
  Analise a rota modificada e atualize o arquivo
  docs/api.md com a nova especificação OpenAPI.
  Preserve documentação de outras rotas.

Exemplo real: qualidade automatizada

Título: "Rodar testes após tarefa de spec"
Evento: Post Task Execution
Ação: Run Command
Comando: "npm test -- --changed"
Atenção

Hooks em eventos frequentes (File Save em padrões amplos) podem consumir muitos créditos rapidamente e tornar o editor lento. Sempre comece restrito e expanda.

Pilar 3: Steering — memória persistente do projeto

Steering files são arquivos Markdown que dão ao Kiro conhecimento contínuo sobre seu workspace. Em vez de repetir suas convenções em cada prompt, você escreve uma vez e o Kiro lembra para sempre.

Os 3 arquivos fundacionais

Kiro oferece gerar automaticamente três arquivos base, recomendados para todo projeto:

  • product.md — Propósito, usuários-alvo, features principais, objetivos de negócio
  • tech.md — Frameworks, bibliotecas, ferramentas e restrições técnicas
  • structure.md — Organização de arquivos, nomenclatura, padrões arquiteturais

Os 4 modos de inclusão

Nem todo contexto precisa estar sempre ativo. Kiro oferece 4 modos configuráveis via front-matter YAML:

---
inclusion: always
---

Carregado em toda interação. Use para padrões universais do projeto: stack, segurança, convenções de código fundamentais.

---
inclusion: fileMatch
fileMatchPattern: ["**/*.ts", "**/*.tsx"]
---

Só ativa quando o arquivo em contexto bate com o padrão. Use para guidance específico de camadas (API, componentes, testes).

---
inclusion: manual
---

Você invoca no chat com #nome-do-arquivo ou via /. Use para guias de troubleshooting, migração, referências pesadas.

---
inclusion: auto
name: api-design
description: REST API design patterns. Use when creating or modifying API endpoints.
---

Kiro lê a descrição e decide sozinho quando é relevante. Use para conhecimento especializado que sobrecarregaria o contexto se sempre ligado.

Pilar 4: MCP Servers — plugins agênticos

Model Context Protocol (MCP) é um protocolo aberto (criado pela Anthropic) que permite que agentes de IA se conectem a servidores externos especializados. Pense em MCP como extensões: cada servidor adiciona ferramentas, prompts e recursos específicos a um domínio.

Com MCP conectado, o Kiro pode:

  • Acessar documentação especializada (ex: AWS Docs MCP)
  • Consultar bancos de dados (Postgres, MongoDB)
  • Integrar com APIs externas (GitHub, Jira, Linear)
  • Executar ferramentas customizadas do seu workflow

Exemplo de configuração

{
  "mcpServers": {
    "aws-docs": {
      "command": "uvx",
      "args": ["awslabs.aws-documentation-mcp-server@latest"]
    },
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres"],
      "env": {
        "POSTGRES_URL": "postgresql://user:pass@localhost/db"
      }
    }
  }
}
Segurança em MCP

Servidores MCP podem acessar dados sensíveis. Trate-os como você trataria dependências: verifique a origem, revise o código antes de instalar, nunca use MCPs de fontes não confiáveis. Segredos e tokens devem usar variáveis de ambiente.

Planos e preços

Kiro trabalha com modelo de créditos — cada prompt consome uma fração de crédito, dependendo da complexidade e do modelo.

Free
$0/mês
50 créditos/mês

Perpétuo. Ideal para experimentar e projetos ocasionais.

Pro+
$40/mês
2.000 créditos

Para quem usa Kiro diariamente em vários projetos.

Power
$200/mês
10.000 créditos

Uso intensivo, múltiplos projetos pesados.

Um crédito é uma unidade de trabalho em resposta a um prompt, medido com duas casas decimais (mínimo 0,01). Prompts simples consomem menos de 1 crédito; execução de spec task tipicamente consome mais. Modelo Auto é base (1x), Sonnet 4 custa ~1,3x mais, Opus ainda mais.

Detalhes importantes
  • Créditos não acumulam — reiniciam todo mês - GovCloud (US) custa ~20% a mais e não tem plano Free - Subscriptions são individuais — não compartilhe sua conta

Kiro vs Cursor vs GitHub Copilot

CaracterísticaKiroCursorGitHub Copilot
BaseCode OSSVS Code (fork)Plugin VS Code/JetBrains
Spec-driven✅ Nativo
Agent Hooks✅ 10 tipos⚠️ Via workflows
Steering persistente✅ 4 modos⚠️ .cursorrules⚠️ Custom instructions
MCP Support✅ Nativo✅ Nativo⚠️ Em evolução
CLI headless✅ Kiro CLI⚠️ Limitado⚠️ Via GH CLI
Autocomplete inline✅ Muito bom✅ Padrão da indústria
Preço entrada$20/mês$20/mês$10/mês

Resumo prático:

  • Escolha Kiro se constrói features complexas, trabalha em time, precisa de documentação/auditoria, ou valoriza estrutura
  • Escolha Cursor se quer a melhor experiência de autocomplete inline e workflow menos estruturado
  • Escolha Copilot se está no ecossistema GitHub/Microsoft e quer um plugin leve

Não é exclusivo — muitos devs usam Copilot para autocomplete + Kiro para features estruturadas.

Armadilhas comuns (o que evitar)

Spec gera 3 arquivos, design documentado, lista de tarefas. Isso é ótimo para features de verdade — mas é overkill para um script de 20 linhas. Use Vibe Mode para tarefas simples.

Um único steering.md com 2000 linhas é pior que não ter steering. Mantenha um arquivo por domínio, use fileMatch para reduzir ruído.

Por mais estruturado que seja, o código ainda é gerado por IA. Bugs sutis e vulnerabilidades acontecem. Revise sempre os diffs, especialmente em produção.

Um hook em File Save que modifica o mesmo arquivo salvo dispara a si mesmo infinitamente. Teste com Manual Trigger antes de ativar.

Steering files vão no Git. Nunca coloque API keys, senhas ou tokens em texto plano. Use variáveis de ambiente.

Tarefas de spec consomem mais que prompts simples. Hooks disparam frequentemente. Acompanhe o dashboard semanalmente no início.

Trilha de aprendizado em 3 semanas

Semana 1 — Fundação: instale, explore, faça o tutorial oficial. Use só Vibe Mode por uns dias. No final da semana, crie seu primeiro Spec simples.

Semana 2 — Personalização: gere os 3 steering fundacionais para um projeto real. Crie 2-3 steering files específicos com fileMatch. Experimente Agent Hooks começando simples.

Semana 3 — Escala: conecte um MCP server. Use Bugfix Spec em um bug real. Combine tudo em um projeto novo e compare produtividade.

Conclusão

Kiro representa uma proposta diferente no mercado de IDEs agênticos: em vez de otimizar para velocidade de escrita de código, ele otimiza para qualidade e rastreabilidade através de spec-driven development. Isso tem custo cognitivo — pensar em requirements antes de codar é uma mudança de hábito — mas paga dividendos em features complexas, trabalho em equipe e código que precisa durar.

Se você já está confortável com Cursor ou Copilot, considere adicionar o Kiro ao seu arsenal para projetos estruturados. Os pilares de Specs, Hooks, Steering e MCP se complementam de forma que, uma vez configurados, criam um ambiente onde consistência e qualidade viram default automático.

Recursos oficiais

  • Site oficial: kiro.dev
  • Documentação: kiro.dev/docs
  • Blog: kiro.dev/blog
  • FAQ: kiro.dev/faq
  • MCP oficial: modelcontextprotocol.io
  • AGENTS.md padrão: agents.md

Gostou deste guia? Assine a newsletter para receber novos posts sobre IA agêntica, ferramentas de desenvolvimento e engenharia moderna.