لا تزال أدوات البرمجة المعتمدة على الذكاء الاصطناعي تواجه صعوبات في فهم المستودعات البرمجية الكبيرة.
تساعد CodeWiki المطورين في تحليل مشاريع GitHub وإنشاء توثيق مهيكل، مما يجعل من السهل استكشاف قواعد الأكواد غير المألوفة. فبدلاً من مطالبة نموذج ذكاء اصطناعي بتخمين كيفية عمل المستودع من خلال ملفات مبعثرة، تقوم CodeWiki ببناء فهم منظم للمشروع.
في هذا الدليل، سنستخدم CodeWiki مع Atlas Cloud لتحويل مستودع GitHub إلى Wiki تم إنشاؤه بواسطة الذكاء الاصطناعي.
كيف تحلل CodeWiki مستودع GitHub وتنشئ التوثيق
تستخدم CodeWiki التحليل الهرمي للمستودع
بدلاً من التعامل مع المستودع ككتلة نصية واحدة كبيرة، تقوم CodeWiki بتحليله عبر مستويات مختلفة من الهيكلية.
يمكن تلخيص سير العمل كالتالي:
plaintext1Repository 2 ↓ 3Project Structure Analysis 4 ↓ 5Module Understanding 6 ↓ 7Component Analysis 8 ↓ 9Documentation Generation
يتبع هذا النهج سير عمل مشابه لكيفية تعلم المطورين للأنظمة غير المألوفة عادةً:
- فهم البنية العامة
- تحديد الوحدات (Modules) الرئيسية
- استكشاف المكونات المهمة
- قراءة التنفيذ التفصيلي
تطبق CodeWiki هذه الفكرة من خلال تحليل المستودع بمساعدة الذكاء الاصطناعي.
تولّد CodeWiki أكثر من مجرد تعليقات على الأكواد
يركز التوثيق التقليدي غالباً على الدوال أو الفئات (Classes) الفردية.
أما CodeWiki فتركز على التوثيق على مستوى المستودع ككل.
يمكن أن تتضمن المواد التي يتم إنشاؤها:
- نظرة عامة على المشروع
- شرح الوحدات البرمجية
- معلومات حول البنية الهندسية
- التوثيق المرئي
الهدف ليس مجرد شرح ما يفعله كل ملف، بل إنشاء خريطة أوضح لكيفية ترابط المشروع مع بعضه البعض.
خطوة بخطوة: إنشاء Wiki بالذكاء الاصطناعي لمشروع GitHub باستخدام CodeWiki
يتكون سير العمل من أربع خطوات رئيسية:
- تثبيت CodeWiki
- تهيئة مزود نموذج لغوي كبير (LLM)
- تشغيل تحليل المستودع
- استكشاف التوثيق الذي تم إنشاؤه
الخطوة 1: تثبيت CodeWiki
قم بتثبيت CodeWiki مباشرة من GitHub:
plaintext1pip install git+https://github.com/FSoft-AI4Code/CodeWiki.git
بعد التثبيت، سيصبح أمر codewiki متاحاً.
يمكنك التحقق من توفر واجهة سطر الأوامر (CLI):
plaintext1codewiki --version
إذا ظهرت لك رسالة cannot import name 'OpenAIModel'، جرب الآتي:
plaintext1python -m pip uninstall pydantic-ai pydantic-ai-slim -y 2python -m pip install "pydantic-ai>=1.0.6,<2"
الخطوة 2: الحصول على مفتاح واجهة برمجة تطبيقات Atlas Cloud
انتقل إلى وحدة تحكم Atlas Cloud، وافتح صفحة مفاتيح API، وانقر على Create API Key، ثم انسخ المفتاح واحفظه بشكل آمن. تشير Atlas Cloud إلى أن المفتاح يظهر مرة واحدة فقط، لذا احفظه في مكان آمن عند إنشائه.

حافظ على سرية المفتاح. لا تقم بلصقه في مستودع GitHub عام، أو مسودة مقال عامة، أو لقطة شاشة.
يتم تمرير مفتاح API كـ Bearer token، وتوصي Atlas Cloud بتخزينه في متغير بيئة (Environment Variable) بدلاً من كتابته برمجياً (Hard-coding) داخل المشاريع.
على نظام macOS أو Linux:
plaintext1export ATLASCLOUD_API_KEY="your-atlas-cloud-api-key"
على نظام Windows PowerShell:
plaintext1$env:ATLASCLOUD_API_KEY="your-atlas-cloud-api-key"
للاستخدام طويل الأمد على نظام Windows، أضف ATLASCLOUD_API_KEY في خصائص النظام (System Properties) ← متغيرات البيئة (Environment Variables).
الخطوة 3: تهيئة CodeWiki لاستخدام Atlas Cloud
تتضمن CodeWiki بالفعل مزوداً مخصصاً لـ atlas-cloud. وهذا يعني أنك لا تحتاج إلى تهيئته يدوياً كنقطة نهاية عامة متوافقة مع OpenAI.
قم بتشغيل:
plaintext1# Atlas Cloud — base URL auto-set to https://api.atlascloud.ai/v1; 2# API key read from $ATLASCLOUD_API_KEY when --api-key is omitted. 3codewiki config set \ 4 --provider atlas-cloud \ 5 --main-model anthropic/claude-sonnet-4.8 \ 6 --cluster-model anthropic/claude-sonnet-4.8 \ 7 --fallback-model zai-org/GLM-5.2
في هذا الوضع، تستخدم CodeWiki تلقائياً عنوان URL الأساسي لـ Atlas Cloud، وهو https://api.atlascloud.ai/v1. إذا تم حذف --api-key، تقرأ CodeWiki المفتاح من متغير البيئة ATLASCLOUD_API_KEY.
معرفات النماذج أعلاه مأخوذة من مثال Atlas Cloud الخاص بـ CodeWiki. توضح صفحات نماذج Atlas Cloud أيضاً أن معرفات النماذج يتم تمريرها مباشرة في طلبات API، على سبيل المثال anthropic/claude-sonnet-4.8 و zai-org/GLM-5.2.
تحقق من التهيئة المحفوظة:
plaintext1codewiki config show 2codewiki config validate
يسمح لك codewiki config show بفحص التهيئة الحالية، بينما يتحقق codewiki config validate مما إذا كان الإعداد صالحاً. كلا الأمرين مدرجان في قسم تهيئة CodeWiki.
الخطوة 4: إنشاء توثيق للمشروع
انتقل إلى المستودع الذي تريد توثيقه:
plaintext1cd /path/to/your/project
ثم قم بتشغيل:
plaintext1codewiki generate
افتراضياً، تقوم CodeWiki بكتابة التوثيق الذي تم إنشاؤه في ./docs/. تتضمن المخرجات ملفات مثل overview.md ووثائق مستوى الوحدات و module_tree.json و metadata.json وعند تفعيل عارض HTML، يتم إنشاء index.html.
لإنشاء عارض HTML يمكن استخدامه مع GitHub Pages:
plaintext1codewiki generate --github-pages --create-branch
يصف ملف README الخاص بـ CodeWiki هذا الإجراء بأنه سير عمل GitHub Pages ويشير إلى أن التوثيق المُنشأ سيتم وضعه تحت ./docs/.
مثال على الاستخدام
يمكنك النقر على العرض المباشر (Live Demo) لرؤية العرض التوضيحي التفاعلي والأمثلة.
لماذا تعمل CodeWiki بشكل جيد مع Atlas Cloud لتوثيق المستودعات
مزود atlas-cloud المدمج في CodeWiki مفيد لأن توثيق المستودع لا يتم عادةً بواسطة نموذج واحد فقط. يمكن لسير العمل استخدام نموذج رئيسي، ونموذج تجميع، ونموذج احتياطي، لذا فإن وجود مزود موحد متوافق مع OpenAI يقلل من عناء الاختبار والتبديل بين معرفات النماذج أثناء الإعداد.
تعد Atlas Cloud منصة تتيح وصولاً موحداً لأكثر من 300 نموذج عبر واجهة برمجة تطبيقات واحدة، ونقطة نهاية واحدة، وحساب فوترة واحد؛ وتعد نقطة نهاية LLM الخاصة بها متوافقة مع OpenAI عند /v1، وهو ما يطابق نوع التكامل الذي تحتاجه CodeWiki لنماذج إكمال الدردشة.
بالنسبة للمطورين، الميزة العملية بسيطة. فبدلاً من تسجيل حسابات منفصلة وإعادة كتابة إعدادات خاصة بكل مزود أثناء اختبار جودة التوثيق، يمكنك الحفاظ على استقرار أمر CodeWiki وتغيير أسماء النماذج حسب الحاجة.
لماذا تحتاج وكلاء البرمجة المعتمدون على الذكاء الاصطناعي مستقبلاً إلى سياق مستودع أفضل
تتحسن أدوات البرمجة بالذكاء الاصطناعي بسرعة.
لكن إنشاء الأكواد هو مجرد جزء واحد من هندسة البرمجيات.
قبل تعديل نظام موجود، يحتاج وكيل الذكاء الاصطناعي إلى سياق:
- ماذا تفعل كل وحدة برمجية؟
- كيف تتفاعل المكونات؟
- ما هي قرارات التصميم التي يجب أن تظل دون تغيير؟
يبدو سير العمل المحتمل كما يلي:
plaintext1Repository 2 ↓ 3Knowledge Layer 4 ↓ 5AI Agent 6 ↓ 7Code Changes
الطبقة المفقودة ليست مولداً آخر للأكواد.
بل هي نظام يساعد الذكاء الاصطناعي على فهم البرمجيات الموجودة.
تمثل أدوات مثل CodeWiki نهجاً واحداً نحو بناء طبقة المعرفة للمستودع هذه.
الأسئلة الشائعة
كيف يمكن للذكاء الاصطناعي فهم مستودع GitHub؟
يمكن للذكاء الاصطناعي فهم مستودع GitHub بشكل أفضل عندما يتم تحليل قاعدة الأكواد هيكلياً بدلاً من معالجة الملفات الفردية فقط.
تساعد الأدوات على مستوى المستودع في تنظيم المعلومات حول الوحدات والمكونات وهيكل المشروع.
هل يمكن لـ CodeWiki إنشاء رسوم بيانية للبنية الهندسية؟
نعم. يسرد ملف README الرسمي الرسوم البيانية لبنية النظام، وتصورات تدفق البيانات، ورسوم بيانية للتبعيات، ومخططات التسلسل كأدوات مرئية.
أين تحفظ CodeWiki التوثيق الذي تم إنشاؤه؟
افتراضياً، يتم حفظ التوثيق الذي تم إنشاؤه في ./docs/. يتضمن هيكل المخرجات الموثقة overview.md وملفات توثيق الوحدات وملفات JSON لشجرة الوحدات والبيانات الوصفية وعارض index.html اختياري.
هل يمكن لـ CodeWiki نشر الوثائق على GitHub Pages؟
نعم. تدعم CodeWiki مخرجات GitHub Pages بأوامر مثل codewiki generate --github-pages --create-branch.
أي نموذج يجب أن أستخدمه لـ CodeWiki؟
استخدم نموذج برمجة قوياً أو نموذجاً ذا سياق طويل للمرور التوثيقي الرئيسي، واحتفظ بنموذج احتياطي مهيأ. تدعم تهيئة CodeWiki نماذج منفصلة للنموذج الرئيسي والتجميع والاحتياطي، وهو أمر مفيد لأن تجميع الوحدات والتوثيق الطويل ليسا دائماً من نفس نوع مهام النماذج.
هل مخرجات CodeWiki موثوقة تماماً؟
لا. تعامل مع المخرجات كتوثيق تم إنشاؤه يحتاج إلى مراجعة هندسية. يمكن لـ CodeWiki إنشاء وثائق ورسوم بيانية مهيكلة، لكن لا يزال يتعين عليك التحقق من ادعاءات البنية، وحدود الوحدات، وأوصاف تدفق البيانات مقابل الكود المصدري.
كيف تختلف CodeWiki عن مطالبة ChatGPT بشرح مستودع ما؟
تعد مطالبة الدردشة مفيدة للشروحات السريعة، لكن CodeWiki مصممة كسير عمل قابل للتكرار على مستوى المستودع. فهي تحلل قاعدة الأكواد، وتفككها إلى وحدات، وتنشئ توثيقاً مهيكلاً، ويمكنها إنتاج قطع أثرية مرئية وعارض قابل للتصفح.
الخلاصة
تعد CodeWiki مفيدة لأنها تحول توثيق المستودع إلى سير عمل هندسي. قم بتثبيتها، وتهيئتها، وتشغيلها على مستودع حقيقي، وفحص النظرة العامة ووثائق الوحدات التي تم إنشاؤها، ثم انشر العارض فقط بعد المراجعة.
بالنسبة للمطورين، المكسب الأكبر ليس أن الذكاء الاصطناعي يكتب Markdown بشكل أسرع. بل المكسب هو أن قاعدة الأكواد الكبيرة أصبحت أسهل في التنقل: حيث يتم تجميع الوحدات والتبعيات والرسوم البيانية وملاحظات البنية في مكان واحد، ويمكن إعادة تشغيل سير العمل مع تغير المشروع.







