ai-cortex-sdk 0.1.0

Rust client SDK for AI Cortex server: PAT auth, device binding, software store, offline license (Ed25519), and auto-update (check-update pull + SSE push).
Documentation
use ai_cortex_sdk::{CortexClient, CortexConfig};

/// 验证 PAT 是否有效:用 PAT 列一次软件目录,成功即凭证可用。
///
/// Usage:
///   cargo run --example auth_check -- <PAT>
#[tokio::main]
async fn main() {
    let pat = std::env::args()
        .nth(1)
        .unwrap_or_else(|| "REPLACE_WITH_YOUR_PAT".to_string());

    // software_id 占位:心跳会按此软件的许可证校验设备上限。
    let software_id = "00000000-0000-0000-0000-000000000000".to_string();

    let config = CortexConfig::new("http://localhost:40404", pat, software_id);
    let client = CortexClient::new(config);

    match client.list_software().await {
        Ok(items) => {
            println!("PAT valid. Software store returned {} item(s).", items.len());
        }
        Err(e) => {
            eprintln!("PAT check failed: {e}");
            std::process::exit(1);
        }
    }

    println!("\n--- My Devices ---");
    match client.list_devices().await {
        Ok(devices) => {
            println!("{} bound device(s).", devices.len());
            for d in devices {
                println!(
                    "- fingerprint={}, last_active={}",
                    d.fingerprint, d.last_active_time
                );
            }
        }
        Err(e) => eprintln!("List devices failed: {e}"),
    }
}