Giter Club home page Giter Club logo

amiya's Introduction

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.

amiya's People

Contributors

rezeroe avatar

Stargazers

Yulian avatar Adam avatar Christine He avatar  avatar

Watchers

 avatar

Forkers

beycacc

amiya's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.