Skip to main content

A lightweight cross-platform automation tool for games and daily tasks!

Project description

Amiya

Amiya - a lightweight cross-platform automation tool that allows scheduled start and automation of any application from the CLI.

Amiya Icon

Overview

This project is currently in development (Development Status :: 4 - Beta).

Amiya is a easy-to-use and versatile cross-platform application and game automation tool designed for efficiency and ease of use directly from the CLI. This package offers automation capabilities for any applications (including games), enabling users to start and control any application with simple CLI commands.

The primary features supported by the amiya package are:

  1. Application Launcher: Start and terminate any applications from the CLI
  2. Automation Controller: Automate any applications with recorded mouse & keyboard sequences
  3. Scheduling: Schedule the start/automation of any application to run at any time
  4. Other Utilities Other lightweight quality-of-life utilities for applications:
    • Volume control by individual application (GUI)
    • Shutdown/Sleep/Hibernate PC after countdown
    • Internet speed test (CLI), etc.

Designed to be lightweight and fully CLI-based, Amiya is perfect for users who need a reliable and scalable solution for managing and automating their software applications or games.

Installation Guide

To install the beta version of the amiya package locally, run:

$ pip install amiya==0.0.4

OR

$ git clone https://github.com/ReZeroE/Amiya.git
$ cd Amiya/
$ pip install -e .

Alternatively, you may install the most up-to-date development version by cloning the dev branch (unstable):

$ git clone -b dev https://github.com/ReZeroE/Amiya.git
$ cd Amiya/
$ pip install -e .

Usage Guide

Coming soon!

Commands List

$ amiya --help

☆ About : Get information about the Amiya module in general.
  amiya version: Verbose module version
    -h, --help: show this help message and exit

  amiya author: Verbose module author
    -h, --help: show this help message and exit

  amiya repo: Verbose module repository link
    -h, --help: show this help message and exit


☆ App Management : Add, remove, and show applications in Amiya's app configuration.
  amiya add-app: Add a new application
    -h, --help: show this help message and exit

  amiya remove-app: Remove an existing application
    -h, --help: show this help message and exit
    tag: Tag of the application to remove

  amiya show-apps: Show applications
    -h, --help: show this help message and exit
    --short, -s: Only show the app ID, name, and verification status
    --full-path, -f: Show the full path of the applications

  amiya show-config: Show application configuration directory
    -h, --help: show this help message and exit
    tag: Tag of the application to show the configuration directory of
    --all, -a: Show all configuration directory paths (including automation)


☆ Application Launcher : Start or terminate applications from the CLI.
  amiya start: Start an application
    -h, --help: show this help message and exit
    tag: Tag of the application to start


☆ Tag Management : Add or remove tags associated with applications configured with Amiya.
  amiya add-tag: Add a new tag to an application
    -h, --help: show this help message and exit

  amiya remove-tag: Remove a tag from an application
    -h, --help: show this help message and exit


☆ Automation : Record, show, and run automations in applications.
  amiya list-auto: List all the automation sequences of the application
    -h, --help: show this help message and exit
    tag: Tag of the application

  amiya record-auto: [Admin Permission Req.] Record an automation sequence of the application
    -h, --help: show this help message and exit
    tag: Tag of the application

  amiya run-auto: [Admin Permission Req.] Run an automation sequence of the application
    -h, --help: show this help message and exit
    tag: Tag of the application
    seq_name: Name of the sequence to run
    --global-delay, -g: Add a global delay to the sequence during execution
    --terminate, -t: Terminate the application on automation completion
    --no-confirmation, -nc: Run the automation without confirmation
    --sleep: Put PC to sleep after automation finishes (overwrites --shutdown)
    --shutdown: Shutdown PC after automation finishes


☆ Sync Commands : Sync (auto-locate) and cleanup applications across different local machines.
  amiya sync: Sync configured applications on new machine OR auto configure application executable paths
    -h, --help: show this help message and exit

  amiya cleanup: Remove all unverified applications
    -h, --help: show this help message and exit


☆ Utility : Other useful and easy-to-use utilities provided by the Amiya module.
  amiya search: Initiate a search on the default browser
    -h, --help: show this help message and exit
    search_content: Content of the search

  amiya sleep: Put the PC to sleep after X seconds
    -h, --help: show this help message and exit
    delay: Delay in seconds before sleep

  amiya shutdown: Shutdown PC after X seconds
    -h, --help: show this help message and exit
    delay: Delay in seconds before shutdown

  amiya uuid: Display system UUID
    -h, --help: show this help message and exit

  amiya pixel: Track cursor position and color
    -h, --help: show this help message and exit
    --color, -c: Show pixel coordinate as well as the pixel's color hex value.

  amiya volume: Open simple application volume control UI
    -h, --help: show this help message and exit

  amiya click: Continuously click mouse.
    -h, --help: show this help message and exit
    --count, -c: Number of clicks. Leave empty (default) to run forever
    --interval, -d: Interval delay (seconds) between clicks
    --hold-time, -ht: Delay (seconds) between click press and release
    --start-after, -sa: Delay (seconds) before the clicks start
    --quiet, -q: Run without verbosing progress

  amiya elevate: Elevate `amiya` permissions.
    -h, --help: show this help message and exit
    --explain: Explain why this is needed and what will happen.

  amiya track-url: Track URL to monitor anchor href changes.
    -h, --help: show this help message and exit
    --url: The website URL to track
    --interval, -i: The interval duration between GET requests (seconds). Defaulted to 0.
    --open, -o: Open the URL when it is detected as new.

☆ Development : Developer's commands. Open available when [constants.DEVELOPMENT=True].
  amiya dev: [DEV] Developer's commands.
    -h, --help: show this help message and exit
    --objects, -obj: Show all controller objects and their addresses.
    --refresh, -ref: Refresh all controller objects.
    --code, -c: Open development environment with VSCode.
    --isadmin, -ia: Show whether the main thread has admin access.

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

amiya-0.0.4.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

amiya-0.0.4-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file amiya-0.0.4.tar.gz.

File metadata

  • Download URL: amiya-0.0.4.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for amiya-0.0.4.tar.gz
Algorithm Hash digest
SHA256 3fe1117f331752022e13f99d5c117ef3be39507ee6261b5bb3a57649c9bec68f
MD5 51cd06e6fbd285b3410e47b96af43145
BLAKE2b-256 a79e96ad29b22c859ab78b2cf717da01a3799bb8b5e87895b2c2e7e38320ebd3

See more details on using hashes here.

File details

Details for the file amiya-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: amiya-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for amiya-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 9a7791ce1fbe1e653a5be0f2191f2a17b220d5e4e4b0fe72b695f36f9a15000a
MD5 31f9eb143762a2d3004374790ec91a0b
BLAKE2b-256 e6b27f863e48204c8c8248fec4f005a7a7aa9ba4336ad456da852236d4f98e93

See more details on using hashes here.

Supported by

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