Root CLI 서브커맨드

jaw 바이너리는 26개의 루트 라우터 케이스와 chat search, browser web-ai, dashboard memory/chat search, connector board, reminders, project, goal, task, lock 같은 그룹형 표면을 제공합니다. 이 명령들은 터미널에서 직접 실행되며, 다른 커맨드 페이지에서 설명하는 채팅 내 슬래시 커맨드와는 별개입니다.

글로벌 플래그: 모든 서브커맨드는 --help / -h 플래그로 개별 도움말을 확인할 수 있습니다. 서브커맨드 앞에 --home <path>를 사용하면 다른 데이터 디렉토리를 지정할 수 있습니다 (기본값: ~/.cli-jaw). 대부분의 명령에서 --json 플래그를 통해 기계 판독 가능한 JSON 출력을 사용할 수 있습니다.
jaw <command> [args] [--flags]
jaw --home <path> <command>
jaw --version
jaw --help

현재 루트 표면

jaw serve | init | doctor | status | reset
jaw chat | chat search | dispatch | dispatch --watch | employee | worker
jaw orchestrate | goal | task | project | lock | unlock | history
jaw memory | dashboard memory | dashboard chat search
jaw browser | browser web-ai | skill | mcp
jaw connector board | reminders
jaw launchd | service | clone

목차

Server & Dashboard

jaw serve

Server

CLI-JAW 서버를 포그라운드에서 시작합니다. chat, dispatch, browser 및 대부분의 다른 명령이 작동하려면 서버가 먼저 실행 중이어야 합니다.

jaw serve [--port <N>] [--no-open] [--lan] [--remote]
옵션기본값설명
--port <N>3457서버 포트 (PORT 환경변수도 인식)
--no-open-시작 시 브라우저 자동 열기 비활성화
--host <addr>0.0.0.0바인드 주소
--lanfalseLAN 접근 모드 활성화
--remotefalse원격 접근 모드 활성화 (직접 연결)
--trust-proxyfalse프록시 헤더 신뢰 (리버스 프록시용)
--trust-forwardedfalseX-Forwarded-For 헤더 신뢰

예제

# 기본값으로 시작 (포트 3457, 브라우저 자동 열기)
jaw serve

# 커스텀 포트, 브라우저 열기 비활성화
jaw serve --port 3458 --no-open

# 로컬 네트워크 접근을 위한 LAN 모드
jaw serve --lan --port 3460

# 별도의 데이터 디렉토리 사용
jaw --home ~/.cli-jaw-work serve --port 3458
~해줘 Tip: "서버 시작해줘" -- 에이전트는 jaw serve를 대신 실행할 수 없습니다 (포그라운드 프로세스가 필요하기 때문). 수동으로 실행하거나 jaw service install을 사용하여 백그라운드 자동 시작을 설정하세요.

jaw dashboard

Server

멀티 인스턴스 관리자입니다. 대시보드 서버를 시작하고, 인스턴스를 조회/시작/중지하며, 영구 서비스를 관리하고, L2 크로스 인스턴스 메모리 페더레이션 검색을 수행합니다.

jaw dashboard <command> [options] [--json]
서브커맨드설명
serve [--port] [--from] [--count] [--no-open]대시보드 서버 시작 (기본 포트 24576, 3457부터 스캔)
status대시보드 상태 확인
ls발견된 모든 인스턴스 목록 조회
start <port> [--home]지정 포트에서 인스턴스 시작
stop <port>인스턴스 정상 종료
restart <port>인스턴스 재시작
perm <port> [--home]인스턴스를 영구 서비스로 등록
unperm <port>영구 서비스 등록 해제
service [install|status|unset]대시보드 자동 시작 관리
memory <search|read|instances>L2 크로스 인스턴스 메모리 페더레이션 (읽기 전용)
옵션기본값설명
--port <N>24576대시보드 포트 (DASHBOARD_PORT 환경변수도 인식)
--from <N>3457이 포트부터 인스턴스 스캔 시작
--count <N>50스캔할 포트 수
--no-open-브라우저 자동 열기 비활성화
--json-기계 판독 가능한 JSON 출력
--home <path>-start/perm 서브커맨드용 데이터 디렉토리

예제

# 대시보드 시작
jaw dashboard serve

# 온라인 인스턴스를 JSON으로 조회
jaw dashboard ls --json | jq '.[] | select(.status == "online")'

# 포트 3458에 새 인스턴스 시작
jaw dashboard start 3458 --home ~/.jaw-work

# 인스턴스 중지
jaw dashboard stop 3457

# 크로스 인스턴스 메모리 검색
jaw dashboard memory search "JWT authentication"

# 모든 메모리 인스턴스 조회
jaw dashboard memory instances

# 영구 자동 시작 등록
jaw dashboard perm 3458 --home ~/.jaw-work
~해줘 Tip: "대시보드 상태 확인해줘" -- 에이전트가 jaw dashboard status --json을 실행하고 어떤 인스턴스가 온라인인지 보고합니다.

jaw status

Server

API 핑을 통해 jaw 서버가 실행 중인지 확인합니다. 선택적으로 대시보드 서버도 함께 확인할 수 있습니다.

jaw status [--port <N>] [--json] [--dashboard]
옵션기본값설명
--port <N>3457대상 서버 포트
--jsonfalse기계 판독 가능한 JSON 출력
--dashboardfalse대시보드 서버도 함께 확인 (포트 24576)

종료 코드 0 = 서버 실행 중, 1 = 서버 미실행 또는 오류.

예제

# 빠른 상태 확인
jaw status

# 스크립팅용 JSON 출력
jaw status --json
# → {"status":"running","port":"3457","cli":"claude"}

# 서버와 대시보드 모두 확인
jaw status --dashboard

# 특정 포트 확인
jaw status --port 3458
~해줘 Tip: "서버 상태 확인해줘" -- 에이전트가 jaw status --json을 실행하여 서버 정상 여부를 확인하고 CLI, 포트, 활성 하트비트 작업을 보고합니다.

Setup & Diagnostics

jaw init

Setup

최초 설정을 위한 대화형 설정 마법사입니다. ~/.cli-jaw/settings.json을 생성하고, 기본 CLI 백엔드, 메시징 채널, 스킬 디렉토리를 구성합니다.

jaw init [options]
옵션설명
--non-interactive프롬프트 건너뛰기, 기본값 사용
--safe선택적 설치 전 확인 요청
--dry-run변경 없이 수행될 작업 미리보기
--force기존 설정 덮어쓰기
--working-dir <path>작업 디렉토리 설정
--cli <name>기본 CLI 백엔드 (claude, codex, gemini 등)
--channel <ch>활성 채널 (telegram 또는 discord)
--telegram-token <t>Telegram 봇 토큰
--allowed-chat-ids <ids>허용할 Telegram 채팅 ID (쉼표 구분)
--discord-token <t>Discord 봇 토큰
--discord-guild-id <id>Discord 길드(서버) ID
--discord-channel-ids <ids>허용할 Discord 채널 ID (쉼표 구분)
--skills-dir <path>커스텀 스킬 디렉토리

예제

# 대화형 마법사 (첫 실행 시 권장)
jaw init

# 기본값으로 비대화형 실행
jaw init --non-interactive --cli claude

# 강제 재초기화
jaw init --force --cli gemini --channel telegram

# 실제 변경 없이 미리보기
jaw init --dry-run
~해줘 Tip: "초기 설정 해줘" -- jaw init을 대화형으로 실행하세요. 마법사가 질문을 하고 설정을 저장합니다. CI/CD 환경에서는 --non-interactive를 사용하세요.

jaw doctor

Setup

설치 및 구성 상태를 진단합니다. Node.js 버전, CLI 바이너리 해석, 설정 파일 유효성, MCP 서버 연결, 직원 CLI 가용성, 포트 가용성을 검사합니다.

jaw doctor [--json] [--fix] [--tcc] [--prime]
옵션설명
--json기계 판독 가능한 진단 출력
--fix감지된 문제 자동 수정 시도
--tccmacOS TCC (투명성, 동의, 제어) 권한 확인
--prime설치 프라이밍 (캐시 사전 워밍)
--repair-shared-paths오염된 공유 MCP 경로 복구

예제

# 진단 실행
jaw doctor

# 기계 판독 가능한 출력
jaw doctor --json

# 감지된 문제 자동 수정
jaw doctor --fix

# macOS 접근성 권한 확인
jaw doctor --tcc
~해줘 Tip: "설치 상태 진단해줘" -- 에이전트가 jaw doctor --json을 실행하고 결과를 해석하여, 실패한 검사 항목과 권장 수정 방법을 안내합니다.

jaw reset

Setup

공장 초기화: MCP 동기화, 스킬 초기화, 직원 초기화, 세션 클리어를 수행합니다. --yes를 전달하지 않으면 확인을 요청합니다. 실행 중인 서버가 필요합니다.

jaw reset [--yes] [--port <N>]
옵션기본값설명
--yes, -yfalse확인 프롬프트 건너뛰기
--port <N>3457대상 서버 포트

예제

# 확인 프롬프트와 함께 초기화
jaw reset

# 확인 건너뛰기 (스크립팅용)
jaw reset --yes

# 특정 인스턴스 초기화
jaw reset --port 3458 --yes
경고: 이 명령은 MCP 서버, 스킬(기본 25개로 복원), 직원, 현재 세션을 초기화합니다. 메모리 파일은 보존됩니다.
~해줘 Tip: "전부 초기화해줘" -- 에이전트가 권한이 있을 때 서버 API를 통해 jaw reset --yes를 실행할 수 있습니다.

Orchestration

jaw chat

Orchestration

대화형 터미널 REPL입니다. SSE-first TUI 채널로 실행 중인 서버에 연결하고, 오래된 서버에서는 legacy WebSocket fallback을 사용합니다. 영구 푸터가 있는 리치 TUI 모드, UI 통합을 위한 원시 JSON 프로토콜 모드, 최소한의 일반 readline 모드를 지원합니다.

jaw chat [--port <N>] [--raw] [--simple]
옵션기본값설명
--port <N>3457연결할 서버 포트
--rawfalseJSON 프로토콜 모드 (프로그래밍 방식 UI 통합용)
--simplefalse일반 readline 모드 (최소, TUI 없음)

예제

# 기본 리치 TUI
jaw chat

# 심플 모드 (단순 터미널에서 동작)
jaw chat --simple

# 다른 인스턴스에 연결
jaw chat --port 3458

# 파이프를 위한 원시 JSON 모드
jaw chat --raw
~해줘 Tip: "채팅 시작해줘" -- jaw chat은 포그라운드 터미널 프로세스입니다. 채팅 내에서 /status, /model, /skill 등의 슬래시 커맨드를 사용할 수 있습니다.

jaw dispatch

Orchestration

직원 에이전트에게 작업을 전송합니다. 직원은 서버 API를 통해 비동기적으로 실행되며, 결과를 stdout으로 반환합니다. 스크립팅 워크플로우에서 파이프와 호환됩니다. JAW_BOSS_TOKEN이 필요합니다 (서버 프로세스에서 상속).

jaw dispatch --agent <name> --task <text> [--json] [--port <N>]
옵션설명
--agent <name>직원 이름 (대소문자 구분, settings.json의 employees와 일치해야 함)
--task <text>전송할 작업 지시
--jsonJSON 출력
--port <N>대상 서버 포트

예제

# 프론트엔드 작업 디스패치
jaw dispatch --agent "Frontend" --task "Fix CSS bug in the header component"

# 백엔드 작업 디스패치
jaw dispatch --agent "Backend" --task "Add rate limiting to /api/chat endpoint"

# 파이프를 위한 JSON 출력
jaw dispatch --agent "Data" --task "Optimize the slow query in reports" --json
참고: 직원 세션은 다른 직원을 디스패치할 수 없습니다 (중첩 디스패치 차단). 보스 세션만 디스패치 권한을 가집니다.
~해줘 Tip: "프론트엔드 직원한테 헤더 버그 고치라고 해줘" -- 에이전트가 API를 통해 디스패치합니다. 대상 직원은 자체 CLI 인스턴스에서 실행되고 결과를 반환합니다.

jaw employee

Orchestration

직원 관리 유틸리티입니다. 현재 직원을 기본 5개 프로필(Frontend, Backend, Data, Docs, QA)로 초기화하는 기능을 지원합니다.

jaw employee <subcommand> [--port <N>]
서브커맨드설명
reset직원을 기본 5개 프로필로 초기화

예제

# 모든 직원을 기본값으로 초기화
jaw employee reset

# 특정 인스턴스에서 초기화
jaw employee reset --port 3458
~해줘 Tip: "직원 초기화해줘" -- 에이전트가 채팅 내에서 /employee reset을 호출하거나 서버 API를 통해 jaw employee reset을 실행합니다.

jaw orchestrate

Orchestration

PABCD 상태 머신 전환입니다. Interview, Planning, Audit, Build, Check, Done 단계를 거쳐 워크플로우를 진행합니다. 실행 중인 서버의 API를 호출하므로 SSE-first 이벤트 업데이트가 연결된 클라이언트에 실시간으로 전달됩니다.

jaw orchestrate <phase> [--force] [--json] [--port <N>]
단계설명
IInterview 진입 (IDLE에서)
PPlanning 진입 (IDLE 또는 I에서)
APlan Audit 진입 (P에서)
BBuild 진입 (A에서)
CCheck 진입 (B에서)
DDone 진입 (C에서, IDLE로 복귀)
status현재 단계, 스코프, 감사 상태 표시
reset어떤 상태에서든 IDLE로 복귀

유효한 전환: IDLE → I → P → A → B → C → D → IDLE. Interview는 선택 사항이며 IDLE → P도 유효합니다.

예제

# 플래닝 단계 시작
jaw orchestrate P

# 강제 전환 (유효성 검사 건너뛰기)
jaw orchestrate B --force

# 현재 상태 확인
jaw orchestrate status

# IDLE로 초기화
jaw orchestrate reset

# JSON 출력
jaw orchestrate status --json
~해줘 Tip: "PABCD 상태 확인해줘" 또는 "빌드 단계로 넘어가줘" -- 에이전트가 채팅 내 /orchestrate 커맨드 또는 API를 호출하여 단계를 전환합니다.

jaw goal

Orchestration

영구 목표 라이프사이클 관리입니다. 목표를 설정하고, 체크포인트로 진행 상황을 추적하며, 목표 상태(일시정지, 재개, 취소, 완료)를 관리합니다. 목표는 세션과 서버 재시작을 넘어 유지됩니다.

jaw goal <subcommand> [args...] [--port <N>]
서브커맨드설명
set <objective>새 목표 설정
status활성 목표 표시 (서브커맨드 없을 때 기본값)
update <summary>진행 체크포인트 추가
done [note]목표 완료 처리
cancel [reason]목표 취소
pause활성 목표 일시정지
resume일시정지된 목표 재개
clear활성 목표 클리어
reset전체 목표 저장소 초기화
history [limit]목표 이력 조회 (기본값: 10)

예제

# 새 목표 설정
jaw goal set "Implement keyboard shortcuts for the editor"

# 현재 목표 확인
jaw goal status

# 진행 체크포인트 추가
jaw goal update "K0: shortcut registry done, K1: in progress"

# 완료 처리
jaw goal done "All phases complete, PR merged"

# 과거 목표 조회
jaw goal history 5

# 일시정지 및 재개
jaw goal pause
jaw goal resume

# 사유와 함께 취소
jaw goal cancel "Deprioritized in favor of auth refactor"
~해줘 Tip: "키보드 단축키 구현 목표 설정해줘" -- 에이전트가 목표 API를 호출하여 목표를 설정하고 추적합니다. "목표 완료해줘"로 완료 처리할 수 있습니다.

Automation & Tools

jaw memory

Automation

영구 메모리 저장소 CLI입니다. 메모리 파일을 검색, 읽기, 저장, 목록 조회할 수 있습니다. 메모리는 ~/.cli-jaw/memory/에 마크다운 파일로 저장되며 시맨틱 검색을 위해 인덱싱됩니다.

jaw memory <subcommand> [args...]
서브커맨드설명
search <query>모든 메모리 파일에 대한 시맨틱 검색
read <file> [--lines N]특정 메모리 파일 읽기
save <file> <content>메모리 파일에 내용 쓰기
list모든 메모리 파일의 크기 및 날짜 목록 조회

예제

# 메모리 검색
jaw memory search "JWT authentication patterns"

# 특정 파일 읽기
jaw memory read structured/profile.md

# 새 메모리 항목 저장
jaw memory save structured/profile.md "- User prefers concise Korean summaries"

# 에피소드 로그 저장
jaw memory save structured/episodes/live/2026-05-29.md "## 14:30\n- Completed CLI docs page"

# 모든 파일 목록 조회
jaw memory list
~해줘 Tip: "JWT 관련 메모리 찾아줘" -- 에이전트가 API를 통해 메모리를 검색합니다. "프로필에 한국어 선호 추가해줘"라고 하면 structured/profile.md에 저장합니다.

jaw browser

Automation

CDP(Chrome DevTools Protocol)를 통한 Chrome 브라우저 제어입니다. 페이지 열기, 스크린샷 촬영, 요소 클릭, 텍스트 입력, 탭 관리, Web AI 기반 브라우징을 수행합니다. 서버가 실행 중이어야 합니다.

jaw browser <subcommand> [args...]
서브커맨드설명
status브라우저 연결 상태 및 활성 탭 표시
tabs열려 있는 브라우저 탭 목록
open <url>브라우저에서 URL 열기
screenshot [--clip]현재 페이지 스크린샷 촬영
snapshot접근성 트리 스냅샷 가져오기 (ref 기반)
click <ref>ref ID로 요소 클릭
type <ref> <text>요소에 텍스트 입력
fetch <url>적응형 페치 (브라우저 또는 HTTP, 자동 선택)
web-ai <subcommand>Web AI 명령 (지능형 페이지 파싱)
close브라우저 세션 종료
reset브라우저 상태 및 캐시 초기화

예제

# 브라우저 상태 확인
jaw browser status

# 페이지 열기 및 스크린샷 촬영
jaw browser open https://example.com
jaw browser screenshot

# 요소 ref를 위한 페이지 스냅샷 가져오기
jaw browser snapshot

# ref를 사용한 클릭 및 입력
jaw browser click ref:42
jaw browser type ref:15 "search query"

# 적응형 페치
jaw browser fetch https://example.com/api/data
~해줘 Tip: "브라우저로 구글 열어줘" 또는 "스크린샷 찍어줘" -- 에이전트가 브라우저 스킬을 사용하여 CDP를 통해 Chrome을 제어합니다.

jaw skill

Automation

스킬 관리: 설치된 스킬 목록 조회, reference/Codex/GitHub에서 설치, 스킬 제거, 스킬 상세 정보 조회를 수행합니다. 스킬은 에이전트의 시스템 프롬프트에 주입됩니다.

jaw skill [subcommand] [name...]
서브커맨드설명
(없음) / list설치된(활성) 스킬 전체 목록 조회
install <name> [name...]reference 디렉토리, Codex 또는 GitHub에서 스킬 설치
remove <name>스킬 제거 (비활성화)
info <name>SKILL.md 내용 및 메타데이터 표시
reset모든 스킬을 기본 25개로 초기화

예제

# 설치된 스킬 목록 조회
jaw skill

# 스킬 설치
jaw skill install cloudflare
jaw skill install docker kubernetes terraform

# 스킬 제거
jaw skill remove cloudflare

# 스킬 상세 정보 조회
jaw skill info dev-frontend

# 기본값으로 초기화
jaw skill reset
~해줘 Tip: "cloudflare 스킬 설치해줘" 또는 "스킬 목록 보여줘" -- 에이전트가 채팅 내 /skill 또는 CLI 명령으로 스킬을 관리합니다.

jaw mcp

Automation

MCP (Model Context Protocol) 서버 관리입니다. npm/PyPI MCP 패키지를 설치하고, 6개 CLI 백엔드 전체에 구성을 동기화하며, 등록된 서버를 조회하거나 기본값으로 초기화합니다.

jaw mcp [subcommand] [package]
서브커맨드설명
(없음) / list등록된 MCP 서버 목록 조회
install <pkg>npm/PyPI 패키지 설치, mcp.json에 추가, 동기화
syncmcp.json을 6개 CLI 백엔드 구성에 동기화
reset [--force]mcp.json을 기본값으로 초기화하고 재동기화

패키지 에코시스템은 자동 감지됩니다: @scope/name은 npm, mcp-server-*는 PyPI입니다. --pypi 또는 --npm으로 수동 지정할 수 있습니다.

예제

# 모든 MCP 서버 목록 조회
jaw mcp

# npm MCP 패키지 설치
jaw mcp install @anthropic/mcp-server-fetch

# PyPI MCP 패키지 설치
jaw mcp install mcp-server-git

# 모든 CLI에 구성 동기화
jaw mcp sync

# 기본 MCP 서버로 초기화
jaw mcp reset --force
~해줘 Tip: "MCP 서버 목록 보여줘" 또는 "fetch MCP 서버 설치해줘" -- 에이전트가 채팅 내 /mcp를 통해 MCP 서버를 관리합니다.

jaw connector

Automation

대시보드 커넥터 CLI -- 칸반 보드, 노트, 리마인더, 감사 로그를 위한 통합 진입점입니다. 웹 UI 없이 대시보드 기능에 직접 CLI로 접근할 수 있습니다.

jaw connector <surface> <subcommand> [options]
Surface서브커맨드설명
boardadd, update, list칸반 보드 태스크 (backlog/ready/active/review/done)
noteswrite, list대시보드 마크다운 노트
remindersadd, list, done우선순위 기반 리마인더
audit(없음)커넥터 감사 로그
옵션설명
--jsonJSON 출력
--title <text>태스크/리마인더 제목
--summary <text>태스크 요약
--lane <name>칸반 레인 (backlog, ready, active, review, done)
--path <path>노트 파일 경로
--body <text>노트 내용
--priority <p>리마인더 우선순위 (low, normal, high)
--due <date>리마인더 마감일

예제

# 칸반 태스크 추가
jaw connector board add --title "Implement auth flow" --lane backlog

# 태스크를 done으로 이동
jaw connector board update task-id-123 --lane done

# 보드 태스크 목록 조회
jaw connector board list --json

# 노트 작성
jaw connector notes write --path "meeting/standup.md" --body "# Standup Notes\n- Auth PR merged"

# 노트 목록 조회
jaw connector notes list

# 리마인더 추가
jaw connector reminders add --title "Review PR #42" --priority high --due 2026-06-01
~해줘 Tip: "보드에 인증 구현 태스크 추가해줘" 또는 "노트에 회의록 저장해줘" -- 에이전트가 커넥터 API를 사용하여 대시보드 surface를 관리합니다.

jaw reminders

Automation

아이젠하워 매트릭스 스타일의 우선순위 기반 리마인더입니다. jaw connector reminders의 단축 명령입니다.

jaw reminders <subcommand> [options]
서브커맨드설명
list / ls모든 리마인더 목록 조회 (기본값)
add <title>새 리마인더 추가
done <id>리마인더 완료 처리
옵션설명
--title <text>리마인더 제목 (위치 인수 대체)
--notes <text>추가 메모
--priority <p>우선순위: low, normal, high (기본값: normal)
--due <date>마감일
--remind <date>리마인더 알림 시간
--jsonJSON 출력

예제

# 리마인더 목록 조회
jaw reminders list

# 리마인더 추가
jaw reminders add "Review PR #42" --priority high --due 2026-06-01

# 메모와 함께 추가
jaw reminders add --title "Deploy staging" --notes "After QA sign-off" --priority normal

# 완료 처리
jaw reminders done reminder-id-abc

# JSON 출력
jaw reminders list --json
~해줘 Tip: "내일까지 PR 리뷰하라고 리마인더 추가해줘" -- 에이전트가 적절한 마감일과 우선순위로 리마인더를 생성합니다.

jaw project

Automation

프로젝트 워크스페이스 디렉토리를 관리합니다. 에이전트가 활성 프로젝트 루트로 인식할 디렉토리를 설정합니다. 변경 사항은 서버 API를 통해 적용되며 세션 간에 유지됩니다.

jaw project <subcommand> [paths...]
서브커맨드설명
set <path>[, <path>...]활성 프로젝트 디렉토리 설정 (쉼표 구분)
reset모든 프로젝트 디렉토리 클리어
clearreset의 별칭
list현재 프로젝트 디렉토리 표시 (기본값)

예제

# 프로젝트 디렉토리 설정
jaw project set ~/Dev/frontend, ~/Dev/backend

# 단일 절대 경로 설정
jaw project set /Users/jun/projects/my-app

# 현재 디렉토리 목록 조회
jaw project list

# 전체 클리어
jaw project reset
~해줘 Tip: "프로젝트 디렉토리 설정해줘" 또는 "프로젝트 목록 보여줘" -- 에이전트가 채팅 내 /project를 사용하여 워크스페이스 디렉토리를 관리합니다.

Service Management

jaw service

Service

크로스 플랫폼 자동 시작 관리입니다. OS를 감지하여 서버를 백그라운드 데몬으로 설치합니다 (macOS의 launchd, Linux의 systemd, 컨테이너의 Docker 엔트리포인트). 한 번의 명령으로 설치와 시작을 동시에 수행합니다.

jaw service [subcommand] [--port <N>] [--backend <type>]
서브커맨드설명
(없음)OS 자동 감지, 설치 + 시작 (한 번에)
install시스템 서비스로 설치
status서비스 상태 확인
unset서비스 제거
logs서비스 로그 조회
옵션기본값설명
--port <N>3457등록할 서버 포트
--backend <type>(자동)백엔드 강제 지정: launchd, systemd 또는 docker

예제

# 한 번에 설치 + 시작 (OS 자동 감지)
jaw service

# 커스텀 포트
jaw service --port 3458

# 서비스 상태 확인
jaw service status

# 로그 조회
jaw service logs

# 서비스 제거
jaw service unset

# 특정 백엔드 강제 지정
jaw service --backend systemd --port 3457
~해줘 Tip: "서비스로 등록해줘" 또는 "백그라운드에서 실행되게 해줘" -- 에이전트가 jaw service를 실행하여 영구 데몬을 설치합니다.

jaw clone

Service

현재 구성을 복제하여 독립적인 에이전트 인스턴스를 생성합니다. 구성과 스킬을 복사하고, 새 데이터베이스를 생성하며, AGENTS.md를 재생성합니다. 여러 격리된 에이전트를 실행할 때 유용합니다.

jaw clone <target-dir> [--from <source>] [--with-memory] [--link-ref]
옵션설명
<target-dir>새 인스턴스의 대상 디렉토리 (필수)
--from <source>복제할 소스 디렉토리 (기본값: ~/.cli-jaw)
--with-memory소스의 메모리 파일도 복사
--link-ref참조 스킬을 복사 대신 심볼릭 링크로 연결

예제

# 새 디렉토리로 복제
jaw clone ~/.cli-jaw-work

# 메모리와 함께 복제
jaw clone ~/.cli-jaw-research --with-memory

# 특정 소스에서 복제
jaw clone ~/.cli-jaw-staging --from ~/.cli-jaw-prod

# 디스크 절약을 위해 참조 스킬 심볼릭 링크
jaw clone ~/.cli-jaw-dev --link-ref
복제 후: jaw --home ~/.cli-jaw-work serve --port 3458로 새 인스턴스를 시작하거나, jaw dashboard perm 3458 --home ~/.cli-jaw-work로 등록하세요.
~해줘 Tip: "인스턴스 하나 복제해줘" -- 에이전트가 jaw clone을 실행하여 독립적인 복사본을 생성하고, 선택적으로 새 포트에서 시작합니다.

jaw launchd

Service

macOS 전용 LaunchAgent 관리입니다 (지원 중단 -- 대신 jaw service를 사용하세요). 로그인 시 자동 시작을 위한 plist 파일을 관리합니다. 하위 호환성을 위해 유지됩니다.

jaw launchd [subcommand] [--port <N>]
서브커맨드설명
(없음)plist 확인, 없으면 생성, 시작 (한 번에)
status현재 LaunchAgent 상태 표시
unsetplist 제거 및 에이전트 언로드
cleanup레거시 plist 파일 제거
옵션기본값설명
--port <N>3457등록할 서버 포트
지원 중단: jaw launchdjaw service로 대체되었습니다. jaw service는 macOS에서 launchd를 자동 감지하며, systemd(Linux)와 Docker도 지원합니다. 새로 설치할 때는 jaw service를 사용하세요.

예제

# 한 번에 설치 + 시작
jaw launchd

# 커스텀 포트
jaw launchd --port 3458

# 상태 확인
jaw launchd status

# 제거
jaw launchd unset

# 레거시 plist 정리
jaw launchd cleanup
~해줘 Tip: "launchd 상태 확인해줘" -- 크로스 플랫폼 버전인 jaw service status를 대신 사용하세요.

빠른 참조

명령카테고리서버 필요설명
jaw serveServer-서버 시작 (포그라운드)
jaw dashboardServer-멀티 인스턴스 관리자
jaw statusServer아니오상태 확인
jaw initSetup아니오대화형 설정 마법사
jaw doctorSetup아니오설치 진단
jaw resetSetup공장 초기화
jaw chatOrchestration터미널 REPL
jaw dispatchOrchestration직원에게 작업 전송
jaw employeeOrchestration직원 관리
jaw orchestrateOrchestrationPABCD 상태 머신
jaw goalOrchestration영구 목표 라이프사이클
jaw memoryAutomation영구 메모리 저장소
jaw browserAutomationChrome 브라우저 제어
jaw skillAutomation아니오스킬 관리
jaw mcpAutomation아니오MCP 서버 관리
jaw connectorAutomation부분적대시보드 커넥터 (보드/노트/리마인더)
jaw remindersAutomation아니오우선순위 기반 리마인더
jaw projectAutomation워크스페이스 디렉토리
jaw serviceService아니오크로스 플랫폼 자동 시작
jaw cloneService아니오인스턴스 복제
jaw launchdService아니오macOS LaunchAgent (지원 중단)

환경 변수

변수기본값설명
CLI_JAW_HOME~/.cli-jaw데이터 디렉토리 재정의 (--home과 동일)
PORT3457기본 서버 포트
DASHBOARD_PORT24576대시보드 서버 포트
JAW_BOSS_TOKEN-직원 디스패치용 인증 토큰 (서버에서 상속)
JAW_EMPLOYEE_MODE-직원 세션에서 1로 설정 (중첩 디스패치 방지)