任務開發

一次性任務示例位於 src/tasks/MyOneTimeTask.py,後臺觸發任務示例位於 src/tasks/MyTriggerTask.py。

建立任務

  • 使用者點選後執行一次的任務繼承 BaseTask。
  • 需要後臺週期檢查的任務繼承 TriggerTask。
  • 通用能力可以放在 src/tasks/MyBaseTask.py。

任務類通常在 __init__() 中設定名稱、描述、預設配置和配置控制元件,在 run() 中實現自動化邏輯。

註冊任務

在 src/config.py 中註冊模組路徑和類名:

'onetime_tasks': [
    ['src.tasks.MyFirstTask', 'MyFirstTask'],
    ['ok', 'DiagnosisTask'],
],

後臺任務使用 trigger_tasks 列表。

常用能力

  • 修改 default_config 增加任務配置預設值。
  • 修改 config_type 選擇配置控制元件型別。
  • 使用 self.ocr() 識別文字。
  • 使用 self.find_one() 或 self.find_feature() 進行模板匹配。
  • 使用 self.info_set() 在 UI 中展示任務狀態。
  • 使用 self.log_info(..., notify=True) 傳送通知。

啟用 custom_tasks 後,也可以在 GUI 中建立和編輯自定義任務指令碼。

使用 AI 輔助開發

倉庫內建以下 Agent Skills:

  • $ok-script-tasks:建立、修改和註冊任務類。
  • $ok-script-codegen:根據需求或截圖生成任務自動化邏輯。
  • $ok-script-i18n:同步任務名稱、描述和配置項翻譯。

驗證

python main_debug.py
python -m unittest tests.TestMain

新增測試時,將檔案放在 tests/ 下;釋出工作流會執行該目錄中的測試檔案。

在 GitHub 查看來源 ↗ · 頁面產生時間: 2026年9月24日