asklokesh/loki-mode
요약
Loki Mode는 명세(spec)를 입력하면 자율적인 에이전트 팀이 프로덕션 수준의 코드를 생성하는 오픈소스 프레임워크입니다. RARV 사이클과 11개의 품질 게이트를 통해 검증된 소스 코드, 테스트, CI/CD 설정을 포함한 전체 Git 리포지토리를 제공합니다.
핵심 포인트
- 8개 스웜과 41개 전문 에이전트 기반의 자율적 코드 생성
- RARV(Reason-Act-Reflect-Verify) 사이클을 통한 자동 검증
- Claude, Codex, Gemini 등 5가지 AI 제공업체 지원 및 장애 조치
- 레거시 시스템 현대화 및 복구를 위한 'loki heal' 기능
- 벡터 검색 기반의 메모리 시스템 및 MCP 서버 지원
원하는 것을 설명하세요. 바로 프로덕션에 적용 가능한 코드를 얻을 수 있습니다.
Website | Documentation | Installation | Changelog | Purple Lab Web UI
작동 방식: PRD, GitHub issue, OpenAPI/JSON/YAML, 또는 한 줄짜리 요약과 같은 명세(spec)를 전달하세요. Loki Mode는 복잡도를 분류하고(run.sh:detect_complexity()), 8개의 스웜(swarms)에 걸친 41가지 전문 유형으로부터 에이전트 팀을 구성하며, 11개의 품질 게이트(quality gates, skills/quality-gates.md 참조)와 함께 자율적인 RARV 사이클(Reason - Act - Reflect - Verify, run.sh:run_autonomous() 참조)을 실행합니다. 코드는 자동화된 검증을 통과할 때까지 "완료"된 것이 아닙니다. 출력물은 소스 코드, 테스트, 설정, 그리고 감사 로그(audit logs)를 포함한 Git 리포지토리(repo) 형태로 제공됩니다.
진정한 자율성-- 원하는 것을 설명하고 자리를 비우면, 테스트가 포함된 작동하는 코드가 완성되어 있습니다.
내장된 프로덕션 품질-- 11개의 품질 게이트(skills/quality-gates.md), 블라인드 3인 리뷰어 코드 리뷰(run.sh:run_code_review()), 아첨 방지(anti-sycophancy) 체크
셀프 호스팅 및 프라이버시-- 귀하의 API 키, 귀하의 인프라, 데이터는 네트워크를 벗어나지 않습니다.
5가지 AI 제공업체-- Claude, Codex, Gemini, Cline, Aider를 지원하며 자동 장애 조치(failover, loki-ts/src/runner/providers.ts 참조)가 가능합니다.
레거시 시스템 복구(Legacy system healing)-- loki heal을 통해 고고학(archaeology)/안정화(stabilize)/격리(isolate)/현대화(modernize)/검증(validate) 단계를 수행합니다 (v6.67.0, skills/healing.md 참조)
메모리 시스템-- 벡터 검색(vector search)을 포함한 에피소드/의미/절차적 메모리 (v5.15.0, memory/engine.py 참조)
MCP 서버-- ChromaDB 코드 검색을 포함한 15가지 도구 (mcp/server.py 참조)
풀스택 출력-- 소스 코드, 테스트, Docker 설정, CI/CD 파이프라인, 감사 로그
오픈 소스-- 개인, 내부 및 학술적 용도로 무료로 사용 가능합니다. 특정 벤더 종속성(vendor lock-in)이 없습니다.
권장 사항 (Bun 사용 시 가장 빠름):
# Bun을 한 번 설치하세요 (이미 설치되어 있다면 건너뛰세요)
curl -fsSL https://bun.sh/install | bash # macOS / Linux
# 또는: brew install oven-sh/bun/bun
...
또는 스캐폴딩(scaffolding)을 건너뛰고 즉시 빠른 작업을 수행할 수 있습니다:
loki quick "build a landing page with a signup form"
기타 설치 방법 (모두 작동하며, 지속적으로 지원됩니다):
| 방법 | 명령어 | 참고 사항 |
|---|---|---|
| Bun (권장) | bun install -g loki-mode | 가장 빠름. v8부터는 Bun 전용이 됩니다. |
| Homebrew | brew tap asklokesh/tap && brew install loki-mode | 의존성으로 Bun을 자동 설치합니다. |
| Docker | docker pull asklokesh/loki-mode:7.5.11 && docker run --rm asklokesh/loki-mode:7.5.11 start prd.md | 이미지 내에 Bun이 사전 설치되어 있습니다. |
| npm (호환) | npm install -g loki-mode | Bun 없이도 작동합니다 (bash 폴백 (fallback) 사용). loki self-update --to bun 명령어로 언제든 마이그레이션할 수 있습니다. |
업그레이드 (Upgrading):
loki self-update # 현재 매니저를 통해 제자리에서 업그레이드
loki self-update --to bun # npm/brew에서 Bun으로 전환
loki self-update --check # 현재 설치 경로 + 매니저 표시
loki self-update는
loki를 설치한 패키지 매니저를 자동으로 감지하여 올바른 업그레이드를 실행합니다. 만약 npm을 통해 설치했고 Bun으로 전환하고 싶다면 (v8.0.0 이후의 호환성을 위해 권장됨), loki self-update --to bun 명령어가
단 하나의 명령어로 마이그레이션을 수행합니다 (먼저 Bun을 통해 설치한 후, npm 복사본을 삭제합니다).
상세한 내용은 설치 가이드(Installation Guide)를 참조하세요.
Loki Mode는 Bash 기반 런타임 (runtime)에서 TypeScript/Bun 런타임으로 단계적인 마이그레이션(migration)을 진행 중입니다. 이 작업은 feat/bun-migration 브랜치에서 이루어지고 있으며 점진적으로 배포되고 있습니다.
현재 배포되는 사항:
bun이PATH에 있는 경우, 소수의 읽기 전용 명령어 세트가 Bun 런타임으로 라우팅(routed)됩니다. 라우터는bin/loki에 위치하며 현재 다음 명령어들을 라우팅합니다:version,--version,-v,status,stats,doctor,provider(provider show및provider list포함),memory(memory list및memory index포함). - 그 외의 모든 명령어는 기존 Bash CLI (autonomy/loki)에서 계속 실행됩니다. - 만약bun이PATH에 없다면, 심(shim)이 조용히 Bash로 폴백(fall through)됩니다. Bun이 설치되지 않은 기존 사용자들은 동작의 변화를 느끼지 못합니다.
롤백 플래그 (Rollback flag):
모든 명령어가 레거시(legacy) Bash 경로를 따르도록 강제합니다:
LOKI_LEGACY_BASH=1 loki <cmd>
이는 Bun 경로에서 회귀(regression) 문제를 겪는 사용자를 위해 문서화된 탈출구(escape hatch)입니다. Bash 경로는 Phase 5(5단계) 동안 진실의 원천(source of truth)으로 유지됩니다.
Phase 6 (계획됨, 일정 미정):
다음 주요 릴리스에서는 Bash 런타임(runtime)을 완전히 종료(sunset)합니다. 확정된 일정은 없습니다. Bash 경로를 유지해야 하는 사용자는 마지막 v7.x 릴리스를 고정(pin)하여 사용해야 합니다.
비용 (Cost):
- Bun 런타임 의존성 추가 (
bun이 해결되는 한 shim이 작동하므로 Bun 1.3.0 이상 권장). - 시스템에 Bun 툴체인(toolchain) 추가 (brew install또는 공식 curl 설치 프로그램을 통해 설치된 Bun 자체의 크기는 약 50 MB). npm tarball 내부에 게시된loki-ts/dist/loki.js번들은 약 152 KB입니다. - 포팅된 명령어의 속도 향상은.loki/metrics/migration_bench_soak.jsonl에서 측정되며 ADR-001에서 분석됩니다. 기록된 soak 결과에 따르면 포팅된 명령어에서 대략 3배에서 5배 빠른 실행 속도를 보여줍니다(명령어당 범위 2.9x ~ 5.0x). 이는 지표일 뿐 계약적 보증은 아닙니다.
기타 정보:
- UPGRADING.md -- 버전별 업그레이드 및 롤백(rollback) 가이드.
- ADR-001: Runtime Migration -- 설계 근거 및 단계(phase) 정의.
기타 설치 방법
| 방법 | 명령어 |
|---|---|
| Homebrew | brew tap asklokesh/tap && brew install loki-mode |
| Docker | docker pull asklokesh/loki-mode:7.5.11 |
| Claude Code 내부 | claude --dangerously-skip-permissions 입력 후 "Loki Mode" 타이핑 |
| Git clone | git clone https://github.com/asklokesh/loki-mode.git |
전체 설치 가이드(Installation Guide)를 참조하세요.
지원되는 스펙(spec) 형식
"스펙(spec)"은 loki start에 전달하는 무엇이든 의미합니다. Loki는 형식을 자동 감지하고 RARV 루프 이전에 이를 정규화(normalise)합니다. Markdown PRD는 스펙의 한 형태이며, 아래 표는 v7.5.11 CLI가 허용하는 모든 입력을 나열합니다.
| 형식 (Format) | 예시 (Example) | 비고 (Notes) |
|---|---|---|
| Markdown PRD | loki start ./prd.md | 표준 형태 (Canonical form). 헤딩 (Headings)이 섹션 앵커 (section anchors)가 됩니다. |
| JSON spec | loki start ./spec.json | 자유 형식의 JSON; 키 (keys)가 에이전트 (agents)에게 노출됩니다. |
| YAML spec | loki start ./openapi.yaml | OpenAPI / AsyncAPI / 일반 YAML 모두 허용됩니다. |
| Plain text brief | loki start ./brief.txt | 한 단락 분량의 브리프 (briefs)도 작동하며, 복잡도 (complexity)가 자동으로 "simple"로 감지됩니다. |
| GitHub issue URL | loki start https://github.com/owner/repo/issues/42 | 제목 (Title) + 본문 (body) + 라벨 (labels)이 스펙 (spec)이 됩니다. |
| GitHub shorthand | loki start owner/repo#42 | 위와 동일하지만 더 짧은 형식입니다. |
| Jira ticket key | loki start PROJ-456 | JIRA_BASE_URL + JIRA_TOKEN 환경 변수 (env vars)가 필요합니다. |
| GitLab / Azure DevOps URL | loki start https://gitlab.com/group/proj/-/issues/7 | GitLab 및 Azure DevOps 이슈 (issue) URL을 모두 지원합니다. |
| Bare issue number | loki start #123 또는 loki start 123 | 현재 리포지토리 (repo)의 origin 원격 (remote)을 기준으로 해결됩니다. |
| OpenSpec change directory | loki start --openspec ./openspec/change-001 | OpenSpec 변경 매니페스트 (change manifest) + 델타 (delta) 파일을 읽습니다. |
| Auto-detect (no input) | loki start | 현재 작업 디렉토리 (cwd)에서 ./prd.md, ./spec.{json,yaml,yml}, 또는 ./SPEC.md를 찾아냅니다. |
모든 형식은 동일한 RARV 파이프라인 (pipeline)에 도달하며 동일한 11개의 품질 게이트 (quality gates) (skills/quality-gates.md)를 통과합니다.
| 프로젝트 (Project) | 빌드 시간 (Build Time) | 복잡도 (Complexity) |
|---|---|---|
| 가입 양식이 포함된 랜딩 페이지 (Landing page with signup form) | ~10분 | Simple |
| ... | ||
| Simple | Standard | Complex |
| --- | --- | --- |
| 예시 (Examples) | 랜딩 페이지, 할 일 앱 (todo app), 단일 API | CRUD + 인증 (auth), REST API + React |
| 소요 시간 (Duration) | 5-30분 | 30-90분 |
| 자율성 (Autonomy) | 독립적으로 완료 | 복잡한 부분에 대해 가이드가 필요할 수 있음 |
| 매 반복 (iteration) 시: |
8개의 스웜 (swarms): 엔지니어링 (engineering), 운영 (operations), 비즈니스 (business), 데이터 (data), 제품 (product), 성장 (growth), 검토 (review), 오케스트레이션 (orchestration). PRD 복잡도에 따라 자동 구성됨. |
블라인드 검토 (Blind review), 아첨 방지 (anti-sycophancy), 심각도 차단 (severity blocking), 모의/변이 탐지 (mock/mutation detection), 하위 호환성 (backward compatibility) (gate 10, v6.67.0), 문서화 커버리지 (documentation coverage) (gate 11, v7.5.0). 모든 게이트를 통과할 때까지 코드는 배포되지 않음. |
| 3계층 아키텍처 (3-tier architecture): 에피소드 (episodic, 상호작용 흔적), 시맨틱 (semantic, 일반화된 패턴), 절차적 (procedural, 학습된 기술). 벡터 검색 (Vector search) 선택 사항. |
실시간 모니터링 (Real-time monitoring), 에이전트 상태 (agent status), 작업 큐 (task queue), WebSocket 스트리밍 (WebSocket streaming). |
TLS, OIDC/SSO, RBAC, OTEL 트레이싱 (OTEL tracing), 정책 엔진 (policy engine), 감사 추적 (audit trails). 환경 변수 (env vars)를 통해 활성화됨. |
호스팅된 개발 플랫폼. 반복적인 개발을 위한 AI 채팅 기능이 포함된, 시각적인 PRD-to-code 워크플로우를 제공하는 Replit 스타일의 웹 UI.
loki web # http://localhost:57375 에서 실행됨
|
|
|
| 기능 | Loki Mode | bolt.new | Replit | Lovable |
|---|---|---|---|---|
| 셀프 호스팅 (Self-hosted) / 사용자 키 사용 | 예 | 아니요 | 아니요 | 아니요 |
| ... | ||||
| Loki Mode는 완전한 셀프 호스팅이 가능하고, 오픈 소스이며, 자동화된 품질 검증을 포함하는 유일한 플랫폼입니다. 귀하의 코드, 귀하의 키, 귀하의 인프라를 사용하세요. |
| 제공자 (Provider) | 자율 플래그 (Autonomous Flag) | 병렬 에이전트 (Parallel Agents) | 설치 (Install) |
|---|---|---|---|
| Claude Code | --dangerously-skip-permissions | 예 (10+) | npm i -g @anthropic-ai/claude-code |
| Codex CLI | --full-auto | 순차적 (Sequential) | npm i -g @openai/codex |
| Gemini CLI | --approval-mode=yolo | 순차적 (Sequential) | npm i -g @google/gemini-cli |
| Cline CLI | --auto-approve | 순차적 (Sequential) | npm i -g @anthropic-ai/cline |
| Aider | --yes-always | 순차적 (Sequential) | pip install aider-chat |
Claude는 모든 기능(서브 에이전트 (subagents), 병렬화 (parallelization), MCP, 작업 도구 (Task tool))을 사용할 수 있습니다. 다른 제공자들은 순차적으로 실행됩니다. 속도 제한 (rate-limited)이 발생하면 자동 장애 조치 (Auto-failover)를 통해 제공자를 전환합니다. 제공자 가이드를 참조하세요.
모든 명령어
| 명령어 | 설명 |
|---|---|
loki start [PRD] | 선택적 PRD 파일과 함께 시작 (이슈 참조도 가능하며, 지원 중단된 loki run을 대체함) |
loki stop | 실행 중지 |
loki heal <path> | 레거시 시스템 치유 (archaeology, stabilize, isolate, modernize, validate -- v6.67.0) |
loki pause / resume | 현재 세션 이후 일시 중지/재개 |
loki status | 현재 상태 표시 |
loki dashboard | 웹 대시보드(Web dashboard) 열기 |
loki web | Purple Lab 웹 UI 실행 |
loki doctor | 환경 및 의존성(Dependencies) 확인 |
loki plan [PRD] | 실행 전 분석: 복잡도(Complexity), 비용(Cost), 반복(Iterations) |
| `loki review [--staged | --diff]` |
| `loki test [--file | --dir |
loki onboard [path] | 프로젝트 분석 및 CLAUDE.md 생성 |
loki import | GitHub 이슈를 작업(Tasks)으로 가져오기 |
loki ci | CI/CD 품질 게이트(Quality gate) 통합 |
loki failover | 교차 제공자 자동 장애 조치(Cross-provider auto-failover) 관리 |
loki memory <cmd> | 메모리 시스템: 인덱스(Index), 타임라인(Timeline), 검색(Search), 통합(Consolidate) |
loki enterprise | 엔터프라이즈 기능 관리 |
loki version | 버전 표시 |
모든 옵션은 loki --help를 실행하여 확인하세요. 전체 참조: CLI Reference | 설정(Config): config.example.yaml
BMAD 방법론 통합 (BMAD Method Integration)
Loki Mode는 구조화된 AI 기반 애자일 방법론인 BMAD 방법론과 통합됩니다. 프로젝트에서 요구사항 도출(Requirements elicitation)을 위해 BMAD를 사용하는 경우, Loki Mode는 해당 산출물(Artifacts)을 직접 가져와 사용할 수 있습니다:
loki start --bmad-project ./my-project
어댑터(Adapter)는 BMAD의 프런트매터(Frontmatter) 컨벤션, FR-포맷 기능 요구사항(Functional requirements), Given/When/Then 수락 기준(Acceptance criteria), 그리고 산출물 체인 검증(Artifact chain validation)을 처리합니다. Non-BMAD 프로젝트에는 영향을 주지 않으며, 통합은 --bmad-project를 통해 선택적으로 적용(Opt-in)됩니다.
엔터프라이즈 기능 (Enterprise Features)
엔터프라이즈 기능은 포함되어 있으나 환경 변수(Env var) 활성화가 필요합니다. 자체 감사(Self-audit) 결과: 45개 기능 중 35개 작동 중, 0개 오류, 1,314개 테스트 통과.
export LOKI_TLS_ENABLED=true
export LOKI_OIDC_PROVIDER=google
export LOKI_AUDIT_ENABLED=true
...
기업 아키텍처 (Enterprise Architecture) | 보안 (Security) | 인증 (Authentication) | 인가 (Authorization) | 메트릭 (Metrics) | 감사 로깅 (Audit Logging)
벤치마크 (Benchmarks)
포함된 테스트 하네스 (test harness)에서 자체 보고된 결과입니다. 재현을 위한 검증 스크립트가 포함되어 있습니다.
| 벤치마크 | 결과 | 비고 |
|---|---|---|
| HumanEval | 162/164 (98.78%) | 최대 3회 재시도, RARV 자체 검증 |
| SWE-bench | 299/300 패치 | 패치 생성 -- 평가기(evaluator) 아직 실행되지 않음 |
방법론은 benchmarks/를 참조하세요.
프레젠테이션 (Presentation)
9개 슬라이드: 문제, 솔루션, 41개 에이전트 (Agents), RARV 사이클, 벤치마크, 멀티 프로바이더 (Multi-Provider), 전체 라이프사이클 (Full Lifecycle)
| 영역 | 작동하는 기능 | 작동하지 않는 기능 (아직) |
|---|---|---|
| 코드 생성 (Code Gen) | PRD로부터 풀스택 앱 생성 | 복잡한 도메인 로직은 인간의 검토가 필요할 수 있음 |
| 배포 (Deploy) | 설정 파일, Dockerfile, CI/CD 생성 | 배포를 직접 수행하지 않음 -- 인간이 배포 명령을 실행함 |
| 테스트 (Testing) | 11개의 자동화된 품질 게이트 (quality gates) | 테스트 품질은 AI 어설션 (assertions)에 의존함 |
| 프로바이더 (Providers) | 자동 장애 조치 (auto-failover)를 지원하는 5개 프로바이더 | Claude 이외의 프로바이더는 병렬 에이전트가 부족함 |
| 대시보드 (Dashboard) | 실시간 단일 머신 모니터링 | 멀티 노드 클러스터링 (multi-node clustering) 미지원 |
"자율적 (autonomous)"의 의미: 시스템은 프롬프트 없이 RARV 사이클을 실행합니다. 사용자가 자격 증명을 제공하지 않는 한, 사용자의 클라우드 계정, 결제 시스템 또는 외부 서비스에 접근하지 않습니다. 배포, API 키 및 중요한 결정에 대해서는 인간의 감독이 필요합니다.
논문 및 출처 (Papers and sources)
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub Codex tools의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기