Nm Parseltongue Python Packaging

v1.0.0

Python package creation and distribution: pyproject.toml, entry points, PyPI publishing, CI/CD

0· 45·1 current·1 all-time
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The name/description (Python packaging, pyproject, entry points, CI/CD) matches the actual content: documentation and examples for uv, pyproject.toml, entry points, and GitHub Actions. No unrelated binaries or credentials are requested.
Instruction Scope
SKILL.md contains step-by-step commands and CI examples (uv init, uv build, uv publish, pytest, GitHub Actions) that stay within packaging/publishing scope. It does not instruct reading unrelated host files or accessing unrelated environment variables. CI examples reference standard secrets (PYPI_TOKEN) only in the context of publishing.
Install Mechanism
There is no install spec and no code files to install or execute. This is instruction-only, so nothing is written to disk or downloaded by the skill itself.
Credentials
The skill declares no required environment variables or config paths. The documentation shows using a PyPI/GitHub secret in CI (PYPI_TOKEN / UV_PUBLISH_TOKEN) which is appropriate and expected for publishing workflows; no unrelated secrets (AWS, SSH, etc.) are requested.
Persistence & Privilege
always is false and model invocation is allowed (platform default). The skill does not request persistent presence or modify other skills or system settings.
Assessment
This skill is a documentation-only helper for Python packaging using the 'uv' tool and GitHub Actions. It does not itself install code or ask for credentials, but the commands it recommends (eg. uv publish, pushing git tags, CI workflows using PYPI_TOKEN) will perform network actions if you run them. Before executing any publish/build commands or adding its CI snippets to a repo: (1) confirm you trust the 'uv' tool and the referenced CI actions (astral-sh/setup-uv), (2) never paste your PyPI or other tokens into an untrusted agent — use GitHub secrets for CI, and (3) review any generated CI workflow or publish commands so they don't automatically publish or push tags you don't intend. If you want stricter control, keep this skill instruction-only and run the commands yourself rather than allowing autonomous execution.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

🦞 Clawdis
latestvk975n68x88wg5atbp4w8572cf584vn2c
45downloads
0stars
1versions
Updated 5d ago
v1.0.0
MIT-0

Night Market Skill — ported from claude-night-market/parseltongue. For the full experience with agents, hooks, and commands, install the Claude Code plugin.

Table of Contents

Python Packaging

Modern Python packaging with pyproject.toml, uv, and best practices for distribution.

Quick Start

# Create new project with uv
uv init my-package
cd my-package

# Add dependencies
uv add requests click

# Build package
uv build

# Publish to PyPI
uv publish

Verification: Run the command with --help flag to verify availability.

When To Use

  • Creating distributable Python libraries
  • Building CLI tools
  • Publishing to PyPI
  • Setting up development environments
  • Managing project dependencies

When NOT To Use

  • Testing packages - use python-testing instead
  • Optimizing package performance - use python-performance
  • Testing packages - use python-testing instead
  • Optimizing package performance - use python-performance

Core Decisions

1. Layout Choice

# Source layout (recommended)
src/my_package/
    __init__.py
    module.py

# Flat layout (simple)
my_package/
    __init__.py
    module.py

Verification: Run the command with --help flag to verify availability.

Source layout benefits:

  • Clear separation of source and tests
  • Prevents accidental imports of uninstalled code
  • Better for packages with complex structure

2. Project Structure

Minimal Project:

**Verification:** Run `pytest -v` to verify tests pass.
my-project/
├── pyproject.toml
├── README.md
├── src/
│   └── my_package/
│       └── __init__.py
└── tests/
    └── test_init.py

Verification: Run pytest -v to verify tests pass.

Complete Project:

**Verification:** Run the command with `--help` flag to verify availability.
my-project/
├── pyproject.toml
├── README.md
├── LICENSE
├── .gitignore
├── src/
│   └── my_package/
│       ├── __init__.py
│       ├── cli.py
│       ├── core.py
│       └── utils.py
├── tests/
│   ├── conftest.py
│   └── test_core.py
└── docs/
    └── index.md

Verification: Run pytest -v to verify tests pass.

Detailed Topics

See modules for detailed information:

Best Practices

  1. Use source layout for anything beyond simple packages
  2. Pin direct dependencies with minimum versions
  3. Use optional dependency groups for dev/docs/test
  4. Include py.typed for type hint support
  5. Add detailed README with usage examples
  6. Use semantic versioning (MAJOR.MINOR.PATCH)
  7. Test on multiple Python versions before publishing

Exit Criteria

  • Modern pyproject.toml configuration
  • Clear dependency specification
  • Proper version management
  • Tests included and passing
  • Build process reproducible
  • Publishing pipeline automated

Comments

Loading comments...