Histeeria integrates at the decision boundary — after your framework produces a response. No vendor lock-in: wrap any stack with one observe() call.

Pattern

# 1. Run your framework as usual
result = agent.invoke(user_input)

# 2. Observe the decision
h.observe(
    input=user_input,
    output=result["output"],
    agent_id="my-agent",
    session_id=session_id,
    metadata={"framework": "langchain"},
)

OpenAI / Anthropic

response = client.chat.completions.create(model="gpt-4o", messages=messages)
text = response.choices[0].message.content

h.observe(
    input=messages,
    output=text,
    agent_id="gpt-support",
    input_tokens=response.usage.prompt_tokens,
    output_tokens=response.usage.completion_tokens,
)

LangChain

Wrap at the chain or agent executor level:
result = chain.invoke({"input": question})
h.observe(
    input=question,
    output=result["output"],
    agent_id="langchain-rag",
    session_id=thread_id,
    metadata={"retriever": "pinecone"},
)
For multi-step agents, use Tracing inside custom callbacks or step hooks.

LlamaIndex / CrewAI / AutoGen

Same pattern: observe after each agent turn or at workflow completion. Use trace() for crew handoffs and multi-agent graphs.

REST without SDK

If you can’t install a package, POST /v1/ingest with your API key works from any language. See Ingest API.

Supported integrations (marketing list)

OpenAI, Anthropic, LangChain, LlamaIndex, CrewAI, AutoGen, and custom agents via SDK or REST.