SDK / Core overview
These crates build on each other:
agent_core— protocol-agnostic domain types (messages, content parts, task phases, conversation context). Zero dependencies beyondserde.agent_sdk— runtime-first SDK facade:AgentBuilder, skills, services, LLM engine, A2A/AG-UI adapters, host composition. 25+ feature flags for granular opt-in.pf_macros— proc-macro crate:#[pf_agent]attribute that generates the Spin#[http_component]wiring for WASM agents.pf-types— lightweight naming and validation primitives (AgentSlug,normalize_name). Intentionally minimal for broad dependency use.pf_config— layered configuration loader (JSON files →.env→ OS environment → optionalCargo.tomlsection) with typed deserialization.
Feature flags and public exports are defined in each crate’s Cargo.toml and src/lib.rs. Use those as the source of truth; this site summarizes them and does not replace cargo doc.
agent_sdk Runtime-first SDK facade: AgentBuilder, skills, services, LLM engine, A2A/AG-UI adapters.
agent_core Protocol-agnostic domain types — messages, content parts, task phases, conversation context.
pf_macros Proc-macro: #[pf_agent] attribute for Spin/A2aApp wiring.
pf-types Lightweight naming and validation primitives (AgentSlug, normalize_name).
pf_config Layered configuration loader (JSON, env, dotenv, Cargo.toml section).
See also: Guides for step-by-step walkthroughs, and Concepts for architectural background.