
node9-proxy v1.67.3
طبقة أمان التنفيذ لعصر الوكيل الذاتي. توفر إدارة "Sudo" حتمية وسجلات تدقيق لوكلاء الذكاء الاصطناعي المستقلين.
🛡️ Node9
ماذا فعل وكيل الذكاء الاصطناعي الخاص بك بالفعل؟ اكتشف.
Node9 يجلس بين وكيل الذكاء الاصطناعي الخاص بك والأدوات التي يمكنه استخدامها — اكتشف ما كان يفعله بالفعل، احم من الإجراءات الخطيرة في الوقت الفعلي، وراجع ما حدث عبر أي فترة زمنية.
يعمل مع Claude Code · Codex CLI · Antigravity (agy) · GitHub Copilot CLI · Gemini CLI · Cursor · Windsurf · VSCode · Claude Desktop · Opencode · Pi · Hermes Agent · any MCP server.
ما يقوم به Node9
- 🔍 اكتشف — امسح كل جلسة ذكاء اصطناعي سابقة بحثًا عن تسريبات بيانات الاعتماد، حلقات الوكيل، العمليات المحظورة، وكل سر على القرص يمكن أن يصل إليه وكيل الآن
- 🛡 احم — راجع أو امنع الأوامر الخطيرة قبل تشغيلها —
rm -rf,git push --force,DROP TABLE, قراءة بيانات الاعتماد,curl | bash, تسريبات مفاتيح AWS/GitHub/Stripe - 📊 راجع — تقرير بنافذة زمنية (اليوم / الأسبوع / الشهر / 90 يومًا) — التكلفة لكل وكيل، أفضل الأدوات، الدروع التي تم تفعيلها، نصف قطر الانفجار
الفحص الاستعادي
هذا هو جهازي الخاص — 90 يومًا أثناء بناء Node9. النتيجة 25/100، 5 ملفات بيانات اعتماد يمكن لوكيل الذكاء الاصطناعي الوصول إليها الآن.
npx node9-ai scan # before installation, runs in ~10s, nothing uploads
node9 scan # after installation, same output
Node9 scan scorecard
بطاقة أداء الوضع الأمني
node9 posture تُقيّم مدى تعرض هذا الجهاز لوكيل مخترق — العزل، الخروج، الأسرار على القرص، سلسلة التوريد، الامتيازات — وتمنحك الأمر المحدد لإصلاح كل اكتشاف.
node9 posture # scorecard with the #1 risk and a fix for every finding
node9 posture --ship # send a redacted snapshot to your node9 dashboard (fleet view)
يتم تجميع الاكتشافات حسب من يمكنه إصلاحها: 🔒 تلك التي يقللها node9 (فقط قم بتشغيل الأمر) و 🧱 تلك التي يمكنك أنت فقط. كل منها يحمل شرحًا بلغة بسيطة عن ماذا / لماذا / من وإصلاح حقيقي — على سبيل المثال، اكتشاف 'الوكيل يعمل بدون صندوق حماية على المضيف' يشير مباشرة إلى node9 sandbox run (أدناه).
🛡️ وضع Node9 — الوكيل على هذا المضيف النتيجة: 100/100 (جيد)
تنبيهان أدناه لا يؤثران على النتيجة — تعرض على مستوى نظام التشغيل، الأمر لك لتقييمه.
🟢 node9 يحميك بالفعل
✅ الأسرار DLP في node9 يمنع هذا
✅ الخروج خروج node9 يخضع للموافقة على هذا
✅ بوابة الموافقة node9 يمنع هذا
✅ الامتياز node9 يخضع للموافقة على هذا
🔒 node9 يقلل هذه — قم بتشغيل الأمر، والباقي عليك
⚠️ العزل التشغيل مباشرة على المضيف — بدون حاوية
الوكيل يعمل بحرية على جهازك بالكامل، وليس في صندوق حماية.
→ node9 sandbox run <agent> — سجنه: خروج kernel + وحدات تخزين مقيدة + node9 بالداخل
→ node9 shield enable project-jail — أو قلل نصف قطر الانفجار، مع الاحتفاظ بالوصول إلى المضيف
⚠️ التعرض للشبكة 4 خدمات على 0.0.0.0 (node :3000/:4000, PostgreSQL :5432, Redis :6379)
يمكن الوصول إليها من شبكتك بالكامل، وليس فقط من هذا الكمبيوتر المحمول.
→ node9 shield enable postgres|redis — node9 يمنع DROP TABLE / FLUSHALL
→ اربط بـ 127.0.0.1 / جدار الحماية للمنفذ (جزءك)
✅ سلسلة التوريد لم يتم العثور على مشكلات
✅ التغطية لم يتم العثور على مشكلات
تتبع هذا عبر أسطولك وحافظ عليه أخضر → node9.ai
فحص مستودع — أمان الوكيل-CI
يتحقق node9 scan-repo من أي مستودع (أو مجلد محلي) بحثًا عن الطرق التي يمكن بها اختطاف وكيل ذكاء اصطناعي مربوط بـ GitHub Actions بواسطة طرف خارجي — سير عمل قابل للحقن، أسرار يمكن للوكيل الوصول إليها، خوادم MCP غير مثبتة، تكوين وكيل واسع جدًا، وملفات تعليمات مسمومة. ثابت وقراءة فقط: يقرأ التكوين الملتزم فقط، ولا ينفذ أبدًا رمز المستودع. لا حاجة للتثبيت أو رمز مميز للمستودعات العامة.
npx node9-ai scan-repo <owner/repo> # any public repo, no install
node9 scan-repo . # a local checkout — no network
node9 scan-repo <owner/repo> --json # machine-readable
🛡️ node9 scan-repo · node9-ai/agent-security-demo · ⚠️ تم العثور على خطر أمني للوكيل
inspected 2 config file(s), 2 finding(s)
🔴 حرج سير عمل وكيل قابل للحقن — إدخال غير موثوق يصل إلى وكيل يستخدم أدوات مع أسرار
.github/workflows/vulnerable-example.yml · CI-2
• يعمل بأسرار المستودع الأساسي (pull_request_target)
• يسحب رأس PR غير الموثوق إلى جذر مساحة العمل
• allowed_non_write_users: "*" — أي مستخدم يمكنه تفعيل الوكيل
• لا بوابة فاعل فعالة
🔴 حرج أسرار قابلة للتسريب يمكن لوكيل قابل للحقن الوصول إليها
.github/workflows/vulnerable-example.yml · CI-4
• الوكيل لديه شل عشوائي (Bash عاري) → يمكنه قراءة البيئة وتسريبها
ما يفحصه:
| الفحص | العلم |
|---|---|
| CI-1 | تكوين وكيل ملتزم يصرح مسبقًا بأدوات واسعة أو يشغل روابط عن بعد |
| CI-2 | سير عمل وكيل قابل للحقن — يمكن لطرف خارجي تفعيل الوكيل واختطافه |
| CI-3 | خوادم MCP غير مثبتة / @latest أو بيانات اعتماد مضمّنة (سلسلة التوريد) |
| CI-4 | أسرار يمكن لوكيل محقون تسريبها |
| CI-6 | تعليمات مسمومة أو خطيرة في CLAUDE.md / AGENTS.md / المهارات |
احجب كل PR — نفس المحرك كإجراء GitHub، بحيث لا يمكن دمج تكوين قابل للاختطاف:
# .github/workflows/agent-security.yml
- uses: node9-ai/agent-security-action@v1
with:
fail-on: high # or 'never' to just comment
السوق: node9 Agent Security Check
المراقبة المباشرة
Node9 monitor dashboard
node9 monitor يفتح لوحة تحكم تفاعلية في المحطة مع عرضين:
[1]الوقت الفعلي — النشاط المباشر، الموافقات، تنبيهات الأمان، درجة المخاطرة الحالية[2]التقرير — ملخص بنافذة زمنية: التكلفة، أفضل الأدوات، الدروع المفعلة، نصف قطر الانفجار
التقرير
اضغط [2] في المراقبة للحصول على ملخص بنافذة زمنية. بدّل النافذة بـ [T]oday · [W]eek · [M]onth · [N]inety — نفس اللوحات كما في الفحص أعلاه، مدفوعة بسجل التدقيق بعد التثبيت.
Node9 monitor [2] Report
node9 monitor # press [2] for Report view
node9 report --period 7d # CLI form, no TUI
التثبيت
# macOS / Linux
brew tap node9-ai/node9 && brew install node9
# or via npm (any platform)
npm install -g node9-ai
node9 init # يربط تلقائيًا جميع الوكلاء المكتشفين + خوادم MCP
node9 doctor # تحقق من أن كل شيء مربوط بشكل صحيح
يتطلب Node.js 18+.
الدروع — حزم قواعد منسقة
كل درع عبارة عن مجموعة قواعد منسقة لخدمة أو مجال. فعّل ما تحتاجه فقط.
| الدرع | ما يكتشفه | التفعيل |
|---|---|---|
project-jail | يمنع قراءة ~/.ssh, ~/.aws, .env, بيانات الاعتماد عبر Bash وأداة القراءة | node9 shield enable project-jail |
bash-safe | curl | bash, rm -rf /, الكتابة فوق القرص, eval عن بعد | node9 shield enable bash-safe |
postgres | DROP TABLE, TRUNCATE, DROP COLUMN, DELETE بدون WHERE | node9 shield enable postgres |
mongodb | dropDatabase, drop(), deleteMany({}), حذف الفهارس | node9 shield enable mongodb |
redis | FLUSHALL, FLUSHDB, CONFIG SET على خادم مباشر | node9 shield enable redis |
aws | حذف S3, إنهاء EC2, تغييرات IAM, تدمير RDS | node9 shield enable aws |
k8s | حذف Namespace, helm uninstall, مسح أدوار الكتلة | node9 shield enable k8s |
docker | system prune, volume prune, rm -f الحاويات | node9 shield enable docker |
github | gh repo delete, حذف الفرع عن بعد, تغييرات الإعدادات | node9 shield enable github |
filesystem | chmod 777, الكتابة تحت /etc/, /boot/, /usr/ | node9 shield enable filesystem |
mcp-tool-gating | أدوات MCP غير معتمدة تفعّل قدرات جديدة بصمت | node9 shield enable mcp-tool-gating |
node9 shield list # عرض جميع الدروع + الحالة
تشغيل دائم — لا حاجة لتكوين
- Git — يلتقط
git push --force,git reset --hard,git clean -fd - SQL — يلتقط
DELETE/UPDATEبدونWHERE,DROP TABLE,TRUNCATE - Shell — يلتقط
curl | bash,sudoغير المصرح به - DLP — يضع علامات على مفاتيح AWS، رموز GitHub، مفاتيح Stripe، مفاتيح PEM الخاصة في أي وسيطة أداة، محتويات ملف، أو تكوين شل (
~/.zshrc,~/.bashrc) - Response DLP — الماسح الخلفي يقرأ تاريخ محادثة كلود وينبهك إذا كتب كلود سرًا في نص رده
- التراجع التلقائي — لقطة git قبل كل تحرير ملف بواسطة الذكاء الاصطناعي →
node9 undoللتراجع - تثبيت المهارات — التحقق SHA-256 من مهارات / إضافات كلود المثبتة بين الجلسات
مطالبات المراجعة — الموافقة المضمنة، في وكيلك
عندما يضع node9 علامة على إجراء للمراجعة (مثل git push --force, DROP TABLE)، يتم عرض مطالبة الموافقة/الرفض مضمنة في محادثة الوكيل — لا جلسة مجمدة، لا محطة منفصلة، لا سباق انتهاء مهلة الخطاف. لا يزال node9 يشغل المقيم الكامل ويتخذ القرار؛ فقط سطح المطالبة ينتقل إلى الوكيل.
- مفعل افتراضيًا لـ Claude Code و GitHub Copilot CLI — الوكلاء الذين يلتزم عقد الخطاف الخاص بهم بـ
askالأصلي. كل وكيل آخر (Codex, Gemini, Antigravity, Hermes, Cursor, OpenCode, Pi) يستخدم الموافق الخاص بـ node9. - تحكم فيه باستخدام
reviewChannelفي~/.node9/config.json(أو--no-askعلى الخطاف):
{
"settings": {
"reviewChannel": "ask", // "ask" = مطالبة وكيل مضمنة (افتراضي) | "approver" = الموافق الخاص بـ node9
},
}
- إعدادات الفريق: عندما يتم تكوين موافق سحابي/فريق (
approvers.cloud: true)، يتم توجيه المراجعات إلى ذلك الموافق بدلاً من ذلك — لن يسمح node9 بتجاوز الموافقة المضمنة الذاتية للموافقة الموجهة/الطرف الثاني.
صندوق الحماية — تشغيل وكيل في سجن
عندما لا تكون المراقبة كافية، يقوم node9 sandbox بتشغيل الوكيل داخل حاوية قابلة للتخلص مع قائمة السماح بالخروج المفروضة من kernel و وحدات تخزين مقيدة — بينما تحكم خطافات node9 وتدقق كل استدعاء أداة داخل الصندوق. النسخة الصعبة من الحماية: يمكن للوكيل فقط لمس المجلد الذي تقوم بتركيبه والوصول إلى المضيفين الذين تسمح بهم؛ كل شيء آخر يتم إسقاطه عند النواة.
cd ~/my-project
node9 sandbox new # كتابة node9.sandbox.yaml — ما يجب تركيبه + أي المضيفين تسمح به
node9 sandbox run # بناء + تشغيل الوكيل المسجون (مشروعك في /workspace)
node9 sandbox tail # مشاهدة إجراءات الوكيل مباشرة، من المضيف
- قابل للتخلص — يتم تدمير الحاوية عند الخروج؛ تعديلات مشروعك تهبط على قرصك الحقيقي، لا شيء آخر يبقى.
- نفس السياسة — الدروع الحالية / قواعد الخروج / الموافقات تنطبق داخل الصندوق، وتُبث إلى نفس سجل التدقيق ولوحة التحكم.
- يغلق حلقة الوضع — تشغيله يحول اكتشافات العزل/الخروج إلى اللون الأخضر.
النطاق الصادق (المرحلة 1): حاوية واحدة، Claude أولاً (Codex لاحقًا)؛ لا يزال الوكيل يحمل بيانات الاعتماد الخاصة به في الصندوق (جدار الخروج يحصرها في المضيفين المسموح بهم) — 'الوكيل لا يحمل سرًا أبدًا' هي مرحلة وسيط بيانات الاعتماد على خريطة الطريق. يتطلب Docker.
بوابة MCP
لف أي خادم MCP بشفافية. يرى الوكيل نفس الخادم — Node9 يعترض كل استدعاء أداة.
{
"mcpServers": {
"postgres": {
"command": "node9",
"args": ["mcp", "--upstream", "npx -y @modelcontextprotocol/server-postgres postgresql://..."]
}
}
}
أو فقط قم بتشغيل node9 init — فهو يلف خوادم MCP الحالية تلقائيًا.
🔐 تثبيت أداة MCP — دفاع ضد سحب البساط
يمكن لخوادم MCP تغيير تعريفات أدواتها بين الجلسات. يمكن لخادم مخترق أو ضار إضافة أو إزالة أو تعديل الأدوات بصمت بعد أن تثق به أولاً — هجوم سحب البساط (rug pull).
Node9 يثبت تعريفات الأدوات عند الاستخدام الأول:
- الاتصال الأول — تسجل البوابة تجزئة SHA-256 لاسم كل أداة ووصفها ومخططها
- الاتصالات اللاحقة — تتم مقارنة التجزئة؛ إذا تغيرت الأدوات، يتم عزل الجلسة ويتم حظر كل استدعاء أداة حتى يراجع إنسان ويوافق على التغيير
- حالة تثبيت تالفة — يفشل مغلقًا (يمنع)، لا يعيد الثقة بصمت أبدًا
node9 mcp pin list # عرض جميع الخوادم المثبتة والتجزئات
node9 mcp pin update <serverKey> # إزالة التثبيت، إعادة التثبيت عند الاتصال التالي
node9 mcp pin reset # مسح جميع التثبيتات
أوامر أخرى
بالإضافة إلى أوامر التدفق الثلاثة أعلاه (scan / monitor / report):
| الأمر | ما يظهره | متى تستخدم |
|---|---|---|
node9 blast | ما يمكن لوكيل الذكاء الاصطناعي الوصول إليه الآن — الملفات، بيانات الاعتماد، البيئة | أول شيء تشغله على أي جهاز |
node9 tail | تيار مباشر لكل استدعاء أداة (نص فقط، بدون واجهة مستخدم) | التوجيه إلى أدوات أخرى، CI، السجلات |
node9 sessions | تاريخ الجلسات مع المطالبة، تتبع الأداة، التكلفة، اللقطة | مراجعة تسليم أو عمل سابق |
node9 dlp | اكتشافات تسرب بيانات الاعتماد في نص استجابة كلود | أي وقت يتم فيه إطلاق تنبيه DLP على سطح المكتب |
node9 mask | إخفاء الأسرار النصية من ملفات تاريخ الجلسات المحلية | بعد اكتشاف DLP — ينظف القرص المحلي |
بالإضافة إلى HUD مباشر في شريط حالة Claude Code الخاص بك:
🛡 node9 | standard | [bash-safe] | ✅ 12 allowed 🛑 2 blocked 🚨 0 dlp | ~$0.43
📊 claude-opus-4-7 | ctx [████████░░░] 54% | 5h [██░░░░░░░░] 12% | 7d [█░░░░░░░] 7%
🗂 2 CLAUDE.md | 8 rules | 3 MCPs | 4 hooks
قراءة البيانات — ماذا تعني الأرقام
Node9 يسفر عن الإشارة. فيما يلي الأنماط التي تستحق المعرفة:
| الإشارة | المعنى المحتمل |
|---|---|
Would have blocked ≥ 5 in a week | الوكيل يحاول عمليات عالية التأثير؛ الدروع تستحق المراجعة |
Single review-git-push rule >50% of findings | القاعدة الخاصة بك تعمل كما هو مقصود — ليس خطرًا، مجرد إشراف |
DLP finding in user-prompt tool | لقد قمت بلصق سر في المطالبة الخاصة بك — قم بتدوير المفتاح |
| Agent Loop ×50+ on same file | الوكيل عالق في دورة تعديل/اختبار/إصلاح — تحقق من السياق أو أبطئ |
| MCP tool pin mismatch | الخادم غير أدواته — راجع قبل إعادة الثقة |
| Large MCP response warning | هذا الخادم يضخم نافذة السياق الخاصة بك لكل دورة لاحقة |
Response DLP alert | كلود كتب سرًا في نص رده — لم يتم حظره، قم بالتدوير فورًا |
DLP finding in tool-result | كلود قرأ ملفًا يحتوي على سر (.env, بيانات اعتماد) — قم بتدوير المفتاح وتشغيل node9 mask |
DLP finding in [Shell] | سر نصي في ~/.zshrc أو ~/.bashrc — كل جلسة ذكاء اصطناعي يمكنها رؤيته |
الإشارات لمرة واحدة طبيعية؛ الأنماط المستمرة هي ما تتصرف بناءً عليه.
Python SDK — حكم أي وكيل Python
from node9 import configure, protect
configure(agent_name="my-agent", policy="require_approval")
@protect("bash")
def run_command(cmd: str) -> str:
...
Python SDK → · مثال وكيل مراجعة كود CI →
تحت الغطاء
- المسح يقرأ تاريخ الوكيل الخام من
~/.claude/projects/,~/.gemini/tmp/,~/.gemini/antigravity-*/brain/,~/.copilot/session-state/,~/.codex/sessions/— لا استدعاءات API، دون اتصال بالإنترنت بالكامل - وقت التشغيل يعترض استدعاءات الأدوات عبر خطافات ما قبل التنفيذ (Claude Code, Codex, Antigravity, GitHub Copilot CLI, Gemini CLI, Opencode, Pi) أو عبر بوابة MCP (Cursor, Windsurf, VSCode, Claude Desktop). جميع القرارات تهبط في
~/.node9/audit.logبشكل ذري. - بوابة MCP هي وكيل stdio؛ تعترض
tools/list+tools/callJSON-RPC، وتوجه الباقي - محرك السياسة يستخدم mvdan-sh لتحليل AST bash — يهزم الإبهام عبر هروب الخط المائل العكسي، استبدال المتغير، eval للتنزيل عن بعد
- مستودع الظل للتراجع التلقائي موجود في
~/.node9/snapshots/<hash16>/— لا يلمس.gitالخاص بك أبدًا - صندوق الحماية يولد Dockerfile + نقطة دخول تغلق جدار خروج
ipset/iptablesالرفض افتراضيًا، ثم ينخفض إلى وكيل غير جذر مع تشغيل خادم node9 + خطافات داخله؛ يتم تثبيت ملف بيانات اعتماد الوكيل فقط، أبدًا~/.claudeبالكامل
الوثائق الكاملة
مرجع التكوين، القواعد الذكية، القواعد ذات الحالة، المضيفين الموثوقين، أوضاع الموافقة، مرجع CLI — في node9.ai/docs.
المشاريع ذات الصلة
- node9-python — Python SDK
- node9-pr-agent — إجراء GitHub يراجع PRs عبر Node9
المؤسسات
Node9 Pro يضيف قفل الحوكمة، SAML/SSO، تصدير التدقيق المركزي، ونشر VPC. انظر node9.ai.
الترخيص
Apache-2.0
بُني بـ ☕ وجنون ارتياب صحي.