Mirage는 AI 에이전트가 S3, Google Drive, Slack, Gmail, Redis, GitHub 같은 여러 서비스와 데이터 소스를 하나의 가상 파일시스템처럼 다룰 수 있게 해주는 오픈소스 프로젝트입니다. 복잡한 API나 서비스별 SDK를 각각 익히는 대신, 익숙한 Unix 스타일 명령어와 파일 경로 개념으로 다양한 백엔드에 접근할 수 있도록 설계된 점이 특징입니다.

Mirage의 핵심은 여러 리소스를 하나의 트리 구조 아래에 마운트하는 방식입니다. 예를 들어 /s3, /slack, /github, /data 같은 경로를 만들고, AI 에이전트는 cat, grep, cp 같은 명령으로 각 서비스의 데이터를 읽고 처리할 수 있습니다. 이는 LLM이 이미 잘 이해하는 bash와 파일시스템 문법을 활용한다는 점에서 실용적입니다.

활용 장면도 꽤 분명합니다. 예를 들어 S3에 저장된 로그 파일에서 특정 이벤트를 찾고, Slack 메시지에서 관련 알림을 검색한 뒤, GitHub 저장소의 문서를 참고해 요약 보고서를 만드는 흐름을 하나의 작업 공간 안에서 구성할 수 있습니다. Mirage는 Python, TypeScript SDK와 CLI를 제공해 애플리케이션 내부나 개발 환경에 직접 통합할 수 있습니다.

비슷한 도구들이 서비스별 커넥터나 개별 API 호출에 초점을 맞춘다면, Mirage는 “모든 백엔드를 파일시스템처럼 다룬다”는 추상화가 돋보입니다. 또한 작업 공간을 스냅샷으로 저장하거나 복원할 수 있고, 원격 백엔드 접근을 줄이기 위한 캐시 구조도 제공해 반복 작업에 유리합니다.

추천 대상은 AI 에이전트에게 여러 데이터 소스 접근 권한을 주고 싶은 개발자, LLM 기반 자동화 워크플로를 만드는 팀, Slack·S3·GitHub·Google Drive 같은 도구를 함께 쓰는 조직입니다. 특히 에이전트가 여러 서비스 사이를 오가며 읽기, 검색, 복사, 요약 같은 작업을 수행해야 한다면 Mirage의 접근 방식이 도움이 될 수 있습니다.

정리하면 Mirage는 AI 에이전트가 다양한 외부 서비스를 더 단순하고 일관된 방식으로 사용할 수 있게 해주는 가상 파일시스템 레이어입니다. 아직 초기 공개 버전이지만, AI 에이전트 개발에서 반복적으로 등장하는 “도구 연결의 복잡함”을 파일시스템이라는 익숙한 개념으로 풀어내려는 점에서 주목할 만한 프로젝트입니다.

 

https://github.com/strukto-ai/mirage

 

GitHub - strukto-ai/mirage: A Unified Virtual Filesystem For AI Agents

A Unified Virtual Filesystem For AI Agents. Contribute to strukto-ai/mirage development by creating an account on GitHub.

github.com

 

반응형

Uncloud는 여러 대의 Docker 호스트를 하나의 클러스터처럼 묶어주는 경량 컨테이너 오케스트레이션 도구입니다. 복잡한 쿠버네티스 대신, 익숙한 Docker & Docker Compose 경험을 유지하면서도 멀티 서버 운영, HTTPS, 로드밸런싱까지 한 번에 해결할 수 있도록 설계되었습니다. 

 

주요 특징은 다음과 같습니다. 

 

  • 멀티 환경 지원: 클라우드 VM, 온프레미스 서버, 집에 있는 맥미니 등 위치나 제공자에 상관없이 하나의 클러스터로 묶어서 사용 가능
  • Docker Compose 기반: 새로운 DSL을 배울 필요 없이 기존 compose.yaml로 서비스 정의
  • 무중단 배포: 롤링 업데이트로 서비스 중단 없이 새 버전 배포 (실패 시 롤백 기능도 준비 중)
  • Unregistry 연동: 외부 레지스트리 없이 직접 서버에 이미지를 빌드/푸시하고, 부족한 레이어만 전송해 빠르고 효율적인 배포
  • 서비스 디스커버리 & 로드밸런싱: 내장 DNS로 컨테이너 간 통신을 단순화하고, 트래픽을 여러 서버에 분산
  • 자동 WireGuard 메쉬 네트워크: 서버 간에 자동으로 안전한 프라이빗 네트워크를 구성해 컨테이너가 서로의 IP로 직접 통신
  • 중앙 컨트롤 플레인 없음: 완전 분산 구조로, 일부 서버가 다운되어도 클러스터 운영 지속
  • Managed DNS + 자동 HTTPS: *.cluster.uncloud.run 형태의 도메인과 Let’s Encrypt 기반 TLS 발급/갱신, Caddy 리버스 프록시가 내장

 

사용 방법도 단순합니다. 로컬에 Uncloud CLI를 설치한 뒤, SSH로 서버에 접속해 uc machine init으로 첫 머신을 초기화하고, uc run 명령어로 이미지를 배포하면 지정한 도메인으로 HTTPS 서비스가 바로 올라옵니다. DNS A 레코드만 서버 IP로 연결해주면 됩니다. 

 

내부적으로는 각 머신에 uncloudd 데몬과 CRDT 기반 분산 SQLite DB인 corrosion을 설치해, 별도의 중앙 서버 없이도 클러스터 상태를 서로 동기화합니다. WireGuard 서브넷을 자동으로 할당하고, Docker 브리지 네트워크와 연결해 컨테이너 네트워킹을 구성합니다. 새로운 머신을 추가하면 자동으로 새 서브넷과 키 교환까지 처리됩니다. 

 

정리하자면,

 

  • “쿠버네티스는 너무 무겁고 운영이 부담스럽다”
  • “그래도 여러 대 서버를 묶어서 HTTPS, 로드밸런싱, 배포 자동화는 하고 싶다”

 

이런 개발자에게 Uncloud는 딱 중간 지점에 있는 실용적인 선택지입니다. 단일 서버 PaaS의 편리함과 자가 호스팅 인프라의 자유도를 함께 가져가고 싶은 분들이 한 번 살펴볼 만한 오픈소스 프로젝트입니다.

https://github.com/psviderski/uncloud

 

GitHub - psviderski/uncloud: A lightweight tool for deploying and managing containerised applications across a network of Docker

A lightweight tool for deploying and managing containerised applications across a network of Docker hosts. Bridging the gap between Docker and Kubernetes ✨ - psviderski/uncloud

github.com

 

반응형

+ Recent posts