프로젝트 소개

Mike (MikeOSS)는 문서 검토, 초안 작성 및 법률 연구를 위해 설계된 오픈소스 법률 AI 플랫폼입니다. Next.js 프론트엔드, Express 백엔드, Supabase Auth/Postgres 및 Cloudflare R2 호환 객체 스토리지를 결합합니다. ## 기능 - 법률 문서 및 진행 중인 사건과 채팅 - 문서 검토 및 제안된 수정 사항 적용 - 재사용 가능한 어시스턴트 및 표 형식 검토 워크플로우 실행 - 프로젝트, 폴더 및 문서 라이브러리 구성 - CourtListener를 통한 인용 확인 및 미국 판례 연구 - 베타 작업 창 추가 기능을 통해 Microsoft Word에서 작업 - Ollama를 통해 지원되는 언어 모델을 로컬에서 실행 ## 빠른 시작 포함된 Docker Compose 스택은 관리형 인프라 없이 Mike, Supabase, RustFS 객체 스토리지 및 로컬 이메일 캡처를 실행합니다. 단계는 환경 템플릿 복사, 비밀 설정, Ollama만 사용하는 경우를 제외한 API 키(Anthropic, Gemini 또는 OpenAI) 추가, 그리고 `docker compose up --build`로 스택 시작을 포함합니다. 번들된 자격 증명은 로컬 개발 전용입니다. ## 저장소 구조 - `frontend/`: Next.js 웹 애플리케이션 - `backend/`: Express API, 문서 처리 및 데이터베이스 접근 - `word-addin/`: Microsoft Word 작업 창 추가 기능(베타) - `backend/schema.sql`: 새 데이터베이스를 위한 전체 스키마 - `backend/migrations/`: 기존 배포를 위한 날짜별 마이그레이션 - `docker-compose.yml`: 로컬 애플리케이션 및 인프라 스택 - `docs/`: 개발, 배포, 테스트 및 기능 가이드 ## 커넥터 Mike는 설정 > 커넥터를 통해 Slack 및 모든 원격 MCP(Model Context Protocol) 서버에 연결됩니다. 두 가지 설정 경로가 있습니다: 1. **설정 불필요**: 대부분의 호스팅된 MCP 서버는 OAuth 동적 클라이언트 등록(RFC 7591)을 지원합니다. 사용자는 서버 URL을 붙여넣거나 사전 설정을 선택한 후 제공자의 동의 화면을 완료합니다. Bearer 토큰 또는 사용자 정의 헤더 서버도 여기에 해당하며, 자격 증명은 암호화되어 저장됩니다. 2. **자체 OAuth 앱 가져오기**: 동적 클라이언트 등록을 지원하지 않는 제공자(예: Google 호스팅 MCP 서버, Slack)의 경우, 호스트가 OAuth 클라이언트를 한 번 생성하고 `backend/.env`에 자격 증명을 설정합니다. 그러면 사용자가 한 번의 클릭으로 계정을 연결합니다. 리디렉션 URI는 `API_PUBLIC_URL`(브라우저에서 접근 가능한 프론트엔드 게이트웨이와 `/api` 접두사 포함)에서 파생됩니다. Slack은 HTTPS를 요구하므로 로컬 개발은 프론트엔드를 가리키는 HTTPS 터널(예: cloudflared)이 필요합니다. Slack 쓰기 도구(메시지 보내기, 반응 추가 등)는 캐시되지만 비활성화되어 있는데, 이는 Mike에 쓰기 도구에 대한 인간 확인 단계가 아직 없기 때문입니다. ## 시스템 워크플로우 시스템 어시스턴트 및 표 형식 검토 워크플로우는 `Open-Legal-Products/mike-workflows` 저장소에서 유지 관리됩니다. ## 라이선스 Mike는 GNU Affero General Public License v3.0에 따라 제공됩니다.