118개. OpenHuman이 원클릭 OAuth로 연결할 수 있다고 밝힌 외부 서비스 수다. Gmail, Notion, GitHub, Slack, Stripe, Calendar, Drive, Linear, Jira 같은 업무 도구를 하나의 개인 AI 인터페이스로 묶겠다는 구상이다. 단순한 챗봇이 아니라, 사용자가 명령하지 않아도 정보를 모으고 맥락을 유지하는 개인용 에이전트에 가깝다.

핵심은 연결 수 자체보다 작동 방식이다. OpenHuman은 20분마다 연결된 서비스에서 새 데이터를 자동으로 가져오는 auto-fetch 구조를 갖췄다. 사용자가 매번 "내 메일 확인해줘", "내 노션 읽어줘"라고 지시하지 않아도 시스템이 백그라운드에서 최신 맥락을 유지한다. 여기에 Google Meet 참여, 데스크톱 마스코트, 음성 입출력까지 붙이면서 AI 비서를 화면 밖 업무 흐름 안으로 밀어 넣으려 한다.

118개 연동, 개인 AI의 진짜 출발점

OpenHuman이 내세우는 첫 번째 차별점은 연결성이다. 118개 이상의 서드파티 서비스를 원클릭 OAuth 방식으로 붙일 수 있게 설계했다. OAuth는 비밀번호를 직접 넘기지 않고 외부 서비스 접근 권한을 부여하는 인증 방식이다. 사용자는 복잡한 API 키 설정 대신 몇 번의 승인 절차만 거치면 Gmail, GitHub, Slack, Stripe, Calendar, Drive 같은 데이터를 AI에게 연결할 수 있다.

이 구조가 중요한 이유는 개인 AI의 병목이 모델 지능만이 아니기 때문이다. 실제 업무에서는 메일, 캘린더, 문서, 코드 저장소, 이슈 트래커가 따로 흩어져 있다. AI가 아무리 똑똑해도 이 데이터에 접근하지 못하면 결국 사용자가 복사해 붙여넣는 수동 도구에 머문다. OpenHuman은 이 단계를 줄여 개인 업무 환경 전체를 하나의 에이전트가 읽을 수 있는 상태로 만들려 한다.

특히 20분 주기 auto-fetch는 사용 경험을 크게 바꾼다. 기존 챗봇은 사용자가 질문해야 움직인다. 반면 OpenHuman은 연결된 서비스의 새 데이터를 주기적으로 불러오며 최신 상태를 유지한다. 완전한 실시간 동기화는 아니지만, 개인 비서가 "지금 내 업무 맥락을 알고 있다"는 느낌을 만드는 데는 충분한 간격이다. 수동 질의에서 지속적 맥락 관리로 넘어가는 지점이다.

TokenJuice, 비용과 지연 시간을 줄이는 압축층

두 번째 핵심은 TokenJuice다. OpenHuman은 웹 스크랩 결과, 도구 호출 응답, 이메일 본문, 검색 페이로드를 그대로 LLM에 던지지 않는다. 먼저 TokenJuice라는 압축 레이어를 통과시켜 HTML을 Markdown으로 바꾸고, 긴 URL을 줄이고, 중복 문장을 제거하고, 장황한 응답을 요약한다. 목표는 비용과 레이턴시를 최대 80%까지 줄이는 것이다.

이는 개인 에이전트에서 특히 중요하다. 118개 서비스를 연결하면 AI가 처리해야 할 데이터는 빠르게 늘어난다. 메일 몇 통, 캘린더 일정 몇 개, GitHub 이슈 몇 줄은 작아 보여도 매번 원문 전체를 모델에 넣으면 토큰 비용과 응답 시간이 누적된다. 압축층은 모델이 보기 전에 노이즈를 줄여, 필요한 정보만 남기는 필터 역할을 한다.

다만 압축은 항상 위험을 동반한다. 너무 세게 줄이면 중요한 맥락이 사라진다. OpenHuman은 CJK(한중일 언어)와 이모지 같은 멀티바이트 텍스트를 grapheme 단위로 보존한다고 설명한다. 한국어·일본어·중국어처럼 문자 단위가 복잡한 언어에서 데이터가 깨지지 않도록 신경 쓴 설계다. 비용 절감과 정보 보존 사이의 균형이 이 시스템의 실사용 품질을 가를 가능성이 크다.

Obsidian과 SQLite, 장기 기억의 저장 방식

OpenHuman의 기억 체계는 로컬 우선 구조에 가깝다. 데이터는 3,000토큰 이하의 Markdown 청크로 나뉘고, 각 청크는 정규화와 점수화를 거쳐 관리된다. 이렇게 정리된 정보는 계층적 요약 트리 형태로 로컬 SQLite에 저장된다. SQLite는 가벼운 로컬 관계형 데이터베이스다. 검색과 인덱싱을 빠르게 처리하기 위한 기계 친화적 저장소라고 보면 된다.

동시에 같은 정보는 Obsidian 호환 Markdown 파일로도 저장된다. 이 부분이 중요하다. AI만 읽는 데이터베이스에 갇히면 사용자는 기억을 직접 확인하거나 고치기 어렵다. 반대로 Markdown 파일로 열어볼 수 있으면 사용자가 자신의 지식베이스를 편집하고 정리할 수 있다. OpenHuman은 기계가 빠르게 검색할 수 있는 SQLite와 사람이 직접 만질 수 있는 Obsidian 볼트를 함께 두는 방식으로 이 문제를 풀었다.

장기 기억은 개인 AI의 핵심 기능이다. 사용자를 며칠이 아니라 수 주에 걸쳐 기억하고, 과거 대화와 연결된 작업 맥락을 다시 꺼내 쓸 수 있어야 비서라는 이름에 가까워진다. OpenHuman은 agentmemory 백엔드 옵션도 제공해 Claude Code, Cursor, Codex, OpenCode 같은 개발 도구와 같은 저장소를 공유할 수 있게 했다. 도구마다 기억이 따로 흩어지는 문제를 줄이려는 시도다.

Google Meet과 데스크톱 마스코트, 인터페이스의 확장

OpenHuman은 텍스트 채팅창 안에 머물지 않으려 한다. 데스크톱 마스코트 형태로 상주하며 주변 상황에 반응하고, Google Meet에 실제 참여자로 합류하는 기능을 제공한다. 회의에 들어와 듣고 말하는 에이전트, 화면 위에 계속 떠 있는 개인 비서라는 경험을 노리는 셈이다.

음성 인터페이스도 포함된다. STT(음성-텍스트 변환) 입력과 ElevenLabs 기반 TTS(텍스트-음성 변환) 출력을 지원하고, 마스코트 립싱크까지 구현했다. 이는 기능적으로는 작은 장식처럼 보일 수 있지만, 사용자가 AI를 "파일을 읽는 도구"가 아니라 "항상 곁에 있는 보조자"로 받아들이게 만드는 장치다.

모델 운용은 작업 성격에 따라 다른 LLM을 배정하는 라우팅 방식이다. 추론이 필요한 작업, 빠른 응답이 중요한 작업, 비전 처리가 필요한 작업을 구분해 적합한 모델로 보내는 구조다. Ollama 기반 로컬 AI 옵션도 있어 외부 서버 의존도를 낮출 수 있다. 민감한 업무 데이터를 다루는 사용자는 이 지점에서 OpenHuman의 로컬 우선 설계를 더 크게 평가할 수 있다.

도입 전 확인할 세 가지 기준

OpenHuman 같은 개인 에이전트를 도입할 때 첫 번째 기준은 연결할 데이터의 범위다. 118개 연동은 강력하지만, 연결이 많아질수록 백그라운드에서 처리되는 데이터도 늘어난다. 어떤 서비스까지 AI에게 맡길지, 어떤 데이터는 제외할지 먼저 정해야 한다. OAuth 연결이 쉽다는 사실이 곧 안전한 운영을 뜻하지는 않는다.

두 번째 기준은 기억의 관리 방식이다. 로컬 SQLite와 Obsidian 볼트는 데이터 주권과 편집 가능성을 동시에 제공한다. 하지만 3,000토큰 이하 청크로 쪼개는 방식은 긴 문맥을 다룰 때 정보가 파편화될 수 있다. 검색 효율이 중요한지, 긴 맥락의 통합 이해가 중요한지에 따라 체감 품질이 달라질 수 있다.

마지막 기준은 비용과 속도다. TokenJuice가 토큰 사용량과 지연 시간을 줄여준다면 장기적으로 큰 장점이 된다. 그러나 압축 과정에서 중요한 정보가 빠지면 에이전트의 판단 품질이 떨어진다. 개인용 슈퍼 인텔리전스라는 표현은 아직 크다. 다만 OpenHuman은 개인 AI가 어디로 가는지 분명히 보여준다. 더 많은 모델보다, 더 잘 연결된 기억과 도구가 다음 경쟁력이 될 수 있다.