python-packaging
Skill0 starsChanged 3 months agoMITView on GitHub
Python打包发布:pyproject.toml、setuptools、PyPI发布、版本管理.
- Installs packages
13 other projects use a version of this.
Adopted by
Most recently taken up by
- ControllableModel/SWE-Skills-Benchtheir own version, first seen Nov 8, 2026
- cooneycw/claude-power-packtheir own version, first seen Nov 7, 2026
- Luckycat133/gemini-web-mcptheir own version, first seen Oct 15, 2026
- xfstudio/skillstheir own version, first seen Oct 13, 2026
- Samueladewole/claude-skillstheir own version, first seen Oct 13, 2026
- Quad4-Software/skillstheir own version, first seen Oct 3, 2026
Other versions13 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 13
- kumaran-is/claude-code-onboarding★ 35same name
- cooneycw/claude-power-pack★ 21same name
- xfstudio/skills★ 9same name
- ControllableModel/SWE-Skills-Bench★ 8same name
- ai4brands-design/claude-skills★ 2same name
- CodeWithBehnam/cc-docs★ 2same name
- NorkzYT/claude-code-autopilot★ 2same name
- AntheaLaffy/the-missing-semester-skills★ 1same name
- drzioner/gitwise★ 1same name
- Quad4-Software/skills★ 1same name
3 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository219 other files it gives its agents.
- agent-doctrineSkill
- agent-evaluation-frameworkSkill
- agent-visualization-flintSkill
- hermes-agentSkill
- bailian-cliSkill
- edge-browser-automationSkill
- computer-useSkill
- jupyter-live-kernelSkill
- backup-strategiesSkill
- browser-automationSkill
- chinese-ai-free-apiSkill
- cicd-pipeline-templatesSkill
- copybaraSkill
- devops-toolkitSkill
- email-deliverabilitySkill
- monitoring-observabilitySkill
- obsidian-maintenanceSkill
- obsidian-troubleshootingSkill
- openclaw-windowsSkill
- openclaw-workerSkill
- webhook-subscriptionsSkill
- windows-dev-environmentSkill
- windows-masterSkill
- zero-downtime-deploySkill
- codebase-inspectionSkill
- github-workflowSkill
- adaptive-communicationSkill
- agent-cost-dashboardSkill
- agent-evolutionSkill
- agent-governanceSkill
- agent-osSkill
- context-efficient-toolsSkill
- context-loss-awarenessSkill
- creative-synthesisSkill
- hermes-desktop-pluginsSkill
- emotional-intelligenceSkill
- graph-engineering-workflowSkill
- hermes-maintenanceSkill
- hermes-voiceSkill
- hermes-hygieneSkill
- identity-coreSkill
- income-loopSkill
- master-synthesisSkill
- meta-cognitionSkill
- reasoning-engineSkill
- self-preservationSkill
- teaching-abilitySkill
- temporal-awarenessSkill
- hermes-themesSkill
- thinking-visualizationSkill
- user-modelingSkill
- voice-full-restoreSkill
- knowledge-graph-traversalSkill
- mcp-browser-canvasSkill
- free-api-gatewaySkill
- native-mcpSkill
- web-reverse-apiSkill
- ai-edaSkill
- huggingface-hubSkill
- industrial-ai-siemens-mcpSkill
- The first 60 shown.
The file
Files
Python 打包发布
借鉴 pypa/sampleproject (5k⭐) + Python Packaging Guide。
pyproject.toml(现代标准)
[build-system]
requires = ["setuptools>=68", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "my-package"
version = "0.1.0"
description = "简短描述"
readme = "README.md"
requires-python = ">=3.11"
license = {text = "MIT"}
authors = [{name = "郑鑫", email = "xxx@xxx.com"}]
keywords = ["ai", "agent"]
classifiers = [
"Programming Language :: Python :: 3",
"License :: OSI Approved :: MIT License",
]
dependencies = [
"requests>=2.28",
"pydantic>=2.0",
]
[project.optional-dependencies]
dev = ["pytest", "ruff", "build"]
all = ["my-package[dev]", "redis", "fastapi"]
[project.urls]
Homepage = "https://github.com/user/my-package"
Repository = "https://github.com/user/my-package.git"
[tool.setuptools.packages.find]
where = ["src"]
[tool.ruff]
line-length = 100
target-version = "py311"
[tool.pytest.ini_options]
testpaths = ["tests"]
addopts = "-v --cov=src"目录结构
my-package/
├── src/
│ └── my_package/
│ ├── __init__.py
│ ├── core.py
│ └── utils.py
├── tests/
│ ├── __init__.py
│ └── test_core.py
├── pyproject.toml
├── README.md
├── LICENSE
└── .gitignore构建发布
# 安装构建工具
pip install build twine
# 构建
python -m build
# → dist/my_package-0.1.0.tar.gz
# → dist/my_package-0.1.0-py3-none-any.whl
# 发布到 PyPI
twine upload dist/*
# 发布到 Test PyPI(先测试)
twine upload -r testpypi dist/*版本管理(Semantic Versioning)
MAJOR.MINOR.PATCH
MAJOR:不兼容的 API 变更(1.0 → 2.0)
MINOR:向后兼容的新功能(1.0 → 1.1)
PATCH:向后兼容的 Bug 修复(1.0.0 → 1.0.1)
0.x.x:开发阶段,API 不稳定
1.0.0:第一个稳定版本入口点(CLI 命令)
[project.scripts]
mycli = "my_package.cli:main"# src/my_package/cli.py
def main():
print("Hello from CLI!")
# pip install 后用户直接敲 mycli 就能运行依赖锁定
# 开发时:宽松版本
dependencies = ["requests>=2.28"]
# 部署时:锁定具体版本
pip freeze > requirements.txt
# 或
uv pip compile pyproject.toml -o requirements.txt常见问题
Q: src/ 布局还是平铺?
A: src/ 布局更规范,避免意外导入本地代码
Q: setup.py 还是 pyproject.toml?
A: pyproject.toml(2026年了,用新的)
Q: 要不要上传到 PyPI?
A: 开源项目要,私有项目用 git+https 安装即可Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

