python-uv-acceleration
Python uv 加速
这个 skill-unit 处理的是“Python 环境与依赖工具链”问题。它默认把
uv作为pip/venv工作流的优先实现,但不会强行覆盖项目已存在的完整包管理器。
Instructions
Step 1:先判断适用边界 —— 替代 pip/venv,不替代一切
先看当前项目到底属于哪类情况:
- 只是需要创建虚拟环境、安装依赖、同步
requirements.txt - 现有流程本来就是
pip + venv - 新建小型或中型 Python 项目,尚未形成固定工具链
以上情况,默认优先使用 uv。
以下情况不要无脑切到 uv 主导:
- 项目已稳定使用
poetry、pdm、hatch等完整项目管理器 - 团队已有明确工具链约定或 CI 已深度绑定某套命令
- 当前任务并不是环境/依赖问题,而是 Python 代码实现问题
Step 2:识别项目形态 —— 先看现状再给命令
优先检查这些信号:
requirements.txtrequirements-dev.txtpyproject.tomlsetup.py/setup.cfg.python-version- 仓库脚本、README、CI 文件中的现有安装命令
判断规则:
- 若项目明显是
pip/venv工作流,直接给uv替代命令。 - 若项目已有完整管理器,优先沿用该管理器,只在局部可替代环节提到
uv。 - 若是空白项目或脚本型项目,可直接采用
uv作为默认工具链。
Step 3:环境创建 —— 默认用 uv venv
当需要创建虚拟环境时,默认使用:
uv venv
常见变体:
uv venv .venv
uv venv --python 3.11
若用户需要激活命令,也一并给出:
source .venv/bin/activate
Step 4:依赖安装 —— 默认用 uv pip
当任务是安装、补齐、同步依赖时,优先给出 uv pip 方案:
uv pip install -r requirements.txt
uv pip install requests
uv pip install -e .
若当前任务强调“与现有 requirements 状态对齐”,优先考虑:
uv pip sync requirements.txt
Step 5:替换表达 —— 给出旧命令到新命令映射
当用户原本说的是 pip、venv、virtualenv,推荐显式给出映射:
| 旧命令 | uv 替代 |
|---|---|
python -m venv .venv |
uv venv |
pip install -r requirements.txt |
uv pip install -r requirements.txt |
pip install package |
uv pip install package |
pip install -e . |
uv pip install -e . |
pip freeze |
uv pip freeze |
pip uninstall package |
uv pip uninstall package |
Step 6:补齐工程细节 —— 别忘了 .gitignore
如果任务涉及新建环境或初始化项目,检查是否需要补充:
.venv/
venv/
env/
ENV/
Examples
示例 1:把传统 pip/venv 初始化改成 uv
uv venv
source .venv/bin/activate
uv pip install -r requirements.txt
示例 2:新建一个轻量 Python 项目
uv venv
source .venv/bin/activate
uv pip install requests ruff pytest
uv pip freeze > requirements.txt
示例 3:给出迁移说明而不是直接覆盖现有工具链
当前项目已使用 poetry 管理依赖,不建议直接改成 uv 主导。
如果只是想提升局部安装速度,可以先保持现有工具链,再评估是否需要单独引入 uv。
Edge Cases
uv 未安装
如果环境里没有 uv,先提示安装,再继续给后续命令。具体安装方式见 references/common-commands.md。
已有完整项目管理器
如果仓库已经稳定使用 poetry、pdm、hatch 等工具,不要把“默认使用 uv”升级成强制迁移建议。边界判断见 references/adoption-boundaries.md。
需要指定 Python 版本
明确给出:
uv venv --python 3.11
私有包源或额外索引
优先在 uv pip install 中沿用现有索引参数,不要因为换成 uv 就丢失仓库原有安装上下文。
参考资料
references/adoption-boundaries.md- 何时应使用 uv,何时不应强推references/common-commands.md- 常用命令、安装方式与命令映射
More from qiao-925/qiao-skills
agent-skill-rules
Agent Skills 开放标准与治理规则。用于 skill 的创建、修改、重构、迁移、审计与维护,并在创建前判断需求应落到自动化、项目级规则、通用或项目私有 skill 还是单次 prompt,提供平台无关的结构标准、frontmatter 规范、渐进式披露与质量门禁。
35python-coding-standards
Python 实现基线能力单元,帮助 Agent 在 Python 代码实现、修改、补全、重构与审查场景中,先对齐项目既有约定,再落实类型边界、日志纪律、命名与结构可读性,避免把个人偏好或项目私货写成通用规范。关键词:Python、编码规范、类型提示、日志、命名、代码结构、项目对齐。
23critical-thinking-guidance
规范 Agent 在解答前进行智能判断与思考引导,避免不必要的替代思考并保留用户主导权。适用于用户提问、方案咨询、学习交流等需要平衡效率与思考深度的场景。关键词:引导提问、智能判断、轻量引导、强制思考
21single-responsibility
单一职责能力单元,帮助 Agent 在文件拆分、函数重构、模块设计、代码审查与边界澄清场景中,识别职责混杂、变化原因耦合与命名失真问题,让文件、函数、类与模块都能围绕一个稳定职责组织。关键词:单一职责、职责拆分、边界澄清、重构、文件拆分、函数重构、模块设计。
20architecture-governance
架构治理能力单元,帮助 Agent 在架构评审、重构、新模块设计、分层边界调整、接口契约设计与项目初始化分析场景中,检查分层与依赖方向、变更影响面、接口契约与可替换性,避免跨层耦合、反向依赖与破坏性演进。关键词:架构治理、分层、依赖方向、影响面分析、接口契约、依赖注入、可插拔、重构。
19core-first-simplicity
核心优先的复杂度控制能力单元,帮助 Agent 在项目取舍、架构设计、模块重构、实现裁剪与方案收敛场景中,先识别主亮点、控制复杂度预算、稳定主路径、延后非核心扩张,避免过度设计与大而全实现。关键词:核心优先、复杂度控制、KISS、方案收敛、过度设计、主路径。
19