프로젝트 소개

Loom은 AI 개발 환경(ADE) 간의 얇은 조정 계층을 제공합니다. 또 다른 IDE가 아니라, 이들이 기본적으로 부재하는 연속성과 메모리 계층입니다. 각 에이전트의 네이티브 메모리 파일(CLAUDE.md, AGENTS.md, .antigravity/ 등)을 통합된 "공유 두뇌"로 가져와 핸드오프 간에 흐르게 하여, Claude Code, OpenCode, Codex, Antigravity, Grok Code, Kiro 간 전환 시 컨텍스트가 유지됩니다. 주요 기능: - **공유 메모리**: 모든 ADE에 걸친 하나의 두뇌; 결정, 가져온 메모리, 대화 스레드가 핸드오프 시 각 에이전트에 투영됩니다. - **배턴 핸드오프**: 정확히 하나의 에이전트가 한 번에 작업하며, 배턴을 넘기면 전체 컨텍스트(인터럽트 안전, 메모리 투영, 브리핑 준비)가 전달됩니다. - **라우트**: `loom route ship` 또는 동적 LLM 라우팅 `loom route auto`를 통한 자동화된 다중 홉 파이프라인(계획 → 실행 → 검토). - **오케스트라**: 병렬 작업 실행 — 오케스트레이터 에이전트가 목표를 작업 그래프로 분할하고, 준비된 작업을 작업자 에이전트(혼합 유형, --parallel로 제한)에서 동시에 실행하며, 통합 브랜치로 병합한 후 적용 전에 인간 검토를 요청합니다. - **관측 가능성**: 전체 OpenTelemetry(트레이스, 메트릭, 로그)가 OTLP/HTTP를 통해 모든 수집기(Grafana, Jaeger, SigNoz, Honeycomb)로 내보내집니다. 앱 내 Observatory는 실시간 플릿 캔버스, 번 레이트, 스팬 재생, 결정 탐색기, 타임트래블 재생, 텔레메트리에 대한 자연어 쿼리를 렌더링합니다. Alertmanager 웹훅을 통한 자가 치유로 비정상 에이전트를 로테이션에서 제거합니다. - **다중 표면**: TUI/CLI(`loom`), 데스크톱 앱(macOS/Linux/Windows), 폰 앱(음성 지원 LoomPad), 웹 앱 — 모두 Tailnet을 통해 동일한 로컬 데몬의 페어링된 클라이언트입니다. - **GitHub 및 Linear 네이티브**: PR, 이슈, 프로젝트 보드 탐색; PR 검토/승인; 작업에서 워크트리 열기; Linear 이슈 제출 — 모두 `gh` CLI와 `LINEAR_API_KEY`를 통해(Loom은 토큰을 저장하지 않음). - **브라우저 탭**: 앱 내에서 Playwright 스펙을 실행하고, 리포터 출력을 스트리밍하며, 실패 텍스트를 수정 에이전트의 컴포저로 다시 전달합니다. - **하위 에이전트, 재시도, 수확**: 하위 작업을 자식 에이전트에게 분산(배턴을 절대 보유하지 않음), 실패한 턴을 다른 에이전트에서 실패 브리핑과 함께 재시도, 중단된 세션 수확. - **에이전트 유형당 여러 세션**: `claude-code`를 두 번 추가 → 자체 컨텍스트 창을 가지지만 동일한 프로젝트 두뇌를 공유하는 `claude-code-2`; 역할은 자유 텍스트입니다. - **로컬 우선, MIT 라이선스**: 단일 `npm i -g @loompad/cli`, 서버에서 헤드리스로 실행, 계정 불필요. Node ≥ 22.5 필요.