Skip to main content

AI-native Python development tools for Claude Code and autonomous agents.

Project description

Documentation Status https://github.com/MacHu-GWU/shai_py-project/actions/workflows/main.yml/badge.svg https://codecov.io/gh/MacHu-GWU/shai_py-project/branch/main/graph/badge.svg https://img.shields.io/pypi/v/shai-py.svg https://img.shields.io/pypi/l/shai-py.svg https://img.shields.io/pypi/pyversions/shai-py.svg https://img.shields.io/badge/✍️_Release_History!--None.svg?style=social&logo=github https://img.shields.io/badge/⭐_Star_me_on_GitHub!--None.svg?style=social&logo=github
https://img.shields.io/badge/Link-API-blue.svg https://img.shields.io/badge/Link-Install-blue.svg https://img.shields.io/badge/Link-GitHub-blue.svg https://img.shields.io/badge/Link-Submit_Issue-blue.svg https://img.shields.io/badge/Link-Request_Feature-blue.svg https://img.shields.io/badge/Link-Download-blue.svg

Welcome to shai_py Documentation

https://shai-py.readthedocs.io/en/latest/_static/shai_py-logo.png

In the AI-driven development era, tools must be designed for machine consumption first. shai-py (Sanhe AI Python tools) embraces this philosophy by packaging Python development utilities as a CLI-first library, making it effortless for AI agents like Claude Code to invoke sophisticated workflows. Instead of writing one-off scripts scattered across agent skills, we consolidate battle-tested logic into a versioned Python package that AI can invoke with a single uvx command—no installation, no environment pollution, just instant execution.

This approach solves the fundamental challenge of AI tool integration: how to provide powerful, testable, and maintainable utilities without cluttering agent contexts with implementation details. By exposing functionality through clean CLI interfaces (uvx shai-py project-info, uvx shai-py test-path), AI agents can focus on orchestration while developers maintain business logic in a single, version-controlled codebase. The result is elegant, reproducible, and scales beautifully from simple project introspection to complex development automation.

Architecture: Subcommand Design Pattern

This project uses a Subcommand Delegation Pattern that cleanly separates business logic from CLI interface, enabling independent testing and maintainability.

Key Components:

  1. Subcommand Modules (shai_py/subcmd/<subcommand>.py): Each module implements a single CLI subcommand. The module must define a main() function containing all business logic. The module-level __doc__ string serves as CLI help text.

  2. CLI Aggregator (shai_py/cli.py): The Cli class exposes each subcommand as a method that delegates to the corresponding module’s main() function. Method docstrings are inherited from the subcommand module’s __doc__.

  3. Test Files (tests/subcmd/test_subcmd_<subcommand>.py): Tests import and invoke the main() function directly, enabling unit testing without CLI overhead.

Pattern Benefits:

  • Business logic is testable without CLI framework involvement

  • Documentation lives with implementation (single source of truth)

  • Adding new subcommands requires only: create module with main(), add method to Cli class

Reference Implementation:

  • Subcommand: shai_py/subcmd/detect_python_project_metadata.py (see main() function)

  • CLI integration: shai_py/cli.py (see Cli.project_info() method)

  • Test example: tests/subcmd/test_subcmd_detect_python_project_metadata.py

Install

shai_py is released on PyPI, so all you need is to:

$ pip install shai-py

To upgrade to latest version:

$ pip install --upgrade shai-py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

shai_py-0.1.1.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

shai_py-0.1.1-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

Details for the file shai_py-0.1.1.tar.gz.

File metadata

  • Download URL: shai_py-0.1.1.tar.gz
  • Upload date:
  • Size: 11.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.8

File hashes

Hashes for shai_py-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a9d9f39b7895e3f303f1b4bf544f668f6b0ffd7d5573b251adf266b7a10d95be
MD5 e17ead9d52abcd159f7845df1f6e5d3f
BLAKE2b-256 da54d36d6ae7fb84e4ba45f545b906b968b02de0fa2e700587683138ac54af52

See more details on using hashes here.

File details

Details for the file shai_py-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: shai_py-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 12.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.8

File hashes

Hashes for shai_py-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5481c0aa306d90cd0e901aac03e9a444fcce161f960087a148af4c23839991e5
MD5 d8d1eb307c6f9fc16b8949e645b6d7e2
BLAKE2b-256 67930d02bb6c22dbe64f8c863f934d2e802e8b42b8a93730a50ab92a8e243202

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page