Human-in-the-loop approval dashboard for LangGraph agents — open source, free to deploy

I’ve been building LangGraph agents and kept hitting the same problem: no clean way to pause an agent before a sensitive action and wait for a human to approve or reject it before it executes.

LangGraph has interrupt() built in, but you still need somewhere to surface that interrupt to a reviewer, collect their decision, and return it to the agent. That’s the gap I built LangGraph Approval Hub to fill.

How it works

Your agent calls request_approval() — execution pauses. A reviewer sees the pending action on a real-time dashboard, approves or rejects with an optional note, and the agent gets the decision and continues.

from  langgraph_approval_hub import  request_approval

result = request_approval(
    hub_url="https://your-app.vercel.app",
    api_token="your-token",
    agent_name="FinanceBot",
    action_description="Transfer $5,000 to vendor account #4892",
    assignee="cfo@company.com",
    assignee_type="email",
)

if result["status"] == "approved":
    execute_transfer()

What’s included

  • Real-time dashboard (Next.js + Supabase Realtime)
  • Audit log — every decision timestamped, exportable to JSON
  • Email + Slack notifications when approvals arrive
  • Team routing — any member of a group can approve
  • Non-blocking async flow
  • Runs free on Vercel + Supabase free tiers

Links

Deploy takes ~5 minutes. Would love feedback from anyone building production LangGraph agents — especially edge cases I might have missed.