REST Resource: projects.locations.agents.playbooks

Resource: Playbook

Playbook is the basic building block to instruct the LLM how to execute a certain task.

A playbook consists of a goal to accomplish, an optional list of step by step instructions (the step instruction may refers to name of the custom or default plugin tools to use) to perform the task, a list of contextual input data to be passed in at the beginning of the invoked, and a list of output parameters to store the playbook result.

JSON representation
{
  "name": string,
  "displayName": string,
  "goal": string,
  "instruction": {
    object (Instruction)
  },
  "tokenCount": string,
  "createTime": string,
  "updateTime": string,
  "referencedPlaybooks": [
    string
  ],
  "referencedFlows": [
    string
  ],
  "referencedTools": [
    string
  ],
  "llmModelSettings": {
    object (LlmModelSettings)
  }
}
Fields
name

string

The unique identifier of the playbook. Format: projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/playbooks/<PlaybookID>.

displayName

string

Required. The human-readable name of the playbook, unique within an agent.

goal

string

Required. High level description of the goal the playbook intend to accomplish. A goal should be concise since it's visible to other playbooks that may reference this playbook.

instruction

object (Instruction)

Instruction to accomplish target goal.

tokenCount

string (int64 format)

Output only. Estimated number of tokes current playbook takes when sent to the LLM.

createTime

string (Timestamp format)

Output only. The timestamp of initial playbook creation.

Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Output only. Last time the playbook version was updated.

Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

referencedPlaybooks[]

string

Output only. The resource name of other playbooks referenced by the current playbook in the instructions.

referencedFlows[]

string

Output only. The resource name of flows referenced by the current playbook in the instructions.

referencedTools[]

string

Optional. The resource name of tools referenced by the current playbook in the instructions. If not provided explicitly, they are will be implied using the tool being referenced in goal and steps.

llmModelSettings

object (LlmModelSettings)

Optional. Llm model settings for the playbook.

Instruction

Message of the Instruction of the playbook.

JSON representation
{
  "guidelines": string,
  "steps": [
    {
      object (Step)
    }
  ]
}
Fields
guidelines

string

General guidelines for the playbook. These are unstructured instructions that are not directly part of the goal, e.g. "Always be polite". It's valid for this text to be long and used instead of steps altogether.

steps[]

object (Step)

Ordered list of step by step execution instructions to accomplish target goal.

Step

Message of single step execution.

JSON representation
{
  "steps": [
    {
      object (Step)
    }
  ],

  // Union field instruction can be only one of the following:
  "text": string
  // End of list of possible types for union field instruction.
}
Fields
steps[]

object (Step)

Sub-processing needed to execute the current step.

Union field instruction. Instruction on how to execute current step. instruction can be only one of the following:
text

string

Step instruction in text format.

Methods

create

Creates a playbook in a specified agent.

delete

Deletes a specified playbook.

export

Exports the specified playbook to a binary file.

get

Retrieves the specified Playbook.

import

Imports the specified playbook to the specified agent from a binary file.

list

Returns a list of playbooks in the specified agent.

patch

Updates the specified Playbook.