در این صفحه
در این صفحه
CLI commands
هوکها
openclaw hooks
قلابهای عامل را مدیریت کنید (خودکارسازیهای رویدادمحور برای فرمانهایی مانند /new، /reset و راهاندازی Gateway). استفادهٔ تنها از openclaw hooks معادل openclaw hooks list است.
مرتبط: قلابها - قلابهای Plugin
فهرست قلابها
قلابهای کشفشده در دایرکتوریهای فضای کاری، مدیریتشده، اضافی و همراه را فهرست میکند.
--eligible: فقط قلابهایی که الزاماتشان برآورده شده است.--json: خروجی ساختیافته.-v, --verbose: یک ستون Missing شامل الزامات برآوردهنشده اضافه میکند.
دریافت اطلاعات قلاب
<name> نام یا کلید قلاب است (برای مثال session-memory). منبع، مسیرهای فایل/مدیریتکننده، صفحهٔ اصلی، رویدادها و وضعیت هر الزام (فایلهای اجرایی، محیط، پیکربندی، سیستمعامل) را نمایش میدهد.
بررسی واجد شرایط بودن
خلاصهای از تعداد آماده/ناآماده را چاپ میکند؛ اگر قلابهایی آماده نباشند، هرکدام را با دلیل بازدارندهٔ آن فهرست میکند.
فعالکردن یک قلاب
hooks.internal.entries.<name>.enabled = true را در پیکربندی اضافه/بهروزرسانی میکند و کلید اصلی hooks.internal.enabled را نیز روشن میکند (Gateway تا زمانی که دستکم یک قلاب پیکربندی نشده باشد، هیچ مدیریتکنندهٔ داخلی قلاب را بارگذاری نمیکند). اگر قلاب وجود نداشته باشد، تحت مدیریت Plugin باشد یا واجد شرایط نباشد (الزامات مفقود باشند)، عملیات ناموفق میشود.
قلابهای تحت مدیریت Plugin در hooks list مقدار plugin:<id> را نشان میدهند و از اینجا نمیتوان آنها را فعال/غیرفعال کرد؛ در عوض Plugin مالک را فعال یا غیرفعال کنید.
پس از فعالسازی، Gateway را بازراهاندازی کنید (بازراهاندازی برنامهٔ نوار منوی macOS یا بازراهاندازی فرایند Gateway در محیط توسعه) تا قلابها را دوباره بارگذاری کند.
غیرفعالکردن یک قلاب
hooks.internal.entries.<name>.enabled = false را تنظیم میکند. سپس Gateway را بازراهاندازی کنید.
نصب و بهروزرسانی بستههای قلاب
بستههای قلاب از طریق نصبکننده/بهروزرسان یکپارچهٔ Pluginها نصب میشوند؛ openclaw hooks install / openclaw hooks update همچنان بهعنوان نامهای مستعار منسوخشده کار میکنند که هشداری چاپ میکنند و به فرمانهای plugins هدایت میشوند.
- مشخصات Npm فقط به رجیستری محدودند: نام بسته بههمراه یک نسخهٔ دقیق یا dist-tag اختیاری. مشخصات Git/URL/file و بازههای semver رد میشوند. وابستگیها بهصورت محلی در پروژه با
--ignore-scriptsنصب میشوند. - مشخصات بدون پیشوند و
@latestدر مسیر پایدار باقی میمانند؛ اگر npm یک نسخهٔ پیشانتشار را تعیین کند، OpenClaw متوقف میشود و از شما میخواهد صریحاً آن را بپذیرید (@beta،@rcیا یک نسخهٔ دقیق پیشانتشار). - بایگانیهای پشتیبانیشده:
.zip،.tgz،.tar.gz،.tar. -l, --linkبهجای کپیکردن، یک دایرکتوری محلی را پیوند میدهد (آن را بهhooks.internal.load.extraDirsاضافه میکند)؛ بستههای قلاب پیوندشده، قلابهای مدیریتشده از یک دایرکتوری پیکربندیشده توسط اپراتور هستند، نه قلابهای فضای کاری.--pinنصبهای npm را بهصورتname@versionدقیق و تعیینشده در وضعیت SQLite مشترک ثبت میکند.- نصب، بسته را در
~/.openclaw/hooks/<id>کپی میکند، قلابهای آن را زیرhooks.internal.entries.*فعال میکند و منشأ نصب را در وضعیت SQLite مشترک ثبت میکند. - اگر هش یکپارچگی ذخیرهشده دیگر با دستساختهٔ دریافتشده مطابقت نداشته باشد، OpenClaw هشدار میدهد و پیش از ادامه تأیید میخواهد؛ برای دورزدن این درخواست،
--yesسراسری را ارسال کنید (برای مثال در CI).
قلابهای همراه
| قلاب | رویدادها | کاری که انجام میدهد |
|---|---|---|
| boot-md | gateway:startup |
برای هر محدودهٔ عامل پیکربندیشده، BOOT.md را هنگام راهاندازی Gateway اجرا میکند |
| bootstrap-extra-files | agent:bootstrap |
فایلهای راهانداز اضافی (برای مثال AGENTS.md/TOOLS.md در monorepo) را هنگام راهاندازی عامل تزریق میکند |
| command-logger | command |
رویدادهای فرمان را در ~/.openclaw/logs/commands.log ثبت میکند |
| compaction-notifier | session:compact:before, session:compact:after |
هنگام شروع و پایان Compaction نشست، اعلانهای قابلمشاهدهای در گفتوگو ارسال میکند |
| session-memory | command:new, command:reset |
زمینهٔ نشست را هنگام /new یا /reset در حافظه ذخیره میکند |
هر قلاب همراه را با openclaw hooks enable <hook-name> فعال کنید. جزئیات کامل، کلیدهای پیکربندی و پیشفرضها: قلابهای همراه.
فایل گزارش command-logger
نکات
hooks list --json،info --jsonوcheck --json، JSON ساختیافته را مستقیماً در stdout مینویسند.