모든 것을 로컬에서 – 오프라인 AI 워크스페이스 구축기
(instavm.io)- 로컬 LLM 실행과 코드 샌드박스 환경을 이용해 클라우드 의존성 없이 AI 워크스페이스를 구성하는 방법
- Ollama로 로컬 LLM을 구동하고, Apple Container를 이용해 격리된 VM에서 코드를 실행하며, Playwright로 헤드리스 브라우저를 통한 자동화와 인터넷 접근을 가능하게 함
- UI는
assistant-ui
를 기반으로 하되 모델 선택 드롭다운과 ai-sdk 통합, MCP(Model Context Protocol) 를 통한 안전한 코드 실행 환경을 구현함 - MCP로 연결된 Coderunner VM 안에서 Jupyter 서버와 브라우저를 실행해, 차트 생성·이미지/영상 편집·GitHub 툴 설치·웹 검색 등을 프라이버시 보호 상태에서 처리 가능
- 현재는 Apple Silicon 전용이며, UI 개선과 브라우저 탐지 회피, 툴 관리 기능 강화가 향후 과제
요구 사항 및 배경
- 목표: 클라우드 및 원격 코드 실행 없이 모든 것을 로컬에서 실행하기
- 기존의 LLM 챗앱(예: ChatGPT, Claude)은 클라우드 기반 LLM 채팅, 클라우드/로컬 코드 실행, 인터넷 접근 기능을 제공함
- 오픈 소스 LLM 사용 확대로 인해 이 모든 기능을 완전히 로컬에서 수행할 수 있는지 고민
- 로컬 LLM만으로는 부족하므로, 격리된 환경에서 코드가 실행되어야 하며, 브라우저를 통한 컨텐츠 접근도 필요함
아이디어 구상
- LLM을 완전히 로컬 환경에서 실행
- 경량 VM(가상머신) 내에서만 코드 실행을 처리하여 호스트 시스템의 위험을 차단
- 헤드리스 브라우저를 추가해 자동화 및 새로운 정보, 도구 탐색을 지원함
- AI 기획부터 코드 실행까지 완전히 로컬에서 이루어지는 프라이버시 보호 중심의 워크플로우 구성
- 외부 서비스에 데이터를 제공하지 않고 로컬에서 사진, 동영상 편집 등 다양한 작업 가능
기술 스택
- LLM: Ollama (로컬 모델 및 일부 외부 모델 지원)
-
UI:
assistant-ui
+ ai-sdk (모델 선택 기능 추가) -
VM 런타임: Apple
container
(격리된 VM 환경 제공) -
오케스트레이션:
instavm/coderunner
(MCP로 Jupyter 서버 연결) - 브라우저 자동화: Playwright (MCP 툴로 노출)
Mac 앱 시도와 전환
-
a0.dev
를 이용해 네이티브 Mac 앱 개발을 시도했으나 iOS 위주라 어려움 발생 - Electron + NextJS 래핑도 시도했지만 복잡성 문제로 포기
- 최종적으로 로컬 웹 기반
assistant-ui
로 전환
Assistant-UI 커스터마이징
- 모델 선택 드롭다운 등 다양한 LLM 지원 기능을 제공할 것으로 기대됐으나, 제한적이었음
- 예제 참고 후 ai-sdk를 통해 다중 모델 선택 기능 직접 구현
- 초기에는 오픈AI/Anthropic처럼 클라우드 모델도 지원, 점진적으로 로컬 전환 유도 전략
Tool-calling 및 모델 지원 이슈
- Tool-calling을 지원하는 모델이 필요했으나, Ollama 등 일부는 실제로 미지원
- 공식 문서에는 툴 지원 명시되어 있으나 실 구현이 부족한 경우가 많음
- 오픈소스 생태계의 빠른 변화로 인해 툴 지원 현황 및 토큰 가격 등 변동성이 큼
컨테이너 기반 격리 코드 실행
- Apple의 Container 도구를 이용, Docker 대비 컨테이너마다 완전한 격리 VM 환경을 제공하므로 AI로 생성된 코드를 더 안전하게 실행할 수 있음
- VM 환경에 Jupyter 서버를 배포, Model Context Protocol(MCP)로 노출하여 다양한 툴(Claude Desktop, Gemini CLI 등)에서 곧바로 활용 가능
-
coderunner
MCP 서버 코드를 공개, 외부 툴과 연동 예시 제공 - Apple Container 도구는 아직 불안정하여 빌드/이미지 문제 시 반복적 재시움 필요
- 실제 영상 편집 테스트 등에서 UI + LLM + 코드러너 조합의 정상 동작 확인
헤드리스 브라우저 통합
- 컨테이너 내에 Playwright 기반 헤드리스 브라우저를 배포 및 MCP 툴로 노출
- 신규 툴/정보 탐색, Github 사용법 검색, 리서치 자동화 등의 활용 기대
- 기본 워크플로우: 로컬 LLM + 샌드박스 코드 실행 + 헤드리스 브라우저 조합 구축 완료
가능한 작업 예시
- 특정 주제 리서치 및 요약
- 자연어 명령으로 CSV 차트 생성 및 렌더링
- ffmpeg를 이용한 동영상 편집(구간 자르기 등)
- 이미지 리사이즈, 자르기, 포맷 변환
- Github 도구의 컨테이너 내 설치
- 헤드리스 브라우저로 웹페이지 크롤링 및 요약 등
파일 볼륨 마운트 및 격리
- 호스트의
~/.coderunner/assets
를 컨테이너/app/uploads
에 매핑, 파일은 안전하게 공유 공간에 보관 - 실행된 코드는 호스트 시스템에 직접 접근불가로 보안성 확보
한계 및 향후 과제
- Apple Silicon 환경에서만 동작, macOS 26은 선택 사항
- 툴 관리, 출력 스트리밍 등 UI 개선 필요
- 헤드리스 브라우저가 일부 사이트에서 봇 감지로 차단되는 문제 존재
결론
- 본 프로젝트는 단순한 실험을 넘어 컴퓨팅 주권 및 프라이버시 보호에 초점을 맞춘 모델임
- 클라우드, 원격서버 의존성 없이 개인 로컬 머신에서 데이터를 안전하게 처리하는 경험 제공
- 최고의 LLM은 대형 클라우드에 머무를 수 있지만, 개인 프라이버시를 지킬 수 있는 로컬 AI 도구의 발전을 지향함
- 오픈소스
coderunner-ui
는 Github에서 사용 가능, 피드백 및 협업을 환영함
관련 리소스
Hacker News 의견
-
나는 항상 이런 경험의 이상주의에 끌리지만, 결국 내가 접근할 수 있는 모델 성능과 클라우드에서 온디맨드로 돌리는 비용까지 생각하면 실질적인 전략이라기보다 그저 재미있는 취미에 가까움
하드웨어가 계속 빠른 속도로 발전하기 때문에, 중고 장비를 사도 똑같이 빠르게 가치는 하락해서 실제로 하드웨어에 투자하는 것은 정당화할 수 없다고 느낌
거기에 로컬 환경에서 돌아가는 가중치의 성능도 많이 떨어지니, 지금은 그럴 가치가 없음
언젠가는 상황이 바뀔 거라고 예상하며, 좋은 가중치가 공개될 때 로컬 추론 스택에 투자할 생각에 기대를 품음
그 전까진, 빠르게 가치가 떨어지는 비싼 자산을 그냥 놀리고 있게 되는 셈임-
나는 요즘 로컬 LLM 생태계가 정말 재미있고, 사람들이 무엇을 하는지 지켜보는 걸 즐김
하지만 내 맥북 프로의 엄청난 램을 활용해 로컬 LLM을 직접 돌릴 때마다, 프론티어 모델(최신 SaaS LLM)과의 격차를 또렷이 실감하게 됨
월 $20 정도 내면 토큰당 비용만 내고 다양한 고성능 모델을 쓸 수 있는데, 속도와 품질 모두에서 로컬 모델은 아직 차이가 큼
벤치마크 차트만 보면 이 갭이 잘 드러나지 않는데, 실제로 FRONTIER 모델이 훨씬 더 나음을 체감하고 있음
오픈AI, Anthropic 같은 곳의 모델도 때로는 더디고 에러도 많다고 느끼는데, 로컬로 가면 그 정도가 더 심해짐
프라이버시가 중요한 취미나 실험 목적엔 좋겠지만, 나로서는 차라리 차기 맥북에 128GB 램같은 진짜 하드웨어가 나올 때까지 기다리는 게 나음 -
API 뒤에 있는 모델들이 결국 결과물로 돈 벌기 시작하면 출력의 품질이 점점 더 안 좋아질 거라고 생각함
이건 시간 문제라고 봄 -
“하드웨어가 빠르게 변하니 중고로 사든 뭐든 곧 가치가 떨어진다”는 근거에 대해 궁금해짐
경우에 따라선 최고로 빠른 사양이 아니더라도 모델은 계속 구동될 수 있다고 생각함
결국 이건 고전적인 opex(운영비) vs capex(자본투자) 논쟁인데, 금융적으로 따지면 클라우드가 유리한 건 정말 아주 특정한 경우(인프라를 빠르게 띄워야 하는데 수요 예측이 안 되는 상황)뿐임
LLM에는 그게 크게 해당되지 않음
OP가 $600쯤 투자했다고 하는데, 이건 EC2와 비교해 3개월치 가격임
이런 점을 볼 때 OP의 주장을 수치로 뒷받침할 수 있는지 궁금해함 -
나 역시 앞으로 바뀔 거라 기대하는 입장임
나는 최근에 Claude Code 같은 걸 점점 더 작업에 활용하고 있는데, 매일 같이 코딩 업무를 꼭 회사에 의존하고 싶지 않음
요금제 한도, API 비용, 매달 $100-200씩 내야 한다는 걱정, 내가 쓰는 모든 데이터가 AI 회사에 수집되거나 감시될 위험이 싫음
스마트홈 제품도 모두 로컬 제어되는 것만 쓰고, 외부에서 접속해야 할 땐 직접 소프트웨어 세팅해서 자기 서버에서 돌리고 있음
어느 날 갑자기 회사가 서비스를 중단하거나 요금을 올리거나 혹은 내 데이터를 써먹을 수 있으니 이런 것에 묶이고 싶지 않음
그렇지만 지금 당장 LLM을 내 하드웨어에 깔거나 VPS로 돌릴 만한 동기나 비용, 지식, 유지관리의 바람은 없음
Anthropic에 월 $20 내는 것에 만족하고 있고, 현재 공개된 오픈모델들은 프론티어급 SaaS에 비해 따라올 수 없는 수준임
그래도 언젠가는 변화가 올 거라 희망하고 있음 -
나는 이 상황이 절대 바뀌지 않을 거라 생각함
2년 뒤에 GPT-5급 로컬 옵션이 나온다 하더라도, 그때는 클라우드 쪽에서 훨씬 더 나은 옵션이 또 생길 테니 결국 같은 고민을 계속하게 되는 것임
-
-
로컬, 샌드박스화된 실행 계층에 초점을 맞춘 이 작업이 프라이빗 AI 워크스페이스를 실현하는 큰 퍼즐 조각 중 하나라고 평가함
coderunner 툴이 굉장히 유용해 보임
그러나 또 하나의 과제는 AI가 내 이메일, 노트, 파일 등의 개인 데이터를 인식하는 '지식 계층'임
RAG로 수년치 이메일을 다루려면 벡터 데이터베이스 저장용량만 50GB를 쉽게 넘기게 됨
(참고로 나는 버클리에서 이 문제를 해결하는 팀의 일원임)
우리는 LEANN이라는 벡터 인덱스를 만들어서 아예 임베딩 자체를 저장하지 않고, 스토리지를 약 97%까지 절감하는 데 성공함
그래서 디지털 라이프 전체를 로컬에서 색인화하는 게 실제로 가능해졌음
이런 초경량 지식 인덱스와 로컬 실행 엔진을 결합하는 것이 진짜 '로컬 Jarvis'로 가는 길이라고 느낌
코드: https://github.com/yichuan-w/LEANN
논문: https://arxiv.org/abs/2405.08051-
2025년 기준으로 이메일 몇 년치 벡터 데이터베이스 50GB 정도면 오히려 소박한 수준의 요구라고 생각함
-
LEANN 정보를 알려줘서 고맙게 여김
RAG를 LLM 에이전트나 파이프라인, 실행엔진의 지식 계층으로 쓰는 데에 특히 관심이 많음
대규모 코드베이스와 LLM을 연동하는 게 가능한지 궁금했고, RAG 솔루션이 이미 Claude Code와 연동돼 있다는 게 실험 허들을 낮춰줘서 기대 중임
혹시 RAG와 LLM을 결합해서 대형 코드베이스와 실제로 일해 본 사람 있는지 묻고 싶음
프론트엔드 모델(LM)은 일단 클라우드 사용하는 것으로 시작하려 하고, 직접 시도해 볼 계획임
관련 참고: https://github.com/yichuan-w/LEANN/… -
임베딩이나 벡터 저장 구조에 대해 거의 모름
클라우드 임베딩에서도 이런 “가지치기 그래프(pruned graph)” 방식을 적용한 프로젝트가 있는지 궁금함 -
인덱스가 원본 데이터보다 더 커진다는 게 어색하게 느껴짐
보통 인덱스는 보다 빠른 접근을 위해 효율적인 형식으로 존재한다고 생각했는데, 이렇게까지 커지는 게 이상하게 다가옴
-
-
“세계 최고 LLM”의 도움을 받아도 기대만큼 매끄럽지 않은 이유 중 하나는, 이 모델들이 단계 생략, 플랫폼 별 특수성 간과, 오히려 문제를 더 키우는 식의 헛소리(hallucination)를 하기 때문임
이는 네이티브 앱 개발 관련 학습 데이터가 부족함을 잘 보여줌
네이티브 앱 설계에 대해 블로그나 미디엄 긴 글이 거의 없고, 오픈소스 데스크탑 앱 프로젝트 수도 모바일/웹에 비해 아주 적음
1990년대엔 MS가 전문 작가들을 고용해서 윈도우 코딩에 대한 훌륭한 책(대표적으로 Charles Petzold)들을 펴냈지만, 이런 전문 산업 자체가 이제는 거의 사라졌음
이렇듯 훈련 데이터의 빈틈은 앞으로 점점 더 커질 거로 봄
결국 소프트웨어 엔지니어링 전체 흐름과도 비슷한데, 네이티브 데스크탑 앱을 만들려는 사람은 적고, 커리어 관점에서 ‘막다른 길’이기 때문임
1990년대만 해도 윈도우 데스크탑 앱 개발자는 중산층 생활이 보장되고 장벽도 높았지만(C/C++은 어렵고 윈도우 API 학습도 난이도 높았으며, MS는 엄청난 자금을 교육에 쏟아부음), 지금은 상황이 많이 바뀌었음
이제는 OS 벤더(마이크로소프트, 애플)나 일부 레거시 소프트웨어 업체(Adobe, Autodesk 등) 말고는 데스크탑 앱 개발 수요가 극히 적음- 고성능 계산(HPC) 분야 외에는, 굳이 데스크탑 앱을 따로 만들 필요 없이 브라우저가 사실상 가장 범용적인 가상머신(VM) 역할을 하고 있기 때문임
-
Ollama macOS 앱을 시험 삼아 써봤는데, 시작하자 마자 어떤 구글 도메인에 접속을 시도하려는 걸 발견함
완전한 프라이버시라는 말을 믿기 어렵게 만듦
https://imgur.com/a/7wVHnBA-
자동 업데이트 체크 때문임
https://github.com/ollama/ollama/blob/main/docs/faq.md -
이런 네트워크 호출은 감사(audit)가 가능하다는 점에서 오히려 믿음이 감
업데이트마다 네트워크 호출만 자동으로 추적하면 충분히 관리 가능한 일임 -
vscode에서 cline 플러그인, copilot 플러그인에서도 똑같은 현상을 봄
로컬 ollama만 사용하도록 설정하고 outbound 연결을 차단하니까 동작 자체가 안 됨
설정에서 telemetry를 꺼도 cline이 외부 통신을 계속 시도해 실망스러움
-
-
나는 생각보다 종종 이런 주제를 떠올림
프라이버시를 확보하려면 참 많은 마찰과 어려움이 따른다고 느끼고 있음- 이 글이 그런 고민을 실질적으로 도와주거나 해결책 제시엔 별로 도움이 된다고 생각하지 않음
-
나는 여전히 로컬 방식을 선호하는데, 그 이유는 대부분의 AI 추론 속도가 느리거나 로컬과 별차이가 없다는 느낌 때문임
근래 cerebras(그리고 groq도 들음)를 써보고 1000 토큰/초 같은 속도를 경험하니까, 기다림에 대한 내 인내심 기준치가 완전히 변함
cerebras는 데이터를 기록하지 않는다고 하며, 나는 그들과 아무런 스폰서 관계가 없음을 신뢰해줬으면 좋겠음(오히려 스폰이 있었으면 함)
정말 좋은 서비스라고 생각함
그래도 언젠가는 속도 면에서도 진짜 의미 있는 발전이 있길 바람
확산(diffusion) 모델 아키텍처는 속도가 특히 빠르다고 느낌 -
지금 이 시점에서 한계를 주는 건 소프트웨어보단 하드웨어 쪽이라고 생각함
로컬에서 쓸 만한 LLM을 돌리려면 최소 $2000(예: Strix Halo, AI Max 395) 정도 하드웨어가 필요함
Strix Halo가 몇 번 더 업그레이드 된다면 훨씬 쉬워질 거라 기대함-
이런 변화는 진짜 빠르게 일어나고 있음
https://simonwillison.net/2025/Jul/29/space-invaders/ -
실제로 이 가격에 맞는 하드웨어를 갖춰도 “쓸만한” 정도 기준 자체가 애매하다고 봄
진짜로 이 기술이 쓸모 있으려면 마법처럼 즉시 바로 동작하는 경험이 필수임
느리고 애매한 결과를 마주하며 계속 셋팅을 만지는 순간 사실상 거의 모든 가치가 사라짐
로컬 모델도 많이 좋아졌지만 코딩 실력만 보면 아직 Claude 같은 모델엔 못 미치고 있음
최근 OpenRouter의 최신 Qwen, GLM 모델을 cline으로 직접 돌려봤는데, Claude 3.0 정도와 비슷한 수준이라고 느낌
벤치마크는 현실을 잘 못 반영한다고 생각함
-
-
제품 브랜드와 블로그 글이 다소 혼란스럽게 다가옴
홈페이지에선 클라우드에서 VM을 띄운다고(예, Firecracker처럼) 보이는데
블로그 글에선 맥 전용의 로컬 VM을 실행하는 것으로 읽힘
전자를 만들었던 입장에서, 후자 형태를 gpt-oss 신작과 활용해보고 싶은 바람이 있음 -
OP에게, https://github.com/assistant-ui/assistant-ui 링크가 작동하지 않음을 알림
-
정말 멋지고 잘 설계된 프로젝트라고 생각함
나도 비슷한 걸 만들고 있는데, 핵심은 클라우드와 완전 로컬 환경을 키 하나로 자유롭게 오가도록 쉽게 해주는 점임
모든 데이터/설정/프롬프트가 오직 로컬에만 저장되고, API 호출도 우리 서버를 통하지 않고 곧장 공급자에게로 라우팅됨
현재는 mlc-llm으로 브라우저에서 완전 로컬 추론(Qwen3-1.7b가 매우 잘 동작함)
https://hypersonic.chat/