83 logger->info(
"register_compactor: identity='{}'",
84 identity ? identity :
"(global)");
86 identity ? identity :
"", compactor, user_data);
102 const char* identity) {
108 identity ? identity :
"");
137 *compactor =
nullptr;
138 if (user_data) { *user_data =
nullptr; }
Private definition of the entropic_engine struct.
Public C API for the Entropic inference engine.
int(* entropic_compactor_fn)(const char *messages_json, const char *config_json, char **out_messages, char **out_summary, void *user_data)
Compactor function type.
ENTROPIC_EXPORT entropic_error_t entropic_register_compactor(entropic_handle_t handle, const char *identity, entropic_compactor_fn compactor, void *user_data)
Register a custom compactor for an identity.
ENTROPIC_EXPORT entropic_error_t entropic_get_default_compactor(entropic_handle_t handle, entropic_compactor_fn *compactor, void **user_data)
Get the built-in default compactor function pointer.
ENTROPIC_EXPORT entropic_error_t entropic_deregister_compactor(entropic_handle_t handle, const char *identity)
Deregister a custom compactor for an identity.
static entropic_error_t check_compactor(entropic_handle_t h)
Check handle prerequisites for compaction APIs.
ENTROPIC_EXPORT entropic_error_t entropic_compact(entropic_handle_t handle, const char *identity, char **result_json)
Trigger compaction on current context.
entropic_error_t
Error codes returned by all C API functions.
@ ENTROPIC_ERROR_INVALID_ARGUMENT
NULL pointer, empty string, out-of-range value.
@ ENTROPIC_ERROR_INVALID_HANDLE
NULL or destroyed handle (v1.8.9)
@ ENTROPIC_ERROR_INVALID_CONFIG
Config validation failed (missing fields, bad values)
@ ENTROPIC_ERROR_INVALID_STATE
Operation not valid in current state (e.g., generate before activate)
spdlog initialization and logger access.
ENTROPIC_EXPORT std::shared_ptr< spdlog::logger > get(const std::string &name)
Get or create a named logger.
Engine handle struct — owns all subsystems.
std::unique_ptr< entropic::CompactorRegistry > compactor_registry
Compaction strategies.
std::unique_ptr< entropic::AgentEngine > engine
Agentic loop (owns conversation state)