@goderash/adapter-langgraph
v0.1.1
Published
LangGraph.js / LangChain.js callback handler that emits Goderash audit events — tamper-evident, hash-chained, regulator-ready.
Maintainers
Readme
@goderash/adapter-langgraph
LangGraph.js / LangChain.js callback handler that emits Goderash audit events.
Drop-in adapter for LangGraph.js and LangChain.js. Plugs into LangChain's standard callback system, so every node, tool call, and LLM call your agent makes lands in Goderash — tamper-evident, hash-chained, regulator-ready.
Mirrors the Python adapter: goderash-adapter-langgraph.
Install
npm i @goderash/sdk @goderash/adapter-langgraph @langchain/coreQuickstart
import { GoderashClient } from '@goderash/sdk'
import { GoderashCallback } from '@goderash/adapter-langgraph'
import { StateGraph } from '@langchain/langgraph'
const goderash = new GoderashClient({
apiKey: process.env.GODERASH_API_KEY!,
tenant: 'acme',
agentId: 'support-agent-v1',
})
const callback = new GoderashCallback({ client: goderash })
const graph = new StateGraph({ /* ... */ })
.addNode(/* ... */)
.compile()
await graph.invoke(
{ messages: [{ role: 'user', content: 'help me' }] },
{ callbacks: [callback] },
)
// → root chain start → agent.turn.started
// → tool calls → tool.invoked / tool.completed
// → LLM calls → llm.call.started / llm.call.completed
// → root chain end → agent.turn.completed
// All hash-chained into the per-tenant ledger.Events emitted
| LangChain callback | Goderash event |
|---|---|
| handleChainStart (root) | agent.turn.started |
| handleChainEnd (root) | agent.turn.completed |
| handleToolStart | tool.invoked |
| handleToolEnd | tool.completed |
| handleToolError | tool.failed |
| handleLLMStart | llm.call.started |
| handleLLMEnd | llm.call.completed (with token usage) |
Compatibility
@langchain/core>= 0.3.0- LangGraph.js
>= 0.2.0 - LangChain.js
>= 0.3.0 - Node 18+, ESM
Related packages
@goderash/sdk— core SDK + runtime guards@goderash/adapter-claude-sdk— Anthropic Messages / Claude SDK@goderash/adapter-openai-assistants— OpenAI Assistants API
