pub struct ThinkingBlock {
pub thinking: String,
pub signature: Option<String>,
}Expand description
Thinking block (extended thinking mode)
Contains Claude’s reasoning process when extended thinking mode is enabled. This block is OPTIONAL and only appears when the user explicitly enables extended thinking in their Claude settings.
§Example
{
"type": "thinking",
"thinking": "The user is asking about...",
"signature": "ErQYCkYICxgCKkA1FuCoAqSF..."
}§Usage
- Available when extended thinking mode is enabled
- Contains full reasoning process
- Includes cryptographic signature for verification
- Makes Claude competitive with Gemini for reasoning extraction
§Frequency
Variable - only present when extended thinking is enabled by user
Fields§
§thinking: StringFull reasoning text
Contains Claude’s complete thought process, including:
- Analysis of the request
- Consideration of alternatives
- Decision-making rationale
- Context evaluation
signature: Option<String>Cryptographic signature for verification
Used to verify the authenticity of the thinking content. Optional field that may not be present in all thinking blocks.
Trait Implementations§
Source§impl Clone for ThinkingBlock
impl Clone for ThinkingBlock
Source§impl Debug for ThinkingBlock
impl Debug for ThinkingBlock
Source§impl<'de> Deserialize<'de> for ThinkingBlock
impl<'de> Deserialize<'de> for ThinkingBlock
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ThinkingBlock
impl RefUnwindSafe for ThinkingBlock
impl Send for ThinkingBlock
impl Sync for ThinkingBlock
impl Unpin for ThinkingBlock
impl UnsafeUnpin for ThinkingBlock
impl UnwindSafe for ThinkingBlock
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more