
node9-proxy v1.65.0
طبقة أمان التنفيذ لعصر الوكيل الذاتي. توفر إدارة "Sudo" حتمية وسجلات تدقيق لوكلاء الذكاء الاصطناعي المستقلين.
🛡️ Node9
ماذا فعل وكيل الذكاء الاصطناعي الخاص بك فعلياً؟ اكتشف ذلك.
Node9 يجلس بين وكيل الذكاء الاصطناعي الخاص بك والأدوات التي يمكنه استخدامها — اكتشف ما كان يفعله بالفعل، احمِ ضد الإجراءات الخطيرة في الوقت الفعلي، وراجع ما حدث خلال أي فترة زمنية.
يعمل مع Claude Code · Codex CLI · Antigravity (agy) · GitHub Copilot CLI · Gemini CLI · Cursor · Windsurf · VSCode · Claude Desktop · Opencode · Pi · Hermes Agent · أي خادم MCP.
ما الذي يفعله Node9
- 🔍 اكتشف — افحص كل جلسة ذكاء اصطناعي سابقة بحثاً عن تسريبات بيانات الاعتماد، وحلقات الوكلاء، والعمليات المحظورة، وكل سر على القرص يمكن لوكيل الوصول إليه الآن
- 🛡 احمِ — راجع أو احظر الأوامر الخطيرة قبل تنفيذها —
rm -rf,git push --force,DROP TABLE, قراءات بيانات الاعتماد,curl | bash, تسريبات مفاتيح AWS/GitHub/Stripe - 📊 راجع — تقرير بنوافذ زمنية (اليوم / الأسبوع / الشهر / 90 يوماً) — التكلفة لكل وكيل، الأدوات الأكثر استخداماً، الدروع التي أُطلقت، نصف قطر الانفجار
الفحص الاستعادي
هذا جهازي الشخصي — 90 يوماً أثناء بناء Node9. النتيجة 25/100، و5 ملفات بيانات اعتماد يمكن لوكيل الذكاء الاصطناعي الوصول إليها الآن.```bash npx node9-ai scan # before installation, runs in ~10s, nothing uploads node9 scan # after installation, same output
<p align="center">
Node9 scan scorecard
</p>
## بطاقة تقييم الوضع الأمني
يقوم `node9 posture` بتقييم مدى تعرّض هذا الجهاز لعامل مخترَق — العزل، الاتصال الصادر، الأسرار على القرص، سلسلة التوريد، الامتيازات — ويمنحك الأمر الدقيق لإصلاح كل اكتشاف.```bash
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 (أدناه).```text
🛡️ Node9 Posture — agent on this host Score: 100/100 (Good)
2 advisories below don't affect the score — OS-level exposure, yours to weigh.
🟢 node9 is already protecting you ✅ Secrets node9 DLP is blocking this ✅ Egress node9 egress is approval-gating this ✅ Approval gate node9 is blocking this ✅ Privilege node9 is approval-gating this
🔒 node9 reduces these — run the command, the rest is yours ⚠️ Isolation Running directly on the host — no container The agent runs loose on your whole machine, not in a sandbox. → node9 sandbox run — jail it: kernel egress + scoped mounts + node9 inside → node9 shield enable project-jail — or shrink the blast radius, keep host access ⚠️ Network exposure 4 services on 0.0.0.0 (node :3000/:4000, PostgreSQL :5432, Redis :6379) Reachable from your whole network, not just this laptop. → node9 shield enable postgres|redis — node9 blocks DROP TABLE / FLUSHALL → bind to 127.0.0.1 / firewall the port (your part)
✅ Supply chain no issues found ✅ Coverage no issues found
Track this across your fleet & keep it green → node9.ai
## فحص مستودع — أمان agent-CI
يتحقق `node9 scan-repo` من أي مستودع (أو مجلد محلي) بحثًا عن الطرق التي يمكن أن يتم بها **اختطاف وكيل ذكاء اصطناعي** مرتبط بـ GitHub Actions بواسطة **جهة خارجية** — سير عمل قابل للحقن، أسرار يمكن للوكيل الوصول إليها، خوادم MCP غير مثبتة، إعداد وكيل واسع النطاق بشكل مفرط، وملفات تعليمات مسمومة. فحص ثابت وتحليلي فقط: يقرأ فقط الإعداد الملتزم به، ولا ينفذ أبدًا كود المستودع. لا حاجة لتثبيت أو رمز مميز للمستودعات العامة.```bash
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
بعد اكتمال التثبيت، يمكنك التحقق من أن الأداة تعمل بشكل صحيح عن طريق تشغيل الأمر التالي:
toolname --version
يجب أن يظهر لك رقم الإصدار المثبت. إذا واجهت أي مشاكل أثناء التثبيت، فتأكد من أن لديك جميع المتطلبات الأساسية المذكورة في قسم المتطلبات.
الاستخدام
لبدء استخدام الأداة، يمكنك تشغيلها مع الخيارات المتاحة. فيما يلي بعض الأمثلة الشائعة:
toolname scan --target example.com
toolname report --format html
لمزيد من المعلومات حول جميع الخيارات المتاحة، يمكنك استخدام:
toolname --help
أمثلة متقدمة
يمكنك دمج خيارات متعددة لتحقيق نتائج أكثر تخصيصًا:
toolname scan --target example.com --ports 80,443 --threads 10
التكوين
يمكن تخصيص الأداة من خلال ملف التكوين الموجود في ~/.toolname/config.yaml. يمكنك تعديل الإعدادات مثل:
- مستوى السجل (log level)
- المهلة الزمنية للطلبات (timeout)
- عدد المحاولات (retries)
بعد تعديل ملف التكوين، أعد تشغيل الأداة لتطبيق التغييرات.```text 🛡️ node9 scan-repo · node9-ai/agent-security-demo · ⚠️ agent-security risk found inspected 2 config file(s), 2 finding(s)
🔴 CRITICAL Injectable agent workflow — untrusted input reaches a tool-using agent with secrets .github/workflows/vulnerable-example.yml · CI-2 • runs with base-repo secrets (pull_request_target) • checks out the untrusted PR head into the workspace root • allowed_non_write_users: "*" — any user can trigger the agent • no effective actor gate
🔴 CRITICAL Exfiltratable secrets reachable by an injectable agent .github/workflows/vulnerable-example.yml · CI-4 • agent has arbitrary shell (bare Bash) → can read env and exfiltrate
ما الذي يفحصه:
| الفحص | المؤشرات |
| -------- | ---------------------------------------------------------------------------- |
| **CI-1** | إعداد وكيل مُلتزم يصرّح مسبقًا بأدوات واسعة النطاق أو يشغّل خطافات عن بُعد |
| **CI-2** | سير عمل وكيل قابل للحقن — يمكن لطرف خارجي تشغيل الوكيل واختطافه |
| **CI-3** | خوادم MCP غير مثبتة الإصدار / `@latest` أو بيانات اعتماد مضمّنة (سلسلة التوريد) |
| **CI-4** | أسرار يمكن لوكيل مُحقن استخراجها |
| **CI-6** | تعليمات مسمومة أو خطيرة في `CLAUDE.md` / `AGENTS.md` / المهارات |
**احجب كل طلب سحب (PR)** — نفس المحرك المستخدم في GitHub Action، بحيث لا يمكن دمج إعداد قابل للاختطاف:```yaml
# .github/workflows/agent-security.yml
- uses: node9-ai/node9-proxy@v2
with:
fail-on: high # or 'never' to just comment
Marketplace: node9 Agent Security
هل تقوم بتشغيله؟ أضف شارة scanned by node9 إلى ملف README الخاص بك.
المراقبة المباشرة
Node9 monitor dashboard
يفتح node9 monitor لوحة تحكم تفاعلية في الطرفية مع عرضين:
[1]الوقت الفعلي — النشاط المباشر، الموافقات، تنبيهات الأمان، درجة المخاطر الحالية[2]التقرير — ملخص بنافذة زمنية: التكلفة، الأدوات الأكثر استخدامًا، الدروع المُطلقة، نطاق الانفجار
التقرير
اضغط [2] في المراقب للحصول على ملخص بنافذة زمنية. بدّل النافذة باستخدام [T]oday · [W]eek · [M]onth · [N]inety — نفس اللوحات الموجودة في الفحص أعلاه، مدفوعة بسجل التدقيق بعد التثبيت.
Node9 monitor [2] Report
```bash node9 monitor # press [2] for Report view node9 report --period 7d # CLI form, no TUI ``` ## التثبيت```bash # macOS / Linux brew tap node9-ai/node9 && brew install node9or via npm (any platform)
npm install -g node9-ai
بعد اكتمال الفحص، سيعرض التقرير النتائج التفصيلية، بما في ذلك:
- **الملخص التنفيذي**: نظرة عامة عالية المستوى على الوضع الأمني للمنظمة.
- **النتائج التفصيلية**: قائمة شاملة بكل ثغرة تم اكتشافها، مصنفة حسب الخطورة.
- **التوصيات**: خطوات قابلة للتنفيذ لمعالجة الثغرات المكتشفة.
- **المراجع**: روابط لموارد إضافية، مثل قواعد بيانات CVE والوثائق ذات الصلة.
يمكن تصدير التقرير بتنسيقات متعددة، بما في ذلك HTML وPDF وJSON، مما يسمح بالتكامل السلس مع أدوات إعداد التقارير الحالية أو خطوط أنابيب CI/CD.
### خيارات سطر الأوامر
```bash
usage: scanner.py [-h] [-t TARGET] [-o OUTPUT] [-f FORMAT] [-v] [--verbose]
خيارات:
-h, --help عرض رسالة المساعدة هذه والخروج
-t TARGET, --target TARGET
عنوان URL أو عنوان IP الهدف للفحص
-o OUTPUT, --output OUTPUT
مسار ملف الإخراج للتقرير
-f FORMAT, --format FORMAT
تنسيق التقرير: html، pdf، أو json (الافتراضي: html)
-v, --version عرض معلومات الإصدار والخروج
--verbose تمكين الإخراج التفصيلي أثناء الفحص
أمثلة
# إجراء فحص أساسي على عنوان IP مستهدف
python scanner.py -t 192.168.1.1
# فحص عنوان URL مع إخراج JSON
python scanner.py -t https://example.com -f json -o report.json
# فحص تفصيلي مع إخراج PDF
python scanner.py -t 10.0.0.0/24 --verbose -f pdf -o scan_report.pdf
متغيرات البيئة
يدعم الماسح الضوئي متغيرات البيئة التالية للتكوين:
| متغير | الوصف | الافتراضي |
|---|---|---|
SCANNER_THREADS | عدد الخيوط المتزامنة للفحص | 10 |
SCANNER_TIMEOUT | مهلة الطلب بالثواني | 30 |
SCANNER_USER_AGENT | سلسلة User-Agent مخصصة للطلبات | Mozilla/5.0 |
SCANNER_PROXY | عنوان خادم وكيل للطلبات (اختياري) | لا شيء |
الترخيص
يتم توزيع هذه الأداة بموجب رخصة MIT. راجع ملف LICENSE للحصول على التفاصيل.
الإخلاء
هذه الأداة مخصصة للأغراض التعليمية واختبار الاختراق المصرح به فقط. لا يجوز استخدامها ضد الأنظمة دون إذن صريح من المالك. يتحمل المستخدم المسؤولية الكاملة عن أي استخدام غير مصرح به.```bash node9 init # auto-wires all detected agents + MCP servers node9 login # connect this machine to your workspace (approve it in the browser) node9 doctor # verify everything is wired and reporting
يتطلب Node.js 18+.
`init` وحده يمنحك تطبيقًا محليًا كاملًا: القواعد، الدروع، حماية تسرب البيانات (DLP) والموافقات تعمل جميعها دون اتصال، على هذا الجهاز.
`login` هو ما يضع الجهاز على لوحة التحكم الخاصة بك. يطبع رمزًا، ويفتح المتصفح، وتوافق على الجهاز هناك؛ إذا لم يكن لديك حساب بعد، فإن التسجيل في منتصف العملية يعيدك إلى نفس شاشة الموافقة مع بقاء الرمز سليمًا. حتى تقوم بتشغيله، يتم تطبيق كل شيء محليًا لكن لا يصل شيء إلى Mission Control، لذا تبقى لوحة التحكم فارغة.
`node9 logout` يفصل الجهاز مرة أخرى. يلغي مفتاح ذلك الجهاز؛ ويستمر التطبيق المحلي في العمل.
## الدروع — حزم قواعد منسقة
كل درع هو مجموعة قواعد منسقة لخدمة أو مجال معين. فعّل فقط ما تحتاجه.
| الدرع | ما يكتشفه | التفعيل |
| ------------------- | ----------------------------------------------------------------------------- | -------------------------------------- |
| `project-jail` | يمنع قراءة `~/.ssh`، `~/.aws`، `.env`، وبيانات الاعتماد عبر أداتي Bash وRead | `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`، مسح أدوار cluster | `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` |```bash
node9 shield list # show all shields + status
دائم التشغيل — لا حاجة لإعدادات
- 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) - استجابة DLP — ماسح خلفي يقرأ سجل محادثة Claude وينبهك إذا كتب Claude سرًا في نص استجابته
- تثبيت المهارات — تحقق SHA-256 من مهارات / إضافات Claude المثبتة بين الجلسات
مطالبات المراجعة — اعتمد داخل السطر، داخل وكيلك
عندما يعلّم 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على الخطاف):```jsonc { "settings": { "reviewChannel": "ask", // "ask" = inline agent prompt (default) | "approver" = node9's own approver }, }
- **إعدادات الفريق:** عند تكوين مُوافِق سحابي/فريقي (`approvers.cloud: true`)، يتم توجيه المراجعات إلى ذلك المُوافِق بدلاً من ذلك — لن يسمح node9 بتجاوز الموافقة الذاتية المضمّنة للموافقة المُوجّهة/من الطرف الثاني.
## وضع الحماية (Sandbox) — تشغيل وكيل داخل بيئة معزولة
عندما لا تكون المراقبة كافية، يقوم **`node9 sandbox`** بتشغيل الوكيل داخل حاوية قابلة للتخلص مع **قائمة سماح صارمة للاتصالات الصادرة مفروضة على مستوى النواة** و**وحدات تخزين مُقيّدة النطاق** — بينما تُدير hooks الخاصة بـ node9 وتدقق في كل استدعاء أداة _داخل_ الصندوق. النسخة الصارمة من الحماية: لا يمكن للوكيل الوصول إلا إلى المجلد الذي تقوم بتركيبه والوصول إلى المضيفين الذين تسمح لهم؛ كل شيء آخر يُسقَط على مستوى النواة.```bash
cd ~/my-project
node9 sandbox new # write node9.sandbox.yaml — what to mount + which hosts to allow
node9 sandbox run # build + boot the jailed agent (your project at /workspace)
node9 sandbox tail # watch the agent's actions live, from the host
- قابل للتصرف — يتم تدمير الحاوية عند الخروج؛ تعديلات مشروعك تصل إلى قرصك الفعلي، ولا يبقى أي شيء آخر.
- نفس السياسة — قواعد الحماية / قواعد الخروج / الموافقات الحالية لديك تنطبق داخل الصندوق، وتُبث إلى نفس سجل التدقيق ولوحة المعلومات.
- يُغلق حلقة الوضعية — تشغيله يحوّل نتائج العزل / الخروج إلى اللون الأخضر.
النطاق الصريح (المرحلة 1): حاوية واحدة، Claude أولاً (Codex لاحقًا)؛ لا يزال الوكيل يحتفظ ببيانات اعتماده الخاصة داخل الصندوق (جدار الخروج يحصرها في المضيفين المسموحين) — "الوكيل لا يحمل سرًا أبدًا" هي مرحلة وسيط الاعتمادات على خارطة الطريق. يتطلب Docker.
بوابة MCP
قم بلف أي خادم MCP بشفافية. يرى الوكيل نفس الخادم — يعترض Node9 كل استدعاء أداة.```json { "mcpServers": { "postgres": { "command": "node9", "args": ["mcp", "--upstream", "npx -y @modelcontextprotocol/server-postgres postgresql://..."] } } }
أو فقط شغّل `node9 init` — فهو يغلّف خوادم MCP الموجودة لديك تلقائيًا.
<details>
<summary><strong>🔐 تثبيت أدوات MCP — دفاع ضد سحب البساط</strong></summary>
يمكن لخوادم MCP تغيير تعريفات أدواتها بين الجلسات. قد يقوم خادم مخترق أو ضار بإضافة أو إزالة أو تعديل الأدوات بصمت بعد أن وثقت به لأول مرة — وهو هجوم **سحب البساط**.
يقوم Node9 بتثبيت تعريفات الأدوات عند أول استخدام:
1. **الاتصال الأول** — تسجّل البوابة تجزئة SHA-256 لاسم كل أداة ووصفها ومخططها
2. **الاتصالات اللاحقة** — تتم مقارنة التجزئة؛ إذا تغيّرت الأدوات، يتم **عزل** الجلسة ويتم حظر كل استدعاء أداة حتى يراجع إنسان التغيير ويوافق عليه
3. **حالة تثبيت تالفة** — تفشل بشكل مغلق (تحظر)، ولا تعيد الثقة بصمت أبدًا```bash
node9 mcp pin list # show all pinned servers and hashes
node9 mcp pin update <serverKey> # remove pin, re-pin on next connection
node9 mcp pin reset # clear all pins
أوامر أخرى
إلى جانب أوامر التدفق الثلاثة أعلاه (scan / monitor / report):
| الأمر | ما يعرضه | متى يُستخدم |
|---|---|---|
node9 blast | ما يمكن أن يصل إليه وكيل الذكاء الاصطناعي الآن — ملفات، بيانات اعتماد، متغيرات بيئة | أول شيء تشغّله على أي جهاز |
node9 tail | بث مباشر لكل استدعاء أداة (نص فقط، بدون واجهة TUI) | للتوجيه إلى أدوات أخرى، CI، السجلات |
node9 sessions | سجل الجلسات مع المطالبة، وتتبع الأدوات، والتكلفة | لمراجعة تسليم العمل أو الأعمال السابقة |
node9 dlp | نتائج تسريب بيانات الاعتماد في نص استجابة Claude | في أي وقت يُطلق فيه تنبيه 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 في الأسبوع | الوكيل يحاول عمليات عالية التأثير؛ الدروع تستحق المراجعة |
| قاعدة `review-git-push` واحدة >50% من النتائج | قاعدتك تعمل كما هو مقصود — ليست خطرًا، مجرد إشراف |
| نتيجة DLP في أداة `user-prompt` | لصقت سرًا في موجهك الخاص — قم بتدوير المفتاح |
| حلقة الوكيل ×50+ على نفس الملف | الوكيل عالق في دورة تعديل/اختبار/إصلاح — تحقق من السياق أو أبطئ |
| عدم تطابق تثبيت أداة MCP | الخادم غيّر أدواته — راجع قبل إعادة الثقة |
| تحذير استجابة MCP كبيرة | ذلك الخادم يضخم نافذة السياق لديك في كل دورة لاحقة |
| تنبيه `Response DLP` | كتب Claude سرًا في نص استجابته — غير محظور، قم بالتدوير فورًا |
| نتيجة DLP في `tool-result` | قرأ Claude ملفًا يحتوي سرًا (`.env`، بيانات اعتماد) — قم بتدوير المفتاح وشغّل `node9 mask` |
| نتيجة DLP في `[Shell]` | سر نصي صريح في `~/.zshrc` أو `~/.bashrc` — كل جلسة ذكاء اصطناعي يمكنها رؤيته |
الإشارات الفردية طبيعية؛ الأنماط المستمرة هي ما تتصرف بناءً عليه.
## Python SDK — حوكمة أي وكيل Python```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/callعبر JSON-RPC، وتُمرر الباقي - محرك السياسات يستخدم mvdan-sh لتحليل AST الخاص بـ bash — يهزم التمويه عبر هروب الشرطة المائلة العكسية، واستبدال المتغيرات، وتقييم التنزيل عن بُعد
- بيئة الحماية تُنشئ Dockerfile + نقطة دخول تُغلق جدارًا افتراضيًا للرفض عبر
ipset/iptables، ثم تنتقل إلى وكيل غير جذر مع تشغيل خفي node9 وخطافاته داخليًا؛ فقط ملف بيانات اعتماد الوكيل يُثبَّت، وليس مجلد~/.claudeبالكامل
الوثائق الكاملة
مرجع الإعدادات، القواعد الذكية، القواعد الحالة، المضيفون الموثوقون، أوضاع الموافقة، مرجع CLI — في node9.ai/docs.
مشاريع ذات صلة
- node9-python — Python SDK
- node9-pr-agent — إجراء GitHub يراجع طلبات السحب عبر Node9
للمؤسسات
Node9 Pro يضيف قفل الحوكمة، SAML/SSO، تصدير تدقيق مركزي، ونشر VPC. انظر node9.ai.
الترخيص
Apache-2.0
صُنع بـ ☕ وجنون ارتياب صحي.