Get started
کانال تضمین کیفیت
qa-channel یک انتقال پیام مصنوعی و محلیِ مخزن برای QA خودکار OpenClaw است (extensions/qa-channel، بستهٔ خصوصی، حذفشده از نصبهای بستهبندیشده). این یک کانال عملیاتی نیست؛ برای بهکارگیری همان مرز Plugin کانال که انتقالهای واقعی استفاده میکنند ایجاد شده است، درحالیکه وضعیت را قطعی و کاملاً قابلبازرسی نگه میدارد.
چه کاری انجام میدهد
- دستور زبان مقصد در سطح Slack:
dm:<user>channel:<room>group:<room>thread:<room>/<thread>
- گفتوگوهای مشترک
channel:وgroup:بهصورت نوبتهای اتاق گروه/کانال به عاملها ارائه میشوند تا همان سیاست مسیریابی پاسخ قابلمشاهده و ابزار پیام را که Discord، Slack، Telegram و انتقالهای مشابه استفاده میکنند، بهکار گیرند. - گذرگاه مصنوعی مبتنی بر HTTP برای تزریق پیام ورودی، ثبت رونوشت خروجی، ایجاد رشته، واکنشها، ویرایشها، حذفها و عملیات جستوجو/خواندن.
- اجراکنندهٔ خودآزمایی سمت میزبان که یک گزارش Markdown در
.artifacts/qa-e2e/مینویسد.
پیکربندی
{ "channels": { "qa-channel": { "baseUrl": "http://127.0.0.1:43123", "botUserId": "openclaw", "botDisplayName": "OpenClaw QA", "allowFrom": ["*"], "pollTimeoutMs": 1000 } }}کلیدهای حساب:
enabled- کلید اصلی فعالسازی این حساب.name- برچسب نمایشی اختیاری.baseUrl- نشانی اینترنتی گذرگاه مصنوعی. پس از تنظیم این مقدار، حساب پیکربندیشده محسوب میشود.botUserId- شناسهٔ کاربر ربات مصنوعی که در دستور زبان مقصد استفاده میشود (پیشفرض:openclaw).botDisplayName- نام نمایشی پیامهای خروجی (پیشفرض:OpenClaw QA).pollTimeoutMs- بازهٔ انتظار نظرسنجی طولانی. عدد صحیحی بین 100 و 30000 (پیشفرض: 1000).allowFrom- فهرست مجاز فرستندگان (شناسههای کاربر یا"*"؛ پیشفرض:["*"]). پیامهای مستقیم همیشه از سیاستopenپیروی میکنند؛ سیاست گروه مجازشده نیز از همین شناسههای مصنوعی فرستنده استفاده میکند.groupPolicy- سیاست اتاق مشترک:"open"(پیشفرض)،"allowlist"یا"disabled".groupAllowFrom- فهرست مجاز اختیاری فرستندگان اتاق مشترک. اگر در حالت"allowlist"حذف شود، QA Channel بهallowFromبازمیگردد.groups.<room>.requireMention- الزام به منشنکردن ربات پیش از پاسخدادن در یک اتاق گروه/کانال مشخص (پیشفرض: false).groups."*"مقدار پیشفرض را تعیین میکند؛tools/toolsBySenderمختص هر اتاق، بازنویسیهای سیاست ابزار را تعیین میکنند.defaultTo- مقصد جایگزین هنگامی که هیچ مقصدی ارائه نشده است.actions.messages/actions.reactions/actions.search/actions.threads- دروازهبندی ابزار برای هر عملیات.
کلیدهای چندحسابی در سطح بالا:
accounts- رکورد بازنویسیهای نامگذاریشدهٔ مختص هر حساب، با شناسهٔ حساب بهعنوان کلید.defaultAccount- شناسهٔ حساب ترجیحی هنگامی که چند حساب پیکربندی شدهاند.
اجراکنندهها
خودآزمایی سمت میزبان (یک گزارش Markdown زیر .artifacts/qa-e2e/ مینویسد):
pnpm qa:e2eاین عملیات از مسیر qa-lab عبور میکند، گذرگاه QA درون مخزن را راهاندازی میکند، برش زماناجرای qa-channel را بالا میآورد و یک خودآزمایی قطعی را اجرا میکند.
مجموعهٔ کامل سناریوهای مبتنی بر مخزن:
pnpm openclaw qa suiteسناریوها را بهصورت موازی در برابر مسیر Gateway مربوط به QA اجرا میکند. برای سناریوها، پروفایلها و حالتهای ارائهدهنده، نمای کلی QA را ببینید.
سایت QA مبتنی بر Docker (Gateway و رابط کاربری اشکالزدایی QA Lab در یک پشته):
pnpm qa:lab:upسایت QA را میسازد، پشتهٔ Gateway و QA Lab مبتنی بر Docker را راهاندازی میکند و نشانی اینترنتی QA Lab را چاپ میکند. از آنجا میتوان سناریوها را انتخاب کرد، مسیر مدل را برگزید، اجراهای جداگانه را آغاز کرد و نتایج را بهصورت زنده مشاهده کرد. اشکالزدای QA Lab از بستهٔ Control UI منتشرشده جدا است.
مرتبط
- نمای کلی QA - پشتهٔ کلی، آداپتورهای انتقال، پروفایلهای Matrix و نگارش سناریو
- جفتسازی
- گروهها
- نمای کلی کانالها