Skip to content

멀티 머신 관리 ​

클라우드와 셀프호스트

계정에 연결된 멀티 머신 관리(자신의 네트워크 밖의 머신 포함)는 Cloud 버전에서 제공됩니다. 셀프호스트 버전도 서로 직접 닿을 수 있는 여러 머신(같은 네트워크 또는 Tailscale)을 계정 없이 묶을 수 있습니다 — 아래 "계정 없이 머신 페어링 (셀프호스트)"를 참고하세요.

ADHDev Cloud를 사용하면 하나의 계정으로 단일 대시보드에서 여러 개발 머신을 관리할 수 있습니다.

제공되는 것 ​

  • 노트북, 데스크탑, 업무용 머신 또는 원격 서버를 위한 단일 대시보드
  • IDE, CLI 워크플로우에 걸친 머신 인식 세션 가시성
  • 실행 컨트롤, 프로바이더 설정, 로그, 세션-호스트 복구가 있는 머신 상세 페이지
  • 로컬 네트워크 외부에서의 클라우드 접근

이것은 클라우드와 셀프호스트의 가장 명확한 차이 중 하나입니다. 클라우드는 계정 연결 제어 플레인입니다. 셀프호스트는 호스트 머신의 로컬 대시보드이며, 서로 닿을 수 있는 네트워크의 페어링된 머신을 받아들일 수 있습니다.

작동 방식 ​

각 머신은 동일한 클라우드 계정에 인증된 자체 ADHDev 데몬을 실행합니다:

bash
npm install -g adhdev
adhdev setup
adhdev daemon

동일한 계정 아래 머신이 연결되면 대시보드에 함께 표시됩니다.

Repo Mesh (데몬 간 오케스트레이션) ​

Repo Mesh는 동일 계정의 여러 데몬을 코디네이션하여 하나의 코디네이터 세션이 여러 머신 또는 git 워크트리에 걸쳐 작업을 구동할 수 있게 합니다. node-datachannel을 통한 직접 데몬 간 P2P DataChannel로 실행되며, 클라우드 서버 WebSocket은 SDP offer/answer/ICE 시그널링만 릴레이하고 두 데몬이 동일한 계정에 속하는 것을 인증합니다. 이것은 데몬 조율입니다 — 대시보드 명령 폴백이 아닙니다. 대시보드 명령/데이터 트래픽은 여전히 대시보드↔데몬 P2P 채널만 사용합니다.

클라우드 대시보드는 Repo Mesh 페이지(/mesh)에서 Mesh를 표시합니다.

핵심 개념:

  • Node — Mesh에 참여하는 워크스페이스: 에이전트가 실행할 수 있는 레포 체크아웃 또는 격리된 git 워크트리.
  • Mission — 향해 작업하는 태스크를 그룹화하고 내구적 레코드로 유지되는 목표.
  • Task — 노드의 에이전트가 수행하는 작업 단위로, pending → assigned → completed/failed를 통해 이동.
  • Queue — 유휴 노드가 자율적으로 클레임하는 대기 태스크의 데몬 로컬 목록. 큐는 로컬 우선이고 권위가 있습니다; Cloud/D1은 가벼운 멤버십/시그널링 메타데이터만 보유합니다.
  • Ledger — 노드 전체에서 이미 일어난 일의 추가 전용 Mesh 감사 로그 (히스토리, 할 일 목록 아님). 경계 있는 P2P 원장 슬라이스로 데몬 간에 조정됩니다.
  • Refinery — 워크트리 브랜치를 베이스로 수렴하는 프로세스: 검증 → 머지 → 푸시 → 정리.

코디네이터 데몬이 집계 mesh_status 스냅샷을 소유합니다. 워커 세션은 코디네이터가 디스패치하며 기본적으로 자동 승인됩니다. 완료는 LLM 자체 보고가 아닌 증거 기반(git 상태/체크포인트, 원장 이벤트)입니다. Repo Mesh 도구는 Mesh 모드의 MCP 서버를 통해 코디네이터 세션에 노출됩니다 — MCP 서버를 참고하세요.

풀 그림 — 풀 기반 오케스트레이션, 워크트리 격리 레포 협업, Refinery 수렴, 교차 검증 — 은 전용 Repo Mesh 가이드를 참고하세요.

Machines ​

Machines 페이지는 머신 수준 개요입니다. 다음을 빠르게 볼 수 있는 곳입니다:

  • 어떤 머신이 온라인인지
  • 세션이 어떤 머신에 속하는지
  • 연결 및 런타임 상태
  • 상세히 열고 싶은 머신

머신 상세 ​

머신을 열면 메인 대시보드보다 더 운영적인 뷰를 제공합니다:

  • 현재 IDE, CLI 세션을 위한 Workspace
  • 호스팅 CLI 런타임 진단 및 복구를 위한 Hosted Runtimes
  • 머신/프로바이더 설정을 위한 Providers
  • 머신 상태를 위한 System
  • 런타임 및 데몬 로그를 위한 Logs

높은 수준의 대시보드가 문제를 알려주지만 머신별 컨텍스트가 필요할 때 사용하는 페이지입니다.

일반적인 사용 사례 ​

멀티 머신 클라우드 설정은 특히 다음과 같은 경우에 유용합니다:

  • 한 머신은 백그라운드 에이전트 작업에 유지
  • 개인 및 업무 장치 분리
  • 다른 곳에서 실행 중인 세션에 대한 모바일 승인 원할 때
  • 물리적으로 사용하지 않는 머신의 CLI 런타임 복구 필요

플랜 제한 ​

플랜최대 머신
Free1
Pro2
Ultra5
Enterprise무제한

머신 제한에 도달하면 하나를 제거하거나 업그레이드할 때까지 추가 머신 등록이 거부됩니다.

셀프호스트 차이점 ​

셀프호스트는 머신들을 계정 연결 호스팅 대시보드로 통합하지 않습니다.

로컬 전용 대시보드(원하면 서로 닿을 수 있는 네트워크의 페어링된 머신 포함)를 원할 때 셀프호스트를 사용하세요. 여러 장치와 네트워크에 걸친 계정 연결 머신 가시성을 원할 때 클라우드를 사용하세요.

계정 없이 머신 페어링 (셀프호스트) ​

1.0.76부터(1.0.77에서 끝까지 동작하도록 수정) 무료 스탠드얼론 데몬이 여러 머신에 걸쳐 동작할 수 있습니다. 서로 직접 닿을 수 있는 머신(같은 네트워크 또는 Tailscale)은 메시 화면에서 주소와 일회용 코드로 페어링합니다. 호스트 머신이 다른 머신에 작업을 넘기고 그 세션을 보여 줍니다. 클라우드 계정이 필요 없습니다.

  1. 다른 머신이 닿을 수 있는 주소로 호스트를 시작합니다. 기본값은 127.0.0.1(이 머신 전용)이라 다른 머신이 연결할 수 없습니다. adhdev standalone --host 0.0.0.0 --token <some-secret>을 쓰거나 LAN 또는 Tailscale IP로 바인딩하세요. 데몬이 루프백 전용이면 페어링 카드가 --host 0.0.0.0(또는 LAN/Tailscale IP)으로 다시 시작하라는 경고를 보여 줍니다.
  2. 호스트에서 코드를 만듭니다. 메시 화면의 다른 머신 연결 카드에서 호스트 탭을 선택하고 연결 코드 만들기를 누릅니다. 카드에 주소(이 머신의 LAN 또는 Tailscale IP와 포트, 기본 3847)와 코드가 표시됩니다. 코드는 한 번만 표시되고 만료 시각이 있으며 복사로 복사할 수 있습니다.
  3. 다른 머신에서 참가합니다. 그 머신에서 같은 저장소의 메시를 만들거나 열고, 메시 화면의 같은 카드에서 멤버 탭을 연 뒤 호스트 주소를 호스트:포트(예: 100.64.0.2:3847)로, 그리고 코드를 입력하고 연결을 누릅니다. 카드에 페어링 완료가 표시되고, 연결이 올라올 때까지 연결 대기 중이 보입니다.
  4. 호스트에서 관리합니다. 페어링된 머신은 호스트 탭의 연결된 머신에 나열되며, 연결 해제로 제거할 수 있습니다.

페어링하면 비서도 다른 머신에 호스팅된 프로젝트로 요청을 전달하고 결과를 자기 채팅으로 가져올 수 있습니다.

보안

메시 피어는 대시보드 토큰을 쓰지 않습니다. 각 머신은 /ws/mesh에서 자신의 페어링 시크릿으로 인증합니다(HMAC 핸드셰이크). 대시보드 토큰이나 비밀번호 없이 0.0.0.0에 바인딩하면 그 네트워크의 누구나 대시보드에 접근할 수 있으며, 서버가 시작할 때 경고를 출력합니다. 자세한 내용은 Standalone을 참고하세요.

클라우드 전용으로 남는 것:

  • 자신의 네트워크 밖에 있는 머신에 접근하기 (클라우드 P2P와 TURN)
  • 푸시 알림
  • 호스팅 REST API와 API 키
  • 머신 간 프로젝트 파일 전송 (스탠드얼론은 WebRTC 파일 링크를 열 수 없음)

머신 이름 지정 ​

하나 이상의 박스가 연결되면 친근한 머신 이름이 중요해집니다.

머신 닉네임은 대시보드 전체에 나타나며 세션이 실제로 실행 중인 위치를 명확히 구분하는 데 도움이 됩니다.

다음 단계 ​

호스팅 클라우드 문서는 여기에 있습니다. 오픈소스 및 셀프호스트 문서는 OSS 레포지토리에 있습니다.