一键导入
pypi-publishing
使用此技能在发布新版本到 PyPI 时执行完整的发布流程。涵盖版本更新、构建验证、tag 推送和 GitHub Actions 自动化。关键词:PyPI 发布、版本控制、自动化构建、Trusted Publishing。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
使用此技能在发布新版本到 PyPI 时执行完整的发布流程。涵盖版本更新、构建验证、tag 推送和 GitHub Actions 自动化。关键词:PyPI 发布、版本控制、自动化构建、Trusted Publishing。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
在发布commit前执行检查清单,包括gitignore验证、改动总结、ChangeLog更新与标准格式commit。关键词:commit前检查、gitignore、ChangeLog、commit格式、版本管理。
当需要让外部项目正确接入 Sirius Pulse 时使用,覆盖 Python API 调用、CLI 调用、配置组织和安全实践。关键词:外部接入、库调用、CLI 集成、provider 配置。
遍历项目结构变化并同步更新文档。监控模块变化、配置更新,生成检查清单以确保 SKILL、文档、示例和架构信息的实时一致性。关键词:项目结构、模块映射、文档同步、变更追踪、完整性检查。
在为 Sirius Pulse 做发布准备时使用,用于校验版本信息、命令可运行性、文档准确性与技能同步状态。关键词:发布准备、发布前检查、文档同步、命令校验。
编写新测试文件或为现有模块补充测试时使用,覆盖命名约定、速度要求、Mock 模式与断言规范。关键词:测试编写、单元测试、pytest、MockProvider、测试速度、精准测试。
当修改 Sirius Pulse 代码后,强制同步代码与文档、SKILL、示例的一致性。涵盖架构变更、接口变更、配置变更的全量检查清单与项目结构地图。关键词:代码同步、文档联动、变更追踪、检查清单、项目结构。
| name | pypi-publishing |
| description | 使用此技能在发布新版本到 PyPI 时执行完整的发布流程。涵盖版本更新、构建验证、tag 推送和 GitHub Actions 自动化。关键词:PyPI 发布、版本控制、自动化构建、Trusted Publishing。 |
该技能实现了 sirius-pulse 包到 PyPI 的完全自动化发布。采用 GitHub 官方推荐的 Trusted Publishing(OIDC)认证方式,无需存储 API token,更加安全可靠。
在首次发布前,需要在 PyPI 和 TestPyPI 上各配置一次 Trusted Publisher:
sirius-pulseSparrivedSiriusChatpublish.ymlpypi详细步骤见项目根目录的 SETUP_TRUSTED_PUBLISHING.md。
# 编辑 pyproject.toml,修改 version 字段
nano pyproject.toml
# 例如:version = "0.5.0"
# 编辑 CHANGELOG.md,在 [Unreleased] 下添加新版本条目
nano CHANGELOG.md
# 示例:
# ## [0.5.0] - 2026-04-06
# ### Added
# - New feature X
# ### Fixed
# - Bug Y
# 安装依赖
python -m pip install -e .[test]
# 运行测试
pytest -q
# 构建包并验证元数据
python -m build
python -m twine check dist/*.whl dist/*.tar.gz
git add pyproject.toml CHANGELOG.md
git commit -m "chore: bump version to 0.5.0"
git push origin master
# 创建并推送 tag(仅需这一步,workflow 自动处理)
git tag v0.5.0
git push origin v0.5.0
# GitHub Actions 自动触发:
# 1. 构建 wheel 和 sdist
# 2. 验证包元数据
# 3. 发布到 PyPI
| Job | 触发条件 | 目标 |
|---|---|---|
build | 所有 tag push | 构建 wheel 和 sdist |
publish-to-pypi | 推送 v* tag | 发布到官方 PyPI |
.github/workflows/publish.ymlactions/checkout@v4:检出代码actions/setup-python@v4:设置 Python 环境actions/upload-artifact@v4:上传构建产物pypa/gh-action-pypi-publish@release/v1:发布到 PyPI症状:GitHub Actions 页面显示红色 ✗
解决步骤:
pyproject.toml 的 name, version, descriptionv 前缀 + 版本号(如 v0.5.0)可能原因:
解决:
症状:发布时提示版本已存在
解决:
使用 semantic versioning
保持 CHANGELOG 更新
本地验证后再发布
pytest -q before taggingtwine check before pushing tag一次发布一个版本
保存发布日志
# 完整发布流程(从版本更新到验证)
python -m pip install -e .[test]
nano pyproject.toml # 更新版本号
pytest -q # 运行测试
python -m build # 构建包
python -m twine check dist/* # 验证元数据
git add pyproject.toml
git commit -m "chore: bump to vX.Y.Z"
git push origin master
git tag vX.Y.Z
git push origin vX.Y.Z # ← 触发 PyPI 发布