MCP Tools Reference: ces.googleapis.com

Alat: update_agent

Memperbarui agen yang ditentukan. Pastikan untuk selalu meneruskan mask update dalam input.

Contoh kode berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP update_agent.

Permintaan Curl
curl --location 'https://ces.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "update_agent",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Skema Input

Pesan permintaan untuk AgentService.UpdateAgent.

UpdateAgentRequest

Representasi JSON
{
  "agent": {
    object (Agent)
  },
  "updateMask": string
}
Kolom
agent

object (Agent)

Wajib. Agen yang akan diperbarui.

updateMask

string (FieldMask format)

Opsional. Mask kolom digunakan untuk mengontrol kolom mana yang diperbarui. Jika mask tidak ada, semua kolom akan diperbarui.

Ini adalah comma-separated list berisi nama kolom yang sepenuhnya memenuhi syarat. Contoh: "user.displayName,photo".

Agen

Representasi JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "modelSettings": {
    object (ModelSettings)
  },
  "instruction": string,
  "tools": [
    string
  ],
  "childAgents": [
    string
  ],
  "beforeAgentCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterAgentCallbacks": [
    {
      object (Callback)
    }
  ],
  "beforeModelCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterModelCallbacks": [
    {
      object (Callback)
    }
  ],
  "beforeToolCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterToolCallbacks": [
    {
      object (Callback)
    }
  ],
  "createTime": string,
  "updateTime": string,
  "guardrails": [
    string
  ],
  "etag": string,
  "toolsets": [
    {
      object (AgentToolset)
    }
  ],
  "generatedSummary": string,
  "transferRules": [
    {
      object (TransferRule)
    }
  ],
  "validationErrors": [
    string
  ],

  // Union field agent_type can be only one of the following:
  "llmAgent": {
    object (LlmAgent)
  },
  "remoteDialogflowAgent": {
    object (RemoteDialogflowAgent)
  },
  "remoteA2aAgent": {
    object (RemoteA2aAgent)
  }
  // End of list of possible types for union field agent_type.
}
Kolom
name

string

ID. ID unik agen. Format: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

displayName

string

Wajib. Nama tampilan agen.

description

string

Opsional. Deskripsi agen yang dapat dibaca manusia.

modelSettings

object (ModelSettings)

Opsional. Konfigurasi untuk model LLM.

instruction

string

Opsional. Petunjuk untuk model LLM guna memandu perilaku agen.

tools[]

string

Opsional. Daftar alat yang tersedia untuk agen. Format: projects/{project}/locations/{location}/apps/{app}/tools/{tool}

childAgents[]

string

Opsional. Daftar agen turunan di struktur agen. Format: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

beforeAgentCallbacks[]

object (Callback)

Opsional. Callback yang akan dieksekusi sebelum agen dipanggil. Callback yang diberikan dieksekusi secara berurutan dalam urutan persis seperti yang diberikan dalam daftar. Jika callback menampilkan respons yang diganti, eksekusi akan berhenti dan callback yang tersisa akan dilewati.

afterAgentCallbacks[]

object (Callback)

Opsional. Callback yang akan dieksekusi setelah agen dipanggil. Callback yang diberikan dieksekusi secara berurutan dalam urutan persis seperti yang diberikan dalam daftar. Jika callback menampilkan respons yang diganti, eksekusi akan berhenti dan callback yang tersisa akan dilewati.

beforeModelCallbacks[]

object (Callback)

Opsional. Callback yang akan dieksekusi sebelum model dipanggil. Jika ada beberapa panggilan ke model, callback akan dieksekusi beberapa kali. Callback yang diberikan dieksekusi secara berurutan dalam urutan persis seperti yang diberikan dalam daftar. Jika callback menampilkan respons yang diganti, eksekusi akan berhenti dan callback yang tersisa akan dilewati.

afterModelCallbacks[]

object (Callback)

Opsional. Callback yang akan dijalankan setelah model dipanggil. Jika ada beberapa panggilan ke model, callback akan dieksekusi beberapa kali. Callback yang diberikan dieksekusi secara berurutan dalam urutan persis seperti yang diberikan dalam daftar. Jika callback menampilkan respons yang diganti, eksekusi akan berhenti dan callback yang tersisa akan dilewati.

beforeToolCallbacks[]

object (Callback)

Opsional. Callback yang akan dieksekusi sebelum alat dipanggil. Jika ada beberapa pemanggilan alat, callback akan dieksekusi beberapa kali. Callback yang diberikan dieksekusi secara berurutan dalam urutan persis seperti yang diberikan dalam daftar. Jika callback menampilkan respons yang diganti, eksekusi akan berhenti dan callback yang tersisa akan dilewati.

afterToolCallbacks[]

object (Callback)

Opsional. Callback yang akan dieksekusi setelah alat dipanggil. Jika ada beberapa pemanggilan alat, callback akan dieksekusi beberapa kali. Callback yang diberikan dieksekusi secara berurutan dalam urutan persis seperti yang diberikan dalam daftar. Jika callback menampilkan respons yang diganti, eksekusi akan berhenti dan callback yang tersisa akan dilewati.

createTime

string (Timestamp format)

Hanya output. Stempel waktu saat agen dibuat.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Hanya output. Stempel waktu saat agen terakhir diperbarui.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

guardrails[]

string

Opsional. Daftar batasan untuk agen. Format: projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}

etag

string

ETag yang digunakan untuk memastikan objek tidak berubah selama operasi baca-ubah-tulis. Jika etag kosong, pembaruan akan menimpa perubahan serentak.

toolsets[]

object (AgentToolset)

Opsional. Daftar toolset untuk agen.

generatedSummary

string

Hanya output. Jika agen dibuat oleh asisten LLM, kolom ini berisi ringkasan deskriptif dari pembuatan tersebut.

transferRules[]

object (TransferRule)

Opsional. Aturan transfer agen. Jika ada beberapa aturan yang cocok, aturan pertama dalam daftar akan digunakan.

validationErrors[]

string

Hanya output. Kesalahan konfigurasi atau error pada agen yang dapat memengaruhi kualitas agen.

Kolom union agent_type. Jenis agen. agent_type hanya ada berupa salah satu diantara berikut:
llmAgent

object (LlmAgent)

Opsional. Jenis agen default.

remoteDialogflowAgent

object (RemoteDialogflowAgent)

Opsional. Agen Dialogflow jarak jauh yang akan digunakan untuk eksekusi agen. Jika kolom ini ditetapkan, semua properti tingkat agen lainnya akan diabaikan.

Catatan: Jika agen Dialogflow berada dalam project yang berbeda dari aplikasi, Anda harus memberikan roles/dialogflow.client ke agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

remoteA2aAgent

object (RemoteA2aAgent)

Opsional. Agen A2A jarak jauh yang akan digunakan untuk eksekusi agen.

RemoteDialogflowAgent

Representasi JSON
{
  "agent": string,
  "flowId": string,
  "environmentId": string,
  "inputVariableMapping": {
    string: string,
    ...
  },
  "outputVariableMapping": {
    string: string,
    ...
  },
  "respectResponseInterruptionSettings": boolean,
  "languageCodeVariable": string
}
Kolom
agent

string

Wajib. Nama resource agen Dialogflow. Format: projects/{project}/locations/{location}/agents/{agent}

flowId

string

Opsional. ID alur untuk alur di agen Dialogflow.

environmentId

string

Opsional. ID lingkungan agen Dialogflow yang akan digunakan untuk eksekusi agen. Jika tidak ditentukan, lingkungan draf akan digunakan.

inputVariableMapping

map (key: string, value: string)

Opsional. Pemetaan nama variabel aplikasi ke nama parameter sesi Dialogflow yang akan dikirim ke agen Dialogflow sebagai input.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

outputVariableMapping

map (key: string, value: string)

Opsional. Pemetaan nama parameter sesi Dialogflow ke nama variabel aplikasi yang akan dikirim kembali ke agen CES setelah eksekusi agen Dialogflow berakhir.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

respectResponseInterruptionSettings

boolean

Opsional. Menunjukkan apakah akan mematuhi setelan gangguan tingkat pesan yang dikonfigurasi di agen Dialogflow.

  • Jika salah (false): semua pesan respons dari agen Dialogflow mengikuti setelan interupsi tingkat aplikasi.
  • Jika benar: hanya pesan respons dengan allow_playback_interruption yang disetel ke benar yang dapat disela, semua pesan lainnya mengikuti setelan sela di tingkat aplikasi.
languageCodeVariable

string

Opsional. Nama variabel yang berisi kode bahasa yang akan digunakan untuk sesi Dialogflow. Jika tidak ditentukan, kode bahasa default agen Dialogflow akan digunakan.

InputVariableMappingEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

OutputVariableMappingEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

RemoteA2aAgent

Representasi JSON
{
  "a2aConfig": {
    object (RemoteA2aConfig)
  }
}
Kolom
a2aConfig

object (RemoteA2aConfig)

Wajib. Konfigurasi koneksi A2A.

RemoteA2aConfig

Representasi JSON
{
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "inputVariableMapping": {
    string: string,
    ...
  },
  "outputVariableMapping": {
    string: string,
    ...
  },
  "streamingEnabled": boolean,
  "contextId": string,

  // Union field agent_spec can be only one of the following:
  "agentCard": {
    object (AgentCard)
  },
  "agentRegistry": string
  // End of list of possible types for union field agent_spec.
}
Kolom
apiAuthentication

object (ApiAuthentication)

Opsional. Konfigurasi autentikasi untuk memanggil agen jarak jauh. Opsional jika referensi registry sudah menangani autentikasi.

inputVariableMapping

map (key: string, value: string)

Opsional. Pemetaan nama variabel input agen jarak jauh ke nama variabel GECX.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

outputVariableMapping

map (key: string, value: string)

Opsional. Pemetaan nama variabel output agen jarak jauh ke nama variabel GECX.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

streamingEnabled

boolean

Opsional. Apakah streaming diaktifkan untuk agen jarak jauh.

contextId

string

Opsional. Jika tidak kosong, interaksi dengan agen A2A jarak jauh akan menggunakan ID konteks ini. Kolom context_id ini dapat merujuk ke variabel sesi seperti $context.variables.order_agent_session_id.

Kolom union agent_spec. Spesifikasi agen jarak jauh. agent_spec hanya ada berupa salah satu diantara berikut:
agentCard

object (AgentCard)

Opsional. Kartu agen lengkap yang ditentukan secara inline.

agentRegistry

string

Opsional. Referensi ke agen di Agent Registry. Format: projects/{project}/locations/{location}/agents/{agent}

AgentCard

Representasi JSON
{
  "name": string,
  "description": string,
  "supportedInterfaces": [
    {
      object (AgentInterface)
    }
  ],
  "version": string,
  "skills": [
    {
      object (AgentSkill)
    }
  ]
}
Kolom
name

string

Wajib. Nama agen yang dapat dibaca manusia.

description

string

Wajib. Deskripsi domain tindakan/ruang solusi agen.

supportedInterfaces[]

object (AgentInterface)

Wajib. Daftar antarmuka yang didukung dan diurutkan. Entri pertama lebih disukai.

version

string

Wajib. Versi agen.

skills[]

object (AgentSkill)

Wajib. Keahlian mewakili unit kemampuan yang dapat dilakukan agen. Hal ini mungkin agak abstrak, tetapi mewakili serangkaian tindakan yang lebih terfokus yang kemungkinan besar akan berhasil dilakukan agen.

AgentInterface

Representasi JSON
{
  "url": string,
  "protocolBinding": string,
  "tenant": string,
  "protocolVersion": string
}
Kolom
url

string

Wajib. URL tempat antarmuka ini tersedia. Harus berupa URL HTTPS absolut yang valid dalam produksi. Contoh: "https://api.example.com/a2a/v1", "https://grpc.example.com/a2a"

protocolBinding

string

Wajib. Pengikatan protokol yang didukung di URL ini. Ini adalah string formulir terbuka, yang dapat dengan mudah diperluas untuk binding protokol lainnya. Yang didukung secara resmi adalah JSONRPC, GRPC, dan HTTP+JSON.

tenant

string

ID tenant yang akan digunakan dalam permintaan saat memanggil agen.

protocolVersion

string

Wajib. Versi protokol A2A yang diekspos oleh antarmuka ini. Gunakan versi minor terbaru yang didukung per versi utama. Contoh: "0.3", "1.0"

AgentSkill

Representasi JSON
{
  "id": string,
  "name": string,
  "description": string,
  "tags": [
    string
  ],
  "examples": [
    string
  ],
  "inputModes": [
    string
  ],
  "outputModes": [
    string
  ]
}
Kolom
id

string

Wajib. ID unik untuk kemampuan agen.

name

string

Wajib. Nama keahlian yang dapat dibaca manusia.

description

string

Wajib. Deskripsi mendetail tentang keahlian.

tags[]

string

Wajib. Sekumpulan kata kunci yang menjelaskan kemampuan skill.

examples[]

string

Contoh perintah atau skenario yang dapat ditangani oleh kemampuan ini.

inputModes[]

string

Kumpulan jenis media input yang didukung untuk skill ini, yang menggantikan default agen.

outputModes[]

string

Kumpulan jenis media output yang didukung untuk skill ini, yang menggantikan default agen.

ApiAuthentication

Representasi JSON
{

  // Union field auth_config can be only one of the following:
  "apiKeyConfig": {
    object (ApiKeyConfig)
  },
  "oauthConfig": {
    object (OAuthConfig)
  },
  "serviceAgentIdTokenAuthConfig": {
    object (ServiceAgentIdTokenAuthConfig)
  },
  "serviceAccountAuthConfig": {
    object (ServiceAccountAuthConfig)
  },
  "bearerTokenConfig": {
    object (BearerTokenConfig)
  }
  // End of list of possible types for union field auth_config.
}
Kolom
Kolom union auth_config. Konfigurasi autentikasi. auth_config hanya ada berupa salah satu diantara berikut:
apiKeyConfig

object (ApiKeyConfig)

Opsional. Konfigurasi untuk autentikasi kunci API.

oauthConfig

object (OAuthConfig)

Opsional. Konfigurasi untuk OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Opsional. Konfigurasi untuk autentikasi token ID yang dibuat dari agen layanan CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Opsional. Konfigurasi untuk autentikasi akun layanan.

bearerTokenConfig

object (BearerTokenConfig)

Opsional. Konfigurasi untuk autentikasi token pembawa.

ApiKeyConfig

Representasi JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Kolom
keyName

string

Wajib. Nama parameter atau nama header kunci API. Misalnya, Jika permintaan API adalah "https://example.com/act?X-Api-Key=", "X-Api-Key" akan menjadi nama parameter.

apiKeySecretVersion

string

Wajib. Nama resource versi secret SecretManager yang menyimpan kunci API. Format: projects/{project}/secrets/{secret}/versions/{version}

Catatan: Anda harus memberikan peran roles/secretmanager.secretAccessor kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

Wajib. Lokasi kunci dalam permintaan.

OAuthConfig

Representasi JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Kolom
oauthGrantType

enum (OauthGrantType)

Wajib. Jenis pemberian izin OAuth.

clientId

string

Wajib. Client ID dari penyedia OAuth.

clientSecretVersion

string

Wajib. Nama resource versi secret SecretManager yang menyimpan rahasia klien. Format: projects/{project}/secrets/{secret}/versions/{version}

Catatan: Anda harus memberikan peran roles/secretmanager.secretAccessor kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

Wajib. Endpoint token di penyedia OAuth untuk ditukar dengan token akses.

scopes[]

string

Opsional. Cakupan OAuth yang akan diberikan.

ServiceAccountAuthConfig

Representasi JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Kolom
serviceAccount

string

Wajib. Alamat email akun layanan yang digunakan untuk autentikasi. CES menggunakan akun layanan ini untuk menukar token akses dan token akses tersebut kemudian dikirim di header Authorization permintaan.

Akun layanan harus memiliki peran roles/iam.serviceAccountTokenCreator yang diberikan kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

Opsional. Cakupan OAuth yang akan diberikan. Jika tidak ditentukan, cakupan default https://www.googleapis.com/auth/cloud-platform akan digunakan.

BearerTokenConfig

Representasi JSON
{
  "token": string
}
Kolom
token

string

Wajib. Token pemilik. Harus dalam format $context.variables.<name_of_variable>.

InputVariableMappingEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

OutputVariableMappingEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

ModelSettings

Representasi JSON
{
  "model": string,
  "thinkingLevel": enum (ThinkingLevel),

  // Union field _temperature can be only one of the following:
  "temperature": number
  // End of list of possible types for union field _temperature.
}
Kolom
model

string

Opsional. Model LLM yang harus digunakan agen. Jika tidak disetel, agen akan mewarisi model dari agen induknya.

thinkingLevel

enum (ThinkingLevel)

Opsional. Tingkat penalaran model.

Kolom union _temperature.

_temperature hanya dapat berupa salah satu dari hal berikut:

temperature

number

Opsional. Jika disetel, suhu ini akan digunakan untuk model LLM. Temperatur mengontrol keacakan respons model. Temperatur yang lebih rendah menghasilkan respons yang lebih dapat diprediksi. Temperatur yang lebih tinggi menghasilkan respons yang lebih kreatif.

Callback

Representasi JSON
{
  "description": string,
  "disabled": boolean,
  "proactiveExecutionEnabled": boolean,

  // Union field callback can be only one of the following:
  "pythonCode": string
  // End of list of possible types for union field callback.
}
Kolom
description

string

Opsional. Deskripsi callback yang dapat dibaca manusia.

disabled

boolean

Opsional. Apakah panggilan balik dinonaktifkan. Callback yang dinonaktifkan akan diabaikan oleh agen.

proactiveExecutionEnabled

boolean

Opsional. Jika diaktifkan, callback juga akan dieksekusi pada output model perantara. Setelan ini hanya memengaruhi callback setelah model. AKTIFKAN DENGAN HATI-HATI. Biasanya, callback setelah model hanya perlu dieksekusi setelah menerima semua respons model. Mengaktifkan eksekusi proaktif dapat berimplikasi negatif pada biaya dan latensi eksekusi, dan hanya boleh diaktifkan dalam situasi yang jarang terjadi.

Kolom union callback. Callback yang akan dieksekusi. callback hanya ada berupa salah satu diantara berikut:
pythonCode

string

Wajib. Kode python yang akan dieksekusi untuk callback.

Stempel waktu

Representasi JSON
{
  "seconds": string,
  "nanos": integer
}
Kolom
seconds

string (int64 format)

Mewakili detik waktu UTC sejak epoch Unix 1970-01-01T00:00:00Z. Harus antara -62135596800 dan 253402300799 inklusif (yang sesuai dengan 0001-01-01T00:00:00Z hingga 9999-12-31T23:59:59Z).

nanos

integer

Pecahan detik non-negatif pada resolusi nanodetik. Kolom ini adalah bagian nanodetik dari durasi, bukan alternatif untuk detik. Nilai detik negatif dengan pecahan harus tetap memiliki nilai nanos non-negatif yang dihitung maju dalam waktu. Harus antara 0 dan 999.999.999 inklusif.

AgentToolset

Representasi JSON
{
  "toolset": string,
  "toolIds": [
    string
  ]
}
Kolom
toolset

string

Wajib. Nama resource toolset. Format: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

toolIds[]

string

Opsional. ID alat untuk memfilter set alat.

TransferRule

Representasi JSON
{
  "childAgent": string,
  "direction": enum (Direction),

  // Union field rule_type can be only one of the following:
  "deterministicTransfer": {
    object (DeterministicTransfer)
  },
  "disablePlannerTransfer": {
    object (DisablePlannerTransfer)
  }
  // End of list of possible types for union field rule_type.
}
Kolom
childAgent

string

Wajib. Nama resource agen turunan tempat aturan diterapkan. Format: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

direction

enum (Direction)

Wajib. Arah transfer.

Kolom union rule_type. Jenis aturan. rule_type hanya ada berupa salah satu diantara berikut:
deterministicTransfer

object (DeterministicTransfer)

Opsional. Aturan yang segera ditransfer ke agen target saat kondisi terpenuhi.

disablePlannerTransfer

object (DisablePlannerTransfer)

Opsional. Aturan yang mencegah perencana berpindah ke agen target.

DeterministicTransfer

Representasi JSON
{

  // Union field condition_type can be only one of the following:
  "expressionCondition": {
    object (ExpressionCondition)
  },
  "pythonCodeCondition": {
    object (PythonCodeCondition)
  }
  // End of list of possible types for union field condition_type.
}
Kolom
Kolom union condition_type. Kondisi yang akan dievaluasi. condition_type hanya ada berupa salah satu diantara berikut:
expressionCondition

object (ExpressionCondition)

Opsional. Aturan yang mengevaluasi kondisi status sesi. Jika kondisi bernilai benar, transfer akan terjadi.

pythonCodeCondition

object (PythonCodeCondition)

Opsional. Aturan yang menggunakan blok kode Python untuk mengevaluasi kondisi. Jika kondisi bernilai benar, transfer akan terjadi.

ExpressionCondition

Representasi JSON
{
  "expression": string
}
Kolom
expression

string

Wajib. Representasi string dari kondisi cloud.api.Expression.

PythonCodeCondition

Representasi JSON
{
  "pythonCode": string
}
Kolom
pythonCode

string

Wajib. Kode python yang akan dieksekusi.

DisablePlannerTransfer

Representasi JSON
{
  "expressionCondition": {
    object (ExpressionCondition)
  }
}
Kolom
expressionCondition

object (ExpressionCondition)

Wajib. Jika kondisi bernilai benar, perencana tidak akan diizinkan untuk ditransfer ke agen target.

FieldMask

Representasi JSON
{
  "paths": [
    string
  ]
}
Kolom
paths[]

string

Kumpulan jalur mask kolom.

RequestLocation

Lokasi kunci API dalam permintaan.

Enum
REQUEST_LOCATION_UNSPECIFIED Tidak ditentukan. Nilai ini tidak boleh digunakan.
HEADER Mewakili kunci di header http.
QUERY_STRING Mewakili kunci dalam string kueri.

OauthGrantType

Jenis pemberian izin OAuth. Hanya pemberian kredensial klien yang didukung.

Enum
OAUTH_GRANT_TYPE_UNSPECIFIED Tidak ditentukan. Nilai defaultnya adalah CLIENT_CREDENTIAL.
CLIENT_CREDENTIAL Mewakili alur kredensial klien.

ThinkingLevel

Konfigurasi tingkat penalaran untuk model.

Enum
THINKING_LEVEL_UNSPECIFIED Tingkat penalaran tidak ditentukan.
DEFAULT Tingkat penalaran default.
LOW Tingkat penalaran rendah.
MEDIUM Tingkat penalaran sedang.
HIGH Tingkat pemikiran tinggi.

Arah

Arah transfer.

Enum
DIRECTION_UNSPECIFIED Arah tidak ditentukan.
PARENT_TO_CHILD Transfer dari agen induk ke agen turunan.
CHILD_TO_PARENT Transfer dari agen anak ke agen induk.

Skema Output

Agen bertindak sebagai elemen penyusun dasar yang memberikan petunjuk ke Model Bahasa Besar (LLM) untuk menjalankan tugas tertentu.

Agen

Representasi JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "modelSettings": {
    object (ModelSettings)
  },
  "instruction": string,
  "tools": [
    string
  ],
  "childAgents": [
    string
  ],
  "beforeAgentCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterAgentCallbacks": [
    {
      object (Callback)
    }
  ],
  "beforeModelCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterModelCallbacks": [
    {
      object (Callback)
    }
  ],
  "beforeToolCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterToolCallbacks": [
    {
      object (Callback)
    }
  ],
  "createTime": string,
  "updateTime": string,
  "guardrails": [
    string
  ],
  "etag": string,
  "toolsets": [
    {
      object (AgentToolset)
    }
  ],
  "generatedSummary": string,
  "transferRules": [
    {
      object (TransferRule)
    }
  ],
  "validationErrors": [
    string
  ],

  // Union field agent_type can be only one of the following:
  "llmAgent": {
    object (LlmAgent)
  },
  "remoteDialogflowAgent": {
    object (RemoteDialogflowAgent)
  },
  "remoteA2aAgent": {
    object (RemoteA2aAgent)
  }
  // End of list of possible types for union field agent_type.
}
Kolom
name

string

ID. ID unik agen. Format: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

displayName

string

Wajib. Nama tampilan agen.

description

string

Opsional. Deskripsi agen yang dapat dibaca manusia.

modelSettings

object (ModelSettings)

Opsional. Konfigurasi untuk model LLM.

instruction

string

Opsional. Petunjuk untuk model LLM guna memandu perilaku agen.

tools[]

string

Opsional. Daftar alat yang tersedia untuk agen. Format: projects/{project}/locations/{location}/apps/{app}/tools/{tool}

childAgents[]

string

Opsional. Daftar agen turunan di struktur agen. Format: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

beforeAgentCallbacks[]

object (Callback)

Opsional. Callback yang akan dieksekusi sebelum agen dipanggil. Callback yang diberikan dieksekusi secara berurutan dalam urutan persis seperti yang diberikan dalam daftar. Jika callback menampilkan respons yang diganti, eksekusi akan berhenti dan callback yang tersisa akan dilewati.

afterAgentCallbacks[]

object (Callback)

Opsional. Callback yang akan dieksekusi setelah agen dipanggil. Callback yang diberikan dieksekusi secara berurutan dalam urutan persis seperti yang diberikan dalam daftar. Jika callback menampilkan respons yang diganti, eksekusi akan berhenti dan callback yang tersisa akan dilewati.

beforeModelCallbacks[]

object (Callback)

Opsional. Callback yang akan dieksekusi sebelum model dipanggil. Jika ada beberapa panggilan ke model, callback akan dieksekusi beberapa kali. Callback yang diberikan dieksekusi secara berurutan dalam urutan persis seperti yang diberikan dalam daftar. Jika callback menampilkan respons yang diganti, eksekusi akan berhenti dan callback yang tersisa akan dilewati.

afterModelCallbacks[]

object (Callback)

Opsional. Callback yang akan dijalankan setelah model dipanggil. Jika ada beberapa panggilan ke model, callback akan dieksekusi beberapa kali. Callback yang diberikan dieksekusi secara berurutan dalam urutan persis seperti yang diberikan dalam daftar. Jika callback menampilkan respons yang diganti, eksekusi akan berhenti dan callback yang tersisa akan dilewati.

beforeToolCallbacks[]

object (Callback)

Opsional. Callback yang akan dieksekusi sebelum alat dipanggil. Jika ada beberapa pemanggilan alat, callback akan dieksekusi beberapa kali. Callback yang diberikan dieksekusi secara berurutan dalam urutan persis seperti yang diberikan dalam daftar. Jika callback menampilkan respons yang diganti, eksekusi akan berhenti dan callback yang tersisa akan dilewati.

afterToolCallbacks[]

object (Callback)

Opsional. Callback yang akan dieksekusi setelah alat dipanggil. Jika ada beberapa pemanggilan alat, callback akan dieksekusi beberapa kali. Callback yang diberikan dieksekusi secara berurutan dalam urutan persis seperti yang diberikan dalam daftar. Jika callback menampilkan respons yang diganti, eksekusi akan berhenti dan callback yang tersisa akan dilewati.

createTime

string (Timestamp format)

Hanya output. Stempel waktu saat agen dibuat.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Hanya output. Stempel waktu saat agen terakhir diperbarui.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

guardrails[]

string

Opsional. Daftar batasan untuk agen. Format: projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}

etag

string

ETag yang digunakan untuk memastikan objek tidak berubah selama operasi baca-ubah-tulis. Jika etag kosong, pembaruan akan menimpa perubahan serentak.

toolsets[]

object (AgentToolset)

Opsional. Daftar toolset untuk agen.

generatedSummary

string

Hanya output. Jika agen dibuat oleh asisten LLM, kolom ini berisi ringkasan deskriptif dari pembuatan tersebut.

transferRules[]

object (TransferRule)

Opsional. Aturan transfer agen. Jika ada beberapa aturan yang cocok, aturan pertama dalam daftar akan digunakan.

validationErrors[]

string

Hanya output. Kesalahan konfigurasi atau error pada agen yang dapat memengaruhi kualitas agen.

Kolom union agent_type. Jenis agen. agent_type hanya ada berupa salah satu diantara berikut:
llmAgent

object (LlmAgent)

Opsional. Jenis agen default.

remoteDialogflowAgent

object (RemoteDialogflowAgent)

Opsional. Agen Dialogflow jarak jauh yang akan digunakan untuk eksekusi agen. Jika kolom ini ditetapkan, semua properti tingkat agen lainnya akan diabaikan.

Catatan: Jika agen Dialogflow berada dalam project yang berbeda dari aplikasi, Anda harus memberikan roles/dialogflow.client ke agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

remoteA2aAgent

object (RemoteA2aAgent)

Opsional. Agen A2A jarak jauh yang akan digunakan untuk eksekusi agen.

RemoteDialogflowAgent

Representasi JSON
{
  "agent": string,
  "flowId": string,
  "environmentId": string,
  "inputVariableMapping": {
    string: string,
    ...
  },
  "outputVariableMapping": {
    string: string,
    ...
  },
  "respectResponseInterruptionSettings": boolean,
  "languageCodeVariable": string
}
Kolom
agent

string

Wajib. Nama resource agen Dialogflow. Format: projects/{project}/locations/{location}/agents/{agent}

flowId

string

Opsional. ID alur untuk alur di agen Dialogflow.

environmentId

string

Opsional. ID lingkungan agen Dialogflow yang akan digunakan untuk eksekusi agen. Jika tidak ditentukan, lingkungan draf akan digunakan.

inputVariableMapping

map (key: string, value: string)

Opsional. Pemetaan nama variabel aplikasi ke nama parameter sesi Dialogflow yang akan dikirim ke agen Dialogflow sebagai input.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

outputVariableMapping

map (key: string, value: string)

Opsional. Pemetaan nama parameter sesi Dialogflow ke nama variabel aplikasi yang akan dikirim kembali ke agen CES setelah eksekusi agen Dialogflow berakhir.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

respectResponseInterruptionSettings

boolean

Opsional. Menunjukkan apakah akan mematuhi setelan gangguan tingkat pesan yang dikonfigurasi di agen Dialogflow.

  • Jika salah (false): semua pesan respons dari agen Dialogflow mengikuti setelan interupsi tingkat aplikasi.
  • Jika benar: hanya pesan respons dengan allow_playback_interruption yang disetel ke benar yang dapat disela, semua pesan lainnya mengikuti setelan sela di tingkat aplikasi.
languageCodeVariable

string

Opsional. Nama variabel yang berisi kode bahasa yang akan digunakan untuk sesi Dialogflow. Jika tidak ditentukan, kode bahasa default agen Dialogflow akan digunakan.

InputVariableMappingEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

OutputVariableMappingEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

RemoteA2aAgent

Representasi JSON
{
  "a2aConfig": {
    object (RemoteA2aConfig)
  }
}
Kolom
a2aConfig

object (RemoteA2aConfig)

Wajib. Konfigurasi koneksi A2A.

RemoteA2aConfig

Representasi JSON
{
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "inputVariableMapping": {
    string: string,
    ...
  },
  "outputVariableMapping": {
    string: string,
    ...
  },
  "streamingEnabled": boolean,
  "contextId": string,

  // Union field agent_spec can be only one of the following:
  "agentCard": {
    object (AgentCard)
  },
  "agentRegistry": string
  // End of list of possible types for union field agent_spec.
}
Kolom
apiAuthentication

object (ApiAuthentication)

Opsional. Konfigurasi autentikasi untuk memanggil agen jarak jauh. Opsional jika referensi registry sudah menangani autentikasi.

inputVariableMapping

map (key: string, value: string)

Opsional. Pemetaan nama variabel input agen jarak jauh ke nama variabel GECX.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

outputVariableMapping

map (key: string, value: string)

Opsional. Pemetaan nama variabel output agen jarak jauh ke nama variabel GECX.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

streamingEnabled

boolean

Opsional. Apakah streaming diaktifkan untuk agen jarak jauh.

contextId

string

Opsional. Jika tidak kosong, interaksi dengan agen A2A jarak jauh akan menggunakan ID konteks ini. Kolom context_id ini dapat merujuk ke variabel sesi seperti $context.variables.order_agent_session_id.

Kolom union agent_spec. Spesifikasi agen jarak jauh. agent_spec hanya ada berupa salah satu diantara berikut:
agentCard

object (AgentCard)

Opsional. Kartu agen lengkap yang ditentukan secara inline.

agentRegistry

string

Opsional. Referensi ke agen di Agent Registry. Format: projects/{project}/locations/{location}/agents/{agent}

AgentCard

Representasi JSON
{
  "name": string,
  "description": string,
  "supportedInterfaces": [
    {
      object (AgentInterface)
    }
  ],
  "version": string,
  "skills": [
    {
      object (AgentSkill)
    }
  ]
}
Kolom
name

string

Wajib. Nama agen yang dapat dibaca manusia.

description

string

Wajib. Deskripsi domain tindakan/ruang solusi agen.

supportedInterfaces[]

object (AgentInterface)

Wajib. Daftar antarmuka yang didukung dan diurutkan. Entri pertama lebih disukai.

version

string

Wajib. Versi agen.

skills[]

object (AgentSkill)

Wajib. Keahlian mewakili unit kemampuan yang dapat dilakukan agen. Hal ini mungkin agak abstrak, tetapi mewakili serangkaian tindakan yang lebih terfokus yang kemungkinan besar akan berhasil dilakukan agen.

AgentInterface

Representasi JSON
{
  "url": string,
  "protocolBinding": string,
  "tenant": string,
  "protocolVersion": string
}
Kolom
url

string

Wajib. URL tempat antarmuka ini tersedia. Harus berupa URL HTTPS absolut yang valid dalam produksi. Contoh: "https://api.example.com/a2a/v1", "https://grpc.example.com/a2a"

protocolBinding

string

Wajib. Pengikatan protokol yang didukung di URL ini. Ini adalah string formulir terbuka, yang dapat dengan mudah diperluas untuk binding protokol lainnya. Yang didukung secara resmi adalah JSONRPC, GRPC, dan HTTP+JSON.

tenant

string

ID tenant yang akan digunakan dalam permintaan saat memanggil agen.

protocolVersion

string

Wajib. Versi protokol A2A yang diekspos oleh antarmuka ini. Gunakan versi minor terbaru yang didukung per versi utama. Contoh: "0.3", "1.0"

AgentSkill

Representasi JSON
{
  "id": string,
  "name": string,
  "description": string,
  "tags": [
    string
  ],
  "examples": [
    string
  ],
  "inputModes": [
    string
  ],
  "outputModes": [
    string
  ]
}
Kolom
id

string

Wajib. ID unik untuk kemampuan agen.

name

string

Wajib. Nama keahlian yang dapat dibaca manusia.

description

string

Wajib. Deskripsi mendetail tentang keahlian.

tags[]

string

Wajib. Sekumpulan kata kunci yang menjelaskan kemampuan skill.

examples[]

string

Contoh perintah atau skenario yang dapat ditangani oleh kemampuan ini.

inputModes[]

string

Kumpulan jenis media input yang didukung untuk skill ini, yang menggantikan default agen.

outputModes[]

string

Kumpulan jenis media output yang didukung untuk skill ini, yang menggantikan default agen.

ApiAuthentication

Representasi JSON
{

  // Union field auth_config can be only one of the following:
  "apiKeyConfig": {
    object (ApiKeyConfig)
  },
  "oauthConfig": {
    object (OAuthConfig)
  },
  "serviceAgentIdTokenAuthConfig": {
    object (ServiceAgentIdTokenAuthConfig)
  },
  "serviceAccountAuthConfig": {
    object (ServiceAccountAuthConfig)
  },
  "bearerTokenConfig": {
    object (BearerTokenConfig)
  }
  // End of list of possible types for union field auth_config.
}
Kolom
Kolom union auth_config. Konfigurasi autentikasi. auth_config hanya ada berupa salah satu diantara berikut:
apiKeyConfig

object (ApiKeyConfig)

Opsional. Konfigurasi untuk autentikasi kunci API.

oauthConfig

object (OAuthConfig)

Opsional. Konfigurasi untuk OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Opsional. Konfigurasi untuk autentikasi token ID yang dibuat dari agen layanan CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Opsional. Konfigurasi untuk autentikasi akun layanan.

bearerTokenConfig

object (BearerTokenConfig)

Opsional. Konfigurasi untuk autentikasi token pembawa.

ApiKeyConfig

Representasi JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Kolom
keyName

string

Wajib. Nama parameter atau nama header kunci API. Misalnya, Jika permintaan API adalah "https://example.com/act?X-Api-Key=", "X-Api-Key" akan menjadi nama parameter.

apiKeySecretVersion

string

Wajib. Nama resource versi secret SecretManager yang menyimpan kunci API. Format: projects/{project}/secrets/{secret}/versions/{version}

Catatan: Anda harus memberikan peran roles/secretmanager.secretAccessor kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

Wajib. Lokasi kunci dalam permintaan.

OAuthConfig

Representasi JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Kolom
oauthGrantType

enum (OauthGrantType)

Wajib. Jenis pemberian izin OAuth.

clientId

string

Wajib. Client ID dari penyedia OAuth.

clientSecretVersion

string

Wajib. Nama resource versi secret SecretManager yang menyimpan rahasia klien. Format: projects/{project}/secrets/{secret}/versions/{version}

Catatan: Anda harus memberikan peran roles/secretmanager.secretAccessor kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

Wajib. Endpoint token di penyedia OAuth untuk ditukar dengan token akses.

scopes[]

string

Opsional. Cakupan OAuth yang akan diberikan.

ServiceAccountAuthConfig

Representasi JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Kolom
serviceAccount

string

Wajib. Alamat email akun layanan yang digunakan untuk autentikasi. CES menggunakan akun layanan ini untuk menukar token akses dan token akses tersebut kemudian dikirim di header Authorization permintaan.

Akun layanan harus memiliki peran roles/iam.serviceAccountTokenCreator yang diberikan kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

Opsional. Cakupan OAuth yang akan diberikan. Jika tidak ditentukan, cakupan default https://www.googleapis.com/auth/cloud-platform akan digunakan.

BearerTokenConfig

Representasi JSON
{
  "token": string
}
Kolom
token

string

Wajib. Token pemilik. Harus dalam format $context.variables.<name_of_variable>.

InputVariableMappingEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

OutputVariableMappingEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

ModelSettings

Representasi JSON
{
  "model": string,
  "thinkingLevel": enum (ThinkingLevel),

  // Union field _temperature can be only one of the following:
  "temperature": number
  // End of list of possible types for union field _temperature.
}
Kolom
model

string

Opsional. Model LLM yang harus digunakan agen. Jika tidak disetel, agen akan mewarisi model dari agen induknya.

thinkingLevel

enum (ThinkingLevel)

Opsional. Tingkat penalaran model.

Kolom union _temperature.

_temperature hanya dapat berupa salah satu dari hal berikut:

temperature

number

Opsional. Jika disetel, suhu ini akan digunakan untuk model LLM. Temperatur mengontrol keacakan respons model. Temperatur yang lebih rendah menghasilkan respons yang lebih dapat diprediksi. Temperatur yang lebih tinggi menghasilkan respons yang lebih kreatif.

Callback

Representasi JSON
{
  "description": string,
  "disabled": boolean,
  "proactiveExecutionEnabled": boolean,

  // Union field callback can be only one of the following:
  "pythonCode": string
  // End of list of possible types for union field callback.
}
Kolom
description

string

Opsional. Deskripsi callback yang dapat dibaca manusia.

disabled

boolean

Opsional. Apakah panggilan balik dinonaktifkan. Callback yang dinonaktifkan akan diabaikan oleh agen.

proactiveExecutionEnabled

boolean

Opsional. Jika diaktifkan, callback juga akan dieksekusi pada output model perantara. Setelan ini hanya memengaruhi callback setelah model. AKTIFKAN DENGAN HATI-HATI. Biasanya, callback setelah model hanya perlu dieksekusi setelah menerima semua respons model. Mengaktifkan eksekusi proaktif dapat berimplikasi negatif pada biaya dan latensi eksekusi, dan hanya boleh diaktifkan dalam situasi yang jarang terjadi.

Kolom union callback. Callback yang akan dieksekusi. callback hanya ada berupa salah satu diantara berikut:
pythonCode

string

Wajib. Kode python yang akan dieksekusi untuk callback.

Stempel waktu

Representasi JSON
{
  "seconds": string,
  "nanos": integer
}
Kolom
seconds

string (int64 format)

Mewakili detik waktu UTC sejak epoch Unix 1970-01-01T00:00:00Z. Harus antara -62135596800 dan 253402300799 inklusif (yang sesuai dengan 0001-01-01T00:00:00Z hingga 9999-12-31T23:59:59Z).

nanos

integer

Pecahan detik non-negatif pada resolusi nanodetik. Kolom ini adalah bagian nanodetik dari durasi, bukan alternatif untuk detik. Nilai detik negatif dengan pecahan harus tetap memiliki nilai nanos non-negatif yang dihitung maju dalam waktu. Harus antara 0 dan 999.999.999 inklusif.

AgentToolset

Representasi JSON
{
  "toolset": string,
  "toolIds": [
    string
  ]
}
Kolom
toolset

string

Wajib. Nama resource toolset. Format: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

toolIds[]

string

Opsional. ID alat untuk memfilter set alat.

TransferRule

Representasi JSON
{
  "childAgent": string,
  "direction": enum (Direction),

  // Union field rule_type can be only one of the following:
  "deterministicTransfer": {
    object (DeterministicTransfer)
  },
  "disablePlannerTransfer": {
    object (DisablePlannerTransfer)
  }
  // End of list of possible types for union field rule_type.
}
Kolom
childAgent

string

Wajib. Nama resource agen turunan tempat aturan diterapkan. Format: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

direction

enum (Direction)

Wajib. Arah transfer.

Kolom union rule_type. Jenis aturan. rule_type hanya ada berupa salah satu diantara berikut:
deterministicTransfer

object (DeterministicTransfer)

Opsional. Aturan yang segera ditransfer ke agen target saat kondisi terpenuhi.

disablePlannerTransfer

object (DisablePlannerTransfer)

Opsional. Aturan yang mencegah perencana berpindah ke agen target.

DeterministicTransfer

Representasi JSON
{

  // Union field condition_type can be only one of the following:
  "expressionCondition": {
    object (ExpressionCondition)
  },
  "pythonCodeCondition": {
    object (PythonCodeCondition)
  }
  // End of list of possible types for union field condition_type.
}
Kolom
Kolom union condition_type. Kondisi yang akan dievaluasi. condition_type hanya ada berupa salah satu diantara berikut:
expressionCondition

object (ExpressionCondition)

Opsional. Aturan yang mengevaluasi kondisi status sesi. Jika kondisi bernilai benar, transfer akan terjadi.

pythonCodeCondition

object (PythonCodeCondition)

Opsional. Aturan yang menggunakan blok kode Python untuk mengevaluasi kondisi. Jika kondisi bernilai benar, transfer akan terjadi.

ExpressionCondition

Representasi JSON
{
  "expression": string
}
Kolom
expression

string

Wajib. Representasi string dari kondisi cloud.api.Expression.

PythonCodeCondition

Representasi JSON
{
  "pythonCode": string
}
Kolom
pythonCode

string

Wajib. Kode python yang akan dieksekusi.

DisablePlannerTransfer

Representasi JSON
{
  "expressionCondition": {
    object (ExpressionCondition)
  }
}
Kolom
expressionCondition

object (ExpressionCondition)

Wajib. Jika kondisi bernilai benar, perencana tidak akan diizinkan untuk ditransfer ke agen target.

RequestLocation

Lokasi kunci API dalam permintaan.

Enum
REQUEST_LOCATION_UNSPECIFIED Tidak ditentukan. Nilai ini tidak boleh digunakan.
HEADER Mewakili kunci di header http.
QUERY_STRING Mewakili kunci dalam string kueri.

OauthGrantType

Jenis pemberian izin OAuth. Hanya pemberian kredensial klien yang didukung.

Enum
OAUTH_GRANT_TYPE_UNSPECIFIED Tidak ditentukan. Nilai defaultnya adalah CLIENT_CREDENTIAL.
CLIENT_CREDENTIAL Mewakili alur kredensial klien.

ThinkingLevel

Konfigurasi tingkat penalaran untuk model.

Enum
THINKING_LEVEL_UNSPECIFIED Tingkat penalaran tidak ditentukan.
DEFAULT Tingkat penalaran default.
LOW Tingkat penalaran rendah.
MEDIUM Tingkat penalaran sedang.
HIGH Tingkat pemikiran tinggi.

Arah

Arah transfer.

Enum
DIRECTION_UNSPECIFIED Arah tidak ditentukan.
PARENT_TO_CHILD Transfer dari agen induk ke agen turunan.
CHILD_TO_PARENT Transfer dari agen anak ke agen induk.

Anotasi Alat

Anotasi alat dikirim ke klien MCP untuk menjelaskan risiko dasar alat tertentu. Sebagian besar klien memperlakukan petunjuk ini sebagai tidak tepercaya, tetapi petunjuk ini dapat digunakan untuk memutuskan kapan perintah konfirmasi dapat dikirim ke pengguna.

Selain string judul, petunjuk boolean berikut ditentukan sebagai berikut:

  • readOnlyHint: Jika benar, alat tidak akan mengubah lingkungannya. Default: salah.
  • destructiveHint: Jika benar, alat dapat melakukan tindakan yang merusak. Jika salah (false), alat hanya dapat melakukan tindakan tambahan. Default: true.
  • idempotentHint: Jika benar (true), memanggil alat berulang kali dengan argumen yang sama tidak akan memberikan efek tambahan pada lingkungannya. Default: salah.
  • openWorldHint: Jika benar, alat dapat berinteraksi dengan 'dunia terbuka' entitas eksternal. Jika salah (false), alat hanya dapat berinteraksi dengan entitas internal. Misalnya, alat penelusuran web akan menjadi open world, sedangkan alat memori tidak akan menjadi open world.

Petunjuk Destruktif: ✅ | Petunjuk Idempoten: ❌ | Petunjuk Hanya Baca: ❌ | Petunjuk Dunia Terbuka: ❌