Todos os produtos
Search
Central de documentação

Elastic Compute Service:**Operar instâncias ECS usando Workbench CLI em agentes de IA**

Última atualização: Sep 08, 2026

Carregue a skill do Workbench CLI em ferramentas de codificação com IA, como Wukong, Qoder e opencode, e use linguagem natural para orientar um agente a consultar instâncias ECS, executar comandos e transferir arquivos. Com saída JSON estruturada e repasse do código de saída do comando, o agente avalia os resultados de forma autônoma e encadeia operações subsequentes.

Por que agentes de IA são adequados ao Workbench CLI

Em comparação com outras formas de conexão a instâncias ECS, o Workbench CLI é naturalmente adequado para chamadas por agentes de IA:

  • Saída JSON estruturada: Todos os comandos aceitam --output json e retornam uma estrutura de campos previsível (por exemplo, exec retorna output, stderr e exit_code), eliminando a necessidade de o agente analisar texto com expressões regulares.

  • Repasse do código de saída: O comando workbench exec repassa o código de saída do comando remoto (consistente com SSH), permitindo que o agente determine se a execução remota foi bem-sucedida. Em caso de falha, --output json fornece informações de erro estruturadas que o agente pode analisar para decidir entre tentar novamente ou reportar o erro.

  • Execução sem estado: Cada chamada ao workbench exec roda em um ambiente independente, sem herdar estado do shell. O agente não precisa manter contexto de sessão, e o comportamento dos comandos não se torna imprevisível devido a estados residuais.

  • Semântica de comandos intuitiva: Os nomes list / exec / upload / download correspondem diretamente a tarefas operacionais comuns, permitindo que o agente aprenda a usá-los autonomamente por meio de --help.

Pré-requisitos

  • Instale o Workbench CLI no seu computador e configure credenciais e uma política RAM de privilégio mínimo. Para mais informações, consulte Install Workbench CLI and configure credentials.

  • Instale a ferramenta de codificação com IA de destino (Wukong, opencode ou outra ferramenta de IA capaz de executar comandos shell) no seu computador.

  • Recomendamos ler primeiro Manage ECS instances by using Workbench CLI para se familiarizar com o uso de cada subcomando do workbench, facilitando a avaliação da saída do agente.

Carregar a skill do Workbench CLI em uma ferramenta de IA

A Alibaba Cloud lançou uma skill oficial do Workbench CLI que inclui o uso de todos os subcomandos, descrições de parâmetros, significados dos códigos de saída e fluxos de trabalho típicos. Após carregar a skill em uma ferramenta de codificação com IA, o agente poderá chamar autonomamente o comando workbench quando você expressar sua intenção operacional em linguagem natural. As seções a seguir descrevem como carregar a skill no Qoder, Wukong e opencode, nessa ordem.

Qoder

No terminal onde o Qoder está em execução, execute o comando abaixo para carregar a skill oficial com a CLI de skills.

npx skills add aliyun/alibabacloud-aiops-skills --skill alibabacloud-workbench-cli --agent qoder -y --full-depth

Após carregar a skill, teste a seguinte conversa no Qoder para verificá-la:

You: Deploy the local app.jar to the /opt/app directory on instance i-bp1a2b3c4d5e6f.
Agent: (Calls workbench upload and then workbench exec to complete the deployment, and reports the result step by step.)

Wukong

O Wukong ainda não suporta carregamento com um único comando via CLI de skills. É necessário baixar o pacote da skill e importá-lo manualmente:

  1. Acesse a página Workbench CLI Skill e baixe o pacote ZIP da skill.

  2. Importe o pacote ZIP baixado para o Wukong.

  3. Ative (carregue) a skill após a importação.

Após carregar a skill, teste a seguinte conversa no Wukong para verificá-la:

You: Use workbench to list the running instances in China (Hangzhou).
Agent: (Automatically runs workbench list ecs -r cn-hangzhou --status Running --output json and summarizes the result.)

opencode

No terminal onde o opencode está em execução, execute o comando abaixo para carregar a skill oficial com a CLI de skills.

npx skills add aliyun/alibabacloud-aiops-skills --skill alibabacloud-workbench-cli --agent opencode -y --full-depth

Após carregar a skill, teste a seguinte conversa no opencode para verificá-la:

You: Connect to instance i-bp1a2b3c4d5e6f and check its disk usage.
Agent: (Automatically runs workbench exec -i i-bp1a2b3c4d5e6f -c "df -h" --output json and explains the result.)

Para outras ferramentas de IA, visite a página Workbench CLI Skill.

Método geral: permitir que o agente aprenda com --help

Se sua ferramenta de IA não suportar a skill oficial da Alibaba Cloud, ou se você quiser uma forma rápida de verificação, permita que o agente aprenda sozinho lendo a saída de --help. Isso funciona com qualquer agente capaz de executar comandos shell.

Read the output of workbench --help and learn to use the workbench tool to manage and operate my Alibaba Cloud ECS instances.

O agente executa automaticamente workbench --help e workbench <subcommand> --help para entender o uso de todos os subcomandos camada por camada e, em seguida, usa --output json para obter resultados estruturados para processamento subsequente.

Nota

Em comparação com o carregamento explícito da skill, o método geral exige que o agente releia a saída de ajuda em cada nova sessão, consome mais contexto e não inclui as melhores práticas e orientações de tratamento de erros integradas à skill. Para uso contínuo, recomendamos carregar a skill explicitamente.

Cenários típicos de conversa

Cenário 1: Consultar instâncias em execução

Prompt do usuário:

List the running instances in China (Hangzhou).

Execução pelo agente:

workbench list ecs -r cn-hangzhou --status Running --output json

Resposta simplificada:

{
  "instances": [
    { "instance_id": "i-bp1a2b3c...", "instance_name": "web-prod-01", "status": "Running", "private_ip": "172.16.0.10" },
    { "instance_id": "i-bp2x4y5z...", "instance_name": "api-prod-02", "status": "Running", "private_ip": "172.16.0.11" }
  ]
}

Resumo do agente: China (Hangzhou) (cn-hangzhou) possui atualmente 2 instâncias em execução: web-prod-01 (i-bp1a2b3c...) e api-prod-02 (i-bp2x4y5z...).

Cenário 2: Executar um comando remoto e analisar o resultado

Prompt do usuário:

Check whether i-bp1a2b3c4d5e6f has enough disk space.

Execução pelo agente:

workbench exec -i i-bp1a2b3c4d5e6f -c "df -h" --output json

Resposta simplificada:

{
  "output": "Filesystem      Size  Used Avail Use% Mounted on\n/dev/vda1        40G   36G  4.0G  90% /\n/dev/vdb1       100G   20G   80G  20% /data\n",
  "stderr": "",
  "exit_code": 0
}

Análise do agente: A partição raiz / está com 90% de uso e apenas 4,0G restantes, próxima do limite. Recomendamos limpar logs ou expandir o disco do sistema. A partição /data está com 20% de uso e possui capacidade ampla.

Cenário 3: Transferir arquivos

Prompt do usuário:

Deploy ./app-2.0.tar.gz to the /opt/deploy directory on i-bp1a2b3c4d5e6f, then extract and verify it.

Execução pelo agente (chamadas em sequência):

workbench upload ./app-2.0.tar.gz /opt/deploy/app-2.0.tar.gz -i i-bp1a2b3c4d5e6f
workbench exec -i i-bp1a2b3c4d5e6f -c "cd /opt/deploy && tar xzf app-2.0.tar.gz" --output json
workbench exec -i i-bp1a2b3c4d5e6f -c "ls -lh /opt/deploy/app-2.0/" --output json

Resumo do agente: O arquivo foi enviado com sucesso. A extração foi concluída com código de saída 0. O diretório contém bin/, config/ e app.jar (120M). A implantação está concluída.

Permissões e recomendações de segurança

  • Use um usuário ou função RAM dedicado para o agente de IA: Separe as credenciais do agente das usadas por pessoas. Isso facilita a distinção entre "operações humanas" e "operações do agente" nos logs de auditoria e agiliza a localização da origem de qualquer problema.

  • Adote uma política de privilégio mínimo e restrinja o escopo por Resource: Conceda ao agente apenas as Actions necessárias e use ARNs de instância para limitar o Resource a instâncias específicas, evitando que uma operação equivocada afete outras instâncias.

  • Ative a confirmação human-in-the-loop (HITL): O modo de agente integrado ao workbench connect exige confirmação Y/n antes de executar qualquer comando por padrão. Para ferramentas de IA externas, também recomendamos ativar a confirmação do usuário antes da execução de comandos.

  • Prefira RamRoleArn em produção: Cenários com agentes costumam ter longa duração e uso frequente de credenciais, portanto, um par AccessKey estático vazado representa alto risco. Prefira RamRoleArn ou CredentialsURI para que as credenciais sejam renovadas automaticamente.

FAQ

Como solucionar o erro "command not found" após o agente carregar a skill

Causa: Quando a ferramenta de IA executa um processo filho, o ambiente shell utilizado não herda o PATH do shell do usuário, impedindo a localização do binário workbench.

Solução:

  • Use o caminho absoluto /usr/local/bin/workbench (Linux/macOS) ou C:\Program Files\workbench\workbench.exe (Windows).

  • Declare explicitamente o caminho do binário na definição da skill ou no prompt do sistema.

  • Verifique como a ferramenta de IA é iniciada e se ela herda o perfil do seu shell (~/.bashrc ou ~/.zshrc).

Como limitar o grande número de sessões causadas por tentativas repetidas do agente em loop

Causa: Ao encontrar um erro, o agente tenta novamente repetidamente e cria uma nova sessão a cada tentativa, consumindo gradualmente recursos no servidor.

Solução:

  • Na skill ou no prompt, instrua o agente a reportar imediatamente o erro a você, sem tentar novamente automaticamente, ao encontrar um erro não recuperável, como falha de autenticação ou instância inexistente (determinado com base no campo message de --output json).

  • As sessões são recuperadas automaticamente após cerca de 30 minutos de tempo ocioso. Quando não for necessário manter uma sessão por muito tempo, faça com que o agente a feche com /exit assim que terminar.

  • Execute periodicamente workbench session close --all ou workbench daemon stop para limpar sessões residuais.

Como forçar o agente a usar apenas --output json

Causa: Por padrão, o agente pode usar saída em texto, o que leva a uma análise instável.

Solução: Na definição da skill ou no prompt do sistema, exija explicitamente que o agente anexe --output json a todas as chamadas de comando workbench e analise os resultados de acordo com o esquema JSON: em caso de sucesso, os campos são output, stderr e exit_code; em caso de falha, a saída é {code, message}.

Referências