agentyk-core
The agentyk contract crate: everything a host or extension implements
against, and nothing else. If you are building an application, depend on
agentyk (which re-exports all of
this); depend on agentyk-core directly when you are implementing a
seam — a custom [tool::Tool], [capability::Capability],
[driver::ChatDriver], [event_log::EventLog], or
[executor::TurnExecutor] (e.g. a durable execution host).
Contents:
- Protocol data — [
event] (the event protocol), [message], [tool] definitions, typed [id]s, [error]. - Seams — the traits in [
capability], [tool], [driver], [event_log], [event] (listeners), [executor], and [hooks] (pre/post tool interception). - The turn machine — [
turn] (pure, serializable) and the stateless [atoms] it sequences; [replay] folds an event log back into message history.
This crate is deliberately lean: no tokio, no HTTP, no process spawning —
pure data, traits, and std-only implementations (like
[event_log::InMemoryEventLog]).