From spec-kit
Identify and resolve ambiguities in the current feature specification using a multi-agent debate system. Use when the user asks to "clarify the spec", "refine requirements", "resolve ambiguities", "وضّح المواصفات", "حسّن المواصفات", "speckit clarify", "check for gaps in spec", "find unclear requirements", or wants to improve specification quality before planning.
npx claudepluginhub clockwork-temptation/plugin_01uphfxag16yzb4yodkyf1rzThis skill uses the workspace's default tool permissions.
```bash
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
claude /speckit.clarify
يكتشف ويحل الغموض في المواصفات عبر نظام مناظرة من 4 وكلاء فرعيين متخصصين. بدلاً من أن يكتشف وكيل واحد الغموض ويحله بنفسه — يتنافس 4 وكلاء للوصول لأدق إجابة.
┌─────────────────────────────────────────────────────┐
│ حلقة المناظرة │
│ │
│ [1] السائل (Interrogator) │
│ يفحص المواصفة ← يولّد أسئلة مرتبة بالأثر │
│ ↓ │
│ [2] المجيب (Respondent) │
│ يحلل السياق ← يقدم إجابة مدعمة بالأدلة │
│ ↓ │
│ [3] المشكك (Skeptic) │
│ يفحص الإجابة ← يكشف الثغرات والافتراضات │
│ ↓ │
│ [4] الحاكم (Arbiter) │
│ يقيّم الأطراف ← يصدر القرار النهائي │
│ │
│ ← القرار يُكتب مباشرة في المواصفة │
└─────────────────────────────────────────────────────┘
المهمة: اكتشاف الغموض وتوليد الأسئلة.
البروتوكول:
check-prerequisites.ps1 -Json -PathsOnly (راجع references/check-prerequisites.ps1)Impact × Uncertainty (حد أقصى 5 أسئلة)المخرج: قائمة أسئلة مُهيكلة بصيغة:
### Q[N]: [نص السؤال]
- **الفئة**: [اسم الفئة]
- **الأثر**: [لماذا مؤثر]
- **الخيارات**:
| # | الخيار | المزايا | المخاطر |
|---|--------|---------|---------|
| A | ... | ... | ... |
| B | ... | ... | ... |
المهمة: تقديم أفضل إجابة ممكنة لكل سؤال بناءً على الأدلة المتاحة.
البروتوكول:
### A[N]: الإجابة على Q[N]
- **الاختيار**: [الخيار المختار]
- **التبرير**: [3-5 نقاط — لماذا هذا هو الأنسب]
- **الدليل**: [مرجع من المواصفة أو الدستور]
- **المخاطر المقبولة**: [ما الذي نتقبله مع هذا الاختيار]
المهمة: تحدي إجابات المجيب وكشف النقاط العمياء.
البروتوكول:
### S[N]: تشكيك في A[N]
- **التصنيف**: [✅ | ⚠️ | ❌]
- **الثغرة**: [ما الافتراض غير المُثبت أو النقطة العمياء]
- **أسوأ سيناريو**: [ماذا يحدث لو كانت الإجابة خاطئة]
- **البديل**: [إن وُجد — خيار أفضل مع تبرير]
المهمة: إصدار القرار النهائي وكتابته في المواصفة.
البروتوكول:
### D[N]: القرار النهائي لـ Q[N]
- **القرار**: [نص القرار الواضح]
- **المصدر**: [المجيب | المشكك | توليفة]
- **الثقة**: [عالية | متوسطة | منخفضة]
- **ملاحظة للمواصفة**: [النص الذي سيُضاف أو يُعدَّل في المواصفة]
[DECISION: LOW CONFIDENCE] في المواصفة ليُراجعها المستخدم لاحقاً1. شغّل check-prerequisites.ps1 -Json -PathsOnly
2. اقرأ FEATURE_SPEC + constitution.md
3. ── حلقة المناظرة (حد أقصى 5 أسئلة × 3 دورات) ──
3.1 السائل يولّد الأسئلة (حد أقصى 5)
3.2 المجيب يجيب على كل سؤال
3.3 المشكك يتحدى كل إجابة
3.4 الحاكم يصدر القرارات
3.5 القرارات تُكتب في المواصفة
3.6 إذا بقيت أسئلة جديدة → دورة جديدة
3.7 إذا لا أسئلة جديدة أو وصلنا 3 دورات → توقف
4. أنتج تقرير المناظرة (اختياري — في references/)
5. اعرض ملخص القرارات النهائية
يتحقق من hooks.before_clarify و hooks.after_clarify في .specify/extensions.yml