Add agent chat action support #2264
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR introduces support for
actions
within theclient.agents.chat
feature. This enables more dynamic interactions with AI agents by allowing clients to:chat
method now accepts anactions
parameter, allowing users to defineClientToolAgentActionWrite
objects that the agent can request to execute.AgentMessage
in the chat response can now include a list ofactions
(e.g.,ClientToolResponseAction
,ToolConfirmationResponseAction
), indicating that the agent wants the client to perform a specific operation.Message
dataclass has been extended to support an "action" role andaction_id
, allowing users to send the results of a client-executed action back to the agent for continued conversation.This implementation provides a type-safe and extensible abstraction for handling agent actions, aligning with existing SDK patterns for tools. Comprehensive examples are included in the
chat
method's docstring to guide users.Checklist:
If a new method has been added it should be referenced in cognite.rst in order to generate docs based on its docstring.