NAME
Claude::Agent::Content - Content block types for Claude Agent SDK
SYNOPSIS
use Claude::Agent::Content;
# Content blocks are part of assistant messages
for my $block (@{$msg->content_blocks}) {
if ($block->isa('Claude::Agent::Content::Text')) {
print $block->text;
}
elsif ($block->isa('Claude::Agent::Content::ToolUse')) {
print "Tool: ", $block->name, "\n";
}
}
DESCRIPTION
This module contains all content block types that can appear in assistant messages from the Claude Agent SDK.
CONTENT TYPES
Claude::Agent::Content::Text - Text response content
Claude::Agent::Content::Thinking - Extended thinking content
Claude::Agent::Content::ToolUse - Tool use request
Claude::Agent::Content::ToolResult - Tool execution result
METHODS
from_json
my $block = Claude::Agent::Content->from_json($data);
Factory method to create the appropriate content block type from JSON data.
AUTHOR
LNATION, <email at lnation.org>
LICENSE
This software is Copyright (c) 2026 by LNATION.
This is free software, licensed under The Artistic License 2.0 (GPL Compatible).