Skip to main content
loushoAgent() لـ Svelte هو خطّاف React في صورة مخزن (store): المصادر نفسها، والحالة نفسها، والإجراءات نفسها، فوق بث الأحداث محدَّد الأنواع نفسه. اقرأ React لتعرف معنى كل حقل، ونوعَي المصدر، وطريقة عمل الموافقات، وجانب الخادم؛ أما هذه الصفحة فتغطي ما يختلف. يقع في المسار الفرعي @lousho/build-ai-agent/svelte. ينفّذ المخزن عقد المخازن في Svelte (subscribe(run) => unsubscribe) يدويًا، فيعمل مع $agent في Svelte 4 و 5 ولا يحتاج إلى استيراد svelte: لا توجد اعتمادية نظيرة تثبّتها.
وفي المكوّن (قالب Svelte، ولذلك لا يخضع لفحص الأنواع مع بقية المقتطفات هنا):

ما يختلف عن React

  • الحالة هي قيمة المخزن. $agent هو كائن الحالة في خطّاف React: messages وstatus وpendingApproval وerror وusage وlastEvent. والأوامر (send وstop وapprove وreject وanswer) موجودة على المخزن نفسه بتواقيع خطّاف React؛ ولا تحتاج إلى مشترك.
  • reset() يُلغي التشغيل الجاري، وينسى الجلسة العاملة داخل العملية ({ agent, sessionId } يبدأ محادثة جديدة) ويمسح الحالة.
  • المصدر والخيارات قيم عادية، تُقرأ عند بدء الدورة. لاستخدام وكيل آخر أو url آخر، أنشئ مخزنًا آخر.
  • التنظيف هو إلغاء الاشتراك. stop() يُلغي الطلب الجاري، وكذلك يفعل زوال آخر مشترك (حين يُدمَّر المكوّن الذي يستخدم $agent). لا توجد destroy(): هكذا توقف مخازن Svelte عملها. والمخزن الذي لا يشترك فيه أحد يظل ينفّذ دورة بدأتها بـ send()؛ فاستدعِ stop() بنفسك إن تخليت عنه.
المختزِل (reducer) ومحلِّل البث مصدَّران من هذا المسار الفرعي أيضًا (reduceAgentEvents وinitialAgentUIState وparseEventStream)، وهما نفساهما الموجودان في @lousho/build-ai-agent/react.