← ClaudeAtlas

cli-doctorlisted

Read-only diagnosis of installed CLI tools, package-manager versions, outdated status, dependency coupling, and upgrade risks. Use when a user asks in any language to check, diagnose, audit, review, verify, inspect, or troubleshoot CLI tools, command-line utilities, developer tools, or package versions. Example intents: “帮我检查或诊断 CLI 工具版本状态”, “check or audit my CLI tool versions”, “CLIツールのバージョンと更新状況を確認”, “revisar las versiones de mis herramientas CLI”. Covers Homebrew, global npm packages, Python/pip, Rust/Bun/uv, and CLIs without a unified update channel. Produces a fixed-category, fixed-section, seven-field Markdown decision report directly in the conversation. Do not use for project-only dependency updates, and never perform upgrades without explicit authorization.
MaxHou-infinity/cli-doctor · ★ 0 · Data & Documents · score 57
Install: claude install-skill MaxHou-infinity/cli-doctor
# cli-doctor Skill ## 何时使用 - 用户想了解本机 CLI 相关工具**版本现状 / 谁需要升级 / 升级风险**。 - 用户升级前想评估:哪些是工具、哪些是依赖库、彼此耦合、升级风险。 - 升级完成后用于**验证**是否全部到位(此时应看到"无待升级项"或只剩刻意保留项)。 ## 铁律(安全边界) 1. **只读检查,绝不自动升级。** 未经用户明确同意(且给出范围),不执行任何 `brew upgrade` / `npm i -g` / `pip install -U` / `rustup update` 等写操作。 2. 报告必须能让用户**自己拍板**:每条给出 当前版本 / 最新版本 / 手动升级命令 / 作用 / 耦合 / 风险。 3. 升级正在运行的 CLI 自身(如 dsh)需提醒避开运行期;npm 12+ 有 install 脚本拦截;brew 服务类升级后需重启服务。 ## 执行步骤 ### 第 1 步:采集数据 运行 Skill 自带 CLI 的 JSON 模式,作为 Agent 分析输入: ```bash node <本skill目录>/bin/check.js --json ``` > 通过 npx 从 GitHub 源运行时,npm 12+ 需加放行参数: > `npx --yes --allow-git=all github:MaxHou-infinity/cli-doctor [--json|--fast]` > (也可一次性 `npm config set allow-git all`。) 可选参数:`--fast`(跳过网络刷新与版本比对)、`--no-update`(跳过 brew update)、`--pypi-index <url>`(指定 pip 镜像)。 若本机没有 node / 没有仓库副本,用下面"手工回退命令表"逐项采集。 ### 第 2 步:分类与分块(报告骨架固定) - **一级分类**:工具类 / 依赖包类 - **二级分块**:Homebrew、npm 全局、Python/pip、Rust·Bun·uv 自管理、无统一升级渠道 CLI - 判定标准(CLI 已自动做,手工时按此): - Homebrew:`brew leaves` = 工具类;`brew outdated` 中非 leaves = 依赖库。 - npm 全局:顶层包基本全是工具;判断是否提供命令看其 package.json 的 bin。 - pip:**反查 console_scripts**(有入口的才是 CLI 工具),其余 90% 是依赖库 —— 不要把 158 个库全列成"工具"。 - rust:rustup 组件(rustc/clippy/rustfmt)≠ cargo install 的第三方工具;uv tools 单独列。 - 无统一渠道:hermes/agy/bsk/browse-now/luckin 等,各自自查,不做自动版本比对。 ### 第 3 步:生成最终报告(强制输出契约) 默认直接在 Agent 对话中输出 Markdown,不创建额外文件。CLI 的 Markdown 模式只是采集层摘要,**不得直接复制为 Skill 的最终答案**。 报告层级和顺序固定: 1. **工具类** - Homebrew - npm 全局 - Python / pip - Rust / Bun / uv 等自管理工具 -