مبانی Mixin: دو شیوهٔ YAML و JavaScript
Mixin هنگام بارگذاری، سفارشیسازیهای شما را در پروفایل فعال ادغام میکند (Settings → Profile Mixin). دو شیوهٔ نوشتن دارد با رفتارهای بسیار متفاوت:
حالت YAML: بازنویسی اعلانی
mixin:
dns:
enable: true
enhanced-mode: fake-ip
log-level: debug
هر فیلدی بنویسید، فیلد همنامِ پیکربندی را یکجا جایگزین میکند. برای DNS یا log-level که تعویض کل بلوک بیضرر است عالی؛ برای rules نامناسب — چون شما «افزودن» میخواهید نه «فقط همینها بمانند».
حالت JavaScript: ادغام برنامهپذیر
module.exports.parse = async (raw, { yaml }) => {
const config = yaml.parse(raw);
// دو قانون پیش از قوانین اصلی
config.rules = [
"DOMAIN-SUFFIX,mybank.com,DIRECT",
"DOMAIN-KEYWORD,ads,REJECT",
...config.rules,
];
return yaml.stringify(config);
};
حالت JS کل شیء پیکربندی را به شما میدهد: درج قانون، فیلتر گرهها بر اساس نام، ویرایش انبوه ویژگیها — هرچه بخواهید.
انتخاب
فقط DNS / سطح گزارش → YAML بس است. هر چیزی درگیر rules یا فهرست proxies → مستقیم JS. یادتان نرود کلید Mixin را روشن و پروفایل را برای بازخوانی دوباره انتخاب کنید.