
تشغيل وكلاء برمجة في بيئات عزل. التحكم بهم عبر HTTP. يدعم Claude Code و Codex و OpenCode و Amp.
خادم يعمل داخل الصندوق الرملي الخاص بك. يتصل تطبيقك عن بُعد للتحكم في Claude Code، Codex، OpenCode، Cursor، Amp، أو Pi — بث الأحداث، معالجة الأذونات، إدارة الجلسات.
تجريبي: Gigacode — استخدم واجهة OpenCode النصية مع أي عامل ترميز.
تشغيل عوامل الترميز عن بُعد صعب. تفترض حزم SDK الحالية التنفيذ المحلي، و SSH يعطل معالجة TTY والبث، وكل عامل له API مختلف. البناء من الصفر يعني إعادة تنفيذ كل شيء لكل عامل ترميز.
يحل Sandbox Agent ثلاث مشاكل:
عوامل الترميز تحتاج إلى صناديق رملية — لا يمكنك ترك الذكاء الاصطناعي ينفذ أكوادًا عشوائية على خوادم الإنتاج الخاصة بك. عوامل الترميز تحتاج إلى بيئات معزولة، لكن حزم SDK الحالية تفترض التنفيذ المحلي. Sandbox Agent هو خادم يعمل داخل الصندوق الرملي ويعرض HTTP/SSE.
كل عامل ترميز مختلف — Claude Code، Codex، OpenCode، Cursor، Amp، و Pi لكل منها APIs، تنسيقات أحداث، وسلوكيات خاصة. تغيير العامل يعني إعادة كتابة التكامل الخاص بك. يوفر Sandbox Agent واجهة HTTP واحدة — اكتب كودك مرة واحدة، وبدّل العوامل بتغيير الإعدادات.
الجلسات مؤقتة — نصوص العامل تعيش في الصندوق الرملي. عند انتهاء العملية، تفقد كل شيء. يقوم Sandbox Agent ببث الأحداث في مخطط عالمي إلى مساحة التخزين الخاصة بك. احفظها في Postgres أو ClickHouse أو Rivet. أعد تشغيلها لاحقًا، ودقّق كل شيء.

يعمل Sandbox Agent كمحول عالمي بين تطبيق العميل الخاص بك وعوامل الترميز المختلفة. كل عامل له محوله الخاص الذي يتولى الترجمة بين API العالمي والواجهة الخاصة بالعامل.
| المكون | الوصف |
|---|---|
| الخادوم | Daemon Rust (sandbox-agent server) يعرض API عبر HTTP + SSE |
| حزمة SDK | عميل TypeScript مع وضعين: مضمّن وخادم |
| المفتش | واجهة مستخدم مدمجة لفحص الجلسات والأحداث |
| واجهة CLI | sandbox-agent (نفس الملف الثنائي، بالإضافة إلى غلاف npm) يعكس نقاط نهاية HTTP |
اختر طريقة التثبيت التي تناسب حالتك الاستخدامية.
قم بتثبيت skill باستخدام:
npx skills add rivet-dev/skills -s sandbox-agent
bunx skills add rivet-dev/skills -s sandbox-agent
قم باستيراد حزمة SDK مباشرة إلى تطبيق Node.js أو المتصفح الخاص بك. أمان كامل للنوع ودعم للبث.
التثبيت
npm install [email protected]
bun add [email protected]
# اختياري: السماح لـ Bun بتشغيل نصوص ما بعد التثبيت للملفات الثنائية الأصلية (مطلوب لـ SandboxAgent.start()).
bun pm trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-linux-arm64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
الإعداد
محليًا (الوضع المضمّن):
import { SandboxAgent } from "sandbox-agent";
const client = await SandboxAgent.start();
عن بُعد (وضع الخادم):
import { SandboxAgent } from "sandbox-agent";
const client = await SandboxAgent.connect({
baseUrl: "http://127.0.0.1:2468",
token: process.env.SANDBOX_TOKEN,
});
نظرة عامة على API
const agents = await client.listAgents();
await client.createSession("demo", {
agent: "codex",
agentMode: "default",
});
await client.postMessage("demo", { message: "Hello from the SDK." });
for await (const event of client.streamEvents("demo", { offset: 0 })) {
console.log(event.type, event.data);
}
وثائق حزمة SDK — إدارة الجلسات
شغّل كخادم HTTP واتصل من أي لغة. انشره على E2B أو Daytona أو Vercel أو البنية التحتية الخاصة بك.
# قم بتثبيته
curl -fsSL https://releases.rivet.dev/sandbox-agent/0.4.x/install.sh | sh
# شغّله
sandbox-agent server --token "$SANDBOX_TOKEN" --host 127.0.0.1 --port 2468
اختياري: قم بتثبيت ملفات العوامل الثنائية مسبقًا (لا حاجة للخادم؛ سيتم تثبيتها بشكل كسول عند أول استخدام إذا تخطيت هذه الخطوة):
sandbox-agent install-agent --all
لتعطيل المصادقة محليًا:
sandbox-agent server --no-token --host 127.0.0.1 --port 2468
دليل البدء السريع — أدلة النشر
قم بتثبيت غلاف CLI (اختياري لكنه ملائم):
npm install -g @sandbox-agent/[email protected]
# اسمح لـ Bun بتشغيل نصوص ما بعد التثبيت للملفات الثنائية الأصلية.
bun add -g @sandbox-agent/[email protected]
bun pm -g trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-linux-arm64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
أنشئ جلسة وأرسل رسالة:
sandbox-agent api sessions create my-session --agent codex --endpoint http://127.0.0.1:2468 --token "$SANDBOX_TOKEN"
sandbox-agent api sessions send-message my-session --message "Hello" --endpoint http://127.0.0.1:2468 --token "$SANDBOX_TOKEN"
sandbox-agent api sessions send-message-stream my-session --message "Hello" --endpoint http://127.0.0.1:2468 --token "$SANDBOX_TOKEN"
يمكنك أيضًا استخدام npx مثل:
npx @sandbox-agent/[email protected] --help
bunx @sandbox-agent/[email protected] --help
قم بتصحيح الجلسات والأحداث باستخدام واجهة المفتش المدمجة (على سبيل المثال، http://localhost:2468/ui/).

غالبًا ما تحتاج إلى استخدام رموز API الشخصية الخاصة بك لاختبار العوامل على الصناديق الرملية:
sandbox-agent credentials extract-env --export
يطبع هذا متغيرات البيئة لمفاتيح API الخاصة بـ OpenAI/Anthropic/etc لاختبارها مع حزمة Sandbox Agent SDK.
لا، إنهما مكملان. AI SDK مخصص لبناء واجهات الدردشة واستدعاء نماذج اللغة. حزمة SDK هذه مخصصة للتحكم في عوامل الترميز المستقلة التي تكتب الأكواد وتنفذ الأوامر. استخدم AI SDK لواجهة المستخدم الخاصة بك، واستخدم هذه الحزمة عندما تحتاج إلى عامل يقوم بالترميز الفعلي.