FIRERPA Starlink Platform

The Starlink Platform is a management system for distributed Android devices and automated task execution, with completely localized data, covering core scenarios such as device access, device monitoring, script development, task orchestration, model configuration, and user management. It is suitable for remote device operations, batch automation execution, and AI/RPA scripting, supporting cross-network device interconnection, unified access of local and remote devices, and P2P access.

It supports managing large-scale device nodes, writing, versioning, and debugging automation scripts, dynamically deploying and executing scripts on devices, tracking task execution status, results, and failure reasons, configuring AI models to facilitate Prompt/hybrid script execution, and managing platform users.

Main Features

Device Management

Starlink provides comprehensive device management capabilities, including paginated retrieval, sorting, and batch selection of device lists. It supports viewing devices by group and identifying statuses such as online, offline, and busy. Device access supports direct, P2P, and forwarding modes to adapt to different network environments. The platform also displays device information such as brand, model, architecture, service version, registration time, heartbeat time, battery level, and supports user binding management in device details.

Real-time Monitoring

The platform provides real-time device monitoring capabilities, supporting device overview, group filtering, and status filtering, along with real-time device screen preview. The device details page enables continuous monitoring of real-time and historical metrics such as CPU, memory, network, threads, file descriptors, and crash counts. Combined with charting capabilities, it helps users continuously observe device status changes, suitable for remote inspections and anomaly troubleshooting.

Batch Operations

In batch operation scenarios, Starlink supports pushing files to multiple devices simultaneously, providing upload progress feedback and a failure retry mechanism. It also supports pulling files from multiple devices and packaging them into a single download. Additionally, the platform supports batch execution of Shell commands, allowing per-device viewing of output results, error messages, and exit codes, facilitating centralized operation and batch processing.

Task Orchestration

The platform includes built-in task orchestration and execution capabilities, supporting paginated viewing, searching, status filtering, time filtering, and sorting in the task list, allowing intuitive observation of task statuses such as running, paused, and completed. The system also provides task overview statistics, including running, succeeded, failed, timed out counts, and trend data. When creating a task, you can configure parameters such as script version, target group, execution mode, priority, timeout, and retries, and support various scheduling modes such as loop, count, per-device count, deadline, and Crontab.

Task Tracking

In the task details, users can view basic task information, script version, execution configuration, parameter sources, and time information. They can also track task dispatching, success, failure, timeout, and binding status from the device dimension. The platform also provides execution instance details for viewing execution status, duration, exceptions, traceback, results, and resource information, and supports run control and version switching for tasks.

Script Center

The Script Center is designed for script development, maintenance, and collaboration scenarios, supporting script list searching, type filtering, time filtering, and batch deletion. It supports two types of content: code scripts and Prompt/hybrid scripts. The platform allows sharing scripts with other users, and the script detail page integrates the Monaco Editor, providing a relatively complete online development experience. It also supports browsing script version history and Diff comparison, facilitating continuous iteration and change tracking.

Online Debugging

Starlink provides built-in online debugging capabilities, allowing direct entry into debug mode from the script page, and initiating debug runs after selecting a target device and model. During debugging, it supports control operations such as Step In, Step Over, Step Out, Continue, and Quit, and allows viewing source code breakpoints, call stack, local variables, and debug output. It also supports executing expressions in the debug console. Combined with real-time screen mirroring, users can observe the script execution process in correlation with the device screen.

Model Management

The platform provides AI model management capabilities, supporting maintenance of configuration such as model name, endpoint, model name, and key, along with a visual mode switch. Users can also configure parameters such as visual scaling, maximum tokens, temperature, and step delay to better adapt the model to Prompt/hybrid scripts and AI-driven task execution requirements.

Installing the Platform

Our service ecosystem is fully based on Docker, so Docker must be installed on your computer or server. For a smooth process, we recommend using Linux-based systems such as Ubuntu, Debian, etc., rather than Windows/Mac.

First, you need to clone our configuration files. You can execute the following command:

git clone https://github.com/firerpa/starlink.git

Tip

If Git is not installed, please download and extract this file: https://github.com/firerpa/starlink/archive/refs/heads/master.zip

After cloning, enter the directory. The directory contains a hidden file .env.example, which you need to rename to .env and adjust the configuration items accordingly. Modify the configuration items based on your actual needs; some configurations, once set, cannot be changed later.

Attention

You need to correctly open ports 7123, 8883, 8000, and 65000 (default) in the firewall. If you have modified these ports in the configuration, open the corresponding ports.

DOMAIN=starlink.local

# The following variables must not be modified after the first initialization.
API_PORT=65000
WEB_PORT=8000
FWD_PORT=7123

# Set default passwords for related databases (can be set randomly)
REDIS_PASSWORD=9XdTBBn11m5ugEGUavmR4C
RABBITMQ_PASSWORD=6LVc53IVJcRpiDsY0CyLcN
POSTGRES_PASSWORD=P5FinxzLZToVzAaAIZvsIw

# Set the physical network subnet, gateway, and interface name where the current server is located.
# If running on a public network, you do not need to configure the following three items, and remove all lan-macvlan sections in starlink.yaml
LOCAL_LAN_SUBNET=192.168.50.0/24
LOCAL_LAN_GATEWAY=192.168.50.1
LOCAL_LAN_INTERFACE=enp7s0
# Set the local IP of the current service, depending on whether your host supports docker lan-macvlan mode and whether you need to access devices on the local network
# You need to use an unused IP within the current LAN here. If you do not need to access local devices or the lan-macvlan mode is not supported, set it to 127.0.0.1. This item cannot be empty.
LOCAL_LAN_IP=192.168.50.200

# Set the public IP of the current server. If you do not intend to deploy on a public network, set it to the same value as LOCAL_LAN_IP; otherwise, set the correct public server address (can be obtained via the command curl -4 ip.sb)
PUBLIC_IP=192.168.50.200

# Deploy https://github.com/firerpa/hub-bridge to obtain the following parameters
# P2P mode allows you to access external network devices while running on an internal network. If you do not plan to use P2P mode, just keep the current commented-out state.

#TOP_ENDPOINT=http://x.x.x.x:9000
#TOP_CLIENT_KEY=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAq...QIDAQAB
#TOP_SECRET=49c98730-....-bb0c9f22a310

Hint

For deployments in Mainland China, you may not be able to pull images from Docker Hub normally. You need to bypass this restriction on your own.

After configuration is complete, execute the following command in the current directory:

docker compose -f starlink.yaml up --force-recreate -d

After a short wait, you can access the backend in your browser via https://{LOCAL_LAN_IP}:{WEB_PORT}. In the case of public network deployment, replace LOCAL_LAN_IP with PUBLIC_IP. Use the default username admin and password starlink to log in to the backend. After logging in, please change the default password promptly.

Manual Service

If these steps still seem quite complex to you, you can also opt for a paid installation service. Scan the QR code on WeChat to select the required number of installations. We will provide appropriate remote installation services based on your needs, saving you all the hassle.

Manual Service

On the redirected page after paying for the order, long-press the QR code to add our manual service WeChat (or add our company WeChat in the Technical Support section), and attach the order-generated service voucher or order screenshot. We will serve you wholeheartedly.