Skip to content
تم إنشاء هذه الصفحة وترجمتها بمساعدة الذكاء الاصطناعي. إذا لاحظت أي أخطاء، لا تتردد في المساهمة في تحسينها. تعديل على GitHub

مرجع الإعدادات

تُوثّق هذه الصفحة كل قسم وحقل في ملف config.toml الخاص بـ PRX. الحقول المعلّمة بقيمة افتراضية يمكن حذفها -- سيستخدم PRX القيمة الافتراضية.

المستوى الأعلى (الإعدادات الافتراضية)

تظهر هذه الحقول على المستوى الجذر من config.toml، خارج أي عنوان قسم.

الحقلالنوعالقيمة الافتراضيةالوصف
default_providerstring"openrouter"معرّف المزود أو اسمه المستعار (مثل "anthropic"، "openai"، "ollama")
default_modelstring"anthropic/claude-sonnet-4.6"معرّف النموذج الموجّه عبر المزود المحدد
default_temperaturefloat0.7درجة حرارة العينات (0.0--2.0). أقل = أكثر حتمية
api_keystring?nullمفتاح API للمزود المحدد. يُتجاوز بمتغيرات البيئة الخاصة بالمزود
api_urlstring?nullتجاوز عنوان URL الأساسي لواجهة API الخاصة بالمزود (مثل نقطة نهاية Ollama البعيدة)
toml
default_provider = "anthropic"
default_model = "anthropic/claude-sonnet-4-6"
default_temperature = 0.7
api_key = "sk-ant-..."

[gateway]

خادم بوابة HTTP لنقاط نهاية webhook والاقتران وواجهة الويب البرمجية.

الحقلالنوعالقيمة الافتراضيةالوصف
hoststring"127.0.0.1"عنوان الربط. استخدم "0.0.0.0" للوصول العام
portu1616830منفذ الاستماع
require_pairingbooltrueطلب اقتران الجهاز قبل قبول طلبات API
allow_public_bindboolfalseالسماح بالربط على عنوان غير localhost بدون نفق
pair_rate_limit_per_minuteu325الحد الأقصى لطلبات الاقتران في الدقيقة لكل عميل
webhook_rate_limit_per_minuteu3260الحد الأقصى لطلبات webhook في الدقيقة لكل عميل
api_rate_limit_per_minuteu32120الحد الأقصى لطلبات API في الدقيقة لكل رمز مصادقة
trust_forwarded_headersboolfalseالوثوق بترويسات X-Forwarded-For / X-Real-IP (فعّل فقط خلف وكيل عكسي)
request_timeout_secsu64300مهلة معالج HTTP بالثواني
idempotency_ttl_secsu64300مدة صلاحية مفاتيح تفرد webhook
toml
[gateway]
host = "127.0.0.1"
port = 16830
require_pairing = true
api_rate_limit_per_minute = 120

WARNING

تغيير host أو port يتطلب إعادة تشغيل كاملة. تُربط هذه القيم عند بدء التشغيل ولا يمكن إعادة تحميلها فوريًا.

[channels_config]

إعدادات القنوات على المستوى الأعلى. القنوات الفردية هي أقسام فرعية متداخلة.

الحقلالنوعالقيمة الافتراضيةالوصف
clibooltrueتفعيل قناة سطر الأوامر التفاعلية
message_timeout_secsu64300مهلة معالجة الرسالة (النموذج اللغوي + الأدوات)

[channels_config.telegram]

الحقلالنوعالقيمة الافتراضيةالوصف
bot_tokenstring(مطلوب)رمز Telegram Bot API من @BotFather
allowed_usersstring[][]معرّفات أو أسماء مستخدمي Telegram المسموح بهم. فارغ = رفض الكل
mention_onlyboolfalseفي المجموعات، الرد فقط على الرسائل التي تذكر البوت بـ @
stream_mode"off" | "partial""off"وضع البث: off يرسل الاستجابة كاملة، partial يحرر مسودة تدريجيًا
draft_update_interval_msu641000الحد الأدنى للفاصل بين تحريرات المسودة (حماية من حد الطلبات)
interrupt_on_new_messageboolfalseإلغاء الاستجابة الجارية عندما يرسل المستخدم نفسه رسالة جديدة
toml
[channels_config.telegram]
bot_token = "123456:ABC-DEF..."
allowed_users = ["alice", "bob"]
mention_only = true
stream_mode = "partial"

[channels_config.discord]

الحقلالنوعالقيمة الافتراضيةالوصف
bot_tokenstring(مطلوب)رمز بوت Discord من بوابة المطورين
guild_idstring?nullتقييد لخادم (guild) واحد
allowed_usersstring[][]معرّفات مستخدمي Discord المسموح بهم. فارغ = رفض الكل
listen_to_botsboolfalseمعالجة رسائل البوتات الأخرى (تُتجاهل رسائل البوت نفسه دائمًا)
mention_onlyboolfalseالرد فقط على الإشارات بـ @
toml
[channels_config.discord]
bot_token = "MTIz..."
guild_id = "987654321"
allowed_users = ["111222333"]
mention_only = true

[channels_config.slack]

الحقلالنوعالقيمة الافتراضيةالوصف
bot_tokenstring(مطلوب)رمز OAuth لبوت Slack (xoxb-...)
app_tokenstring?nullرمز مستوى التطبيق لوضع Socket (xapp-...)
channel_idstring?nullتقييد لقناة واحدة
allowed_usersstring[][]معرّفات مستخدمي Slack المسموح بهم. فارغ = رفض الكل
mention_onlyboolfalseالرد فقط على الإشارات بـ @ في المجموعات

[channels_config.lark]

الحقلالنوعالقيمة الافتراضيةالوصف
app_idstring(مطلوب)معرّف تطبيق Lark/Feishu
app_secretstring(مطلوب)سر تطبيق Lark/Feishu
encrypt_keystring?nullمفتاح تشفير الأحداث
verification_tokenstring?nullرمز التحقق من الأحداث
allowed_usersstring[][]معرّفات المستخدمين المسموح بهم. فارغ = رفض الكل
use_feishuboolfalseاستخدام نقاط نهاية API الخاصة بـ Feishu (الصين) بدلاً من Lark (الدولية)
receive_mode"websocket" | "webhook""websocket"وضع استقبال الرسائل
portu16?nullمنفذ استماع webhook (فقط لوضع webhook)
mention_onlyboolfalseالرد فقط على الإشارات بـ @

يدعم PRX أيضًا هذه القنوات الإضافية (مضبوطة تحت [channels_config.*]):

  • Matrix -- homeserver، access_token، قوائم سماح الغرف
  • Signal -- عبر واجهة REST API لـ signal-cli
  • WhatsApp -- واجهة Cloud API أو وضع Web
  • iMessage -- macOS فقط، قوائم سماح جهات الاتصال
  • DingTalk -- وضع البث مع client_id / client_secret
  • QQ -- حزمة SDK البوت الرسمية مع app_id / app_secret
  • Email -- IMAP/SMTP
  • IRC -- الخادم، القناة، الاسم المستعار
  • Mattermost -- عنوان URL + رمز البوت
  • Nextcloud Talk -- عنوان URL الأساسي + رمز التطبيق
  • Webhook -- webhook واردة عامة

[memory]

واجهة الذاكرة لسجل المحادثات والمعرفة والتضمينات.

الحقلالنوعالقيمة الافتراضيةالوصف
backendstring"sqlite"نوع الواجهة: "sqlite"، "lucid"، "postgres"، "markdown"، "none"
auto_savebooltrueحفظ مدخلات محادثة المستخدم تلقائيًا في الذاكرة
acl_enabledboolfalseتفعيل قوائم التحكم بالوصول للذاكرة
hygiene_enabledbooltrueتشغيل الأرشفة الدورية وتنظيف الاحتفاظ
archive_after_daysu327أرشفة الملفات اليومية/الجلسات الأقدم من هذا
purge_after_daysu3230حذف الملفات المؤرشفة الأقدم من هذا
conversation_retention_daysu323SQLite: تنظيف صفوف المحادثة الأقدم من هذا
daily_retention_daysu327SQLite: تنظيف الصفوف اليومية الأقدم من هذا
embedding_providerstring"none"مزود التضمينات: "none"، "openai"، "custom:<URL>"
embedding_modelstring"text-embedding-3-small"اسم نموذج التضمينات
embedding_dimensionsusize1536أبعاد متجه التضمينات
vector_weightf640.7وزن التشابه المتجهي في البحث الهجين (0.0--1.0)
keyword_weightf640.3وزن بحث الكلمات المفتاحية BM25 (0.0--1.0)
min_relevance_scoref640.4الحد الأدنى للنقاط الهجينة لتضمين الذاكرة في السياق
embedding_cache_sizeusize10000الحد الأقصى لمدخلات ذاكرة التضمينات المؤقتة قبل إخلاء LRU
snapshot_enabledboolfalseتصدير الذكريات الأساسية إلى MEMORY_SNAPSHOT.md
snapshot_on_hygieneboolfalseتشغيل اللقطة أثناء مرور التنظيف
auto_hydratebooltrueالتحميل التلقائي من اللقطة عند غياب brain.db
toml
[memory]
backend = "sqlite"
auto_save = true
embedding_provider = "openai"
embedding_model = "text-embedding-3-small"
embedding_dimensions = 1536
vector_weight = 0.7
keyword_weight = 0.3

[router]

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

الحقلالنوعالقيمة الافتراضيةالوصف
enabledboolfalseتفعيل التوجيه الإرشادي
alphaf320.0وزن نقاط التشابه
betaf320.5وزن نقاط القدرة
gammaf320.3وزن نقاط Elo
deltaf320.1معامل عقوبة التكلفة
epsilonf320.1معامل عقوبة زمن الاستجابة
knn_enabledboolfalseتفعيل التوجيه الدلالي KNN من السجل
knn_min_recordsusize10الحد الأدنى لسجلات التاريخ قبل أن يؤثر KNN على التوجيه
knn_kusize7عدد أقرب الجيران للتصويت

[router.automix]

سياسة التصعيد التكيفية: البدء بنموذج رخيص، والتصعيد إلى نموذج متميز عند انخفاض الثقة.

الحقلالنوعالقيمة الافتراضيةالوصف
enabledboolfalseتفعيل تصعيد Automix
confidence_thresholdf320.7التصعيد عند انخفاض الثقة دون هذا (0.0--1.0)
cheap_model_tiersstring[][]طبقات النماذج المعتبرة "رخيصة أولاً"
premium_model_idstring""النموذج المستخدم للتصعيد
toml
[router]
enabled = true
beta = 0.5
gamma = 0.3
knn_enabled = true

[router.automix]
enabled = true
confidence_threshold = 0.7
premium_model_id = "anthropic/claude-sonnet-4-6"

[security]

الأمان على مستوى نظام التشغيل: صندوق الرمل، حدود الموارد، وتسجيل التدقيق.

[security.sandbox]

الحقلالنوعالقيمة الافتراضيةالوصف
enabledbool?null (اكتشاف تلقائي)تفعيل عزل صندوق الرمل
backendstring"auto"الواجهة: "auto"، "landlock"، "firejail"، "bubblewrap"، "docker"، "none"
firejail_argsstring[][]وسيطات Firejail مخصصة

[security.resources]

الحقلالنوعالقيمة الافتراضيةالوصف
max_memory_mbu32512الحد الأقصى للذاكرة لكل أمر (ميجابايت)
max_cpu_time_secondsu6460الحد الأقصى لوقت المعالج لكل أمر
max_subprocessesu3210الحد الأقصى لعدد العمليات الفرعية
memory_monitoringbooltrueتفعيل مراقبة استخدام الذاكرة

[security.audit]

الحقلالنوعالقيمة الافتراضيةالوصف
enabledbooltrueتفعيل تسجيل التدقيق
log_pathstring"audit.log"مسار ملف سجل التدقيق (نسبي لمجلد الإعدادات)
max_size_mbu32100الحد الأقصى لحجم السجل قبل التدوير
sign_eventsboolfalseتوقيع الأحداث بـ HMAC لإثبات عدم التلاعب
toml
[security.sandbox]
backend = "landlock"

[security.resources]
max_memory_mb = 1024
max_cpu_time_seconds = 120

[security.audit]
enabled = true
sign_events = true

[observability]

واجهة المقاييس والتتبع الموزّع.

الحقلالنوعالقيمة الافتراضيةالوصف
backendstring"none"الواجهة: "none"، "log"، "prometheus"، "otel"
otel_endpointstring?nullعنوان URL لنقطة نهاية OTLP (مثل "http://localhost:4318")
otel_service_namestring?nullاسم الخدمة لمجمّع OTel (الافتراضي "prx")
toml
[observability]
backend = "otel"
otel_endpoint = "http://localhost:4318"
otel_service_name = "prx-production"

[mcp]

تكامل خادم بروتوكول سياق النموذج. يعمل PRX كعميل MCP، متصلاً بخوادم MCP خارجية للحصول على أدوات إضافية.

الحقلالنوعالقيمة الافتراضيةالوصف
enabledboolfalseتفعيل تكامل عميل MCP

[mcp.servers.<name>]

كل خادم مسمّى هو قسم فرعي تحت [mcp.servers].

الحقلالنوعالقيمة الافتراضيةالوصف
enabledbooltrueمفتاح تفعيل لكل خادم
transport"stdio" | "http""stdio"نوع النقل
commandstring?nullالأمر لوضع stdio
argsstring[][]وسيطات الأمر لوضع stdio
urlstring?nullعنوان URL لنقل HTTP
envmap<string, string>{}متغيرات البيئة لوضع stdio
startup_timeout_msu6410000مهلة بدء التشغيل
request_timeout_msu6430000مهلة كل طلب
tool_name_prefixstring"mcp"بادئة لأسماء الأدوات المكشوفة
allow_toolsstring[][]قائمة سماح الأدوات (فارغ = الكل)
deny_toolsstring[][]قائمة رفض الأدوات
toml
[mcp]
enabled = true

[mcp.servers.filesystem]
transport = "stdio"
command = "npx"
args = ["-y", "@modelcontextprotocol/server-filesystem", "/home/user/docs"]

[mcp.servers.remote-api]
transport = "http"
url = "http://localhost:8090/mcp"
request_timeout_ms = 60000

[browser]

إعدادات أداة أتمتة المتصفح.

الحقلالنوعالقيمة الافتراضيةالوصف
enabledboolfalseتفعيل أداة browser_open
allowed_domainsstring[][]النطاقات المسموح بها (تطابق دقيق أو نطاق فرعي)
session_namestring?nullجلسة متصفح مسمّاة للأتمتة
toml
[browser]
enabled = true
allowed_domains = ["docs.rs", "github.com", "*.example.com"]

إعدادات أدوات البحث على الويب وجلب عناوين URL.

الحقلالنوعالقيمة الافتراضيةالوصف
enabledboolfalseتفعيل أداة web_search
providerstring"duckduckgo"مزود البحث: "duckduckgo" (مجاني) أو "brave" (يتطلب مفتاح API)
brave_api_keystring?nullمفتاح API لـ Brave Search
max_resultsusize5الحد الأقصى للنتائج لكل بحث (1--10)
timeout_secsu6415مهلة الطلب
fetch_enabledbooltrueتفعيل أداة web_fetch
fetch_max_charsusize10000الحد الأقصى للأحرف المعادة من web_fetch
toml
[web_search]
enabled = true
provider = "brave"
brave_api_key = "BSA..."
max_results = 5
fetch_enabled = true

[xin]

محرك المهام المستقلة Xin (القلب/العقل) -- يجدول وينفذ المهام الخلفية بما في ذلك التطور وفحوصات اللياقة وعمليات التنظيف.

الحقلالنوعالقيمة الافتراضيةالوصف
enabledboolfalseتفعيل محرك مهام Xin
interval_minutesu325فاصل النبض بالدقائق (الحد الأدنى 1)
max_concurrentusize4الحد الأقصى لتنفيذ المهام المتزامنة لكل نبضة
max_tasksusize128الحد الأقصى لإجمالي المهام في المخزن
stale_timeout_minutesu3260الدقائق قبل تعليم المهمة الجارية كمتقادمة
builtin_tasksbooltrueالتسجيل التلقائي للمهام المدمجة في النظام
evolution_integrationboolfalseالسماح لـ Xin بإدارة جدولة التطور/اللياقة
toml
[xin]
enabled = true
interval_minutes = 10
max_concurrent = 4
builtin_tasks = true
evolution_integration = true

[cost]

حدود الإنفاق والتسعير لكل نموذج لتتبع التكاليف.

الحقلالنوعالقيمة الافتراضيةالوصف
enabledboolfalseتفعيل تتبع التكاليف
daily_limit_usdf6410.0حد الإنفاق اليومي بالدولار
monthly_limit_usdf64100.0حد الإنفاق الشهري بالدولار
warn_at_percentu880التحذير عند وصول الإنفاق لهذه النسبة من الحد
allow_overrideboolfalseالسماح للطلبات بتجاوز الميزانية مع راية --override
toml
[cost]
enabled = true
daily_limit_usd = 25.0
monthly_limit_usd = 500.0
warn_at_percent = 80

[reliability]

إعدادات سلسلة إعادة المحاولة والاحتياط لوصول مرن للمزودين.

الحقلالنوعالقيمة الافتراضيةالوصف
max_retriesu323الحد الأقصى لمحاولات إعادة المحاولة للأعطال العابرة
fallback_providersstring[][]قائمة مرتبة لأسماء المزودين الاحتياطيين
toml
[reliability]
max_retries = 3
fallback_providers = ["openai", "gemini"]

[secrets]

مخزن بيانات الاعتماد المشفرة باستخدام ChaCha20-Poly1305.

الحقلالنوعالقيمة الافتراضيةالوصف
encryptbooltrueتفعيل التشفير لمفاتيح API والرموز في الإعدادات

[auth]

إعدادات استيراد بيانات الاعتماد الخارجية.

الحقلالنوعالقيمة الافتراضيةالوصف
codex_auth_json_auto_importbooltrueالاستيراد التلقائي لبيانات OAuth من ملف auth.json الخاص بـ Codex CLI
codex_auth_json_pathstring"~/.codex/auth.json"مسار ملف المصادقة لـ Codex CLI

[proxy]

إعدادات وكيل HTTP/HTTPS/SOCKS5 الصادر.

الحقلالنوعالقيمة الافتراضيةالوصف
enabledboolfalseتفعيل الوكيل
http_proxystring?nullعنوان URL لوكيل HTTP
https_proxystring?nullعنوان URL لوكيل HTTPS
all_proxystring?nullوكيل احتياطي لجميع المخططات
no_proxystring[][]قائمة التجاوز (نفس تنسيق NO_PROXY)
scopestring"zeroclaw"النطاق: "environment"، "zeroclaw"، "services"
servicesstring[][]محددات الخدمة عندما يكون النطاق "services"
toml
[proxy]
enabled = true
https_proxy = "socks5://127.0.0.1:1080"
no_proxy = ["localhost", "127.0.0.1", "*.internal"]
scope = "zeroclaw"

Released under the Apache-2.0 License.