제II부
매일 사용하는 다섯 개의 탭 — Fleet, Incidents, Operations, AI, 그리고 그 밖의 모든 것을 모은 More.
제5장
앱 사용하기: Fleet, Incidents, Operations 및 AI
휴대폰을 페어링하고 나면 앱은 안전한 장애 대응 도우미이자 데스크톱용 원격 제어 도구가 됩니다. 이 장에서는 다섯 개의 탭을 차례로 살펴보며 각 탭이 무엇을 보여 주는지, 오프라인에서도 무엇이 동작하는지, 무엇을 할 수 있는지 설명합니다.
라이선스가 있는 컴패니언 앱에는 Fleet, Incidents, Operations, AI, More의 다섯 탭이 있습니다. 최신 관찰 결과와 제어 기능 대부분은 서명된 페어링을 통해 Mac에서 오며, 휴대폰에서 직접 수행하는 제한된 확인, 등록된 헬퍼의 관찰, Direct SSH는 명확히 구분됩니다. Shell은 이제 More 아래에 있어, 인시던트 분류가 한 번의 탭 거리에 있습니다.
모든 탭에 공통되는 두 가지 원칙이 있습니다. 첫째, 관찰 출처는 서로 구분됩니다. 캐시된 Mac 데이터는 경과 시간을 표시하고, 휴대폰이 지금 수행한 확인은 전체 서비스 상태인 척하지 않습니다. 둘째, 허용된 작업은 이 기기의 권한 수준에 따라 달라지며, 권한 수준은 Mac에서 설정합니다. 그리고 가장 강력한 기능(원시 셸, Direct SSH, AI에 변경 허용)에는 추가 권한이 필요하며, 해당 부분에서 설명합니다.
5.1Fleet — 서버와 기기
Fleet 탭은 홈 화면입니다. 맨 위의 Phone & Fleet은 서로 독립된 두 가지 사실을 구분해 보여 줍니다. 이 휴대폰이 Mac에 닿기 위해 사용 중인 경로와, Mac이 현재 모니터링과 기기의 범위를 정하는 데 사용하는 Fleet 사이트입니다. 그 아래에는 서버와 고정된 기기의 두 그룹이 있습니다.
Servers 섹션에는 고정된 모든 서버가 나열됩니다. 로컬 Mac은 단지 첫 번째 행일 뿐이므로 다른 서버와 똑같이 다룰 수 있습니다. 각 행에는 상태 점이 있습니다.
| 점 | 의미 |
|---|---|
| 녹색 | 정상 — 접근 가능하고 건강합니다. |
| 주황색 삼각형 | 저하됨 — 접근은 가능하지만 주의가 필요한 부분이 있습니다. |
| 빨간색 | 다운 — 현재 Mac이 접근할 수 없습니다. |
| 속이 빈 점 | 알 수 없음 — 아직 확인하지 않았습니다. |
서버를 탭하면 해당 서버가 열립니다. 세부 화면에서는 데스크톱과 같은 호스트 수준의 제어를 사용할 수 있습니다.
- Check server reachability — 저장된 SSH 포트와, FrontierStack이 이미 감지한 서비스에서 추정되는 표준 포트 최대 8개에 이 휴대폰에서 직접 접속합니다. 연결이 되면 접근 가능성은 증명되지만 서비스 상태 전체가 증명되는 것은 아닙니다.
- Services — 감지된 각 서비스를 시작, 중지, 재시작 또는 다시 로드합니다.
- 원격 Unix 또는 Windows 서버의 Reboot, Run Diagnostics(“지금 무엇이 문제인지”를 쉬운 말로 설명), View Logs. Reboot는 서버나 등록된 모니터가 요청을 수락한 뒤에만 성공으로 보고합니다.
- 내장 브라우저에서 여는 Open Web UI와 Open Shell(이 서버에 연결된 셸로 이동).
- Remote Tools — ping, traceroute, 수신 대기 포트, 웹 확인, 로그 tail을 서버 자체에서 실행합니다.
- Terminal Sessions — tmux, GNU screen, Zellij 세션을 내용을 읽지 않고 나열합니다. Direct SSH로 연결하거나, 확인 후 세션 하나를 종료할 수 있습니다.
- Fleet Run — 모든 서버에 걸쳐 대기 중인 재부팅, 디스크 사용량, 가동 시간/부하를 읽기 전용으로 확인합니다(아래 More 참조).
- Full status details — OS, 가동 시간, CPU, 메모리, 보고된 모든 주소, 서비스 상태, SSH 신원 근거를 하나의 진단 화면에 표시합니다.
- Performance & history — 현재 CPU, 메모리, 디스크, 온도, 부하, 가동 시간과 함께, 헬퍼가 기록한 6시간~1주일의 기록, 학습된 기준선 평가, 재부팅 표시, 워치독 이벤트를 보여 줍니다.
- Database Emergency & Power Prep — SSH를 사용할 수 없을 때 데이터베이스 프로토콜을 사용하는 단계별 데이터베이스 작업으로, 재부팅이나 강제 전원 차단 전의 정상 종료도 포함합니다.
5.6.1Performance & history
휴대폰은 현재 성능과 Behaviour & History를 하나로 합쳐 보여 줍니다. 당직 중에는 둘 다 “이 머신이 정상적으로 동작하고 있는가?”라는 하나의 질문에 답하기 때문입니다. 6시간, 1일, 3일, 1주일 중에서 기간을 선택하십시오. CPU, 메모리, 디스크 추이는 백분율 눈금을 사용하고, 사용 가능한 온도 기록은 도 단위 눈금이 있는 별도 그래프에 표시됩니다. FrontierStack은 기준선을 아직 학습 중인지, 이 서버로서는 정상 동작인지, 아니면 특정한 이상 변화를 보고하는지를 보여 줍니다. 재부팅과 워치독 인시던트도 같은 타임라인에 표시되므로 급증의 맥락을 알 수 있습니다.
5.6.2Database Emergency & Power Prep
데이터베이스 연결 풀이 고갈되면 SSH도 동시에 실패할 수 있습니다. 그래서 긴급 작업은 Mac이 데이터베이스 자체의 클라이언트 프로토콜과 포트로 데이터베이스에 접속하도록 요청합니다. 단계는 멈춘 연결 종료에서 시작해 쓰기 중지와 플러시를 거쳐 데이터베이스 정상 종료로 진행합니다. 정상 종료는 더 안전한 재부팅이나 전원 차단을 위해 서버를 준비합니다. 데이터베이스 중지에는 항상 확인이 필요합니다.
서버 아래에는 기기가 종류별로 접을 수 있는 섹션에 표시됩니다. Power & Recovery에는 알려진 모든 스마트 플러그, 관리형 콘센트, UPS 및 기타 전원 재투입 기기가 데스크톱에 고정되어 있지 않더라도 포함됩니다. 강제 전원 재투입은 정확한 확인으로 보호됩니다. 스마트 재부팅은 먼저 서버의 정상 종료를 요청합니다. FrontierStack이 안전한 콘센트 작업을 식별할 수 없는 UPS 항목은 상태 표시 전용으로 남습니다.
5.2Incidents — 알림 분류
Incidents 탭은 알림 수신함입니다. 열림, 다시 알림, 해결됨 또는 모든 인시던트로 필터링하고, 확인, 다시 알림, 해결 또는 다시 열기를 하고, 담당자와 메모를 추가할 수 있습니다. 반복되는 이벤트는 목록을 뒤덮는 대신 발생 횟수와 함께 하나로 합쳐집니다. 설정에서는 알림을 보낼 수 있는 알림 범주를 선택하고, 로컬 기기 테스트와 Mac→릴레이→APNs 종단 간 테스트를 모두 실행할 수 있습니다.
5.3Operations — Mac의 상태와 복구 근거
Operations 탭은 실시간 연결 상태와 새로 고침 버튼으로 시작하며, 단순히 서비스를 나열하는 것이 아니라 Mac의 운영 요약을 모아 보여 줍니다. Overview에는 서버 수, 앱 잠금 상태, MCP 상태, 미해결 문제, 그리고 현재 원격 변경이 승인되어 있는지가 표시됩니다. Restore readiness는 최근의 제한된 복원 확인, 암호화된 복구 사본의 근거, 대표 워크로드 리허설 결과를 백업 경로, 내용, 계정, 자격 증명을 노출하지 않고 보여 줍니다.
FrontierStack에 근거가 있으면 Likely upstream causes는 먼저 조사할 가치가 있는 확인된 종속 항목을 가리키고, Server behaviour는 로컬 기록에서 학습한, 개인정보를 줄인 이상 징후를 보고합니다. 데스크톱 모니터 섹션은 휴대폰에 세부 제어 기능이 없더라도 중요한 데스크톱 모니터를 모두 모바일 상태 점으로 보여 줍니다. 마지막 Services 섹션에는 Mac에서 제어할 수 있는 로컬 서비스가 표시됩니다.
이 앱은 Mac의 사이드바와 독립적입니다. 데스크톱을 깔끔하게 유지하려고 사이드바에서 숨긴 항목도 휴대폰에서는 접근할 수 있습니다. 휴대폰의 어떤 조작도 Mac의 사이드바 표시를 바꾸지 않으며, 외관상의 데스크톱 환경설정이 인시던트 중에 운영 항목을 숨길 수는 없습니다.
5.4More → Shell — 실제 명령줄
More → Shell은 Mac 또는 연결된 서버의 명령줄을 엽니다. 상단 막대에서 대상을 선택한 다음 명령을 입력하고 출력을 확인하십시오. 서버에는 Mac에 저장된 자격 증명으로 로그인합니다. 이 자격 증명은 어느 것도 휴대폰으로 전송되지 않습니다.
More → Scripts에는 Mac에서 동기화된 저장된 스크립트와 내장 유지 관리 프리셋이 있습니다. 하나를 탭해 실행하고 출력이 실시간으로 표시되는 것을 확인하십시오.
Direct SSH — Mac이 오프라인일 때. 위의 셸은 Mac을 경유합니다. 서버 페이지에서 (Mac이 온라인일 때) Enable direct SSH를 탭해 이 기기 고유의 SSH 키를 해당 서버에 설치할 수도 있습니다. 그 후에는 서버의 네트워크에 닿을 수 있는 한(같은 Wi-Fi 또는 Tailscale 경유), Mac이 오프라인이거나 다른 네트워크에 있더라도 SSH (direct)가 휴대폰에서 서버로 직접 실제 터미널을 엽니다. 휴대폰의 SSH 키는 휴대폰에서 생성되어 휴대폰을 벗어나지 않으며, Mac 자체의 키와 암호는 휴대폰으로 복사되지 않습니다. 기기를 폐기하거나 페어링을 해제하면 서버에서 해당 기기의 키가 제거됩니다.
cd가 유지됩니다). 일반 명령과 스크립트를 실행할 수 있지만, top이나 vim 같은 전체 화면 터미널 프로그램은 지원되지 않습니다.5.5AI — 관리자와 대화
AI 탭은 Mac에서 실행되는 것과 같은 AI 관리자와의 여러 차례에 걸친 대화입니다. 서버, 서비스, 기기에 대해 일상적인 말로 질문하십시오. 작업하는 동안 실행하는 도구와 그 결과를 대화 안에 표시하므로 어떻게 답에 도달했는지 확인할 수 있습니다.
현재 AI 대화는 Mac을 기반으로 합니다. Mac에 접근할 수 없으면 캐시된 상태와 직접 확인은 앱의 다른 곳에서 계속 사용할 수 있지만, 휴대폰이 인프라 스냅숏이나 자격 증명을 별도의 AI 서비스로 보내지는 않으며, 오프라인 답변을 실시간인 것처럼 꾸미지도 않습니다.
기본적으로 어시스턴트는 읽기 전용입니다 — 볼 수는 있지만 변경할 수는 없습니다. 오른쪽 위의 “Allow changes”를 켜면 서비스 재시작, DNS 플러시 등의 작업을 할 수 있게 됩니다. 대화 기록 — 비밀 값이 포함될 수 있는 도구 결과도 포함 — 은 Mac에 남고, 휴대폰에는 렌더링된 답변만 표시됩니다. 여기서 AI가 하는 모든 작업은 여전히 Mac에서 실행되며 데스크톱과 같은 보호 장치를 따릅니다. 휴대폰에서의 채팅은 Mac의 Allow AI Administrator 스위치로 기기별로 완전히 끌 수 있으며, 항상 앱 잠금 해제와 이 기기의 서명이 필요합니다. 휴대폰에서 나눈 대화는 Mac의 AI 관리자 기록에 저장되므로 Mac에서 이어서 계속할 수 있습니다.
각 답변 왼쪽의 녹색 방패는 답변이 보호되었음을 뜻합니다. 무엇이든 AI 모델로 Mac을 떠나기 전에 FrontierStack이 도구 결과에서 비밀 값(키, 토큰, 암호)을 제거했다는 의미입니다 — 방패를 탭하면 그 의미를 읽을 수 있습니다. 질문과 답변 모두 선택하고 복사할 수 있으므로(길게 누르거나 Copy 동작 사용) 답변을 다른 곳에 붙여넣을 수 있습니다. 그리고 서버를 선택한 상태에서는 어시스턴트가 그 머신에 대해 답합니다 — 질의는 여전히 Mac에서 실행되지만, “가동한 지 얼마나 됐어?”나 “무엇이 수신 대기 중이야?” 같은 질문은 Mac이 아니라 선택한 기기를 대상으로 합니다.
5.6More — 대응, 실행, 접근
More 탭에는 별도의 탭이 필요 없는 모든 기능이 모여 있습니다.
5.6.3Agent Activity
Agent Activity는 페어링된 Mac이 알고 있는 작업을 휴대폰에서 상태만 보여 주는 화면입니다. 실행 중인 코딩 에이전트 프로세스, FrontierStack 세션과 작업, 구성된 런타임, 감지된 작업자 머신을 Needs You, Running, Recently Finished, Ready로 묶어 보여 줍니다. 호스트가 있는 항목을 탭하면 해당 호스트의 지속 터미널 세션을 확인할 수 있습니다.
5.6.4Remote Helpers
Remote Helpers는 등록된 헬퍼 에이전트를 휴대폰에서 직접 확인합니다. LAN, Tailscale IP, .ts.net MagicDNS 이름 및 기타 저장된 사설 경로를 함께 시도하고, 헬퍼의 고정된 인증서만 받아들이며, 성공한 경로를 표시합니다. 헬퍼를 열면 CPU, 메모리, 온도, 전원, 가동 시간, 디스크, 방화벽, fail2ban, 서비스, 최근 이벤트를 볼 수 있습니다. Mac은 동기화 중에 이 휴대폰의 관찰자 키를 프로비저닝하며, 이후의 읽기는 데스크톱 앱이 오프라인일 때도 동작합니다. 헬퍼 직접 접근은 상태 표시 전용이며 작업을 실행할 수 없습니다.
5.6.5전원 및 복구
이 화면은 스마트 플러그, 관리형 콘센트, UPS 장치 및 기타 알려진 복구 기기를 한곳에 모아 보여 줍니다. 가능한 경우 온도와 전원 데이터를 표시하고, 안전한 스마트 재부팅과 콘센트 강제 전원 순환을 구분하며, 안전하게 제어할 수 있는 대상이 확인되지 않은 UPS에는 전원 순환을 제공하지 않습니다.
전원 행에서 설정을 열면 데스크톱에 저장된 복구 정책을 편집할 수 있습니다. 관리형 콘센트의 연결된 호스트 확인, 자동 전원 순환 및 꺼짐 시간, SwitchBot 플러그의 순환 지연과 자동 고정, UPS 장치의 알림 임계값을 설정합니다. Mac에 저장을 누르면 변경 사항이 저장되고 페어링된 모든 기기로 다시 동기화됩니다. 자격 증명과 원시 스위치 명령 URL은 라이선스가 있는 Mac에만 남습니다.
5.6.6큐 운영
큐 운영은 Mac의 읽기 전용 큐 대시보드를 그대로 보여 줍니다. 당겨서 새로 고치면 RabbitMQ, Kafka, NATS/JetStream, Redpanda, AWS SQS, Azure Service Bus, Google Pub/Sub, Celery, Redis Streams, Pulsar, RocketMQ의 상태를 갱신합니다. 메시지 본문을 내려받지 않고 백로그, 컨슈머, 지연(lag), 데드레터 합계를 표시합니다. 자격 증명과 임계값은 Mac에서 구성하십시오. 휴대폰은 서명되고 정제된 상태 요약만 받습니다.
5.6.7대기 중인 작업
Mac이 오프라인이면 해당되는 서비스 메뉴에 시작 대기열 추가, 중지 대기열 추가, 재시작 대기열 추가 또는 다시 로드 대기열 추가가 표시됩니다. 요청은 이 휴대폰에 보관되며 자동으로 실행되지 않습니다. 더 보기 → 대기 중인 작업을 열어 정확한 대상과 만료 시간을 확인하고, 더 이상 원하지 않는 항목은 밀어서 취소한 다음, Mac이 돌아온 후 남은 작업을 명시적으로 전송하십시오. 각 요청은 4시간 후에 만료되며, Mac은 한 번 실행하기 전에 서명, 권한, 앱 잠금을 다시 확인합니다.
5.6.8홈 화면 및 잠금 화면 위젯
FrontierStack은 홈 화면 크기로 개요 위젯, 다중 서버 위젯, 다중 서비스 위젯, 서비스 포커스 위젯을 제공합니다. 서비스 포커스는 중지된 서비스를 자동으로 먼저 표시하며, 주의가 필요한 서비스가 없으면 실행 중인 서비스를 표시합니다. 개요 위젯은 잠금 화면의 원형, 직사각형, 인라인 위치도 지원합니다. 위젯은 컴패니언 앱이 새로운 운영 스냅샷을 받을 때마다 갱신되며, 주기적으로 WidgetKit에 가장 최근에 저장된 보기를 요청합니다.
5.6.9검사 — 워치독과 유지 보수 일시 정지
검사는 Mac의 서비스 가디언을 관리하는 화면입니다. 보호 중인 모든 서비스, 각 서비스의 정상 여부, Keep Alive 또는 Auto Recover가 켜져 있는 서비스를 보여 줍니다. 데스크톱 매뉴얼 11장에서 설명하는 패널을 휴대폰에서 보는 화면입니다.
유용한 기능은 일시 정지입니다. 기기에서 작업하기 전에 모든 검사 — 또는 서비스 하나만 — 를 15분에서 하루까지 일시 정지하십시오. 일시 정지 중에는 Mac이 해당 서비스의 상태 확인과 재시작을 멈추므로, 유지 보수 작업이 워치독과 충돌하거나 알림을 발생시키지 않습니다.
디스크 복구는 자동으로 보호됩니다. 디스크 유틸리티의 응급 처치나 파일 시스템 복구 도구가 실행 중이면 설정을 바꾸지 않은 채 자동 복구가 일시 정지됩니다. 유지 보수 시간 초과 카운터는 초기화되고, 복구가 끝난 후 60초를 기다린 다음 새로 시작합니다. 검사 화면에 이 안전 보류 상태가 표시됩니다.
5.6.10휴대폰 연결 및 플릿 사이트
플릿 탭은 이 부분을 간결하게 유지합니다. 휴대폰 및 플릿 행 하나에 활성 플릿 사이트가 표시되며, 누르면 자세한 휴대폰 및 플릿 사이트 화면이 열립니다. 이 화면은 예전의 “위치” 레이블로는 하나처럼 보일 수 있었던 세 가지를 구분합니다. 이 iPhone이 Mac에 연결되는 방식, 이동하는 Mac의 현재 네트워크로부터 추론된 플릿 사이트, 그리고 현재 모니터링과 기기의 범위를 정하는 데 사용되는 플릿 사이트입니다. 휴대폰의 물리적 위치와 네트워크는 플릿 사이트를 선택하지 않습니다.
감지된 플릿 사이트 따르기를 선택하면 플릿 컨텍스트가 Mac이 현재 사용 중인 네트워크를 따릅니다. 다른 사이트의 컨텍스트를 의도적으로 보거나 운영하려면 해당 플릿 사이트를 고정하십시오. 고정해도 휴대폰에서 Mac으로 가는 경로는 바뀌지 않으며 원격 사설 네트워크에 접근할 수 있게 되지도 않습니다. 해당 사이트의 기기를 열려면 여전히 Tailscale이나 VPN 같은 기존 경로가 필요합니다.
5.6.11플릿 실행, 공유 및 웹 UI
플릿 실행은 대기 중인 재부팅, 디스크 사용량, 가동 시간/부하에 대해 검토를 거친 플릿 전체 읽기 전용 검사를 제공하고 호스트별 결과를 표시합니다. 패키지 업데이트, Git pull, 서비스 재시작, 설치, 사용자 지정 명령은 Mac의 단계별 운영자 검토 흐름에 그대로 남습니다. 공유에는 Mac이 연 임시 Debug Share 목록이 표시되며, 이를 열거나 중지할 수 있습니다. 새로 열려면 전체 제어 권한과 Mac의 외부 변경 정책이 필요합니다. 웹 UI 및 북마크는 라우터, NAS, 카메라의 관리 페이지와 휴대폰에 북마크한 주소를 엽니다. 로컬 자체 서명 사이트는 지문을 명시적으로 신뢰해야 하며, 공개 사이트는 일반적으로 신뢰되는 HTTPS가 필요합니다.
5.6.12네트워크 검사 및 기기 검색
페어링이나 데스크톱 라이선스 없이 쓸 수 있는 유일한 기능입니다. 휴대폰의 현재 네트워크 경로와 로컬 주소를 표시하고, Tailscale 호환 사설 주소를 인식하며, 일반적인 Bonjour 서비스를 알리는 주변 기기를 검색하고, 입력한 호스트에서 정해진 일반 포트 목록을 검사합니다. 결과는 휴대폰에만 남으며 저장되지 않습니다.
5.6.13휴대폰에서 보는 매뉴얼
더 보기 → 매뉴얼을 누르면 앱 번들에 포함된 이 책이 열립니다. Mac이나 네트워크 연결 없이도 작동하며, 검색은 휴대폰에서 실행됩니다. 매뉴얼은 페어링 화면에서도 열 수 있으므로, 연결 자체의 문제를 해결해야 할 때 유용합니다.
마지막으로, 더 보기에는 설정과 도움말이 있습니다 — 다음 장에서 다룹니다.
FrontierStack 사용자 설명서 · 버전 1.0.0 · 제5장