دستورهای CLI
دیگ فقط یک رجیستریِ کامپوننت نیست، یک CLIِ کاملِ مدیریتِ چرخهٔ حیاتِ دیزاینسیستم است. این صفحه همهٔ دستورهای پایه را پوشش میدهد؛ برای لایهٔ هوشمندی و AI (health، doctor، migrate-assist --explain) به هوشِ دیزاینسیستم مراجعه کنید.
فهرستِ دستورها
dig init
راهاندازیِ اولیه: ساختِ dig.json با تنظیماتِ style، aliasها، Tailwind و آدرسِ رجیستری.
dig initdig add
نصبِ یک یا چند کامپوننت. فایلها و وابستگیهای ثبتشدهٔ npm خودکار اضافه میشوند و در .dig/registry-lock.json ثبت میشوند.
dig add buttondig add button separator --overwritedig diff
مقایسهٔ فقطخواندنیِ نسخهٔ نصبشده با رجیستری و با فایلِ محلی، تشخیصِ اینکه آیا فایل را شخصیسازی کردهاید یا رجیستری جلوتر رفته. هیچ فایلی تغییر نمیکند.
dig diff buttondig diff button --detailsdig update
بهروزرسانیِ ایمن: فقط فایلهایی را بازنویسی میکند که از زمانِ نصب دستنخورده ماندهاند؛ فایلهایی که شخصیسازی کردهاید نادیده گرفته میشوند (مگر --overwrite).
dig update button --dry-rundig update buttondig migrate
بررسی/اعمالِ مهاجرتهای بینِ نسخهٔ نصبشده و رجیستری. دو راهبرد را پشتیبانی میکند: جایگزینیِ متنیِ ساده (replace) و مهاجرتِ مبتنیبر AST برای عملیاتِ rename-prop (تبدیلِ propِ بولی به propِ رشتهای، مثلِ primary به variant="primary"). مهاجرتهای manual فقط توضیح داده میشوند، خودکار اجرا نمیشوند.
dig migrate button --plandig migrate button --dry-rundig migrate button --applyاجرای واقعی همیشه از سیستمِ عکسفوری/بازگردانیِ موجود استفاده میکند: پیش از نوشتن، محتوای فعلیِ هر فایل در حافظه نگه داشته میشود؛ اگر نوشتنِ هر فایلی در همان دسته شکست بخورد، همهٔ فایلهای همان دسته به حالتِ قبل بازمیگردند و نه lock نه عکسفوری تغییر میکند.
dig migrate-assist
v3بسطِ یافتههای dig doctor به یک پیشنهادِ عملی برای یک کامپوننتِ مشخص: اگر مهاجرتی موجود باشد همان پیشنهاد میشود؛ اگر نه ولی چرخهٔحیات جایگزینی معرفی کرده، همان پیشنهاد میشود؛ در غیرِ این صورت نیازِ بررسیِ دستی اعلام میشود. فقط پیشنهاد میدهد، هیچ فایلی تغییر نمیکند و dig migrate خودکار اجرا نمیشود.
dig migrate-assist buttondig migrate-assist button --explaindig impact
کدام کامپوننتهای رجیستری (مستقیم یا غیرمستقیم) به یک وابستگی متکیاند، روی کلِ کاتالوگ کار میکند، نه فقط چیزی که نصب کردهاید.
dig impact tokensdig release
یادداشتِ انتشارِ نسخهٔ فعلیِ رجیستری برای یک یا چند کامپوننت.
dig release buttondig status
وضعیتِ چرخهٔ حیاتِ رجیستری (فعال/منسوخ/حذفشده) برای یک یا چند کامپوننت.
dig status buttondig governance
گزارشِ حاکمیت: تأثیرِ وابستگی + نیازِ مهاجرت + چرخهٔ حیات + انتشار برای یک کامپوننت، در یک نگاه: ترکیبِ چهار سیستمِ موجود، نه یک محاسبهٔ تازه.
dig governance buttondig governance button --scanپرچمِ --scan با اسکنِ فقطخواندنیِ ریپازیتوریِ فعلی، بخشِ اختیاریِ repositoryImpact (تعدادِ استفادهٔ محلی) را هم اضافه میکند.
dig scan
v2یافتنِ استفادههای JSXِ یک کامپوننت در ریپازیتوریِ محلی، فقط تطبیقِ دقیقِ نامِ تگ (نه پیشوند/شامل)، پس <ButtonComponent /> یا <MyButton /> نادیده گرفته میشوند. کاملاً فقطخواندنی.
dig scan buttondig scan button --jsonخروجیِ JSON
تقریباً همهٔ دستورها پرچمِ --json دارند تا در اسکریپت/CI هم قابلِ استفاده باشند، همان دادهٔ نمایشِ متنی، فقط ساختیافته:
{
"statuses": [
{
"name": "old-input",
"version": "3.0.0",
"lifecycle": {
"status": "deprecated",
"replacement": "input"
}
}
]
}