NPCterm: Emulador de Terminal PTY Completo para Agentes de IA via MCP

✍️ OpenClawRadar📅 Publicado: April 15, 2026🔗 Source
NPCterm: Emulador de Terminal PTY Completo para Agentes de IA via MCP
Ad

O NPCterm é um emulador de terminal PTY completo headless em memória para agentes de IA, exposto via MCP (Protocolo de Contexto de Modelo). Ele dá aos agentes de IA acesso completo ao terminal, não apenas ao bash, permitindo que eles iniciem shells, executem comandos arbitrários, leiam a saída da tela, enviem pressionamentos de teclas e interajam com aplicações TUI.

Principais Recursos

  • Emulação completa de terminal ANSI/VT100 com criação de PTY via portable-pty
  • 15 ferramentas MCP para controle total do terminal sobre JSON-RPC stdio
  • Detecção de estado do processo – sabe quando um comando está em execução, inativo, aguardando entrada ou encerrado
  • Sistema de eventos – buffer circular de eventos de terminal (CommandFinished, WaitingForInput, Bell, etc.)
  • Sobreposição de coordenadas amigável para IA para navegação precisa na tela
  • Suporte a mouse, seleção e rolagem para interagir com aplicações TUI
  • Múltiplos terminais concorrentes com IDs curtos de 2 caracteres
Ad

Exemplo de Fluxo MCP

A fonte fornece um exemplo concreto de uso do NPCterm para abrir e sair do Vim:

// 1. Criar um terminal
// -> terminal_create {}
// <- {"id": "a0", "cols": 80, "rows": 24}

// 2. Abrir vim // -> terminal_send_keys {"id": "a0", "input": [{"text": "vim"}, {"key": "Enter"}]} // <- {"success": true}

// 3. Ler a tela para confirmar que o vim está aberto // -> terminal_show_screen {"id": "a0"} // <- ~ VIM - Vi IMproved // <- ~ versão 9.2.250 // <- ~ por Bram Moolenaar et al. // <- ~ digite :q<Enter> para sair // <- ...

// 4. Sair do vim // -> terminal_send_keys {"id": "a0", "input": [{"text": ":q"}, {"key": "Enter"}]} // <- {"success": true}

A fonte inclui um aviso: "Use com precauções. Um terminal é um ambiente de execução irrestrito." Esta ferramenta é efetivamente equivalente a dar a um agente de IA acesso a um computador.

O projeto está disponível no GitHub em github.com/alejandroqh/npcterm.

📖 Leia a fonte completa: r/ClaudeAI

Ad

👀 See Also