Skip to main content

A tool that record and replay keyboard and mouse macro.

Project description

Copycat

copycat is a tool that record and replay mouse and keyboard macro.

Demo

This is a short demo of the tool:

https://github.com/user-attachments/assets/4ce6616e-8fa1-4efb-8c31-f31bfe8e827c

Installation

This tool uses poetry to manage dependencies and packaging. To install all the dependencies simply run:

poetry install

Usage

You can run the tool using poetry:

poetry run copycat --help

Or you can run the tool using python:

python -m copycat --help

Or you can run the tool directly from the directory or add it to your path:

copycat --help
usage: copycat [-h] [--verbose] [--debug] [--quiet | --no-quiet | -q] [--version] [--gui] [--theme THEME] [--speed SPEED] [--reply REPLY]

Copycat is a tool that record and replay mouse and keyboard macro.

options:
  -h, --help            show this help message and exit
  --verbose, -v         Increase verbosity. Use more than once to increase verbosity level (e.g. -vvv).
  --debug               Enable debug mode.
  --quiet, --no-quiet, -q
                        Do not print any output/log
  --version, -V         Show version and exit.
  --gui                 Run the tool in GUI mode.
  --theme THEME, -t THEME
                        Set the "ttkthemes" GUI theme. (Default: equilux)
  --speed SPEED, -s SPEED
                        Speed of the macro playback. (Default: 1.0)
  --reply REPLY, -r REPLY
                        Define macro name to reply.

How it works

First, you need to record a macro, you can do this by running the tool in GUI mode:

copycat --gui

If you want to use a different theme, you can use the --theme option:

copycat --gui --theme "arc"

Visit the ttkthemes documentation to see all the available themes.

Record a macro

Then you can record a macro by clicking the record button. Once you start recording, the GUI will hide so you can perform any mouse and keyboard actions. In every moment, press the ESC key to pause the recording. You can resume the recording pressing again the record button, or you can complete the record process and save the macro by clicking on the save button. Select the name of the macro and click on the save button.

Replay a macro

Once you have a macro saved, you can replay it in two ways:

  1. by clicking on the replay button, and selecting the macro you want to replay and the replay speed (1.0 is the real record speed).
  2. by running the tool with the --reply option:
copycat --reply <macro_name> --speed <speed>

Development

Testing

To run the tests simply run:

poetry run test

Update setup.py

To update the setup.py file with the latest dependencies and versions run:

poetry run poetry2setup > setup.py

Acknowledgements

This project was generated using powerful tools and libraries such as poetry, pydantic, pytest, ttkthemes, pynput pyautogui and more, I simply put the pieces together. Please check and support all the tools and libraries used in this project.

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

copycat-0.1.2.tar.gz (22.9 kB view hashes)

Uploaded Source

Built Distribution

copycat-0.1.2-py3-none-any.whl (26.3 kB view hashes)

Uploaded Python 3

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