# FIRERPA 星連平台

星連平臺是一個面向分散式 Android 裝置與自動化任務執行的管理系統，**資料完全本地化**，涵蓋**裝置接入**、**裝置監控**、**腳本開發**、**任務編排**、**模型配置**與**使用者管理**等核心場景，適合遠端裝置營運、批量自動化執行和 AI/RPA 腳本，支援跨網裝置互聯、支援本地與遠端裝置的統一接入及 P2P 接入。
<br>
<br>
支援管理大規模裝置節點，編寫、版本化和除錯自動化腳本、向裝置動態下發及執行腳本、追蹤任務執行狀態、結果與失敗原因、配置 AI 模型，支撐 Prompt/混合腳本執行、管理平臺使用者等。

## 主要功能


### 裝置管理

星連平臺提供完整的裝置管理能力，支援裝置清單分頁檢索、排序和批量選取，支援按群組檢視裝置並識別線上、離線、忙碌等狀態。裝置接入支援直連、P2P、轉發等模式，便於適配不同網路環境。平臺同時提供裝置品牌、型號、架構、服務版本、註冊時間、心跳時間、電量等資訊展示，並支援在裝置詳情中進行使用者綁定管理。

### 即時監控

平臺提供裝置即時監控能力，支援裝置總覽、群組篩選和狀態篩選，並可即時預覽裝置畫面。裝置詳情頁可以持續檢視 CPU、記憶體、網路、執行緒、檔案描述符、崩潰數等即時與歷史指標，結合圖表能力幫助使用者持續觀測裝置狀態變化，適合用於遠端巡檢和異常排查。

### 批量操作

在批量操作場景下，星連平臺支援將檔案同時推送到多臺裝置，並提供上傳進度回饋與失敗重試機制；也支援從多臺裝置拉取檔案並統一打包下載。除此之外，平臺還支援批量執行 Shell 命令，並按裝置檢視輸出結果、錯誤資訊和退出狀態，方便進行集中式維運與批量處理。

### 任務編排

平臺內建任務編排與執行能力，支援在任務清單中進行分頁檢視、搜尋、狀態篩選、時間篩選與排序，並可直觀看到執行中、暫停、完成等任務狀態。系統同時提供任務總覽統計，包括執行數、成功數、失敗數、逾時數與趨勢資料。建立任務時可以配置腳本版本、目標群組、執行模式、優先順序、逾時、重試等參數，並支援迴圈、次數、按裝置次數、截止時間、Crontab 等多種排程模式。

### 任務追蹤

在任務詳情中，使用者可以檢視任務基本資訊、腳本版本、執行配置、參數來源和時間資訊，也可以從裝置維度追蹤任務下發、成功、失敗、逾時和繫結狀態。平臺還提供執行例項明細，用於檢視執行狀態、耗時、異常、traceback、結果和資源資訊，並支援對任務進行執行控制與版本切換。

### 腳本中心

腳本中心面向腳本開發、維護與協作場景，支援腳本清單搜尋、型別篩選、時間篩選和批量刪除，支援程式碼指令碼與 Prompt/混合腳本兩類內容。平臺支援腳本共享給其他使用者，腳本詳情頁整合 Monaco Editor，能夠提供較完整的線上開發體驗，同時支援腳本版本歷史瀏覽與 Diff 對比，便於持續迭代和回溯變更。

### 線上除錯

星連平臺提供內建線上除錯能力，支援在腳本頁面直接進入除錯模式，並在選取目標裝置與模型後發起除錯執行。除錯過程中支援 Step In、Step Over、Step Out、Continue、Quit 等控制操作，支援檢視原始碼停靠位置、呼叫棧、區域性變數和除錯輸出，也支援在除錯控制檯執行表示式。結合即時投屏能力，使用者可以把腳本執行過程與裝置畫面聯動觀察。

### 模型管理

平臺提供 AI 模型管理能力，支援維護模型名稱、Endpoint、模型名、Key 等配置，並支援視覺模式開關。使用者還可以配置視覺縮放、最大 Token、Temperature、Step Delay 等參數，使模型能夠更好地適配 Prompt/混合腳本與 AI 驅動任務的執行需求。


## 安裝平臺

我們的服務生態完全基於 Docker，所以您的電腦或者伺服器上必須已安裝 Docker。為了流程順暢地進行，我們建議您使用 Linux 系列的系統如 Ubuntu、Debian 等而非 Windows/Mac。

首先，您需要先克隆我們的配置檔案，您可以執行如下命令

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

```{tip}
如未安裝 Git，請下載並解壓此檔案：https://github.com/firerpa/starlink/archive/refs/heads/master.zip
```

完成克隆後，進入該目錄，目錄下包含一個隱藏檔案 `.env.example`，您需要將其重新命名為 `.env` 並適當調整裡面的配置項，
配置項的修改依據您的實際需求，部分配置一旦設定後續將無法更改。

```{attention}
您需要正確地在防火牆放行 `7123` `8883` `8000` `65000` 埠（預設），如果您在配置中修改了這些埠，請放行對應埠。
```

```ini
DOMAIN=starlink.local

# 以下變數在第一次初始化後嚴禁修改。
API_PORT=65000
WEB_PORT=8000
FWD_PORT=7123

# 設定相關資料庫的預設密碼（隨機設定即可）
REDIS_PASSWORD=9XdTBBn11m5ugEGUavmR4C
RABBITMQ_PASSWORD=6LVc53IVJcRpiDsY0CyLcN
POSTGRES_PASSWORD=P5FinxzLZToVzAaAIZvsIw

# 設定當前伺服器所在的物理網路網段、閘道器以及介面名。
# 如果執行在公網，則您無需配置下列三項，並移除 starlink.yaml 中的所有 lan-macvlan 節
LOCAL_LAN_SUBNET=192.168.50.0/24
LOCAL_LAN_GATEWAY=192.168.50.1
LOCAL_LAN_INTERFACE=enp7s0
# 設定當前服務的本地 IP，取決於您的宿主機是否支援 docker lan-macvlan 模式以及您是否需要接入本地網路的裝置
# 您需要在這裡使用一個當前內網未使用的 IP，如不需要接入本地裝置或者不支援 lan-macvlan 模式，請設定為 127.0.0.1，該項不可為空。
LOCAL_LAN_IP=192.168.50.200

# 設定當前伺服器的公網IP，如果您不打算部署在公網，設定為與 LOCAL_LAN_IP 相同的值，否則請設定正確的伺服器公網地址（可透過命令 curl -4 ip.sb 獲得）
PUBLIC_IP=192.168.50.200

# 部署 https://github.com/firerpa/hub-bridge 來獲得以下參數
# P2P 模式可以讓您在內網執行的情況下接入外網裝置，如果不準備使用 P2P 模式，只需要保持當前註釋狀態即可

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

```{hint}
對於中國大陸內部署的服務，您可能無法正常從 docker hub 拉取映像，您需要自行繞過此限制。
```

配置完成後，在當前目錄執行如下命令即可。

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

稍等片刻您可以在瀏覽器訪問 `https://{LOCAL_LAN_IP}:{WEB_PORT}` 來訪問後臺，公網部署的情況下，請將 `LOCAL_LAN_IP` 替換為 `PUBLIC_IP`，使用預設使用者名稱 `admin`，密碼 `starlink` 來登入後臺，登入後臺後，請及時修改預設密碼。



## 人工服務

如果這些步驟對您來說仍然頗具複雜性，您也可以選擇付費的安裝服務，使用微信掃碼選擇需要的安裝數量，我們將會依據您的需求為您提供合適的遠端安裝服務，讓您省卻一切煩惱。

<p align="center">
<img src="/assets/images/manual-service.png" alt="人工服務" width="25%">
</p>

您可以在支付訂單後的**跳轉頁面**長按二維碼新增我們的人工服務微信（或在 [技術支援](./tech-support.md) 章節新增我們的企業微信），並附帶訂單生成的服務憑證或訂單截圖，我們將竭誠為您服務。