
yolobox v0.19.4
دع ذكاءك الاصطناعي ينطلق بأقصى طاقته. مجلدك الرئيسي يبقى في مكانه.
██╗ ██╗ ██████╗ ██╗ ██████╗ ██████╗ ██████╗ ██╗ ██╗
╚██╗ ██╔╝██╔═══██╗██║ ██╔═══██╗██╔══██╗██╔═══██╗╚██╗██╔╝
╚████╔╝ ██║ ██║██║ ██║ ██║██████╔╝██║ ██║ ╚███╔╝
╚██╔╝ ██║ ██║██║ ██║ ██║██╔══██╗██║ ██║ ██╔██╗
██║ ╚██████╔╝███████╗╚██████╔╝██████╔╝╚██████╔╝██╔╝ ██╗
╚═╝ ╚═════╝ ╚══════╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝
دع الذكاء الاصطناعي ينطلق بأقصى قوته. يبقى دليل المنزل في مكانه.
التوثيق: yolobox.dev
سجل التغييرات: CHANGELOG.md
شغّل Claude Code، أو Codex، أو Kimi Code، أو Gemini، أو Antigravity، أو OpenCode، أو Copilot، أو Pi، أو أي وكيل برمجة بالذكاء الاصطناعي في "وضع yolo" دون تدمير دليل المنزل الخاص بك.
المشكلة
وكلاء البرمجة بالذكاء الاصطناعي أقوياء للغاية عندما تسمح لهم بتشغيل الأوامر دون طلب إذن. لكن أمر واحد أُسيء تفسيره وبعد rm -rf ~، ستكون تستعيد من نسخة احتياطية (أجل، كما لو كانت لديك نسخ احتياطية هههه).
الحل
يشغّل yolobox وكيل الذكاء الاصطناعي الخاص بك داخل حاوية حيث:
- دليل مشروعك مُثبَّت على مساره الحقيقي، مثل
/Users/you/project - يمتلك الوكيل صلاحيات كاملة وsudo داخل الحاوية
- دليل المنزل الخاص بك غير مُثبَّت إلا إذا اخترت ذلك صراحةً
- تحافظ الأحجام الدائمة على الأدوات والإعدادات والجلسات عبر التشغيلات
- يحصل Claude وCodex وKimi Code على إرشادات yolobox المدمجة حتى يتمكنوا من فهم البيئة المعزولة التي يعملون فيها
يمكن للذكاء الاصطناعي أن يهيج بحرية مطلقة داخل البيئة المعزولة. أما دليل المنزل الفعلي الخاص بك؟ لا يمكن المساس به.
البدء السريع
# Install via Homebrew
brew install finbarr/tap/yolobox
# Or install via script
curl -fsSL https://raw.githubusercontent.com/finbarr/yolobox/master/install.sh | bash
ثم من أي مشروع:
cd /path/to/your/project
yolobox claude # Let it rip
تعمل اختصارات الذكاء الاصطناعي الأخرى بالطريقة نفسها:
yolobox codex
yolobox gemini
yolobox kimi
yolobox agy
yolobox antigravity
yolobox opencode
yolobox copilot
yolobox pi
اضبط default_harness = "codex" لجعل yolobox المجرّد يشغّل Codex. استخدم yolobox shell عندما تريد صدفة يدوية، وyolobox run <cmd...> عندما تريد أمرًا واحدًا في البيئة المعزولة.
تفاصيل التثبيت والتشغيل الكاملة موجودة في Installation & Setup. أمثلة الأوامر موجودة في Commands.
ما الموجود في الصندوق؟
تأتي الصورة الأساسية مع واجهات AI CLI، ومحوّلات Codex وClaude ACP، وNode.js، وPython، وGo، وBun، وأدوات البناء، وGit، وGitHub CLI، وripgrep، وfd، وfzf، وjq، وvim، وRTK، والأساسيات العملية المعتادة.
هل تحتاج شيئًا آخر؟ الوكيل يمتلك sudo.
داخل yolobox، تُغلَّف واجهات AI CLI المدعومة لتخطي مطالبات الأذونات. لا تأكيدات، لا حواجز حماية. مجرد ذكاء اصطناعي نقي غير مُفلتر، كما أرادت الطبيعة.
لعميل ACP أو محرر، استخدم yolobox run codex-acp أو yolobox run claude-agent-acp كأمر وكيل stdio الخاص به. تُضمّن المحوّلات محركات متوافقة وتستخدم أنماط أذونات العميل؛ ولا تتحكم فيها مغلّفات YOLO الخاصة بـ yolobox CLI ولا --no-yolo. تنطبق خيارات مزامنة الإعدادات والمصادقة الحالية. راجع ACP clients لأمثلة التشغيل.
للقائمة الكاملة بالأدوات، وجدول مغلّفات وضع YOLO، وملاحظات RTK، وسياسة حداثة حزم npm، وسلوك ترقية CLI المضمّنة، راجع What's in the Box.
تخصيص المشروع
إذا احتاج مشروع واحد إلى أدوات إضافية أو متغيرات بيئة، أضف إعداد مشروع صغير بدلًا من تفرّع الصورة الأساسية بأكملها:
# .yolobox.toml
env = ["CODEX_HOME=/home/yolo/.codex-account"]
[customize]
packages = ["default-jdk", "maven"]
ثم شغّل بشكل طبيعي:
yolobox run mvn --version
يمكن للتخصيص على مستوى المشروع أيضًا إضافة جزء Dockerfile فوق الصورة الأساسية. تبني التشغيلة الأولى صورة مشتقة؛ وتعيد التشغيلات اللاحقة استخدامها حتى تتغير الصورة الأساسية أو مدخلات التخصيص.
استخدم مسارات الحاوية لقيم env لأنها تُمرَّر مباشرةً إلى العملية داخل yolobox. تُمرَّر قيم env إلى وقت التشغيل حرفيًا؛ ولا يُفسَّر أي شيء فيها.
لتسليم البيئة المعزولة قيمة مختلفة عن التي يستخدمها المضيف تحت الاسم نفسه — رمز مميز للقراءة فقط بدلًا من رمزك الحقيقي — امنحه اسمًا مستعارًا باستخدام env_from_host (أو --env-from-host KEY=HOST_VAR):
# .yolobox.toml
env_from_host = ["GH_TOKEN=YOLOBOX_READONLY_GH_TOKEN"]
يمتلك الاسم المستعار ذلك المتغير: فهو يمنع التمرير التلقائي و--gh-token للمفتاح نفسه، ويرفض yolobox البدء إذا كان متغير المضيف غير مضبوط، لذا لا يمكن للرمز الذي يستبدله أن يتسرب عن طريق الخطأ أبدًا.
راجع Configuration لإعدادات env الخاصة بالمشروع، وProject-Level Customization لتثبيت الحزم، وأجزاء Dockerfile، وسلوك إعادة البناء، وسلوك الترقية، والصور المخصصة بالكامل.
سير العمل الشائع
yolobox setup # Configure global defaults
yolobox config # Show resolved config for this project
yolobox claude --docker --gh-token # Give the agent Docker and GitHub access
yolobox claude --claude-config --no-claude-auth # Share config, keep the box login independent
yolobox codex --rtk # Enable RTK command-output compression
yolobox run --no-network make test # Run one command with no network
yolobox fork --name bruno codex # Give an agent its own project copy
yolobox upgrade # Update binary and pull the latest image
yolobox update-agents # Update AI CLIs and ACP adapters in the persistent box
يزامن --claude-config بشكل تدريجي إعدادات Claude الدائمة ويُثبّت ~/.claude/projects الخاص بالمضيف قراءةً/كتابةً بشكل حي حتى يبقى سجل استئناف الجلسة محدثًا. يُبقي --no-claude-auth تسجيل الدخول في الصندوق مستقلًا، لكنه لا يجعل تثبيت سجل المشروع للقراءة فقط.
يترك إعداد RTK التلقائي القياس عن بُعد معطّلًا إلا إذا اخترت تفعيله تفاعليًا من داخل الصندوق باستخدام rtk telemetry enable.
المراجع التفصيلية موجودة عمدًا في موقع التوثيق:
- Commands: الاختصارات، وأوامر الصيانة، و
fork، والأمثلة - Configuration: الإعداد العام، وإعداد المشروع، والتعليمات المنسوخة، وتمرير env، وبيانات السياق
- Flags: كل علم، وملاحظة التوافق، وتفاصيل تمرير وقت التشغيل
- Recipes: الوكلاء المتوازيون وتوجيه تطبيقات الويب
الفلسفة: إنه صندوق الذكاء الاصطناعي، وليس صندوقك
صُمم yolobox لوكلاء الذكاء الاصطناعي، وليس للبشر. تشغّل الذكاء الاصطناعي وتدعه يعمل.
يمتلك الوكيل sudo داخل الحاوية. إذا احتاج إلى مترجم، أو قاعدة بيانات، أو حزمة، أو إطار عمل، يمكنه تثبيت واحد. تحافظ الأحجام المسماة على ذلك الإعداد عبر الجلسات، لذا لا تضطر إلى تحويل README إلى مصفوفة حزم من مئة سطر. وجّهه إلى مشروعك ودعه يطبخ.
نموذج الأمان
yolobox هو حماية من الحوادث، وليس نظرية سحرية مضادة للهروب من الحاويات.
يساعد في حماية دليل المنزل الخاص بك، ومفاتيح SSH، وملفات dotfiles، والمشاريع غير ذات الصلة، ومعظم حالة نظام ملفات المضيف من الأوامر التدميرية غير المبالية. لا يحمي دليل المشروع الذي ثبّته، أو الأسرار التي تمررها صراحةً، أو إجراءات المضيف التي تجسرها صراحةً، أو نواة المضيف من ثغرات الهروب من وقت التشغيل.
لصندوق أكثر إحكامًا، اجمع أعلامًا مثل:
yolobox claude --no-network --no-env-passthrough --readonly-project --exclude ".env*" --exclude "secrets/**"
إذا كنت قلقًا بشأن كود عدائي بدلًا من كود غير مبالٍ، فاستخدم عزلًا أقوى مثل rootless Podman أو جهاز افتراضي. نموذج التهديد الكامل وخيارات التقوية موجودة في Security Model.
التطوير
make build
make test
make lint
make image
سير عمل المساهمين، وأوامر موقع التوثيق، والإصدارات، وقواعد الإصدار موجودة في Contributing.
الترخيص
MIT