pulsehive-core
Core traits and types for the PulseHive multi-agent SDK.
This crate defines the public API surface — all traits, type definitions, and error types used across the PulseHive ecosystem. It has zero runtime dependencies on LLM providers or HTTP clients.
Most users should use the
pulsehivemeta-crate instead of depending on this crate directly. Usepulsehive-coreonly if you're implementing a custom LLM provider or embedding provider.
Core Traits
| Trait | Purpose |
|---|---|
LlmProvider |
LLM chat + streaming interface |
Tool |
Pluggable agent capability (name, description, parameters, execute) |
EmbeddingProvider |
Domain-specific embedding models |
ApprovalHandler |
Human-in-the-loop approval for tool execution |
ExperienceExtractor |
Custom experience extraction from conversations |
Key Types
| Type | Description |
|---|---|
AgentDefinition |
Agent blueprint (name + kind) |
AgentKind |
Llm, Sequential, Parallel, or Loop |
Lens |
Perception filter (domains, type weights, recency curve, attention budget) |
LlmConfig |
Provider + model + temperature + max_tokens |
HiveEvent |
14 lifecycle event variants for observability |
ToolResult |
Text, Json, or Error result from tool execution |
PulseHiveError |
Top-level error enum (Substrate, Llm, Tool, Agent, Config, Validation, Embedding) |
Implementing a Custom Provider
use async_trait;
use *;
use Result;
;
Links
License
AGPL-3.0-only