Java API (Core Contracts)
Entry points
Primary interfaces
| Type | Package | Role |
|---|---|---|
| ConversationalEngine | engine.core | Main process method |
| LlmClient | llm.core | LLM adapter contract |
| EngineStep | engine.pipeline | Step unit contract |
| EngineStepHook | engine.hook | Step interception contract |
| ConvEngineVerboseAdapter | transport.verbose | Consumer-facing verbose UI emission helper |
| McpToolExecutor | engine.mcp.executor | Tool-group executor contract |
| ConversationMemoryStore | engine.memory | Pluggable memory adapter |
| CeTask | engine.task | Task contract for pending/rule execution |
ConversationalEngine
package: com.github.salilvnair.convengine.engine.core
JAVA
public interface ConversationalEngine {
EngineResult process(EngineContext engineContext);
}
LlmClient
package: com.github.salilvnair.convengine.llm.core
JAVA
public interface LlmClient {
String generateText(String hint, String contextJson);
String generateJson(String hint, String jsonSchema, String contextJson);
float[] generateEmbedding(String input);
}
EngineStep.Name enum (current)
package: com.github.salilvnair.convengine.engine.pipeline
JAVA
public interface EngineStep {
enum Name {
AuditUserInputStep,
CacheInspectAuditStep,
DialogueActStep,
InteractionPolicyStep,
CorrectionStep,
ActionLifecycleStep,
DisambiguationStep,
GuardrailStep,
IntentResolutionStep,
AddContainerDataStep,
SchemaExtractionStep,
PendingActionStep,
ToolOrchestrationStep,
StateGraphStep,
ResponseResolutionStep,
MemoryStep,
AutoAdvanceStep,
McpToolStep,
LoadOrCreateConversationStep,
FallbackIntentStateStep,
PersistConversationBootstrapStep,
ResetConversationStep,
PersistConversationStep,
PipelineEndGuardStep,
ResetResolvedIntentStep,
PolicyEnforcementStep,
RulesStep,
Unknown;
}
}
McpToolExecutor
package: com.github.salilvnair.convengine.engine.mcp.executor
JAVA
public interface McpToolExecutor {
String toolGroup();
String execute(CeMcpTool tool, Map<String, Object> args, EngineSession session);
}
ConversationMemoryStore
package: com.github.salilvnair.convengine.engine.memory
JAVA
public interface ConversationMemoryStore {
default String read(EngineSession session) { return null; }
default void write(EngineSession session, String summary) {}
}
Flow configuration API
Configuration classes
| Class | Purpose |
|---|---|
| ConvEngineFlowConfig | Runtime controls for dialogue/policy/lifecycle/guardrail/tool/stategraph/disambiguation/memory |
| ConvEngineEntityConfig | Dynamic table name mapping via convengine.tables |
| ConvEngineAuditConfig | Audit behavior controls |
Extension contracts
- ResponseTransformerHandler
- ContainerDataTransformerHandler
- rule task execution pathway via SET_TASK
- pending action execution via
CeTaskExecutor - tool adapters through
McpToolExecutorimplementations