Skip to main content

hackagent.core.contracts.enums

Enums. Wire values are persisted and must not change.

AgentType Objects​

class AgentType(str, Enum)

How HackAgent talks to a model or agent.

Chat-completion types (LITELLM, OPENAI, OLLAMA, LANGCHAIN) are driven through LiteLLM. GOOGLE_ADK, CLAUDE_CODE, CODEX, HERMES and WEB use dedicated adapters. MCP and A2A are placeholders. UNKNOWN is the fallback when a type cannot be inferred.

OPENAI_SDK​

Former name of OPENAI; an alias, so AgentType.OPENAI is AgentType.OPENAI.

_missing_​

@classmethod
def _missing_(cls, value: object) -> Optional["AgentType"]

Accept any case and the aliases in _AGENT_TYPE_ALIASES.

parse​

@classmethod
def parse(cls, value: Union["AgentType", str, None]) -> "AgentType"

Parse leniently: an unrecognised value becomes UNKNOWN.

RunStatus Objects​

class RunStatus(str, Enum)

Lifecycle of a run.

StepKind Objects​

class StepKind(str, Enum)

Kind of a recorded trace step.

EvalStatus Objects​

class EvalStatus(str, Enum)

Evaluation outcome of a result.