Skip to main content

Crate agent_sdk_toolkit

Crate agent_sdk_toolkit 

Source
Expand description

Optional concrete tool-pack helpers for the Agent SDK.

This crate owns filesystem, search, edit, write, shell, resource-reader, discovery, and adapter-conformance helpers. agent-sdk-core stays product-neutral and only sees runtime-package capabilities, tool executor refs, policy refs, content refs, and effect lineage.

Re-exports§

pub use agent_pool::SqliteAgentPoolStore;
pub use discovery::ToolDiscoveryExecutor;
pub use discovery::ToolDiscoveryIndex;
pub use discovery::ToolDiscoveryRequest;
pub use packs::ToolkitPackBundle;
pub use packs::tool_snapshot;
pub use protocol::JsonRpcErrorObject;
pub use protocol::JsonRpcFrame;
pub use protocol::JsonRpcId;
pub use protocol::JsonRpcLineCodec;
pub use protocol::JsonRpcLineEndpoint;
pub use protocol::JsonRpcNotification;
pub use protocol::JsonRpcRequest;
pub use protocol::JsonRpcResponse;
pub use resources::InMemoryResourceResolver;
pub use resources::ResourceReaderExecutor;
pub use resources::ResourceReaderRequest;
pub use shell::ShellExecutionPolicy;
pub use shell::ShellExecutor;
pub use shell::ShellRequest;
pub use shell::ShellResult;
pub use testing::InMemoryJsonArgumentStore;
pub use testing::InMemoryToolkitContentStore;
pub use workspace::BoundedWorkspace;
pub use workspace::HashLineAnchor;
pub use workspace::SearchMatch;
pub use workspace::WorkspaceApplePhotosMetadata;
pub use workspace::WorkspaceArchiveEntry;
pub use workspace::WorkspaceArchiveMetadata;
pub use workspace::WorkspaceDocumentMetadata;
pub use workspace::WorkspaceEditExecutor;
pub use workspace::WorkspaceEditOutput;
pub use workspace::WorkspaceEditRequest;
pub use workspace::WorkspaceEmbeddedPreviewMetadata;
pub use workspace::WorkspaceFileKind;
pub use workspace::WorkspaceFileTypeConfidence;
pub use workspace::WorkspaceMediaMetadata;
pub use workspace::WorkspaceOcrMetadata;
pub use workspace::WorkspacePolicy;
pub use workspace::WorkspaceRawSensorMetadata;
pub use workspace::WorkspaceReadDetection;
pub use workspace::WorkspaceReadExecutor;
pub use workspace::WorkspaceReadOutput;
pub use workspace::WorkspaceReadRequest;
pub use workspace::WorkspaceReaderStep;
pub use workspace::WorkspaceResourceMetadata;
pub use workspace::WorkspaceSearchExecutor;
pub use workspace::WorkspaceSearchOutput;
pub use workspace::WorkspaceSearchRequest;
pub use workspace::WorkspaceSqliteMetadata;
pub use workspace::WorkspaceSqliteTableMetadata;
pub use workspace::WorkspaceWriteExecutor;
pub use workspace::WorkspaceWriteMode;
pub use workspace::WorkspaceWriteOutput;
pub use workspace::WorkspaceWriteRequest;

Modules§

agent_pool
Public agent-pool toolkit namespace. Use it for concrete pool-store adapters layered over agent-sdk-core coordination ports. SQLite-backed agent-pool coordination store.
discovery
Tool discovery helpers for optional toolkit capabilities. Use these modules to index hidden candidates, return model-facing discovery results, and construct package deltas for host-approved activation. Searching is data-only; package mutation happens only when a delta is applied.
packs
Public packs namespace. Use it for the documented packs API surface; prefer crate-root re-exports for common imports. Module items must preserve the toolkit ownership and side-effect boundaries described in this file. Toolkit pack assembly helpers. Use these modules to turn toolkit operations into core package capabilities, sidecars, and routes. Pack assembly is data-only and does not execute tools or mutate a runtime package until explicitly installed.
protocol
Public protocol namespace. Use it for the documented protocol API surface; prefer crate-root re-exports for common imports. Module items must preserve the toolkit ownership and side-effect boundaries described in this file. JSON-RPC protocol primitives and line-transport helpers.
resources
Public resources namespace. Use it for the documented resources API surface; prefer crate-root re-exports for common imports. Module items must preserve the toolkit ownership and side-effect boundaries described in this file. Resource-reader helpers layered over explicit URI resolvers and core content refs. Use these modules when a host wants toolkit tools to read approved resources. Resolver implementations own any backing-store or network side effects.
shell
Public shell namespace. Use it for the documented shell API surface; prefer crate-root re-exports for common imports. Module items must preserve the toolkit ownership and side-effect boundaries described in this file. Concrete shell tool helpers layered over core policy and effect contracts. Use these modules only behind host approval, sandbox, timeout, and network policy. Execution starts host processes; request and policy types are data-only.
testing
Public testing namespace. Use it for the documented testing API surface; prefer crate-root re-exports for common imports. Module items must preserve the toolkit ownership and side-effect boundaries described in this file. Toolkit-specific deterministic test helpers. Use these fakes for content stores, argument stores, and scripted protocol harnesses without live editors, MCP servers, or product hosts. Helpers mutate only in-memory state unless noted.
workspace
Public workspace namespace. Use it for the documented workspace API surface; prefer crate-root re-exports for common imports. Module items must preserve the toolkit ownership and side-effect boundaries described in this file. Workspace tool-pack helpers.