---
read_when:
    - می‌خواهید یک عامل، Chrome واقعی شما را که در آن وارد حساب شده‌اید، از طریق تلفن‌تان کنترل کند
    - مدام با پیام «Allow remote debugging?» در Chrome مواجه می‌شوید، در حالی که کسی پشت میز نیست
    - می‌خواهید مدل امنیتیِ به‌دست‌گرفتن کنترل مرورگر از طریق افزونه را درک کنید
summary: 'افزونهٔ Chrome: به OpenClaw اجازه دهید Chrome واردشده به حسابتان را بدون نمایش درخواست اشکال‌زدایی از راه دور کنترل کند'
title: افزونهٔ Chrome
x-i18n:
    generated_at: "2026-07-12T10:51:11Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    provider: openai
    source_hash: cb3f7d4bd9d933e0e876d21a1edf07bafbdc18d0196ce636981bd11ad5f2facd
    source_path: tools/chrome-extension.md
    workflow: 16
---

# افزونه Chrome

افزونه Chrome متعلق به OpenClaw به یک عامل اجازه می‌دهد **زبانه‌های Chrome که در آن‌ها وارد حساب شده‌اید** را بدون راه‌اندازی یک مرورگر مدیریت‌شده جداگانه و **بدون** نمایش پیام مسدودکننده «Allow remote debugging?» در Chrome کنترل کند.

این قابلیت هنگامی اهمیت دارد که OpenClaw را از طریق تلفن همراه (Telegram، WhatsApp و غیره) هدایت می‌کنید: [نمایه `user`](/fa/tools/browser#profiles-openclaw-user-chrome) از طریق درگاه اشکال‌زدایی از راه دور Chrome متصل می‌شود و یک کادر محاوره‌ای رضایت روی دسکتاپ نمایش می‌دهد که وقتی حضور ندارید، کسی نمی‌تواند روی آن کلیک کند. افزونه در عوض از API ‏`chrome.debugger` استفاده می‌کند؛ بنابراین تنها نشانه داخل صفحه، نوار قابل‌بستن «OpenClaw started debugging this browser» در Chrome است.

افزونه‌های Chrome مربوط به Claude از Anthropic و Codex از OpenAI نیز از همین الگو استفاده می‌کنند.

## نحوه کار

سه بخش وجود دارد:

- **سرویس کنترل مرورگر** (Gateway یا میزبان Node):‏ API که ابزار `browser` فراخوانی می‌کند.
- **رله افزونه** (WebSocket روی local loopback): سرور کوچکی که سرویس کنترل روی `127.0.0.1` راه‌اندازی می‌کند. این سرور یک نقطه پایانی پروتکل Chrome DevTools را در اختیار OpenClaw قرار می‌دهد و با افزونه ارتباط برقرار می‌کند. هر دو طرف با یک توکن محلی میزبان احراز هویت می‌شوند (به بخش زیر مراجعه کنید).
- **افزونه Chrome متعلق به OpenClaw**‏ (MV3): با استفاده از `chrome.debugger` به زبانه‌ها متصل می‌شود، ترافیک CDP را انتقال می‌دهد و **گروه زبانه OpenClaw** را مدیریت می‌کند.

OpenClaw فقط زبانه‌هایی را می‌بیند و کنترل می‌کند که در **گروه زبانه OpenClaw** قرار دارند. این گروه مرز رضایت است: برای اشتراک‌گذاری، زبانه‌ای را به داخل آن بکشید و برای لغو فوری دسترسی، زبانه را از آن بیرون بکشید (یا روی دکمه نوار ابزار کلیک کنید).

## نصب و جفت‌سازی

1. مسیر افزونه بسته‌بندی‌نشده را نمایش دهید:

   ```bash
   openclaw browser extension path
   ```

2. نشانی `chrome://extensions` را باز کنید، **Developer mode** را فعال کنید، روی **Load unpacked** کلیک کنید و پوشه نمایش‌داده‌شده را انتخاب کنید.

3. رشته جفت‌سازی را نمایش دهید:

   ```bash
   openclaw browser extension pair
   ```

4. روی نماد OpenClaw در نوار ابزار کلیک کنید و رشته جفت‌سازی را در پنجره بازشو جای‌گذاری کنید. وقتی افزونه به رله متصل شود، نشان به **ON** تغییر می‌کند.

توکن جفت‌سازی یک **رمز محرمانه محلی میزبان** است که هنگام نخستین استفاده ایجاد و در پوشه `credentials/` واقع در پوشه وضعیت (با حالت `0600`) ذخیره می‌شود. هر دستگاهی که مرورگر را اجرا می‌کند — میزبان Gateway و هر میزبان Node مرورگر — توکن اختصاصی خود را دارد؛ بنابراین نیازی نیست هیچ اعتبارنامه‌ای بین دستگاه‌ها جابه‌جا شود. برای چرخش آن، فایل `browser-extension-relay.secret` را حذف و دوباره جفت‌سازی کنید.

## استفاده

نمایه داخلی `chrome` را در فراخوانی ابزار `browser` انتخاب کنید یا آن را به نمایه پیش‌فرض تبدیل کنید:

```bash
openclaw config set browser.defaultProfile chrome
```

```json5
{
  browser: {
    profiles: {
      chrome: { driver: "extension", color: "#FF4500" },
    },
  },
}
```

- اشتراک‌گذاری یک زبانه: روی دکمه OpenClaw در نوار ابزار همان زبانه کلیک کنید (زبانه به گروه زبانه OpenClaw می‌پیوندد) یا هر زبانه‌ای را به داخل گروه بکشید.
- عامل همچنین می‌تواند زبانه‌های جدیدی باز کند؛ این زبانه‌ها به‌طور خودکار در گروه قرار می‌گیرند.
- لغو دسترسی: دوباره روی دکمه کلیک کنید، زبانه را از گروه بیرون بکشید یا نوار اشکال‌زدایی Chrome را ببندید. عامل بلافاصله دسترسی به آن زبانه را از دست می‌دهد.

## دسترسی از راه دور / بین دستگاه‌ها

لازم نیست Chrome روی میزبان Gateway اجرا شود. سه توپولوژی قابل استفاده است:

- **همان میزبان** (Gateway و Chrome روی یک دستگاه): با اجرای `openclaw browser extension pair` روی همان دستگاه جفت‌سازی کنید. رله فقط از طریق local loopback قابل دسترسی است.
- **اتصال مستقیم به Gateway راه دور** (Chrome روی لپ‌تاپ شما، Gateway روی یک VPS و **هیچ‌چیز دیگری روی لپ‌تاپ نیست**): روی Gateway فرمان `openclaw browser extension pair --gateway-url wss://your-gateway.example.com` را اجرا کنید. این فرمان رشته‌ای به‌شکل `wss://…/browser/extension#<secret>` نمایش می‌دهد؛ افزونه را روی لپ‌تاپ بارگیری و جفت‌سازی کنید. افزونه از طریق `wss://` **مستقیماً به Gateway** متصل می‌شود — بدون نیاز به نصب OpenClaw،‏ Node،‏ CLI یا بازکردن درگاه ورودی روی لپ‌تاپ. این مسیر مناسب میزبانی مدیریت‌شده است.
- **از طریق میزبان Node مرورگر** (Chrome روی دستگاهی که از قبل یک Node متعلق به OpenClaw را اجرا می‌کند): فرمان `pair` را روی Node اجرا و به‌صورت محلی جفت‌سازی کنید؛ Gateway اقدامات مرورگر را از طریق پیوند احراز هویت‌شده موجود Node به آن واسطه می‌کند.

رمز محرمانه جفت‌سازی برای هر میزبان جداگانه است (در حالت اتصال مستقیم، رمز Gateway) و مسیر `/browser/extension` در Gateway آن را اعتبارسنجی می‌کند. برای مسیر مستقیم، Gateway را از طریق TLS ‏(`wss://`) ارائه کنید تا رمز محرمانه جفت‌سازی و ترافیک CDP رمزگذاری شوند.
رمز محرمانه در قطعه URL رشته جفت‌سازی باقی می‌ماند و هنگام دست‌دهی WebSocket به‌عنوان اعتبارنامه زیرپروتکل ارائه می‌شود؛ بنابراین گزارش‌های دسترسی معمول پراکسی آن را در URL درخواست دریافت نمی‌کنند. اطمینان حاصل کنید که هر پراکسی معکوس، سرآیند استاندارد `Sec-WebSocket-Protocol` را حفظ می‌کند.

## عیب‌یابی

```bash
openclaw browser status --browser-profile chrome
openclaw browser doctor --browser-profile chrome
```

فرمان `doctor` بررسی **رله افزونه Chrome** را تا زمانی که پنجره بازشوی افزونه عبارت **Connected** را نشان دهد، ناموفق گزارش می‌کند.

## مدل امنیتی

- رله فقط به local loopback متصل می‌شود؛ هر دو سمت WebSocket با توکن مشتق‌شده احراز هویت می‌شوند و مبدأ سمت افزونه با `chrome-extension://` بررسی می‌شود.
- جفت‌سازی مستقیم Gateway توکن رله را در URL درخواست نمی‌پذیرد؛ افزونه همراه در عوض آن را در فهرست زیرپروتکل WebSocket حمل می‌کند.
- عامل فقط می‌تواند زبانه‌های موجود در **گروه زبانه OpenClaw** را ببیند و کنترل کند. سایر زبانه‌های شما خصوصی باقی می‌مانند.
- در مقایسه با نمایه `user`‏ (Chrome MCP) که پس از تأیید پیام اشکال‌زدایی از راه دور، کل مرورگری را که در آن وارد حساب شده‌اید در دسترس قرار می‌دهد، افزونه محدوده اشتراک‌گذاری را به گروهی از زبانه‌ها محدود نگه می‌دارد که می‌توانید با یک نگاه کنترل کنید.

همچنین برای آشنایی با مدل کامل نمایه‌ها و نمایه‌های مدیریت‌شده `openclaw` و `user` متعلق به Chrome MCP، به [مرورگر](/fa/tools/browser) مراجعه کنید.
