
مقدمة على المشروع
qiaomu-codex-imagegen كيجمع القدرة المدمجة فـ Codex ديال توليد الصور فخدمة MCP، وأداة سطر الأوامر، وAgent Skill. من بعد التثبيت، Claude Code وCodex وCursor ولا أي Agent يقدر ينفّذ الأوامر يقدرو يولّدو ملفات الصور انطلاقاً من طلبات مكتوبة باللغة الطبيعية.
هاد المشروع مختلف على الطريقة العادية ديال «دخل جملة وحدة فيها prompt وخرّج الصورة»: افتراضياً كيبدا باستعمال suggest_directions باش يقترح على الأقل أربعة اتجاهات بأساليب مختلفة من ناحية الآلية، ومن بعد ما كيختار المستخدم الاتجاه، كيوسّع compose_prompt الـprompt الكامل، وفالأخير كيولّد النتيجة وكيشيّك عليها.

المشروع فيه 24 نوع ديال قوالب المشاهد، و48 preset، و66 أسلوب عام، و20 أسلوب ديال مصممي بوسترات Mondo، وزايد عليهم مجموعة ديال القواعد الخاصة بالنصوص والحقائق والتكوين والتقييم. هاد الشي مناسب لصناعة الأغلفة والبوسترات والصور المرافقة للسوشيال ميديا والهوية البصرية ديال المنتجات وتعديل الصور المرجعية.
سيرورة الخدمة الأساسية
- اقتراح الاتجاهات: حسب الموضوع وسياق الاستعمال، كيرجع على الأقل أربعة اتجاهات مختلفة من ناحية الآلية، بحال النص الغالب، والبنية المسطحة، والتصوير ديال الأشخاص، واللقطة القريبة ديال المنتج، ولا فضاء المواد.
- اختيار الاتجاه: المستخدم يقدر يختار اتجاه واحد ولا أكثر، ولا يخلي Agent يقرر بوحدو؛ وإذا ما عجبوش الاقتراح، يقدر يستبعد الاتجاهات اللي سبق تقترحات ويرجع يطلب اقتراحات جديدة.
- توسيع الـprompt: كيدخل متغيرات القالب فـprompt كامل، وكيعطي فـنفس الوقت الحوايج اللي خاص يتفاداو، وشروط التقييم، والافتراضات، والمعلومات الناقصة.
- توليد الصورة: كل اتجاه مختار كتتولد ليه صورة، وكيتم حفظ معلومات JSON المستعملة فعلياً حدّ الصورة، باش يسهل إعادة الإنتاج وصناعة محتوى من نفس السلسلة.
- التقييم وإعادة التوليد: Agent كيراجع الصورة بنداً بنداً حسب شروط التقييم، وإذا ما كانتش مطابقة كيعدّل غير الجزء المعني وكيعاود يولّدها.
إلى كان المستخدم محدد الأسلوب من الأول، بحال «استعمل أسلوب Mondo» ولا عطى مباشرة T03، يقدر النظام يدوز على اختيار الاتجاه ويمشي مباشرة لمرحلة تنسيق الـprompt ولا التوليد.
التحضير قبل التثبيت
قبل الاستعمال خاص تكون واجد هاد البيئة:
- Node.js 18 ولا نسخة أحدث: تقدر تتأكد باستعمال
node --version. - Codex CLI: خاصو يكون مثبت ومداخل للحساب، واستعمل
codex --versionباش تتأكد باللي الأمر خدام. - صلاحية توليد الصور: الحساب الحالي ديال Codex خاصو يكون قادر يستعمل توليد الصور. من الأحسن تولّد صورة يدوياً فـCodex قبل باش تتأكد.
المشروع براسو مشروع Node.js بلا dependencies، ولكن توليد الصور فعلياً باقي محتاج Codex CLI خدام فالجهاز وحساب فيه الرصيد اللازم.
تثبيت Agent Skill
إلى كان Agent اللي كتستعمل كيدعم Agent Skills، تقدر تنفّذ مباشرة:
npx skills add joeseesun/qiaomu-codex-imagegenالـSkill كيساعد Agent يفهم اختيار المشهد والأسلوب، وكتابة الوصف وطريقة التقييم، وكيولّد الصور باستعمال MCP ولا أداة سطر الأوامر اللي جاية مع المشروع.
تسجيل خدمة MCP

التسجيل فـClaude Code
بدّل المسار اللي لتحت بالمسار الفعلي ديال المجلد اللي فيه المشروع:
claude mcp add --scope user qiaomu-codex-imagegen -- node /المسار-المطلق/qiaomu-codex-imagegen/scripts/mcp-server.mjsالإعداد فـعملاء MCP الآخرين
Cursor وCodex ولا أي عميل MCP آخر يقدرو يزيدو فملف الإعدادات:
{
"mcpServers": {
"qiaomu-codex-imagegen": {
"command": "node",
"args": ["/المسار-المطلق/qiaomu-codex-imagegen/scripts/mcp-server.mjs"]
}
}
}خدمة MCP كتوفّر سبعة ديال الأدوات:
suggest_directions: اقتراحات فورية ومجانية ديال أربعة اتجاهات مختلفة على الأقل من ناحية الآلية.compose_prompt: توسيع القوالب والـpresets إلى prompt كامل، مع إرجاع الحوايج اللي خاص تتفادى، وشروط التقييم، والمعلومات الناقصة.generate_image: توليد صورة جديدة ولا تنفيذ تعديل على صورة مرجعية، مع إرجاع مسار الملف والأبعاد بالبكسل.search_promptsوget_prompt: البحث فمجموعة الـprompts المرجعية المحلية وقراءة محتواها.build_prompt: معاينة الـprompt الناتج بالطريقة المبسطة، بلا ما تتولد الصورة فعلياً.list_catalog: الاطلاع على presets ديال المشاهد والقوالب ومفاتيح الأساليب وحالة مجموعة البيانات المحلية.
الاستعمال بسطر الأوامر فقط
إلى ما محتاجش MCP، تقدر حتى تنسخ المستودع وتشغّل CLI مباشرة:
git clone https://github.com/joeseesun/qiaomu-codex-imagegen
cd qiaomu-codex-imagegen
node scripts/cli.mjs "كتاب محلول حدّ الشباك، وبخار القهوة طالع من الصفحات" --preset xiaohongshuالصور اللي كتتولد افتراضياً كتتحفظ فـ~/Pictures/qiaomu-codex-imagegen/<التاريخ>. وتقدر تستعمل --out و--name و--json للتحكم فمجلد الإخراج واسم الملف والنتيجة القابلة للقراءة آلياً.
الاستعمال الأساسي: اقترح الاتجاهات أولاً
فمهام البوسترات والأغلفة والصور المرافقة للسوشيال ميديا، من الأحسن تبدا بسيرورة «الاقتراح أولاً، والتوليد من بعد». الأمر التالي غادي يقترح عدة اتجاهات لموضوع «فعالية قراءة فمقهى»، ولكن ما غاديش يستهلك رصيد توليد الصور:
node scripts/cli.mjs suggest "فعالية قراءة فمقهى لمدة شهر" --for غلاف فيديوالنتيجة كتشرح غالباً الآلية البصرية ديال كل اتجاه، وقفل الأسلوب، والمعلومات اللي خاص تزيد، والأمثلة المرجعية. تقدر تختار اتجاه واحد، ولا تطلب من Agent يولّد عدة اتجاهات بالتوازي باش تقارن بينهم.


توسيع prompt ديال القالب
من بعد ما كتحدد الاتجاه، تقدر تشوف الأول الـprompt الكامل وشروط التقييم:
node scripts/cli.mjs compose --template T03-1 --var topic=غيوي --var subject=براعم طرية --var headline=غيويالقالب كيولّد وصفاً منظماً حسب المتغيرات. بالإضافة للموضوع والأسلوب، يقدر يتضمن هرمية النص، والفراغ، والمنطقة الآمنة، وشروط الفشل ومعايير المراجعة. معاينة الـprompt قبل التوليد الرسمي كتعاونك تكتاشف المتغيرات الناقصة ولا النص الطويل بزاف.
توليد الصور باستعمال القوالب
من بعد ما كتتأكد باللي الـprompt صحيح، تقدر تولّد الصورة مباشرة:
node scripts/cli.mjs generate --template T03-1 --var topic=غيوي --var subject=براعم طرية --var headline=غيويالمشروع فيه 24 نوع ديال القوالب، بحال الحروف الكبيرة بزاف مع حكاية صغيرة، والعناصر الخارجة من الإطار، والفراغ الضوئي المركزي، والتحرير بالحبر الشرقي، وتضاريس الورق المنحوت والنسيج، والبورتريه الفوتوغرافي، واللقطة القريبة ديال الماكلة، والصورة الرئيسية لمنتج تقني، والرسم المعماري، وبطاقات المعلومات. القوالب المختلفة ما كتبدلش غير الألوان ولا الفيلتر، ولكن كتبدل آلية التكوين، والعلاقة بين المواد، وهرمية النص، والعلاقة بين العناصر والموضوع.

توليد سريع باستعمال presets والأساليب
إلى كنت عارف المشهد والأسلوب من قبل، تقدر تستعمل الطريقة المبسطة بلا اقتراح الاتجاهات. مثلاً تولّد ثلاثة اقتراحات لغلاف فيديو:
node scripts/cli.mjs "زر تشغيل أحمر ضخم طالع بحال شروق الشمس" --preset video-cover --style saul-bass --count 3من بين presets ديال المشاهد الأكثر استعمالاً:
xiaohongshuوxiaohongshu-square: غلاف Xiaohongshu بنسبة 3:4 ولا مربع.video-cover: غلاف أفقي بنسبة 16:9 ليوتيوب وBilibili وغيرهم.video-vertical: غلاف عمودي بنسبة 9:16 لـDouyin وWeChat Channels وReels.wechat-cover: صورة رئيسية بنسبة 2.35:1 لحسابات WeChat الرسمية.x-cover: غلاف بنسبة 5:2 للصفحة الشخصية فـX.moments: بوستر بنسبة 4:5 لـMoments.posterوmovie-poster: بوستر عام وبوستر فيلم.book-coverوalbum-coverوarticleوpaper: صور مرافقة للكتب والألبومات والمقالات والمحتوى العلمي.
مثلاً، صناعة بوستر فيلم بلا نص باستعمال أسلوب Mondo:
node scripts/cli.mjs "ظل دودة رملية ضخمة فالصحراء، وشخصيات بشرية صغيرة" --preset movie-poster --style olly-moss
التحكم فالنص اللي داخل الصورة

البوسترات والأغلفة غالباً كيحتاجو عنواناً وعنواناً فرعياً وسطر معلومات ولا شارة، ماشي غير عنوان واحد. تقدر تحدد النص باستعمال --text:
node scripts/cli.mjs "منارة" --preset wechat-cover --text "سفينة الملاحة الليلية"إلى كان النص بالصينية ولا طويل نسبياً، من الأحسن تدخل الجمل القصيرة حرفاً بحرف، ومن بعد تكبّر الصورة وتراجعها مزيان. توضيحات المشروع كتشير إلى أن النموذج ما زال يقدر يدير أخطاء دقيقة فالنصوص الصينية والأسطر الصغيرة ديال المعلومات؛ أما البورتريه ولا اللقطات القريبة ديال المنتجات اللي ما محتاجاش طبقة معلومات، فتقدر تستعمل فيها تصميماً بلا نص.
تعديل الصور المرجعية
بواسطة --ref تقدر تعطي صورة مرجعية وحدة ولا أكثر. مسار الصورة المرجعية خاصو يكون مساراً مطلقاً:
node scripts/cli.mjs "خلي نفس القلم الرصاص، وبدّل الخلفية بورق بلون بيج دافئ" --ref /abs/pencil.png --ratio 1:1هاد الطريقة مناسبة لتبديل الخلفية، ولا الحفاظ على الموضوع كما هو، ولا إجراء تعديلات بصرية جزئية. المشروع ما كيقطعش الصور فصمت؛ وإذا كانت النسبة النهائية مختلفة على المطلوبة، فالنتيجة غادي تبيّن فرق الأبعاد.
معاينة الـprompt والبحث فالأمثلة المحلية
إلى بغيتي غير تراجع الـprompt بلا ما تولّد الصورة، استعمل:
node scripts/cli.mjs "القهوة والكتاب" --preset xiaohongshu --show-promptوإلى كنت بنيتي حزمة بيانات محلية اختيارية، تقدر حتى تقلب على أمثلة مشابهة:
node scripts/cli.mjs search "موسم الشاي" --limit 5حزمة البيانات فيها تقريباً 689 prompt مرجعي مع صور مصغرة، ولكن هاد البيانات ديال الغير ما كتجيش منشورة مع المستودع. وحتى بلا حزمة البيانات، القوالب والأساليب وسيرورة توليد الصور كيبقاو خدامين بشكل عادي.
إعدادات متقدمة ونصائح عملية
ثبّت الاتجاه فالصور ديال السلسلة
إلى كنت كتوجد مجموعة ديال الصور لـXiaohongshu ولا عدة أغلفة، من الأحسن تختار القالب والأسلوب للصورة الأولى، ومن بعد تخلي الصور اللاحقة تستعمل نفس قفل الأسلوب والنسبة وبنية المعلومات. بهاد الطريقة كتضمن الانسجام أكثر من أنك تكتب «أسلوب مشابه» لكل صورة بوحدها.

تحكّم فالـquota ملي كتستعمل النسخ المتوازية
--count يقدر يولّد بالتوازي من 1 حتى لـ4 ديال النسخ، ولكن كل تصويرة غادي تستهلك من رصيد حساب Codex ولا OpenAI. التصويرة الواحدة كتحتاج غالباً ما بين 30 و60 ثانية، وكلما زاد العدد ديال التصاور اللي كتتولّد بالتوازي، كيزيد الاستهلاك حتى هو.
التعامل مع مشكل الخلفية الشفافة
المشروع كيكشف المناطق الشفافة فالنتائج المولّدة. فالحالة الافتراضية، إلا تكتاشفات مناطق شفافة كيتسطّحو على خلفية بيضاء؛ إلا كنت محتاج فعلاً تحتافظ بالخلفية الشفافة، تقدر تستعمل transparent_background: true. هاد المعالجة كتستعمل باش تتفادى أن بعض برامج عرض الصور يبيّنو المناطق الشفافة بحواف كحلة.
تحديد مسار Codex ومدة الانتظار
إلا ما لقاوش النظام Codex، تقدر تحدد مسار الملف التنفيذي باستعمال متغير البيئة QIAOMU_CODEX_BIN. إلا سالات مدة الانتظار قبل التوليد، زيد القيمة ديال --timeout، ولا بسّط الوصف فالأول:
node scripts/cli.mjs "咖啡店阅读活动封面" --preset video-cover --timeout 120000بناء حزمة محلية ديال المحتوى
إلا كان عندك مجلد أرشيف خاص بك، وكيحتوي على archive.json وprompts/ وimages/، تقدر تنفّذ:
node scripts/build-corpus.mjs /path/to/提示词归档المجلد الافتراضي ديال المحتوى هو ~/.local/share/qiaomu-codex-imagegen/corpus، وتقدر حتى تستعمل QIAOMU_CORPUS_DIR باش توجّه لمكان آخر. كيتنصح تستعمل حزمة المحتوى غير فالجهاز المحلي، وما ترفعش ولا تعاود تبعث محتوى ديال طرف ثالث بلا ترخيص.
التحقق من نجاح التثبيت
المشروع كيوفّر اختبارات بلا إنترنت وأوامر لفحص المجلد:
npm test
node scripts/cli.mjs --list
node scripts/cli.mjs "一个红色圆" --show-promptnpm test ما كيستهلكش من رصيد توليد الصور، وتقدر تستعملو للتحقق من تركيب القوالب، ووضع النصوص، وتعويض البنية، وتنوّع الاتجاهات، والبحث فالمحتوى، ومعالجة الخلفية الشفافة، والبروتوكولات.
الأسئلة المتكررة
cannot start codex: تأكد بلي Codex CLI متثبّت، ولا عيّنQIAOMU_CODEX_BIN.codex finished without producing an image: راجع حالة تسجيل الدخول فـ Codex وتأكد بلي الحساب عندو صلاحية توليد الصور.timed out: زيد مدة الانتظار، ولا نقص من تعقيد الوصف.- النسبة ماشي هي المتوقعة: عاود شدّد على النسبة فالوصف، ولا استعمل
--ratio؛ الأداة ما كتقصّش الصورة تلقائياً وبلا ما تعلمك. - ما لقاتش الصورة المرجعية: بدّل قيمة
--refلمسار مطلق.
الخلاصة
التركيز ديال qiaomu-codex-imagegen ماشي غير يبعث جملة للصورة النموذجية، ولكن ينظّم المشهد، والستايل، والعلاقات ديال التكوين، وتسلسل النصوص، ومعايير القبول فمسار عمل قابل لإعادة الاستعمال. تقدر تبدا من Agent Skill ولا MCP، وتخلي Agent يتكلف بالاقتراح والتنظيم؛ وتقدر حتى تستعمل CLI باش تتحكم بدقة فالإعداد المسبق، والستايل، والنسبة، والنصوص، والصورة المرجعية.
بالنسبة للمهام اللي كتحتاج إنتاج مستقر ديال الأغلفة، والملصقات، والصور المتسلسلة، كيتنصح تعتمد مسار: «اقترح الاتجاهات أولاً، من بعد وسّع البرومبتات، ومن بعد التوليد دير القبول حسب الشروط»، مع مراجعة بشرية للنصوص داخل الصور والأبعاد قبل الاستعمال الرسمي.
