TECH 으로 돌아가기
TECH HACKER NEWS 오늘 7분 읽기 22 READS

에이전트를 OS에 내장한다: 러스트로 처음부터 만든 실험작 '베다'

에이전트를 OS에 내장한다: 러스트로 처음부터 만든 실험작 '베다'
SOURCE IMAGE · HACKER NEWS

AI 비서를 데스크톱 위에 얹는 방식은 이제 익숙하다. 그러나 그런 비서는 대개 화면을 읽거나 클릭을 흉내 내고, 혹은 API를 제공하는 소수의 앱에서만 제대로 동작한다. 운영체제 자체는 그 비서가 무엇을 하는지 통제하지 못한다. 취미 프로젝트로 공개된 운영체제 '베다(Veda)'는 이 구도를 뒤집으려는 시도다. 에이전트를 나중에 붙이는 부가 기능이 아니라 시스템의 일부로 두고, 모든 애플리케이션이 그 에이전트와 함께 동작하도록 처음부터 설계했다는 점이 핵심이다.

사용자는 방 안의 누군가에게 말하듯 "헤이 베다, 배경화면을 사막 사진으로 바꿔줘" 같은 식으로 지시한다. 중요한 것은 에이전트가 키보드·마우스와 똑같은 내부 동작 경로를 통해 작업을 수행한다는 점이다. 즉 별도의 우회 경로가 아니라 사람이 조작할 때와 동일한 코드를 거친다. 그리고 되돌리기 어려운 작업 앞에서는 실행 전에 사용자에게 확인을 구한다. 에이전트를 '시스템의 1급 사용자'로 올려놓되, 그 행위가 신뢰할 수 있고 눈에 보이며 안전하도록 시스템 쪽에서 설계를 책임진다는 발상이다.

바닥부터 러스트로 쌓은 구조

베다는 UEFI 부트로더, 케이퍼빌리티 기반 마이크로커널, 드라이버, 시스템 서비스, 윈도우 시스템, 툴킷, 애플리케이션까지 전부 러스트로 처음부터 작성됐다. 외부 의존은 성숙한 몇몇 크레이트로 제한된다. TCP/IP 엔진은 smoltcp, TLS는 rustls, 암호화는 RustCrypto를 쓴다. 실행 대상은 x86-64 PC와 QEMU다. cargo xtask로 전체 구성요소를 빌드해 디스크 이미지를 만들고 QEMU 창에서 부팅하는 방식이며, 첫 빌드에서는 드라이버 VM용 리눅스(커널, 크로스 컴파일러, Mesa)까지 함께 만들어 시간이 오래 걸린다.

실제 하드웨어에서는 라이브 ISO를 USB에 구워 Secure Boot를 끈 UEFI 모드로 부팅한다. 로더에 서명이 없기 때문이다. 주목할 설계는 베다가 메모리 위에서만 돌고 PC를 건드리지 않는다는 점이다. 디스크 드라이버가 아예 뜨지 않아 PC에 설치된 기존 시스템이나 디스크를 읽거나 쓰지 않으며, 홈 디렉터리는 전원을 끄면 사라진다. 대신 매 부팅 로그를 USB의 VEDA/LOGS에 1초마다 동기화해, 화면에 아무것도 없던 상황에서 무슨 일이 있었는지 다른 컴퓨터에서 사후에 확인할 수 있게 했다.

드라이버는 리눅스 VM에 맡긴다

하드웨어 지원은 드라이버 VM 안의 리눅스를 경유한다. 이 방식은 프로세서의 가상화 기능(VT-x)과 장치용 IOMMU(VT-d)를 요구하며, 둘 다 켜져 있어야 2012년경 이후 PC의 USB 3(xHCI) 컨트롤러에 연결된 USB 키보드·마우스·허브, 각종 유선 랜과 인텔 와이파이 카드 등이 동작한다. 소리도 리눅스 드라이버를 거쳐 2005년 이후 거의 모든 PC가 쓰는 HD 오디오로 재생되고, 코덱의 마이크를 에이전트 입력으로 쓴다. 최신 노트북처럼 마이크가 오디오 DSP에 물린 경우에는 Sound Open Firmware를 통해 녹음한다. 디스플레이는 리눅스 드라이버가 매 프레임을 수직 귀선 시점에 맞춰 뒤집어, 가상 머신만큼 부드러운 애니메이션을 낸다고 설명한다.

실무적으로 가장 흥미로운 부분은 애플리케이션 모델이다. 모든 앱은 에이전트 호환으로 작성되며, 마우스와 키보드로 할 수 있는 일은 에이전트도 앱 고유의 '액션'을 통해 똑같이 할 수 있다. 이 지원은 vui라는 앱 플랫폼의 일부다. 앱은 자신이 할 수 있는 일을 서술하고, 지금 무엇을 보여주는지 보고하며, 액션을 수행한다. 액션 설명은 언어모델을 위해 짧은 명령형으로, 단위와 기본값을 명시하고 위험도를 선언하며 대상을 분명히 지목하도록 작성된다. 핵심은 동의 처리, 메모리, 대화 관리가 앱의 몫이 아니라 시스템의 몫이라는 분담 구조다. 앱 개발자는 액션만 제대로 노출하면 되고 나머지는 시스템이 맡는다.

테스트를 전면에 내세운 프로젝트

베다가 유독 강조하는 대목은 검증이다. 음성 에이전트는 Deepgram을 대체하는 호스트 측 스텁을 상대로 종단 간 테스트된다. 대화, 함수 호출, 중단, 에코, 창과 알림에서의 동의, 음악이 흐르는 중 이름으로 깨우기, 앱별 액션과 재시작 등을 결정론적이고 오프라인으로 검증하며, 별도 스크립트로 실제 Deepgram과 합성 음성을 가상 마이크에 넣어 시험하는 경로도 둔다. 네트워킹은 802.11 프로토콜과 암호화를 공개된 테스트 벡터에 맞춰 검사하고, TLS 핸드셰이크를 rustls 서버와 실제 인증서 체인으로 확인한다. 와이파이 시뮬레이터에서는 접속점 소실, 연결 끊김, 서비스 소멸 같은 장애를 일부러 일으켜 스스로 복구하는지 본다.

정리하면 베다는 상용 제품이 아니라 '에이전트 네이티브' 운영체제라는 아이디어를 바닥부터 구현해 보인 자유 소프트웨어(GPL v3) 실험이다. 비서를 사후에 끼워 넣는 대신 시스템 설계 단계에서 에이전트의 권한, 동의 경계, 가시성, 복구를 함께 묶었다는 점에서, AI 에이전트가 OS나 앱과 어떻게 통합돼야 안전한지를 고민하는 실무자에게 참고할 만한 레퍼런스다. 다만 x86-64와 QEMU에 국한되고 드라이버 VM이 VT-x·VT-d를 요구하며 서명되지 않은 로더 탓에 Secure Boot를 꺼야 한다는 제약은, 이것이 폭넓은 실사용보다는 구조를 보여주는 데 초점을 둔 프로젝트임을 분명히 한다.

SOURCE · HACKER NEWS
원문 전체 보기 → https://github.com/vahmoh25/Veda
SHARE
NEXT · CHOOSE

변화를 읽었다면,
내가 만들 수익 구조를 고릅니다.

정보를 더 모으는 데서 멈추지 않고, 광고·외주·판매·중개·구독 중 내 상황에 맞는 출발점을 정해보세요.

21가지 수익 구조 살펴보기 →
처리 중...