nicobailon/pi-interactive-shell

Pi coding agent extension that allows Pi to autonomously control interactive CLIs in an observable overlay. Full PTY emulation, no tmux, token efficient. User can take over anytime.

해결하는 문제

Pi Interactive Shell은 AI 코딩 에이전트가 실시간 상호작용이 필요한 명령줄 인터페이스(CLI)를 실행하고 상호작용할 수 있도록 합니다. 예를 들어 텍스트 에디터(vim), REPL, 데이터베이스 쉘(psql), 또는 장시간 실행되는 프로세스(npm run dev) 등입니다. 이 도구는 정적 명령 실행과 대화형 터미널 세션 사이의 격차를 메우며, 에이전트와 인간 사용자가 모두 세션을 모니터링하고 제어하며, 세션을 넘길 수 있는 관측 가능한 TUI 오버레이를 제공합니다.

작동 방식

이 프로젝트는 AI 에이전트가 하위 프로세스를 시작하기 위해 호출하는 interactive_shell 도구를 제공합니다. 네 가지 다른 운영 모드를 지원합니다:

  • 대화형: 에이전트와 사용자가 모두 입력을 보낼 수 있고 상태를 모니터링할 수 있는 쉘을 시작합니다.
  • 핸즈프리: 장시간 실행되는 빌드나 서버를 위한 모드로, 에이전트는 업데이트를 주기적으로 확인하고 사용자는 감시합니다.
  • 디스패치: '던지고 잊기' 모드로, 에이전트는 완료되거나 특정 종료 조건이 발생했을 때만 알림을 받습니다.
  • 모니터: 이벤트 기반 모드로, 출력 스트림에서 특정 트리거(정규식, 문자열, 파일 변경 등)가 감지되면 에이전트를 깨웁니다.

사용자는 오버레이에 직접 입력하여 언제든지 세션을 인수할 수 있으며, Ctrl+G를 사용해 제어를 에이전트에게 다시 넘길 수 있습니다.

대상 사용자

Pi 코딩 에이전트(또는 Codex, Claude, Cursor와 같은 호환 에이전트)를 사용하여 복잡한 CLI 작업을 처리하거나, 하위 에이전트를 관리하거나, 시스템 로그 및 테스트를 자율적으로 모니터링하고 싶은 개발자에게 적합합니다.

주요 기능

  • 이중 제어: 실시간 TUI 오버레이를 통해 AI 에이전트와 인간 사용자 간의 원활한 제어 이전이 가능합니다.
  • 이벤트 기반 모니터링: 스트림 트리거, 폴링 차이, 파일 시스템 감시 기반으로 에이전트를 깨울 수 있습니다.
  • 구조화된 프로세스 생성: Pi, Codex, Claude, Cursor 등의 다른 AI 에이전트를 하위 프로세스로 네이티브로 시작할 수 있습니다.
  • 유연한 입력: 일반 텍스트, 이름 붙은 키(Ctrl+C 등), 대괄호 붙여 붙여넣기, 16진수 바이트 등 복잡한 TUI 탐색을 지원합니다.
  • 자동 종료: 일정 시간 동안 출력이 없으면 로컬 감시를 지능적으로 취소(침묵 감지).
  • 복구 가능한 출력: 헤드리스 세션에서 특정 실패한 테스트 세부 정보나 로그를 보존하고 쿼리할 수 있는 옵션 기능.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트