Skip to main content

Automatic AI-powered error explainer — catches unhandled exceptions and suggests fixes via an AI API. tele @Q_B_H

Project description

ai_debugger v0.2.0

مكتبة Python تلتقط أي خطأ غير معالج تلقائياً وترسل السكريبت كاملاً مع سياق المتغيرات إلى خادم ذكاء اصطناعي، ثم تعرض الحل المقترح في التيرمينال بتنسيق مُلوَّن قبل الـ traceback الأصلي.


ما الجديد في v0.2.0؟

الميزة الوصف
قراءة السكريبت كاملاً يُرسَل كود المستخدم بالكامل مع الخطأ للذكاء الاصطناعي
متغيرات كل Frame قيم جميع المتغيرات المحلية لكل خطوة في traceback تُرسَل ضمن السياق
Verbose Mode يعرض المتغيرات أيضاً في التيرمينال للمستخدم
مؤشر انتظار رسالة "⏳ جاري الاستشارة..." تظهر أثناء طلب الـ API

التثبيت

pip install .
# أو في وضع التطوير:
pip install -e .

الاستخدام

الأساسي

import ai_debugger   # سطر واحد — يفعّل كل شيء تلقائياً

x = 1 / 0   # سيُلتقط، سيُقرأ الملف كاملاً، سيُرسَل للذكاء الاصطناعي

مع Verbose Mode (عرض المتغيرات في التيرمينال)

import ai_debugger
ai_debugger.set_verbose(True)

name = "أحمد"
scores = [90, 85, 0]
result = 100 / scores[2]   # سيظهر اسم + scores في التيرمينال

التحكم في المكتبة

عبر الكود

import ai_debugger

ai_debugger.disable()        # تعطيل مؤقت
ai_debugger.enable()         # إعادة تفعيل
ai_debugger.set_verbose(True)   # تفعيل عرض المتغيرات
ai_debugger.set_verbose(False)  # إيقاف عرض المتغيرات

عبر متغيرات البيئة

# تعطيل المكتبة كلياً
AI_DEBUGGER_OFF=1 python script.py

# تفعيل Verbose Mode
AI_DEBUGGER_VERBOSE=1 python script.py

# كلاهما
AI_DEBUGGER_OFF=1 AI_DEBUGGER_VERBOSE=1 python script.py

ما يُرسَل للذكاء الاصطناعي عند كل خطأ

=== معلومات الخطأ ===
نوع الخطأ: ZeroDivisionError
الرسالة: division by zero
الملف: script.py، السطر: 12، الدالة: process_item

=== Traceback كامل ===
  File "script.py", line 20, in run_pipeline
    ...

=== قيم المتغيرات وقت الخطأ ===
  [process_item] في script.py السطر 12:
    item = 1
    divisor = 0

=== كود السكريبت كاملاً (script.py) ===
... [كامل محتوى الملف] ...

شكل الإخراج في التيرمينال

⏳ جاري الاستشارة مع المساعد الذكي ...

┌────────────────────────────────────────────────────────────────────────┐
│  💡 اقتراح المساعد الذكي
│
│  المشكلة: divisor يساوي صفر لأن value - value = 0 دائماً.
│  الإصلاح: تحقق من قيمة المقسوم عليه قبل القسمة:
│    if divisor != 0:
│        result = item / divisor
└────────────────────────────────────────────────────────────────────────┘

Traceback (most recent call last):
  ...
ZeroDivisionError: division by zero

المتطلبات

الحزمة الإصدار
Python >= 3.8
requests >= 2.28
colorama >= 0.4.6

هيكل الملفات

ai_debugger/
  __init__.py   ← نقطة الدخول، تفعيل الـ hook تلقائياً
  core.py       ← كل المنطق (hook، API، قراءة الملف، تنسيق الإخراج)
pyproject.toml
README_ai_debugger.md
test_ai_debugger.py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ai_debuing-0.2.0.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ai_debuing-0.2.0-py3-none-any.whl (2.7 kB view details)

Uploaded Python 3

File details

Details for the file ai_debuing-0.2.0.tar.gz.

File metadata

  • Download URL: ai_debuing-0.2.0.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for ai_debuing-0.2.0.tar.gz
Algorithm Hash digest
SHA256 161a96fbe5f58c890a27e1bf7c0553e15a6b7dfad194a8b46a48b38eece4d184
MD5 05b5c757d29d331843a8c86caa7e936a
BLAKE2b-256 f4e64a080a077fc1752395e560a40ea6af6401cf620694f03762634df32a74ac

See more details on using hashes here.

File details

Details for the file ai_debuing-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: ai_debuing-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 2.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for ai_debuing-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f89a6ee649b78c4066442933e52549d964b8f47180a6b56d86aeb0ae23f3aae9
MD5 d0ce86d9b5c4e46d64b47f9284e08b22
BLAKE2b-256 239d20103d37f745d1c92eb78d0503818ce93b318f54fe2cfd726bcbe74550f2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page