Skip to main content

Task-Automator is a modern Python framework for building declarative command-line interfaces with nested subcommands, designed for automation workflows and build systems.

Project description

Task-Automator - Declarative CLI Automation Framework

Python Version License

Supported Platforms

Windows macOS Linux

Overview | What is Task-Automator? | Features | Installation | Build | Defining Commands | License

[!IMPORTANT] 📣 As of March 2025 Task-Automator is still in early development. 📣

Task-Automator is a best-effort open project library. This means that support is not guaranteed and how long the project will be maintained is unknown.

What is Task-Automator?

Task-Automator is a modern Python framework for building declarative command-line interfaces
with nested subcommands, designed for automation workflows and build systems.

Task-Automator is implemented in pure Python that enables scripting of more complicated tasks.

Features

  • 🚀 Declarative Command Tree - Define CLI structure through simple nested dictionaries
  • 🛠 Zero Boilerplate - Focus on business logic, not argument parsing
  • 📚 Automatic Help Generation - Built-in help system with hierarchical documentation
  • 🌳 Hierarchical Commands - Support for unlimited nested subcommands
  • 🖥 Cross-Platform - Works on Windows, Linux, and macOS
  • 📚 Filesystem & Web utils: Utility functions for filesystem operations and web

Installation

You can use pip to install Task-Automator

pip install task-automator

Build

Task-Automator uses Poetry for its build process. To build the wheel file and source distribution run:

poetry build

Defining Commands

Create your command structure in a Python module:

...


def setup_dev_env():
  """Initialize development environment"""
  print("Installing dependencies...")


AUTOMATION_TREE = {
  "setup-dev-env": {
    "help": "Initialize development environment",
    "func": setup_dev_env
  },
  "build": {
    "help": "Build artifacts",
    "subcommands": {
      "win-package": {
        "help": "Create Windows deployment package",
        "func": build_windows_package
      },
      "setup-exe": {
        "help": "Generate installer executable",
        "func": create_installer
      }
    }
  }
}

if __name__ == "__main__":
  from task_automator import automator
  automator.Automator(AUTOMATION_TREE).run()

License

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

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

task_automator-0.2.2.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

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

task_automator-0.2.2-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file task_automator-0.2.2.tar.gz.

File metadata

  • Download URL: task_automator-0.2.2.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.11.9 Windows/10

File hashes

Hashes for task_automator-0.2.2.tar.gz
Algorithm Hash digest
SHA256 8d5267334d1bd357c233493e19f91e8a77f1731240b22e7e2f430185c8f3d0e3
MD5 8b890d6a10e8ffaf0e933592a625b109
BLAKE2b-256 4892243943d18bb40359af300527862b1da2ec8a9db101b1857c165e31d03092

See more details on using hashes here.

File details

Details for the file task_automator-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: task_automator-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 10.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.11.9 Windows/10

File hashes

Hashes for task_automator-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5624df0ca4a1bcc3813c797b9be415a7e61b86ae1d7aa3df69c0a7e7937bb152
MD5 b97f7ae6c5c32cbbad9417b56e364c7d
BLAKE2b-256 a9ffad52d5208596713399d0ae193fce7428e5e14bcb67094297779fb0d09a0d

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