mcpField
S
screen-control-operator-v3

screen-control-operator-v3

github.com/breverdbidderエージェントワークフロー49 回インストール
リポジトリ

screen-control-operator-v3 について

screen-control-operator-v3は、ブラウザー操作や自動テスト向けのエージェントスキルです。CDPとアクセシビリティツリーでページを調べ、ワークフローの記録・再生や差し押さえ関連の定義済みスキルに対応します。

主な機能

  1. 01ブラウザーワークフローの記録と保存
  2. 02変数を使ったスキル再生
  3. 03分離したブラウザータスクの並列実行
  4. 04アクセシビリティツリーによるページ調査
  5. 05複数方式での要素検索リカバリー
  6. 06差し押さえ関連の定義済みスキル

活用シーン

  1. 01ブラウザー操作ワークフローの記録と再生
  2. 02差し押さえ関連サイトの並列検索
  3. 03DOM構造の調査とセレクターのデバッグ

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/breverdbidder/life-os --skill screen-control-operator-v3

インストール後、Claude Code で/screen-control-operator-v3を入力して読み込まれたか確認します。

詳細

Screen Control Operator V3

Claude Cowork の発表の3週間前に開発されました。現在は機能面で同等であり、さらに当社独自の強みも備えています。

Claude Cowork に対する主な優位点

機能Claude CoworkScreen Control Operator V3
ビジョン方式スクリーンショットCDP + アクセシビリティツリー
速度1~5秒50~200ms(10倍高速)
コストビジョントークン($$$)テキストトークンのみ($)
信頼性OCR 約85%セマンティッククエリ 100%
スキルの記録✅ はい✅ はい
並列実行✅ はい✅ はい
ドメインスキル汎用差し押さえ特化
スマートルーター該当なし90%が無料枠

このスキルを使う場面

起動フレーズ:

  • 「画面を操作して」
  • 「ワークフローを記録して」
  • 「このスキルを再生して」
  • 「Lovable のプレビューを検証して」
  • 「スクレイパーをテストして」
  • 「DOM セレクターをデバッグして」
  • 「ページ構造を調べて」
  • 「BECA 検索を実行して」
  • 「BCPAO を検索して」
  • 「自律型ブラウザーテスト」

クイックスタート

from screen_control_operator_v3 import ScreenControlOperatorV3

operator = ScreenControlOperatorV3(headless=False)
operator.launch()

# Option 1: Record new skill
skill = operator.record_skill("My Workflow", domain="foreclosure")
operator.save_skill(skill, "my_workflow.json")

# Option 2: Play recorded skill
result = operator.play_skill_file("my_workflow.json", 
    variables={"case_number": "2025-CA-001234"})

# Option 3: Use pre-built foreclosure skills
result = operator.lookup_beca_case("2025-CA-001234")
result = operator.lookup_bcpao_property("12-34-56-78-90")
result = operator.search_acclaimweb_liens("SMITH JOHN")

# Option 4: Parallel execution
results = operator.execute_parallel([
    {"skill": skill1, "variables": {"case": "001"}},
    {"skill": skill2, "variables": {"case": "002"}},
    {"skill": skill3, "variables": {"case": "003"}},
])

operator.close()

CLI コマンド

# Record new skill
python screen_control_operator_v3.py record \
  --name "BECA Deep Search" \
  --domain foreclosure \
  --output skills/beca_deep.json \
  --start-url "https://vmatrix1.brevardclerk.us/beca/"

# Play skill with variables
python screen_control_operator_v3.py play \
  --skill skills/beca_deep.json \
  --vars '{"case_number": "2025-CA-001234"}'

# Pre-built skills
python screen_control_operator_v3.py beca --case "2025-CA-001234"
python screen_control_operator_v3.py bcpao --parcel "12-34-56-78-90"

# Inspect page DOM (NOT screenshot)
python screen_control_operator_v3.py inspect \
  --url "https://example.com" \
  --output structure.json

事前構築済みの差し押さえスキル

スキル ID名前変数説明
beca_lookup_001BECA Case Lookupcase_numberBECA を検索して、判決を抽出します
bcpao_lookup_001BCPAO Propertyparcel_id物件の詳細と写真を取得します
acclaimweb_lien_001Lien Searchparty_name登記済みの先取特権を検索します
realforeclose_list_001Auction Listauction_dateオークションの日程を取得します

スキルの記録(Cowork の機能)

記録の仕組み
  1. ブラウザーを起動し、開始ページに移動します
  2. record_skill(name, domain) を呼び出します
  3. ワークフローを手動で実行します
  4. Enter または Ctrl+C を押して停止します
  5. スキルには次の内容が記録されます:
    • すべてのナビゲーションイベント
    • すべてのクリックイベント(セレクターを含む)
    • すべての入力イベント(値を含む)
    • 成功基準(推定)
記録される内容
{
  "skill_id": "abc123def456",
  "name": "BECA Deep Search",
  "domain": "foreclosure",
  "actions": [
    {
      "action_type": "navigate",
      "url": "https://vmatrix1.brevardclerk.us/beca/"
    },
    {
      "action_type": "type",
      "selector": "#caseNumber",
      "value": "{{case_number}}",
      "element_info": {"label": "Case Number", "role": "textbox"}
    },
    {
      "action_type": "click",
      "selector": "button[type='submit']",
      "element_info": {"label": "Search", "role": "button"}
    }
  ],
  "variables": {"case_number": ""},
  "success_criteria": [
    {"type": "element_visible", "selector": ".case-details"}
  ]
}

並列実行(Cowork の機能)

分離されたブラウザーコンテキストで複数のスキルを同時に実行します:

executor = ParallelExecutor(max_parallel=5)
executor.launch()

tasks = [
    {"skill": beca_skill, "variables": {"case": "2025-CA-001"}},
    {"skill": beca_skill, "variables": {"case": "2025-CA-002"}},
    {"skill": beca_skill, "variables": {"case": "2025-CA-003"}},
    {"skill": beca_skill, "variables": {"case": "2025-CA-004"}},
    {"skill": beca_skill, "variables": {"case": "2025-CA-005"}},
]

results = executor.execute_parallel(tasks)
# All 5 run simultaneously in separate contexts

DOM の検査(当社独自の強み)

スクリーンショットではなく、アクセシビリティツリーを使ってページ構造を取得します:

structure = operator.get_page_structure()

# Returns:
{
  "url": "https://example.com",
  "title": "Page Title",
  "elements": [
    {"tag": "BUTTON", "role": "button", "label": "Submit", "testid": "submit-btn"},
    {"tag": "INPUT", "role": "textbox", "label": "Search", "id": "search-input"},
    ...
  ]
}

自然言語で要素を検索します:

selector = operator.find_element_semantic("search button")
# Returns: "[data-testid='search-btn']" or "#search-button" or similar

スマートルーターとの連携

操作モデル階層コスト
ページ移動無料(Gemini)$0
要素の検索無料(Gemini)$0
スキルの記録無料(Gemini)$0
スキルの再生無料(Gemini)$0
エラーからの復旧バランス型(Sonnet)$

結果: 95%以上の操作が無料枠で実行されます

GitHub Actions との連携

# .github/workflows/browser_agent.yml
name: Browser Agent Daily
on:
  schedule:
    - cron: '0 4 * * *'  # 11 PM EST

jobs:
  scrape:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      
      - name: Set up Python
        uses: actions/setup-python@v4
        with:
          python-version: '3.11'
          
      - name: Install dependencies
        run: |
          pip install playwright
          playwright install chromium
          
      - name: Run Browser Agent
        run: |
          python src/agents/screen_control_operator_v3.py beca \
            --case "${{ github.event.inputs.case_number }}"

エラーからの復旧

要素が見つからない場合、V3 は複数の方法を試します:

  1. data-testid(最も信頼性が高い)
  2. aria-label(セマンティック)
  3. role + text(アクセシビリティ)
  4. ID(従来の方法)
  5. 元のセレクター(フォールバック)
  6. テキストコンテンツ(最後の手段)

これが、Cowork の約85%に対して当社が100%の信頼性を実現する理由です。

依存関係

pip install playwright --break-system-packages
playwright install chromium

ファイルの場所

  • スクリプト: src/agents/screen_control_operator_v3.py
  • スキル: skills/*.json
  • スキルライブラリ: .claude/skills/screen-control-operator-v3/SKILL.md

Claude AI Architect + Ariel Shapira が開発
2025年12月25日(初版)→ 2026年1月15日(V3)
私たちは Claude のイノベーター集団です!

コメント