python-samples

SKILL.md

Python Samples

File Structure

Every sample file follows this order:

  1. PEP 723 inline script metadata (if external dependencies needed)
  2. Copyright header: # Copyright (c) Microsoft. All rights reserved.
  3. Required imports
  4. Module docstring: """This sample demonstrates..."""
  5. Helper functions
  6. Main function(s) demonstrating functionality
  7. Entry point: if __name__ == "__main__": asyncio.run(main())

External Dependencies

Use PEP 723 inline script metadata for external packages not in the dev environment:

# /// script
# requires-python = ">=3.10"
# dependencies = [
#     "some-external-package",
# ]
# ///
# Run with: uv run samples/path/to/script.py

# Copyright (c) Microsoft. All rights reserved.

Do not add sample-only dependencies to the root pyproject.toml dev group.

Syntax Checking

# Check samples for syntax errors and missing imports
uv run poe samples-syntax

# Lint samples
uv run poe samples-lint

Documentation

Samples should be over-documented:

  1. Include a README.md in each set of samples
  2. Add a summary docstring under imports explaining the purpose and key components
  3. Mark code sections with numbered comments:
    # 1. Create the client instance.
    ...
    # 2. Create the agent with the client.
    ...
    
  4. Include expected output at the end of the file:
    """
    Sample output:
    User:> Why is the sky blue?
    Assistant:> The sky is blue due to Rayleigh scattering...
    """
    

Guidelines

  • Incremental complexity — start simple, build up (step1, step2, ...)
  • Getting started naming: step<number>_<name>.py
  • When modifying samples, update associated README files
Weekly Installs
2
GitHub Stars
7.8K
First Seen
2 days ago
Installed on
opencode2
antigravity2
github-copilot2
codex2
kimi-cli2
gemini-cli2