# diting **Repository Path**: cn_feiry/diting ## Basic Information - **Project Name**: diting - **Description**: 谛听 (DITING) 一款 Claude Code 会话监控桌面应用,用于实时追踪和分析 Claude Code CLI 的工作状态、任务进度和工具调用情况。 - **Primary Language**: Rust - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-02 - **Last Updated**: 2026-05-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: claude, Rust, tauri, Vue ## README # 谛听 (DITING) 一款 Claude Code 会话监控桌面应用,用于实时追踪和分析 Claude Code CLI 的工作状态、任务进度和工具调用情况。 **特点:绿色免安装,单文件运行,无需额外依赖。** ![Tauri](https://img.shields.io/badge/Tauri-2.11-blue) ![Vue](https://img.shields.io/badge/Vue-3.x-green) ![Rust](https://img.shields.io/badge/Rust-1.70+-orange) ## 界面预览 ### 仪表盘 ![仪表盘](screenshots/dashboard.png) ### 会话详情 ![会话详情](screenshots/session_detail.png) ## 功能特性 - 📊 **仪表盘**:实时显示活跃会话数、工具调用总数、已完成任务数 - 🔄 **自动刷新**:每 5 秒自动检测会话状态变化 - 🎯 **进程检测**:自动检测会话进程是否存活,准确显示真实状态 - 🌐 **国际化**:支持中英文切换 - 🎨 **赛博朋克主题**:炫酷的视觉效果和动画 --- ## 系统要求 ### 操作系统 目前仅支持 **Windows**(Windows 10/11)。 ### Agent 支持 目前仅支持 **Claude Code**(Anthropic 官方 CLI 工具)。 --- ## 环境准备 在开始之前,请确保你的开发环境已安装以下工具: ### 1. Node.js - 版本要求:18.x 或更高 - 下载地址:https://nodejs.org/ - 验证安装: ```bash node -v npm -v ``` ### 2. Rust - 版本要求:1.70 或更高 - 安装方式: - Windows:下载 [rustup-init.exe](https://rustup.rs/) 并运行 - 或使用命令:`winget install Rustlang.Rustup` - 验证安装: ```bash rustc -v cargo -v ``` ### 3. 构建工具 (Windows) 安装 Visual Studio Build Tools 或完整的 Visual Studio,需要包含: - C++ 构建工具 - Windows SDK 下载地址:https://visualstudio.microsoft.com/visual-cpp-build-tools/ --- ## 快速开始 ### 1. 克隆项目 ```bash git clone https://gitee.com/cn_feiry/diting.git cd diting ``` ### 2. 安装依赖 ```bash npm install ``` ### 3. 开发模式运行 ```bash npm run tauri dev ``` 此命令会: - 启动 Vite 开发服务器(前端热更新) - 编译 Rust 后端 - 打开应用窗口 --- ## 打包 EXE ### 构建命令 ```bash npm run tauri build ``` ### 构建过程说明 1. **前端构建**:Vite 编译 Vue/TypeScript 代码,输出到 `dist/` 目录 2. **Rust 编译**:Cargo 编译 Rust 代码,启用 Release 优化 3. **资源嵌入**:Tauri 将前端资源嵌入 Rust 可执行文件 4. **输出文件**:生成 `diting.exe` ### 构建产物位置 ``` src-tauri/target/release/diting.exe ``` ### 构建优化配置 项目已配置以下 Release 优化(`Cargo.toml`): ```toml [profile.release] strip = true # 移除符号表,减小体积 lto = true # 链接时优化 codegen-units = 1 # 单编译单元,更好的优化 panic = "abort" # panic 直接终止,减小体积 ``` ### 预期产物大小 - EXE 文件:约 4-5 MB - 无需安装,双击即可运行 --- ## 项目结构 ``` diting/ ├── src/ # 前端源码 (Vue 3 + TypeScript) │ ├── views/ # 页面视图 │ │ ├── Dashboard.vue # 仪表盘 │ │ ├── Sessions.vue # 会话列表 │ │ └── SessionDetail.vue # 会话详情 │ ├── stores/ # 状态管理 (Pinia) │ ├── services/ # API 服务 │ ├── components/ # 可复用组件 │ └── locales/ # 国际化 (中/英) │ ├── src-tauri/ # Rust 后端源码 │ ├── src/ │ │ ├── lib.rs # 应用初始化、文件监听 │ │ └── commands/ # Tauri 命令(数据读取) │ ├── tauri.conf.json # Tauri 配置 │ ├── Cargo.toml # Rust 依赖配置 │ └── capabilities/ # Tauri 2.x 权限配置 │ ├── docs/ # 文档 │ ├── 使用说明.md │ └── 项目架构说明.md │ ├── package.json # Node.js 依赖 ├── vite.config.ts # Vite 配置 └── README.md # 本文档 ``` --- ## 技术栈 | 层级 | 技术 | 版本 | 说明 | |------|------|------|------| | 桌面框架 | Tauri | 2.11 | Rust + WebView,轻量跨平台 | | 前端框架 | Vue 3 | 3.x | Composition API | | 构建工具 | Vite | 8.x | 快速构建 | | 状态管理 | Pinia | 3.x | Vue 官方状态管理 | | 路由 | Vue Router | 4.x | SPA 路由 | | 国际化 | vue-i18n | 9.x | 多语言支持 | | 类型系统 | TypeScript | 5.x | 类型安全 | | 后端语言 | Rust | 1.70+ | 高性能系统语言 | --- ## 界面说明 ### 仪表盘 (Dashboard) - **统计卡片**:活跃会话数、工具调用总数、已完成任务数、平均运行时长 - **会话概览**:横向滚动的会话卡片列表 - **工具分布**:常用工具调用统计 - **资源趋势**:CPU 和内存使用情况 ### 会话列表 (Sessions) - **筛选功能**:按 ID/路径搜索,按状态筛选 - **网格布局**:卡片形式展示所有会话 - **状态排序**:运行中 > 等待中 > 已完成 > 已停止 ### 会话详情 (SessionDetail) - **状态动画**:直观显示会话状态 - **进度环**:圆形进度指示器 - **工具时间线**:按时间顺序展示工具调用记录 --- ## 状态说明 | 状态 | 含义 | 颜色 | |------|------|------| | running | 正在运行 | 🟢 绿色 | | idle | 空闲等待 | 🟡 黄色 | | completed | 已完成 | 🔵 蓝色 | | stopped | 已停止 | 🔴 红色 | --- ## 数据来源 应用从 Claude Code CLI 的数据目录读取会话信息: ``` ~/.claude/sessions/*.json # 会话元数据 ~/.claude/projects/**/*.jsonl # 项目事件日志 ``` --- ## 常见问题 ### Q: npm install 很慢怎么办? 建议使用国内镜像: ```bash npm config set registry https://registry.npmmirror.com npm install ``` ### Q: Rust 编译很慢? 首次编译需要下载和编译依赖,后续编译会快很多。可以使用国内镜像加速: 在 `~/.cargo/config` 中添加: ```toml [source.crates-io] replace-with = 'ustc' [source.ustc] registry = "https://mirrors.ustc.edu.cn/crates.io-index" ``` ### Q: 构建时报错找不到 Visual Studio? 确保已安装 Visual Studio Build Tools,并勾选了 "C++ 桌面开发" 工作负载。 ### Q: 应用启动后没有数据显示? 确保 Claude Code CLI 有过运行记录,数据文件存在于 `~/.claude/` 目录下。 ### Q: 如何只复制 EXE 给别人使用? 只需复制 `src-tauri/target/release/diting.exe` 文件即可,无需其他依赖。对方双击运行即可。 --- ## 许可证 MIT License ## 贡献 欢迎提交 Issue 和 Pull Request!