AgentsOperations interface

واجهة تمثل عمليات الوكلاء.

الخصائص

createSession

ينشئ جلسة جديدة لنقطة نهاية وكيل. تقوم نقطة النهاية بحل نسخة الوكيل الاحتياطي من version_indicator وتفرض ملكية الجلسة باستخدام مفتاح العزل المقدم لعمليات تحولات الجلسة.

createVersionFromCode

ينشئ نسخة وكيل جديدة من الكود. يرفع رمز البريد وينشئ نسخة جديدة لوكيل موجود. يتم توفير ملف SHA-256 السداسي للملف البريدي في x-ms-code-zip-sha256 الرأس من أجل السلامة والتعديل. جسم الطلب هو بيانات متعددة الأجزاء/نماذج مع جزء بيانات وصفية JSON وجزء كود ثنائي (ترتيب الأجزاء غير مهم). الحد الأقصى لحجم الرفع هو 250 ميجابايت.

delete

حذف عامل. بالنسبة للوكلاء المستضافين، إذا كان أي إصدار يحتوي على جلسات نشطة، يتم رفض الطلب باستخدام HTTP 409 ما لم force يتم ضبطه على true. عندما تكون القوة صحيحة، يتم حذف جميع الجلسات المرتبطة تدريجيا مع الوكيل وإصداراته.

deleteSession

يحذف الجلسة بشكل متزامن. يعيد 204 حالة عدم وجود محتوى عندما يتم حذف الجلسة أو عدم وجودها.

deleteSessionFile

يحذف الملف أو الدليل المحدد من صندوق الرمل الخاص بالجلسة. عندما recursive يكون خاطئا، فإن حذف مجلد غير فارغ يعطي 409 تعارض.

deleteVersion

حذف إصدار معين من وكيل. بالنسبة للوكلاء المستضيفين، إذا كان الإصدار يحتوي على جلسات نشطة، يتم رفض الطلب باستخدام HTTP 409 ما لم force يتم ضبطه على true. عندما تكون القوة صحيحة، يتم حذف جميع الجلسات المرتبطة بهذا الإصدار بشكل متسلسل.

disable

يعطل الوكيل المحدد، مما يمنعه من قبول جلسات جديدة أو معالجة الطلبات. يسمح للجلسات النشطة الحالية بالاستنزاف بشكل سلبي لكن لا يمكن إنشاء جلسات جديدة. هذه العملية غير فعالة — تعطيل عامل معاق بالفعل يعيد النجاح دون أي آثار جانبية.

downloadAgentCode

يقوم بتحميل رمز البريد الخاص بوكيل مستضاف قائم على الرموز البرمجية. يعيد رمز الملف المضغوط (application/zip).

إذا agent_version تم تزويده، فإنه يعيد رمز الرمز البريدي لذلك الإصدار؛ وإلا فإنه يعيد رمز النسخة الأخيرة من الرمز البريدي.

ملخص SHA-256 للبايتات المرتجة يطابق مع content_hash النسخة code_configurationالمحلولة .

downloadSessionFile

يقوم بتنزيل الملف من مسار صندوق الرمل المحدد كتدفق ثنائي. يتم حل المسار بالنسبة لدليل الجلسة الرئيسية.

enable

تمكين الوكيل المحدد، مما يسمح له بقبول جلسات جديدة ومعالجة الطلبات. هذه العملية غير فعالة — مما يتيح للعامل المفعل بالفعل النجاح دون أي آثار جانبية.

get

يسترجع العامل.

getSession

يسترجع تفاصيل جلسة الوكيل المستضافة حسب اسم الوكيل ومعرف الجلسة.

getSessionLogStream

يبث سجلات وحدة التحكم (stdout / stderr) لجلسة وكيل مستضافة محددة كبث أحداث Server-Sent (SSE).

يحتوي كل إطار SSE على:

  • event: دائما "log"
  • data: سطر سجل نصي عادي (حاليا منسق بتنسيق JSON، لكن المخطط ليس تعاقديا وقد يتضمن مفاتيح إضافية أو يتغير التنسيق مع مرور الوقت — يجب على العملاء معاملته كسلسلة غير شفافة)

أمثلة على إطارات SSE:

event: log
data: {"timestamp":"2026-03-10T09:33:17.121Z","stream":"stdout","message":"Starting FoundryCBAgent server on port 8088"}

event: log
data: {"timestamp":"2026-03-10T09:33:17.130Z","stream":"stderr","message":"INFO: Application startup complete."}

event: log
data: {"timestamp":"2026-03-10T09:34:52.714Z","stream":"status","message":"Successfully connected to container"}

event: log
data: {"timestamp":"2026-03-10T09:35:52.714Z","stream":"status","message":"No logs since last 60 seconds"}

يبقى البث مفتوحا حتى ينفصل العميل الاتصال أو ينهي الخادم الاتصال. يجب على العملاء التعامل مع إعادة الاتصال حسب الحاجة.

getVersion

استرداد إصدار معين من وكيل.

list

ترجع قائمة كافة الوكلاء.

listSessionFiles

يعيد الملفات والأدلة عند المسار المحدد في صندوق اللعب الخاص بالجلسة. تتضمن الاستجابة فقط الأبناء المباشرين للدليل المستهدف وتعود افتراضيا إلى دليل الجلسة الرئيسي عندما لا يتم توفير أي مسار.

listSessions

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

listVersions

إرجاع قائمة إصدارات العامل.

patchAgentObject

يعدل وكيل موجود.

stopSession

ينهي جلسة الوكيل المستضافة المحددة ويعيد 204 بدون محتوى عند نجاح الطلب.

updateAgent

يطبق تحديث دمج وتصحيح على تكوين نقطة نهاية الوكيل المحدد.

uploadSessionFile

يرفع محتوى الملفات الثنائية إلى المسار المحدد في صندوق رمل الجلسة. تخزن الخدمة الملف بالنسبة لمجلد الجلسة الرئيسي وترفض الحمولات التي تزيد حجمها عن 50 ميجابايت.

الأساليب

create(string, AgentDefinitionUnion, AgentsCreateOptionalParams)

إنشاء العامل.

create(string, string, Record<string, unknown>, AgentsCreateAgentFromManifestOptionalParams)

ينشئ وكيلا من بيان.

createVersion(string, AgentDefinitionUnion, AgentsCreateVersionOptionalParams)

إنشاء إصدار عامل جديد.

createVersion(string, string, Record<string, unknown>, AgentsCreateAgentVersionFromManifestOptionalParams)

قم بإنشاء إصدار وكيل جديد من بيان.

update(string, AgentDefinitionUnion, AgentsUpdateOptionalParams)

يقوم بتحديث العامل عن طريق إضافة إصدار جديد إذا كانت هناك أي تغييرات على تعريف العامل. إذا لم تكن هناك تغييرات، فترجع إصدار العامل الموجود.

update(string, string, Record<string, unknown>, AgentsUpdateAgentFromManifestOptionalParams)

يحدث العامل من بيان عن طريق إضافة إصدار جديد إذا كانت هناك أي تغييرات على تعريف العامل. إذا لم تكن هناك تغييرات، فترجع إصدار العامل الموجود.

تفاصيل الخاصية

createSession

ينشئ جلسة جديدة لنقطة نهاية وكيل. تقوم نقطة النهاية بحل نسخة الوكيل الاحتياطي من version_indicator وتفرض ملكية الجلسة باستخدام مفتاح العزل المقدم لعمليات تحولات الجلسة.

createSession: (agentName: string, versionIndicator: VersionIndicatorUnion, options?: AgentsCreateSessionOptionalParams) => Promise<AgentSessionResource>

قيمة الخاصية

(agentName: string, versionIndicator: VersionIndicatorUnion, options?: AgentsCreateSessionOptionalParams) => Promise<AgentSessionResource>

createVersionFromCode

ينشئ نسخة وكيل جديدة من الكود. يرفع رمز البريد وينشئ نسخة جديدة لوكيل موجود. يتم توفير ملف SHA-256 السداسي للملف البريدي في x-ms-code-zip-sha256 الرأس من أجل السلامة والتعديل. جسم الطلب هو بيانات متعددة الأجزاء/نماذج مع جزء بيانات وصفية JSON وجزء كود ثنائي (ترتيب الأجزاء غير مهم). الحد الأقصى لحجم الرفع هو 250 ميجابايت.

createVersionFromCode: (agentName: string, codeZipSha256: string, content: CreateAgentVersionFromCodeContent, options?: AgentsCreateVersionFromCodeOptionalParams) => Promise<AgentVersion>

قيمة الخاصية

(agentName: string, codeZipSha256: string, content: CreateAgentVersionFromCodeContent, options?: AgentsCreateVersionFromCodeOptionalParams) => Promise<AgentVersion>

delete

حذف عامل. بالنسبة للوكلاء المستضافين، إذا كان أي إصدار يحتوي على جلسات نشطة، يتم رفض الطلب باستخدام HTTP 409 ما لم force يتم ضبطه على true. عندما تكون القوة صحيحة، يتم حذف جميع الجلسات المرتبطة تدريجيا مع الوكيل وإصداراته.

delete: (agentName: string, options?: AgentsDeleteOptionalParams) => Promise<DeleteAgentResponse>

قيمة الخاصية

(agentName: string, options?: AgentsDeleteOptionalParams) => Promise<DeleteAgentResponse>

deleteSession

يحذف الجلسة بشكل متزامن. يعيد 204 حالة عدم وجود محتوى عندما يتم حذف الجلسة أو عدم وجودها.

deleteSession: (agentName: string, sessionId: string, options?: AgentsDeleteSessionOptionalParams) => Promise<void>

قيمة الخاصية

(agentName: string, sessionId: string, options?: AgentsDeleteSessionOptionalParams) => Promise<void>

deleteSessionFile

يحذف الملف أو الدليل المحدد من صندوق الرمل الخاص بالجلسة. عندما recursive يكون خاطئا، فإن حذف مجلد غير فارغ يعطي 409 تعارض.

deleteSessionFile: (agentName: string, sessionId: string, path: string, options?: AgentsDeleteSessionFileOptionalParams) => Promise<void>

قيمة الخاصية

(agentName: string, sessionId: string, path: string, options?: AgentsDeleteSessionFileOptionalParams) => Promise<void>

deleteVersion

حذف إصدار معين من وكيل. بالنسبة للوكلاء المستضيفين، إذا كان الإصدار يحتوي على جلسات نشطة، يتم رفض الطلب باستخدام HTTP 409 ما لم force يتم ضبطه على true. عندما تكون القوة صحيحة، يتم حذف جميع الجلسات المرتبطة بهذا الإصدار بشكل متسلسل.

deleteVersion: (agentName: string, agentVersion: string, options?: AgentsDeleteVersionOptionalParams) => Promise<DeleteAgentVersionResponse>

قيمة الخاصية

(agentName: string, agentVersion: string, options?: AgentsDeleteVersionOptionalParams) => Promise<DeleteAgentVersionResponse>

disable

يعطل الوكيل المحدد، مما يمنعه من قبول جلسات جديدة أو معالجة الطلبات. يسمح للجلسات النشطة الحالية بالاستنزاف بشكل سلبي لكن لا يمكن إنشاء جلسات جديدة. هذه العملية غير فعالة — تعطيل عامل معاق بالفعل يعيد النجاح دون أي آثار جانبية.

disable: (agentName: string, options?: AgentsDisableOptionalParams) => Promise<void>

قيمة الخاصية

(agentName: string, options?: AgentsDisableOptionalParams) => Promise<void>

downloadAgentCode

يقوم بتحميل رمز البريد الخاص بوكيل مستضاف قائم على الرموز البرمجية. يعيد رمز الملف المضغوط (application/zip).

إذا agent_version تم تزويده، فإنه يعيد رمز الرمز البريدي لذلك الإصدار؛ وإلا فإنه يعيد رمز النسخة الأخيرة من الرمز البريدي.

ملخص SHA-256 للبايتات المرتجة يطابق مع content_hash النسخة code_configurationالمحلولة .

downloadAgentCode: (agentName: string, options?: AgentsDownloadAgentCodeOptionalParams) => Promise<AgentsDownloadAgentCodeResponse>

قيمة الخاصية

(agentName: string, options?: AgentsDownloadAgentCodeOptionalParams) => Promise<AgentsDownloadAgentCodeResponse>

downloadSessionFile

يقوم بتنزيل الملف من مسار صندوق الرمل المحدد كتدفق ثنائي. يتم حل المسار بالنسبة لدليل الجلسة الرئيسية.

downloadSessionFile: (agentName: string, sessionId: string, path: string, options?: AgentsDownloadSessionFileOptionalParams) => Promise<AgentsDownloadSessionFileResponse>

قيمة الخاصية

(agentName: string, sessionId: string, path: string, options?: AgentsDownloadSessionFileOptionalParams) => Promise<AgentsDownloadSessionFileResponse>

enable

تمكين الوكيل المحدد، مما يسمح له بقبول جلسات جديدة ومعالجة الطلبات. هذه العملية غير فعالة — مما يتيح للعامل المفعل بالفعل النجاح دون أي آثار جانبية.

enable: (agentName: string, options?: AgentsEnableOptionalParams) => Promise<void>

قيمة الخاصية

(agentName: string, options?: AgentsEnableOptionalParams) => Promise<void>

get

يسترجع العامل.

get: (agentName: string, options?: AgentsGetOptionalParams) => Promise<Agent>

قيمة الخاصية

(agentName: string, options?: AgentsGetOptionalParams) => Promise<Agent>

getSession

يسترجع تفاصيل جلسة الوكيل المستضافة حسب اسم الوكيل ومعرف الجلسة.

getSession: (agentName: string, sessionId: string, options?: AgentsGetSessionOptionalParams) => Promise<AgentSessionResource>

قيمة الخاصية

(agentName: string, sessionId: string, options?: AgentsGetSessionOptionalParams) => Promise<AgentSessionResource>

getSessionLogStream

يبث سجلات وحدة التحكم (stdout / stderr) لجلسة وكيل مستضافة محددة كبث أحداث Server-Sent (SSE).

يحتوي كل إطار SSE على:

  • event: دائما "log"
  • data: سطر سجل نصي عادي (حاليا منسق بتنسيق JSON، لكن المخطط ليس تعاقديا وقد يتضمن مفاتيح إضافية أو يتغير التنسيق مع مرور الوقت — يجب على العملاء معاملته كسلسلة غير شفافة)

أمثلة على إطارات SSE:

event: log
data: {"timestamp":"2026-03-10T09:33:17.121Z","stream":"stdout","message":"Starting FoundryCBAgent server on port 8088"}

event: log
data: {"timestamp":"2026-03-10T09:33:17.130Z","stream":"stderr","message":"INFO: Application startup complete."}

event: log
data: {"timestamp":"2026-03-10T09:34:52.714Z","stream":"status","message":"Successfully connected to container"}

event: log
data: {"timestamp":"2026-03-10T09:35:52.714Z","stream":"status","message":"No logs since last 60 seconds"}

يبقى البث مفتوحا حتى ينفصل العميل الاتصال أو ينهي الخادم الاتصال. يجب على العملاء التعامل مع إعادة الاتصال حسب الحاجة.

getSessionLogStream: (agentName: string, agentVersion: string, sessionId: string, options?: AgentsGetSessionLogStreamOptionalParams) => Promise<AgentsDownloadSessionFileResponse>

قيمة الخاصية

(agentName: string, agentVersion: string, sessionId: string, options?: AgentsGetSessionLogStreamOptionalParams) => Promise<AgentsDownloadSessionFileResponse>

getVersion

استرداد إصدار معين من وكيل.

getVersion: (agentName: string, agentVersion: string, options?: AgentsGetVersionOptionalParams) => Promise<AgentVersion>

قيمة الخاصية

(agentName: string, agentVersion: string, options?: AgentsGetVersionOptionalParams) => Promise<AgentVersion>

list

ترجع قائمة كافة الوكلاء.

list: (options?: AgentsListOptionalParams) => PagedAsyncIterableIterator<Agent, Agent[], PageSettings>

قيمة الخاصية

(options?: AgentsListOptionalParams) => PagedAsyncIterableIterator<Agent, Agent[], PageSettings>

listSessionFiles

يعيد الملفات والأدلة عند المسار المحدد في صندوق اللعب الخاص بالجلسة. تتضمن الاستجابة فقط الأبناء المباشرين للدليل المستهدف وتعود افتراضيا إلى دليل الجلسة الرئيسي عندما لا يتم توفير أي مسار.

listSessionFiles: (agentName: string, sessionId: string, options?: AgentsListSessionFilesOptionalParams) => PagedAsyncIterableIterator<SessionDirectoryEntry, SessionDirectoryEntry[], PageSettings>

قيمة الخاصية

(agentName: string, sessionId: string, options?: AgentsListSessionFilesOptionalParams) => PagedAsyncIterableIterator<SessionDirectoryEntry, SessionDirectoryEntry[], PageSettings>

listSessions

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

listSessions: (agentName: string, options?: AgentsListSessionsOptionalParams) => PagedAsyncIterableIterator<AgentSessionResource, AgentSessionResource[], PageSettings>

قيمة الخاصية

(agentName: string, options?: AgentsListSessionsOptionalParams) => PagedAsyncIterableIterator<AgentSessionResource, AgentSessionResource[], PageSettings>

listVersions

إرجاع قائمة إصدارات العامل.

listVersions: (agentName: string, options?: AgentsListVersionsOptionalParams) => PagedAsyncIterableIterator<AgentVersion, AgentVersion[], PageSettings>

قيمة الخاصية

(agentName: string, options?: AgentsListVersionsOptionalParams) => PagedAsyncIterableIterator<AgentVersion, AgentVersion[], PageSettings>

patchAgentObject

يعدل وكيل موجود.

patchAgentObject: (agentName: string, options?: AgentsUpdateAgentObjectOptionalParams) => Promise<Agent>

قيمة الخاصية

(agentName: string, options?: AgentsUpdateAgentObjectOptionalParams) => Promise<Agent>

stopSession

ينهي جلسة الوكيل المستضافة المحددة ويعيد 204 بدون محتوى عند نجاح الطلب.

stopSession: (agentName: string, sessionId: string, options?: AgentsStopSessionOptionalParams) => Promise<void>

قيمة الخاصية

(agentName: string, sessionId: string, options?: AgentsStopSessionOptionalParams) => Promise<void>

updateAgent

يطبق تحديث دمج وتصحيح على تكوين نقطة نهاية الوكيل المحدد.

updateAgent: (agentName: string, options?: AgentsUpdateAgentObjectOptionalParams) => Promise<Agent>

قيمة الخاصية

(agentName: string, options?: AgentsUpdateAgentObjectOptionalParams) => Promise<Agent>

uploadSessionFile

يرفع محتوى الملفات الثنائية إلى المسار المحدد في صندوق رمل الجلسة. تخزن الخدمة الملف بالنسبة لمجلد الجلسة الرئيسي وترفض الحمولات التي تزيد حجمها عن 50 ميجابايت.

uploadSessionFile: (agentName: string, sessionId: string, path: string, content: Uint8Array, options?: AgentsUploadSessionFileOptionalParams) => Promise<SessionFileWriteResponse>

قيمة الخاصية

(agentName: string, sessionId: string, path: string, content: Uint8Array, options?: AgentsUploadSessionFileOptionalParams) => Promise<SessionFileWriteResponse>

تفاصيل الأسلوب

create(string, AgentDefinitionUnion, AgentsCreateOptionalParams)

إنشاء العامل.

function create(name: string, definition: AgentDefinitionUnion, options?: AgentsCreateOptionalParams): Promise<Agent>

المعلمات

name

string

المرتجعات

Promise<Agent>

create(string, string, Record<string, unknown>, AgentsCreateAgentFromManifestOptionalParams)

ينشئ وكيلا من بيان.

function create(name: string, manifestId: string, parameterValues: Record<string, unknown>, options?: AgentsCreateAgentFromManifestOptionalParams): Promise<Agent>

المعلمات

name

string

manifestId

string

parameterValues

Record<string, unknown>

المرتجعات

Promise<Agent>

createVersion(string, AgentDefinitionUnion, AgentsCreateVersionOptionalParams)

إنشاء إصدار عامل جديد.

function createVersion(agentName: string, definition: AgentDefinitionUnion, options?: AgentsCreateVersionOptionalParams): Promise<AgentVersion>

المعلمات

agentName

string

المرتجعات

Promise<AgentVersion>

createVersion(string, string, Record<string, unknown>, AgentsCreateAgentVersionFromManifestOptionalParams)

قم بإنشاء إصدار وكيل جديد من بيان.

function createVersion(agentName: string, manifestId: string, parameterValues: Record<string, unknown>, options?: AgentsCreateAgentVersionFromManifestOptionalParams): Promise<AgentVersion>

المعلمات

agentName

string

manifestId

string

parameterValues

Record<string, unknown>

المرتجعات

Promise<AgentVersion>

update(string, AgentDefinitionUnion, AgentsUpdateOptionalParams)

يقوم بتحديث العامل عن طريق إضافة إصدار جديد إذا كانت هناك أي تغييرات على تعريف العامل. إذا لم تكن هناك تغييرات، فترجع إصدار العامل الموجود.

function update(agentName: string, definition: AgentDefinitionUnion, options?: AgentsUpdateOptionalParams): Promise<Agent>

المعلمات

agentName

string

المرتجعات

Promise<Agent>

update(string, string, Record<string, unknown>, AgentsUpdateAgentFromManifestOptionalParams)

يحدث العامل من بيان عن طريق إضافة إصدار جديد إذا كانت هناك أي تغييرات على تعريف العامل. إذا لم تكن هناك تغييرات، فترجع إصدار العامل الموجود.

function update(agentName: string, manifestId: string, parameterValues: Record<string, unknown>, options?: AgentsUpdateAgentFromManifestOptionalParams): Promise<Agent>

المعلمات

agentName

string

manifestId

string

parameterValues

Record<string, unknown>

المرتجعات

Promise<Agent>