Grok CLI 사용법 & 프롬프트 팁

xAI Grok Build 터미널 에이전트 완전 가이드 — 2026-09 기준(grok 1.0.24 stable) · Claude Code 사용자도 바로 적응할 수 있게 구성

읽는 방법
각 챕터 상단에 가장 자주 쓰는 항목을 먼저 배치했고, ⭐ 표시로 빈도를 나타냈습니다. Claude Code를 쓰던 사람이라면 권한 모드·Plan Mode·Subagent·Headless/ACP를 특히 주목하세요.
  • ⭐⭐⭐ — 매일 쓰는 필수 기능
  • ⭐⭐ — 주 단위로 자주 씀
  • ⭐ — 특정 상황에서 유용
2026-09 갱신 요약 — 예전 설명에서 바뀐 것
  • /plan은 "상태 확인"이 아니라 Plan Mode 진입 명령이다. 상태·내용 확인은 /view-plan.
  • persona는 spawn_subagent의 인자가 아니다. 서브에이전트 종류는 subagent_type으로 고르고, persona는 별도 파일로 얹는 행동 오버레이다.
  • 권한은 always-approve 하나만 있는 게 아니다. ask(기본) · acceptEdits · auto(분류기) · dontAsk · bypassPermissions 5단계다.
  • 세션 재개는 /load가 아니라 /resume, YOLO는 슬래시가 아니라 /always-approve · --yolo다.
  • Shift+Tab 순환에 Auto와 Always-approve가 들어갔다.

⭐ 가장 자주 쓰는 것

Claude Code를 쓰던 사람이라면 이 기능들부터 익히세요. Grok의 진짜 힘은 여기서 나옵니다.

/plan <설명>
Plan Mode 진입. 진입 후에는 plan.md 외의 파일 편집이 모드 차원에서 차단된다. 큰 리팩토링·신규 기능 전에 필수. 모델이 스스로 enter_plan_mode로 제안하기도 한다.
todo_write
작업을 여러 단계로 쪼개 진행 상황을 실시간 추적. 서브에이전트를 여럿 돌릴 때 특히 유용하다.
spawn_subagent
독립 컨텍스트의 자식 에이전트를 띄운다. background: true로 병렬, isolation: "worktree"로 별도 git worktree에서 격리 실행까지 된다.
Shift+Tab / /auto
권한 모드 순환(Normal → Plan → Auto → Always-approve). Auto는 "전부 승인"이 아니라 분류기가 안전한 것만 자동 통과시키는 모드다.
/dashboard (Ctrl+\)
탑레벨 세션 roster. 여러 세션을 한눈에 보고 전환·정리한다. (주의: 서브에이전트는 여기 안 뜬다)
grok -p "…"
헤드리스 실행. --output-format json·--sandbox·--deny와 묶어 CI 파이프라인에 그대로 꽂을 수 있다.
search_replace
정확한 문자열 치환으로 파일 수정. replace_all 옵션 지원. 애매한 지시보다 훨씬 안전하다.
/loop + monitor
주기 반복(/loop 5m …)과 장기 스크립트 stdout 감시(monitor). 빌드·로그 감시 자동화의 핵심 조합.
Grok 추천 워크플로우
/plan 으로 계획 확정 → todo_write로 단계 정의 → 무거운 조사·병렬 작업은 spawn_subagent → 수정은 search_replace → 위험 작업은 --sandbox와 deny 규칙으로 감싼다.

1. Grok Build 개요 · 버전

Grok Build는 xAI의 터미널 기반 코딩 에이전트 제품명이고, 우리가 실제로 치는 명령은 grok 바이너리입니다. 단순 채팅이 아니라 도구 호출(Tools), Plan Mode, 서브에이전트, Skills/Plugins/MCP, Rhai 워크플로를 갖춘 에이전트 런타임입니다.

이름 의미
Grok Build 제품명 (코딩 에이전트)
Grok CLI / grok 사용자가 실행하는 바이너리
xai-grok-pager / xai-grok-shell 내부 컴포넌트 이름(TUI / 런타임). 배포·설치 이름은 어디까지나 grok
@xai-official/grok npm 패키지 (curl 설치의 대안)

버전 타임라인

날짜 이벤트
2026-05-25 Grok Build 공개 — early beta (SuperGrok / X Premium+ 대상)
2026-08-07 1.0.0 정식 출시(GA)
2026-09-07 1.0.24 — 이 문서가 기준으로 삼은 stable 버전
⚠️ 자료 불일치 — 확인 필요
1.0 GA 이후에도 뉴스 페이지에는 여전히 "early beta" 문구가 남아 있습니다. 따라서 구독 등급(SuperGrok 등) 게이트가 GA 이후에도 동일한지는 이 문서로 단정하지 말고 공식 FAQ·엔터프라이즈 문서에서 다시 확인하세요.
주요 개념 설명
TUI 풀스크린 터미널 인터페이스. /minimal ↔ /fullscreen으로 전환
Tools 파일·셸·검색·웹·이미지·서브에이전트·스케줄러 등 내장 도구 모음 (↓ 5장)
Permission modes ask / acceptEdits / auto / dontAsk / bypassPermissions 5단 (↓ 6장)
Sandbox OS 수준 파일·네트워크 격리. 기본은 off (↓ 7장)
Plan Mode plan.md만 쓸 수 있는 계획 전용 모드 (↓ 8장)
Subagents 독립 컨텍스트 자식 세션. 백그라운드·worktree 격리 지원 (↓ 9장)
ACP Agent Client Protocol — Zed·Neovim·Emacs 등 에디터에 grok을 에이전트로 붙이는 JSON-RPC 서버 모드 (↓ 11장)

2. 설치 · 인증 · 업데이트

2-1. 설치

# macOS / Linux
curl -fsSL https://x.ai/cli/install.sh | bash
curl -fsSL https://x.ai/cli/install.sh | bash -s 1.0.24   # 특정 버전 고정

# Windows (PowerShell) — GROK_VERSION 환경변수로 버전 지정
irm https://x.ai/cli/install.ps1 | iex

# npm 경로를 선호하면
npm i -g @xai-official/grok

grok --version   # 1.0.24

2-2. 인증 방식

자격 증명 우선순위 (요청 단위로 평가)
모델별 api_key/env_key → 세션 토큰(~/.grok/auth.json) → XAI_API_KEY

즉 특정 모델에 키를 박아두면 로그인 세션보다 그 키가 먼저 쓰인다. CI에서 헷갈리기 쉬운 지점이다.

방식 트리거 / 설정
브라우저 OAuth grok 최초 실행 또는 grok login
디바이스 코드 grok login --device-auth — 브라우저를 못 여는 원격 셸에서 사용
엔터프라이즈 OIDC [grok_com_config.oidc] 설정 또는 GROK_OIDC_* 환경변수
외부 자격 공급자 [auth] auth_provider_command — 사내 시크릿 매니저를 명령으로 호출
API 키 XAI_API_KEY — CI·헤드리스 표준 경로
엔터프라이즈 고정(핀) 옵션
requirements.toml에서 disable_api_key_auth(API 키 로그인 금지) · force_login_team_uuid(특정 팀 계정 강제)로 인증 경로 자체를 잠글 수 있다.
grok clone(Grove)의 Git 자격 증명은 이 체계와 별개다 — 따로 설정해야 한다.

2-3. 업데이트 제어

grok update              # 최신 stable로
grok update --check      # 새 버전 있는지만 확인
grok update --version 1.0.24
grok update --alpha      # 알파 채널
grok update --stable     # 안정 채널로 복귀

자동 업데이트를 끄는 방법은 세 가지 — 상황에 맞게 고릅니다.

3. 모델 & 추론 강도

grok models        # 사용 가능한 모델 목록

# 2026-09-09 로컬 1.0.24 기준 출력
Default:   grok-4.5
Available: grok-4.6, grok-4.5
⚠️ 자료 불일치 — 기본 모델 4.5 vs 마케팅 4.6
런타임과 동봉 유저 가이드·설정 예시는 모두 기본값을 grok-4.5로 보여줍니다. 반면 공식 overview 문서는 API 예제에서 grok-4.6을 "Grok Build를 구동하는 모델"로 강조합니다. 내 환경의 실제 기본값은 grok models로 직접 확인하고, 필요하면 -m으로 명시적으로 고정하세요.

전환 방법

빈도 방법 설명
⭐⭐ /model 세션 중 모델 전환 (피커)
⭐⭐ -m <모델> 실행 시 지정 — grok -m grok-4.6 "…"
⭐⭐ /effort 추론 강도. TUI는 low · medium · high · xhigh, CLI 플래그는 none~max까지 받는다. 어려운 설계엔 높게, 단순 편집엔 낮게.

커스텀 모델 (사내 게이트웨이 · 타 프로바이더)

~/.grok/config.toml에 [model.<이름>] 블록을 만들면 자체 엔드포인트를 모델처럼 등록할 수 있습니다.

# ~/.grok/config.toml
[model.internal-gw]
base_url    = "https://llm-gateway.example.com/v1"
env_key     = "INTERNAL_LLM_KEY"   # 이 환경변수에서 키를 읽음
api_backend = "chat_completions"    # chat_completions | responses | messages
조직 단위로 모델을 강제할 때
requirements.toml의 allowed_models는 "추가 허용"이 아니라 목록을 통째로 교체하는 핀이다. 여기에 없는 모델은 사용자가 /model로도 고를 수 없다.

4. 슬래시 명령어 (/)

프롬프트 맨 앞에 /를 입력하면 자동완성 목록이 나옵니다. 아래는 자주 쓰는 것 위주 정리입니다.

4-1. 세션 관리

빈도 명령어 용도
⭐⭐⭐ /new · /clear 새 세션 시작 (컨텍스트 완전 초기화). 작업 전환 시 필수.
⭐⭐⭐ /resume 이전 세션 목록에서 골라 재개. (옛 문서의 /load가 아니다)
⭐⭐⭐ /dashboard · /sessions 탑레벨 세션 roster를 열어 한눈에 보기 (Ctrl+\). ↓ 11장
⭐⭐ /compact 대화 히스토리 요약·압축. 지시를 덧붙여 보존할 내용을 지정할 수 있다. (컨텍스트 85% 부근에서 자동 압축도 동작)
⭐⭐ /context 현재 컨텍스트 사용량 확인.
⭐⭐ /fork 현재 세션을 복제해 다른 갈래로 실험.
⭐⭐ /rewind · /undo 대화만 이전 지점으로 되돌린다. 파일은 되돌아가지 않는다 — git으로 별도 관리할 것.
⭐ /session-info · /status 세션 ID·경로·사용량 등 메타 정보.
⭐ /rename · /copy · /export · /delete · /home 이름 변경 · 복사 · 내보내기 · 삭제 · 홈 화면.

4-2. 모드 · 모델 · UI

빈도 명령어 용도
⭐⭐⭐ /plan [설명] Plan Mode 진입. 설명을 붙이면 그 주제로 바로 계획 작성을 시작한다. ↓ 8장
⭐⭐ /view-plan 현재 plan.md 내용 보기. "계획 상태 확인"은 이 명령이다.
⭐⭐ /auto Auto 권한 모드 토글 (분류기 기반 자동 승인). ↓ 6장
⭐⭐ /always-approve bypassPermissions 모드. --yolo 플래그·Ctrl+O와 동일. deny 규칙과 hooks는 계속 살아 있다.
⭐⭐ /model · /effort 모델 전환 · 추론 강도 조절.
⭐ /minimal · /fullscreen · /theme TUI 표시 방식 전환.
⭐ /multiline · /history · /vim-mode · /settings 입력·히스토리·키바인딩·설정 UI.

4-3. 워크플로 & 메모리

빈도 명령어 용도
⭐⭐ /loop [간격] [프롬프트] 지정 간격으로 프롬프트 반복 실행. 내부적으로 scheduler_* 도구를 쓰며 최소 간격 60초, 최대 7일, 최대 50개 제한이 있다.
⭐⭐ /goal 완료 조건 기반 자율 진행. 워크플로와 조합해 쓴다.
⭐⭐ /workflow · /workflows · /create-workflow Rhai 스크립트 워크플로 실행·목록·생성. ↓ 10장
⭐ /deep-research 내장 심층 조사 워크플로.
⭐ /btw 작업 흐름을 방해하지 않는 사이드 질문.
⭐ /memory · /flush · /dream · /remember 크로스 세션 메모리. 실험적이며 기본 off — /remember만 항상 동작한다. ↓ 12장
⭐ /imagine · /imagine-video 이미지·비디오 생성 (Imagine 계열 도구).
반복 모니터링 예시
# 5분마다 서버 로그 확인 + 이상 있으면 보고
/loop 5m "server.log 마지막 30줄을 보고 에러가 있으면 알려줘"

# 매시간 테스트 실행
/loop 1h "npm test -- --watchAll=false 실행해서 실패 있으면 요약해줘"

# 간격은 최소 60초. /loop 10s 같은 건 받아주지 않는다

4-4. 설정 · 도구 · 계정

빈도 명령어 용도
⭐⭐ /config-agents · /agents 서브에이전트 정의 관리. 세션 목록인 /dashboard와 헷갈리기 쉬우니 주의.
⭐⭐ /skills · /hooks 스킬 목록·토글 / 라이프사이클 훅 관리.
⭐⭐ /mcps · /plugins MCP 서버 · 플러그인 관리.
⭐⭐ /import-claude Claude Code 세션을 가져오기. 터미널에서는 grok import.
⭐ /doctor 환경 진단. 터미널 버전은 grok doctor, 상태 덤프는 grok inspect --json.
⭐ /login · /logout · /usage · /privacy 계정·사용량·프라이버시 설정.
⭐ /docs · /tutorial · /release-notes · /feedback 동봉 문서·튜토리얼·릴리스 노트·피드백.

5. 핵심 도구 (Tools)

Grok은 프롬프트만으로 대답하는 게 아니라 실제로 도구를 호출해 파일을 읽고 고치고 명령을 실행합니다. 도구 이름을 알아두면 프롬프트를 훨씬 정확하게 쓸 수 있습니다.

파일 · 셸 · 검색 (매일 쓰는 것)

도구 용도 빈도
read_file파일 읽기 (오프셋·라인 제한 가능)⭐⭐⭐
search_replace정확한 문자열 치환 — 가장 중요한 수정 도구⭐⭐⭐
run_terminal_command셸 명령 실행 (build·test·git 등)⭐⭐⭐
grep코드베이스 전체 검색 (ripgrep 기반)⭐⭐⭐
todo_write작업 목록 생성·갱신 (진행 상황 시각화)⭐⭐⭐
list_dir디렉터리 구조 탐색⭐⭐

에이전트 · 백그라운드

도구 용도 빈도
spawn_subagent자식 에이전트 실행 (백그라운드·worktree 격리 가능)⭐⭐
send_subagent_message루트에서 실행 중인 자식에게 지시를 밀어 넣기(steer/queue)⭐⭐
get_command_or_subagent_output / kill_*백그라운드 작업 출력 확인 · 종료⭐⭐
enter_plan_mode / exit_plan_modePlan Mode 진입·종료⭐⭐
monitor장기 실행 스크립트의 stdout을 감시해 조건 발생 시 알림. persistent 옵션 지원 — 감시 대상은 grep --line-buffered처럼 줄 단위 flush가 되게 해야 잘 잡힌다⭐⭐
scheduler_*/loop의 하부 구현 (최소 60초 · 최대 7일 · 최대 50개)⭐
workflowRhai 워크플로 실행 (탑레벨 도구)⭐

웹 · 대화 · 확장 · 생성

도구 용도 빈도
web_search / web_fetch / open_page웹 검색·문서 가져오기·페이지 열람⭐⭐
ask_user_question선택지를 갖춘 구조화 질문 카드를 띄워 사용자 결정을 받는다. 애매한 분기에서 추측 대신 물어보게 만든다⭐⭐
memory_search크로스 세션 메모리 검색 (메모리 기능 켰을 때)⭐
search_tool / use_toolMCP 도구 탐색 · 호출⭐
image_gen / image_edit / image_to_video / reference_to_videoImagine 계열 생성 도구⭐
⚠️ 도구 ID 표기 불일치 — 확인 필요
헤드리스 denylist 예시 문서에서는 셸 도구 ID가 run_terminal_cmd로 적힌 곳이 있고, TUI에서는 run_terminal_command로 표시됩니다. --tools/--disallowed-tools에 셸 도구를 적을 때는 실제 환경에서 한 번 시험해 어느 철자가 먹히는지 확인하세요.
도구를 의식한 프롬프트
먼저 @app.py 를 read_file로 확인하고,
넓게 찾아야 하는 부분은 grep으로 위치를 특정한 뒤,
수정은 반드시 search_replace로 정확히 고쳐줘.
단계는 todo_write로 관리하고,
선택이 갈리는 지점은 임의로 정하지 말고 ask_user_question으로 물어봐.

6. 권한 모드 & 규칙

"승인 프롬프트가 뜨느냐 마느냐"를 결정하는 축입니다. always-approve 하나만 있는 게 아닙니다.

Config 값 UI / 별칭 동작
default ask (기본) 읽기와 안전한 셸 명령은 자동, 나머지는 매번 질문
acceptEdits Accept edits 파일 편집을 자동 승인
plan (Claude 호환 값) 설정값으로 받아주지만, 실제 계획 게이트는 Plan Mode가 담당
auto Auto (/auto) 분류기가 안전하다고 판단한 것만 자동 승인. 위험한 건 여전히 프롬프트를 띄우고, 헤드리스에서는 프롬프트 대신 실패로 보고한다
dontAsk — allow 규칙에 없는 건 묵시적으로 거부. 무인 CI에 적합
bypassPermissions always-approve
--yolo · /always-approve · Ctrl+O
승인 프롬프트를 건너뛴다. deny 규칙·hooks·일부 셸 확인은 그대로 유지된다
Shift+Tab 순환
Normal → Plan → (Auto) → Always-approve 순으로 돕니다. Claude Code의 3단 순환을 기억하고 있다면 Auto와 Always-approve가 추가됐다고 갱신해 두세요.
⚠️ Auto ≠ 전부 승인
auto는 "묻지 않는 모드"가 아니라 "안전한 것만 골라 통과시키는 모드"입니다. 진짜로 전부 건너뛰는 건 bypassPermissions(always-approve) 쪽이고, 이건 컨테이너·일회용 VM처럼 망가져도 되는 환경에서만 쓰는 게 맞습니다.

권한 규칙 문법

도구별로 패턴을 걸어 허용·질문·거부를 지정합니다. 우선순위는 deny > ask > allow — 거부가 언제나 이깁니다.

Bash(git status)        # 특정 셸 명령
Bash(rm -rf *)          # 보통 deny 목록에 넣는다
Edit(src/**)            # 편집 대상 경로
Read(.env)              # 읽기 차단에 유용
Write(dist/**)
Grep(...)
WebFetch(...)
MCPTool(...)
Claude 설정 재사용
Grok은 .claude/settings.json의 권한 설정을 병합해서 읽습니다. Claude Code에서 이미 다듬어 둔 allow/deny 목록이 있다면 그대로 활용됩니다.
관리자 잠금
/etc/grok/requirements.toml(root 소유)에 disable_bypass_permissions_mode를 켜면 사용자가 always-approve로 전환하는 것 자체를 막을 수 있습니다. 공용 빌드 머신에서 쓰는 장치입니다.

7. Sandbox (OS 격리) 기본 off

권한 모드가 "물어볼까 말까"라면, 샌드박스는 OS 커널 수준에서 실제로 못 하게 막는 장치입니다. Linux는 Landlock(+bubblewrap), macOS는 Seatbelt를 씁니다. 두 축은 독립이라 조합해서 쓰는 게 정석입니다.

grok --sandbox workspace          # 실행 시 프로필 지정
export GROK_SANDBOX=strict        # 환경변수로 고정
프로필 쓰기 허용 범위 자식 프로세스 네트워크
off (기본)제한 없음허용
workspace현재 작업 폴더 + ~/.grok + 임시 디렉터리허용
devbox/data를 제외한 최상위 경로허용
read-only~/.grok + 임시 디렉터리만Linux에서 차단
strict현재 작업 폴더 + 세션 디렉터리 + 임시 디렉터리Linux에서 차단
실전 조합 — 남의 코드를 처음 돌려볼 때
grok --sandbox strict --always-approve \
     --deny 'Bash(rm -rf *)' \
     -p "이 저장소의 테스트를 돌리고 실패 원인을 요약해줘"

# always-approve로 프롬프트는 없애되,
# 실제 파괴 가능 범위는 샌드박스와 deny 규칙이 물리적으로 제한한다

8. Plan Mode 상세

영향 범위가 큰 작업에서 계획을 먼저 확정시키는 전용 모드입니다. 모델이 스스로 필요성을 판단해 제안하기도 하고, 사용자가 직접 넣을 수도 있습니다.

단계 방법
진입 /plan [설명] · Shift+Tab으로 Plan 선택 · 모델이 enter_plan_mode 제안 후 사용자 승인
작성 중 세션 디렉터리의 plan.md만 편집 가능
확인 /view-plan
종료 exit_plan_mode → 승인 UI에서 a 승인 · s 수정 요청 · c 코멘트
Plan Mode의 편집 게이트는 권한 모드보다 강하다
  • plan.md 이외 파일의 편집은 모드와 무관하게 거부된다.
  • always-approve 상태여도 이 편집 게이트는 유지된다 — 승인만 건너뛸 뿐 편집이 열리지는 않는다.
  • 다만 bash 명령과 MCP 도구는 통과할 수 있다. "읽기 전용"이라고 완전히 믿지 말 것.
⚠️ 서브에이전트는 부모의 plan 게이트를 상속하지 않는다
Plan Mode 중에 general-purpose 서브에이전트를 띄우면 그 자식은 파일을 수정할 수 있습니다. 계획 단계에서 진짜로 아무것도 건드리지 않게 하려면 편집 권한이 없는 explore·plan 타입으로 띄우세요.
사용 예시
# 진입하면서 주제까지 함께 지정
/plan 인증 모듈을 세션 기반에서 JWT로 옮기는 계획

# 계획 확인
/view-plan

# 계획 단계에서 조사가 필요하면 편집 권한 없는 타입으로
explore 서브에이전트로 현재 세션 처리 코드가 어디에 흩어져 있는지만 모아줘

9. 서브에이전트 · Agents · Personas

spawn_subagent로 독립 컨텍스트의 자식 에이전트를 띄웁니다. 자식은 자기 컨텍스트에서 일하고 요약만 부모에게 돌려주므로, 메인 세션의 토큰과 집중도를 아낍니다.

9-1. Agents vs Personas — 다른 개념이다

Agents Personas
무엇 모델·도구·시스템 프롬프트를 묶은 에이전트 정의 서브에이전트 위에 얹는 행동 오버레이
어디에 .grok/agents/ · /config-agents config.toml 또는 .grok/personas/*.toml
spawn 시 subagent_type으로 지정 spawn 파라미터가 아니다 — 설정으로 적용된다
⚠️ 흔한 오해 정정
"spawn_subagent에 persona: reviewer를 넘긴다"는 설명은 틀렸습니다. 역할별 자식을 원하면 .grok/agents/에 에이전트를 정의하고 그 이름을 subagent_type으로 넘기세요.

내장 서브에이전트 타입

타입특징
general-purpose일반 작업. 편집 가능
explore탐색 전용 — 편집 불가
plan계획 수립 — 편집 불가

9-2. spawn_subagent 파라미터

파라미터의미
prompt자식에게 줄 지시문
description진행 표시용 짧은 설명
subagent_type내장 타입 또는 .grok/agents/에 정의한 이름
backgroundtrue면 백그라운드로 병렬 실행
isolationnone 또는 worktree — worktree면 별도 작업 트리에서 격리 실행
resume_from이전 자식 세션을 이어서 실행
cwd자식의 작업 디렉터리

도구 권한은 capability로도 좁힙니다 — read-only · read-write · execute · all.

서브에이전트를 아예 끄려면 GROK_SUBAGENTS=0 또는 --no-subagents를 씁니다.

실전 예시 — 병렬 조사 + 격리 구현
다음처럼 진행해줘:

1. explore 서브에이전트 2개를 background로 띄워서
   - 하나는 현재 결제 관련 코드 위치를 모으고
   - 하나는 테스트 커버리지 현황을 정리
2. 두 결과가 모이면 todo_write로 단계 정의
3. 실제 구현은 isolation을 worktree로 준 서브에이전트에서 진행
   (메인 작업 트리를 건드리지 않게)
4. 진행 중인 자식에게 방향을 바꿔야 하면 send_subagent_message로 지시
Dashboard에는 자식이 안 보인다
/dashboard는 탑레벨 세션의 roster입니다. 서브에이전트는 여기 목록에 뜨지 않으니, 자식 상태는 get_command_or_subagent_output이나 부모 세션의 진행 표시로 확인하세요.

9-3. Worktree 격리

같은 저장소를 여러 작업 트리로 갈라 서로 간섭 없이 병렬 작업할 수 있습니다.

grok -w feat/payments            # --worktree : 새 worktree에서 세션 시작
grok -w feat/payments --ref main # 분기 기준 지정

grok worktree list               # worktree 관리 서브커맨드

10. Skills · Plugins · Hooks · MCP · Workflows

Skills

SKILL.md로 반복 절차를 고정합니다. 탐색 경로는 .grok/skills, .agents/skills이며, Claude·Cursor의 스킬 경로도 호환 스캔합니다 — 기존 자산을 그대로 재사용할 수 있습니다.

# 프로젝트 스킬
.grok/skills/<name>/SKILL.md
# 사용자 전역 스킬
~/.grok/skills/<name>/SKILL.md

Plugins & Marketplace

grok plugin list
grok plugin marketplace add <source>
grok plugin install <name>
⚠️ trust 게이트 — 설치했다고 바로 도는 게 아니다
플러그인이 품고 있는 hooks · MCP 서버 · LSP는 해당 소스를 신뢰(trust)해야 활성화됩니다. 마켓플레이스 정의는 .grok-plugin/marketplace.json이고, Claude의 .claude-plugin/ 구조와 호환됩니다.

Hooks

세션·도구·서브에이전트 생명주기에 셸 명령을 붙입니다.

훅도 플러그인과 마찬가지로 폴더 신뢰(folder trust)가 공통 게이트입니다. 신뢰하지 않은 폴더의 훅은 돌지 않습니다.

MCP

grok mcp list
grok mcp add <name>
grok mcp remove <name>
grok mcp doctor        # 연결 문제 진단

설정은 [mcp_servers.*]에 두고 stdio · HTTP · SSE 전송을 지원합니다. 세션 안에서는 /mcps로 관리하고, 모델은 search_tool/use_tool로 MCP 도구를 찾아 씁니다.

Workflows (Rhai)

Grok의 차별점 중 하나. Rhai 스크립트로 다단계·병렬 에이전트 절차를 코드로 적어둡니다.

11. Headless · ACP · Dashboard

Headless (-p) — CI에 꽂는 방법

grok -p "…" --output-format plain|json|streaming-json|streaming-messages-json

# 권한·격리·거부 규칙을 함께 건다
grok -p "…" --always-approve --sandbox strict --deny 'Bash(rm -rf *)'

# 도구 화이트/블랙리스트와 턴 상한
grok -p "…" --tools "read_file,grep" --disallowed-tools "Agent(explore)" --max-turns 20

# 세션 이어가기
grok -p "…" -r <세션ID>      # resume
grok -p "…" -c               # continue
grok -p "…" --fork-session   # 원본을 건드리지 않고 갈라서 실행
Claude Code 호환 별칭
--allowedTools, --dangerously-skip-permissions 같은 Claude 계열 플래그명을 그대로 받아줍니다. 기존 CI 스크립트를 옮길 때 유용합니다.
⚠️ -s 동작 — 확인 필요
공식 문서에는 -s가 "세션 생성 또는 재개"로 적혀 있고, 동봉 로컬 가이드에는 "새 UUID 생성만"으로 적혀 있습니다. 자동화에 쓰기 전에 실제 동작을 한 번 확인하세요.
⚠️ 헤드리스에서 Auto 모드
auto 모드는 위험 판정이 나면 프롬프트를 띄우려 하는데, 헤드리스에는 물어볼 사람이 없으므로 실패로 보고됩니다. 무인 실행이라면 dontAsk(allow 목록 기반) 또는 --always-approve + 샌드박스 조합을 쓰세요.

ACP — 에디터에 Grok을 붙이기

# stdio 모드 (에디터가 프로세스를 직접 띄움)
grok agent --always-approve stdio

# 서버 모드
grok agent --always-approve serve --bind 127.0.0.1:2419 --secret <토큰>

Dashboard

grok dashboard · 세션 안에서 /dashboard · 단축키 Ctrl+\. 탑레벨 세션 roster를 띄워 여러 작업을 오가며 관리합니다. 앞서 말했듯 서브에이전트는 목록에 없습니다.

12. 세션 저장 & Memory

세션

# 저장 위치
~/.grok/sessions/<인코딩된-작업경로>/<uuid>/

grok sessions          # 목록
grok export <id>       # 내보내기
grok import            # Claude Code 세션 가져오기 (세션 안에서는 /import-claude)
grok usage <id>        # 해당 세션 사용량
⚠️ /rewind는 파일을 되돌리지 않는다
되감기는 대화 기록만 이전 지점으로 돌립니다. 이미 수정된 파일은 그대로 남습니다. 파일 되돌리기는 git에 맡기세요 — 작업 전 브랜치를 따두는 습관이 최선입니다.

Memory — 실험적, 기본 off

세션을 넘어 지속되는 메모리 기능입니다. 기본적으로 꺼져 있고, 켜야 대부분의 명령이 의미를 갖습니다.

# 켜기 — 둘 중 하나
export GROK_MEMORY=1
# 또는 config.toml
[memory]
enabled = true
명령역할
/remember기억할 내용을 남긴다. 기능이 꺼져 있어도 항상 동작한다
/memory메모리 관리 UI
/flush · /dream정리·통합 작업 트리거
grok memory clear메모리 전체 삭제

13. 설정 계층 · 엔터프라이즈 · 네트워크

우선순위

높은 것이 낮은 것을 덮는다
CLI 플래그 → 환경변수 → requirements.toml / MDM 핀 → overlay → ~/.grok/config.toml → managed_config.toml → 기본값

requirements.toml이 사용자 설정보다 위에 있다는 점이 핵심이다 — 조직이 건 제약은 사용자가 config로 못 푼다.

파일역할
~/.grok/config.toml사용자 전역 설정
.grok/config.toml (프로젝트)주로 MCP · 플러그인 · 권한
/etc/grok/managed_config.toml
~/.grok/managed_config.toml
관리형 기본값
requirements.toml (user/system)조직 강제 핀 — 모델·인증·bypass 금지 등

관리형 설정을 내려받는 명령은 grok setup입니다.

네트워크 · 관측

14. 키보드 단축키

키 기능
Shift+Tab 권한 모드 순환 — Normal → Plan → (Auto) → Always-approve
Ctrl+O always-approve(bypassPermissions) 토글
Ctrl+\ Dashboard 열기
Ctrl+W Dashboard에서 worktree 화면
Tab 프롬프트 ↔ 스크롤백 포커스 전환
Ctrl+C / Ctrl+D 현재 생성 취소 / 세션 종료
Ctrl+K / Ctrl+J 한 줄 스크롤
PageUp / PageDown 페이지 단위 스크롤
y 선택 블록 클립보드 복사 (Vim 모드)
/vim-mode Vim 스타일 스크롤백 키바인딩 토글

15. Claude Code ↔ Grok Build 매핑

Claude Code를 쓰던 사람이 같은 일을 Grok에서 어떻게 하는지 정리했습니다. 이름이 같아도 범위가 다른 항목은 비고에 적어 두었습니다.

Claude Code Grok Build 비고
claude TUI grok TUI Grok은 /minimal ↔ /fullscreen
claude -p / Agent SDK grok -p / grok agent stdio|serve ACP는 Grok의 강점 — 에디터 연동이 1급 시민
권한 모드 + Auto 분류기 ask / acceptEdits / auto / dontAsk / always-approve 양쪽 다 Auto ≠ 전부 승인
Plan Mode (Shift+Tab) /plan · enter_plan_mode Grok은 plan.md 게이트가 별도. 자식은 게이트 미상속
서브에이전트 spawn_subagent + agents/personas Grok은 worktree 격리가 내장
Agent view (claude agents) /dashboard Grok Dashboard는 탑레벨 세션만 보여준다
Agent teams (실험) Rhai workflow · 병렬 서브에이전트 같은 목적, 접근 방식이 다르다
/clear /new · /clear 동일
/compact /compact Grok은 85% 부근 자동 압축
CLAUDE.md AGENTS.md (+ CLAUDE.md 호환) 더 깊은 경로의 파일이 우선
.claude/settings.json [permission] + Claude 설정 병합 기존 allow/deny를 재사용
managed-settings (관리형) /etc/grok/requirements.toml 조직 강제 핀
Skills / Hooks / MCP / Plugins 동명 계열 Grok이 Claude·Cursor 경로도 스캔
--dangerously-skip-permissions --always-approve · --yolo Grok은 deny·hooks가 계속 산다
Bash / Edit / Read 도구 run_terminal_command / search_replace / read_file —
Sandbox (Seatbelt / bubblewrap) 프로필 5종 (Landlock / Seatbelt) Grok은 기본 off — 명시적으로 켜야 한다
Memory / # GROK_MEMORY + /remember·/flush·/dream Grok 메모리는 실험적·기본 off
/loop · Monitor /loop · monitor · Rhai workflow 자동화 폭은 Grok이 넓다
/goal /goal (+ workflows) —
Worktrees -w / isolation: worktree / grok worktree —
세션 가져오기 grok import · /import-claude Claude → Grok 이주 경로
ANTHROPIC_BASE_URL (게이트웨이) [model.*] base_url Grok은 모델 단위로 엔드포인트를 건다
Chrome / computer use 웹 도구 · Imagine 계열 범위가 다르다 — 1:1 대응 아님
Remote Control (폰에서 조작) 직접 대응이 약함 확인 필요 — 동등 기능을 단정하지 말 것
SOCKS 프록시 HTTPS_PROXY 계열만 문서화 Claude는 공식 미지원. Grok의 SOCKS 지원 여부는 확인 필요
Claude Code에서 넘어올 때 추천 순서
  1. grok import로 기존 세션을 가져오고, AGENTS.md를 정리한다 (CLAUDE.md도 읽히지만 한 곳으로 모으는 편이 낫다).
  2. Shift+Tab을 눌러 Auto와 Always-approve가 추가된 순환을 몸에 익힌다.
  3. 큰 작업은 /plan으로 시작하고, 계획 중 조사는 편집 권한 없는 explore 자식에게 맡긴다.
  4. CI로 옮길 작업은 grok -p + --sandbox + --deny로 감싼다.

16. Grok 프롬프트 작성 팁

1. 도구를 의식해서 말하기

Grok은 도구를 통해 작업합니다. "파일 읽고 수정해"보다 도구를 지정하면 훨씬 정확해집니다.

좋은 예:
먼저 @index.html 의 Program 섹션을 read_file로 확인하고,
새 항목을 추가할 위치를 grep으로 특정한 뒤,
search_replace로 정확히 한 군데만 고쳐줘.

나쁜 예:
Grok 가이드 메뉴 좀 추가해줘.

2. 큰 작업은 /plan부터

/plan 인증 모듈 리팩토링

# 또는 대화로 유도
이건 아키텍처 영향이 커. enter_plan_mode로 먼저 계획을 세우고,
승인 후에 todo_write로 단계를 정의해줘.

3. 병렬화는 명시적으로

조사·구현·검증을 동시에 돌리고 싶다면 몇 개를, 어떤 타입으로, background 여부까지 말해주세요. 편집이 일어나면 안 되는 조사에는 explore를 지정합니다.

4. 정확한 위치 지정

search_replace는 정확한 old_string을 요구합니다. "대략 이 부분"보다 함수명·주변 두세 줄을 함께 알려주는 편이 실패가 적습니다.

5. 위험 작업은 권한이 아니라 격리로 막기

# "조심해서 해줘"는 안전장치가 아니다. 실제로 막는 건 이것들이다.
grok --sandbox workspace --deny 'Bash(rm -rf *)' --deny 'Read(.env)'

6. 애매하면 되묻게 하기

선택지가 갈리는 작업에서는 ask_user_question을 쓰라고 지시하세요. 모델이 임의로 정해버리고 한참 진행한 뒤 되돌리는 비용이 훨씬 큽니다.

17. 체크리스트 & 실전 패턴

새 프로젝트에서 처음 켤 때

  1. grok --version으로 버전 확인, 필요하면 grok update
  2. grok models로 기본 모델이 무엇인지 직접 확인 (4.5/4.6 문서 불일치 주의)
  3. grok doctor · grok inspect --json으로 환경 점검
  4. AGENTS.md에 프로젝트 규칙을 적어둔다
  5. 위험 명령을 deny 규칙에 넣고, 남의 코드라면 --sandbox workspace부터

큰 작업 루틴

  1. /new로 깨끗한 세션
  2. /plan <설명> → /view-plan으로 검토 → exit_plan_mode에서 a 승인
  3. todo_write로 단계 정의
  4. 조사는 explore 자식에게, 구현은 isolation: worktree 자식에게
  5. 수정은 search_replace, 진행은 get_command_or_subagent_output으로 확인
  6. 끝나면 /compact 또는 /new

CI에 붙일 때

  1. XAI_API_KEY 주입 (모델별 api_key가 있으면 그게 먼저 쓰인다는 점 유의)
  2. GROK_DISABLE_AUTOUPDATER=1로 실행 중 버전 변동 차단
  3. grok -p + --output-format json + --max-turns
  4. 권한은 dontAsk(allow 목록) 또는 --always-approve + --sandbox strict
  5. --deny로 파괴적 명령을 명시 차단
기본 원칙
모호하면 /plan → 단계는 todo_write → 수정은 search_replace → 위험은 sandbox + deny → 반복은 Skill·Workflow로
기준: grok 1.0.24 (2026-09) · 참고 자료: docs.x.ai/build · CLI reference · Enterprise · github.com/xai-org/grok-build · 동봉 유저 가이드(~/.grok/docs/user-guide/) · grok inspect