قم بتشغيل وكلاء الترميز من نوع Claude Code أو المُدارة في صندوق رمل من خلال منح كل وكيل مساحة عمل محددة النطاق، وأذونات ملفات صريحة، وتنفيذ شل مُتحكم به، وسياسة شبكة وحزم، وحدود واضحة للأسرار، وسجلات دائمة، ومخرجات محصورة، ومراجعة بشرية قبل دمج التغييرات أو شحنها. لا يزال بإمكان الوكيل قراءة الكود، وتحرير الملفات، وتثبيت التبعيات، وتشغيل الاختبارات، وإنتاج تصحيح (patch)، ولكن البيئة المحيطة به هي التي تقرر ما يمكنه لمسه، وما يمكنه جلبه، وما هي بيانات الاعتماد التي يمكنه رؤيتها، ومتى يجب على الشخص الموافقة على الخطوة التالية.
ما الذي يحتاج إلى العزل
وكيل الترميز ليس مجرد روبوت محادثة متصل بمستودع. بمجرد أن يتمكن من تحرير الملفات وتشغيل الأوامر، يصبح أشبه بعامل بناء مبتدئ مع تفكير نموذج لغوي في الحلقة. قد يقوم هذا العامل بتشغيل npm test، أو فحص الملفات المُنشأة، أو بدء خادم تطوير، أو محاولة تثبيت حزمة لأن رسالة خطأ تشير إلى ذلك. إذا كانت مساحة العمل هي حاسوبك المحمول، أو عداء CI مشترك، أو جهاز افتراضي طويل الأمد يشبه بيئة الإنتاج، فإن نصف قطر الانفجار واسع جدًا.
هدف العزل هو حلقة عمل الوكيل بأكملها:
- نسخة المستودع والفرع الذي يمكن للوكيل قراءته أو تعديله.
- مسارات نظام الملفات التي يمكن للوكيل الكتابة فيها.
- الأوامر التي يمكنه تشغيلها تلقائيًا.
- الأوامر التي تتطلب موافقة.
- سجلات الحزم، والمجالات، وواجهات برمجة التطبيقات (API) التي يمكنه الوصول إليها.
- بيانات الاعتماد المكشوفة للجلسة.
- السجلات، والفروقات، ومخرجات الاختبار، ولقطات الشاشة، والمخرجات المحفوظة للمراجعة.
- سلوك التنظيف بعد النجاح أو الفشل أو انتهاء المهلة.
قد تتضمن Claude Code ومنتجات الوكلاء المُدارة الأخرى أنظمة أذونات خاصة بها. على سبيل المثال، تصف وثائق Claude Code من Anthropic إعدادات الأذونات للأدوات المسموح بها والممنوعة، وسلوك الموافقة، وتوجيهات صندوق الرمل للاستخدام المحلي. تعامل مع هذه الضوابط كطبقة واحدة، وليس الحدود بأكملها. التصميم الأقوى يضع الوكيل داخل بيئة تشغيل معزولة أيضًا، ثم يطبق أذونات الأدوات داخل تلك البيئة.
بنية مرجعية
يتكون سير عمل صندوق رمل عملي للوكيل من أربع طبقات:
| الطبقة | الغرض | التحكم النموذجي |
|---|---|---|
| وحدة تحكم الوكيل | يقرر خطة المهمة واستدعاءات الأدوات | أذونات النموذج/الأداة، وضع الموافقة، موجه المهمة |
| بيئة تشغيل صندوق الرمل | يستضيف مساحة العمل حيث يتم تشغيل الأوامر | نظام ملفات معزول، حدود العمليات، ضوابط دورة الحياة |
| بوابة السياسة | يقرر الإجراءات المسموح بها | قواعد الأوامر، قواعد الخروج الشبكي، سياسة الحزم، نطاق الأسرار |
| سطح المراجعة | يسمح للبشر بفحص النتائج | الفرق، السجلات، نتائج الاختبار، المخرجات، طلب السحب |
احتفظ بهذه الطبقات منفصلة. إذا تم اختراق وحدة تحكم الوكيل عن طريق حقن الموجه (prompt injection)، فلا يزال يتعين على بيئة تشغيل صندوق الرمل وبوابة السياسة الحد من ما يحدث. إذا سحب تثبيت حزمة كودًا غير متوقع، يجب أن تجعل سجلات الشبكة والمخرجات ذلك مرئيًا. إذا أنتج الوكيل تصحيحًا معقولًا، يجب أن يظهر سطح المراجعة بالضبط ما تغير وأي اختبارات تم تشغيلها.
قد يبدو كائن السياسة المفاهيمي كما يلي:
workspace:
mode: ephemeral
repo_ref: pull-request-branch
writable_paths:
- /workspace/project
readonly_paths:
- /workspace/reference
commands:
auto_allow:
- git status
- npm test
- npm run lint
- pytest
require_approval:
- npm install
- pip install
- docker build
- git push
deny:
- rm -rf /
- curl ... | sh
network:
default: deny
allow:
- registry.npmjs.org
- pypi.org
- files.pythonhosted.org
secrets:
expose:
- READ_ONLY_PACKAGE_TOKEN
deny:
- PRODUCTION_DATABASE_URL
- CLOUD_ADMIN_TOKEN
artifacts:
capture:
- git diff
- test-results/
- screenshots/
- command-log.jsonl
هذا ليس مثالًا على SDK عن قصد. يعتمد تنسيق السياسة الدقيق على إطار عمل الوكيل ومزود صندوق الرمل الخاص بك. النقطة المهمة هي أنه يجب التعبير عن الأذونات خارج التفكير الحر للنموذج، ثم يتم فرضها بواسطة بيئة التشغيل أو طبقة التنسيق.
إعداد مساحة العمل والمستودع
ابدأ كل تشغيل وكيل من مساحة عمل نظيفة. لا ينبغي أن يرث الوكيل المُدار تاريخ شل المطور، أو وكيل SSH، أو ملفات التكوين، أو تسجيل دخول CLI السحابي، أو الملفات المحلية غير المتتبعة ما لم يكن هناك سبب متعمد.
لعمل المستودع، استخدم نسخة مخصصة:
- استنساخ أو تثبيت المستودع المطلوب للمهمة فقط.
- قم بإنشاء فرع مهمة جديد بدلاً من تحرير الفرع الافتراضي.
- ثبت commit الأساسي حتى تتمكن المراجعة من إعادة إنتاج نقطة البداية.
- احتفظ بذاكرة التخزين المؤقت للتبعيات منفصلة عن مسارات المصدر القابلة للكتابة.
- قم بتخزين المخرجات المُنشأة خارج شجرة المصدر ما لم تكن جزءًا من الفرق المقصود.
عزل الفرع مهم لأن وكلاء الترميز غالبًا ما يجربون عدة طرق قبل الاستقرار على واحد. يعطي فرع المهمة النظيف للمراجعين فرق طلب سحب عادي بدلاً من مساحة عمل مختلطة تحتوي على تجارب مؤقتة. إذا احتاج الوكيل إلى المقارنة مع تنفيذ مرجعي، قم بتثبيت هذا المرجع للقراءة فقط.
بالنسبة للوكلاء المُدارين طويلي الأمد، قرر ما إذا كان صندوق الرمل مؤقتًا، أو متوقفًا مؤقتًا، أو تم التقاط لقطة له. مساحات العمل المؤقتة أسهل في التحليل. اللقطات والإيقاف المؤقت/الاستئناف مفيدة للمهام الطويلة، وجلسات المتصفح، وخطوات الإعداد باهظة الثمن، ولكن يجب أن تحافظ على مسار تدقيق واضح: متى تم إنشاء اللقطة، وما هي الملفات الموجودة، وما هي بيانات الاعتماد المتاحة.
أذونات نظام الملفات
يجب أن يكون نطاق نظام الملفات أضيق من “يمكن للوكيل قراءة الجهاز بأكمله”. تحتاج معظم مهام الترميز إلى:
- وصول قراءة/كتابة إلى مساحة عمل المستودع.
- وصول للقراءة فقط إلى سياق المهمة المحدد أو التركيبات أو الوثائق.
- دليل مؤقت لمخرجات البناء والملفات المؤقتة.
- عدم الوصول إلى أدلة المنزل المضيفة، أو المستودعات غير ذات الصلة، أو بيانات اعتماد السحابة، أو ملفات تعريف المتصفح، أو تفريغ بيانات الإنتاج.
تستحق أذونات الكتابة عناية خاصة. يمكن لوكيل الترميز الذي يمكنه تحرير مستودع أيضًا تحرير البرامج النصية والاختبارات وملفات القفل وتكوين CI وملفات النشر. قد يكون هذا هو بالضبط ما تتطلبه المهمة، ولكن يجب أن يكون مرئيًا في المراجعة. بالنسبة للمسارات الحساسة، مثل .github/workflows/، أو مخطوطات النشر، أو تكوين نشر الحزمة، إما اشتراط خطوة موافقة أقوى أو مراجعة نهائية يملكها الإنسان.
استخدم قوائم السماح بالملفات عندما تكون المهمة ضيقة. على سبيل المثال، قد يحتاج وكيل الوثائق فقط إلى docs/ ودليل معاينة مُنشأ. قد يحتاج وكيل ترقية التبعية إلى package.json وملفات القفل ولقطات الاختبار. يحتاج إعادة الهيكلة الواسعة إلى وصول أوسع، ولكن يجب أن تتوقع المراجعة بعد ذلك فرقًا أكبر واختبارات أكثر اكتمالًا.
سياسة تنفيذ شل
الوصول إلى شل هو المكان الذي يصبح فيه وكلاء الترميز مفيدين ومحفوفين بالمخاطر. يحتاجون إلى تنفيذ الأوامر لتشغيل الاختبارات، وتنسيق الكود، وفحص أخطاء البناء، والتحقق من الإصلاحات. لا يحتاجون إلى سلطة غير مقيدة لتشغيل كل أمر دون توقف.
سياسة شل الجيدة تحتوي على ثلاث مجموعات:
| المجموعة | أمثلة | لماذا هي مهمة |
|---|---|---|
| مسموح به تلقائيًا | git status, npm test, pytest, go test ./..., npm run lint |
يحافظ على سرعة حلقات التحرير والاختبار العادية |
| يتطلب موافقة | تثبيت الحزم، الترحيلات، الخدمات طويلة الأمد، CLIs خارجية، git push |
يضيف احتكاكًا حيث تتغير الحالة أو التكلفة أو مخاطر الشبكة |
| ممنوع | أوامر المضيف التدميرية، تفريغ بيانات الاعتماد، أنابيب شل غير الآمنة، الكتابة خارج مساحة العمل | يمنع الإجراءات التي لا ينبغي تفويضها |
لا تعتمد فقط على مطابقة نص الأمر. يمكن للوكلاء تشغيل الأوامر من خلال البرامج النصية، أو ربط مدير الحزم، أو شل المتداخلة. بالنسبة للبيئات عالية المخاطر، اجمع بين سياسة الأوامر وحدود نظام الملفات على مستوى بيئة التشغيل، وحدود الموارد، وضوابط الشبكة.
الأوامر طويلة الأمد تحتاج إلى سلوك المهلة. يمكن أن يظل خادم الاختبار، أو تشغيل أتمتة المتصفح، أو مراقب البناء على قيد الحياة بعد أن ينتقل الوكيل. التقط معرفات العمليات، stdout، stderr، حالة الخروج، وقت التشغيل، وسبب الإنهاء. إذا فتح أمر منفذ معاينة، سجل تعيين المنفذ وأغلقه أثناء التنظيف.
تثبيت الحزم والخروج الشبكي
تثبيت الحزمة هو أحد أكثر الميزات فائدة في مساحة عمل الوكيل وأحد أسهل الأماكن لدخول المخاطر. قد يقوم وكيل الترميز بتثبيت حزمة لأن إجابة Stack Overflow، أو README، أو خطة تم إنشاؤها بواسطة النموذج اقترحت ذلك. يمكن أن يغير ذلك رسم بياني التبعية، وينفذ برامج التثبيت النصية، ويصل إلى السجلات الخارجية.
لأدلة التنفيذ وسير العمل الإنتاجي، ابدأ بوضع “رفض افتراضي” للشبكة، ثم اسمح بما تحتاجه المهمة:
- سجلات الحزم مثل npm أو PyPI، ويفضل أن يكون ذلك من خلال مرآة أو ذاكرة تخزين مؤقت للسجل.
- مضيفو المصادر اللازمة للمستودع والوحدات الفرعية.
- مجالات الوثائق اللازمة للمهمة.
- واجهات برمجة التطبيقات الداخلية فقط عندما يكون لصندوق الرمل تصنيف البيانات الصحيح.
تجنب منح كل وكيل إنترنت واسع النطاق بشكل افتراضي. إذا كان الوصول الواسع مطلوبًا للبحث أو أتمتة المتصفح، افصل هذا التشغيل عن تشغيلات تعديل الكود وقم بتسمية المخرجات وفقًا لذلك.
لتثبيت الحزم، سجل:
- أمر مدير الحزمة.
- مضيف السجل.
- تغييرات ملف القفل.
- أسماء وإصدارات الحزم التي تم تنزيلها عند توفرها.
- أي برامج تثبيت نصية تم تشغيلها.
- ما إذا كان إنسان قد وافق على التثبيت.
هذا لا يجعل الحزم العشوائية آمنة. إنه يجعل مراجعة التغيير ممكنة.
حدود الأسرار
يجب أن تكون الأسرار محددة النطاق حسب المهمة، وقصيرة العمر، وغائبة بشكل افتراضي. صندوق الرمل الأكثر أمانًا ليس الذي يعد بأن النموذج لن يكشف سرًا أبدًا؛ إنه الذي لا يكون فيه السر موجودًا ما لم تتطلبه المهمة حقًا.
استخدم هذه الإعدادات الافتراضية:
- لا توجد بيانات اعتماد قاعدة بيانات إنتاج في مساحات عمل الوكيل.
- لا توجد رموز إدارة سحابية.
- لا توجد مفاتيح SSH شخصية أو بيانات اعتماد جهاز المطور.
- بيانات اعتماد للقراءة فقط حيثما أمكن.
- رموز منفصلة لقراءة الحزم، أو تركيبات الاختبار، أو واجهات برمجة التطبيقات الخاصة بالمرحلة التجريبية فقط.
- تنقيح في السجلات قبل مشاركة المخرجات.
إذا كان يجب على الوكيل استدعاء خدمة خارجية، قدم رمزًا ضيقًا وسجل أي أداة أو أمر استخدمه. تجنب وضع بيانات اعتماد واسعة في ملفات يمكن للوكيل تحريرها. متغيرات البيئة مريحة، لكن لا يزال يمكن طباعتها بواسطة الأوامر، أو تضمينها في السجلات، أو نسخها في الملفات المُنشأة. تعامل معها كما لو كانت مكشوفة لعملية الوكيل.
السجلات والمخرجات ومسارات التدقيق
المراجعة البشرية مفيدة فقط عندما يمكن للمراجعين رؤية ما حدث. يجب أن يحتفظ تشغيل وكيل الترميز في صندوق الرمل بأكثر من التصحيح النهائي.
التقط على الأقل:
- موجه المهمة أو ملخص التعليمات.
- الـ commit الأساسي والفرع.
- الملفات التي تمت قراءتها وكتابتها عندما يمكن لأدواتك تسجيلها.
- الأوامر التي تم تشغيلها، مع الطوابع الزمنية ودليل العمل وحالة الخروج و stdout و stderr.
- ملخصات تثبيت الحزمة والوصول إلى الشبكة.
- نتائج الاختبار والبناء.
- الملفات المُنشأة ولقطات الشاشة والتقارير أو روابط المعاينة.
- الفرق النهائي.
قم بتخزين السجلات في سطح مراجعة يعيش بعد صندوق الرمل. إذا تم تدمير صندوق الرمل فورًا بعد التشغيل، يجب أن تظل الأدلة متاحة في طلب السحب أو مخزن مخرجات CI أو سجل منصة الوكيل.
بالنسبة للفرق التي تستخدم الوكلاء المُدارين، يساعد مسار التدقيق هذا أيضًا في مقارنة أداء الوكيل. يمكنك معرفة ما إذا كانت حالات الفشل ناتجة عن تبعيات مفقودة، أو أمر مرفوض، أو موجه غير واضح، أو اختبارات غير مستقرة، أو مشكلة كود حقيقية.
التنظيف وإعادة الضبط
تنظيف صندوق الرمل هو تحكم أمني وتحكم في التكلفة، وليس مجرد تنظيف منزلي. في نهاية التشغيل:
- أوقف العمليات الخلفية.
- أغلق المنافذ المكشوفة.
- ألغِ الرموز المميزة المحددة النطاق للمهمة.
- صدر المخرجات المطلوبة.
- احذف الملفات المؤقتة التي ليست جزءًا من المراجعة.
- دمر أو أوقف أو التقط لقطة لصندوق الرمل وفقًا لنوع التشغيل.
إعادة الضبط المؤقتة هي الإعداد الافتراضي الأنظف للعمل غير الموثوق أو الاستكشافي. بالنسبة للوكلاء طويلي الأمد، التقط لقطة فقط بعد خطوة إعداد معروفة جيدة، وليس بعد نشاط وكيل عشوائي. إذا كان التشغيل الفاشل يحتاج إلى تحقيق، احتفظ بصندوق الرمل أو اللقطة مع تاريخ انتهاء صلاحية واضح.
أين يتناسب Novita Agent Sandbox
Novita Agent Sandbox مصمم لسير عمل تنفيذ وكلاء الذكاء الاصطناعي حيث يتم تشغيل الكود داخل مساحات عمل سحابية معزولة بدلاً من حاسوب مطور أو مضيف مشترك. تصف وثائق Novita’s Sandbox العناصر الأساسية التي تتوافق مع النمط الموجود في هذا الدليل: إدارة دورة حياة صندوق الرمل، عمليات نظام الملفات، تنفيذ الأوامر، القوالب، وإدارة وقت التشغيل لأعباء عمل الوكيل.
هذا يجعل Novita مناسبة للفرق التي تبني سير عمل وكيل الترميز، وتحليل البيانات، ووكيل المتصفح، والتقييم، أو أعباء عمل الوكيل طويلة الأمد التي تحتاج إلى بيئة تنفيذ إلى جانب واجهات برمجة تطبيقات النموذج. حافظ على الحدود واضحة، مع ذلك: هذه المقالة هي نمط تنفيذ عام لوكلاء الترميز من نوع Claude Code والوكلاء المُدارين. لا تدعي وجود تكامل رسمي لـ Claude Code، أو شراكة، أو توافق عالمي مع كل منتج وكيل مُدار.
إذا كنت تصمم سير عمل يعتمد على Novita، استخدم وثائق المنتج لسطح API المُطلق بالضبط واحتفظ بطبقة السياسة الخاصة بك صريحة. يمكن لصندوق الرمل توفير مساحة عمل التنفيذ المعزولة؛ يجب أن يقرر تطبيقك موافقات الأوامر وسياسة الشبكة ونطاق الأسرار والاحتفاظ بالمخرجات وبوابات المراجعة البشرية.
قائمة مراجعة الأمان
استخدم قائمة المراجعة هذه قبل السماح لوكيل ترميز بالعمل خارج مستودع تجريبي:
| السؤال | ما الذي تبحث عنه |
|---|---|
| ما هي حدود العزل؟ | مساحة عمل مخصصة، حدود العمليات، فصل نظام الملفات، ووثائق مزود واضحة |
| ما الذي يمكن للوكيل قراءته؟ | الوصول إلى المستودع فقط افتراضيًا، لا يوجد دليل منزل مضيف، ولا مستودعات غير ذات صلة |
| ما الذي يمكن للوكيل كتابته؟ | مسارات المصدر القابلة للكتابة صريحة؛ مسارات التكوين الحساسة تحصل على مراجعة إضافية |
| ما الأوامر التي يتم تشغيلها تلقائيًا؟ | أوامر الاختبار والتنسيق مسموح بها؛ الأوامر التي تغير الحالة تتطلب موافقة |
| ما هو الوصول إلى الشبكة الموجود؟ | رفض افتراضي أو خروج محدود النطاق؛ سجلات الحزم ومجالات الوثائق مقصودة |
| كيف يتم التعامل مع تثبيت الحزم؟ | يتم تسجيل تغييرات ملف القفل ومضيفي السجل والبرامج النصية للتثبيت |
| ما هي الأسرار الموجودة؟ | بيانات اعتماد محددة النطاق للمهمة وقصيرة العمر وأقل الامتيازات فقط |
| ماذا يحدث للسجلات؟ | الأوامر والمخرجات والفروقات والمخرجات تبقى على قيد الحياة بعد تنظيف صندوق الرمل |
| كيف يتم فرض التنظيف؟ | العمليات الخلفية والمنافذ والرموز والملفات المؤقتة يتم إغلاقها أو إلغاؤها |
| من يوافق على الدمج أو الشحن؟ | مراجع بشري يتحقق من الكود والاختبارات والملفات الحساسة أمنيًا والمخرجات المُنشأة |
القاعدة الأكثر أهمية بسيطة: لا تخلط بين “طلب الوكيل الإذن” و"فرض النظام لحدود". يمكن للنموذج أن يساعد في شرح ما يريد فعله. يجب أن تقرر طبقة وقت التشغيل والسياسة ما مسموح له بفعله.
الأسئلة الشائعة
هل يمكنك تشغيل Claude Code في صندوق رمل؟
نعم، إذا كان إعدادك يضع الوكيل من نوع Claude Code داخل مساحة عمل محددة النطاق ويفرض حوله سياسات نظام الملفات والشل والشبكة والأسرار والتسجيل والمراجعة. لا تفترض أن موجه الإذن المحلي وحده كافٍ للإنتاج أو المستودعات الحساسة.
هل الحاوية كافية لعزل وكيل الترميز؟
أحيانًا، لكن الإجابة تعتمد على نموذج التهديد الخاص بك. يمكن أن تكون الحاويات مفيدة للبناءات المتكررة وفصل التبعيات، ولكن أعباء العمل الحساسة أمنيًا يجب تقييم حدود kernel، وتثبيتات المضيف، وإعدادات الشبكة الافتراضية، وامتيازات وقت التشغيل، ووثائق المزود قبل معاملة الحاوية على أنها الحدود الكاملة لصندوق الرمل.
هل يجب السماح للوكلاء بتثبيت الحزم؟
يمكنهم ذلك، ولكن يجب التعامل مع تثبيت الحزم كأحداث سلسلة توريد مُتحكم بها. فضّل قوائم السماح أو المرايا للسجلات، ومراجعة ملف القفل، وتسجيل البرامج النصية للتثبيت، والموافقة على التبعيات الجديدة أو الأوامر التي تجلب وتنفذ كودًا عن بُعد.
ما الذي يجب أن يتحقق منه المراجع البشري قبل الدمج؟
راجع الفرق النهائي، والأوامر التي تم تشغيلها، والاختبارات التي تم تنفيذها، وتغييرات الحزمة وملف القفل، وملفات CI/النشر التي تم لمسها، والمخرجات المُنشأة، وأي إجراءات مرفوضة أو تتطلب موافقة. بالنسبة للمستودعات الحساسة أمنيًا، راجع سياسة صندوق الرمل نفسها كجزء من التغيير.
هل يتكامل Novita Agent Sandbox رسميًا مع Claude Code؟
لا تقدم هذه المقالة هذا الادعاء. توفر Novita Agent Sandbox عناصر تنفيذ معزولة لسير عمل الوكيل، بينما منتجات Claude Code والوكلاء المُدارين لها واجهات ونماذج أذونات خاصة بها خاصة بالمنتج. تحقق من مسار التكامل بالضبط مقابل وثائق المنتج الحالية قبل نشر الأوامر القابلة للتنفيذ.
