AIPermission: دروازهٔ محلی مجوز برای ایجنتهای AI
خلاصهٔ کاملتر
پروژهٔ AIPermission خودش رو یه دروازهٔ محلی مجوز برای ایجنتهای AI معرفی میکنه. تو مستنداتش اومده که بدون همچین لایهای، کار با AI معمولاً یا به کپیپیست دستی دستور و خروجی ترمینال ختم میشه، یا کردنشیالهای پهن و پرقدرت مستقیم دست دستیار میافته. این ابزار راه سوم رو پیشنهاد میده.
مدلش سادهست: کردنشیالها تو یه دیتابیس محلی رمزشده (SQLCipher روی SQLite) نگه داشته میشن، بعد به هر توکن MCP اجازهٔ ترکیب مشخصی از target، پروفایل و اکشن داده میشه. ایجنت اکشن رو با یه دلیل درخواست میکنه و دروازه طبق قانون فعلی یا جلوش رو میگیره، یا از تو میپرسه، یا اجراش میکنه. مقدار خود کردنشیال هیچوقت از MCP یا REST API برنمیگرده.
سه قانون اجرایی وجود داره: حالت Disabled یعنی اجرا رد میشه، approval_required یعنی یه درخواست تو UI محلی منتظر تأیید میمونه، و always_run یعنی بعد از چک شدن توکن و پروژه و target اجرا شروع میشه. تو رابط کاربری اینا Disabled و Prompt و Always اسم دارن. مجوز موقت میتونه خودکار منقضی شه، و کلید کلی Started/Stopped هم یه مرز جداست: قانون Always هم از دروازهٔ خاموش رد نمیشه.
تیم پروژه روی یه نکته تأکید داره: این ابزار فقط محلیه. باید روی ماشین خودت اجرا شه و پورت Dockerش به 127.0.0.1 بسته بمونه؛ نه سرویس چندکاربرهست، نه گیتوی شبکه، نه سیستم RBAC تیمی. به گفتهٔ خودشون چکهای session و CORS و CSRF لایهٔ دفاعی اضافهان، نه احراز هویت از راه دور.
راهاندازی با Docker Composeست و UI روی پورت 3210 بالا میاد. پل رسمی MCP هم با پکیج @aipermission/mcp روی کلاینت نصب میشه و موقع نصب توکن رو با یه prompt مخفی میگیره. پروژه هنوز pre-1.0 هست، از نسخهٔ v0.1.14 به بعد لایسنسش AGPL-3.0-only شده و نسخهٔ 0.2.0 پایهٔ دیتابیس connector-native رو گذاشته.
نکات کلیدی:
- کردنشیالها تو دیتابیس SQLCipher محلی میمونن و از MCP یا REST API برنمیگردن
- هر مجوز به یکی از سه حالت Disabled و Prompt و Always نگاشت میشه
- تغییر توکن، پرمیشن یا کانکتور، درخواست تأیید منتظر رو بیاعتبار میکنه و باید دوباره تأیید بگیره
- هر دو فایل Compose فقط روی 127.0.0.1 منتشر میکنن و مستندات میگن bind رو عوض نکنید
- لایسنس از v0.1.14 به بعد AGPL-3.0-only شده و نسخههای تا v0.1.13 روی MIT موندن




