pub async fn query(
prompt: impl Into<String>,
options: Option<ClaudeAgentOptions>,
) -> Result<Vec<Message>>Expand description
Query Claude Code for one-shot interactions.
This function is ideal for simple, stateless queries where you don’t need bidirectional communication or conversation management.
§Examples
use claude_agent_sdk_rs::{query, Message, ContentBlock};
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let messages = query("What is 2 + 2?", None).await?;
for message in messages {
match message {
Message::Assistant(msg) => {
for block in &msg.message.content {
if let ContentBlock::Text(text) = block {
println!("Claude: {}", text.text);
}
}
}
_ => {}
}
}
Ok(())
}