AI-native Python development tools for Claude Code and autonomous agents.
Project description
Welcome to shai_py Documentation
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:
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.
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__.
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a9d9f39b7895e3f303f1b4bf544f668f6b0ffd7d5573b251adf266b7a10d95be
|
|
| MD5 |
e17ead9d52abcd159f7845df1f6e5d3f
|
|
| BLAKE2b-256 |
da54d36d6ae7fb84e4ba45f545b906b968b02de0fa2e700587683138ac54af52
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5481c0aa306d90cd0e901aac03e9a444fcce161f960087a148af4c23839991e5
|
|
| MD5 |
d8d1eb307c6f9fc16b8949e645b6d7e2
|
|
| BLAKE2b-256 |
67930d02bb6c22dbe64f8c863f934d2e802e8b42b8a93730a50ab92a8e243202
|