Skip to main content

qwencode_rs/
lib.rs

1//! # qwencode-rs
2//!
3//! Rust SDK for programmatic access to QwenCode CLI.
4//!
5//! ## Quick Start
6//!
7//! ```ignore
8//! use qwencode_rs::{query, QueryOptions, SDKMessage};
9//!
10//! let result = query("What files are in the current directory?", QueryOptions::default()).await?;
11//! while let Some(msg) = result.next_message().await {
12//!     match msg {
13//!         Ok(SDKMessage::Assistant(a)) => println!("Assistant: {}", a.message.content),
14//!         Ok(SDKMessage::Result(r)) => println!("Result: {:?}", r.result),
15//!         _ => {}
16//!     }
17//! }
18//! ```
19
20pub mod mcp;
21pub mod query;
22pub mod transport;
23pub mod types;
24pub mod utils;
25
26// Re-export main public API
27pub use types::config::*;
28pub use types::error::*;
29pub use types::mcp::*;
30pub use types::message::*;
31pub use types::permission::*;
32
33pub use query::builder::QueryBuilder;
34pub use query::handler::{query, query_builder, QueryResult};
35pub use query::session::QueryHandle;
36
37pub use mcp::client::McpClient;
38pub use mcp::server::{create_sdk_mcp_server, SdkMcpServer};
39pub use mcp::tool::McpTool;