Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Feature flags

The umbrella crate agentkit re-exports subcrates behind feature flags.

Default flags

  • coreagentkit-core
  • capabilitiesagentkit-capabilities
  • toolsagentkit-tools-core
  • task-manageragentkit-task-manager
  • loopagentkit-loop
  • reportingagentkit-reporting

Optional flags

  • compactionagentkit-compaction
  • contextagentkit-context
  • mcpagentkit-mcp
  • adapter-completionsagentkit-adapter-completions
  • provider-anthropicagentkit-provider-anthropic
  • provider-cerebrasagentkit-provider-cerebras
  • provider-groqagentkit-provider-groq
  • provider-mistralagentkit-provider-mistral
  • provider-ollamaagentkit-provider-ollama
  • provider-openaiagentkit-provider-openai
  • provider-openrouteragentkit-provider-openrouter
  • provider-vllmagentkit-provider-vllm
  • tool-fsagentkit-tool-fs
  • tool-shellagentkit-tool-shell
  • tool-skillsagentkit-tool-skills
  • tool-composeagentkit-tool-compose

Typical combinations

Minimal orchestration:

agentkit = { version = "0.9.0", features = ["core", "capabilities", "tools", "loop"] }

Coding agent:

agentkit = { version = "0.9.0", features = [
    "core", "capabilities", "context", "tools",
    "loop", "tool-fs", "tool-shell", "reporting",
] }

MCP-enabled agent:

agentkit = { version = "0.9.0", features = [
    "core", "capabilities", "context", "tools",
    "loop", "tool-fs", "tool-shell", "reporting", "mcp",
] }

OpenRouter-backed example host (streaming, prompt caching):

agentkit = { version = "0.9.0", features = [
    "core", "capabilities", "tools", "loop",
    "reporting", "provider-openrouter",
] }

OpenAI-compatible provider host (streaming):

agentkit = { version = "0.9.0", features = [
    "core", "capabilities", "tools", "loop",
    "reporting", "provider-groq",
] }

Swap provider-groq for provider-mistral, provider-vllm, provider-ollama, or provider-openai as needed.

Anthropic Messages API host (streaming, extended thinking, server tools):

agentkit = { version = "0.9.0", features = [
    "core", "capabilities", "tools", "loop",
    "reporting", "provider-anthropic",
] }

Cerebras Inference host (streaming, reasoning, rate-limit snapshot):

agentkit = { version = "0.9.0", features = [
    "core", "capabilities", "tools", "loop",
    "reporting", "provider-cerebras",
] }

The agentkit-provider-cerebras crate itself carries granular Cargo features for preview surfaces: compression (msgpack + gzip request bodies), predicted-outputs, service-tiers, batch (Files + Batch API), and an experimental umbrella that pulls in all three preview flags. Enable them on the provider crate directly when you need them — the umbrella provider-cerebras flag wires in the default build.