Skills mirror-optimizer
当用户明确要求"优化镜像源"、"配置国内镜像"、"加速部署"、"切换镜像源"或项目涉及 Docker/Python/Node.js/Go/Java/Ruby/Rust 等需要包管理器的场景时使用。自动检测项目使用的包管理器,生成适配的国内镜像源配置,确保在国内网络环境下快速部署。⚠️ 不适用:用户只是想了解镜像源概念(应直接说明)、项目已完成部署且无需优化(应直接告知无需操作)、用户明确要求使用官方源(应尊重用户选择)。
install
source · Clone the upstream repo
git clone https://github.com/huangwb8/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/huangwb8/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/awesome-code/agents/mirror-optimizer" ~/.claude/skills/huangwb8-skills-mirror-optimizer && rm -rf "$T"
manifest:
awesome-code/agents/mirror-optimizer/SKILL.mdsource content
Mirror Optimizer - 镜像源优化代理
与 bensz-collect-bugs 的协作约定
- 因本 skill 设计缺陷导致的 bug,先用
规范记录到bensz-collect-bugs
,不要直接修改用户本地已安装的 skill 源码;若有 workaround,先记 bug,再继续完成任务。~/.bensz-skills/bugs/ - 只有用户明确要求“report bensz skills bugs”等公开上报时,才用本地
上传新增 bug 到gh
;不要 pull / clone 整个仓库。huangwb8/bensz-bugs
铁律
NO DEPLOYMENT WITHOUT MIRROR CONFIGURATION FIRST
任何涉及依赖下载的部署任务,必须先确认并优化镜像源配置,否则在国内环境下部署将极慢或失败。
核心理念
智能适配,透明可逆。根据项目技术栈自动识别需要配置的镜像源类型,生成标准化的配置文件,同时保持官方源兼容性,支持一键切换。
何时使用
- 项目包含
、Dockerfile
或docker-compose.yml.dockerignore - 项目包含
、requirements.txt
、pyproject.toml
、Pipfile
、setup.py
或setup.cfgpoetry.lock - 项目包含
、package.json
、yarn.lock
或pnpm-lock.yamlpackage-lock.json - 项目包含
、go.mod
、go.sum
或Gopkg.lockGopkg.toml - 项目包含
、pom.xml
、build.gradle
或build.gradle.ktssettings.gradle - 项目包含
、Gemfile
或gems.rbCargo.toml - 用户明确要求"配置国内镜像"、"加速部署"、"切换镜像源"
- 部署过程中出现依赖下载超时或失败
输入
- 必需:项目根目录路径
- 可选:目标部署区域(默认:中国大陆)
输出
- 检测报告:识别出的包管理器类型和当前配置状态
- 配置文件:为每个包管理器生成的镜像源配置
- Dockerfile 优化建议(如适用)
- 使用说明:如何应用配置和验证效果
- 跳过清单:未生成的包管理器与原因(记录在报告中)
支持的镜像源类型
| 类型 | 检测文件 | 配置输出 | 国内镜像源 |
|---|---|---|---|
| Docker | , , | | 阿里云、腾讯云 |
| Python/pip | , | | 清华、阿里云、中科大 |
| Node.js/npm | , | | 淘宝、腾讯云 |
| Node.js/yarn | | | 淘宝、腾讯云 |
| Go Modules | , | | 阿里云、腾讯云 |
| Java/Maven | | | 阿里云、腾讯云 |
| Java/Gradle | , | | 阿里云、腾讯云 |
| Ruby/Bundler | , | | 淘宝、腾讯云 |
| Rust/Cargo | | | 清华、中科大 |
工作流
-
项目扫描
- 使用硬编码脚本扫描项目根目录
- 识别所有包管理器标记文件
- 检查现有镜像源配置
-
智能分析
- 根据检测文件确定需要配置的镜像源类型
- 分析现有 Dockerfile 是否包含镜像源优化
- 评估当前配置的潜在问题
-
配置生成
- 为每个识别的包管理器生成标准化配置
- 创建
优化版本(如适用)Dockerfile.mirror - 生成
目录存放所有配置文件.mirror/
-
文档输出
- 生成
报告MIRROR_OPTIMIZATION_REPORT.md - 包含配置说明、使用方法、验证命令
- 提供切换回官方源的指南
- 生成
-
验证检查
- 提供验证命令测试镜像源连通性
- 确认配置文件格式正确
- 建议测试下载速度
配置文件结构
输出目录以
为准,以下以默认config.yaml:mirror_optimization.output_dir为例。.mirror/
.mirror/ ├── docker/ │ ├── Dockerfile.mirror # 优化的 Dockerfile ├── python/ │ └── pip.conf # pip 配置 ├── nodejs/ │ ├── .npmrc # npm 配置 │ └── .yarnrc.yml # yarn 配置 ├── golang/ │ └── go.env # Go Modules 配置 ├── java/ │ ├── maven/ │ │ └── settings.xml # Maven 配置 │ └── gradle/ │ └── init.gradle # Gradle 配置 └── MIRROR_OPTIMIZATION_REPORT.md
质量门槛
- 完整性:检测到所有相关包管理器
- 正确性:生成的配置文件格式正确
- 兼容性:配置与官方源兼容,可一键切换
- 透明性:配置有清晰注释说明用途
- 可验证性:提供验证命令测试效果
国内镜像源推荐
| 类型 | 推荐源 | URL |
|---|---|---|
| Docker | 阿里云 | |
| Docker | 腾讯云 | |
| Python | 清华 | |
| Python | 阿里云 | |
| Node.js | 淘宝 | |
| Go | 阿里云 | |
| Go | 腾讯云 | |
| Java/Maven | 阿里云 | |
| Ruby | 淘宝 | |
| Rust | 清华 | |
安全注意事项
- 只使用知名云服务商的镜像源
- 验证镜像源的 HTTPS 证书
- 定期检查镜像源可用性
- 生产环境建议配置镜像源备份