# 客户端代码整合设计 ## 目标 将分散在 `src/cli/` 和 `src/client/` 的客户端代码整合到 `src/client/` 目录。 ## 变更 ### 目录结构 ``` src/ ├── client/ # 整合后的客户端模块 │ ├── mod.rs # 主程序入口 (run 函数) │ ├── input.rs # InputHandler + InputCommand (从 cli/input.rs 合并) │ └── channel.rs # CliChannel (从 cli/channel.rs 合并) ├── cli/ # 删除 └── protocol.rs # 保留 ``` ### 关键变更 | 变更 | 说明 | |------|------| | `InputEvent::Message(String)` | 简化为只携带文本内容,不再使用 `ChatMessage` | | `cli` 模块删除 | 代码合并到 `client` | | 解耦 | `client` 不再依赖 `bus::ChatMessage` | ## 实施步骤 1. 创建 `src/client/input.rs` - 从 `cli/input.rs` 合并,修改 `InputEvent::Message` 为 `String` 2. 创建 `src/client/channel.rs` - 从 `cli/channel.rs` 直接复制 3. 更新 `src/client/mod.rs` - 更新 import 4. 更新 `src/lib.rs` - 删除 `pub mod cli;` 5. 删除 `src/cli/` 目录 ## 验证 - `cargo build` 通过 - 功能保持不变