مجاني ومفتوح المصدر

أداة سطر أوامر واحدة لكل خدمات زوهو

zone هي واجهة سطر الأوامر الموحّدة لمنظومة زوهو — 44 خدمة، و7,814 أمرًا مكتوبًا، وتسجيل دخول OAuth واحد.

كل خدمة في زوهو لها واجهة برمجية خاصة بها، وصلاحيات خاصة بها، وخصوصياتها الدقيقة — فينتهي كل من يعمل على أتمتة زوهو إلى كتابة دورة OAuth نفسها، وحلقة الترقيم نفسها، ومنطق إعادة المحاولة نفسه مرارًا. تقوم zone بذلك مرة واحدة: تسجّل الدخول مرة، ثم تدير CRM وBooks وDesk وPeople وProjects و39 خدمة أخرى من أداة واحدة بعقد إخراج واحد متّسق.

التثبيت وتسجيل الدخول
npm install -g wanas-zone-cli
zone login

كل ما تحتاجه هو Node.js واتصال بسجل npm. تنشرها ونس ابس FZ-LLC — شريك زوهو المميّز.

44 خدمة من زوهو
7,814 أمرًا مكتوبًا
~7,550 نقطة نهاية REST
30 خدمة بتغطية 100% موثّقة

موافقة واحدة، بلا مطاردة للرموز

المصادقة هي الجزء الذي يعيد الجميع كتابته ولا يستمتع به أحد. تتعامل zone معه باعتباره بنية تحتية محسومة.

موافقة OAuth واحدة

موافقة واحدة في المتصفح تغطّي كل خدمة تختارها عند تسجيل الدخول. لا تسجيل عميل لكل خدمة، ولا نسخ لرموز التحديث بين السكربتات.

الرموز تبقى على جهازك

تُحفظ الجلسات في مخزن محلي، ملف لكل خدمة. ويجري التحديث وإعادة المحاولة عند الخطأ 401 تلقائيًا، فلا يتوقف سكربت طويل بسبب رمز منتهي الصلاحية.

هوية مستقلة لكل مشروع

يكتب أمر zone login مخزنًا باسم ‎./.zone‎ ويعثر عليه بالطريقة نفسها التي يعثر بها git على ‎.git‎ — بالصعود من مجلد العمل. وهكذا يمكن لكل مجلد مشروع أن يحمل هوية زوهو مختلفة: مؤسسة عميل هنا، وبيئة اختبار هناك. أما ‎--global‎ فيعود إلى ‎~/.zone‎.

إدراك لمراكز البيانات منذ البداية

يُختار مركز البيانات عند تسجيل الدخول ويُدمج في كل عنوان أساسي، فلا تختلط مؤسسة إماراتية بأخرى أوروبية أبدًا.

طريقتان لتشغيلها

أوامر مكتوبة لكل ما جرى تغليفه بالفعل، ووسيط عام لكل ما عداه. وكلاهما يتشارك المصادقة نفسها وعقد الإخراج نفسه ورموز الخروج نفسها.

الأوامر المكتوبة

أمر حقيقي لكل عملية — تتكفّل الأداة بأجسام الطلبات والترقيم وتنزيل الملفات وخصوصيات زوهو في كل نقطة نهاية. وكل مجموعة أوامر قابلة للاستكشاف عبر ‎--help‎.

zone crm record list Deals --fields Deal_Name,Stage,Amount
zone crm field list Deals
zone books invoice list --status overdue
zone desk ticket list --json

الوسيط zone api

ما لم يُغلَّف بعد يبقى على بعد أمر واحد. يوقّع الوسيط الطلب بالجلسة نفسها، ويحدّد العنوان الأساسي وفق مركز البيانات، ويعيد الجسم الخام — فلا تعطّلك نقطة نهاية جديدة في زوهو.

zone api crm GET /crm/v8/settings/modules
zone api books POST /invoices --data @invoice.json
zone api desk GET /api/v1/tickets --json
لمهندسي الذكاء الاصطناعي

مبنية لوكلاء البرمجة الأذكياء

اطلب من وكيل برمجة ذكي أن «يجلب الفواتير المتأخرة ويطابقها بصفقات CRM»، وبلا أدوات مناسبة سيفعل ثلاثة أشياء بصورة رديئة: يكتب تدفّق OAuth لا يستطيع إتمامه، ويخمّن مسارات REST من ذاكرته، ويخترع أسماء حقول لا وجود لها في مؤسستك. وكل هذه الإخفاقات صامتة — فتحصل على شيفرة تبدو سليمة ولا تُرجع شيئًا. تستبدل zone بهذه التخمينات الثلاثة سطحَ أوامر واحدًا: مُصادَقًا، ومكتوبًا، وموثّقًا ذاتيًا.

لماذا يغيّر ذلك النتيجة

المصادقة منتهية سلفًا

ينفّذ إنسانٌ أمر zone login مرة واحدة. فلا يرى الوكيل أي سر، ولا يكتب معالج OAuth، ولا يطلب منك لصق رمز في نافذة محادثة.

أسماء الحقول من مؤسستك أنت

يُعيد الأمر zone crm field list Deals أسماء الحقول الحقيقية من CRM لديك. فيقرأها الوكيل بدل أن يهلوس بين Deal_Name وdealName — وهو السبب الأول لسكربت زوهو الذي يعمل بلا أخطاء ولا ينجز شيئًا.

مخرجات قابلة للتحليل فعلًا

يضع ‎--json‎ و‎--toon‎ البيانات القابلة للقراءة الآلية على stdout ويبقيان رسائل التقدّم على stderr، فلا حاجة لانتزاع أي شيء من نصٍّ سردي. وصيغة TOON أكثرهما إيجازًا حين تكون ميزانية السياق ضيّقة.

إخفاقات يستطيع رصدها

لرموز الخروج معنى: 0 نجاح، و2 خطأ استخدام، و3 غير مسجّل الدخول، و4 صلاحية ناقصة، و5 خطأ من واجهة زوهو. ومع ‎--json‎ يكون آخر سطر على stderr كائن خطأ منظَّمًا. فيتفرّع الوكيل بناءً عليه بدل إعادة المحاولة عشوائيًا.

قابلة للاستكشاف، فيبحث بدل أن يخمّن

يعرض zone <service> --help مجموعات الأوامر، ويعرض zone <svc> <group> --help أوامرها المفردة. فالوكيل الذي يجهل أمرًا يجده باستدعاء واحد بدل أن يخترعه.

الدليل كاملًا عند الطلب

يطبع zone llm دليل استخدام كاملًا مولَّدًا من مواصفات الأوامر الحيّة، فلا يمكن أن يتخلّف عمّا تشحنه الأداة فعلًا. ويحصره zone llm <service> في خدمة واحدة حين تضيق نافذة السياق.

ثبّت الدليل حيث يبحث وكيلك أصلًا

يكتب أمر zone skill الدليل نفسه في صورة ملف قواعد أو مهارة أصلي لوكيلك، فيُحمَّل تلقائيًا بدل لصقه في كل محادثة.

zone skill --ide claude
الوجهات المدعومة
  • Claude Code — ‎.claude/skills/zoho-zone/SKILL.md‎
  • Antigravity / Gemini — ‎.agents/skills/zoho-zone/SKILL.md‎
  • Cursor — ‎.cursor/rules/zoho-zone.mdc‎
  • Windsurf — ‎.windsurfrules‎
  • GitHub Copilot — ‎.github/copilot-instructions.md‎
  • Cline / Roo Code — ‎.clinerules‎
  • Gemini CLI — ‎GEMINI.md‎
  • Codex / معيار AGENTS.md — ‎AGENTS.md‎
  • ملف Markdown مستقل — ‎ZOHO_ZONE_AI_CONTEXT.md‎

سير عمل واقعي لوكيل ذكي

المهمة: العثور على كل صفقة بحالة Closed Won في CRM لا تقابلها فاتورة مدفوعة في Books. وهذا ما ينفّذه الوكيل فعليًا.

  1. ٠١

    إنسان يصادق على المشروع، مرة واحدة

    موافقة المتصفح هي الخطوة الوحيدة التي تحتاج إلى شخص. ونفّذها داخل مجلد المشروع فتكتب ‎./.zone‎، لتقتصر هذه الهوية على هذا المستودع وحده.

    zone login crm books
  2. ٠٢

    الوكيل يحمّل سطح الأوامر

    أمر واحد يضع كل مجموعات الأوامر المكتوبة في ملف قواعد الوكيل. ومن هنا يصير يختار الأوامر بدل أن يخترعها.

    zone skill --ide claude
  3. ٠٣

    يقرأ بنية بياناتك الحقيقية قبل كتابة أي استعلام

    قائمة الحقول تأتي من مؤسستك، فيبني المرشّح التالي بأسماء برمجية موجودة فعلًا.

    zone crm field list Deals --json
  4. ٠٤

    يسحب الطرفين بهوية واحدة

    الجلسة نفسها، وخدمتان، وبلا تدفّق OAuth ثانٍ. ويتكفّل الأمر بالترقيم.

    zone crm record list Deals --fields Deal_Name,Stage,Amount --per-page 200 --json
    zone books invoice list --status paid --json
  5. ٠٥

    يتعامل مع الإخفاق بدل إخفائه

    إن لم تكن Books ضمن الموافقة، يخرج الأمر بالرمز 4 ويطبع خطأً منظَّمًا. فيتوقف الوكيل ويطلب منك إعادة تسجيل الدخول لتلك الخدمة وحدها — بدل تكرار نداء لا يمكن أن ينجح.

    # exit 4 — missing scope
    {"ok":false,"error":{"code":"MISSING_SCOPE","hint":"run: zone login books"}}

لا تُنفَّذ عمليات الكتابة إلا حين تُستدعى صراحةً. ولا شيء مما سبق يعدّل سجلًا، ولا يستطيع وكيل أن يحصل على صلاحية لم توافق عليها.

تغطية مقيسة على وثائق زوهو نفسها

قِيست كل خدمة على وثائق واجهتها البرمجية الرسمية ثم سُدَّت الفجوة. و30 من الـ44 تغطّي اليوم 100% من سطحها الموثّق؛ أي نحو 7,280 عملية موثّقة عبر المنظومة كلها. وحيثما تنشر زوهو مواصفة قابلة للقراءة الآلية، تُولَّد الأوامر منها لا من النصّ.

الخدمةالأوامرما تغطّيه
Zoho Desk931التذاكر وقاعدة المعرفة والمجتمع وقواعد الإسناد والتحفيز
Zoho Books907مولَّدة من مواصفات OpenAPI الخاصة بزوهو، ومعها Invoice وBilling وExpense
Zoho Projects593سطح V3 كاملًا، بما فيه نقاط النهاية في v3.1
Zoho CRM790بيانات V8 الوصفية كاملة — التخصيص وأتمتة العمليات والأمان وZia
Zoho Inventory557الأصناف والمستودعات والطلبات والشحنات ودورة المخزون كاملة
Zoho People447الإصداران المنشوران: v1/v2 للتعلّم والجداول الزمنية، وv3 للإجازات والورديات

Deluge من محرّرك

ارفع دوال Deluge واسحبها واختبرها كملفات. وتعود أخطاء الترجمة بأرقام أسطر حقيقية مطابقة للملف على قرصك، لا برسالة 400 فارغة.

استخراج كامل لبيانات CRM الوصفية

يسحب zone crm extract وحدات مؤسستك وحقولها وتخطيطاتها ودوالّها إلى القرص — وهو المرجع المعتمد لكتابة Deluge أو شيفرة REST على تلك المؤسسة، ومُدخَل طبيعي لأي وكيل ذكي.

كل مراكز البيانات، بما فيها الاستثناءات الإقليمية

مركز البيانات جزء من تسجيل الدخول لا فكرة لاحقة — وzone تعرف أي المنتجات موجود فعلًا في كل مركز.

  • com
  • eu
  • in
  • com.au
  • jp
  • uk
  • ca
  • sa
  • ae
  • cn

تُفرض المنتجات الإقليمية عند تسجيل الدخول بدل أن تفشل لاحقًا: فـ Zoho Payroll مثلًا لا يوجد إلا في com وin وae وsa، ولذلك ترفض zone تسجيل دخول Payroll على أي مركز بيانات آخر ابتداءً. فطلب صلاحية إقليمية على مركز بيانات خاطئ كان سيُبطل الموافقة كلها.

تحتاج ربط هذا بمنظومة زوهو لديك؟

نحن شريك زوهو المميّز بأكثر من 300 مشروع تطبيق منجز. وإن أردت تكاملات مخصّصة أو أتمتة Deluge أو وكلاء ذكاء اصطناعي يعملون على مؤسسة زوهو لديك، فنحن هنا.