aayushch/laya
Laya is an open-source, local-first AI notification command center that aggregates Slack, Gmail, GitHub, Jira, Notion, Outlook, Calendar (and more) notifications using local LLMs via Ollama and LM Studio. Supports cloud models via BYOK.
Laya – 업무용 받은 편지함을 위한 AI 기반 커맨드 센터
개요 – Laya는 일상적으로 사용하는 도구(Slack, Gmail, GitHub, Jira, Notion, Outlook, 캘린더 등)와 사용자 사이에 위치하는 데스크톱 애플리케이션입니다. 알림을 가져와 로컬 호스팅 또는 클라우드 LLM을 통해 처리하고, 각 이벤트를 승인, 편집 또는 기각할 수 있는 Action Card로 변환합니다. 간단히 말해, 언어 모델이 1차 조사와 초안 작성을 수행하게 함으로써 일상적인 메시지에 응답하는 시간을 줄이고 실제 업무에 더 집중할 수 있게 해줍니다.
작동 방식
- 수집 – n8n(로컬 Node.js 워크플로우 엔진)이 지원되는 서비스를 모니터링하고 모든 수신 이벤트를 정규화합니다.
- 처리 – Laya Engine(Python FastAPI)이 이벤트를 분류하고, 어떤 AI 페르소나(엔지니어, 운영, 영업 등)가 처리할지 결정하며, 적절한 LLM(Ollama, LM Studio, Claude, GPT, Gemini 또는 LiteLLM 호환 엔드포인트 경유)을 실행하여 초안 응답이나 작업을 준비합니다.
- 제시 – Tauri 기반 데스크톱 UI(Svelte 5 + Tailwind)가 초안을 Action Card로 표시합니다. 이를 승인, 수정 또는 거부할 수 있습니다.
- 실행 – 승인된 카드는 n8n으로 다시 전송되어 실제 작업(PR 생성, Slack 답장 전송, Jira 티켓 업데이트 등)을 수행합니다.
주요 기능
- 다중 페르소나 라우팅 – 엔지니어링, 커뮤니케이션, 운영, 영업, 인사, 재무 등 각 분야에 맞는 LLM 프롬프트를 사용하며, 각 페르소나는 고유한 도구 세트를 가집니다.
- 카드 워크스페이스 – 복잡한 작업(예: 버그 수정)을 대화형 세션으로 전환하여 코딩 에이전트(Claude Code, Gemini CLI, Codex, Pi, Cursor)와 단계별로 상담할 수 있습니다.
- 온디맨드 리서치 – 모든 카드에서 심층 조사 세션을 시작할 수 있습니다. 에이전트가 웹을 검색하고 파일을 읽어 간결한 요약을 반환합니다.
- 하이브리드 검색 (Coherence) – 벡터 유사성(ChromaDB)과 SQLite FTS5 기반의 고전적인 BM25를 결합하여 모든 플랫폼에 걸친 관련 티켓, PR 또는 메시지를 찾을 수 있습니다.
- 컨텍스트 연관성 및 메모리 – Laya는 "BUG-1234" ↔ Slack 토론 ↔ PR과 같은 엔티티 간의 연관성을 자동으로 학습하며 시간이 지남에 따라 개선됩니다.
- 예산 및 분석 – 기능별 LLM 사용량을 추적하고 비용 내역을 표시하며, 월간 한도에 도달하면 수집을 일시 중지할 수 있습니다.
- 채팅 사이드바 – 받은 편지함에 대해 자연어로 질문하거나 즉석에서 새로운 규칙을 생성하도록 Laya에 요청할 수 있습니다.
- 개인정보 보호 – 모든 데이터를 로컬(Ollama/LM Studio)에 유지하거나 클라우드 API를 사용할 수 있습니다. 데이터 분류 계층을 통해 어떤 단계를 어디에서 실행할지 결정할 수 있습니다.
기술 스택 (개요)
- 데스크톱 셸 – 네이티브 크로스 플랫폼 앱을 위한 Tauri v2(Rust).
- 프론트엔드 – Svelte 5 + Tailwind CSS.
- 백엔드 – Python 3.10+ FastAPI, 각 페르소나별 비동기 워커.
- LLM 통합 – LiteLLM(Anthropic, OpenAI, Google, Ollama, 모든 OpenAI 호환 엔드포인트 지원).
- 워크플로우 엔진 – n8n(로컬 Node.js)이 Slack, Gmail, GitHub 등의 커넥터를 처리.
- 저장소 – 구조화된 데이터용 SQLite(FTS5 포함), 임베딩용 ChromaDB.
- 임베딩 – 내장 ONNX 모델 또는 선택적 sentence-transformers.
대상 사용자
- 다양한 유형의 알림을 많이 받아 AI를 통한 분류 및 답장 초안 작성이 필요한 전문가.
- 모든 업무 관련 메시지를 한곳에서 확인하고 일상적인 작업을 자동화하려는 소규모 팀.
- 로컬 우선 솔루션(자신의 기기에서 LLM 실행)을 선호하면서도 필요시 클라우드 모델을 사용할 수 있는 옵션을 원하는 분.
시작하기
- 미리 빌드된 설치 프로그램(macOS .dmg, Windows .msi/.exe, Linux .deb/.AppImage)을 다운로드하세요. Python, Node, Rust를 직접 설치할 필요가 없습니다.
- 처음 실행 시 API 키(OpenAI, Anthropic, Google)를 추가하거나 Laya를 Ollama/LM Studio 엔드포인트에 연결하세요.
- 설정에서 필요한 서비스를 연결하면 Laya가 자동으로 이벤트 수집을 시작합니다.
개발 – 저장소에는 전체 개발 환경(Python venv, Node packages, Rust toolchain)을 설정하는 스크립트가 포함되어 있습니다. 코드는 engine/(Python 백엔드), ui/(Svelte + Tauri UI), n8n/(워크플로우 정의)으로 나뉩니다.
결론 – Laya는 일상적인 업무 알림을 AI가 작성한 실행 가능한 카드로 변환하는 풀스택 오픈소스 AI 어시스턴트입니다. 클릭 한 번으로 승인하거나 거부할 수 있으며, 무거운 작업은 로컬 또는 사용자의 API 키 뒤에서 안전하게 처리됩니다.
관련
- Dispatch
- 프로젝트
- 프로젝트
- Dispatch
- 프로젝트