# Automation

***

<figure><img src="https://740728927-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyHs71H35gSuLlkbdhdKs%2Fuploads%2FqRJxDM72E7QMKyLLXdem%2FScreenshot%202025-10-24%20174329.png?alt=media&#x26;token=b3ad6309-9de7-497d-903c-a8747dab3c9a" alt=""><figcaption></figcaption></figure>

### Overview: Visual Node-Based Automation

The **Node Palette** on the left contains drag-and-drop nodes you can use to build flows:

* **Flow Nodes** — Start and End blocks (entry and exit points).
* **UI Actions** — Simulate user input: Tap, Swipe, Type Text, or Press Keys.
* **ADB Actions** — Run custom shell commands, install APKs, or copy text to clipboard.

Each node is configurable and can include delays, arguments, or custom variables.\
Nodes are connected together to form logical automation chains that execute step-by-step on selected devices.

### Summary

| **Feature**                  | **Description**                             |
| ---------------------------- | ------------------------------------------- |
| **Visual No-Code Builder**   | Drag-and-drop node automation               |
| **Multi-Device Execution**   | Run flows on multiple phones simultaneously |
| **GitHub APK Integration**   | Auto-install from live repositories         |
| **Clipboard Paster**         | Instantly push text or QR data              |
| **Real-Time Mirroring Sync** | Build flows while viewing device feedback   |
| **Flow Imports**             | Supports JSON, TXT, and CSV                 |
| **Device-Specific Taps**     | Adjust for different resolutions or layouts |

***

### Click-to-Create Automation (Live Mirroring Integration)

When a device is mirrored on the right-hand side, you can:

* **Hold `Ctrl` + Click** anywhere on the mirrored screen.\
  → A **Tap Node** is instantly added to your flow with exact coordinates captured.

This makes it easy to **build flows live** while seeing what’s happening on the actual device in real-time — ensuring perfect alignment of taps and actions.

***

### Example Use Case: Mass Acurast Setup (Lite Edition)

One of the most common uses of this page is for **Acurast provisioning**, using the built-in **Install-Provision-AcurastLite Flow**.

This flow:

1. **Installs the Acurast Processor Lite APK** directly from GitHub
2. **Sets the device clipboard** with the Acurast Work Profile QR code
3. **Launches the Acurast app** using an ADB Shell Command
4. **Taps on-screen buttons** in the correct sequence to complete setup

This pre-made automation is designed for HMD Vibes, the same model included in *Cellhasher Classic + 20 Phones* . Because other Android screens may vary slightly in resolution or layout, users may need to tweak tap coordinates for other phone models.

<figure><img src="https://740728927-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyHs71H35gSuLlkbdhdKs%2Fuploads%2F0Ih3u9ekNp5pFZgXGDk8%2FScreenshot%202025-10-24%20173242.png?alt=media&#x26;token=060fea48-8c5a-41f8-bb6f-2996de450dfd" alt=""><figcaption></figcaption></figure>

<figure><img src="https://740728927-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyHs71H35gSuLlkbdhdKs%2Fuploads%2FV7qtHNOAP0V8ysPqDLre%2FScreenshot%202025-10-24%20173306.png?alt=media&#x26;token=187bb2b2-18d4-4faf-bdd1-3261357e9224" alt=""><figcaption></figcaption></figure>

<figure><img src="https://740728927-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyHs71H35gSuLlkbdhdKs%2Fuploads%2FgRqhc0ACvcHftXn76IdV%2FScreenshot%202025-10-24%20173334.png?alt=media&#x26;token=96c0176c-b663-4c0e-8fec-0dbd44944660" alt=""><figcaption></figcaption></figure>

<figure><img src="https://740728927-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyHs71H35gSuLlkbdhdKs%2Fuploads%2F90APfwEejSTQ5kGkq4Fp%2FScreenshot%202025-10-24%20173354.png?alt=media&#x26;token=814dbead-3af7-4bd0-9568-253730bc7b60" alt=""><figcaption></figcaption></figure>

{% file src="<https://740728927-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyHs71H35gSuLlkbdhdKs%2Fuploads%2FqolfStUSZaE1WiFVlEth%2FInstall-Provision-AcurastLite(HMD-Vibe).json?alt=media&token=2a3ca254-7a1f-4647-b120-d19d30a6e100>" %}

***

### Flow Loading & Format Support

You can load and run automation flows in several formats:

| **Format** | **Description**                                                     |
| ---------- | ------------------------------------------------------------------- |
| **.JSON**  | Full automation flow with metadata, node structure, and connections |
| **.TXT**   | List of ADB commands (one per line)                                 |
| **.CSV**   | Command lists with arguments, durations, and delays                 |

When you click **Load Flow**, you’ll see the **Load Automation Flow** dialog:\
Here, choose your saved file (e.g., `Install-Provision-AcurastLite(HMD-Vibe).json`) and import it directly into the visual canvas.

***

### Common Nodes & What They Do

| **Node Type**     | **Purpose**                           | **Example Usage**                   |
| ----------------- | ------------------------------------- | ----------------------------------- |
| **Start / End**   | Defines beginning and end of the flow | Start → End                         |
| **Tap**           | Tap on-screen coordinates             | Tap login button                    |
| **Swipe**         | Swipe between two points              | Swipe up to scroll                  |
| I**nput Text**    | Type text input                       | Paste credentials                   |
| **Key Press**     | Simulate button (e.g. HOME or BACK)   | Navigate app screens                |
| **ADB Command**   | Run any ADB shell command             | `am start`, `pm install`            |
| **Install APK**   | Install APK from file, URL, or GitHub | Pulls from `Acurast/processor-lite` |
| **Set Clipboard** | Copy text into device clipboard       | Paste Acurast QR JSON               |
| **Wait / Delay**  | Add time between actions              | Wait 10s after launch               |

Each node has configurable **pre-wait** and **post-wait** timings to ensure stable execution across slower devices or network delays.

***

### Example: Acurast Flow Breakdown

Below are screenshots from the Acurast Lite provisioning example included with CellHasher:

***

#### **1. Visual Flow Canvas**

Here, we see a complete flow with:

* Start → Shell Command → Tap → End
* Real device mirror visible on the right for testing each step

This visual layout shows the exact sequence of actions to automate full setup.

***

#### **2. GitHub APK Installation Node**

This node auto-downloads the latest **Acurast Processor Lite** APK:

* Repository Owner: `Acurast`
* Repository Name: `acurast-processor-lite`
* Branch: `main`
* Keyword Filter: `processor-lite-1.19.0-canary`

It handles fetching and installing the correct version from GitHub automatically.

***

#### **3. Clipboard Setup Node**

The **Set Clipboard** node inserts your **Acurast QR data** directly into the device clipboard.\
This data is used by the Acurast Processor app to complete the work profile provisioning.\
You simply paste your QR JSON here — it will auto-copy into the phone during execution.

***

#### **4. Flow Loading Window**

The **Load Automation Flow** window shows how you can import or create flows.\
Supported formats: JSON, TXT, CSV — allowing easy editing or migration between systems.

***

#### **5. Executing the Flow**

Once a flow is ready:

1. Select devices at the top
2. Click **Execute**
3. Watch the steps run in sequence on all devices

Progress indicators appear per device, giving clear feedback for each automation stage.

***

### Multi-Device Execution

The Automation system supports **multi-device execution**:

* Select 1 or more devices (even all 20 in a cluster)
* Execute the same flow across every device simultaneously
* Each node runs in parallel, isolated per device context

This allows large-scale provisioning or mass configuration in just a few clicks.

***

### Tips for Creating Your Own Flows

* Use **Ctrl+Click** on live mirrors to build accurate Tap positions
* Add short **Wait nodes** between steps (2–3s) to prevent timing issues
* Save reusable flows to your **Library** for quick access
* Adjust Tap coordinates if using devices with different resolutions
* Combine with **Terminal scripts** for advanced hybrid automation

***

***

### Included Example Flow

**Install-Provision-AcurastLite(HMD-Vibe).json**\
Included with CellHasher — pre-tuned for the **HMD Vibe** model in the **CellHasher Classic (20-Device)** kit.\
This automation fully provisions Acurast Lite nodes hands-free, enabling you to deploy dozens of devices in minutes.

{% file src="<https://740728927-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyHs71H35gSuLlkbdhdKs%2Fuploads%2FqolfStUSZaE1WiFVlEth%2FInstall-Provision-AcurastLite(HMD-Vibe).json?alt=media&token=2a3ca254-7a1f-4647-b120-d19d30a6e100>" %}
