العودة إلى التحديثات
New releaseAug 17, 2026

preflight v0.20.1

أداة سطر أوامر مبنية على Go تقوم بمسح قواعد الأكواد للتأكد من جاهزيتها للإطلاق، حيث تكتشف التكوينات المفقودة، مشكلات الأمان، تسريبات الأسرار، والفجوات في التكامل قبل النشر في الإنتاج.

مشاركة

Preflight.sh

Agent skill on skills.sh

Preflight.sh هي أداة سطر أوامر تفحص قاعدة الشيفرة البرمجية الخاصة بك للتأكد من جاهزيتها للإطلاق. تكتشف الإعدادات المفقودة، ومشاكل التكامل، والمخاوف الأمنية، والفجوات في بيانات SEO الوصفية، وغيرها من الأخطاء الشائعة قبل النشر إلى بيئة الإنتاج.

لا تُحرج نفسك في بيئة الإنتاج. فقط قم بتشغيل الأمر.

التثبيت

Homebrew (macOS/Linux)

brew install preflightsh/preflight/preflight

npm

npm install -g @preflightsh/preflight

Go

go install github.com/preflightsh/preflight@latest

Docker

docker pull ghcr.io/preflightsh/preflight

سكربت Shell

curl -sSL https://preflight.sh/install.sh | sh

التنزيل اليدوي

قم بتنزيل أحدث إصدار من GitHub Releases.

بدء سريع

# التهيئة في دليل مشروعك
cd your-project
preflight init

# تشغيل جميع الفحوصات
preflight scan

# فحص دليل محدد
preflight scan /path/to/project

# التشغيل مع مخرجات مفصلة (يعرض الملفات التي طابقت كل فحص)
preflight scan --verbose
preflight scan -v  # صيغة مختصرة

# التشغيل في وضع CI مع مخرجات JSON
preflight scan --ci --format json

# تشغيل فحوصات محددة فقط، أو تخطي بعضها، للتكرار السريع
# (لمرة واحدة؛ على عكس `preflight ignore` لا يغير preflight.yml)
preflight scan --only seo_meta,og_twitter
preflight scan --skip vulnerability,secrets

# كتم فحص
preflight ignore sitemap

# إلغاء كتم فحص
preflight unignore sitemap

# قائمة بجميع معرفات الفحوصات
preflight checks

مهارة الوكيل

يتضمن هذا المستودع مهارة وكيل متوافقة مع skills.sh في skills/preflight/SKILL.md. تمنح وكلاء البرمجة سير عمل Preflight قابلاً للتكرار: فحص preflight.yml، وتشغيل عمليات الفحص الآمنة لـ CI، وفرز النتائج، وتجنب عمليات الكتم غير الآمنة، وإعادة تشغيل التحقق، والإبلاغ عن مخاطر الإطلاق المتبقية.

اعرض المهارة من هذا المستودع:

# باستخدام Bun
bunx --yes skills add preflightsh/preflight --list

# أو باستخدام npm
npx --yes skills add preflightsh/preflight --list

قم بتثبيت مهارة Preflight فقط:

# باستخدام Bun
bunx --yes skills add preflightsh/preflight --skill preflight

# أو باستخدام npm
npx --yes skills add preflightsh/preflight --skill preflight

لوحة المعلومات والاقتراحات بالذكاء الاصطناعي

Preflight قابلة للاستخدام بالكامل من سطر الأوامر دون الحاجة إلى حساب. تضيف لوحة المعلومات الاختيارية في app.preflight.sh سجلاً مستضافاً لعمليات الفحص واقتراحات إصلاح مولّدة بالذكاء الاصطناعي لكل نتيجة. لا تغادر شيفرتك البرمجية جهازك أبداً: يتم تشغيل الفحص محلياً، ويتم إرسال ملخص منقح فقط من النتائج (معرفات الفحوصات، والحالات، والرسائل، دون قيم سرية أو محتويات ملفات) عند النشر.

أنشئ حساباً مجانياً، ثم اربط CLI:

preflight auth login    # يفتح متصفحك لتفويض هذا CLI
preflight auth status   # يعرض المستخدم الذي سجلت الدخول به
preflight auth logout   # يزيل بيانات الاعتماد المخزنة

انشر فحصاً إلى لوحة المعلومات الخاصة بك باستخدام --publish. يعرض رابطاً لعرض التشغيل. النشر بأفضل جهد: إذا كنت غير متصل أو لم تسجل الدخول، يستمر الفحص في العمل ويخرج بشكل طبيعي.

preflight scan --publish

في لوحة المعلومات تحصل على تفصيل نجاح/تحذير/فشل لكل تشغيل، والقائمة الكاملة للنتائج، وسجلاً لكل مشروع لترى ما تغير بين عمليات النشر.

يمكنك أيضاً قراءة هذا السجل من الطرفية باستخدام preflight history:

preflight history                       # التشغيلات الأخيرة عبر مشاريعك
preflight history --here                # تشغيلات المشروع الحالي فقط
preflight history <run-id>              # نتائج الفحص الكاملة لتشغيل واحد
preflight history --here --format json  # قابل للقراءة آلياً، للوكلاء

يتطلب preflight auth login. يطابق --here التشغيلات مع المستودع الحالي عبر git remote الخاص به، وهو نفس المفتاح المستخدم عند النشر.

افتح أي فحص فاشل أو تحذيري في تشغيل منشور لتوليد إصلاح خطوة بخطوة مصمم خصيصاً لحزمتك التقنية المكتشفة، مع أوامر وشيفرات جاهزة للنسخ.

  • مجاني يتضمن 5 عمليات نشر شهرياً.
  • استخدم مفتاحك الخاص: أضف مفتاح API من OpenAI أو Anthropic في إعدادات لوحة المعلومات ويبقى النشر مجانياً وغير محدود (تدفع لمزود الخدمة مباشرة).
  • مُدار (5 دولارات/شهرياً): نغطي تكاليف الذكاء الاصطناعي وتكون التشغيلات غير محدودة، دون الحاجة إلى مفتاح API.

ما يفحصه

الفحصالوصف
ENV Parityيقارن .env و.env.example للمتغيرات المفقودة
Health Endpointيتحقق من إمكانية الوصول إلى الموقع؛ يكتشف تلقائياً /health أو /healthz أو /api/health أو يتراجع إلى الجذر
Vulnerability Scanيفحص ثغرات التبعيات (bundle audit, npm audit, إلخ.)
SEO Metadataيفحص العنوان والوصف ووسوم Open Graph
OG & Twitter Cardsيتحقق من og:image وtwitter:card وبيانات المشاركة الاجتماعية الوصفية
Canonical URLيتحقق من وجود وسم الرابط الأساسي
Viewportيفحص وسم viewport المناسب للجوال
Lang Attributeيتحقق من سمة html lang لإمكانية الوصول
Structured Dataيفحص ترميز JSON-LD Schema.org
Security Headersيتحقق من HSTS وCSP وX-Content-Type-Options على كل من بيئة الإنتاج والاختبار
SSL Certificateيفحص صلاحية SSL ويحذر قبل انتهاء الصلاحية
WWW Redirectيتحقق من إعادة توجيه www/غير www إلى الرابط الأساسي
Email Authيفحص سجلات DNS الخاصة بـ SPF/DMARC لإمكانية تسليم البريد الإلكتروني (اختياري)
Secret Scanningيكتشف مفاتيح API وبيانات الاعتماد المسربة في الشيفرة
Debug Statementsيكتشف console.log وvar_dump وdebugger المتبقية في الشيفرة
Error Pagesيفحص صفحات الخطأ المخصصة 404/500
Image Optimizationيكتشف الصور الكبيرة (أكبر من 500KB) التي تضر بأوقات التحميل
Legal Pagesيفحص صفحات سياسة الخصوصية وشروط الخدمة
Cookie Consentيكتشف حل الموافقة على ملفات تعريف الارتباط (الامتثال لـ GDPR/CCPA)
Favicon & Iconsيفحص favicon وapple-touch-icon (.png و.webp و.svg) وweb manifest
robots.txtيتحقق من وجود robots.txt وأنه يحتوي على محتوى
sitemap.xmlيفحص وجود sitemap أو المولد الخاص به
llms.txtيفحص ملف إرشادات زاحف LLM
ads.txtيتحقق من ads.txt للمواقع المدعومة بالإعلانات (اختياري)
humans.txtيفحص humans.txt لنسب الفضل للفريق (اختياري)
IndexNowيتحقق من ملف مفتاح IndexNow لفهرسة بحث أسرع (اختياري)
LICENSEيفحص ملف الترخيص (اختياري، للمشاريع مفتوحة المصدر)

الخدمات المدعومة (72)

يكتشف Preflight تلقائياً ويتحقق من إعدادات هذه الخدمات:

المدفوعات

  • Stripe, PayPal, Braintree, Paddle, LemonSqueezy

تتبع الأخطاء والمراقبة

  • Sentry, Bugsnag, Rollbar, Honeybadger, Datadog, New Relic, LogRocket

البريد الإلكتروني والنشرات الإخبارية

  • Postmark, SendGrid, Mailgun, AWS SES, Resend, Mailchimp, Kit, Beehiiv, AWeber, ActiveCampaign, Campaign Monitor, Drip, Klaviyo, Buttondown

التحليلات

  • Plausible, Fathom, Umami, Fullres Analytics, Datafa.st Analytics, Google Analytics, PostHog, Mixpanel, Amplitude, Segment, Hotjar

المصادقة

  • Auth0, Clerk, WorkOS

الدردشة

  • Intercom, Crisp

الإشعارات

  • Slack, Discord, Twilio

البنية التحتية

  • Firebase, Supabase, Redis, Sidekiq, RabbitMQ, Elasticsearch, Convex

التخزين وCDN

  • AWS S3, Cloudinary, Cloudflare

البحث

  • Algolia

SEO

  • IndexNow

الذكاء الاصطناعي / نماذج اللغة الكبيرة

  • OpenAI, Anthropic Claude, Google AI (Gemini), Mistral, Cohere, Replicate, Hugging Face, Grok (X/Twitter), Perplexity, Together AI

الإعدادات

يستخدم Preflight ملف preflight.yml في جذر مشروعك:

projectName: my-app
stack: rails  # rails, next, react, vite, laravel, etc.

urls:
  staging: "https://staging.example.com"
  production: "https://example.com"

services:
  stripe:
    declared: true
  sentry:
    declared: true

checks:
  envParity:
    enabled: true
    envFile: ".env"
    exampleFile: ".env.example"

الفئات