Loading blog posts...
Loading blog posts...
جاري التحميل...

تتحول الأمور إلى فوضى عارمة بسرعة مع Claude Code عندما يكتب كل مطور أوامره (Prompts) بطريقة مختلفة، ويعيد "الوكيل" (Agent) كتابة نصف المستودع البرمجي (Repo)، ولا أحد يستطيع تفسير سبب تخطي الاختبارات.
إليك الحل ببساطة: تعامل مع Claude Code كمنصة مُدارة تقنياً، وليس كمبرمج سحري زميل. هذا يعني وجود عقود، وحواجز حماية، وحلقات تحقق. فيما يلي أفضل الممارسات التي يمكنك نسخها إلى مستودعك وسير عملك اليوم.
markdown## CLAUDE.md (repo contract for Claude Code) ## Mission - Primary goal: ship safe, reviewable PRs with tests. - Never change public APIs without updating docs and changelog. ## Repo map - /apps/api: FastAPI service - /apps/web: Next.js app - /packages/shared: shared types + utilities ## Non-negotiables - Run: lint + typecheck + unit tests before proposing "done" - No new dependencies without justification + security note - No secrets in code, logs, or test fixtures ## Coding standards - Python: ruff + black, type hints required for public functions - TypeScript: strict mode, no `any` without comment - Error handling: return typed errors, no silent catches ## Testing rules - Every bug fix: add regression test - Every feature: unit test + one integration test - Prefer deterministic tests: freeze time, avoid network ## Change boundaries - Do not modify: /infra/terraform without explicit approval - Do not touch auth flows unless task explicitly says so ## PR format - Summary: what changed + why - Risk: edge cases + rollback plan - Verification: commands run + results ## Examples ### Good commit message feat(api): add idempotency key to payment webhook ### Good test name test_webhook_rejects_duplicate_idempotency_key
وجود ملف CLAUDE.md قوي يقلل من تشتت الأنماط ويمنع الوكيل من التخمين (وهنا تبدأ الكثير من الغرائب عادةً). اجعله قصيراً، قابلاً للتنفيذ، ومليئاً بالأمثلة التي يمكن للوكيل نسخها.
قم بتخزينه في نظام التحكم بالنسخ (Version Control) وراجع التغييرات التي تطرأ عليه تماماً كما تراجع الكود، لأنه ببساطة يمثل "السياسة" المتبعة. للحصول على دليل هيكلي أعمق، راجع تفصيل Dometrain: إنشاء ملف CLAUDE.md المثالي لـ Claude Code.
Important
[!IMPORTANT]
تعامل مع CLAUDE.md كعقد: إذا خالف المستودع هذا العقد، أصلح المستودع أو حدّث العقد. لا تدعه يصبح مجرد أمنيات نظرية.
textYou are Claude Code working in this repo. Task: [ONE SENTENCE GOAL] Constraints: - Max PR size: [X] files or [Y] lines changed - No new dependencies - Must include tests Process: 1) Ask up to 5 clarifying questions if anything is ambiguous. 2) Propose a plan with 5-10 steps. Each step must name files to touch. 3) Execute step-by-step. After each step: - summarize changes - list commands to run 4) Stop before final commit and provide: - risk list - rollback plan - verification evidence
هذا النهج يتفوق على التلقين الفوري (Prompting) لمرة واحدة لأنه يفرض كشف الافتراضات قبل تغيير الكود. كما أنه يخلق نقاط تفتيش طبيعية حيث يمكن للإنسان أن يقول: "انتظر، لا، ليس هذا ما قصدناه" قبل أن يتم العبث بالمستودع.
قاعدة "الخطوات الصغيرة" هي الأكثر أهمية عندما يقوم Claude Code بتعديلات تشمل ملفات متعددة أو إعادة هيكلة (Refactoring). للحصول على شرح عملي لهذه الحلقة وكيفية تناسب وضع التخطيط (Plan Mode) معها، راجع: دليل Claude Code للمبتدئين.
Tip
[!TIP] ضع "Max PR size" (الحد الأقصى لحجم PR) ضمن الأمر (Prompt). هذا يمنع أكثر حالات الفشل شيوعاً: عمليات إعادة الكتابة الضخمة والغامضة التي يصعب مراجعتها.
textEnter Plan Mode. Goal: Add rate limiting to /apps/api endpoints using existing middleware patterns. Rules: - Read relevant files before editing. - Identify current request lifecycle and where middleware is applied. - Propose 2 options: Option A: minimal change using existing components Option B: cleaner refactor if needed - For each option: list files, risk, and test approach. Stop after the plan and wait for approval.
عادةً ما يكون وضع التخطيط (Plan Mode) هو أوفر طريقة لتجنب التراجعات المكلفة. فهو يدفع Claude Code للبحث فعلياً عن الأنماط الموجودة، وقراءة الوحدات الصحيحة، وتقديم خيارات قبل البدء في التعديل.
استخدمه لأي شيء يتعلق بالبنية الهندسية، أو الأمن، أو أي شيء قد يؤدي واقعياً إلى كسر الـ CI. أحد الأنماط التي تعمل جيداً في الممارسة هو "بوابات الموافقة على الخطة": اطلب من الإنسان "الموافقة على الخيار A أو B" قبل أي تعديلات. هذه الوقفة الواحدة تزيل الكثير من المشاكل الناتجة عن الافتراضات.
textProduce a PR-sized change. Output format: 1) Files changed (with reason per file) 2) Diffstat estimate (rough lines added/removed) 3) Actual patch in unified diff format 4) PR description: - What changed - Why - Risks and edge cases - How verified (commands + results) Constraints: - Touch at most files - No file over lines changed unless approved - Keep public interfaces stable
يميل Claude Code إلى الأداء بشكل أفضل عندما تحدد له معنى "الانتهاء" بمصطلحات المراجعة. طلب "الملفات التي تم تغييرها" و"تقدير diffstat" هو حيلة تحكم رائعة: فهي تجبر الوكيل على التفكير في النطاق قبل الكتابة.
كما أن طلب وصف للـ PR يساعد لاحقاً، خاصة إذا لمست جلسات متعددة (أو أشخاص متعددون) نفس المنطقة. وبصراحة، الفرق التي رأيتها تحقق مكاسب إنتاجية حقيقية تحصل عليها عادةً من الحلقات الصارمة والفروقات (Diffs) القابلة للمراجعة، وليس من ترك الوكيل يعمل بشكل أضخم وأكثر استقلالية.
مصدر المناقشة حول تفعيل سير العمل والتحقق: DEV Community MCP and 2026 workflow shift.
bash## Minimal "agent-safe" local verification script ## Run this before you accept Claude's "done" set -euo pipefail # Example for a mixed TS + Python repo npm run lint npm run typecheck npm test ruff check. pytest -q
أفضل ممارسة لـ Claude Code في عام 2026 قد تبدو مملة نوعاً ما: لا تثق بالمخرجات دون فحوصات آلية. اجعل التحقق عبارة عن سكريبت (Script) ليعمل بنفس الطريقة في كل مرة (للتخلص من عذر "إنه يعمل على جهازي").
إذا لم يتمكن الوكيل من تشغيل الأوامر في بيئتك، اجعله يسرد الأوامر الدقيقة والمخرجات المتوقعة. قاعدة بسيطة واحدة تكشف الكثير: "لم يتم تحديث أي اختبارات" هو تحذير جودة للتغييرات غير التافهة. إذا لم يلمس إصلاح ميزة أو خطأ أي اختبارات، افرض تقديم تبرير.
Warning
[!WARNING] إذا اقترح Claude Code كوداً "يبدو صحيحاً" ولكنه لا يستطيع تسمية ملف الاختبار الدقيق الذي سيضيفه أو يحدثه، توقف وأعد تحديد النطاق. هذه علامة شائعة على أنه لم يقم برسم خريطة مسارات الكود بالكامل.
textBefore marking complete, run a verification checklist: - Unit tests: which files changed and why - Integration tests: which scenario proves the behavior end-to-end - Static checks: lint, typecheck - Security checks: dependency scan or SAST if available - Observability: logs/metrics impacted and example log line Return results as a table with: Check | Command | Pass/Fail | Notes
هذا يفرض الإكمال القائم على الأدلة. ويمنحك عناصر يمكنك لصقها مباشرة في الـ PR (وهو ما سيشكرك عليه المراجعون).
bash## Safe iteration loop for AI-driven changes git checkout -b ai/[ticket-id]-[short-name] # After each completed micro-step git status git add -A git commit -m "wip: [step] [what changed]" # If Claude goes off-track git reset --hard HEAD~1
الالتزام المتكرر (Frequent commits) هو وسيلة تحكم، وليس مجرد استعراض. فهي تمنحك نقاط تراجع، وتجعل المراجعة أسهل، وتسمح لك بمقارنة الأساليب البديلة باستخدام git range-diff.
في سير العمل المعتمد على الوكلاء (Agentic workflows)، هذه هي الطريقة التي تحافظ بها الفرق على السرعة دون التضحية بالأمان. وهناك نوع مفيد هو "commits نقاط التفتيش": قم بعمل commit بعد إضافة الاختبارات، وبعد إعادة الهيكلة، وبعد ربط الميزة. بهذه الطريقة، عندما يفشل الـ CI، يمكنك عادةً تحديد المرحلة الدقيقة التي انحرفت فيها الأمور.
textSplit this work into parallel tracks and keep outputs mergeable. Track A (Implementation): - Add feature behind flag [FLAG_NAME] - Keep changes minimal Track B (Tests): - Add unit tests + one integration test - Focus on edge cases Track C (Docs): - Update README or /docs with new behavior - Include migration notes Track D (Threat model): - Identify abuse cases and data exposure risks - Propose mitigations and a security checklist For each track: - list files to touch - list acceptance criteria - stop after a proposed patch plan
يعمل التوازي عندما يكون لكل مسار حدود واضحة ونقاط دمج. الحيلة تكمن في التقارب من خلال خطوة تكامل يراجعها الإنسان، وليس السماح لعدة وكلاء بتعديل نفس الملفات وتمني أن يقوم Git بحل المشكلة.
على سبيل المثال، يمكن عادةً بناء الاختبارات بالتوازي طالما أن واجهة الميزة مستقرة. وهنا يصبح Claude Code "تصميماً للنظام" بمعنى حقيقي جداً: أنت تصمم مسارات العمل وحواجز الحماية، وليس مجرد كتابة أوامر (Prompts).
textMCP usage policy (copy into internal docs) Allowed: - Read-only access to documentation sources - Read-only access to ticketing issues for requirements - Read-only access to feature flag state and config Restricted: - No write access to production systems - No secret retrieval - No customer data access Approval required: - Any action that changes infrastructure, IAM, or billing - Any write operation outside a sandbox environment
تغير خوادم MCP (بروتوكول سياق النموذج) سير العمل لأن Claude Code يمكنه سحب سياق موحد من المستندات، والتذاكر، وواجهات برمجة التطبيقات (APIs)، وحالات الميزات (Feature flags) دون أن تضطر للصق كل شيء. هذا قوي، لكنه يوسع أيضاً نطاق الضرر إذا لم يكن الوصول محكماً.
تعامل مع MCP كتكامل داخلي: أقل الامتيازات، قوائم سماح صريحة، وبوابات موافقة. المكسب العملي هو تقليل السكريبتات اللاصقة وتقليل المتطلبات القديمة. الخطر العملي هو أن يتصرف الوكيل في البيئة الخطأ إذا كانت الهويات والنطاقات فضفاضة (رأيت ذلك يحدث، وهو ليس أمراً ممتعاً أبداً).
المصدر: MCPs and the 2026 workflow shift.
yaml# Example policy model you can adapt (conceptual) agent: name: claude-code environment: dev permissions: repo: read: true write: true ci: read: true trigger: true cloud: read: true write: false secrets: source: vault allowed_paths: - "kv/dev/*" rotation_days: 30 approvals: required_for: - "infra/*" - "iam/*" - "prod/*"
النهج القياسي هو "هوية الوكيل تساوي حساب الخدمة (Service Account)": رموز وصول (Tokens) محددة النطاق، فترات صلاحية قصيرة (Short TTLs)، وسجلات تدقيق واضحة. اجعل الأصل هو "القراءة فقط" حيثما أمكن، خاصة بالنسبة للخدمات السحابية وأنظمة التذاكر.
اطلب موافقة بشرية لأي شيء يمكن أن يؤثر على الإنتاج، أو التكاليف، أو كشف البيانات. هذا الأمر أكثر أهمية في عام 2026 لأن الوكلاء ببساطة أصبحوا أكثر قدرة على تنفيذ إجراءات متعددة الخطوات. تكامل واحد بصلاحيات زائدة يمكن أن يحول جلسة برمجة مفيدة إلى حادثة أمنية.
textDecision rule for /model switching Use a faster/cheaper model when: - formatting, renames, comment cleanup - writing tests from a fixed spec - updating docs based on known behavior Use a stronger model when: - cross-cutting refactors - concurrency, caching, distributed systems changes - auth, crypto, payments, PII handling - debugging flaky tests with multiple hypotheses Always require Plan Mode when: - touching > 3 files - changing public APIs - changing data models or migrations
تبديل النموذج هو وسيلة للتحكم في الميزانية والمخاطر. وفر التفكير المكلف للعمل الذي يمنع عيوباً حقيقية. واستخدم النماذج الأرخص للعمل الميكانيكي حيث سيكتشف التحقق الأخطاء على أي حال.
للاطلاع على عروض الميزات وأوضاع التحكم، راجع: دليل Claude Code الشامل للمبتدئين (2026) والدليل المرجعي الأطول: دليل Claude Code الكامل 2026.
| القدرة (Capability) | ما يجب توحيده | سبب الأهمية | البديل الشائع |
|---|---|---|---|
| السياق المستمر | عقد CLAUDE.md | يقلل الانحراف والافتراضات الخاطئة | أوامر (Prompts) مرتجلة في التذاكر |
| التخطيط الهيكلي | وضع التخطيط + بوابة الموافقة | يمنع المسارات الخاطئة المكلفة | طلبات "اكتب الكود" لمرة واحدة |
| التحقق | سكريبت واحد يشغل lint, types, tests | يحول "تم الإنجاز" إلى دليل | فحوصات يدوية عشوائية |
| العمل المتوازي | مسارات (تنفيذ، اختبارات، توثيق، نموذج تهديد) | أسرع دون فوضى الدمج | وكيل واحد يعدل كل شيء |
| السياق المتحكم به | قوائم سماح MCP + أقل الامتيازات | يمنع التجاوز ومخاطر البيانات | نسخ ولصق المستندات في الدردشة |
| احتواء التغيير | حدود حجم PR + نقاط تفتيش Commit | يجعل التراجع والمراجعة سهلة | عمليات إعادة كتابة ضخمة |
هذا الجدول هو الأساس التشغيلي. إذا كان على الفريق توحيد شيئين فقط، فابدأ بـ CLAUDE.md بالإضافة إلى سكريبتات التحقق. كل شيء آخر يبنى على ضوابط التحكم هذه.
حققت Stripe توفراً بنسبة 99.99% لواجهة برمجة التطبيقات (API) من خلال الجمع بين إدارة التغيير الصارمة والاختبار الآلي والطرح المرحلي. يتناسب Claude Code بشكل أفضل عندما يغذي نفس هذه البوابات.
حققت Netflix تعافياً أسرع من الأعطال باستخدام تحليل الكناري الآلي والتسليم التدريجي. التغييرات التي يكتبها الوكيل لا تزال بحاجة إلى نفس مسارات التحقق والتراجع.
تعاملت Shopify مع أحداث ذروة الحركة من خلال الاستثمار في القابلية للمراقبة (Observability) وممارسات النشر الآمن. يجب أن تتضمن تغييرات Claude Code تأثيرات السجلات والمقاييس، وليس فقط فروقات الكود (Code diffs).
هذه ليست نجاحات "حصرية لـ Claude". إنها نفس الضوابط الهندسية التي تحافظ على أمان البرمجة المعتمدة على الوكلاء (Agentic coding) عند التوسع.
ابدأ من هنا (خطوتك الأولى): أنشئ CLAUDE.md في جذر المستودع وأضف 12 نقطة: خريطة المستودع، غير القابلة للتفاوض، قواعد الاختبار، تنسيق PR.
مكاسب سريعة (تأثير فوري):
./verify.sh واطلبه في كل جلسة Claude Code قبل "الانتهاء".تعمق أكثر (لمن يريد المزيد):
تبدو أفضل ممارسات Claude Code في عام 2026 مشابهة كثيراً لعمليات المنصة (Platform Ops): عقد CLAUDE.md مُدار، وسير عمل صارم من الخطة إلى الـ PR، وتحقق ينتج أدلة. حافظ على الفروقات (Diffs) صغيرة، وقم بالـ Commit في نقاط تفتيش، ووسّع النطاق بمسارات متوازية تندمج عبر المراجعة.
مع توسع تكاملات MCP، فإن مبدأ أقل الامتيازات وبوابات الموافقة هما غالباً الفرق بين التسليم الأسرع وبين كارثة كان يمكن تجنبها تماماً.