一键导入
inspect-claude-binary
Determine what type of Claude Code binary you have (JS bundle vs Bun ELF), its version, and what patchable strings are present.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Determine what type of Claude Code binary you have (JS bundle vs Bun ELF), its version, and what patchable strings are present.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Validate that Claude Code channel patching was applied correctly. Use after running the patcher to confirm both patches took effect.
Checklist for safely upgrading Claude Code version with channel patching. Use before upgrading any agent's Claude Code installation.
Core methodology for patching Bun-compiled Claude Code binaries. Use when implementing or updating the channel patcher for ELF binaries.
基于 SOC 职业分类
| name | inspect-claude-binary |
| description | Determine what type of Claude Code binary you have (JS bundle vs Bun ELF), its version, and what patchable strings are present. |
# Find the real binary path
CLAUDE_BIN=$(readlink -f "$(which claude)")
# Check file type
file "$CLAUDE_BIN"
Node.js script executable, ASCII text — has #!/usr/bin/env node shebangELF 64-bit LSB executable, x86-64 — compiled native binary (~245MB)| Versions | Format | Size |
|---|---|---|
| v2.1.94 - v2.1.112 | JS bundle (cli.js) | ~13MB |
| v2.1.113+ | Bun ELF binary (bin/claude.exe) | ~245MB |
v2.1.112 is the last JS-based version. v2.1.113 is the first Bun binary (Bun v1.3.13).
# File size (JS ~13MB, binary ~245MB)
wc -c "$CLAUDE_BIN"
# First bytes — JS has shebang, ELF has magic header
head -c 20 "$CLAUDE_BIN"
# Key export mappings — reveals minified function names
strings "$CLAUDE_BIN" | grep 'isChannelAllowlisted:()=>'
strings "$CLAUDE_BIN" | grep 'DevChannelsDialog:()=>'
# Other useful markers
strings "$CLAUDE_BIN" | grep -c 'bun' # ~1480 hits confirms Bun runtime
strings "$CLAUDE_BIN" | grep 'I am using this for local development'
The export mappings follow the pattern EXPORTNAME:()=>FUNCNAME — use the FUNCNAME to find the actual function body in the embedded JS source.
Full investigation evidence in docs/research/patcher-investigation/.