Catalog PyPI
PACKAGE EXPLORERView in registry

aa-pytools

PyPI

This project contains useful tools to work with Automation Anywhere + Python

anywhereautomationintegrationpythonrpa
Versions collected1
Direct dependencies0From release 1.0.0
Last observed20 Oct, 17:01 UTC

README

Version 1.0.0 documentation

aa-pytools

PyPI version Python 3.13+ License: MIT

All Python tools you'll likely need to work with Automation Anywhere

aa-pytools is a comprehensive Python library designed to streamline integration between Python applications and Automation Anywhere RPA platform. It provides essential tools, decorators, and utilities that make RPA development more efficient and reliable.

🚀 Features

Core Functionality

  • Advanced Logging System - Centralized, configurable logging with auto-configuration
  • Safe Execution Decorator - Error handling with structured payloads and timing information

Automation Anywhere Integration

  • Vault Credential Management - Secure credential fetching from Automation Anywhere vault
  • Execution Management - Run and monitor Automation Anywhere executions from Python
  • REST API Integration - Complete API client for Automation Anywhere services

Specialized Decorators

  • @safe_execute - Execute functions safely with comprehensive error handling
  • @with_vault("SAP") - Automatic credential injection from vault
  • @retry_on_failure - Intelligent retry mechanism for transient failures
  • @timeout(30) - Execution timeout protection
  • @transactional - Transaction management for complex operations
  • @queue_worker("INVOICES") - Queue-based processing capabilities
  • @aa_safe_run - Automation Anywhere-specific safe execution

📦 Installation

pip install aa-pytools

Requirements:

  • Python 3.13 or higher
  • No external dependencies for core functionality

🎯 Quick Start

Basic Usage

from aa_pytools.decorators import safe_execute
from aa_pytools.core import get_logger

# Use the safe execution decorator
@safe_execute
def risky_operation(data):
    # Your code here
    return process_data(data)

result = risky_operation(my_data)
if result["status"]:
    print(f"Success: {result['result']}")
else:
    print(f"Error: {result['error']}")

# Logging with auto-configuration
logger = get_logger("my_module")
logger.info("This message will be automatically formatted and handled")

Advanced Logging

from aa_pytools.core import configure_logging, get_logger
from pathlib import Path

# Configure custom logging
configure_logging(
    level="DEBUG",
    log_file=Path("logs/app.log"),
    console=True,
    format_string="%(asctime)s | %(name)s | %(levelname)s | %(message)s"
)

logger = get_logger("my_component")
logger.debug("Detailed debugging information")

📖 Documentation

Core Components

Logging System (aa_pytools.core)

  • Auto-configuring loggers
  • Flexible formatting options
  • Console and file output
  • Package-scoped logging hierarchy

Safe Execution (aa_pytools.decorators.safe_execute)

  • Exception catching and structured error reporting
  • Performance timing information
  • Optional trace information for debugging
  • JSON or dictionary return formats

API Reference

Detailed API documentation is available at https://aa-pytools.readthedocs.io (coming soon).

🧪 Development Status

This project is currently in early development (version 0.0.1).

Implemented:

  • ✅ Core logging system with full configuration options
  • ✅ Safe execution decorator with comprehensive error handling
  • ✅ Complete test coverage for implemented features
  • ✅ Modern Python packaging with uv and pyproject.toml

In Progress:

  • 🔄 Vault integration for credential management
  • 🔄 REST API client for Automation Anywhere
  • 🔄 Execution management system
  • 🔄 Additional specialized decorators

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for detailed information on:

  • Setting up the development environment
  • Running tests and linting
  • Making pull requests
  • Code style and standards

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

Inspired by and built upon concepts from:

  • rpa-automationanywhere - Last update: June 5, 2025
  • automation-anywhere - Last update: August 8, 2023

📞 Support


Created by @AND3SIL4 at Net Applications

ᴅᴇᴠᴇʟᴏᴘᴇᴅ ʙʏ:
▄████▄ ███  ██ ████▄  ████▄ ▄█████ ██ ██    ██  ██
██▄▄██ ██ ▀▄██ ██  ██  ▄▄██ ▀▀▀▄▄▄ ██ ██    ▀█████
██  ██ ██   ██ ████▀  ▄▄▄█▀ █████▀ ██ ██████    ██
ɪ ᴛʜɪɴᴋ, ᴛʜᴇʀᴇꜰᴏʀᴇ ɪ ᴀᴍ 🗿

Downloads & popularity

2downloads
1-day window · source-reported counts19 Oct 2026
1890
2026-07-23: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-07-23–2026-07-232026-07-27: 4 · observed 2026-10-20T17:06:57.8677842Z · period 2026-07-27–2026-07-272026-07-29: 15 · observed 2026-10-20T17:06:57.8677842Z · period 2026-07-29–2026-07-292026-07-30: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-07-30–2026-07-302026-08-01: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-01–2026-08-012026-08-02: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-02–2026-08-022026-08-03: 6 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-03–2026-08-032026-08-04: 3 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-04–2026-08-042026-08-06: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-06–2026-08-062026-08-09: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-09–2026-08-092026-08-13: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-13–2026-08-132026-08-14: 4 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-14–2026-08-142026-08-17: 4 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-17–2026-08-172026-08-18: 18 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-18–2026-08-182026-08-20: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-20–2026-08-202026-08-23: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-23–2026-08-232026-08-24: 11 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-24–2026-08-242026-08-26: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-26–2026-08-262026-08-31: 3 · observed 2026-10-20T17:06:57.8677842Z · period 2026-08-31–2026-08-312026-09-02: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-02–2026-09-022026-09-03: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-03–2026-09-032026-09-05: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-05–2026-09-052026-09-07: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-07–2026-09-072026-09-09: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-09–2026-09-092026-09-10: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-10–2026-09-102026-09-12: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-12–2026-09-122026-09-18: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-18–2026-09-182026-09-25: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-25–2026-09-252026-09-26: 3 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-26–2026-09-262026-09-27: 3 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-27–2026-09-272026-09-28: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-28–2026-09-282026-09-29: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-29–2026-09-292026-09-30: 6 · observed 2026-10-20T17:06:57.8677842Z · period 2026-09-30–2026-09-302026-10-01: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-10-01–2026-10-012026-10-03: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-10-03–2026-10-032026-10-05: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-10-05–2026-10-052026-10-06: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-10-06–2026-10-062026-10-07: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-10-07–2026-10-072026-10-08: 4 · observed 2026-10-20T17:06:57.8677842Z · period 2026-10-08–2026-10-082026-10-13: 1 · observed 2026-10-20T17:06:57.8677842Z · period 2026-10-13–2026-10-132026-10-19: 2 · observed 2026-10-20T17:06:57.8677842Z · period 2026-10-19–2026-10-19
23 Jul19 Oct

pypistats · 41 observations shown. Missing days are unknown. Source category: overall: without mirrors.

View observed values
Date / source periodValueObserved at
2026-10-19 – 2026-10-1922026-10-20T17:06:57.8677842Z
2026-10-13 – 2026-10-1312026-10-20T17:06:57.8677842Z
2026-10-08 – 2026-10-0842026-10-20T17:06:57.8677842Z
2026-10-07 – 2026-10-0712026-10-20T17:06:57.8677842Z
2026-10-06 – 2026-10-0612026-10-20T17:06:57.8677842Z
2026-10-05 – 2026-10-0512026-10-20T17:06:57.8677842Z
2026-10-03 – 2026-10-0322026-10-20T17:06:57.8677842Z
2026-10-01 – 2026-10-0122026-10-20T17:06:57.8677842Z
2026-09-30 – 2026-09-3062026-10-20T17:06:57.8677842Z
2026-09-29 – 2026-09-2922026-10-20T17:06:57.8677842Z
2026-09-28 – 2026-09-2822026-10-20T17:06:57.8677842Z
2026-09-27 – 2026-09-2732026-10-20T17:06:57.8677842Z
2026-09-26 – 2026-09-2632026-10-20T17:06:57.8677842Z
2026-09-25 – 2026-09-2522026-10-20T17:06:57.8677842Z
2026-09-18 – 2026-09-1822026-10-20T17:06:57.8677842Z
2026-09-12 – 2026-09-1212026-10-20T17:06:57.8677842Z
2026-09-10 – 2026-09-1012026-10-20T17:06:57.8677842Z
2026-09-09 – 2026-09-0922026-10-20T17:06:57.8677842Z
2026-09-07 – 2026-09-0712026-10-20T17:06:57.8677842Z
2026-09-05 – 2026-09-0522026-10-20T17:06:57.8677842Z
2026-09-03 – 2026-09-0312026-10-20T17:06:57.8677842Z
2026-09-02 – 2026-09-0222026-10-20T17:06:57.8677842Z
2026-08-31 – 2026-08-3132026-10-20T17:06:57.8677842Z
2026-08-26 – 2026-08-2622026-10-20T17:06:57.8677842Z
2026-08-24 – 2026-08-24112026-10-20T17:06:57.8677842Z
2026-08-23 – 2026-08-2312026-10-20T17:06:57.8677842Z
2026-08-20 – 2026-08-2012026-10-20T17:06:57.8677842Z
2026-08-18 – 2026-08-18182026-10-20T17:06:57.8677842Z
2026-08-17 – 2026-08-1742026-10-20T17:06:57.8677842Z
2026-08-14 – 2026-08-1442026-10-20T17:06:57.8677842Z
2026-08-13 – 2026-08-1322026-10-20T17:06:57.8677842Z
2026-08-09 – 2026-08-0912026-10-20T17:06:57.8677842Z
2026-08-06 – 2026-08-0622026-10-20T17:06:57.8677842Z
2026-08-04 – 2026-08-0432026-10-20T17:06:57.8677842Z
2026-08-03 – 2026-08-0362026-10-20T17:06:57.8677842Z
2026-08-02 – 2026-08-0212026-10-20T17:06:57.8677842Z
2026-08-01 – 2026-08-0112026-10-20T17:06:57.8677842Z
2026-07-30 – 2026-07-3022026-10-20T17:06:57.8677842Z
2026-07-29 – 2026-07-29152026-10-20T17:06:57.8677842Z
2026-07-27 – 2026-07-2742026-10-20T17:06:57.8677842Z
2026-07-23 – 2026-07-2322026-10-20T17:06:57.8677842Z

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
1.0.014 Jan 20260

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
and3sil4/aa-pytools

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 17:01 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:19b50625d82984d53e364cd77f0890d44b8beaec730c0f95ac2146556a9f6039