Mirror optimizer
General Skills Development Pipeline - Claude Code & Codex
npx -y skills add huangwb8/skills --skill mirror-optimizerAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
当用户明确要求"优化镜像源"、"配置国内镜像"、"加速部署"、"切换镜像源"或项目涉及 Docker/Python/Node.js/Go/Java/Ruby/Rust 等需要包管理器的场景时使用。自动检测项目使用的包管理器,生成适配的国内镜像源配置,确保在国内网络环境下快速部署。⚠️ 不适用:用户只是想了解镜像源概念(应直接说明)、项目已完成部署且无需优化(应直接告知无需操作)、用户明确要求使用官方源(应尊重用户选择)。
SKILL.md
7.2 KB, as published. Nobody here has run it
Mirror Optimizer - 镜像源优化代理
BenszAPI 任务工作区
本 Skill 的新任务中间文件统一写入 ./.bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/{skill名}/input|output|log/。同一任务复用一个任务根目录;多 Skill 协作才创建 shared/。正式交付物不写入该目录,历史隐藏目录只允许显式兼容读取、迁移或清理。
与 bensz-collect-bugs 的协作约定
- 因本 skill 设计缺陷导致的 bug,先用
bensz-collect-bugs规范记录到~/.bensz-skills/bugs/,不要直接修改用户本地已安装的 skill 源码;若有 workaround,先记 bug,再继续完成任务。 - 只有用户明确要求“report bensz skills bugs”等公开上报时,才用本地
gh上传新增 bug 到huangwb8/bensz-bugs;不要 pull / clone 整个仓库。
铁律
NO DEPLOYMENT WITHOUT MIRROR CONFIGURATION FIRST
任何涉及依赖下载的部署任务,必须先确认并优化镜像源配置,否则在国内环境下部署将极慢或失败。
核心理念
智能适配,透明可逆。根据项目技术栈自动识别需要配置的镜像源类型,生成标准化的配置文件,同时保持官方源兼容性,支持一键切换。
何时使用
- 项目包含
Dockerfile、docker-compose.yml或.dockerignore - 项目包含
requirements.txt、pyproject.toml、Pipfile、setup.py、setup.cfg或poetry.lock - 项目包含
package.json、yarn.lock、pnpm-lock.yaml或package-lock.json - 项目包含
go.mod、go.sum、Gopkg.lock或Gopkg.toml - 项目包含
pom.xml、build.gradle、build.gradle.kts或settings.gradle - 项目包含
Gemfile、gems.rb或Cargo.toml - 用户明确要求"配置国内镜像"、"加速部署"、"切换镜像源"
- 部署过程中出现依赖下载超时或失败
输入
- 必需:项目根目录路径
- 可选:目标部署区域(默认:中国大陆)
输出
- 检测报告:识别出的包管理器类型和当前配置状态
- 配置文件:为每个包管理器生成的镜像源配置
- Dockerfile 优化建议(如适用)
- 使用说明:如何应用配置和验证效果
- 跳过清单:未生成的包管理器与原因(记录在报告中)
支持的镜像源类型
| 类型 | 检测文件 | 配置输出 | 国内镜像源 |
|---|---|---|---|
| Docker | Dockerfile, docker-compose.yml, .dockerignore | Dockerfile.mirror | 阿里云、腾讯云 |
| Python/pip | requirements.txt, pyproject.toml | pip.conf | 清华、阿里云、中科大 |
| Node.js/npm | package.json, package-lock.json | .npmrc | 淘宝、腾讯云 |
| Node.js/yarn | yarn.lock | .yarnrc.yml | 淘宝、腾讯云 |
| Go Modules | go.mod, go.sum | go.env | 阿里云、腾讯云 |
| Java/Maven | pom.xml | settings.xml | 阿里云、腾讯云 |
| Java/Gradle | build.gradle*, settings.gradle* | init.gradle | 阿里云、腾讯云 |
| Ruby/Bundler | Gemfile, gems.rb | config | 淘宝、腾讯云 |
| Rust/Cargo | Cargo.toml | config.toml | 清华、中科大 |
工作流
-
项目扫描
- 使用硬编码脚本扫描项目根目录
- 识别所有包管理器标记文件
- 检查现有镜像源配置
-
智能分析
- 根据检测文件确定需要配置的镜像源类型
- 分析现有 Dockerfile 是否包含镜像源优化
- 评估当前配置的潜在问题
-
配置生成
- 为每个识别的包管理器生成标准化配置
- 创建
Dockerfile.mirror优化版本(如适用) - 生成
.bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/mirror-optimizer/output/目录存放所有配置文件
-
文档输出
- 生成
MIRROR_OPTIMIZATION_REPORT.md报告 - 包含配置说明、使用方法、验证命令
- 提供切换回官方源的指南
- 生成
-
验证检查
- 提供验证命令测试镜像源连通性
- 确认配置文件格式正确
- 建议测试下载速度
配置文件结构
输出目录以
config.yaml:mirror_optimization.output_dir为准,以下以默认.bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/mirror-optimizer/output/为例。
.bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/mirror-optimizer/output/
├── 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 | 阿里云 | https://registry.cn-hangzhou.aliyuncs.com |
| Docker | 腾讯云 | https://mirror.ccs.tencentyun.com |
| Python | 清华 | https://pypi.tuna.tsinghua.edu.cn/simple |
| Python | 阿里云 | https://mirrors.aliyun.com/pypi/simple/ |
| Node.js | 淘宝 | https://registry.npmmirror.com |
| Go | 阿里云 | https://mirrors.aliyun.com/goproxy/ |
| Go | 腾讯云 | https://mirrors.tencent.com/go/ |
| Java/Maven | 阿里云 | https://maven.aliyun.com/repository/public |
| Ruby | 淘宝 | https://gems.ruby-china.com |
| Rust | 清华 | https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git |
安全注意事项
- 只使用知名云服务商的镜像源
- 验证镜像源的 HTTPS 证书
- 定期检查镜像源可用性
- 生产环境建议配置镜像源备份