# 把 Claude Code 装进微信：一种把 AI 编码 Agent 推入口袋的工程范式

> 来源：微信公众号「星河里的小黄鱼」《把 Claude Code 装进微信：Windows 完整接入教程》
> 原文链接：https://mp.weixin.qq.com/s/lRZWV_G0o3-RqezWwlRpFQ
> 本文为方法论拆解与 SOP 提炼，不直接搬运原文代码；如需完整脚本请回原文章末附录。
> 版权标注：仅用于个人学习与非商用场景，禁止商用。

---

## 一、为什么是「微信 + Claude Code」组合

AI 编码 Agent 强在终端，弱在入口。所有桌面 IDE 都不天然随身——开发者一旦离开电脑，就与自己的 AI 助手失联。这篇文章给出了一种解法：**把命令行 Agent 嵌入即时通讯**。

三件套各司其职：

- **微信 ClawBot 插件**：入口，提供移动端、消息收发、文件图片支持
- **cc-wechat MCP Server**：通道，把微信消息按 MCP 协议喂给 Claude Code
- **Claude Code 原生 exe**：大脑，做实际的编码 / 检索 / 文件处理

这套组合的本质是**用 IM 替代终端 UI**，让 Agent 触达性从桌面延伸到口袋。

## 二、环境门槛（先确认）

部署前必须满足三个硬性条件：

1. **Claude Code CLI 已就绪**：终端执行 `claude --version` 不报错；失败时用 `npm i -g @anthropic-ai/claude-code` 重装。
2. **微信 ClawBot 插件已启用**：路径为「我 → 设置 → 插件」，未启用将无法收到消息。
3. **非 Max 订阅用户**：默认被服务端灰控，Channels 不可用；需要走二进制 patch 解锁（详见下文）。

## 三、5 步接入 SOP

### Step 1：CLI 自检

终端执行 `claude --version`，失败则重装。

### Step 2：安装微信通道

执行 `npx -y cc-wechat@latest install`，终端会弹出二维码，微信扫描确认登录。凭据自动保存到本地，后续无需重复扫码。

### Step 3：解锁 Channels 功能（最关键）

非 Max 订阅用户启动后会出现 `Channels are not currently available`。根本原因是 Claude Code 原生 exe 内 `tengu_harbor` 功能开关默认返回 `false`。

**解决思路**：对 exe 做二进制补丁。核心步骤：
- 用 Node.js 脚本按 `latin1` 编码读取整个 exe
- 用正则定位特征串 `function X(){return Y("tengu_harbor",!1)}`
- 保持长度对齐，把 `!1` 替换为 `!0`
- 第一次运行自动备份为 `claude.exe.bak`
- 原位写入失败时降级输出 `claude.exe.patched`，用户手动 `Move-Item` 覆盖

> 关键提示：执行前先关掉所有 Claude Code 窗口，否则文件被占用。

### Step 4：创建一键启动脚本

新建 `start.ps1`，核心作用：
- 启动 Claude Code 并挂载微信频道
- 设置权限模式为 `acceptEdits`（兼顾便利与安全）
- 崩溃后自动 5 秒重启
- 终端窗口标题设为 `ClawBot`，便于任务栏识别

启动参数固定为：
- `--dangerously-load-development-channels`
- `server:wechat-channel`
- `--permission-mode acceptEdits`

### Step 5：启动并验证

执行 `powershell -ExecutionPolicy Bypass -File start.ps1`。终端保持打开（可最小化）。去微信搜索「微信 ClawBot」发首条消息。第一次运行 Claude Code 会弹安全警告，手动确认即可。

## 四、权限模式如何选

| 模式 | 体验 | 风险 | 适用场景 |
|---|---|---|---|
| `confirm` | 每次操作需确认 | 低 | 极度敏感任务 |
| `acceptEdits` | 自动接受文件编辑，其它仍确认 | 中 | **推荐**——微信对话最佳平衡点 |
| `bypassPermissions` | 全部放行 | 高 | 受控沙箱或可信任务 |

微信对话讲究流畅，`confirm` 模式会打断节奏；`bypassPermissions` 又过于危险。**`acceptEdits` 是流畅与安全的最佳平衡点**。

## 五、链路架构

```
微信 ClawBot 插件
   ↕ ilink API
cc-wechat（MCP Server，长轮询消息）
   ↕ MCP Channel 协议
Claude Code 原生 exe（已打 tengu_harbor 补丁）
   ↕ Anthropic 兼容 API
DeepSeek / Claude / 其他模型
```

消息流向：微信 → cc-wechat → Claude Code → 模型 API → 原路返回。

## 六、如果后悔了，怎么恢复？

1. 恢复原始 exe：`Move-Item -Force claude.exe.bak claude.exe`
2. 移除 MCP server：`claude mcp remove wechat-channel -s user`

## 七、避坑要点

- 二进制 patch 修改客户端文件，**存在违反 Anthropic ToS 风险**，仅个人学习使用
- patch 前必须关闭所有 Claude Code 窗口，否则降级到 `.patched` 需手动覆盖
- 微信必须先启用 ClawBot 插件，否则 install 完成也无法收消息
- 终端关闭 = 微信断连，必须保持 start.ps1 窗口运行
- 第一次运行会弹安全警告，需手动确认
- acceptEdits 模式自动接受文件编辑，危险指令需在 Prompt 层加防御

## 八、可移植的方法论

这套「CLI Agent + MCP Channel + IM 入口」的范式不只适用于微信。理论上 Telegram Bot、Discord Bot、企业微信、飞书机器人都可以复用：

1. 准备一个 MCP Server，封装对应 IM 的消息收发（长轮询或 Webhook）
2. 在 Claude Code 启动参数中替换 `server:wechat-channel` 为新通道名
3. 用同样的 `start.ps1` 模式做常驻与自愈

这是把任意 IM 变成 AI Agent 前台的标准三步法。
