diff options
Diffstat (limited to 'packages/web/src/content/docs/ar/acp.mdx')
| -rw-r--r-- | packages/web/src/content/docs/ar/acp.mdx | 154 |
1 files changed, 154 insertions, 0 deletions
diff --git a/packages/web/src/content/docs/ar/acp.mdx b/packages/web/src/content/docs/ar/acp.mdx new file mode 100644 index 000000000..35b20b2d6 --- /dev/null +++ b/packages/web/src/content/docs/ar/acp.mdx @@ -0,0 +1,154 @@ +--- +title: دعم ACP +description: استخدم OpenCode في أي محرر متوافق مع ACP. +--- + +يدعم OpenCode بروتوكول [Agent Client Protocol](https://agentclientprotocol.com) أو (ACP)، مما يتيح لك استخدامه مباشرة في المحررات وبيئات التطوير المتكاملة (IDEs) المتوافقة. + +:::tip +للاطلاع على قائمة بالمحررات والأدوات التي تدعم ACP، راجع [ACP progress report](https://zed.dev/blog/acp-progress-report#available-now). +::: + +ACP بروتوكول مفتوح يوحّد آلية التواصل بين محررات الشيفرة ووكلاء البرمجة بالذكاء الاصطناعي. + +--- + +## الإعداد +لاستخدام OpenCode عبر ACP، اضبط محررك ليشغّل الأمر `opencode acp`. + +يشغّل هذا الأمر OpenCode كعملية فرعية متوافقة مع ACP تتواصل مع محررك عبر JSON-RPC باستخدام stdio. + +فيما يلي أمثلة لمحررات شائعة تدعم ACP. + +--- + +### Zed + +أضف إلى إعدادات [Zed](https://zed.dev) (`~/.config/zed/settings.json`): + +```json title="~/.config/zed/settings.json" +{ + "agent_servers": { + "OpenCode": { + "command": "opencode", + "args": ["acp"] + } + } +} +``` + +لفتحه، استخدم الإجراء `agent: new thread` في **Command Palette**. + +يمكنك أيضا ربط اختصار لوحة مفاتيح عبر تعديل `keymap.json`: + +```json title="keymap.json" +[ + { + "bindings": { + "cmd-alt-o": [ + "agent::NewExternalAgentThread", + { + "agent": { + "custom": { + "name": "OpenCode", + "command": { + "command": "opencode", + "args": ["acp"] + } + } + } + } + ] + } + } +] +``` + +--- + +### JetBrains IDEs + +أضف إلى ملف acp.json الخاص بـ [JetBrains IDE](https://www.jetbrains.com/) وفقا لـ [documentation](https://www.jetbrains.com/help/ai-assistant/acp.html): + +```json title="acp.json" +{ + "agent_servers": { + "OpenCode": { + "command": "/absolute/path/bin/opencode", + "args": ["acp"] + } + } +} +``` + +لفتحه، اختر الوكيل الجديد 'OpenCode' من محدد الوكلاء في AI Chat. + +--- + +### Avante.nvim + +أضف إلى إعدادات [Avante.nvim](https://github.com/yetone/avante.nvim): + +```lua +{ + acp_providers = { + ["opencode"] = { + command = "opencode", + args = { "acp" } + } + } +} +``` + +إذا احتجت إلى تمرير متغيرات البيئة: + +```lua {6-8} +{ + acp_providers = { + ["opencode"] = { + command = "opencode", + args = { "acp" }, + env = { + OPENCODE_API_KEY = os.getenv("OPENCODE_API_KEY") + } + } + } +} +``` + +--- + +### CodeCompanion.nvim + +لاستخدام OpenCode كوكيل ACP في [CodeCompanion.nvim](https://github.com/olimorris/codecompanion.nvim)، أضف التالي إلى إعدادات Neovim: + +```lua +require("codecompanion").setup({ + interactions = { + chat = { + adapter = { + name = "opencode", + model = "claude-sonnet-4", + }, + }, + }, +}) +``` + +يضبط هذا الإعداد CodeCompanion لاستخدام OpenCode كوكيل ACP للدردشة. + +إذا احتجت إلى تمرير متغيرات البيئة (مثل `OPENCODE_API_KEY`)، فارجع إلى [Configuring Adapters: Environment Variables](https://codecompanion.olimorris.dev/getting-started#setting-an-api-key) ضمن توثيق CodeCompanion.nvim للاطلاع على التفاصيل كاملة. + +## الدعم +يعمل OpenCode عبر ACP بالطريقة نفسها التي يعمل بها في الطرفية. جميع الميزات مدعومة: + +:::note +بعض أوامر الشرطة المائلة المضمنة مثل `/undo` و`/redo` غير مدعومة حاليا. +::: + +- الأدوات المضمنة (عمليات الملفات، أوامر الطرفية، إلخ.) +- الأدوات المخصصة وأوامر الشرطة المائلة +- خوادم MCP المضبوطة في إعدادات OpenCode +- قواعد خاصة بالمشروع من `AGENTS.md` +- المنسقات (formatters) والمدققات (linters) المخصصة +- نظام الوكلاء والأذونات |
