تصور کنید هر بار که یک وبسایت تغییر کوچکی در ظاهرش میدهد، تمام کدهایی که برای اتوماسیون نوشتهاید از کار میافتند و باید ساعتها در پانل DevTools به دنبال سلکتورهای جدید بگردید. این چرخه خستهکننده، ویژگی بارز اتوماسیون اپلیکیشنهای وب مدرن است که با بازرسی درخواستهای شبکه و وصله کردن سلکتورهای CSS شکننده تعریف میشود. Webcmd این چرخه را میشکند و نشستهای مرورگر و APIها را به واسطهای خط فرمان (CLI) قطعی تبدیل میکند.
ابزارهای سنتی اتوماسیون مانند Playwright یا Puppeteer به محض تغییر چیدمان یک سایت شکست میخورند. این موضوع یک بار نگهداری دائمی برای توسعهدهندگانی ایجاد میکند که مجبورند دستی سلکتورها را بهروزرسانی کنند، کاری که اغلب در ساعت ۱۱ شب در پانل DevTools انجام میشود. طبق گزارش منتشرشده در ۱۰ ژوئیه ۲۰۲۶ در یک راهنمای فنی در وبسایت dev.to، Webcmd این فشار کاری را به یک عامل (Agent) منتقل میکند که سایت را کاوش کرده و یک آداپتور (Adapter) — کد خاصی که سطح وب را به یک یا چند دستور تبدیل میکند — برای کاربر تولید کرده و آن را تأیید میکند. این رویکرد با تلاشهای شرکتهایی نظیر فریکید همسو است که با مهندسی معکوس APIها، مسیر تبدیل اپلیکیشنهای وب به ابزارهای عملیاتی برای عاملها را هموار کردند.
زمینه و راهاندازی
برای شروع کار، توسعهدهندگان این ابزار را از طریق دستور npm install -g @agentrhq/webcmd با استفاده از Node.js ۲۰ یا نسخههای جدیدتر نصب میکنند. Webcmd در هر جایی که عامل کدنویسی به دسترسی Shell داشته باشد، قابل اجرا است.
قبل از اینکه یک عامل کاوش را آغاز کند، کاربران میتوانند محیط را بررسی کنند. دستور داخلی webcmd doctor سه جزء حیاتی را چک میکند: محیط اجرای محلی (Runtime)، دیمون (Daemon) و پل مرورگر (Browser Bridge). اگر خروجی این دستور سبز باشد، به این معناست که عامل تمام پیشنیازهای لازم برای نوشتن یک دستور را در اختیار دارد.

گردش کار عاملمحور
همانطور که در تحلیلهای پیشین ما دربارهی امنیت مدلهای بازمتن و ابزارهای عاملمحور اشاره کردیم، انتقال کنترل از کد سختگیرانه به منطق احتمالی هوش مصنوعی، نیازمند لایههای اعتبارسازی است. در Webcmd، سیستم بر اساس یک تغییر ذهنی سطح بالا عمل میکند: شما بهجای نوشتن کد، دستور مورد نظر خود را به زبان ساده توصیف میکنید. سپس دستیار کدنویسی هوش مصنوعی، سایت را پیمایش کرده، آداپتور را پیادهسازی و در نهایت تأیید میکند. این ابزار در واقع یکی از پاسخهای عملی به چالشهای اجرایی است که در مجموعهای از ابزارهای کلیدی برای عبور از بنبستهای عملیاتی عاملهای هوش مصنوعی به آنها پرداختهایم.
جزئیات پیادهسازی
بر اساس مستندات فنی این ابزار، جزئیات پیادهسازی به شرح زیر است:
- استخراج دادههای عمومی: کاربر بهجای یافتن دستی DOM، هدف خود را توصیف میکند. برای مثال، برای ایجاد یک CLI جستوجوی شغل، کاربر دستور
webcmd example jobsرا تعریف میکند. او ورودیهایی برای عبارت جستوجو و مکان تعیین میکند و خروجی را در قالب ردیفهای JSON-friendly شامل عنوان، شرکت، مکان، متن حقوق (salary_text)، تاریخ انتشار (posted_at) و URL درخواست میکند. - انتخاب استراتژی: عامل سایت را کاوش کرده و بهطور خودکار بهترین استراتژی را انتخاب میکند. برای صفحات باز از حالت
PUBLICو زمانی که باید یک صفحه زنده را هدایت کند، از حالتUIاستفاده میکند. - آداپتورهای خصوصی: کاربران میتوانند درخواست کنند که آداپتورها خصوصی بمانند و برای اعتبارسنجی آنها از یک تست دودهای (Smoke Test) استفاده کنند.
Webcmd احراز هویتهای پیچیده را از طریق پروفایلهای نامگذاریشده مدیریت میکند. این مکانیزم تضمین میکند که هویتهای مرورگر و وضعیتهای ورود از کد آداپتور جدا بمانند، به این معنی که اعتبارنامهها هرگز وارد کد مبدأ (Codebase) نمیشوند.
برای یک گردش کار در وضعیت ورود، مانند داشبورد Acme برای فاکتورها، کاربر صرفاً عامل را به یک پروفایل خاص (مثلاً پروفایل work) ارجاع میدهد و فیلدهای مورد نیاز را تعریف میکند: شناسه فاکتور (invoice_id)، مشتری، تاریخ سررسید، مبلغ، وضعیت و URL جزئیات. اگر ورود دستی لازم باشد، عامل متوقف شده و از انسان درخواست اعتبارنامه میکند.
پس از تأیید آداپتور، CLI حاصل پایدار و قطعی است. برای مثال، اجرای webcmd acme invoices --format json دادههای ساختاریافتهای را ارائه میدهد که میتوان آنها را به کارهای زمانبندیشده (Cron Jobs) یا خطلولههای داده بزرگتر منتقل کرد، بدون اینکه نیازی به باز بودن پنجره مرورگر باشد.
ترمیم و نگهداری
نگهداری در این سیستم از طریق فرآیندی به نام «ترمیم» (Healing) انجام میشود. در اسکریپتهای سنتی Playwright، یک بهروزرسانی در سایت به معنای مقایسه دستی DOM جدید با قدیمی است. اما در Webcmd، کاربر فقط به عامل میگوید که دستور اکنون ردیفهای خالی برمیگرداند و از او میخواهد آداپتور را تشخیص، تعمیر و تأیید کند.
- ابزارهای ردیابی: عامل از ردیابی Webcmd و ابزارهای مرورگر استفاده میکند تا بفهمد چه چیزی تغییر کرده است؛ خواه یک سلکتور CSS باشد، یک فیلد API یا تغییری در رفتار احراز هویت.
- پایداری طرحواره (Schema): عامل آداپتور را وصله میکند در حالی که ساختار خروجی را بدون تغییر نگه میدارد. این کار باعث میشود اسکریپتهای پاییندستی که از خروجی JSON استفاده میکنند، علیرغم تغییرات رابط کاربری (UI Drift)، هرگز خراب نشوند.
این رویکرد نقش توسعهدهنده را از یک «تیم تعمیرات» به یک معمار سیستم تغییر میدهد. بهجای مراقبت از تکتک عناصر DOM، توسعهدهنده جریانهای داده ساختاریافته و قابل اعتماد را مدیریت میکند.
برای کسانی که از اسکریپتهای سختکد شده فاصله میگیرند، مزیت اصلی تفکیک وضعیت رابط کاربری (UI State) از خروجی دادهها است. عامل هوش مصنوعی در واقع نتیجه وبسایت را در قالب یک دستور تکرارپذیر منجمد میکند.
این تغییر، گامی به سوی محیطهای اجرای عاملمحور است که در آن هوش مصنوعی فقط کد نمینویسد، بلکه واسط عملیاتی بین کاربر و سرویسهای وب شخص ثالث را نگهداری میکند.
توسعهدهندگان اکنون میتوانند از راهنمای شروع سریع (Quickstart) برای انتقال اولین اسکریپتهای Playwright خود به یک محیط اجرای مدیریتشده توسط عامل استفاده کنند و قابلیتهای «ترمیم» را در برابر تغییرات زنده سایتها آزمایش نمایند.
گام بعدی شما
- اگر اسکریپتهای اتوماسیون زیادی با Playwright دارید، چند مورد از شکنندهترین آنها را شناسایی و با Webcmd جایگزین کنید.
- قابلیت «ترمیم» را با تغییر عمدی در CSS یک صفحه محلی تست کنید تا سرعت بازیابی عامل را بسنجید.
- پروفایلهای مجزا برای محیطهای تست و عملیاتی تعریف کنید تا از نشت اعتبارنامهها در کد جلوگیری شود.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell مراجعه کنید.




گفتگو