
نظام وكلاء ذكاء اصطناعي مستقل بالكامل قادر على أداء مهام اختبار الاختراق المعقدة
انضم إلى المجتمع! تواصل مع باحثي الأمن، وعشاق الذكاء الاصطناعي، والمخترقين الأخلاقيين. احصل على الدعم، وشارك الأفكار، وابقَ على اطلاع بأحدث تطورات PentAGI.
PentAGI هي أداة مبتكرة للاختبار الأمني الآلي تستخدم أحدث تقنيات الذكاء الاصطناعي. صُمم المشروع لمحترفي أمن المعلومات والباحثين والمهتمين الذين يحتاجون إلى حل قوي ومرن لإجراء اختبارات الاختراق.
يمكنك مشاهدة فيديو نظرة عامة على PentAGI:

flowchart TB classDef person fill:#08427B,stroke:#073B6F,color:#fff classDef system fill:#1168BD,stroke:#0B4884,color:#fff classDef external fill:#666666,stroke:#0B4884,color:#fff
pentester["👤 Security Engineer
(User of the system)"]
pentagi["✨ PentAGI
(Autonomous penetration testing system)"]
target["🎯 target-system
(System under test)"]
llm["🧠 llm-provider
(OpenAI/Anthropic/Ollama/Bedrock/Gemini/Custom)"]
search["🔍 search-systems
(Google/DuckDuckGo/Tavily/Traversaal/Perplexity/Sploitus/Searxng)"]
langfuse["📊 langfuse-ui
(LLM Observability Dashboard)"]
grafana["📈 grafana
(System Monitoring Dashboard)"]
pentester --> |Uses HTTPS| pentagi
pentester --> |Monitors AI HTTPS| langfuse
pentester --> |Monitors System HTTPS| grafana
pentagi --> |Tests Various protocols| target
pentagi --> |Queries HTTPS| llm
pentagi --> |Searches HTTPS| search
pentagi --> |Reports HTTPS| langfuse
pentagi --> |Reports HTTPS| grafana
class pentester person
class pentagi system
class target,llm,search,langfuse,grafana external
linkStyle default stroke:#ffffff,color:#ffffff
<details>
<summary><b>هندسة الحاويات</b> (انقر للتوسيع)</summary>```mermaid
graph TB
subgraph Core Services
UI[Frontend UI<br/>React + TypeScript]
API[Backend API<br/>Go + GraphQL]
DB[(Vector Store<br/>PostgreSQL + pgvector)]
MQ[Task Queue<br/>Async Processing]
Agent[AI Agents<br/>Multi-Agent System]
end
subgraph Knowledge Graph
Graphiti[Graphiti<br/>Knowledge Graph API]
Neo4j[(Neo4j<br/>Graph Database)]
end
subgraph Monitoring
Grafana[Grafana<br/>Dashboards]
VictoriaMetrics[VictoriaMetrics<br/>Time-series DB]
Jaeger[Jaeger<br/>Distributed Tracing]
Loki[Loki<br/>Log Aggregation]
OTEL[OpenTelemetry<br/>Data Collection]
end
subgraph Analytics
Langfuse[Langfuse<br/>LLM Analytics]
ClickHouse[ClickHouse<br/>Analytics DB]
Redis[Redis<br/>Cache + Rate Limiter]
MinIO[MinIO<br/>S3 Storage]
end
subgraph Security Tools
Scraper[Web Scraper<br/>Isolated Browser]
PenTest[Security Tools<br/>20+ Pro Tools<br/>Sandboxed Execution]
end
UI --> |HTTP/WS| API
API --> |SQL| DB
API --> |Events| MQ
MQ --> |Tasks| Agent
Agent --> |Commands| PenTest
Agent --> |Queries| DB
Agent --> |Knowledge| Graphiti
Graphiti --> |Graph| Neo4j
API --> |Telemetry| OTEL
OTEL --> |Metrics| VictoriaMetrics
OTEL --> |Traces| Jaeger
OTEL --> |Logs| Loki
Grafana --> |Query| VictoriaMetrics
Grafana --> |Query| Jaeger
Grafana --> |Query| Loki
API --> |Analytics| Langfuse
Langfuse --> |Store| ClickHouse
Langfuse --> |Cache| Redis
Langfuse --> |Files| MinIO
classDef core fill:#f9f,stroke:#333,stroke-width:2px,color:#000
classDef knowledge fill:#ffa,stroke:#333,stroke-width:2px,color:#000
classDef monitoring fill:#bbf,stroke:#333,stroke-width:2px,color:#000
classDef analytics fill:#bfb,stroke:#333,stroke-width:2px,color:#000
classDef tools fill:#fbb,stroke:#333,stroke-width:2px,color:#000
class UI,API,DB,MQ,Agent core
class Graphiti,Neo4j knowledge
class Grafana,VictoriaMetrics,Jaeger,Loki,OTEL monitoring
class Langfuse,ClickHouse,Redis,MinIO analytics
class Scraper,PenTest tools
Flow {
string id PK
string name "Flow name"
string description "Flow description"
string status "active/completed/failed"
json parameters "Flow parameters"
timestamp created_at
timestamp updated_at
}
Task {
string id PK
string flow_id FK
string name "Task name"
string description "Task description"
string status "pending/running/done/failed"
json result "Task results"
timestamp created_at
timestamp updated_at
}
SubTask {
string id PK
string task_id FK
string name "Subtask name"
string description "Subtask description"
string status "queued/running/completed/failed"
string agent_type "researcher/developer/executor"
json context "Agent context"
timestamp created_at
timestamp updated_at
}
Action {
string id PK
string subtask_id FK
string type "command/search/analyze/etc"
string status "success/failure"
json parameters "Action parameters"
json result "Action results"
timestamp created_at
}
Artifact {
string id PK
string action_id FK
string type "file/report/log"
string path "Storage path"
json metadata "Additional info"
timestamp created_at
}
Memory {
string id PK
string action_id FK
string type "observation/conclusion"
vector embedding "Vector representation"
text content "Memory content"
timestamp created_at
}
subgraph "Working Memory"
Context[Current Context<br/>Task State]
Goals[Active Goals<br/>Objectives]
State[System State<br/>Resources]
end
subgraph "Episodic Memory"
Actions[Past Actions<br/>Commands History]
Results[Action Results<br/>Outcomes]
Patterns[Success Patterns<br/>Best Practices]
end
Context --> |Query| VS
VS --> |Retrieve| Context
Goals --> |Consult| KB
KB --> |Guide| Goals
State --> |Record| Actions
Actions --> |Learn| Patterns
Patterns --> |Store| VS
Tools --> |Inform| State
Results --> |Update| Tools
VS --> |Enhance| KB
KB --> |Index| VS
classDef ltm fill:#f9f,stroke:#333,stroke-width:2px,color:#000
classDef wm fill:#bbf,stroke:#333,stroke-width:2px,color:#000
classDef em fill:#bfb,stroke:#333,stroke-width:2px,color:#000
class VS,KB,Tools ltm
class Context,Goals,State wm
class Actions,Results,Patterns em
</details>
<details>
<summary><b>تلخيص السلسلة</b> (انقر للتوسيع)</summary>
يدير نظام تلخيص السلسلة نمو سياق المحادثة من خلال تلخيص الرسائل الأقدم بشكل انتقائي. هذا أمر بالغ الأهمية لمنع تجاوز حدود الرموز مع الحفاظ على تماسك المحادثة.```mermaid
flowchart TD
A[Input Chain] --> B{Needs Summarization?}
B -->|No| C[Return Original Chain]
B -->|Yes| D[Convert to ChainAST]
D --> E[Apply Section Summarization]
E --> F[Process Oversized Pairs]
F --> G[Manage Last Section Size]
G --> H[Apply QA Summarization]
H --> I[Rebuild Chain with Summaries]
I --> J{Is New Chain Smaller?}
J -->|Yes| K[Return Optimized Chain]
J -->|No| C
classDef process fill:#bbf,stroke:#333,stroke-width:2px,color:#000
classDef decision fill:#bfb,stroke:#333,stroke-width:2px,color:#000
classDef output fill:#fbb,stroke:#333,stroke-width:2px,color:#000
class A,D,E,F,G,H,I process
class B,J decision
class C,K output
</details>
<details>
<summary><b>تفاعل الوكيل</b> (انقر للتوسيع)</summary>```mermaid
sequenceDiagram
participant O as Orchestrator
participant R as Researcher
participant D as Developer
participant E as Executor
participant VS as Vector Store
participant KB as Knowledge Base
Note over O,KB: Flow Initialization
O->>VS: Query similar tasks
VS-->>O: Return experiences
O->>KB: Load relevant knowledge
KB-->>O: Return context
Note over O,R: Research Phase
O->>R: Analyze target
R->>VS: Search similar cases
VS-->>R: Return patterns
R->>KB: Query vulnerabilities
KB-->>R: Return known issues
R->>VS: Store findings
R-->>O: Research results
Note over O,D: Planning Phase
O->>D: Plan attack
D->>VS: Query exploits
VS-->>D: Return techniques
D->>KB: Load tools info
KB-->>D: Return capabilities
D-->>O: Attack plan
Note over O,E: Execution Phase
O->>E: Execute plan
E->>KB: Load tool guides
KB-->>E: Return procedures
E->>VS: Store results
E-->>O: Execution status
تعمل الخوارزمية على تمثيل منظم لسلاسل المحادثة (ChainAST) يحافظ على أنواع الرسائل بما في ذلك استدعاءات الأدوات واستجاباتها. تحافظ جميع عمليات التلخيص على تدفق المحادثة الهام مع تقليل حجم السياق.
| المعامل | متغير البيئة | الافتراضي | الوصف |
|---|---|---|---|
| الاحتفاظ بالأخير | SUMMARIZER_PRESERVE_LAST | true | ما إذا كان سيتم الاحتفاظ بجميع الرسائل في القسم الأخير كما هي |
| استخدام أزواج الأسئلة والأجوبة | SUMMARIZER_USE_QA | true | ما إذا كان سيتم استخدام استراتيجية تلخيص أزواج الأسئلة والأجوبة |
| تلخيص الرسائل البشرية في زوج الأسئلة والأجوبة | SUMMARIZER_SUM_MSG_HUMAN_IN_QA | false | ما إذا كان سيتم تلخيص الرسائل البشرية في أزواج الأسئلة والأجوبة |
| حجم القسم الأخير | SUMMARIZER_LAST_SEC_BYTES | 51200 | أقصى حجم بالبايت للقسم الأخير (50 كيلوبايت) |
| أقصى حجم لزوج الجسم | SUMMARIZER_MAX_BP_BYTES | 16384 | أقصى حجم بالبايت لزوج جسم واحد (16 كيلوبايت) |
| أقصى أقسام الأسئلة والأجوبة | SUMMARIZER_MAX_QA_SECTIONS | 10 | أقصى عدد من أقسام أزواج الأسئلة والأجوبة للاحتفاظ بها |
| أقصى حجم للأسئلة والأجوبة | SUMMARIZER_MAX_QA_BYTES | 65536 | أقصى حجم بالبايت لأقسام أزواج الأسئلة والأجوبة (64 كيلوبايت) |
| الاحتفاظ بأقسام الأسئلة والأجوبة | SUMMARIZER_KEEP_QA_SECTIONS | 1 | عدد أقسام الأسئلة والأجوبة الحديثة للاحتفاظ بها بدون تلخيص |
يمكن لحالات المساعد استخدام إعدادات تلخيص مخصصة لضبط سلوك إدارة السياق:
| المعامل | متغير البيئة | الافتراضي | الوصف |
|---|---|---|---|
| الاحتفاظ بالأخير | ASSISTANT_SUMMARIZER_PRESERVE_LAST | true | ما إذا كان سيتم الاحتفاظ بجميع الرسائل في القسم الأخير للمساعد |
| حجم القسم الأخير | ASSISTANT_SUMMARIZER_LAST_SEC_BYTES | 76800 | أقصى حجم بالبايت للقسم الأخير للمساعد (75 كيلوبايت) |
| أقصى حجم لزوج الجسم | ASSISTANT_SUMMARIZER_MAX_BP_BYTES | 16384 | أقصى حجم بالبايت لزوج جسم واحد في سياق المساعد (16 كيلوبايت) |
| أقصى أقسام الأسئلة والأجوبة | ASSISTANT_SUMMARIZER_MAX_QA_SECTIONS | 7 | أقصى عدد من أقسام الأسئلة والأجوبة للاحتفاظ بها في سياق المساعد |
| أقصى حجم للأسئلة والأجوبة | ASSISTANT_SUMMARIZER_MAX_QA_BYTES | 76800 | أقصى حجم بالبايت لأقسام الأسئلة والأجوبة للمساعد (75 كيلوبايت) |
| الاحتفاظ بأقسام الأسئلة والأجوبة | ASSISTANT_SUMMARIZER_KEEP_QA_SECTIONS | 3 | عدد أقسام الأسئلة والأجوبة الحديثة للاحتفاظ بها بدون تلخيص |
يوفر تكوين ملخص المساعد ذاكرة أكبر للاحتفاظ بالسياق مقارنة بالإعدادات العامة، مما يحافظ على تاريخ المحادثة الأحدث مع ضمان كفاءة استخدام الرموز.
SUMMARIZER_PRESERVE_LAST=true SUMMARIZER_USE_QA=true SUMMARIZER_SUM_MSG_HUMAN_IN_QA=false SUMMARIZER_LAST_SEC_BYTES=51200 SUMMARIZER_MAX_BP_BYTES=16384 SUMMARIZER_MAX_QA_SECTIONS=10 SUMMARIZER_MAX_QA_BYTES=65536 SUMMARIZER_KEEP_QA_SECTIONS=1
ASSISTANT_SUMMARIZER_PRESERVE_LAST=true ASSISTANT_SUMMARIZER_LAST_SEC_BYTES=76800 ASSISTANT_SUMMARIZER_MAX_BP_BYTES=16384 ASSISTANT_SUMMARIZER_MAX_QA_SECTIONS=7 ASSISTANT_SUMMARIZER_MAX_QA_BYTES=76800 ASSISTANT_SUMMARIZER_KEEP_QA_SECTIONS=3
</details>
<a id="advanced-agent-supervision"></a>
<details>
<summary><b>الإشراف المتقدم على الوكيل</b> (انقر للتوسيع)</summary>
يتضمن PentAGI آليات إشراف متطورة متعددة الطبقات على الوكيل لضمان تنفيذ المهام بكفاءة، ومنع الحلقات اللانهائية، وتوفير استرداد ذكي من حالات التوقف:
### مراقبة التنفيذ (إصدار بيتا)
- **التدخل التلقائي للمرشد**: يتم استدعاء وكيل المستشار (المرشد) تلقائيًا عندما تشير أنماط التنفيذ إلى مشكلات محتملة
- **كشف الأنماط**: يراقب استدعاءات الأدوات المتطابقة (الحد: 5، قابل للتكوين) وإجمالي استدعاءات الأدوات (الحد: 10، قابل للتكوين)
- **تحليل التقدم**: يقيم ما إذا كان الوكيل يتقدم نحو هدف المهمة الفرعية، ويكشف الحلقات وعدم الكفاءة
- **الاستراتيجيات البديلة**: يوصي بأساليب مختلفة عندما تفشل الاستراتيجية الحالية
- **توجيه استرجاع المعلومات**: يقترح البحث عن حلول قائمة بدلاً من إعادة الاختراع
- **تنسيق الاستجابة المحسّن**: تتضمن استجابات الأداة كلاً من `<original_result>` و `<mentor_analysis>`
- **قابل للتكوين**: قم بالتمكين عبر `EXECUTION_MONITOR_ENABLED` (الافتراضي: false)، وتخصيص الحدود مع `EXECUTION_MONITOR_SAME_TOOL_LIMIT` و `EXECUTION_MONITOR_TOTAL_TOOL_LIMIT`
**الأفضل لـ**: النماذج الأصغر (< 32 مليار معامل)، سيناريوهات الهجوم المعقدة التي تتطلب توجيهًا مستمرًا، ومنع الوكيل من التعلق بنهج واحد
**تأثير الأداء**: زيادة بمقدار 2-3 مرات في وقت التنفيذ واستخدام الرموز، لكنه يحقق **تحسنًا بمقدار الضعف في جودة النتائج** بناءً على الاختبارات باستخدام Qwen3.5-27B-FP8
### التخطيط الذكي للمهام (إصدار بيتا)
- **التحليل الآلي**: يقوم المخطط (المستشار في وضع التخطيط) بإنشاء 3-7 خطوات محددة وقابلة للتنفيذ قبل أن يبدأ عمل الوكلاء المتخصصين
- **خطط مراعية للسياق**: يحلل سياق التنفيذ الكامل عبر وكيل التخصيب لإنشاء خطط مدروسة
- **التعيين المنظم**: يتم تغليف الطلب الأصلي في هيكل `<task_assignment>` مع خطة التنفيذ والتعليمات
- **إدارة النطاق**: يمنع اتساع النطاق من خلال إبقاء الوكلاء مركزين على المهمة الفرعية الحالية فقط
- **تعليمات محسّنة**: تبرز الخطط الإجراءات الحرجة والمزالق المحتملة ونقاط التحقق
- **قابل للتكوين**: قم بالتمكين عبر `AGENT_PLANNING_STEP_ENABLED` (الافتراضي: false)
**الأفضل لـ**: النماذج < 32 مليار معامل، سير عمل اختبار الاختراق المعقد، تحسين معدلات النجاح في المهام المتطورة
**تكوين المستشار المحسّن**: يعمل بشكل ممتاز عندما يستخدم وكيل المستشار نموذجًا أقوى أو إعدادات محسّنة. مثال: استخدام نفس النموذج الأساسي مع وضع التفكير الأقصى للمستشار (انظر [`vllm-qwen3.5-27b-fp8.provider.yml`](https://github.com/vxcontrol/pentagi/blob/HEAD/examples/configs/vllm-qwen3.5-27b-fp8.provider.yml)) يتيح تحليلًا شاملاً للمهام وتخطيطًا استراتيجيًا من نفس بنية النموذج.
**تأثير الأداء**: يضيف عبء تخطيط ولكنه يحسن بشكل كبير معدلات الإنجاز ويقلل العمل الزائد
### حدود استدعاء الأداة (نشطة دائمًا)
- **الحدود الصارمة**: تمنع عمليات التنفيذ الجامحة بغض النظر عن حالة وضع الإشراف
- **متباينة حسب نوع الوكيل**:
- الوكلاء العامون (المساعد، الوكيل الأساسي، مخترق، مبرمج، مثبت): `MAX_GENERAL_AGENT_TOOL_CALLS` (الافتراضي: 100)
- الوكلاء المحدودون (باحث، مخصب، حافظ، مولد، مراسل، مستشار، عاكس، مخطط): `MAX_LIMITED_AGENT_TOOL_CALLS` (الافتراضي: 20)
- **الإنهاء اللطيف**: يوجه العاكس الوكلاء نحو الإكمال السليم عند الاقتراب من الحدود
- **حماية الموارد**: يضمن استقرار النظام ويمنع استنزاف الموارد
### تكامل العاكس (نشط دائمًا)
- **التصحيح التلقائي**: يتم استدعاؤه عندما يفشل LLM في إنشاء استدعاءات الأداة بعد 3 محاولات
- **التوجيه الاستراتيجي**: يحلل حالات الفشل ويوجه الوكلاء نحو الاستخدام الصحيح للأدوات أو أدوات الحاجز (`done`، `ask`)
- **آلية الاسترداد**: يوفر توجيهًا سياقيًا بناءً على أنماط الفشل المحددة
- **فرض الحدود**: ينسق الإنهاء اللطيف عند الوصول إلى حدود استدعاء الأداة
### توصيات للنماذج مفتوحة المصدر
**ضروري للنماذج < 32 مليار معامل**:
يظهر الاختبار باستخدام Qwen3.5-27B-FP8 أن تمكين كل من مراقبة التنفيذ والتخطيط للمهام **أمر أساسي** للنماذج مفتوحة المصدر الأصغر:
- **تحسين الجودة**: نتائج أفضل بمقدار الضعف مقارنة بالتنفيذ الأساسي بدون إشراف
- **منع الحلقات**: يقلل بشكل كبير من الحلقات اللانهائية والعمل الزائد
- **تنوع الهجوم**: يشجع على استكشاف متجهات هجوم متعددة بدلاً من التمسك بنهج واحد
- **النشر المنفصل عن الشبكة**: يتيح اختبار الاختراق الذاتي من الدرجة الإنتاجية في بيئات الشبكة المغلقة مع استدلال LLM محلي
**المقايضات**:
- استهلاك الرموز: زيادة بمقدار 2-3 مرات بسبب استدعاءات المرشد/المخطط
- وقت التنفيذ: أطول بمقدار 2-3 مرات بسبب خطوات التحليل والتخطيط
- جودة النتائج: تحسن بمقدار الضعف في الاكتمال والدقة وتغطية الهجوم
- متطلبات النموذج: يعمل بشكل أفضل عندما يستخدم المستشار تكوينًا محسنًا (معلما تفكير أعلى، متغير نموذج أقوى، أو نموذج مختلف)
**استراتيجية التكوين**:
للحصول على أداء مثالي مع النماذج الأصغر، قم بتكوين وكيل المستشار بإعدادات محسّنة:
- استخدم نفس النموذج مع وضع التفكير الأقصى (مثال: [`vllm-qwen3.5-27b-fp8.provider.yml`](https://github.com/vxcontrol/pentagi/blob/HEAD/examples/configs/vllm-qwen3.5-27b-fp8.provider.yml))
- أو استخدم نموذجًا أقوى للمستشار مع الاحتفاظ بالنموذج الأساسي للوكلاء الآخرين
- اضبط حدود المراقبة بناءً على تعقيد المهمة وقدرات النموذج
</details>
تم تصميم بنية PentAGI لتكون معيارية وقابلة للتوسع وآمنة. فيما يلي المكونات الرئيسية:
1. **الخدمات الأساسية**
- واجهة المستخدم الأمامية: واجهة ويب قائمة على React مع TypeScript لأمان الأنواع
- واجهة برمجة التطبيقات الخلفية: واجهات برمجة تطبيقات REST و GraphQL قائمة على Go مع مصادقة رمز الحامل للوصول البرمجي
- مخزن المتجهات: PostgreSQL مع pgvector للبحث الدلالي وتخزين الذاكرة
- قائمة انتظار المهام: نظام معالجة مهام غير متزامن للتشغيل الموثوق
- الوكيل الذكي: نظام متعدد الوكلاء بأدوار متخصصة للاختبار الفعال
2. **الرسم البياني المعرفي**
- Graphiti: واجهة برمجة تطبيقات الرسم البياني المعرفي لتتبع العلاقات الدلالية والفهم السياقي
- Neo4j: قاعدة بيانات رسومية لتخزين واستعلام العلاقات بين الكيانات والإجراءات والنتائج
- الالتقاط التلقائي لاستجابات الوكيل وعمليات تنفيذ الأداة لبناء قاعدة معرفية شاملة
3. **رصة المراقبة**
- OpenTelemetry: جمع بيانات المراقبة الموحدة وربطها
- Grafana: لوحات تحكم للتصور والتنبيه في الوقت الفعلي
- VictoriaMetrics: تخزين عالي الأداء لمقاييس السلاسل الزمنية
- Jaeger: تتبع موزع من طرف إلى طرف لتصحيح الأخطاء
- Loki: تجميع وتحليل السجلات القابل للتوسع
4. **منصة التحليلات**
- Langfuse: مراقبة وأداء متقدم لـ LLM
- ClickHouse: مستودع بيانات تحليلي عمودي
- Redis: تخزين مؤقت عالي السرعة وتحديد المعدل
- MinIO: تخزين كائنات متوافق مع S3 للقطع الأثرية
5. **أدوات الأمان**
- أداة تجريف الويب: بيئة متصفح معزولة للتفاعل الآمن مع الويب
- أدوات اختبار الاختراق: مجموعة شاملة تضم أكثر من 20 أداة أمان احترافية
- تنفيذ معزول: تعمل جميع العمليات في حاويات معزولة
6. **أنظمة الذاكرة**
- الذاكرة طويلة المدى: تخزين دائم للمعرفة والخبرات
- الذاكرة العاملة: السياق والأهداف النشطة للعمليات الحالية
- الذاكرة العرضية: الإجراءات التاريخية وأنماط النجاح
- قاعدة المعرفة: خبرة مجال منظمة وقدرات الأدوات
- إدارة السياق: إدارة ذكية لنوافذ سياق LLM المتنامية باستخدام تلخيص السلسلة
يستخدم النظام حاويات Docker للعزل وسهولة النشر، مع شبكات منفصلة للخدمات الأساسية والمراقبة والتحليلات لضمان حدود أمان مناسبة. تم تصميم كل مكون للتوسع الأفقي ويمكن تكوينه للتوفر العالي في بيئات الإنتاج.
## بدء سريع
### متطلبات النظام
- Docker و Docker Compose (أو Podman - انظر [تكوين Podman](#running-pentagi-with-podman))
- 2 vCPU كحد أدنى
- 4GB RAM كحد أدنى
- 20GB مساحة قرص خالية
- اتصال بالإنترنت لتنزيل الصور والتحديثات
### باستخدام المثبت (موصى به)
يوفر PentAGI مثبتًا تفاعليًا بواجهة مستخدم قائمة على الطرفية لتكوين ونشر مبسطين. يرشدك المثبت خلال فحوصات النظام وإعداد مزود LLM وتكوين محرك البحث وتعزيز الأمان.
**المنصات المدعومة:**
- **لينكس**: amd64 [تنزيل](https://pentagi.com/downloads/linux/amd64/installer-latest.zip) | arm64 [تنزيل](https://pentagi.com/downloads/linux/arm64/installer-latest.zip)
- **ويندوز**: amd64 [تنزيل](https://pentagi.com/downloads/windows/amd64/installer-latest.zip)
- **ماك**: amd64 (Intel) [تنزيل](https://pentagi.com/downloads/darwin/amd64/installer-latest.zip) | arm64 (سلسلة M) [تنزيل](https://pentagi.com/downloads/darwin/arm64/installer-latest.zip)
**التثبيت السريع (لينكس amd64):**```bash
# Create installation directory
mkdir -p pentagi && cd pentagi
# Download installer
wget -O installer.zip https://pentagi.com/downloads/linux/amd64/installer-latest.zip
# Extract
unzip installer.zip
# Run interactive installer
./installer
المتطلبات الأساسية والأذونات:
يتطلب المثبت صلاحيات مناسبة للتفاعل مع واجهة برمجة تطبيقات Docker للتشغيل السليم. بشكل افتراضي، يستخدم مقبس Docker (/var/run/docker.sock) والذي يتطلب إما:
الخيار 1 (موصى به للإنتاج): تشغيل المثبت كجذر: ```bash sudo ./installer
الخيار 2 (بيئات التطوير): امنح المستخدم الخاص بك الوصول إلى مقبس Docker عن طريق إضافته إلى مجموعة docker: ```bash
sudo usermod -aG docker $USER
newgrp docker
docker ps
⚠️ ملاحظة أمنية: إضافة مستخدم إلى مجموعة docker تمنح صلاحيات مكافئة للجذر. افعل ذلك فقط مع المستخدمين الموثوقين في بيئات خاضعة للرقابة. بالنسبة لنشر الإنتاج، فكر في استخدام وضع Docker بدون جذر أو تشغيل المثبت باستخدام sudo.
سيقوم المثبت بما يلي:
.env بالإعدادات الافتراضية المثلىتدير واجهة PentAGI على الويب بالفعل عدة مجالات إعدادات بعد تشغيل الخادم:
لا تزال مجالات التكوين التالية بحاجة إلى الإعداد على الخادم من خلال متغيرات البيئة، ملفات compose، أو ملفات التكوين المثبتة:
OLLAMA_SERVER_CONFIG_PATH وLLM_SERVER_CONFIG_PATH.DUCKDUCKGO_*، GOOGLE_*، TAVILY_API_KEY، TRAVERSAAL_API_KEY، PERPLEXITY_*، SEARXNG_*، وSPLOITUS_ENABLED.للإنتاج والأمان المعزز:
بالنسبة لنشر الإنتاج أو البيئات الحساسة أمنيًا، نوصي بشدة باستخدام بنية موزعة ثنائية العقد حيث يتم عزل عمليات العامل على خادم منفصل. يمنع هذا تنفيذ التعليمات البرمجية غير الموثوقة ومشكلات الوصول إلى الشبكة على نظامك الرئيسي.
اطلع على الدليل التفصيلي: إعداد العقدة العاملة
يوفر إعداد العقدتين:
2. انسخ `.env.example` إلى `.env` أو قم بتنزيله:```bash
curl -o .env https://raw.githubusercontent.com/vxcontrol/pentagi/master/.env.example
example.custom.provider.yml, example.ollama.provider.yml) أو تنزيلها:```bash
curl -o example.custom.provider.yml https://raw.githubusercontent.com/vxcontrol/pentagi/master/examples/configs/custom-openai.provider.yml
curl -o example.ollama.provider.yml https://raw.githubusercontent.com/vxcontrol/pentagi/master/examples/configs/ollama-llama318b.provider.yml4. املأ مفاتيح API المطلوبة في ملف `.env`.```bash
# Required: At least one of these LLM providers
OPEN_AI_KEY=your_openai_key
ANTHROPIC_API_KEY=your_anthropic_key
GEMINI_API_KEY=your_gemini_key
# Optional: AWS Bedrock provider (enterprise-grade models)
BEDROCK_REGION=us-east-1
# Choose one authentication method:
BEDROCK_DEFAULT_AUTH=true # Option 1: Use AWS SDK default credential chain (recommended for EC2/ECS)
# BEDROCK_BEARER_TOKEN=your_bearer_token # Option 2: Bearer token authentication
# BEDROCK_ACCESS_KEY_ID=your_aws_access_key # Option 3: Static credentials
# BEDROCK_SECRET_ACCESS_KEY=your_aws_secret_key
# Optional: Ollama provider (local or cloud)
# OLLAMA_SERVER_URL=http://ollama-server:11434 # Local server
# OLLAMA_SERVER_URL=https://ollama.com # Cloud service
# OLLAMA_SERVER_API_KEY=your_ollama_cloud_key # Required for cloud, empty for local
# Optional: Chinese AI providers
# DEEPSEEK_API_KEY=your_deepseek_key # DeepSeek (strong reasoning)
# GLM_API_KEY=your_glm_key # GLM (Zhipu AI)
# KIMI_API_KEY=your_kimi_key # Kimi (Moonshot AI, ultra-long context)
# QWEN_API_KEY=your_qwen_key # Qwen (Alibaba Cloud, multimodal)
# Optional: Local LLM provider (zero-cost inference)
OLLAMA_SERVER_URL=http://localhost:11434
OLLAMA_SERVER_MODEL=your_model_name
# Optional: Additional search capabilities
DUCKDUCKGO_ENABLED=true
DUCKDUCKGO_REGION=us-en
DUCKDUCKGO_SAFESEARCH=
DUCKDUCKGO_TIME_RANGE=
SPLOITUS_ENABLED=true
GOOGLE_API_KEY=your_google_key
GOOGLE_CX_KEY=your_google_cx
TAVILY_API_KEY=your_tavily_key
TRAVERSAAL_API_KEY=your_traversaal_key
PERPLEXITY_API_KEY=your_perplexity_key
PERPLEXITY_MODEL=sonar-pro
PERPLEXITY_CONTEXT_SIZE=medium
# Searxng meta search engine (aggregates results from multiple sources)
SEARXNG_URL=http://your-searxng-instance:8080
SEARXNG_CATEGORIES=general
SEARXNG_LANGUAGE=
SEARXNG_SAFESEARCH=0
SEARXNG_TIME_RANGE=
SEARXNG_TIMEOUT=
## Graphiti knowledge graph settings
GRAPHITI_ENABLED=true
GRAPHITI_TIMEOUT=30
GRAPHITI_URL=http://graphiti:8000
GRAPHITI_MODEL_NAME=gpt-5-mini
# Neo4j settings (used by Graphiti stack)
NEO4J_USER=neo4j
NEO4J_DATABASE=neo4j
NEO4J_PASSWORD=devpassword
NEO4J_URI=bolt://neo4j:7687
# Assistant configuration
ASSISTANT_USE_AGENTS=false # Default value for agent usage when creating new assistants
.env لتحسين الأمان.COOKIE_SIGNING_SALT - ملح توقيع ملفات تعريف الارتباط، قم بتغييره إلى قيمة عشوائيةPUBLIC_URL - عنوان URL العام لخادمك (مثل https://pentagi.example.com)SERVER_SSL_CRT و SERVER_SSL_KEY - مسارات مخصصة لشهادة SSL ومفتاح SSL الحاليين لبروتوكول HTTPS (يجب استخدام هذه المسارات في ملف docker-compose.yml لتركيبها كوحدات تخزين)SCRAPER_PUBLIC_URL - عنوان URL العام للزاحف إذا كنت ترغب في استخدام خادم زاحف مختلف لعناوين URL العامةSCRAPER_PRIVATE_URL - عنوان URL الخاص للزاحف (خادم الزاحف المحلي في ملف docker-compose.yml للوصول إلى عناوين URL المحلية)PENTAGI_POSTGRES_USER و PENTAGI_POSTGRES_PASSWORD - بيانات اعتماد PostgreSQLNEO4J_USER و NEO4J_PASSWORD - بيانات اعتماد Neo4j (لرسم بياني المعرفة Graphiti).env إذا كنت ترغب في استخدامه في VSCode أو بيئات تطوير متكاملة أخرى كخيار لملف envFile:```bash
perl -i -pe 's/\s+#.*$//' .env7. قم بتشغيل مكدس PentAGI:```bash
curl -O https://raw.githubusercontent.com/vxcontrol/pentagi/master/docker-compose.yml
docker compose up -d
قم بزيارة localhost:8443 للوصول إلى واجهة مستخدم PentAGI (الافتراضي هو [email protected] / admin)
لا يعرض PentAGI تسجيل دخول عام للخدمة الذاتية من صفحة تسجيل الدخول. يؤدي التثبيت الجديد إلى إنشاء حساب المسؤول المحلي الافتراضي:
[email protected]adminعند تسجيل الدخول لأول مرة، قم بتغيير كلمة المرور الافتراضية قبل استخدام المثيل للعمل الحقيقي. إذا تم فقدان كلمة مرور المسؤول لاحقًا، استخدم قائمة الصيانة في المثبت لإعادة تعيين كلمة مرور الحساب الافتراضي [email protected].
لإعدادات متعددة المستخدمين، يمكن للمسؤول الموثّق إدارة المستخدمين المحليين عبر REST API للمستخدمين (/api/v1/users/). واجهة OpenAPI متاحة على https://localhost:8443/api/v1/swagger/index.html بعد تشغيل المثيل.
[!NOTE] إذا واجهت خطأ حول
pentagi-networkأوobservability-networkأوlangfuse-network، فستحتاج إلى تشغيلdocker-compose.ymlأولاً لإنشاء هذه الشبكات، ثم تشغيلdocker-compose-langfuse.ymlوdocker-compose-graphiti.ymlوdocker-compose-observability.ymlلاستخدام خدمات Langfuse و Graphiti و Observability.يجب عليك تعيين مزود نموذج لغة واحد على الأقل (OpenAI، Anthropic، Gemini، AWS Bedrock، أو Ollama) لاستخدام PentAGI. يوفر AWS Bedrock وصولًا على مستوى المؤسسة إلى العديد من النماذج الأساسية من شركات الذكاء الاصطناعي الرائدة، بينما يوفر Ollama استدلالًا محليًا مجانيًا إذا كان لديك موارد حسابية كافية. مفاتيح API الإضافية لمحركات البحث اختيارية ولكنها موصى بها للحصول على نتائج أفضل.
للنشر المحلي بالكامل باستخدام نماذج متقدمة: راجع دليلنا الشامل حول تشغيل PentAGI مع vLLM و Qwen3.5-27B-FP8 لإعداد LLM محلي من الدرجة الإنتاجية. يحقق هذا التكوين حوالي 13,000 TPS لمعالجة المطالبة وحوالي 650 TPS للإكمال على 4× RTX 5090 GPU، ويدعم 12+ تدفقًا متزامنًا مع الاستقلالية الكاملة عن موفري السحابة.
متغيرات البيئة
LLM_SERVER_*هي ميزة تجريبية وسيتم تغييرها في المستقبل. في الوقت الحالي، يمكنك استخدامها لتحديد عنوان URL مخصص لخادم LLM ونموذج واحد لجميع أنواع الوكلاء.
PROXY_URLهو عنوان URL وكيل عالمي لجميع مزودي LLM وأنظمة البحث الخارجية. يمكنك استخدامه للعزل عن الشبكات الخارجية.يقوم ملف
docker-compose.ymlبتشغيل خدمة PentAGI كمستخدم الجذر لأنه يحتاج إلى الوصول إلى docker.sock لإدارة الحاويات. إذا كنت تستخدم اتصال شبكة TCP/IP بـ Docker بدلاً من ملف المقبس، يمكنك إزالة صلاحيات الجذر واستخدام المستخدم الافتراضيpentagiلتحسين الأمان.
افتراضيًا، يرتبط PentAGI بـ 127.0.0.1 (localhost فقط) للأمان. للوصول إلى PentAGI من أجهزة أخرى على شبكتك، تحتاج إلى تكوين الوصول الخارجي.
.env بعنوان IP لخادمك:```bashPENTAGI_LISTEN_IP=0.0.0.0 PENTAGI_LISTEN_PORT=8443
PUBLIC_URL=https://192.168.1.100:8443
CORS_ORIGINS=https://localhost:8443,https://192.168.1.100:8443
> [!IMPORTANT]
> - استبدل `192.168.1.100` بعنوان IP الفعلي لخادمك
> - لا تستخدم `0.0.0.0` في `PUBLIC_URL` أو `CORS_ORIGINS` - استخدم عنوان IP الفعلي
> - قم بتضمين كل من localhost وعنوان IP الخاص بالخادم في `CORS_ORIGINS` للمرونة
2. **أعد إنشاء الحاويات** لتطبيق التغييرات:```bash
docker compose down
docker compose up -d --force-recreate
يجب أن ترى `0.0.0.0:8443->8443/tcp` أو `:::8443->8443/tcp`.
إذا رأيت `127.0.0.1:8443->8443/tcp`، فهذا يعني أن المتغير البيئي لم يتم التقاطه. في هذه الحالة، قم بتعديل السطر 31 من ملف `docker-compose.yml` مباشرةً:```yaml
ports:
- "0.0.0.0:8443:8443"
ثم أعد إنشاء الحاويات مرة أخرى.
sudo ufw allow 8443/tcp sudo ufw reload
sudo firewall-cmd --permanent --add-port=8443/tcp sudo firewall-cmd --reload
5. **الوصول إلى PentAGI:**
- **الوصول المحلي:** `https://localhost:8443`
- **الوصول عبر الشبكة:** `https://your-server-ip:8443`
> [!NOTE]
> ستحتاج إلى قبول تحذير شهادة SSL الموقعة ذاتيًا في متصفحك عند الوصول عبر عنوان IP.
---
### تشغيل PentAGI مع Podman
يدعم PentAGI بالكامل Podman كبديل لـ Docker. ومع ذلك، عند استخدام **Podman في وضع الجذر (rootless)**، تتطلب خدمة scraper تكوينًا خاصًا لأن الحاويات في وضع الجذر لا يمكنها ربط المنافذ المميزة (المنافذ الأقل من 1024).
#### تكوين Podman في وضع الجذر
يستخدم التكوين الافتراضي لـ scraper المنفذ 443 (HTTPS)، وهو منفذ مميز. بالنسبة لـ Podman في وضع الجذر، أعد تكوين scraper لاستخدام منفذ غير مميز:
**1. تعديل `docker-compose.yml`** - عدل خدمة `scraper` (حوالي السطر 199):```yaml
scraper:
image: vxcontrol/scraper:latest
restart: unless-stopped
container_name: scraper
hostname: scraper
expose:
- 3000/tcp # Changed from 443 to 3000
ports:
- "${SCRAPER_LISTEN_IP:-127.0.0.1}:${SCRAPER_LISTEN_PORT:-9443}:3000" # Map to port 3000
environment:
- MAX_CONCURRENT_SESSIONS=${LOCAL_SCRAPER_MAX_CONCURRENT_SESSIONS:-10}
- USERNAME=${LOCAL_SCRAPER_USERNAME:-someuser}
- PASSWORD=${LOCAL_SCRAPER_PASSWORD:-somepass}
logging:
options:
max-size: 50m
max-file: "7"
volumes:
- scraper-ssl:/usr/src/app/ssl
networks:
- pentagi-network
shm_size: 2g
2. تحديث ملف .env - قم بتغيير عنوان URL الخاص بالماسح لاستخدام HTTP والمنفذ 3000:```bash
SCRAPER_PRIVATE_URL=http://someuser:somepass@scraper:3000/ LOCAL_SCRAPER_USERNAME=someuser LOCAL_SCRAPER_PASSWORD=somepass
> [!IMPORTANT]
> التغييرات الرئيسية لـ Podman:
> - استخدم **HTTP** بدلاً من HTTPS لـ `SCRAPER_PRIVATE_URL`
> - استخدم المنفذ **3000** بدلاً من 443
> - غيّر `expose` الداخلي إلى `3000/tcp`
> - حدّث تعيين المنفذ لاستهداف `3000` بدلاً من `443`
**3. أعد إنشاء الحاويات:**```bash
podman-compose down
podman-compose up -d --force-recreate
4. اختبار اتصال الماسح:```bash
podman exec -it pentagi wget -O- "http://someuser:somepass@scraper:3000/html?url=http://example.com"
إذا رأيت إخراج HTML، فإن الماسح الضوئي يعمل بشكل صحيح.
#### وضع Podman الجذري
إذا كنت تستخدم Podman في الوضع الجذري (مع sudo)، فيمكنك استخدام التهيئة الافتراضية دون تعديلات. سيعمل الماسح الضوئي على المنفذ 443 كما هو مقصود.
#### توافق Docker
جميع تهيئات Podman تبقى متوافقة تمامًا مع Docker. يعمل نهج المنفذ غير المميز بشكل متطابق على كلا بيئتي تشغيل الحاويات.
### تهيئة المساعد
يتيح لك PentAGI تهيئة السلوك الافتراضي للمساعدين:
| المتغير | القيمة الافتراضية | الوصف |
| ---------------------- | ------- | ----------------------------------------------------------------------- |
| `ASSISTANT_USE_AGENTS` | `false` | يتحكم في القيمة الافتراضية لاستخدام الوكلاء عند إنشاء مساعدين جدد |
يؤثر إعداد `ASSISTANT_USE_AGENTS` على الحالة الأولية لمفتاح "استخدام الوكلاء" عند إنشاء مساعد جديد في واجهة المستخدم:
- `false` (القيمة الافتراضية): يتم إنشاء مساعدين جدد مع تعطيل تفويض الوكيل افتراضيًا
- `true`: يتم إنشاء مساعدين جدد مع تمكين تفويض الوكيل افتراضيًا
لاحظ أنه يمكن للمستخدمين دائمًا تجاوز هذا الإعداد عن طريق تبديل زر "استخدام الوكلاء" في واجهة المستخدم عند إنشاء مساعد أو تحريره. يتحكم متغير البيئة هذا فقط في الحالة الافتراضية الأولية.
## كيفية استخدام PentAGI بعد تسجيل الدخول
بمجرد تشغيل الحزمة ويمكنك تسجيل الدخول إلى واجهة المستخدم، فإن أسرع طريقة للبدء هي من خلال سير عمل Flows.
### 1. إنشاء التدفق الأول
1. افتح **Flows** في الشريط الجانبي.
2. انقر على **New Flow**.
3. اختر الوضع الذي يناسب هدفك:
- **التشغيل التلقائي (Automation)**: تنفيذ مستقل بالكامل لهدف اختبار تريد أن يقوم به PentAGI من البداية إلى النهاية
- **المساعد (Assistant)**: مساعدة تفاعلية ذهابًا وإيابًا عندما تريد توجيه التحقيق خطوة بخطوة. في هذا الوضع، يمكنك أيضًا تمكين مفتاح **استخدام الوكلاء (Use Agents)** للسماح لـ PentAGI بتفويض المهام الفرعية لوكلاء فرعيين متخصصين للتحقيقات الأكثر تعقيدًا.
4. اختر مزود LLM الذي تريد استخدامه لهذا التدفق.
5. صف الهدف والغرض بلغة طبيعية في مربع الرسالة.
عادةً ما تتضمن الطلبات الأولية الجيدة ما يلي:
- النظام المستهدف أو عنوان URL
- نوع التقييم الذي تريده
- أي قيود على النطاق أو قواعد الاشتباك
- النتيجة التي تتوقعها، مثل تقرير ثغرة أو التحقق من فرضية
مثال:```text
Assess https://target.example for common web application vulnerabilities. Focus on authentication, file handling, and injection issues. Stay within the provided target only and summarize confirmed findings with reproduction steps.
اختبار الأنظمة التي تمتلكها فقط أو التي لديك إذن صريح بتقييمها. راجع EULA.md لمعرفة متطلبات الاستخدام المقبولة.
يتضمن نموذج التدفق الجديد منتقي قوالب، يمكنه ملء مربع الرسالة مسبقاً بقالب تدفق محفوظ. هذا مفيد عندما تقوم بتشغيل تقييمات مماثلة بشكل متكرر.
examples/prompts/base_web_pentest.md إذا كنت بحاجة إلى خط أساس عملي لاختبار الويبالقوالب هي نقاط انطلاق. لست بحاجة إلى بناء جملة خاص لاستخدام PentAGI: تعليمات اللغة الطبيعية البسيطة تعمل بشكل جيد طالما أن الهدف والغرض واضحان.
بعد إرسال التدفق، يفتح PentAGI صفحة التدفق تلقائياً.
بمجرد حصول التدفق على نتائج كافية، استخدم قائمة التقرير في صفحة التدفق لـ:
يتضمن كل تدفق أيضاً عرض المساعد للإرشاد التفاعلي. هذا مفيد عندما يكشف التشغيل المستقل عن شيء يحتاج إلى توجيه بشري بدلاً من إعادة التشغيل الصعبة.
لكل تدفق علامة تبويب الملفات الخاصة به في صفحة التدفق. الملفات مقيدة بنطاق التدفق الأصلي: فهي موجودة في {dataDir}/flow-{id}-data/ على المضيف ولا تتسرب أبداً إلى تدفقات أخرى.
تكشف علامة التبويب عن ثلاثة مصادر للملفات:
uploads/): الملفات التي تقدمها من واجهة الويب. استخدم إجراء تحميل الملفات، أو اسحب وأفلت مباشرة على علامة تبويب الملفات. أثناء تشغيل حاوية الوكيل، يتم دفع الملفات المُحمّلة أيضاً إليها في /work/uploads/ بحيث يمكن للوكيل قراءتها باستخدام أدوات الصدفة العادية.resources/): الملفات المرفقة من مكتبة موارد المستخدم المحفوظة لديك عبر إرفاق موارد من المكتبة. يتم نسخ الموارد المرفقة إلى التدفق ودفعها إلى الحاوية الجارية في /work/resources/.container/): لقطات يتم سحبها من حاوية الوكيل الجارية عبر سحب ملف أو دليل من الحاوية. هذه للقراءة فقط من جانب التدفق ولا يتم إرسالها أبداً مرة أخرى إلى الحاوية.الإجراءات لكل ملف في علامة تبويب الملفات تشمل تنزيل، نسخ المسار، حفظ كمورد (ترقية ملف تدفق إلى مكتبة الموارد القابلة لإعادة الاستخدام)، و حذف. يتم تعطيل إجراء السحب عندما لا تكون الحاوية قيد التشغيل، مع تلميح الأداة "الحاوية لا تعمل".
يتم إدراج الملفات المُحمّلة والموارد المرفقة تلقائياً في مطالبات النظام الخاصة بالوكيل عبر متغير القالب {{.UserFiles}}، الذي يعرض كتلة XML مضغوطة <task_files> (مع أقسام <uploads> و <resources> متداخلة)، بحيث يمكن للمساعد وعوامل الأتمتة الرجوع إليها حسب المسار دون لصق المحتويات في الدردشة. لقطات الحاوية مرئية في واجهة المستخدم فقط ولا يتم حقنها تلقائياً مرة أخرى في المطالبة.
الحدود والقيود الحالية التي يجب معرفتها:
/work/uploads/ و /work/resources/؛ الملفات المكتوبة في مسارات حاوية أخرى لا يتم عكسها تلقائياً مرة أخرى إلى نموذج ملف التدفق. يمكن أن تنشأ لقطات الحاوية من أي مسار حاوية تسحبه (على سبيل المثال /etc/...) ويتم تخزينها مؤقتاً على جانب التدفق ضمن container/؛ لا يتم دفعها مرة أخرى إلى الحاوية.flow-{id}-data/ الخاص بالتدفق على القرص. لا يزال من المتوقع من المشغلين تنظيف دليل البيانات يدوياً إذا أرادوا استعادة المساحة.للاختبار المبكر، ابدأ بهدف ضيق وهدف واحد واضح. هذا يجعل المخرجات أسهل في المراجعة ويساعدك على تحسين مطالباتك قبل تشغيل تقييمات أكبر.
يوفر PentAGI وصولاً برمجياً شاملاً عبر كل من REST و GraphQL APIs، مما يسمح لك بدمج سير عمل اختبار الاختراق في خطوط الأنابيب الآلية الخاصة بك، وعمليات CI/CD، والتطبيقات المخصصة.
تتم إدارة رموز API من خلال واجهة الويب الخاصة بـ PentAGI:
كل رمز مرتبط بحساب المستخدم الخاص بك ويرث صلاحيات دورك.
قم بتضمين رمز API في رأس Authorization لطلبات HTTP الخاصة بك:```bash
curl -X POST https://your-pentagi-instance:8443/api/v1/graphql
-H "Authorization: Bearer YOUR_API_TOKEN"
-H "Content-Type: application/json"
-d '{"query": "{ flows { id title status } }"}'
curl https://your-pentagi-instance:8443/api/v1/flows
-H "Authorization: Bearer YOUR_API_TOKEN"
### استكشاف واختبار API
توفر PentAGI وثائق تفاعلية لاستكشاف واختبار نقاط نهاية API:
#### GraphQL Playground
الوصول إلى GraphQL Playground على `https://your-pentagi-instance:8443/api/v1/graphql/playground`
1. انقر على علامة التبويب **HTTP Headers** في الأسفل
2. أضف رأس التفويض الخاص بك: ```json
{
"Authorization": "Bearer YOUR_API_TOKEN"
}
الوصول إلى توثيق REST API على https://your-pentagi-instance:8443/api/v1/swagger/index.html
Bearer YOUR_API_TOKENيمكنك إنشاء عملاء API آمنين من حيث النوع للغة البرمجة المفضلة لديك باستخدام ملفات المخطط المضمنة في PentAGI:
مخطط GraphQL متاح في:
schema.graphqlsbackend/pkg/graph/schema.graphqls في المستودعقم بإنشاء العملاء باستخدام أدوات مثل:
مواصفات OpenAPI متاحة في:
https://your-pentagi-instance:8443/api/v1/swagger/doc.jsonbackend/pkg/server/docs/swagger.yamlقم بإنشاء العملاء باستخدام:
class PentAGIClient: def init(self, base_url, api_token): self.base_url = base_url self.headers = { "Authorization": f"Bearer {api_token}", "Content-Type": "application/json" }
def create_flow(self, provider, target):
query = """
mutation CreateFlow($provider: String!, $input: String!) {
createFlow(modelProvider: $provider, input: $input) {
id
title
status
}
}
"""
response = requests.post(
f"{self.base_url}/api/v1/graphql",
json={
"query": query,
"variables": {
"provider": provider,
"input": target
}
},
headers=self.headers
)
return response.json()
def get_flows(self):
response = requests.get(
f"{self.base_url}/api/v1/flows",
headers=self.headers
)
return response.json()
client = PentAGIClient( "https://your-pentagi-instance:8443", "your_api_token_here" )
flow = client.create_flow("openai", "Scan https://example.com for vulnerabilities") print(f"Created flow: {flow}")
flows = client.get_flows() print(f"Total flows: {len(flows['flows'])}")
</details>
<details>
<summary><b>مثال عميل TypeScript</b></summary>```typescript
import axios, { AxiosInstance } from 'axios';
interface Flow {
id: string;
title: string;
status: string;
createdAt: string;
}
class PentAGIClient {
private client: AxiosInstance;
constructor(baseURL: string, apiToken: string) {
this.client = axios.create({
baseURL: `${baseURL}/api/v1`,
headers: {
'Authorization': `Bearer ${apiToken}`,
'Content-Type': 'application/json',
},
});
}
async createFlow(provider: string, input: string): Promise<Flow> {
const query = `
mutation CreateFlow($provider: String!, $input: String!) {
createFlow(modelProvider: $provider, input: $input) {
id
title
status
createdAt
}
}
`;
const response = await this.client.post('/graphql', {
query,
variables: { provider, input },
});
return response.data.data.createFlow;
}
async getFlows(): Promise<Flow[]> {
const response = await this.client.get('/flows');
return response.data.flows;
}
async getFlow(flowId: string): Promise<Flow> {
const response = await this.client.get(`/flows/${flowId}`);
return response.data;
}
}
// Usage
const client = new PentAGIClient(
'https://your-pentagi-instance:8443',
'your_api_token_here'
);
// Create a new flow
const flow = await client.createFlow(
'openai',
'Perform penetration test on https://example.com'
);
console.log('Created flow:', flow);
// List all flows
const flows = await client.getFlows();
console.log(`Total flows: ${flows.length}`);
عند العمل مع رموز API:
تظهر قائمة الرموز:
عند استخدام مزودي LLM مخصصين مع متغيرات LLM_SERVER_*، يمكنك ضبط تنسيق الاستدلال المستخدم في الطلبات بدقة.
[!TIP] بالنسبة للنشر المحلي على مستوى الإنتاج، فكر في استخدام vLLM مع Qwen3.5-27B-FP8 للحصول على أداء مثالي. راجع دليل النشر الشامل الخاص بنا والذي يتضمن متطلبات الأجهزة، وقوالب التهيئة (وضع التفكير ووضع عدم التفكير)، ومعايير الأداء التي تظهر معالجة 13 ألف رمز في الثانية على 4 وحدات معالجة رسومية RTX 5090.
| المتغير | الافتراضي | الوصف |
|---|---|---|
LLM_SERVER_URL | عنوان URL الأساسي لنقطة نهاية API المخصصة لـ LLM | |
LLM_SERVER_KEY | مفتاح API لمزود LLM المخصص | |
LLM_SERVER_MODEL | النموذج الافتراضي المستخدم (يمكن تجاوزه في تهيئة المزود) | |
LLM_SERVER_CONFIG_PATH | مسار ملف تهيئة YAML للنماذج الخاصة بالوكيل | |
LLM_SERVER_PROVIDER | بادئة اسم المزود لأسماء النماذج (مثل openrouter، deepseek لوكيل LiteLLM) | |
LLM_SERVER_LEGACY_REASONING | false | يتحكم في تنسيق الاستدلال في طلبات API |
LLM_SERVER_PRESERVE_REASONING | false | الحفاظ على محتوى الاستدلال في المحادثات متعددة الأدوار (مطلوب من قبل بعض المزودين) |
إعداد LLM_SERVER_PROVIDER مفيد بشكل خاص عند استخدام وكيل LiteLLM، الذي يضيف بادئة مزود إلى أسماء النماذج. على سبيل المثال، عند الاتصال بـ Moonshot API عبر LiteLLM، تصبح النماذج مثل kimi-2.5 هي moonshot/kimi-2.5. من خلال تعيين LLM_SERVER_PROVIDER=moonshot، يمكنك استخدام نفس ملف تهيئة المزود للوصول المباشر إلى API ووصول وكيل LiteLLM دون تعديلات.
يؤثر إعداد LLM_SERVER_LEGACY_REASONING على كيفية إرسال معلمات الاستدلال إلى LLM:
false (افتراضي): يستخدم التنسيق الحديث حيث يتم إرسال الاستدلال ككائن منظم مع معامل max_tokenstrue: يستخدم التنسيق القديم مع معامل reasoning_effort القائم على النصهذا الإعداد مهم عند العمل مع مزودي LLM مختلفين حيث قد يتوقعون تنسيقات استدلال مختلفة في طلبات API الخاصة بهم. إذا واجهت أخطاء متعلقة بالاستدلال مع المزودين المخصصين، فحاول تغيير هذا الإعداد.
يتحكم إعداد LLM_SERVER_PRESERVE_REASONING في ما إذا كان محتوى الاستدلال محفوظًا في المحادثات متعددة الأدوار:
false (افتراضي): لا يتم حفظ محتوى الاستدلال في سجل المحادثةtrue: يتم حفظ محتوى الاستدلال وإرساله في استدعاءات API اللاحقةهذا الإعداد مطلوب من قبل بعض مزودي LLM (مثل Moonshot) الذين يعيدون أخطاء مثل "التفكير مفعل ولكن reasoning_content مفقود في رسالة استدعاء أداة المساعد" عندما لا يتم تضمين محتوى الاستدلال في المحادثات متعددة الأدوار. قم بتمكين هذا الإعداد إذا كان المزود الخاص بك يتطلب حفظ محتوى الاستدلال.
يدعم PentAGI كلاً من Ollama للاستدلال المحلي لـ LLM (بتكلفة صفرية، وخصوصية محسّنة) وOllama Cloud (خدمة مدارة مع طبقة مجانية).
| المتغير | الافتراضي | الوصف |
|---|---|---|
OLLAMA_SERVER_URL | عنوان URL لخادم Ollama الخاص بك أو Ollama Cloud | |
OLLAMA_SERVER_API_KEY | مفتاح API لمصادقة Ollama Cloud | |
OLLAMA_SERVER_MODEL | النموذج الافتراضي للاستدلال | |
OLLAMA_SERVER_CONFIG_PATH | مسار ملف تهيئة الوكيل المخصص | |
OLLAMA_SERVER_PULL_MODELS_TIMEOUT | 600 | مهلة تنزيل النماذج (بالثواني) |
OLLAMA_SERVER_PULL_MODELS_ENABLED | false | التنزيل التلقائي للنماذج عند بدء التشغيل |
OLLAMA_SERVER_LOAD_MODELS_ENABLED | false | الاستعلام عن الخادم لمعرفة النماذج المتاحة |
يوفر Ollama Cloud استدلالًا مُدارًا مع طبقة مجانية سخية وخطط مدفوعة قابلة للتوسع.
إعداد الطبقة المجانية (نموذج واحد)```bash
OLLAMA_SERVER_URL=https://ollama.com OLLAMA_SERVER_API_KEY=your_ollama_cloud_api_key OLLAMA_SERVER_MODEL=gpt-oss:120b # Example: OpenAI OSS 120B model
**إعداد الطبقة المدفوعة (نموذج متعدد مع تكوين مُعد مسبقًا)**
بالنسبة للطبقات المدفوعة التي تدعم نماذج متعددة متزامنة، استخدم تكوين Ollama Cloud المُعد مسبقًا:```bash
# Using pre-built Ollama Cloud configuration (included in Docker image)
OLLAMA_SERVER_URL=https://ollama.com
OLLAMA_SERVER_API_KEY=your_ollama_cloud_api_key
OLLAMA_SERVER_CONFIG_PATH=/opt/pentagi/conf/ollama-cloud.provider.yml
التكوين المُعدّ مسبقًا ollama-cloud.provider.yml يتضمن تخصيصات نموذجية محسّنة لجميع أنواع الوكلاء:
nemotron-3-super:cloud - نموذج سريع للأغراض العامةqwen3-coder-next:cloud - استدلال متقدم مع وضع جهد عالٍqwen3-coder-next:cloud - نماذج برمجة متخصصةqwen3.5:397b-cloud - سياق كبير لجمع المعلوماتglm-5:cloud - تحسين نصوص عالي الجودةminimax-m2.7:cloud - مهام استشارية فعّالةdevstral-2:123b-cloud - مهام التثبيت والإعدادتخصيص مخصص (متقدم)
لإنشاء تكوين الوكيل الخاص بك، قم بتثبيت ملف مخصص من نظام الملفات الخاص بالمضيف:```bash
OLLAMA_SERVER_URL=https://ollama.com OLLAMA_SERVER_API_KEY=your_ollama_cloud_api_key OLLAMA_SERVER_CONFIG_PATH=/opt/pentagi/conf/ollama.provider.yml
PENTAGI_OLLAMA_SERVER_CONFIG_PATH=/path/on/host/my-ollama-config.yml
المتغير البيئي `PENTAGI_OLLAMA_SERVER_CONFIG_PATH` يربط ملف التكوين على جهاز المضيف بالمسار `/opt/pentagi/conf/ollama.provider.yml` داخل الحاوية.
**مثال على تكوين مخصص** (`my-ollama-config.yml`):```yaml
primary_agent:
model: "qwen3-coder-next:cloud"
temperature: 1.0
top_p: 0.9
max_tokens: 32768
reasoning:
effort: high
coder:
model: "qwen3-coder:32b"
temperature: 1.0
max_tokens: 20480
لحالات Ollama المستضافة ذاتيًا:```bash
OLLAMA_SERVER_URL=http://localhost:11434 OLLAMA_SERVER_MODEL=llama3.1:8b-instruct-q8_0
OLLAMA_SERVER_URL=http://ollama-server:11434 OLLAMA_SERVER_PULL_MODELS_ENABLED=true OLLAMA_SERVER_PULL_MODELS_TIMEOUT=900 OLLAMA_SERVER_LOAD_MODELS_ENABLED=true
OLLAMA_SERVER_CONFIG_PATH=/opt/pentagi/conf/ollama-llama318b.provider.yml
OLLAMA_SERVER_CONFIG_PATH=/opt/pentagi/conf/ollama-qwen332b-fp16-tc.provider.yml
OLLAMA_SERVER_CONFIG_PATH=/opt/pentagi/conf/ollama-qwq32b-fp16-tc.provider.yml
**اعتبارات الأداء:**
- **اكتشاف النموذج** (`OLLAMA_SERVER_LOAD_MODELS_ENABLED=true`): يضيف تأخير بدء تشغيل من 1-2 ثانية لاستعلام Ollama API
- **السحب التلقائي** (`OLLAMA_SERVER_PULL_MODELS_ENABLED=true`): قد يستغرق بدء التشغيل الأول عدة دقائق لتحميل النماذج
- **مهلة السحب** (`OLLAMA_SERVER_PULL_MODELS_TIMEOUT=900`): 15 دقيقة بالثواني
- **التكوين الثابت**: قم بتعطيل كلا العلمين وحدد النماذج في ملف التكوين للحصول على أسرع بدء تشغيل
#### إنشاء نماذج Ollama مخصصة بسياق موسع
يتطلب PentAGI نماذج بنوافذ سياق أكبر من تكوينات Ollama الافتراضية. تحتاج إلى إنشاء نماذج مخصصة مع زيادة معلمة `num_ctx` عبر ملفات Modelfiles. بينما تستهلك مهام سير العمل النموذجية للوكيل حوالي 64K رمز، يستخدم PentAGI حجم سياق 110K كهامش أمان وللتعامل مع سيناريوهات اختبار الاختراق المعقدة.
**مهم**: لا يمكن تعيين معلمة `num_ctx` إلا أثناء إنشاء النموذج عبر Modelfile - ولا يمكن تغييرها بعد إنشاء النموذج أو تجاوزها في وقت التشغيل.
##### مثال: Qwen3 32B FP16 بسياق موسع
أنشئ ملف Modelfile باسم `Modelfile_qwen3_32b_fp16_tc`:```dockerfile
FROM qwen3:32b-fp16
PARAMETER num_ctx 110000
PARAMETER temperature 0.3
PARAMETER top_p 0.8
PARAMETER min_p 0.0
PARAMETER top_k 20
PARAMETER repeat_penalty 1.1
بناء النموذج المخصص:```bash ollama create qwen3:32b-fp16-tc -f Modelfile_qwen3_32b_fp16_tc
##### مثال: QwQ 32B FP16 مع السياق الموسع
أنشئ ملف Modelfile باسم `Modelfile_qwq_32b_fp16_tc`:```dockerfile
FROM qwq:32b-fp16
PARAMETER num_ctx 110000
PARAMETER temperature 0.2
PARAMETER top_p 0.7
PARAMETER min_p 0.0
PARAMETER top_k 40
PARAMETER repeat_penalty 1.2
ابنِ النموذج المخصص:```bash ollama create qwq:32b-fp16-tc -f Modelfile_qwq_32b_fp16_tc
> **ملاحظة**: يتطلب نموذج QwQ 32B FP16 ما يقرب من **71.3 جيجابايت من VRAM** للاستدلال. تأكد من أن نظامك يحتوي على ذاكرة GPU كافية قبل محاولة استخدام هذا النموذج.
يتم الإشارة إلى هذه النماذج المخصصة في ملفات تكوين الموفر المعدة مسبقًا (`ollama-qwen332b-fp16-tc.provider.yml` و `ollama-qwq32b-fp16-tc.provider.yml`) المضمنة في صورة Docker في `/opt/pentagi/conf/`.
### تكوين موفر OpenAI
يتكامل PentAGI مع مجموعة نماذج OpenAI الشاملة، التي تتميز بقدرات تفكير متقدمة مع سلسلة أفكار ممتدة، ونماذج وكيلة مع تعزيز تكامل الأدوات، ونماذج كود متخصصة لهندسة الأمان.
#### متغيرات التكوين
| المتغير | الافتراضي | الوصف |
| ----------------------- | --------------------------- | ------------------------------ |
| `OPEN_AI_KEY` | | مفتاح API لخدمات OpenAI |
| `OPEN_AI_SERVER_URL` | `https://api.openai.com/v1` | نقطة نهاية API لـ OpenAI |
#### أمثلة التكوين```bash
# Basic OpenAI setup
OPEN_AI_KEY=your_openai_api_key
OPEN_AI_SERVER_URL=https://api.openai.com/v1
# Using with proxy for enhanced security
OPEN_AI_KEY=your_openai_api_key
PROXY_URL=http://your-proxy:8080
تدعم PentAGI 31 نموذجًا من OpenAI مع استدعاء الأدوات، والبث المباشر، وأنماط التفكير، والتخزين المؤقت للمطالبات. النماذج المحددة بـ * تُستخدم في التكوين الافتراضي.
سلسلة GPT-5.2 - أحدث نموذج رائد وكيل (ديسمبر 2025)
| معرّف النموذج | التفكير | السعر (الإدخال/الإخراج/ذاكرة التخزين المؤقت) | حالة الاستخدام |
|---|---|---|---|
gpt-5.2* | ✅ | $1.75/$14.00/$0.18 | أحدث نموذج رائد مع تحسين التفكير وتكامل الأدوات، وأبحاث أمنية مستقلة |
gpt-5.2-pro | ✅ | $21.00/$168.00/$0.00 | إصدار ممتاز مع برمجة وكيلة فائقة، وأبحاث أمنية حساسة، واكتشاف الثغرات من الصفر |
gpt-5.2-codex | ✅ | $1.75/$14.00/$0.18 | أكثر النماذج تخصصًا في البرمجة تقدمًا، مع ضغط السياق، وقدرات أمن سيبراني قوية |
سلسلة GPT-5/5.1 - نماذج وكيلة متقدمة
| معرّف النموذج | التفكير | السعر (الإدخال/الإخراج/ذاكرة التخزين المؤقت) | حالة الاستخدام |
|---|---|---|---|
gpt-5 | ✅ | $1.25/$10.00/$0.13 | وكيل رائد مع تفكير متقدم، أبحاث أمنية مستقلة، تطوير سلاسل استغلال |
gpt-5.1 | ✅ | $1.25/$10.00/$0.13 | وكيل معزز مع تفكير تكيفي، اختبار اختراق متوازن مع تنسيق قوي للأدوات |
gpt-5-pro | ✅ | $15.00/$120.00/$0.00 | إصدار ممتاز مع تحسينات كبيرة في التفكير، تقليل الهلوسة، عمليات أمنية حساسة |
gpt-5-mini | ✅ | $0.25/$2.00/$0.03 | موازنة فعالة بين السرعة والذكاء، تحليل آلي للثغرات، وتوليد استغلالات |
gpt-5-nano | ✅ | $0.05/$0.40/$0.01 | الأسرع للمسح عالي الإنتاجية، الاستطلاع، الكشف الجماعي عن الثغرات |
سلسلة GPT-5/5.1 Codex - متخصصة في البرمجة
| معرّف النموذج | التفكير | السعر (الإدخال/الإخراج/ذاكرة التخزين المؤقت) | حالة الاستخدام |
|---|---|---|---|
gpt-5.1-codex-max | ✅ | $1.25/$10.00/$0.13 | تفكير معزز للبرمجة المتطورة، مع نتائج مثبتة في CVE، وتطوير منهجي للاستغلالات |
gpt-5.1-codex | ✅ | $1.25/$10.00/$0.13 | محسن قياسي للبرمجة مع تفكير قوي، توليد استغلالات، تحليل ثغرات |
gpt-5-codex | ✅ | $1.25/$10.00/$0.13 | متخصص أساسي في البرمجة، مسح الثغرات، توليد استغلالات أساسية |
gpt-5.1-codex-mini | ✅ | $0.25/$2.00/$0.03 | مضغوط عالي الأداء، سعة أكبر بـ4 مرات، اكتشاف سريع للثغرات |
codex-mini-latest | ✅ | $1.50/$6.00/$0.38 | أحدث نموذج برمجي مضغوط، مراجعة آلية للكود، تحليل أساسي للثغرات |
سلسلة GPT-4.1 - ذكاء معزز
| معرّف النموذج | التفكير | السعر (الإدخال/الإخراج/ذاكرة التخزين المؤقت) | حالة الاستخدام |
|---|---|---|---|
gpt-4.1 | ❌ | $2.00/$8.00/$0.50 | رائد معزز مع استدعاء وظائف فائق، تحليل تهديدات معقدة، تطوير استغلالات متطورة |
gpt-4.1-mini* | ❌ | $0.40/$1.60/$0.10 | أداء متوازن مع كفاءة محسنة، تقييمات أمنية روتينية، تحليل آلي للكود |
gpt-4.1-nano | ❌ | $0.10/$0.40/$0.03 | خفيف الوزن فائق السرعة، مسح أمني جماعي، استطلاع سريع، مراقبة مستمرة |
سلسلة GPT-4o - نموذج رائد متعدد الوسائط
| معرّف النموذج | التفكير | السعر (الإدخال/الإخراج/ذاكرة التخزين المؤقت) | حالة الاستخدام |
|---|---|---|---|
gpt-4o | ❌ | $2.50/$10.00/$1.25 | رائد متعدد الوسائط مع الرؤية، تحليل الصور، تقييم واجهة الويب، تنسيق متعدد الأدوات |
gpt-4o-mini | ❌ | $0.15/$0.60/$0.08 | مضغوط متعدد الوسائط مع استدعاء وظائف قوي، مسح عالي التردد، عمليات جماعية فعالة من حيث التكلفة |
سلسلة o - نماذج تفكير متقدمة
| معرّف النموذج | التفكير | السعر (الإدخال/الإخراج/ذاكرة التخزين المؤقت) | حالة الاستخدام |
|---|---|---|---|
o4-mini* | ✅ | $1.10/$4.40/$0.28 | تفكير من الجيل التالي مع سرعة محسنة، تقييمات أمنية منهجية، تطوير منهجي للاستغلالات |
o3* | ✅ | $2.00/$8.00/$0.50 | قوة تفكير متقدمة، سلاسل هجوم متعددة المراحل، تحليل عميق للثغرات |
o3-mini | ✅ | $1.10/$4.40/$0.55 | تفكير مضغوط مع تفكير ممتد، تخطيط هجوم خطوة بخطوة، ربط منطقي للثغرات |
o1 | ✅ | $15.00/$60.00/$7.50 | تفكير ممتاز بأقصى عمق، اختبار اختراق متقدم، أبحاث استغلال جديدة |
o3-pro | ✅ | $20.00/$80.00/$0.00 | أكثر التفكير تقدمًا، أرخص بنسبة 80% من o1-pro، أبحاث الثغرات من الصفر، تحقيقات أمنية حساسة |
o1-pro | ✅ | $150.00/$600.00/$0.00 | تفكير ممتاز من الجيل السابق، تحليل أمني شامل، تحديات حساسة للمهام الحرجة |
الأسعار: لكل مليون رمز (Token). تتضمن نماذج التفكير رموز التفكير في تسعير المخرجات.
[!WARNING] نماذج GPT-5 - الوصول الموثوق مطلوب*
جميع نماذج سلسلة GPT-5 (
gpt-5,gpt-5.1,gpt-5.2,gpt-5-pro,gpt-5.2-pro، وجميع متغيرات Codex) تعمل بشكل غير مستقر مع PentAGI وقد تؤدي إلى تفعيل آليات الأمان السيبراني من OpenAI دون وصول موثوق.لاستخدام نماذج GPT-5 بشكل موثوق:*
- المستخدمون الأفراد: تحقق من هويتك على chatgpt.com/cyber
- فرق المؤسسات: اطلب الوصول الموثوق عبر ممثل OpenAI الخاص بك
- باحثو الأمن: تقدم بطلب لبرنامج المنح للأمن السيبراني Cybersecurity Grant Program (يشمل 10 ملايين دولار من أرصدة API)
البدائل الموصى بها بدون تحقق:
- استخدم نماذج
o-series(o3, o4-mini, o1) لمهام التفكير- استخدم سلسلة
gpt-4.1للذكاء العام واستدعاء الوظائف- جميع نماذج o-series و gpt-4.x تعمل بموثوقية دون وصول خاص
مستويات جهد التفكير:
الميزات الرئيسية:
تتكامل PentAGI مع نماذج Claude من Anthropic، وتتميز بقدرات تفكير ممتدة متقدمة، وآليات أمان استثنائية، وفهم متطور للسياقات الأمنية المعقدة مع التخزين المؤقت للمطالبات.
| المتغير | القيمة الافتراضية | الوصف |
|---|---|---|
ANTHROPIC_API_KEY | مفتاح API لخدمات Anthropic | |
ANTHROPIC_SERVER_URL | https://api.anthropic.com/v1 | نقطة نهاية API لـ Anthropic |
ANTHROPIC_API_KEY=your_anthropic_api_key ANTHROPIC_SERVER_URL=https://api.anthropic.com/v1
ANTHROPIC_API_KEY=your_anthropic_api_key PROXY_URL=http://your-proxy:8080
> [!NOTE]
> **Google Vertex AI لـ Claude**
>
> لا يوفر PentAGI حالياً مسار تكوين مخصص لـ Google Vertex AI لنماذج Claude في ملف `.env`. لا يوجد حقل منفصل لمفتاح API لـ Vertex AI في الوقت الحالي، والمتغيرات الحالية لـ Anthropic (`ANTHROPIC_API_KEY`، `ANTHROPIC_SERVER_URL`) تستهدف واجهة برمجة التطبيقات المباشرة لـ Anthropic. المسارات المدعومة لـ Claude هي:
>
> - **واجهة Anthropic المباشرة**: `ANTHROPIC_API_KEY` و `ANTHROPIC_SERVER_URL` (انظر أعلاه).
> - **AWS Bedrock**: متغيرات `BEDROCK_*` (انظر [تكوين مزود AWS Bedrock](#aws-bedrock-provider-configuration)).
>
> إذا كنت بحاجة إلى استخدام Vertex AI اليوم، فإن الحل البديل الآمن المدعوم هو عرض Vertex AI من خلال وكيل أو بوابة متوافقة مع OpenAI تقوم بترجمة استدعاءات Vertex AI إلى تنسيق Chat Completions مع الحفاظ على سلوك الدردشة واستدعاء الأدوات الذي يعتمد عليه PentAGI، ثم توجيه مزود LLM المخصص إلى تلك البوابة عبر `LLM_SERVER_URL`، `LLM_SERVER_KEY`، و `LLM_SERVER_MODEL`. هذا المسار لا يقل موثوقية عن البوابة التي تختارها.
#### النماذج المدعومة
يدعم PentAGI 10 نماذج Claude مع استدعاء الأدوات، البث المباشر، التفكير الموسع، التفكير التكيفي، والتخزين المؤقت للمطالبات. النماذج المميزة بـ `*` تُستخدم في التكوين الافتراضي.
**سلسلة Claude 4 - أحدث النماذج (2025-2026)**
| معرف النموذج | التفكير | تاريخ الإصدار | السعر (الإدخال/الإخراج/القراءة/الكتابة من الذاكرة المؤقتة) | حالة الاستخدام |
| ----------------------- | ------- | ------------- | --------------------------------------------------------- | --------------------------------------------------- |
| `claude-opus-4-6`* | ✅ | مايو 2025 | $5.00/$25.00/$0.50/$6.25 | أكثر النماذج ذكاءً للعوامل المستقلة والبرمجة. تفكير موسع وتكيفي لتطوير الثغرات المعقدة ومحاكاة الهجمات متعددة المراحل |
| `claude-sonnet-4-6`* | ✅ | أغسطس 2025 | $3.00/$15.00/$0.30/$3.75 | أفضل توازن بين السرعة والذكاء مع التفكير التكيفي. تقييمات أمنية متعددة المراحل، تحليل ذكي للثغرات، صيد التهديدات في الوقت الفعلي |
| `claude-haiku-4-5`* | ✅ | أكتوبر 2025 | $1.00/$5.00/$0.10/$1.25 | أسرع نموذج بذكاء قريب من المستوى المتقدم. المسح عالي التردد، المراقبة في الوقت الفعلي، الاختبار الآلي الجماعي |
**النماذج القديمة - لا تزال مدعومة**
| معرف النموذج | التفكير | تاريخ الإصدار | السعر (الإدخال/الإخراج/القراءة/الكتابة من الذاكرة المؤقتة) | حالة الاستخدام |
| ----------------------- | ------- | ------------- | --------------------------------------------------------- | --------------------------------------------------- |
| `claude-sonnet-4-5` | ✅ | سبتمبر 2025 | $3.00/$15.00/$0.30/$3.75 | استدلال متطور (تم تجاوزه بواسطة 4-6). اختبار اختراق متطور، تحليل تهديدات متقدم |
| `claude-opus-4-5` | ✅ | نوفمبر 2025 | $5.00/$25.00/$0.50/$6.25 | الاستدلال النهائي (تم تجاوزه بواسطة opus-4-6). أبحاث أمنية حرجة، اكتشاف ثغرات اليوم صفر، عمليات الفريق الأحمر |
| `claude-opus-4-1` | ✅ | أغسطس 2025 | $15.00/$75.00/$1.50/$18.75 | استدلال متقدم (تم تجاوزه). اختبار اختراق معقد، نمذجة تهديدات متطورة |
| `claude-sonnet-4-0` | ✅ | مايو 2025 | $3.00/$15.00/$0.30/$3.75 | استدلال عالي الأداء (تم تجاوزه). نمذجة تهديدات معقدة، تنسيق متعدد الأدوات |
| `claude-opus-4-0` | ✅ | مايو 2025 | $15.00/$75.00/$1.50/$18.75 | الجيل الأول من Opus (تم تجاوزه). تطوير ثغرات متعددة الخطوات، سير عمل اختبار الاختراق المستقل |
**النماذج المهملة - الانتقال إلى النماذج الحالية**
| معرف النموذج | التفكير | تاريخ الإصدار | السعر (الإدخال/الإخراج/القراءة/الكتابة من الذاكرة المؤقتة) | ملاحظات |
| ----------------------------- | ------- | ------------- | --------------------------------------------------------- | -------------------------------------------- |
| `claude-3-haiku-20240307` | ❌ | مارس 2024 | $0.25/$1.25/$0.03/$0.30 | سيتم إيقافه في 19 أبريل 2026. الانتقال إلى claude-haiku-4-5 |
**الأسعار**: لكل مليون رمز. يشمل سعر التخزين المؤقت تكاليف القراءة والكتابة.
**تكوين التفكير الموسع**:
- **الحد الأقصى للرموز 4096**: المولد (claude-opus-4-6) لأقصى عمق استدلالي في تطوير الثغرات المعقدة
- **الحد الأقصى للرموز 2048**: المبرمج (claude-sonnet-4-6) لتحليل متوازن للكود وأبحاث الثغرات
- **الحد الأقصى للرموز 1024**: العامل الأساسي، المساعد، المحسّن، المستشار، العاكس، الباحث، المثبّت، المختبر الاختراقي من أجل استدلال مركز على مهام محددة
- **التفكير الموسع**: جميع نماذج Claude 4.5+ و 4.6 تدعم التفكير الموسع القابل للتكوين للمهام الاستدلالية العميقة
**الميزات الرئيسية**:
- **التفكير الموسع**: جميع نماذج Claude 4.5+ و 4.6 مع أعماق استدلال قابلة للتكوين لتحليل أمني معقد
- **التفكير التكيفي**: سلسلة Claude 4.6 (Opus/Sonnet) تضبط ديناميكياً عمق الاستدلال بناءً على تعقيد المهمة لتحقيق الأداء الأمثل
- **التخزين المؤقت للمطالبات**: تقليل كبير للتكلفة مع تسعير منفصل للقراءة/الكتابة (10% قراءة، 125% كتابة من الإدخال)
- **نافذة السياق الموسعة**: 200 ألف رمز بشكل قياسي، حتى 1 مليون رمز (إصدار تجريبي) لـ Claude Opus/Sonnet 4.6 لتحليل شامل لقاعدة الكود
- **استدعاء الأدوات**: استدعاء دوال قوي بدقة استثنائية لتنسيق أدوات الأمان
- **البث المباشر**: بث استجابات في الوقت الفعلي لسير عمل اختبار الاختراق التفاعلي
- **تصميم يركز على السلامة**: آليات سلامة مدمجة تضمن ممارسات اختبار أمني مسؤولة
- **دعم الوسائط المتعددة**: قدرات رؤية في أحدث النماذج لتحليل لقطات الشاشة وتقييم أمان واجهة المستخدم
- **الذكاء الاصطناعي الدستوري**: تدريب سلامة متقدم يوفر إرشادات أمنية موثوقة وأخلاقية
### تكوين مزود Google AI (Gemini)
يتكامل PentAGI مع نماذج Google Gemini من خلال واجهة برمجة تطبيقات Google AI، مما يوفر قدرات استدلال متعددة الوسائط متطورة مع التفكير الموسع وتخزين السياق المؤقت.
#### متغيرات التكوين
| المتغير | القيمة الافتراضية | الوصف |
| ------------------- | ----------------------------------------------- | ------------------------------- |
| `GEMINI_API_KEY` | | مفتاح API لخدمات Google AI |
| `GEMINI_SERVER_URL` | `https://generativelanguage.googleapis.com` | نقطة نهاية واجهة برمجة تطبيقات Google AI |
#### أمثلة التكوين```bash
# Basic Gemini setup
GEMINI_API_KEY=your_gemini_api_key
GEMINI_SERVER_URL=https://generativelanguage.googleapis.com
# Using with proxy
GEMINI_API_KEY=your_gemini_api_key
PROXY_URL=http://your-proxy:8080
يدعم PentAGI 9 نماذج من نماذج Gemini مع استدعاء الأدوات، والبث، وأنماط التفكير، والتخزين المؤقت للسياق. النماذج المميزة بـ * تُستخدم في التكوين الافتراضي.
سلسلة Gemini 3.5 - أحدث إصدار ثابت Flash (مايو 2026)
| معرف النموذج | التفكير | السياق | السعر (الإدخال/الإخراج/الذاكرة المؤقتة) | حالة الاستخدام |
|---|---|---|---|---|
gemini-3.5-flash* | ✅ | 1M | $1.50/$9.00/$0.15 | أكثر نموذج Flash ذكاءً مع أداء رائد مستدام في المهام الوكيلة والبرمجية، بحث وتدقيق أرضي متميز |
سلسلة Gemini 3.1 - إصدارات مستقرة Flash-Lite + Pro Preview (فبراير-مايو 2026)
| معرف النموذج | التفكير | السياق | السعر (الإدخال/الإخراج/الذاكرة المؤقتة) | حالة الاستخدام |
|---|---|---|---|---|
gemini-3.1-pro-preview* | ✅ | 1M | $2.00/$12.00/$0.20 | أحدث نموذج رئيسي مع تفكير محسّن، وكفاءة محسّنة في الرموز، مُحسّن لهندسة البرمجيات وسير العمل الوكيل |
gemini-3.1-pro-preview-customtools | ✅ | 1M | $2.00/$12.00/$0.20 | نقطة نهاية الأدوات المخصصة المُحسّنة لأدوات bash والأدوات المخصصة (view_file, search_code) ذات الأولوية |
gemini-3.1-flash-lite* | ✅ | 1M | $0.25/$1.50/$0.025 | النموذج متعدد الوسائط المستقر الأكثر فعالية من حيث التكلفة، أداء من الدرجة الأولى للمهام الوكيلة عالية الحجم والتطبيقات منخفضة زمن الاستجابة |
سلسلة Gemini 2.5 - نماذج التفكير المتقدمة (نشطة حتى 16 أكتوبر 2026)
| معرف النموذج | التفكير | السياق | السعر (الإدخال/الإخراج/الذاكرة المؤقتة) | حالة الاستخدام |
|---|---|---|---|---|
gemini-2.5-pro | ✅ | 1M | $1.25/$10.00/$0.125 | أحدث ما توصلت إليه التكنولوجيا للبرمجة المعقدة والاستدلال، ونمذجة التهديدات المتطورة |
gemini-2.5-flash | ✅ | 1M | $0.30/$2.50/$0.03 | أول نموذج استدلال هجين مع ميزانيات تفكير، أفضل أداء مقابل السعر للتقييمات واسعة النطاق |
gemini-2.5-flash-lite | ✅ | 1M | $0.10/$0.40/$0.01 | الأصغر والأكثر فعالية من حيث التكلفة للاستخدام على نطاق واسع، مسح عالي الإنتاجية |
نماذج Gemma 4 مفتوحة المصدر (Apache 2.0، الطبقة المجانية)
| معرف النموذج | التفكير | السياق | السعر (الإدخال/الإخراج/الذاكرة المؤقتة) | حالة الاستخدام |
|---|---|---|---|---|
gemma-4-31b-it | ✅ | 256K | مجاني/مجاني/مجاني | أكبر نموذج كثيف مفتوح المصدر من Gemma 4 (~31B معامل)، متعدد الوسائط نص+صورة، 140+ لغة، عمليات أمنية محلية |
gemma-4-26b-a4b-it | ✅ | 256K | مجاني/مجاني/مجاني | هندسة MoE (~26B إجمالي / ~3.8B معامل نشط)، استدلال فعال للغاية على وحدات معالجة رسومية استهلاكية للمسح المحلي عالي الإنتاجية |
الأسعار: لكل 1M رمز (الطبقة المدفوعة القياسية). نافذة السياق هي حد الرموز المُدخلة.
[!NOTE] إيقاف سلسلة Gemini 2.5
سيتم إيقاف
gemini-2.5-proوgemini-2.5-flashوgemini-2.5-flash-liteفي 16 أكتوبر 2026. الترحيلات الموصى بها:
gemini-2.5-pro←gemini-3.1-pro-preview(نفس مستوى تسعير الإدخال $2.00)gemini-2.5-flash←gemini-3.5-flash(قدرات متطورة محسّنة)gemini-2.5-flash-lite←gemini-3.1-flash-lite(نفس تسعير الإدخال $0.25)
التعيينات الافتراضية للنماذج (config.yml):
gemini-3.1-pro-preview - primary_agent، assistant، generator، refiner، adviser، coder، pentestergemini-3.5-flash - reflector، searcher، enricher، installergemini-3.1-flash-lite - simple، simple_jsonالميزات الرئيسية:
gemini-3.1-pro-preview-customtools المخصص لسير العمل الوكيل الذي يعتمد بشكل كبير على الأدوات ويفضل الأدوات المسجلة على bashمستويات جهد التفكير:
يتكامل PentAGI مع Amazon Bedrock، مما يوفر الوصول إلى أكثر من 20 نموذجًا أساسيًا من شركات الذكاء الاصطناعي الرائدة بما في ذلك Anthropic وAmazon وCohere وDeepSeek وOpenAI وQwen وMistral وMoonshot.
| المتغير | الافتراضي | الوصف |
|---|---|---|
BEDROCK_REGION | us-east-1 | منطقة AWS لخدمة Bedrock |
BEDROCK_DEFAULT_AUTH | false | استخدام سلسلة بيانات الاعتماد الافتراضية لـ AWS SDK (البيئة، دور EC2، ~/.aws/credentials) - الأولوية القصوى |
BEDROCK_BEARER_TOKEN | مصادقة رمز الحامل - أولوية على بيانات الاعتماد الثابتة | |
BEDROCK_ACCESS_KEY_ID | معرف مفتاح الوصول لـ AWS لبيانات الاعتماد الثابتة | |
BEDROCK_SECRET_ACCESS_KEY | مفتاح الوصول السري لـ AWS لبيانات الاعتماد الثابتة | |
BEDROCK_SESSION_TOKEN | رمز جلسة AWS لبيانات الاعتماد المؤقتة (اختياري، يُستخدم مع بيانات الاعتماد الثابتة) | |
BEDROCK_SERVER_URL | نقطة نهاية Bedrock مخصصة (نقاط نهاية VPC، الاختبار المحلي) |
أولوية المصادقة: BEDROCK_DEFAULT_AUTH → BEDROCK_BEARER_TOKEN → BEDROCK_ACCESS_KEY_ID+BEDROCK_SECRET_ACCESS_KEY
BEDROCK_REGION=us-east-1 BEDROCK_DEFAULT_AUTH=true
BEDROCK_REGION=us-east-1 BEDROCK_BEARER_TOKEN=your_bearer_token
BEDROCK_REGION=us-east-1 BEDROCK_ACCESS_KEY_ID=your_aws_access_key BEDROCK_SECRET_ACCESS_KEY=your_aws_secret_key
BEDROCK_REGION=us-east-1 BEDROCK_DEFAULT_AUTH=true BEDROCK_SERVER_URL=https://bedrock-runtime.us-east-1.vpce-xxx.amazonaws.com PROXY_URL=http://your-proxy:8080
#### النماذج المدعومة
يدعم PentAGI 21 نموذجاً من AWS Bedrock مع إمكانيات استدعاء الأدوات والبث والمتعددة الوسائط. النماذج المميزة بـ `*` تُستخدم في التكوين الافتراضي.
| معرف النموذج | المزود | تفكير | متعدد الوسائط | السعر (إدخال/إخراج) | حالة الاستخدام |
| ------------------------------------------------ | --------------- | -------- | ---------- | -------------------- | --------------------------------------- |
| `us.amazon.nova-2-lite-v1:0` | Amazon Nova | ❌ | ✅ | $0.33/$2.75 | استدلال تكيفي، تفكير فعال |
| `us.amazon.nova-premier-v1:0` | Amazon Nova | ❌ | ✅ | $2.50/$12.50 | استدلال معقد، تحليل متقدم |
| `us.amazon.nova-pro-v1:0` | Amazon Nova | ❌ | ✅ | $0.80/$3.20 | توازن بين الدقة والسرعة والتكلفة |
| `us.amazon.nova-lite-v1:0` | Amazon Nova | ❌ | ✅ | $0.06/$0.24 | معالجة سريعة، عمليات ذات حجم كبير |
| `us.amazon.nova-micro-v1:0` | Amazon Nova | ❌ | ❌ | $0.035/$0.14 | زمن استجابة فائق الانخفاض، مراقبة فورية |
| `us.anthropic.claude-opus-4-6-v1`* | Anthropic | ✅ | ✅ | $5.00/$25.00 | برمجة عالمية المستوى، وكلاء مؤسسيون |
| `us.anthropic.claude-sonnet-4-6` | Anthropic | ✅ | ✅ | $3.00/$15.00 | ذكاء حدودي، نطاق مؤسسي |
| `us.anthropic.claude-opus-4-5-20251101-v1:0` | Anthropic | ✅ | ✅ | $5.00/$25.00 | تطوير برمجيات متعدد الأيام |
| `us.anthropic.claude-haiku-4-5-20251001-v1:0`* | Anthropic | ✅ | ✅ | $1.00/$5.00 | أداء شبه حدودي، سرعة عالية |
| `us.anthropic.claude-sonnet-4-5-20250929-v1:0`* | Anthropic | ✅ | ✅ | $3.00/$15.00 | وكلاء واقعيون، تميز في البرمجة |
| `us.anthropic.claude-sonnet-4-20250514-v1:0` | Anthropic | ✅ | ✅ | $3.00/$15.00 | أداء متوازن، جاهز للإنتاج |
| `us.anthropic.claude-3-5-haiku-20241022-v1:0` | Anthropic | ❌ | ❌ | $0.80/$4.00 | أسرع نموذج، فحص فعال من حيث التكلفة |
| `cohere.command-r-plus-v1:0` | Cohere | ❌ | ❌ | $3.00/$15.00 | عمليات واسعة النطاق، RAG فائق |
| `deepseek.v3.2` | DeepSeek | ❌ | ❌ | $0.58/$1.68 | استدلال سياق طويل، كفاءة |
| `openai.gpt-oss-120b-1:0`* | OpenAI (OSS) | ✅ | ❌ | $0.15/$0.60 | استدلال قوي، تحليل علمي |
| `openai.gpt-oss-20b-1:0` | OpenAI (OSS) | ✅ | ❌ | $0.07/$0.30 | برمجة فعالة، تطوير برمجيات |
| `qwen.qwen3-next-80b-a3b` | Qwen | ❌ | ❌ | $0.15/$1.20 | سياق فائق الطول، استدلال رائد |
| `qwen.qwen3-32b-v1:0` | Qwen | ❌ | ❌ | $0.15/$0.60 | استدلال متوازن، حالات استخدام بحثية |
| `qwen.qwen3-coder-30b-a3b-v1:0` | Qwen | ❌ | ❌ | $0.15/$0.60 | برمجة بالأسلوب، لغة طبيعية أولاً |
| `qwen.qwen3-coder-next` | Qwen | ❌ | ❌ | $0.45/$1.80 | استخدام الأدوات، استدعاء دالة محسن |
| `mistral.mistral-large-3-675b-instruct` | Mistral | ❌ | ✅ | $4.00/$12.00 | متعدد الوسائط متقدم، سياق طويل |
| `moonshotai.kimi-k2.5` | Moonshot | ❌ | ✅ | $0.60/$3.00 | الرؤية واللغة والبرمجة في نموذج واحد |
**الأسعار**: لكل 1M رمز. النماذج التي تدعم التفكير/الاستدلال تتحمل تكاليف حوسبة إضافية خلال مرحلة التفكير.
#### النماذج التي تم اختبارها ولكنها غير متوافقة
تم اختبار بعض نماذج AWS Bedrock ولكنها **غير مدعومة** بسبب قيود تقنية:
| عائلة النموذج | سبب عدم التوافق |
| ------------------------- | ----------------------------------------------------------------------------------------- |
| **GLM (Z.AI)** | تنسيق استدعاء الأداة غير متوافق مع Converse API (يتوقع سلسلة نصية بدلاً من JSON) |
| **AI21 Jamba** | حدود معدل صارمة (1-2 طلب/دقيقة) تمنع الاختبار الموثوق والاستخدام الإنتاجي |
| **Meta Llama 3.3/3.1** | معالجة غير مستقرة لنتائج استدعاء الأداة، تسبب أعطالاً غير متوقعة في سير العمل متعدد الخطوات |
| **Mistral Magistral** | النموذج لا يدعم استدعاء الأداة |
| **Moonshot K2-Thinking** | سلوك بث غير مستقر مع استدعاءات الأدوات، غير موثوق في الإنتاج |
| **Qwen3-VL** | بث غير مستقر مع استدعاء الأدوات، فشل مزيج الوسائط المتعددة والأدوات بشكل متقطع |
> [!IMPORTANT]
> **الحدود القصوى للمعدل وإدارة الحصة**
>
> حدود AWS Bedrock الافتراضية لنماذج Claude **مقيدة للغاية** (2-20 طلب/دقيقة للحسابات الجديدة). لاختبار الاختراق الإنتاجي:
>
> 1. **طلب زيادة الحصة** من خلال وحدة تحكم AWS Service Quotas للنماذج التي تخطط لاستخدامها
> 2. **استخدام نماذج Amazon Nova** - حصص افتراضية أعلى وأداء ممتاز
> 3. **تمكين الإنتاجية المقدمة** لاختبارات متسقة وعالية الحجم
> 4. **مراقبة الاستخدام** - يقوم AWS بالتقييد بقوة عند حدود الحصة
>
> بدون زيادات في الحصص، توقع تأخيرات متكررة وانقطاعات في سير العمل.
> [!WARNING]
> **متطلبات Converse API**
>
> يستخدم PentAGI واجهة Amazon Bedrock **Converse API** للوصول الموحد للنماذج. جميع النماذج المدعومة تتطلب:
>
> - ✅ دعم واجهة Converse/ConverseStream API
> - ✅ استخدام الأداة (استدعاء الدالة) لسير عمل اختبار الاختراق
> - ✅ استخدام الأداة مع البث للتغذية الراجعة الفورية
>
> تحقق من قدرات النموذج على: [ميزات نموذج AWS Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/conversation-inference-supported-models-features.html)
**الميزات الرئيسية**:
- **التخزين المؤقت التلقائي للمطالبات**: تقليل التكلفة بنسبة 40-70% على السياق المتكرر (نماذج Claude 4.x)
- **التفكير الموسع**: استدلال خطوة بخطوة لتحليل الأمان المعقد (Claude, DeepSeek R1, OpenAI GPT)
- **التحليل متعدد الوسائط**: معالجة لقطات الشاشة والرسوم البيانية والفيديو لاختبار شامل (Nova, Claude, Mistral, Kimi)
- **استدعاء الأدوات**: تكامل سلس مع أكثر من 20 أداة لاختبار الاختراق عبر استدعاء الدوال
- **البث**: بث الاستجابات في الوقت الحقيقي لسير عمل تقييم الأمان التفاعلي
### تكوين موفر DeepSeek
يتكامل PentAGI مع DeepSeek، مما يوفر الوصول إلى نماذج ذكاء اصطناعي متقدمة مع قدرات استدلال وبرمجة قوية وتخزين مؤقت للسياق بأسعار تنافسية.
#### متغيرات التكوين
---
[Read more](https://github.com/vxcontrol/pentagi)