TrendShift · Multi-Agent Operating System

LobeHub — 멀티 에이전트
운영 OS의 첫 진화형

챗봇 시대에서 에이전트 운영 시대로. 77.5k 스타 LobeChat의 후속, "AI 직원 10명을 운영하는 사장님" 플랫폼.

lobehub/lobehub · TypeScript · LobeHub Community License · 77.5k★ · TrendShift #2 2026-05-21
00 — 들어가며Context

먼저, "Agent OS"가 뭔가?

왜 단일 챗봇 시대가 끝나가는가.

2023~2025년의 AI는 "ChatGPT 같은 단일 챗봇"이 주류였다. 사용자 한 명이 봇 하나와 대화하는 1:1 구조. 그런데 2026년 들어 흐름이 바뀌었다 — 에이전트가 작업의 기본 단위(Unit of Work)가 되면서, 여러 에이전트를 동시에 운영·스케줄링·보고받는 "운영체제(OS) 같은 레이어"가 필요해진 것.

LobeHub는 이 흐름을 가장 빠르게 구현한 첫 번째 사례다. 기존 lobehub/lobe-chat(단일 챗봇 UI)이 에이전트 운영 OS로 리브랜딩되면서 77.5k 스타가 그대로 따라왔고, OpenAI Operator·Anthropic Skills·Microsoft AutoGen이 각자 풀려고 하던 문제를 한 플랫폼으로 통합했다.

Term · 용어
Chief Agent Operator (CAO, AI 에이전트 본부장)
LobeHub가 사용자에게 부여하는 역할. "ChatGPT 1명만 쓰던 사용자"에서 "AI 직원 10명을 거느린 본부장"으로 시점을 옮기는 컨셉. 채용·스케줄링·보고받기가 핵심 행위.
Term · 용어
MCP (Model Context Protocol, 모델 컨텍스트 프로토콜)
Anthropic이 2024년 말 발표한 표준. LLM이 외부 도구·데이터·시스템과 통신하는 방법을 통일한 규격. USB-C에 비유된다 — 어떤 LLM이든, 어떤 도구든, 같은 케이블로 연결된다. LobeHub는 이를 일급 시민으로 지원해 10,000+ 스킬을 끌어다 쓸 수 있다.
Term · 용어
White-Box Memory (투명한 에이전트 메모리)
사용자가 직접 보고 편집할 수 있는 메모리. ChatGPT의 불투명한 "블랙박스 메모리"와 대비된다. JSON/Markdown으로 저장되어 사용자가 펼쳐보고 고칠 수 있고, 지속 학습(Continual Learning)이 이 위에서 일어난다.
01 — 한 줄 요약TL;DR

이 프로젝트의 핵심 메시지

한 문장으로 줄이면.

Core Message

"내 AI 직원 10명을 채용해 Slack·Discord·텔레그램에 동시에 배치하고, 24시간 자율 작업·보고받는 본부장 시스템을 한 번에 띄운다 — LobeHub가 이걸 도커 한 줄로 해결한다."

LobeHub는 단순 챗봇 UI가 아니라 에이전트 운영 OS다. 4가지 핵심 — (1) Operator 전체 AI 팀 고용·스케줄링·보고, (2) Create Agent Builder로 묘사만 하면 자동 구성, (3) Collaborate Agent Groups·Pages·Schedule로 실제 팀처럼 협업, (4) Evolve White-Box Memory + 지속 학습.

"단일 챗봇이 모놀리스라면, LobeHub는 마이크로서비스로 진화한 에이전트 인프라"라는 비전을 가장 사용자 친화적으로 구현했다.

02 — 왜 주목받는가Why now

TrendShift #2, GitHub Trending 81회 등장 이유

시대적 배경 + 경쟁 우위.

트렌딩 이유 3가지

  1. LobeChat의 진화형 — 77.5k 스타를 가진 검증된 프로젝트가 "단일 챗봇"에서 "멀티 에이전트 OS"로 도약. 기존 사용자 베이스가 그대로 따라왔고, 새 컨셉(에이전트 운영)에 대한 관심이 폭발했다.
  2. "Agents as the Unit of Work" 철학 — 2026년의 가장 뜨거운 주제. OpenAI Operator, Anthropic Claude Skills, Microsoft AutoGen이 각자 풀려고 하던 멀티 에이전트 협업 문제를 한 플랫폼으로 통합.
  3. 10,000+ 스킬 + MCP 호환 — Anthropic이 발표한 MCP를 일급 시민으로 지원. 사용자가 만든 스킬을 그대로 가져와 에이전트에 장착할 수 있다.

경쟁 비교 — LobeHub vs 일반 ChatGPT 클론 vs Dify/Coze

비교 항목LobeHubChatGPT 클론Dify / Coze
핵심 컨셉에이전트 운영 OS단일 대화 UI워크플로우 빌더
멀티 에이전트 협업Agent Groups (네이티브)없음워크플로우 형태
IM 채널 통합Slack/Discord/TG/WeChat 등 7+없음제한적
셀프호스팅Vercel/Docker/Electron일부만Docker
스킬/플러그인10,000+ MCP 호환제한적자체 형식
퍼스널 메모리White-Box (편집 가능)없음블랙박스
오픈소스LobeHub Community License천차만별일부 폐쇄
Analogy · 4가지 핵심 컨셉(README 인용)

Operator — 전체 AI 팀을 고용·스케줄링·보고. "More productivity. Fewer tools." Create — Agent Builder로 "필요한 걸 한 번만 묘사하면" 자동 구성, 10,000+ MCP 스킬 장착.

Collaborate — Agent Groups, Pages, Schedule, Project, Workspace로 실제 팀처럼 협업. Evolve — Continual Learning + White-Box Memory(투명·편집 가능한 구조적 메모리).

03 — 기술 스택Stack

전체 기술 지도

pnpm 모노레포 · 200+ 의존성 · 80+ 워크스페이스 패키지.

LobeHub는 pnpm workspace 기반 모노레포다. package.json의 dependencies만 200개 이상, 내부 @lobechat/* 워크스페이스 패키지가 80개 이상 — 사실상 작은 운영체제다.

프론트엔드

웹 / 데스크탑 / 모바일

  • Next.js 16 — 메인 웹앱. App Router, RSC, MDX 지원
  • React 19.2 — 최신 React, 동시성 + Server Components
  • Vite 8 (SPA) — 모바일·데스크탑용 별도 SPA 빌드 (build:spa:mobile)
  • Electronapps/desktop에서 Mac/Windows/Linux 네이티브 앱
  • PWAvite-plugin-pwa로 설치 가능한 웹앱

UI / 상태 / 통신

  • Ant Design 6 — 엔터프라이즈급 UI, @lobehub/ui로 커스텀
  • antd-style — Emotion 기반 CSS-in-JS, 다크모드/테마
  • Zustand 5 — 가벼운 상태관리, hook 친화
  • @tanstack/react-query — 서버 상태 동기화·캐싱
  • tRPC v11 — 타입 안전한 RPC, REST 대체
  • i18next + lobe-i18n CLI — 다국어 자동 번역
  • Three.js + react-three/fiber — 3D 아바타·인터랙티브
  • Lexical 0.42 — Meta의 차세대 리치 에디터 (노트북·페이지)

AI / LLM 통합 (가장 흥미로운 부분)

LLM 공급자 — 통일된 인터페이스로 추상화

  • openai — OpenAI / GPT 호환 API
  • @anthropic-ai/sdk — Claude 직접 호출
  • @google/genai — Gemini
  • @aws-sdk/client-bedrock-runtime — Bedrock에서 Claude/Llama
  • @azure-rest/ai-inference — Azure OpenAI / Phi
  • ollama — 로컬 LLM (Llama/Qwen/DeepSeek)
  • @huggingface/inference — 허깅페이스 호스팅

MCP / 도구 / 미디어

  • @modelcontextprotocol/sdk — MCP 표준 SDK, 모든 외부 도구 통합의 핵심
  • @fal-ai/client — 이미지/비디오 생성 API
  • @saintno/comfyui-sdk — ComfyUI 워크플로우(스테이블디퓨전 등)
  • langfuse — LLM 호출 관찰성·트레이싱·평가
  • @lobehub/tts — 자체 TTS(텍스트→음성)

백엔드 / 데이터 / 인증

  • drizzle-orm 0.45 — TypeScript-first ORM, Prisma보다 가벼움
  • PostgreSQL (pg) — 메인 DB, Neon serverless도 지원
  • @neondatabase/serverless — Edge에서 HTTP로 Postgres 접근
  • ioredis — Redis 클라이언트, 세션·캐시·큐
  • better-auth + passkey — 최신 인증, 패스키·SSO·OAuth
  • oidc-provider — 자체 OIDC 인증 서버 구축
  • hono — Edge-friendly 경량 웹 프레임워크
  • @upstash/qstash + workflow — 서버리스 큐·지연 작업·워크플로우
  • stripe — 결제, 유료 플랜
  • resend + nodemailer — 트랜잭셔널 이메일

채팅 어댑터 (IM Gateway) — LobeHub의 진짜 매력

한 번 만든 에이전트를 여러 IM에 동시 배치

  • @chat-adapter/slack — 슬랙 봇
  • @chat-adapter/discord — 디스코드 서버 통합
  • @chat-adapter/telegram — 텔레그램 봇
  • @lobechat/chat-adapter-feishu — 중국 비즈니스 메신저 라크
  • @lobechat/chat-adapter-wechat — 위챗 공식계정
  • @lobechat/chat-adapter-line — 라인 봇
  • @lobechat/chat-adapter-qq — QQ (중국 메신저)

인프라 / 배포

경로역할
Docker Hublobehub/lobehub 이미지로 One-click 셀프호스팅
docker-compose/devPostgreSQL + Redis + RustFS(S3 호환) + SearXNG(검색엔진) 일괄 실행
원클릭 배포Vercel / Zeabur / Sealos / Alibaba Cloud 버튼
관찰성OpenTelemetry + Jaeger로 분산 트레이싱
로컬 노출Cloudflare 터널 / ngrok
Trap · 외부 빅테크 API 의존하기
Google Search API와 AWS S3에 묶이기

일반적인 챗봇 클론은 검색은 Google API, 저장은 AWS S3에 의존한다. 그러면 셀프호스팅이 사실상 불가능해지고, API 키 비용·프라이버시 이슈가 따라온다.

Fix · LobeHub의 선택
SearXNG + RustFS 번들

외부 검색 API 대신 오픈소스 메타검색엔진 SearXNG를 docker-compose에 번들. 객체 저장소도 AWS S3 대신 오픈소스 호환 RustFS를 기본으로 사용. 프라이버시 보존이 핵심 가치이기 때문에 셀프호스팅 친화적인 설계가 처음부터 잡혀 있다.

04 — 아키텍처Design

시스템 구조와 5가지 설계 패턴

전체 구조도 → 핵심 패턴 하나하나.

시스템 구조도

┌─────────────────────────────────────────────────────────────────────┐
│                       사용자 채널 (Channels)                          │
│  Web   Mobile PWA   Electron   Slack   Discord   Telegram   WeChat   │
└──────┬────────┬────────┬─────────┬────────┬─────────┬─────────┬──────┘
       │        │        │         │        │         │         │
       ▼        ▼        ▼         ▼        ▼         ▼         ▼
┌─────────────────────────────────────────────────────────────────────┐
│                  IM Gateway / Chat Adapters Layer                    │
│           (@chat-adapter/* + @lobechat/chat-adapter-*)               │
└──────────────────────────────┬──────────────────────────────────────┘
                               │  (Unified Message Bus, ioredis state)
                               ▼
┌─────────────────────────────────────────────────────────────────────┐
│                     Next.js 16 + tRPC v11 API                        │
│     ├─ App Router (RSC) ── 채팅/페이지/스케줄/그룹 UI                 │
│     ├─ tRPC routes ── 타입 안전 RPC                                  │
│     └─ Edge Runtime + Hono ── 저지연 엔드포인트                       │
└──────┬──────────────────────┬──────────────────────────────┬────────┘
       │                      │                              │
       ▼                      ▼                              ▼
┌──────────────┐  ┌───────────────────────┐  ┌──────────────────────────┐
│ Agent Runtime│  │ Model Runtime (LLM)   │  │ Builtin Tools (30+)      │
│ ─ Group flow │  │ ─ OpenAI / Claude     │  │ ─ web-browsing           │
│ ─ Schedule   │  │ ─ Gemini / Bedrock    │  │ ─ python-interpreter     │
│ ─ Memory     │  │ ─ Ollama (local)      │  │ ─ knowledge-base / RAG   │
│ ─ Page agent │  │ ─ HuggingFace         │  │ ─ MCP-compatible plugins │
└──────┬───────┘  └───────────┬───────────┘  └─────────┬────────────────┘
       │                      │                        │
       └──────────────────────┼────────────────────────┘
                              │
                              ▼
┌─────────────────────────────────────────────────────────────────────┐
│                  Persistence & Infra Layer                           │
│  PostgreSQL (drizzle-orm)   Redis (ioredis)   RustFS/S3   SearXNG    │
│  Better-Auth (passkey,OIDC)   QStash (queue)   Langfuse (tracing)    │
└─────────────────────────────────────────────────────────────────────┘

패턴 1 — pnpm 모노레포 (80+ 워크스페이스)

packages/*, packages/business/*, apps/desktop, e2e가 모두 한 레포에 있다. 각각 @lobechat/* 또는 @lobehub/* 네임스페이스로 import.

"workspaces": [
  "packages/*",
  "packages/business/*",
  "e2e",
  "apps/desktop/src/main"
]
Analogy · 왜 모노레포?

"멀티 에이전트 OS"라는 거대한 시스템을 60개의 독립 패키지로 쪼개면서도, 버전 충돌 없이 한 번에 빌드할 수 있게 한다. @lobechat/agent-runtime@lobechat/model-runtime을 import할 때 npm publish 없이 즉시 변경이 반영된다 — 큰 회사 안의 여러 팀이 한 사옥에 모여 있는 구조.

패턴 2 — 빌트인 도구 플러그인 (30+ tools, 도구 1개 = 패키지 1개)

@lobechat/builtin-tool-*로 시작하는 패키지가 30개 이상이다. 각 도구가 독립 패키지라 추가·교체가 쉽다.

@lobechat/builtin-tool-activator       — 다른 도구를 호출하는 메타 도구
@lobechat/builtin-tool-agent-builder   — 에이전트 빌더 자체가 도구
@lobechat/builtin-tool-claude-code     — Claude Code 통합!
@lobechat/builtin-tool-cloud-sandbox   — 격리된 코드 실행 환경
@lobechat/builtin-tool-knowledge-base  — RAG / 벡터 검색
@lobechat/builtin-tool-local-system    — 사용자 PC 파일 조작
@lobechat/builtin-tool-memory          — 영구 메모리
@lobechat/builtin-tool-notebook        — Jupyter 노트북
@lobechat/builtin-tool-page-agent      — Page UI 협업 도구
@lobechat/python-interpreter — 파이썬 실행
@lobechat/builtin-tool-skills          — 스킬 호출
@lobechat/builtin-tool-skill-store     — 스킬 마켓
@lobechat/builtin-tool-task            — 태스크 관리
@lobechat/builtin-tool-user-interaction — 사용자에게 질문
@lobechat/builtin-tool-web-browsing    — 웹 크롤링/브라우징
... (총 30개+)

패턴 3 — Agents as the Unit of Work

전통적 챗봇이 "메시지 1건씩 단발 응답"인 것과 달리, LobeHub는 에이전트 자체가 작업 단위다.

비교 항목전통적 챗봇LobeHub
응답 단위"질문 → 답변" 1:1"에이전트 고용 → 24시간 자율 작업"
컨텍스트대화 종료 = 소실White-Box Memory로 영속 상태
모델 운영1개 모델 = 1개 봇Agent Group으로 여러 모델·역할 협업
채널1개 채널에만 존재Slack/Discord/Web 동시 운영

패턴 4 — White-Box Memory (투명한 메모리)

ChatGPT의 메모리는 "블랙박스"다 — 무엇이 저장됐는지 사용자가 정확히 볼 수도, 편집할 수도 없다. LobeHub의 메모리는 다르다.

구현은 @lobechat/memory-user-memory 워크스페이스 패키지에 분리되어 있다.

패턴 5 — Edge-First, Serverless-First

LobeHub는 처음부터 "Vercel Edge에서 빠르게 돌아가는 것"을 목표로 설계됐다.

05 — 디렉토리Repo map

레포 구조 해부

README + package.json + workspace 구조 기반.

lobehub/
├── apps/
│   └── desktop/              # Electron 데스크탑 앱
│       └── src/main/         # 메인 프로세스 워크스페이스
├── packages/                 # 60+ 모노레포 패키지
│   ├── agent-gateway-client/ # 외부에서 에이전트 호출
│   ├── agent-runtime/        # 에이전트 실행 엔진 (핵심!)
│   ├── agent-templates/      # 미리 만든 에이전트들
│   ├── builtin-agents/       # 내장 에이전트
│   ├── builtin-tools/        # 30+ 내장 도구
│   ├── builtin-tool-*/       # 도구 1개당 패키지 1개
│   ├── chat-adapter-*/       # IM 채널 어댑터
│   ├── context-engine/       # LLM 컨텍스트 윈도우 관리
│   ├── conversation-flow/    # 대화 흐름 제어
│   ├── database/             # drizzle 스키마 + 마이그레이션
│   ├── electron-client-ipc/  # 데스크탑↔웹 IPC
│   ├── eval-rubric/          # 에이전트 평가 기준
│   ├── file-loaders/         # PDF/Word/엑셀 파싱
│   ├── heterogeneous-agents/ # 이종 에이전트 협업
│   ├── memory-user-memory/   # White-Box Memory 구현
│   ├── model-runtime/        # LLM 호출 추상화 레이어
│   ├── observability-otel/   # OpenTelemetry 통합
│   ├── python-interpreter/   # 파이썬 코드 실행 (@lobechat/python-interpreter)
│   ├── shared-tool-ui/       # 도구 공통 UI
│   ├── ssrf-safe-fetch/      # 안전한 외부 fetch (SSRF 방어)
│   ├── web-crawler/          # 웹 크롤링 엔진
│   └── business/             # 비즈니스 로직(유료)
│       ├── config/
│       ├── const/
│       ├── model-bank/
│       └── model-runtime/
├── src/                      # Next.js 16 메인 앱
├── docs/                     # MDX 문서 + 자동 i18n
├── e2e/                      # Playwright E2E 테스트
├── scripts/                  # 빌드/배포 자동화 (50+ 스크립트)
├── docker-compose/dev/       # PG + Redis + RustFS + SearXNG
├── locales/                  # 다국어 번역 (lobe-i18n)
├── public/_spa/              # Vite SPA 빌드 출력
└── package.json              # 200+ 의존성, 100+ 스크립트
Analogy · 가장 중요한 3개 패키지

packages/agent-runtime — 에이전트 실행의 핵심. 메시지 → LLM → 도구 호출 → 응답 루프. packages/model-runtime — 모든 LLM 공급자를 통일된 인터페이스로 추상화 (OpenAI/Claude/Gemini/Ollama를 같은 API로).

packages/context-engine — LLM의 한정된 컨텍스트 윈도우를 어떻게 채울지 결정. 메모리·문서·툴 결과를 압축·요약·우선순위 결정.

06 — 학습 포인트What to learn

분야별 배울 것

기술 영역마다 무엇을 가져갈지.

Next.js 16 + React 19 — 대규모 SaaS의 모범

  • App Router로 거대한 사이드바·다단 라우팅을 어떻게 설계했는지
  • React Server Components를 어디서 쓰고, "use client"를 어디서 분리하는지
  • i18n과 RSC의 까다로운 조합 — next-mdx-remote로 MDX 문서 렌더링

실습: src/app의 라우트 구조 따라가며 RSC vs Client 경계 표시해보기

tRPC v11 — REST 없는 풀스택

  • 클라이언트에서 api.chat.send.useMutation()처럼 타입 안전 호출
  • OpenAPI 자동 생성으로 외부 통합도 지원 (@lobechat/openapi)
  • tRPC + Zustand + react-query 조합 패턴

실습: 본인 사이드 프로젝트에서 axios를 걷어내고 tRPC로 교체

LLM 추상화 레이어 — 핵심 학습 포인트!

  • 각 공급자의 응답 포맷 차이를 정규화하는 어댑터 패턴
  • 스트리밍(SSE) 응답을 통일된 토큰 청크로 변환
  • Tool calling / Function calling 형식 통일

실습: OpenAIProvider를 모방해 본인만의 HyperClovaXProvider 추가

MCP (Model Context Protocol)

  • Anthropic이 2024년 말 발표한 표준 — LobeHub는 일급 시민으로 지원
  • @modelcontextprotocol/sdk로 외부 MCP 서버 연결
  • 10,000+ 스킬은 모두 MCP 호환 포맷

실습: 자체 MCP 서버 1개 작성 → LobeHub에 등록 → 에이전트가 호출하게 만들기

drizzle-orm — Prisma의 라이트한 대안

  • SQL 친화적이면서도 타입 안전한 ORM
  • drizzle-kit generate로 마이그레이션 자동 생성
  • drizzle-dbml-generator로 ERD 자동 출력

실습: 본인 사이드 프로젝트의 Prisma를 drizzle로 교체해보기

Electron + Next.js 통합

  • 웹앱과 데스크탑 앱이 같은 코드를 공유하는 구조
  • @lobechat/electron-client-ipc — IPC 메시지 타입 안전 정의
  • Mac/Windows/Linux 빌드 자동화

실습: Hello World Electron + Next.js 모노레포 직접 구축

Better-Auth + Passkey + OIDC

  • 최신 인증 라이브러리 (NextAuth보다 새롭고 가볍다는 평가)
  • Passkey (WebAuthn) — 비밀번호 없는 로그인
  • 자체 OIDC 서버로 동작 — 자체 SSO 구축 가능

OpenTelemetry + Langfuse — LLM 관찰성

  • 분산 트레이싱으로 "이 답변이 왜 30초 걸렸나?" 추적
  • Langfuse로 프롬프트/응답/비용/품질 평가

실습: 자기 챗봇 프로젝트에 Langfuse 붙여 비용·지연 대시보드 만들기

07 — 요구사항Setup

하드웨어 · 시스템 요구사항

개발 환경 vs 셀프호스팅 환경.

개발 환경

항목최소권장
Node.js20.x22.x LTS
패키지 매니저pnpm 10.33++ Bun (추가 빌드 속도)
RAM8GB16GB+ (max-old-space-size=8192)
Docker필수Postgres+Redis+RustFS+SearXNG 컨테이너 4개 동시
디스크10GB30GB+ (node_modules가 거대함)
Trap · 빌드 시 메모리 폭증
NODE_OPTIONS=--max-old-space-size=81920 (80GB)

package.jsonbuild:analyze 스크립트를 보면 80GB 메모리 옵션이 설정되어 있다. 일반 빌드도 8GB를 요구한다. 메모리가 적은 환경에서는 빌드 전에 swapfile을 늘리거나 Docker 빌드 사용을 권장.

셀프호스팅 (프로덕션)

규모사양외부 의존성
개인용2 vCPU / 4GB / 20GB SSDPostgres + Redis
팀 단위4 vCPU / 8GB / 50GB SSD+ S3 호환 스토리지
매니지드Neon (Postgres) + Upstash (Redis) + Cloudflare R2
LLM 비용API 키별 종량제로컬 Ollama 사용 시 $0
08 — 실습 과제Hands-on

직접 해볼 수 있는 6단계

난이도별 — Easy → Hard.

실습 1 — 셀프호스팅 한 번 띄워보기Easy

1) docker run -d -p 3210:3210 -e OPENAI_API_KEY=sk-xxx --name lobehub lobehub/lobehub 2) http://localhost:3210 접속 → 첫 채팅 3) Settings → 모델 → Ollama 추가 → llama3 / qwen2.5 사용

배우는 것: LobeHub의 핵심 UX, ChatGPT 클론과의 차이를 30분 만에 체험

실습 2 — SearXNG + RustFS 의미 이해Easy

1) docker-compose/dev/docker-compose.yml 읽기 → 어떤 서비스가 뜨는지 파악 2) SearXNG가 무엇이고 왜 Google API 대신 쓰는지 조사 3) RustFS와 MinIO/AWS S3의 관계 정리 4) "왜 LobeHub은 빅테크 API에 의존하지 않으려 하는가?" 짧은 글 제출

배우는 것: 셀프호스팅 친화 설계, 프라이버시 우선 아키텍처

실습 3 — 본인만의 빌트인 도구 추가Medium

1) 레포 클론 → pnpm installpnpm dev:dockerpnpm dev 2) packages/builtin-tools/에서 가장 단순한 도구 (calculator) 코드 읽기 3) packages/builtin-tool-weather 새로 만들기 (OpenWeatherMap API 호출) 4) Agent Builder에서 도구 장착 → "서울 날씨 알려줘" 호출

배우는 것: 도구 등록 메커니즘, function calling 통합, 모노레포 워크스페이스 추가법

실습 4 — Slack 어댑터로 본인 봇 운영Medium

1) @chat-adapter/slack 패키지가 노출하는 API 조사 2) Slack App 생성 → Bot Token 발급 3) LobeHub 환경변수에 Slack 설정 주입 4) Slack 채널에서 @lobebot 안녕 → 응답 확인 5) 요약봇·번역봇 여러 에이전트를 같은 채널에 동시 운영

배우는 것: IM Gateway 패턴, 멀티 에이전트 라우팅, Slack Events API

실습 5 — 본인만의 LLM Provider 추가 (HyperClova X)Hard

1) packages/model-runtimeOpenAIProvider 클래스 정독 2) 네이버 HyperClova X API 스펙 조사 3) HyperClovaXProvider 작성 — 스트리밍·Tool calling 포함 4) Settings UI에 새 공급자 옵션 추가 5) PR로 LobeHub 본가에 기여

배우는 것: 어댑터 패턴 실전, SSE 정규화, OSS 컨트리뷰션 흐름

실습 6 — Agent Group 멀티에이전트 워크플로우Hard

1) "기획자 + 디자이너 + 개발자 + QA" 4개 에이전트 설계 2) 각 에이전트에 역할 프롬프트 + 전용 도구 장착 3) packages/conversation-flow에서 협업 플로우 추적 4) 미니 기능을 설계하고 코드까지 작성하는 워크플로우 완성

배우는 것: 멀티 에이전트 오케스트레이션, Agent Group 내부 동작, 협업 시나리오 설계

09 — 학습 로드맵4 weeks

4주 학습 로드맵

사용자 → 코드 탐험 → 기여자까지.

Week 01
사용자 모드로 충분히 써보기

Docker 셀프호스팅 → 5개 에이전트 만들기. MCP 도구 3개 연결 (Filesystem, GitHub, Slack). Agent Group으로 협업 시나리오 1개. White-Box Memory 직접 수정 → 변화 관찰. Slack 채널에서 직접 운영.

Week 02
코드베이스 탐험

pnpm install + 로컬 dev 환경 셋업. packages/agent-runtime 코드 리딩 → 에이전트가 어떻게 실행되나. packages/model-runtime Provider 추상화 이해. packages/context-engine 컨텍스트 관리 전략. tRPC routes 따라가며 채팅 메시지 흐름 추적.

Week 03
작은 PR 보내기

버그 1개 수정 또는 문서 오타 수정. i18n 한국어 누락 번역 추가. 본인 빌트인 도구 1개 추가 → 외부 fork에서 운영. 작은 PR이 머지되는 흐름 체험.

Week 04
기능 PR (캡스톤)

새 LLM Provider 추가 (HyperClova X, Solar 등) 또는 새 IM 어댑터 (KakaoTalk, Naver Cafe 등). GitHub Discussion으로 RFC 작성 → 메인테이너 피드백 받기 → 머지까지 끌고 가기.

함께 읽으면 좋은 자료

주제자료
Anthropic MCPmodelcontextprotocol.io
tRPC v11trpc.io
drizzle-ormorm.drizzle.team
Next.js 16nextjs.org/docs
Better-Auth + Passkeybetter-auth.com
Langfuse 관찰성langfuse.com
12-factor agentsgithub.com/humanlayer/12-factor-agents
10 — 키워드 사전Glossary

핵심 용어 한눈에

자주 마주칠 단어들.

Chief Agent Operator (CAO)
LobeHub가 자신을 부르는 이름. "AI 에이전트 본부장" — 여러 에이전트를 고용·스케줄링·보고받는 역할을 사용자에게 부여.
Agent
특정 역할·도구·메모리를 가진 AI 일꾼. 단순 챗봇과 달리 영속 상태와 도구 사용 권한을 가짐.
Agent Group
여러 에이전트를 한 작업에 모은 팀. 병렬 협업과 반복 개선을 자동 수행 — "기획자+디자이너+개발자 부서".
MCP (Model Context Protocol)
Anthropic의 2024 표준. LLM이 외부 도구·데이터와 통신하는 방법을 통일. USB-C 같은 표준.
White-Box Memory
사용자가 직접 보고 편집할 수 있는 투명한 메모리. ChatGPT의 불투명 메모리와 대비.
IM Gateway
Slack/Discord/TG/WeChat을 통합 채널로 묶는 LobeHub 레이어. 어디서 호출되든 같은 상태.
tRPC
TypeScript 기반 RPC. REST/GraphQL 없이도 클라-서버 타입 안전 함수 호출.
drizzle-orm
TypeScript-first ORM. Prisma보다 가볍고 SQL과 가까운 문법.
RustFS
Rust로 작성된 오픈소스 S3 호환 객체 저장소. MinIO 대안. LobeHub가 docker-compose에 기본 포함.
SearXNG
메타검색 엔진. 여러 검색엔진 결과 통합, 사용자 추적 없음. Google/Bing API 대체.
Better-Auth
NextAuth의 차세대 대안. Passkey·OAuth·OIDC를 한 패키지에서.
Passkey (WebAuthn)
비밀번호 없이 기기의 생체인증(지문/얼굴)으로 로그인하는 표준.
Langfuse
LLM 호출 관찰성 플랫폼. 프롬프트·응답·비용·품질 추적 — AI 호출의 가계부.
QStash
Upstash의 서버리스 메시지 큐. 지연 실행·웹훅·워크플로우 — 예약 발송 우체통.
pnpm workspace
한 레포에 여러 패키지를 두고 한꺼번에 관리. workspace:*로 내부 패키지 참조.
Edge Runtime
전 세계 분산 서버에서 0~50ms 거리에서 실행되는 JS 런타임. Vercel Edge / Cloudflare Workers.
OpenTelemetry (OTel)
분산 시스템의 트레이스·메트릭·로그를 표준 포맷으로 수집하는 OSS 표준.
Lexical
Meta가 만든 차세대 리치 텍스트 에디터. Draft.js 후속. 노트북·페이지 작성용.
11 — 참고 링크Refs

더 깊이 파고들 자료

공식 · 데모 · 학습 리소스.

공식 자료

관련 표준 · 방법론

핵심 라이브러리 · 학습 리소스

Action · 이번 주에 해볼 것

LobeHub를 처음 만났다면 이 순서로 5단계.

  1. Docker 한 줄로 띄우기. docker run -d -p 3210:3210 -e OPENAI_API_KEY=... lobehub/lobehub. localhost:3210에서 첫 채팅. ChatGPT 클론과 무엇이 다른지 UI에서 직접 확인.
  2. Agent 3개 + Agent Group 1개 만들기. "요약봇·번역봇·검색봇"을 만들고 Group으로 묶기. 한 번의 질문에 세 에이전트가 어떻게 협업하는지 관찰.
  3. MCP 도구 연결. Filesystem 또는 GitHub MCP 서버를 에이전트에 장착. "내 폴더의 파일 목록 보여줘" → 실제로 동작하는지 확인.
  4. 코드 한 줄 PR 보내기. 레포 클론 후 locales/ko에서 누락 번역 1개 채우거나 README 오타 수정. OSS 컨트리뷰션 흐름 체험.
  5. 본인 LLM Provider 시제품. packages/model-runtime/OpenAIProvider 정독 후, 가짜 응답을 반환하는 MockProvider를 만들어 보고 Settings UI에 노출시키기. 다음 단계는 HyperClova X 등 실제 Provider 추가.
원문 · lobehub/lobehub (GitHub) · 2026-05-21 · TrendShift #2 · GitHub Trending 81회