Skip to main content

Pure YAML command orchestrator - CI/CD for humans

Project description

ry

A command augmentation framework that wraps and enhances existing CLI tools without breaking their native behavior.

Features

  • Command Augmentation: Enhance existing CLI tools with validation, safety checks, and workflows
  • Clean Architecture: Modular design with single-responsibility components
  • Type-Safe Processing: Recursive template processing with proper type dispatch
  • Token-Based Safety: Time-limited tokens for dangerous operations
  • Library System: Reusable command definitions with metadata
  • Direct Execution: No shell escaping for safety

Installation

uv tool isntall ry-tool

This installs the ry command globally.

Quick Start

# List available libraries
ry --list

# Get help for a library
ry git --ry-help

# Execute augmented command
ry git commit -m "feat: new feature"

# Show execution plan (dry run)
ry --ry-run git commit -m "test"

Production Libraries

  • git - Enhanced git workflow with review tokens and commit validation
  • uv - Python package management with automated version workflows
  • changelog - Simple changelog management following Keep a Changelog
  • ry-lib - Library development and management tools
  • site-builder - Static documentation site generator

Library System

Example: Git Enhancement

version: "2.0"
name: git
type: augmentation
target: /usr/bin/git

commands:
  commit:
    flags:
      m/message: string
    augment:
      before:
        - python: |
            # Validation logic
      relay: native

Token-Based Safety

Critical operations require preview and token verification:

# Preview changes
ry git diff --staged  # → Generates REVIEW_TOKEN

# Execute with token
REVIEW_TOKEN=xxx ry git commit -m "message"

Project Structure

ry-tool/
├── src/ry_tool/         # Core implementation
├── docs/
│   ├── libraries/       # Production libraries
│   └── ARCHITECTURE.md  # Technical documentation
├── examples/            # Example libraries
└── CLAUDE.md           # AI assistant guidance

Development

# Run linter
ruff check src/ry_tool/ --fix

# Build distribution
uv build

# Create a new library
ry ry-lib create <name> <type>

# Validate libraries
ry ry-lib validate --all

Documentation

License

MIT

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

ry_tool-1.3.0.tar.gz (25.6 kB view details)

Uploaded Source

Built Distribution

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

ry_tool-1.3.0-py3-none-any.whl (31.3 kB view details)

Uploaded Python 3

File details

Details for the file ry_tool-1.3.0.tar.gz.

File metadata

  • Download URL: ry_tool-1.3.0.tar.gz
  • Upload date:
  • Size: 25.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.15

File hashes

Hashes for ry_tool-1.3.0.tar.gz
Algorithm Hash digest
SHA256 3b23dbc5051b05860119c8d468f947ca611033f97b1df0c45d63c365c27ee566
MD5 aec085914b9d90c5439f51548013c9b3
BLAKE2b-256 ebd126be0ff57d26571a58e5c05e186b365b9efe8da9e5fe6171946b7a3f9498

See more details on using hashes here.

File details

Details for the file ry_tool-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: ry_tool-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 31.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.15

File hashes

Hashes for ry_tool-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1e3efe79c7b90d075ecdbc1579ffb1d7b53e5c3f63a4a659eef25618c83575fb
MD5 b2aa504a4ab4a9a58eabde28df10e70d
BLAKE2b-256 075336f5311e9d85778a5f0ae9ef7ee1a80b07014f090de6116932c1d3c01075

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