GitHub تطلق وكيل ذكاء اصطناعي لفحص أخطاء إمكانية الوصول وإصلاحها
تختبر GitHub وكيل ذكاء اصطناعي تجريبيًا لفحص إمكانية الوصول في الشيفرة ضمن طلبات السحب (pull requests). يرصد الوكيل تلقائيًا الأخطاء الشائعة: الترميز غير الصحيح، والتسميات الرديئة لعناصر التحكم، وغياب إعلانات الحالة، ومشكلات التنقل المنطقي لدى مستخدمي التقنيات المساعدة (assistive technologies). من بين 3.5 ألف طلب سحب، أصلح الوكيل 68% من المشكلات بنجاح. أما الأنماط المعقدة، مثل السحب والإفلات (drag-drop) والعرض الشجري (tree view) وشبكة البيانات (data grid)، فيتركها الوكيل للبشر.
معالج بواسطة الذكاء الاصطناعي من GitHub Blog؛ بتحرير Hamidun News
تجرّب GitHub وكيل ذكاء اصطناعي يفحص إمكانية الوصول في الشيفرة ويصلح تلقائيًا الأخطاء الشائعة التي تعيق مستخدمي التقنيات المساعدة (assistive technologies)، مثل قارئات الشاشة.
كيف يعمل الوكيل
جرّب الفريق في البداية بنية متجانسة (monolithic)، أي وكيلًا واحدًا كبيرًا يتولى كل شيء. لكن هذا النهج استهلك عددًا مفرطًا من الرموز (tokens) وكان احتمال الهلوسة فيه مرتفعًا. لذلك أعادت GitHub بناء النظام على مستويين.
يعمل في المستوى الأعلى منسّق رئيسي (orchestrator). يوجّه هذا المنسّق الطلبات، ويتحقق من صحة النتائج، ويدير التصعيد (escalation). وفي المستوى الأدنى يعمل وكيلان متخصصان، الواحد تلو الآخر: يفحص المراجِع الشيفرة أولًا في وضع القراءة فقط (read-only) ويحدد المشكلات، ثم يتولى المنفِّذ إما توليد الإصلاحات أو الاكتفاء بتقديم إرشادات.
لا يتحدث الوكيلان مباشرة أحدهما إلى الآخر، بل يتواصلان فقط عبر قوالب صارمة محددة مسبقًا. وهذا يقلل استهلاك الرموز ويكاد يستبعد الهلوسة تمامًا. وتُنفَّذ كل خطوة بترتيب صارم ثابت، كما لو أن أخصائيًا بشريًا في إمكانية الوصول هو من يجري الإصلاحات.
ما المشكلات التي يصلحها
يرصد الوكيل خمس فئات رئيسية من الأخطاء:
- ترميز دلالي غير صحيح: عندما لا تعكس وسوم HTML معنى المحتوى وبنيته
- تسميات رديئة لعناصر التحكم: أزرار وحقول إدخال بلا `<label>` واضح أو سمات aria
- غياب إعلانات الحالة: عندما لا يُبلغ النظام عن تغيّر الحالة (مثل أخطاء التحقق من صحة المدخلات)
- عدم وجود بدائل نصية للصور: أي غياب السمة `alt`
- تنقل منطقي مربك: عندما يتحرك تركيز لوحة المفاتيح بصورة غير متوقعة أو غير صحيحة
خلال المرحلة التجريبية، عالج الوكيل 3535 طلب سحب (pull request) وأصلح المشكلات في 68% من الحالات. وبالنسبة إلى المستخدمين الذين يعتمدون على قارئات الشاشة وغيرها من التقنيات المساعدة، فإن هذا يصنع فرقًا حقيقيًا في سهولة استخدام GitHub.
الصعوبات وآليات الحماية
واجهت GitHub مفارقة لافتة: نماذج LLM مدرَّبة على عقود من الشيفرة التاريخية، بما فيها كمٌّ كبير من الأمثلة ذات إمكانية الوصول الرديئة. ولهذا تولّد النماذج بنفسها في كثير من الأحيان أنماط إمكانية الوصول السيئة (antipatterns) ذاتها التي يُفترض إصلاحها. فقد تنسى مثلًا `<label>` لحقل إدخال، أو تقترح بنية aria غير صحيحة.
أضاف الفريق عدة آليات حماية. أولًا، لا يتدخل الوكيل أصلًا في الأنماط المعقدة، مثل واجهات السحب والإفلات (drag-and-drop) والعرض الشجري (tree view) وشبكة البيانات (data grid)، بل يحيلها إلى مراجعة البشر لأنها تتطلب خبرة عميقة. ثانيًا، يوجد سكربت يحلل تعقيد الشيفرة؛ وإذا تجاوز التعقيد حدًّا معينًا، ينتقل الوكيل إلى وضع الإرشاد فقط (guidance-only) بدل محاولة توليد الشيفرة بنفسه.
وتبيّن كذلك أن البيانات التاريخية أهم من التعليمات العامة. فقد استخدمت GitHub قاعدتها الخاصة التي تضم 3.5 ألف خطأ سُجِّلت وأُصلحت يدويًا على مدى سنوات. وكانت هذه الأمثلة الواقعية المأخوذة من شيفرتها الخاصة أفضل ما ساعد الوكيل على تعلّم العمل وتوليد إصلاحات ملائمة.
ماذا يعني ذلك
لا يحل الذكاء الاصطناعي مشكلة إمكانية الوصول وحده. لكنه يسرّع العمل بشكل ملموس ويساعد على التقاط الأخطاء في مرحلة مبكرة.
تخطط GitHub لفتح الشيفرة المصدرية للوكيل، كي تتمكن مشاريع وشركات أخرى من تطبيقه على شيفرتها. وقد يصبح ذلك معيارًا لفحص إمكانية الوصول في مسارات CI/CD.
أسئلة وأجوبة حول الخبر
ما أبرز التفاصيل حول كيف يعمل الوكيل؟
جرّب الفريق في البداية بنية متجانسة (monolithic)، أي وكيلًا واحدًا كبيرًا يتولى كل شيء. لكن هذا النهج استهلك عددًا مفرطًا من الرموز (tokens) وكان احتمال الهلوسة فيه مرتفعًا. لذلك أعادت GitHub بناء النظام على مستويين. يعمل في المستوى الأعلى منسّق رئيسي (orchestrator). يوجّه هذا المنسّق الطلبات، ويتحقق من صحة النتائج، ويدير التصعيد (escalation). وفي المستوى الأدنى يعمل وكيلان متخصصان، الواحد تلو الآخر: يفحص المراجِع الشيفرة أولًا في وضع القراءة فقط (read-only) ويحدد المشكلات، ثم يتولى المنفِّذ إما توليد الإصلاحات أو الاكتفاء بتقديم إرشادات. لا يتحدث الوكيلان مباشرة أحدهما إلى
ما أبرز التفاصيل حول ما المشكلات التي يصلحها؟
يرصد الوكيل خمس فئات رئيسية من الأخطاء: ترميز دلالي غير صحيح: عندما لا تعكس وسوم HTML معنى المحتوى وبنيته تسميات رديئة لعناصر التحكم: أزرار وحقول إدخال بلا `<label>` واضح أو سمات aria غياب إعلانات الحالة: عندما لا يُبلغ النظام عن تغيّر الحالة (مثل أخطاء التحقق من صحة المدخلات) عدم وجود بدائل نصية للصور: أي غياب السمة `alt` تنقل منطقي مربك: عندما يتحرك تركيز لوحة المفاتيح بصورة غير متوقعة أو غير صحيحة خلال المرحلة التجريبية، عالج الوكيل 3535 طلب سحب (pull request) وأصلح المشكلات في 68% من الحالات. وبالنسبة إلى المستخدمين الذين يعتمدون على قارئات الشاشة وغيرها من التقنيات الم
ما أبرز التفاصيل حول الصعوبات وآليات الحماية؟
واجهت GitHub مفارقة لافتة: نماذج LLM مدرَّبة على عقود من الشيفرة التاريخية، بما فيها كمٌّ كبير من الأمثلة ذات إمكانية الوصول الرديئة. ولهذا تولّد النماذج بنفسها في كثير من الأحيان أنماط إمكانية الوصول السيئة (antipatterns) ذاتها التي يُفترض إصلاحها. فقد تنسى مثلًا `<label>` لحقل إدخال، أو تقترح بنية aria غير صحيحة. أضاف الفريق عدة آليات حماية. أولًا، لا يتدخل الوكيل أصلًا في الأنماط المعقدة، مثل واجهات السحب والإفلات (drag-and-drop) والعرض الشجري (tree view) وشبكة البيانات (data grid)، بل يحيلها إلى مراجعة البشر لأنها تتطلب خبرة عميقة. ثانيًا، يوجد سكربت يحلل تعقيد الشيفرة؛
Build & Ship Production AI Agents Without Boilerplate Code
Start your free 72-hour trial at Hamidun Academy (academy.hamidun.com) — interactive lessons on Claude Code & Cursor, live Tech Radar, and production agent templates.
أهم ما في عالم الذكاء الاصطناعي — مرة كل أسبوع
سبع قصص مهمة فعلاً هذا الأسبوع، مختارة بعناية. بلا ضجيج ولا بيانات صحفية.
تم! تحقق من بريدك للتأكيد.