Awesome Open Source
Awesome Open Source


TagUI is a command-line tool for digital process automation (RPA)

Download TagUI v6 | Visit documentation | User feedback | We're hiring

Write flows in simple TagUI language and automate your web, mouse and keyboard interactions on the screen.

TagUI is free to use and open-source. It's easy to setup and use, and works on Windows, macOS and Linux.

In TagUI language, you use steps like click and type to interact with identifiers, which include web identifiers, image snapshots, screen coordinates, or even text using OCR. Below is a sample flow to download a report:

click login
type username as [email protected]
type password as 12345678
click btnlogin

download to report.csv
// besides web identifiers, images of UI elements can be used
click login_button.png
type username_box.png as [email protected]
// (x,y) coordinates of user-interface elements can also be used
click (1200,200)
type (800,400) as [email protected]

v6 Features

TagUI live mode

You can run live mode directly for faster development by running tagui live on the command line.

Click text using OCR

TagUI can now click on the screen with visual automation just using text input, by using OCR technology.

click v6 Features using ocr

Deploy flows to run when double clicked

You can now create a shortcut for a flow, which can be moved to your desktop and double-clicked to run the flow. The flow will be run with all the options used when creating the shortcut.

$ tagui my_flow.tag -deploy
$ tagui my_flow.tag -d

Running flows with options can be done with abbreviations

For example, you can now do tagui my_flow.tag -h instead of tagui my_flow.tag -headless.

Migrating to v6

Mandatory .tag file extension

All flow files must have a .tag extension.

Options must be used with a leading hyphen (-)

When running a flow with options, prefix a - to the options.

Before v6:

$ tagui my_flow.tag headless

After v6:

$ tagui my_flow.tag -headless
$ tagui my_flow.tag -h

Change in syntax for echo, dump, write steps

The echo, dump and write steps are now consistent with the other steps. They no longer require quotes surrounding the string input. Instead, variables now need to be surrounded by backticks.

Before v6:

echo 'This works!' some_text_variable

After v6:

echo This works! `some_text_variable`

if and loop code blocks can use indentation instead of curly braces {}

This increases readability and ease of use. Just indent your code within the if and loop code blocks.

Before v6:

if some_condition

After v6:

if some_condition

TagUI v5.11

Visit TagUI v5.11 homepage & documentation


This project is supported by the National Research Foundation, Singapore under its AI Singapore Programme (AISG-RP-2019-050). Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not reflect the views of National Research Foundation, Singapore.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
javascript (66,512
nlp (972
ai (420
opencv (413
tesseract (48
rpa (14

Find Open Source By Browsing 7,000 Topics Across 59 Categories