العودة إلى التحديثات
New releaseSep 1, 2026

vet v1.19.0

احمِ نفسك من حزم المصادر المفتوحة الخبيثة 🤖

مشاركة

SafeDep vet

اكتشف الحزم الخبيثة والثغرات وسير عمل CI المحفوفة بالمخاطر قبل أن تصل إلى بيئة الإنتاج.

[!NOTE] هذا الفرع هو vet v2، في مرحلة ألفا. يقع vet v1 على main ويبقى أحدث إصدار. توضّح ملاحظات إصدار v2.0.0 كيف يُقابل كل أمر وكل علامة في v1 نظيرها في v2.

لماذا vet

تبعياتك وسير عمل GitHub Actions وإعدادات وكيل الذكاء الاصطناعي لديك تشغّل شيفرة لم تكتبها أنت. يعثر vet على المخاطر فيها.

  • الحزم الخبيثة. يفحص vet كل حزمة مقابل SafeDep Threat Intel. يحلّل Threat Intel إصدارات الحزم الجديدة عند نشرها في السجلات.
  • الثغرات المعروفة، مع الإصدار المُصلَح الذي يجب الترقية إليه.
  • سير العمل المحفوف بالمخاطر. المحفّزات الخطرة، وحقن القوالب، والأسرار المكشوفة، والإجراءات التي لا تحتوي على commit SHA مثبّت.
  • التلاعب بملفات القفل والإصدارات الحديثة. الإدخالات الواردة من سجل غير موثوق، والإصدارات الواقعة ضمن نافذة فترة التهدئة.
  • السياسات كشيفرة. تحدد القواعد المكتوبة بلغة CEL متى يفشل الفحص. يمكنك اختبار قاعدة على فحص محفوظ.
  • جرد الذكاء الاصطناعي والتشفير. يسرد vet مكتبات الذكاء الاصطناعي وخوارزميات التشفير التي تستدعيها شيفرتك، ويكتب CycloneDX xBOM وCBOM.

لا يحتاج vet إلى حساب ولا يرسل أي شيفرة مصدرية.

البدء السريع

brew install --cask safedep/tap/vet@edge
vet scan

يكتشف vet scan حزمة خبيثة وثغرات وحقنًا في سير العمل

vet scan --fail-on high                         # exit 1 on a high or critical finding
vet scan --base-ref origin/main --fail-on high  # report only what a pull request changes
vet report show --report sarif=vet.sarif        # write SARIF from the saved scan, with no new scan

التثبيت

القناةالأمر
Homebrewbrew install --cask safedep/tap/vet@edge
misemise use -g 'github:safedep/vet[prerelease=true]@2'
Gogo install github.com/safedep/vet/v2/cmd/vet@latest
الحاويةdocker run --rm -v "$PWD:/src" -w /src ghcr.io/safedep/vet:v2-latest scan

يقوم mise بتثبيت الإصدار بعد يوم واحد من نشره. يحتوي install.md على الأمر الخاص بأحدث إصدار، وملفات الإصدار الثنائية، وشهادات البناء.

ما الذي يفحصه vet

الهدفمثال
مجلد (الافتراضي)vet scan، vet scan ./service
مستودع gitvet scan https://github.com/safedep/vet
صورة حاويةvet scan oci://alpine:3.20، vet scan image.tar
ملف SBOM (CycloneDX أو SPDX)vet scan sbom.cdx.json
حزمة واحدةvet scan pkg:npm/[email protected]
الأدوات الموجودة على هذا الجهازvet endpoint audit

يقرأ vet ملفات القفل والبيانات الوصفية الخاصة بـ npm وPyPI وGo وMaven وGradle وCargo وRubyGems وNuGet وPackagist وPub وغيرها. كما يقرأ سير عمل GitHub Actions وإعدادات وكيل الذكاء الاصطناعي الخاصة بالهدف. وهو لا يثبّت أو يشغّل أيًا منها. تحوّل عناصر التحكم هذه البيانات إلى نتائج. راجع controls.md.

السياسة

تحدد السياسة متى يفشل الفحص. احفظ هذا الملف باسم vet-policy.yml:

version: 2
rules:
  - id: no-malware
    description: A malicious or suspicious package fails the build.
    when: finding.family == "malware"
    action: fail
  - id: no-workflow-injection
    when: finding.control_id in ["dangerous-trigger", "template-injection"]
    action: fail
  - id: no-critical-vulnerability
    when: finding.control_id == "vulnerability" && finding.severity == "critical"
    action: fail
  - id: new-dependency-age
    description: A pull request cannot add a version that is less than 14 days old.
    when: package.change == "ADDED" && has(package.days_since_publish) && package.days_since_publish < 14
    action: fail
suppressions:
  - purl: pkg:npm/[email protected]
    reason: The upgrade to 4.18.1 is in pull request 42.
    expires: 2026-12-31

اختبره على آخر فحص، دون فحص جديد. ثم طبّقه على طلب سحب:

vet report show last --policy vet-policy.yml
vet scan --base-ref origin/main --policy vet-policy.yml

بعد تاريخ انتهاء صلاحيتها، لم يعد الكتم يخفي النتيجة. اقرأ policy.md للاطلاع على حقول القواعد والمزيد من القواعد و Agent Skill الذي يكتب سياسة نيابةً عنك.

حالات الاستخدام

  • فحص طلب السحب (Pull request). يعلّق إجراء vet على GitHub على طلب سحب يضيف حزمة أو سير عمل أو نتيجة، ويفشل الفحص عند وجود هجوم. يضيف vet ci init الإجراء إلى مستودع.
  • بوابة CI. رموز الخروج، وSARIF لفحص شيفرة GitHub، وتقارير GitLab وBitbucket. راجع ci.md.
  • مراجعة طلب السحب. يبلّغ --base-ref فقط عن الحزم وسير العمل التي يضيفها التغيير.
  • xBOM وCBOM. جرد CycloneDX 1.7 لمكتبات الذكاء الاصطناعي والتشفير التي يستخدمها شيفرتك. راجع inventory.md.
  • وكلاء الذكاء الاصطناعي. يكتشف vet Claude Code ووكلاء آخرين، ثم يكتب JSON ولا يطلب أي إدخال أبدًا.
  • تدقيق نقاط النهاية. يسرد vet endpoint audit أدوات الذكاء الاصطناعي وخوادم MCP وإضافات المحرر وحزم npm العامة على جهاز المطوّر، ويفحصها بحثًا عن البرمجيات الخبيثة.

التوثيق

الصفحةاقرأها من أجل
Installجميع قنوات التثبيت وكيفية التحقق من إصدار
Commandsكل أمر وخياراته ورموز الخروج الخاصة به
Controlsعناصر التحكم وخياراتها
Policyالقواعد والكتم والبوابة
Outputتنسيقات التقارير والفحوصات المحفوظة والإعدادات
CI and AI agentsGitHub Actions وGitLab وBitbucket ووضع الوكيل
Inventoryاستخدام الشيفرة والذكاء الاصطناعي والتشفير وxBOM وCBOM

الخصوصية

الفئات