Codex: البدء مع Codex
آخر تحديث: 2026-08-31
الآن بعد تثبيت Codex، لنبدأ استخدامه فعليًا. يأخذك هذا الدرس خلال أول تقديم مهمة وسير العمليات الأساسية.
📋 المتطلبات المسبقة: Codex مثبت ومتصل بتسجيل الدخول (راجع الدرس السابق)
1. ما ستتعلمه
- أول تشغيل لـ Codex
- سير تقديم المهام الأساسي
- عرض النتائج ومراجعتها
- التفاعلات الشائعة
2. أول تشغيل
(1) إعداد مشروع
BASH
# Create a test project
mkdir my-first-codex && cd my-first-codex
# Initialize a simple Python project
echo 'def greet(name):\n return f"Hello, {name}!"' > app.py
(2) تشغيل Codex
BASH
codex
عند أول تشغيل، سترى شاشة ترحيب. اختر Yes, continue للمتابعة.
(3) قدّم مهمتك الأولى
أدخل ما يلي في مربع الإدخال:
TEXT
📖 للعرض فقط
Add unit tests to app.py using the pytest framework
عملية تنفيذ Codex:
TEXT
📖 للعرض فقط
1. Reading app.py...
2. Creating test_app.py with pytest test cases
3. Running: pytest test_app.py
4. All tests passed ✓
▶ مثال 1: أول استخدام لبوب
بوب مطور خلفية يجرب Codex لأول مرة:
BASH
cd bob-flask-api
codex
# Bob enters:
# "Add input validation to all API endpoints using marshmallow"
# Codex output:
# → Scanning 15 API endpoint files...
# → Installing marshmallow...
# → Creating schemas/ directory...
# → Adding validation to 15 endpoints...
# → Running tests: 34/34 passed ✓
3. سير العمليات الأساسي
(1) السير الكامل
graph TB
A[Enter project directory] --> B[Launch codex]
B --> C[Enter task description]
C --> D[Codex analyzes & understands]
D --> E[Execute operations]
E --> F[View results]
F --> G{Satisfied?}
G -->|No| H[Append instructions]
H --> D
G -->|Yes| I[End session]
(2) صيغة تقديم المهام
TEXT
📖 للعرض فقط
# Good task descriptions
codex "Fix the login bug in user.py, ensure tests pass"
codex "Refactor utils.js to TypeScript, keep functionality consistent"
codex "Add pagination to orders API, 20 items per page"
# Bad task descriptions
codex "Help me write code"
codex "Fix bug"
codex "Optimize something"
(3) مبادئ Prompt الفعّال
| المبدأ | الوصف | المثال |
|---|---|---|
| هدف واضح | حدد بالضبط ما يجب فعله | "أضف مصادقة JWT" وليس "غيّر المصادقة" |
| توفير سياق | أشر إلى الملفات ذات الصلة | "اتبع الأسلوب في auth.py" |
| تضمين التحقق | حدد كيفية التحقق من النتائج | "تأكد من نجاح جميع الاختبارات" |
| خطوة بخطوة | قسّم المهام المعقدة إلى خطوات | "الخطوة 1: أنشئ النموذج؛ أخبرني عند الانتهاء" |
4. العمليات التفاعلية
(1) العمليات الشائعة
| العملية | الوصف |
|---|---|
| كتابة نص | تقديم مهمة جديدة أو إضافة تعليمات |
Y / N |
تأكيد أو رفض عمليات Codex |
Ctrl+C |
مقاطعة العملية الحالية |
/help |
عرض معلومات المساعدة |
/clear |
مسح سجل المحادثة |
/new |
بدء جلسة جديدة |
(2) إضافة تعليمات
بعد إكمال Codex لمهمة، يمكنك الاستمرار في الإضافة:
TEXT
📖 للعرض فقط
# First task
> Add logging to app.py
# Append
> Change log level to DEBUG
# Continue appending
> Output logs to file instead of console
▶ مثال 2: التطوير التكراري لأليس
TEXT
📖 للعرض فقط
# Alice gradually refines features
> Create a FastAPI project skeleton
✓ Created main.py, routers/, models/
> Add user registration API
✓ Created /api/register endpoint
> Add email verification to registration API
✓ Added email verification flow
> Write integration tests
✓ Created test_register.py, 5 tests passed
5. عرض النتائج ومراجعتها
(1) مراجعة تغييرات الكود
بعد تعديل Codex للملفات، يعرض عرض الفروق:
DIFF
- def greet(name):
- return f"Hello, {name}!"
+ def greet(name: str) -> str:
+ """Greet a person by name."""
+ if not name:
+ raise ValueError("Name cannot be empty")
+ return f"Hello, {name}!"
(2) التحقق من نتائج الاختبار
BASH
# Codex auto-runs tests and displays results
Running pytest test_app.py...
✓ test_greet_normal - PASSED
✓ test_greet_empty - PASSED
✓ test_greet_type_hint - PASSED
3 passed, 0 failed
(3) التأكيد أو التراجع
- تأكيد: اقبل تغييرات Codex وتابع
- تراجع:
git checkout -- .للتراجع عن جميع التغييرات غير الملتزم بها
6. العمليات على ملفات متعددة
▶ مثال 3: إعادة هيكلة على مستوى المشروع
TEXT
📖 للعرض فقط
> Migrate Express project to Fastify, replace all route definitions, ensure tests pass
# Codex execution process:
# → Scanning 45 files for Express patterns
# → Converting route definitions (32 routes)
# → Updating middleware (8 files)
# → Running test suite: 89/89 passed ✓
# → Updating package.json
# → Final test run: 89/89 passed ✓
7. نصائح عملية
| النصيحة | الوصف |
|---|---|
بدء المشروع بـ git init |
يسهل التراجع عن تغييرات Codex |
| تشغيل الاختبارات قبل تقديم المهام | تأكد من وجود خط أساسي يعمل |
| تقديمات تدريجية صغيرة | مهمة واحدة في كل مرة |
| مراجعة كل تغيير | لا تقبل التعديلات بشكل أعمى |
| استخدام التعليمات المضافة بفعالية | التكرار أكثر موثوقية من الإصابة من المرة الأولى |
❓ أسئلة شائعة
س ماذا لو عدّل Codex الملف الخطأ؟
ج استخدم
git checkout -- <file> لاستعادة ملف معين، أو git checkout -- . للتراجع عن جميع التغييرات. لهذا نوصي ببدء المشاريع بـ git init أولًا.س ماذا لو استغرقت المهمة وقتًا طويلًا؟
ج اضغط
Ctrl+C للمقاطعة، ثم أعد التقديم بتعليمات أكثر تحديدًا، أو قسّم المهمة إلى خطوات أصغر.س ماذا لو أساء Codex فهم قصدي؟
ج أضف تعليمات توضيحية مباشرة، مثل "قصدت كذا وليس كذا" — سيصحح Codex بناءً على السياق المحدّث.
س هل يمكنني التواصل مع Codex باللغة العربية؟
ج نعم، يدعم Codex لغات متعددة. لكن الإنجليزية عادة تعطي نتائج أفضل؛ للمهام المعقدة، يُوصى بالأوصاف الإنجليزية.
س هل أحتاج شرح المشروع من الصفر كل مرة؟
ج لا. يقرأ Codex ملفات المشروع تلقائيًا كسياق. سجل المحادثة ضمن نفس الجلسة يُحفظ أيضًا.
📖 ملخص
- السير الأساسي: ادخل المشروع ← شغّل codex ← أدخل المهمة ← راجع النتائج
- Prompt الفعّال: هدف واضح + توفير سياق + تضمين التحقق
- استخدم التعليمات المضافة للتطوير التكراري
- أدر المشاريع بـ git لسهولة التراجع عن التغييرات الخاطئة
- قدّم زيادات صغيرة وراجع كل تغيير
📝 تمارين
- أساسي (⭐): أنشئ مشروعًا بسيطًا واستخدم Codex لإضافة اختبارات وحدية.
- متوسط (⭐⭐): أكمل ميزة بشكل تكراري: أنشئ الهيكل ← أضف الوظائف ← حسّن معالجة الأخطاء.
- متقدم (⭐⭐⭐): قدّم تعليمة غامضة لـ Codex عمدًا، لاحظ كيف يفسرها، ثم استخدم التعليمات المضافة لتصحيح النتيجة — وثّق العملية بالكامل.