Skip to main content

Crate nucel_agent_sdk

Crate nucel_agent_sdk 

Source
Expand description

Nucel Agent SDK — Unified

One import for all providers. Swap coding agents via configuration.

§Quick Start

use nucel_agent_sdk::{AgentExecutor, ClaudeCodeExecutor, SpawnConfig};
use std::path::Path;

let executor = ClaudeCodeExecutor::new();

let session = executor.spawn(
    Path::new("/my/repo"),
    "Fix the failing tests",
    &SpawnConfig {
        model: Some("claude-opus-4-6".into()),
        budget_usd: Some(5.0),
        ..Default::default()
    },
).await?;

println!("Response: {}", session.query("Check if CI passes now").await?.content);
session.close().await?;

§Provider Selection

use nucel_agent_sdk::*;

// Via config string (like agent-operator does)
let executor = build_executor("claude-code", None);
let executor = build_executor("codex", Some("sk-...".into()));
let executor = build_executor("opencode", Some("http://localhost:4096".into()));

Structs§

AgentCapabilities
Capability flags for a provider implementation.
AgentCost
Cost breakdown for a single query or session.
AgentResponse
Response from a coding agent query.
AgentSession
Active agent session.
AvailabilityStatus
Runtime availability of the provider.
ClaudeCodeExecutor
Claude Code executor — spawns claude CLI subprocess.
CodexExecutor
Codex executor — spawns codex exec CLI subprocess.
OpencodeExecutor
OpenCode executor — connects to OpenCode HTTP server.
SessionMetadata
Metadata about a session (persistable, cloneable).
SpawnConfig
Configuration for spawning a new session.

Enums§

AgentError
ExecutorType
Supported executor backends.
PermissionMode
Permission mode for file system and command operations.

Traits§

AgentExecutor
Core trait — every provider implements this.

Functions§

available_providers
List all available provider names.
build_executor
Build an executor from a config string (like providers.agent = "claude-code").

Type Aliases§

Result