증거 등급 확립
소스 코드, 저장소 문서, 공식 공개 문서, 로컬 스냅샷 관찰을 구분합니다.
Grok Build 측은 소스 코드를 드릴다운할 수 있고, Claude Code 측은 공식 공개 행동만 기록합니다. 두 열의 증거 해상도가 다르므로, 빈칸은 추론으로 채우지 않고 그대로 둡니다.
소스 코드, 저장소 문서, 공식 공개 문서, 로컬 스냅샷 관찰을 구분합니다.
런타임, 도구, 컨텍스트, 보안, 복구, 생태계 측면에서 공개 능력을 비교합니다.
"누가 더 좋은가"를 제약 조건, 팀 역량, 납품 시나리오의 매칭으로 재구성합니다.
| 차원 | Grok Build | Claude Code 공개 행동 |
|---|---|---|
| 구현 및 배포 | Rust Cargo workspace, 기능별 여러 crate로 분리; README에서 소스 빌드 진입점 제공. R1 · S1 | 공식 진입점: 터미널 CLI, IDE, Desktop, Web. 내부 언어 및 모듈 경계는 이 강좌의 결론 범위 밖. P1 |
| 상태 및 동시성 | SessionActor가 세션 기록과 도구 컨텍스트를 보유하며 Tokio LocalSet에서 실행; 백그라운드 태스크가 독립적으로 메시지를 반환할 수 있음.S2 | 공개 문서는 세션, 백그라운드 태스크, subagent, agent teams의 사용자 행동을 설명; 내부 동시성 모델은 추론하지 않음. P5 |
| 도구 계약 | ToolKind 열거형이 capability 필터링에 진입하며 새 variant에 컴파일 타임 동기화 어설션 존재; MCP 도구는 Other로 매핑.S3 | 공개 권한 규칙은 Read, Edit, Write, Bash, WebFetch, MCP 등 도구명 및 매개변수 패턴으로 allow, ask, deny를 제어. P6 |
| 도구 발견 | 내장 도구는 직접 등록; MCP 메타데이터는 스냅샷과 BM25 인덱스에 진입하며 search_tool / use_tool을 통해 지연 발견.S4 | 공식 문서: Tool Search가 MCP 도구를 온디맨드로 로드할 수 있으며 지연 연결 대기 및 실패 피드백 지원. P3 |
| 컨텍스트 압축 | 소스에 compaction 구성, 분할, two-pass, full-replace, recap 보조 경로 포함; 자동 압축 및 복구 테스트 가능. S5 | 공개 행동: 자동 압축, /compact, compact instructions; 내부 알고리즘은 이 강좌에서 다루지 않음.P4 |
| 장기 기억 | xai-grok-memory가 SQLite 스토리지, FTS, embedding, MMR, Dream 정리 워크플로우를 구현하며 세션 메모리 상태에 통합.S6 | 공개 메커니즘: 계층적 CLAUDE.md 지시 및 auto memory; 범위와 로딩 규칙은 공식 문서에 설명.P4 |
| Hooks | 소스에 15개 이벤트 열거; PreToolUse 차단 가능. 명시적 deny는 차단, Hook 충돌·타임아웃·실패 출력은 fail-open. JSON으로 구성.S7 · R2 | 공식 Hooks reference: 여러 이벤트 유형, matcher, if 조건, command/HTTP/MCP tool/prompt/agent 핸들러 공개; PreToolUse는 거부 반환 가능.P2 |
| MCP | 소스에서 클라이언트 역할 확인; stdio, Streamable HTTP, OAuth, server__tool, 동적 capability 갱신, 상태 병합 및 재시작 지원. 범용 MCP Server 진입점 미확인.S8 · R3 | 공식 문서: 원격 HTTP, 로컬 stdio, WebSocket, OAuth, 동적 list_changed, Tool Search, 연결 관리 공개.P3 |
| 권한 및 샌드박스 | ToolKind capability 필터링, 권한 프롬프트, 플랫폼 샌드박스 코드가 다층 제어를 구성; Hook 실패 정책은 강제 보안 보증을 담당하지 않음.S3 · S7 | 공식 문서: allow, ask, deny 규칙, managed settings, sandboxed Bash 및 파일 시스템, 네트워크 격리 구성 공개. P6 |
| Subagent | 소스에 fork, 태스크, worktree 풀, completed subagent worktree 스냅샷 구성 포함; 분기 태스크를 격리된 worktree에 배치 가능. S9 | 공식 subagent는 독립적인 컨텍스트, 도구, 권한 보유; 포그라운드 또는 백그라운드 실행 가능; worktree isolation 구성 가능. P5 |
| 플러그인 생태계 | Marketplace가 인덱싱 및 디렉터리 폴백 지원, 설치 registry가 출처 저장; 런타임은 scope, enabled, plugin-root trust로 컴포넌트 제어. S10 · R4 | 공식 플러그인 및 마켓플레이스 문서: skills, agents, hooks, MCP servers, LSP servers, 설치 범위 공개. P7 |
| 복구 및 가관측성 | 소스에 세션 영속성, MCP 상태 알림, 50ms 이벤트 병합, 재시작 백오프, telemetry enum, 구조화 이벤트 포함. S11 | 공식 가시 행동: session resume, verbose/debug, Hooks 상태, MCP 패널, 권한 진단; 내부 영속성 토폴로지는 추론하지 않음. P1 · P3 |
| 소스 코드 및 거버넌스 | 저장소 스냅샷으로 소스 코드 공개; README: 주기적으로 monorepo에서 동기화, 루트 Cargo.toml은 생성 프로세스 산출물, 외부 기여 미수락.R1 · R5 | 이 열은 공식 공개 제품 문서 기반; 불가시 내부 구현은 비교 사실로 사용하지 않음. P1 |
/// An actor representing an ACP session
/// with its own chat history and tool context.
pub struct SessionActor {
pub(super) agent: RefCell<Agent<ThreadedMvpAgent>>,
...
}crates/codegen/xai-grok-shell/src/session/acp_session.rsconst _: () = assert!(
ALL_TOOL_KINDS.len() == ToolKind::VARIANT_COUNT,
"ALL_TOOL_KINDS is out of sync"
);이러한 어설션은 "도구 추가 후 권한 결정 추가"를 컴파일 타임 제약으로 만듭니다.
crates/codegen/xai-grok-workspace/src/capability.rs이 두 조건 세트는 동시에 존재할 수 있습니다. 실제 솔루션은 프로젝트, 데이터 등급, 팀 역할에 따라 조합하여 사용할 수도 있습니다.
제출물
2페이지 선택 메모
이 24강에서 최종적으로 남겨야 할 역량은 구현 사실, 제품 행동, 추론, 미지 항목을 분리하는 것입니다. 증거 등급이 명확해진 후에야 아키텍처 트레이드오프에 검증 가능한 근거가 생깁니다.
소스 코드 스냅샷 설명: Grok 측은 로컬 grok-build-main 스냅샷을 기반으로 하며, Claude 측은 2026년 7월 접근 가능한 공식 공개 문서를 기반으로 하여 사용자 가시 행동만 서술합니다. 소스 코드 조각은 교육 목적으로 발췌되었습니다. 표의 빈 경계는 의도적으로 보존된 미지 항목입니다.