Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/google/artemis
أمان أندرويدأدوات عامةالتحليل الديناميكي (عزل)اختبار اختراق تطبيقات الجوالالبرمجة النصية والأتمتةأمن الجوالالأدوات والمكوناتأمن الذكاء الاصطناعي
GitHubgoogle/artemis

artemis

وكيل أتمتة أندرويد باللغة الطبيعية يقود أجهزة حقيقية عبر ADB، ويلتقط Logcat ولقطات الشاشة، ويكشف خادم MCP لبيئات تطوير الذكاء الاصطناعي وخطوط اختبار CI.

عرض المستودع
6.9k62814منذ 6 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

ARTEMIS Banner

دع مساعدي الذكاء الاصطناعي ومجموعات الاختبار تستخدم هواتف حقيقية مثل الإنسان.

English • 中文文档 • عرض سير العمل • البدء السريع • MCP لبيئات التطوير • المعايير القياسية • مجتمع Discord

Python 3.12+ License: Apache-2.0 MCP Native Multi-Model AndroidWorld SOTA

Artemis in Action
عرض حي: إعداد مسارات القيادة وحساب المدد الإجمالية في Google Maps، ثم فتح YouTube لتشغيل أغنية Coldplay.

أبرز المزايا

  • الأتمتة عبر التطبيقات: تنفيذ سير عمل الاختبار والمهام اليومية على Android من تعليمات اللغة الطبيعية.
  • الاستهداف متعدد الوسائط: يستخدم فهارس العناصر عند توفرها، مع خيارات احتياطية للتحديد بالإحداثيات وبصريًا للواجهات المخصصة.
  • تشخيص بيئات التطوير: يتيح تكامل بروتوكول سياق النموذج (MCP) لـ Antigravity وClaude Code وWindsurf تشغيل أجهزة الاختبار وجمع مخرجات Logcat ولقطات الشاشة.
  • التنفيذ السريع (Flash): حلقة تفاعلية للمراقبة والتنفيذ مع ملخصات تاريخية غير متزامنة، عادةً 3–5 ثوانٍ لكل خطوة.
  • الاستكشاف المتقدم (Pro): يتحقق من الأهداف قبل كل إجراء ويعيد الإجراءات المحظورة إلى المشغّل للتعافي. يدعم اختبارات الاستكشاف والاستقرار طويلة الأمد.
  • نتائج AndroidWorld: إتمام أكثر من 99% من المهام في معيار AndroidWorld من Google Research (أكثر من 100 مهمة متعددة الخطوات).

Antigravity × ARTEMIS: سير عمل الاختبار الذاتي

يستخدم Antigravity أداة ARTEMIS عبر MCP لتحويل طلب الاختبار إلى خطة وتنفيذ على الجهاز وتقرير تشخيصي:

البدء السريع

تأكد من توصيل جهاز Android (مع تفعيل تصحيح USB) أو محاكي. سيقوم سكربت التشغيل بنقرة واحدة تلقائيًا بما يلي:

  • تثبيت سلاسل أدوات النظام: اكتشاف وتثبيت تلقائي لـ ADB وscrcpy وFFmpeg وتبعيات Python (uv).
  • تركيب خادم MCP العام وقواعد وكيل الذكاء الاصطناعي: يطالبك بتثبيت إعدادات MCP العامة تلقائيًا وملف Artemis Mobile Testing Mindset (rules.md) في بيئات تطوير الذكاء الاصطناعي لديك (Antigravity، Cursor، Claude Code، Codex، Windsurf، VS Code، Cline/Roo، OpenClaw).

macOS وLinux

root@kitploit:~
# 1. Clone repo & navigate to directory
git clone https://github.com/google/artemis.git && cd artemis

# 2. One-click launch
./start.sh

Windows PowerShell

root@kitploit:~
# 1. Clone repo & navigate to directory
git clone https://github.com/google/artemis.git
cd artemis

# 2. One-click launch
.\start.bat

لا يبحث PowerShell عن السكربتات القابلة للتنفيذ في الدليل الحالي افتراضيًا، لذا استخدم .\start.bat بدون شرطة مائلة \ في النهاية. في موجه الأوامر (CMD)، استخدم start.bat بدلاً من ذلك.

نصيحة: يفتح http://localhost:8000 في متصفحك الافتراضي مع معالج اتصال الجهاز، وعرض الشاشة المباشر، وساحة تجربة الأوامر، وإعادة تشغيل التنفيذ. يمكنك أيضًا التشغيل مباشرة من سطر الأوامر: uv run artemis run "Open Settings, find Battery and tell me current level" --profile flash.

إعداد MCP لـ Codex / Antigravity / Claude Code / Windsurf (انقر للتوسيع)

يتضمن ARTEMIS خادم بروتوكول سياق النموذج (MCP) أصليًا. اربط هاتفك الحقيقي مباشرة ببيئات تطوير الذكاء الاصطناعي:

1. التثبيت التلقائي بنقرة واحدة (موصى به)

سيؤدي تشغيل ./start.sh (macOS/Linux) أو .\start.bat (Windows PowerShell) إلى مطالبتك بإعداد MCP العام وقواعد الاختبار لبيئات التطوير المكتشفة (أو يمكنك التثبيت/التحديث يدويًا في أي وقت لاحق باستخدام الأوامر أدناه):

root@kitploit:~
# Auto-install MCP server & global rules for Antigravity / Jetski:
uv run artemis mcp --install antigravity

# Or install for all supported AI IDEs (including Codex):
uv run artemis mcp --install all

نصيحة: يمكنك أيضًا إعداد MCP تفاعليًا أثناء الإعداد الأولي عبر uv run artemis init. نصيحة احترافية: إذا أردت استخدام أمر artemis عالميًا دون uv run في أي دليل، شغّل uv tool install -e . مرة واحدة في جذر المشروع.

2. الإعداد اليدوي (اختياري)

تكامل Python SDK (انقر للتوسيع)

ثبّت العميل الخالي من تبعيات وقت التشغيل على جهاز التطوير. يبقى ADB والوكلاء والنماذج ومعالجة الصور على مضيف الجهاز:

root@kitploit:~
uv add "artemis-client @ git+https://github.com/google/artemis.git#subdirectory=packages/artemis-client"
root@kitploit:~
import asyncio
from artemis_client import ArtemisClient


async def main():
    client = ArtemisClient(
        "http://artemis-host:8000",
        device_serial="emulator-5554",  # optional: target specific device serial
        default_profile="flash",  # "flash" (fast reactive) or "pro" (deep reasoning)
    )

    result = await client.run(
        "Open System Settings, go to 'Battery', verify battery percentage is displayed, and check for any crash dialogs.",
    )

    assert result.succeeded, f"Test failed: {result.error or result.status}"
    print(f"✅ Test Passed! Device: {result.device_serial} | Trace ID: {result.trace_id}")


if __name__ == "__main__":
    asyncio.run(main())

أوضاع الاستخدام

Artemis Web Console
نظرة عامة على وحدة التحكم: ① مبدّل العرض (الرئيسية / مساحة العمل) · ② النموذج وإعادة التشغيل (حالة Flash/Pro وإعادة تشغيل الفيديو) · ③ بث الوكيل المباشر (إدراك الإجراء وإحداثيات الهدف والنتائج المنظمة) · ④ منصة الأوامر (إرسال اللغة الطبيعية) · ⑤ قائمة المهام ولوحة المعلومات (دورة الحياة والسجل)

  • وحدة تحكم الاختبار المرئية عبر الويب (uv run artemis ui): عرض الشاشة في الوقت الفعلي ولوحة تفاعلية، تدعم إرسال اختبارات اللغة الطبيعية، وقياس الاستدلال المباشر، ومسارات الإجراءات، وإعادة تشغيل التنفيذ؛ إدارة دورة حياة الخادم في أي وقت من أي طرفية باستخدام uv run artemis restart وuv run artemis stop وuv run artemis status؛
  • خادم MCP: يربط Antigravity وClaude Code وWindsurf وعملاء MCP الآخرين بأجهزة حقيقية لإعادة إنتاج الأخطاء وتنفيذ الاختبارات؛
  • واجهة سطر أوامر المطور (uv run artemis run): تنفيذ مباشر من الطرفية لحالات الاختبار الآلية، أو فحص الاستقرار الاستكشافي، أو معايير AndroidWorld مع مخرجات طرفية منظمة عالية الدقة؛
  • Python SDK: يتكامل كمكتبة Python قياسية في أطر الاختبار الآلي الحالية (مثل pytest) أو خطوط أنابيب CI/CD مع مخرجات Pydantic منظمة ومحددة الأنواع ودعم التأكيدات.

ما الذي يثبّته ARTEMIS على هاتفك

تثبّت المهمة الأولى على الجهاز Artemis Accessibility Helper، وهي خدمة إمكانية وصول صغيرة تقرأ تخطيط الشاشة دون الاستحواذ على اتصال UiAutomation. يمكن للأدوات التي تستخدم UiAutomation كتم المساعد ما لم تفعّل FLAG_DONT_SUPPRESS_ACCESSIBILITY_SERVICES. سترى إشعارًا مطويًا "Artemis test helper is running" ومدخلاً جديدًا تحت الإعدادات > إمكانية الوصول؛ كلاهما هو ذلك المساعد. يستمع فقط على الهاتف نفسه ولا يرسل شيئًا إلى أي مكان آخر.

  • ثبّته مسبقًا (يتجنب تأخير ~3 ثوانٍ في المهمة الأولى): uv run artemis helper install
  • افحصه: uv run artemis helper status / uv run artemis doctor
  • أزله في أي وقت: uv run artemis helper uninstall
  • استخدم UIAutomator2 بدلاً منه: ARTEMIS_HIERARCHY_BACKEND=uiautomator في .env
  • منع التثبيت التلقائي: ARTEMIS_HELPER_AUTO_INSTALL=false في .env

إذا فشل المساعد في أي وقت أثناء المهمة، يعود ARTEMIS إلى UIAutomator2 ويذكر ذلك في الجدول الزمني للمهمة، وفي حالة mobile_manage_task، وفي التقرير النهائي.

المعايير القياسية: AndroidWorld (SOTA 99%+)

حقق Artemis معدل إتمام يزيد عن 99% في AndroidWorld، معيار Google Research الذي يغطي أكثر من 20 تطبيقًا وأكثر من 100 مهمة متعددة الخطوات.

AndroidWorld Benchmark Comparison

كيف صُممت بنية ARTEMIS

  • فحوصات ما قبل التنفيذ ودفعات الإجراءات: يتحقق Pro من الهدف مقابل شجرة واجهة المستخدم الحية والبكسلات قبل إرسال إجراء فردي. تتعامل دفعات الإجراءات مع عناصر التحكم العابرة دون انتظار دور نموذج آخر.
  • تحديد موقع العناصر: يجمع بين تسلسلات إمكانية الوصول وOCR مع النماذج البصرية لواجهات Canvas وCompose وFlutter المخصصة.
  • ضغط السجل المشترك: يستبدل Flash وPro لقطات الشاشة الأقدم بملخصات بصرية ويضغطان الخطوات المكتملة إلى أجزاء سجل قابلة للبحث. تتحكم عتبات السياق في متى تُستبدل الأدوار الخام.

ARTEMIS System Architecture Diagram

ملفات التنفيذ: Flash مقابل Pro

يدعم ARTEMIS ملفي تنفيذ مصممين لمتطلبات أتمتة مختلفة:

  • ملف Flash (--profile flash): حلقة تفاعلية سريعة وموفرة للرموز (~3–5 ثوانٍ لكل خطوة): يلاحظ نموذج واحد الشاشة الحية، ويفكر، وينفذ، دون تنسيق رسومي. مثالي لمهام واجهة المستخدم الروتينية والحتمية. الحلقة غير محدودة افتراضيًا (agent.flash.max_turns، 0 = غير محدود) لأن السجل يُضغط بدلاً من تقييده: يشارك Flash سجل جلسة Pro (ساعة نسبية للجلسة T+mm:ss، ولقطات الشاشة تُطوى في ملخصات بصرية، والخطوات الأقدم تُقسّم إلى حقب قابلة للاستدعاء عند الطلب عبر search_history / replay_steps) ويمكنه الاستعلام عن تسجيل الجلسة عبر video_analyzer. تُعالج واجهة المستخدم العابرة (أشرطة التحكم المتلاشية تلقائيًا، والإشعارات المنبثقة) بربط النقرات في click_sequence واحد. القيود: لا خطة مهمة أو ملاحظات، ولا شبكة أمان قبل التنفيذ، ولا تحقق من نقاط التفتيش أو تقرير نهائي، ولا ADB shell.
  • ملف Pro (--profile pro): سير عمل تخطيط وتحقق (~15–40 ثانية لكل خطوة)، مبني كرسم بياني متعدد الوكلاء. يحتفظ المخطط (Planner) بخطة مهمة Markdown حية مع معالم وعناصر تحقق verify / assert؛ ينفذها المشغّل (Operator) بمجموعة الأدوات الكاملة (تأسيس Explorer الذي يكون مستواه / / إعدادًا للمستخدم لكل ملف — / في أو — ولا يختاره الوكيل أبدًا؛ ملاحظات، واستدعاء السجل، وتحليل الفيديو، وتشخيص ADB). يمر كل إجراء فردي عبر قبل التنفيذ (XML أولاً، والبكسل كاحتياطي)، بينما تنطلق متتالية للتغلب على زمن الدور في واجهة المستخدم العابرة. يفتح الإجراء المحظور أو الفاشل تبقى في سياق المشغّل حتى ينجح إجراء لاحق، لذا يتولى المشغّل نفسه التعافي دون وكيل إصلاح منفصل. يتحقق للقراءة فقط من نقاط تفتيش الخطة ويجري مراجعة نهائية عند الخروج مقابل الهدف الأصلي (: / (افتراضي) / / )، وتحصل تعديلات معالم الخطة على مراجعة استشارية. يتعامل مع سير عمل طويل الأمد يزيد عن 100 خطوة، ومراقبة ، وتقرير مكتوب اختياري.

خارطة الطريق

  • تكامل Android Studio: إضافة IDE أصلية وتكامل سير العمل لتمكين التصحيح داخل المحرر، وتسجيل الاختبارات، والتحكم الآلي بالجهاز مباشرة داخل Android Studio.
  • التوسع إلى منصة iOS: توسيع الإدراك متعدد الوسائط والأتمتة الجوالة إلى أجهزة ومحاكيات iOS.
  • نماذج VLMs خفيفة على الجهاز: تنفيذ محلي بنماذج رؤية حافية خفيفة لأتمتة منخفضة زمن الاستجابة وتحافظ على الخصوصية أولاً.
  • تفاعل صوتي ثنائي الاتجاه في الوقت الفعلي: إرسال المهام بالصوت مع تحكم حواري في الوقت الفعلي ومعالجة المقاطعات.

المجتمع والمساهمة

نرحب بالمساهمات بحرارة!

  • ضع نجمة للمستودع لمتابعة التحديثات والإصدارات
  • انضم إلى مجتمع Discord للمناقشات التقنية
  • افتح Issue أو أرسل Pull Request

الترخيص

هذا المشروع مرخّص بموجب Apache License 2.0.

يتضمن هذا المشروع شفرة مصدرية مطوّرة بواسطة Minitap, Inc..

تنزيل الأداة
1. إدخال الأمر (إرسال المهمة)
صِف سيناريو الاختبار والمقاييس المستهدفة في Antigravity

Step 1: Prompt Input in Antigravity
2. توليد خطة الاختبار
يصوغ خطة اختبار خطوة بخطوة وهيكلية للمراجعة

Step 2: Test Plan Generation
3. تنفيذ الاختبار الذاتي
يشغّل جهازًا حقيقيًا، ويتنقل في الواجهة، ويحلل الأداء

Step 3: Autonomous Test Execution
4. التقرير النهائي
يقدّم نتائج تدقيق منظمة وجداول مقاييس ومجموعات بيانات خام

Step 4: Final Report

إذا كنت تفضل الإعداد يدويًا، شغّل uv run artemis mcp --generate-config <client> (على سبيل المثال، codex أو antigravity) لإخراج مقتطف TOML أو JSON المناسب. استبدل /path/to/artemis بمسار المستودع الفعلي لديك ووجّه command إلى ملف Python التنفيذي في .venv:

  • Codex (~/.codex/config.toml):
root@kitploit:~
[mcp_servers.artemis]
command = "/path/to/artemis/.venv/bin/python"
args = ["-m", "mcp_server"]
cwd = "/path/to/artemis"

[mcp_servers.artemis.env]
PYTHONUNBUFFERED = "1"
PYTHONPATH = "/path/to/artemis"
  • Antigravity (~/.gemini/jetski/mcp_config.json):
root@kitploit:~
{
  "mcpServers": {
    "artemis": {
      "command": "/path/to/artemis/.venv/bin/python",
      "args": ["-m", "mcp_server"],
      "cwd": "/path/to/artemis",
      "env": {
        "PYTHONUNBUFFERED": "1"
      },
      "tools": {
        "mobile_run_task": { "eager": true },
        "mobile_manage_task": { "eager": true },
        "mobile_get_device_state": { "eager": true },
        "mobile_inspect_trace": { "eager": true },
        "mobile_diagnose": { "eager": true }
      }
    }
  }
}
  • Claude Desktop (claude_desktop_config.json):
root@kitploit:~
{
  "mcpServers": {
    "artemis": {
      "command": "/path/to/artemis/.venv/bin/python",
      "args": ["-m", "mcp_server"],
      "cwd": "/path/to/artemis"
    }
  }
}

3. تركيب قواعد السلوك لوكلاء الذكاء الاصطناعي (موصى به بشدة)

لضمان تصرف مساعد البرمجة بالذكاء الاصطناعي بصرامة مهندس اختبار جوال محترف وعدم اختلاق تفاعلات واجهة المستخدم، نوفر ملف قواعد مخصص لعقلية الاختبار في mcp_server/rules.md (يغطي الاستكشاف النشط قبل البرمجة، واستراتيجية التوجيه بين Flash وPro، وتعويض زمن الاستجابة والتوقيت، ونمط "الديناميكي أولاً، الإحداثيات كاحتياطي" لتحديد المواقع).

يمكنك تركيب أو نسخ mcp_server/rules.md إلى إعدادات القواعد في بيئة تطوير الذكاء الاصطناعي لديك:

  • Antigravity: أضف محتويات rules.md إلى قواعد مساحة العمل، أو إعدادات القواعد العامة، أو تعليمات الوكيل.
  • Claude Code: شغّل artemis mcp --install claude لتثبيت القواعد في ~/.claude/rules/artemis.md (ثبّتها في موقع واحد فقط — يحمّل Claude Code كلاً من ~/.claude/CLAUDE.md و~/.claude/rules/*.md، لذا فإن تكرار القواعد يهدر السياق).
  • Cursor: انسخ المحتويات إلى .cursorrules أو أنشئ ملف قواعد في .cursor/rules/artemis.mdc.
  • Codex: أضف المحتويات إلى ~/.codex/AGENTS.md (أو AGENTS.override.md النشط).
  • Windsurf / OpenClaw: أضف القواعد إلى قواعد مساحة العمل أو أوامر النظام العامة.

لمزيد من التفاصيل حول عقلية الاختبار وهيكلية MCP، راجع MCP Server README.

4. أوامر لهاتفك في محادثة بيئة التطوير

في Codex أو Antigravity أو Claude Code، ما عليك سوى كتابة:

"ابنِ أحدث التغييرات في APK، وثبّته على الجهاز المتصل، وافتح شاشة تسجيل الدخول بحساب اختبار، وتحقق من وجود أي نوافذ منبثقة غير متوقعة بعد تسجيل الدخول، وأعد لقطات شاشة للصفحة النهائية."

flash
pro
ultra
pro.explorer.mode
flash.explorer_mode
config/artemis.jsonc
--explorer-pro-mode
شبكة أمان (Safety Net)
دفعات الإجراءات السريعة
حادثة تنفيذ
المدقق (Checker)
--verification-level
off
final
checkpoints
strict
[Loop:continuous]