View a markdown version of this page

Execução de shell - Amazon Bedrock AgentCore

Execução de shell

O Amazon Bedrock AgentCore Runtime permite que você execute comandos de shell dentro da sessão de um agente em execução. Dois modos estão disponíveis, dependendo do seu caso de uso:

One-shot execução de comando - InvokeAgentRuntimeCommand

Executa um único comando, transmite stdout/stderr e retorna o código de saída. HTTP/2 Cada comando inicia um novo processo de shell sem estado persistente. Ideal para tubulações automatizadas, CI/CD portões e operações determinísticas.

Conchas interativas (terminais) - InvokeAgentRuntimeCommandShell

Abre uma sessão de terminal persistente WebSocket com o estado completo do shell (variáveis de ambiente, diretório de trabalho, histórico). Suporta reconexão viashellId. Ideal para depuração, inspeção ambiental e interfaces de usuário de terminal.

Comparação de recursos

Recurso One-shot (InvokeAgentRuntimeCommand) Interativo (InvokeAgentRuntimeCommandShell)

Protocolo

HTTP/2 (fluxo de solicitação-resposta)

WebSocket (conexão persistente)

Estado da Shell

Stateless — cada comando inicia um novo processo

Persistente — ambiente, diretório de trabalho e histórico são transferidos entre comandos

Formato de saída

Eventos estruturados (contentStart,contentDelta, contentStop com código de saída)

Quadros binários (terminal bruto I/O — suporta cores, controle de cursor, aplicativos em tela cheia)

Reconexão

Não — cada chamada é independente

Sim, via shellId

Duração

Tempo limite configurável (1—3.600 segundos)

Máximo de 1 hora (reconecte-se com o mesmo shellId para continuar)

Escolhendo o modo certo

Use a execução única quando... Use conchas interativas quando...

A operação tem um comando conhecido (npm test,git push)

Você precisa de um estado de shell persistente em vários comandos

Você quer uma execução determinística com um código de saída estruturado

Você deseja explorar o ambiente de forma interativa

Você está automatizando uma etapa do CI/CD pipeline ou uma porta de validação

Você está criando uma interface de usuário de terminal (Claude Code, Amazon Kiro, OpenAI Codex)

Cada comando é independente, sem estado compartilhado

Você precisa de suporte de reconexão para trabalhos de longa duração

Você está inicializando o ambiente antes que o agente comece

Você está depurando ou inspecionando um agente em execução