open-terminal: AI 에이전트가 코드를 실행하고 샌드박스 또는 베어메탈 환경에서 파일을 관리할 수 있도록 하는 자체 호스팅 API 기반 터미널

open-terminal: AI 에이전트가 코드를 실행하고 샌드박스 또는 베어메탈 환경에서 파일을 관리할 수 있도록 하는 자체 호스팅 API 기반 터미널

해결하고자 하는 문제

AI 에이전트와 자동화 도구는 종종 코드를 실행하고, 파일을 관리하며, 셸 명령을 실행할 수 있는 안전하고 전용된 환경이 부족합니다. Open Terminal은 이러한 에이전트를 위한 원격 셸 역할을 하는 자체 호스팅 API 기반 터미널을 제공하여, 호스트 머신에 직접 접근하지 않고도 파일 시스템 및 운영 체제와 상호 작용할 수 있게 합니다.

작동 방식

Open Terminal은 외부 도구나 AI 어시스턴트가 명령을 전송하고 파일을 관리할 수 있도록 하는 REST API를 노출합니다. 두 가지 주요 모드로 배포할 수 있습니다:

  • Docker (샌드박스): 사전 설치된 툴킷(Python, Node.js, git 등)이 포함된 격리된 컨테이너에서 실행됩니다. 이는 AI 에이전트에게 안전한 실험 공간을 제공하기 위해 권장되는 모드입니다.
  • 베어 메탈: pip을 통해 설치하고 호스트 머신에서 직접 실행되며, 에이전트에게 호스트의 실제 파일 및 환경에 대한 전체 접근 권한을 부여합니다.

또한, 표준 Unix 권한을 사용하여 각 사용자에게 전용 Linux 계정과 홈 디렉터리를 할당하는 소규모 신뢰 그룹을 위한 다중 사용자 모드도 지원합니다.

대상 사용자

  • AI 에이전트 개발자: 코드 실행이나 시스템 수준 작업이 필요한 에이전트를 구축하는 사람들.
  • 셀프 호스팅 사용자: AI 어시스턴트를 위해 터미널 환경을 통합하고자 하는 Open WebUI 사용자.
  • 자동화 엔지니어: 원격 API 접근 가능한 셸이 필요한 자동화 도구를 만드는 사람들.

주요 특징

  • 유연한 배포: 샌드박스 Docker 컨테이너와 베어 메탈 Python 설치 모두 지원.
  • 사전 번들된 툴링: latest Docker 이미지에는 다양한 데이터 과학 라이브러리, ffmpeg, LaTeX, Docker CLI가 포함되어 있습니다.
  • uma own custom environments: 시작 시 환경 변수로 apt, pip, npm 패키지를 추가할 수 있는 기능.
  • Open WebUI 통합: Open WebUI와 깊이 통합되어 내장 파일 탐색 사이드바를 제공하고 직접 연결 및 시스템 수준 연결을 모두 지원.
  • API-First 설계: 배포 시 /docs에서 전체 인터랙티브 API 문서를 확인할 수 있습니다.

Sources