Dev & Engineering langgraphlangchainfastapireactreactflowmcpvisual-workflowvector-search

Lang-Agent Visual Agent Configuration Platform

A LangGraph-based, finitely programmable agent configuration platform where custom state variables enable more precise node and flow control than traditional Workflows.

FollowAgents review · FARS-2.1
Not recommended
50/ 100 5-point scale 2.5 / 5
1 2 3 4 5 6
Per-dimension scores and reasoning
1Trust10 / 29 · 1.7/5

README only: MCP tools are invoked autonomously by ReactAgent; model and vector-store credentials are configured in the UI; recommending environment variables (PGVECTOR_PASSWORD etc.) is the sole credit. No least-privilege statement, no pre-execution user confirmation, no audit/data-flow logging, no rollback mechanism documented; no lockfile evidence for dependency security; LICENSE appendix copyright holder is blank. Deducted for all of these absences.

2Reliability8 / 14 · 2.9/5

README is internally coherent and the Poetry/Yarn install path is complete, but it is a single document with broken example links (e.g., examples/loop_chat. has no target) and failure/error handling is entirely unaddressed. Deducted for broken links and absent failure-message documentation.

3Adaptability9 / 18 · 2.5/5

Clearly targets users who want visual agent orchestration; scenarios cover chat, RAG, and multi-agent (Supervisor); limitations are honestly stated (custom state variables do not support list types; only OpenAI-compatible channels). However, no Python/Node versions are specified and conditional-expression syntax is only sketchily described. Deducted for missing version matrix and thin trigger-precision detail.

4Convention10 / 18 · 2.8/5

Documentation is well organized (install, configuration, nodes, extension), naming is consistent, install steps are actionable, known limitations are stated, and the Apache-2.0 LICENSE file is complete (full marks). But several example links are empty, there is no CHANGELOG or version number, and no maintainer/contribution guidance or update path. Deducted for broken links, absent versioning, unclear maintenance responsibility.

5Effectiveness9 / 13 · 3.5/5

Custom state variables plus a visual canvas and reusable agents offer clear differentiation from linear-workflow tools; JSON export/import and a chat panel make outputs observable. But the value claim rests on documentation alone with no tests or benchmarks; cost-benefit is left to the user. Deducted for unverified effectiveness claims.

6Verifiability4 / 8 · 2.5/5

All claims ('limited programmability', node behavior, extension mechanism) come from a single README source with no code, tests, or independent material to corroborate; factual claims and inferred value are mostly not conflated. Deducted for single-source traceability.

Evidence confidence: Low Reviewed Sep 12, 2026 Reviewed revision 476058e1b547
Safety controls not found in source: rollback or recovery path
Before you use it
  • Several example JSON links in the README are empty; claimed example scenarios cannot be verified
  • MCP tools are invoked autonomously by the LLM with no documented confirmation, permission scoping, or auditing — isolate deployments accordingly
  • Although environment variables are recommended for vector-store credentials, the UI still accepts passwords directly; watch storage and transport security
  • No dependency lockfile or language version requirements are provided, so reproducing the install environment is uncertain
  • No CHANGELOG or maintainer information; update and security-response path unclear; publisher unverified — assess additionally before production use
Review evidence [1][2]
See the full review method →

What does this agent do, and when should you use it?

Lang-Agent (GitHub: cqzyys/lang-agent) is an open-source (Apache-2.0) visual platform for configuring AI agents on top of LangGraph. The backend is a FastAPI application managed with Poetry; the frontend uses React with HeroUI, ReactFlow and Tailwind CSS, launched via yarn. Unlike traditional Workflow tools that simply pass each node's output as the next node's input, Lang-Agent lets users define custom state variables that nodes and conditional edges read and write, enabling finer control. Users compose agents on a drag-and-drop canvas from nodes (Start, LLM, VLM, Counter, Transformer, document/image loading and saving, code executor, command executor, vector retriever), prebuilt agents (ReactAgent, SupervisorAgent), and edges, then save, run, or import/export JSON. Its design philosophy is closer to comfyUI than to dify or coze: it encourages developers to build nodes tailored to their own business, and custom nodes are added by dropping a XXXNode.tsx file and a XXX_node.py file into designated directories without touching other code.

The platform provides model configuration (currently OpenAI-compatible channels only, with llm, vlm and embedding types), MCP configuration (via langchain-mcp-adapters), and vector store configuration (postgres or milvus, including document management and vectorization). The Agent configuration page shows a resource tree on the left and a canvas on the right: you drag in nodes such as Start, End, Input, LLM, VLM, Counter, Transformer, Doc Loader, Image Loader, Doc Save, code executor, command executor, and vector retriever, plus ReactAgent (which autonomously calls MCP tools) and SupervisorAgent (which orchestrates reusable agents), and connect them with default or conditional edges. State variables (with a default messages variable) are referenced in prompts and conditional-edge expressions via {{messages['x']}} or {{y}} syntax, and nodes update state after execution. Configured agents can be saved to the database, run with results shown in an on-page chatbot, or exported/imported as JSON (the examples folder ships loop_chat., poet1., react_agent_demo., supervisor_demo., and more).

  1. Python/React developers who want to orchestrate multi-step LLM pipelines visually instead of hand-writing LangGraph code
  2. Image-understanding scenarios: pipe base64 output from the Image Loader node into a VLM node for prompt-driven recognition or description
  3. Knowledge retrieval scenarios: vectorize txt/pdf/docx/md documents into postgres or milvus and query them via the vector retriever node
  4. Tool-calling scenarios: register MCP connections up front and let a ReactAgent autonomously invoke external tools
  5. Multi-agent orchestration: mark configured agents as reusable and let a SupervisorAgent delegate to them autonomously
  6. Loop and conditional logic: implement custom loops with the Counter node, Transformer node, and conditional-edge expressions

What are this agent's strengths and limitations?

Pros
  • Custom state variables can be read/written by nodes and conditional edges, giving more precise control than traditional Workflows that only pass one node's output to the next
  • A rich built-in node set out of the box — code executor, command executor, VLM, vector retriever, Counter, Transformer — covers file, multimodal, and retrieval scenarios
  • Low-cost extensibility: adding a custom node requires only a XXXNode.tsx on the frontend and a XXX_node.py on the backend, with no changes to other code
  • Agents can be exported/imported as JSON, and reusable agents enable composition and cross-environment migration
Limitations
  • Model channels currently support only OpenAI-compatible APIs; broader channel support is still pending
  • Only postgres and milvus vector stores are supported, and custom state variables do not yet support list types
  • You must deploy two sub-projects yourself (Poetry backend + yarn frontend); no Docker or one-click deployment is documented
  • The command executor and Python code executor nodes actually execute local commands and code, so adopters must assess the security boundary themselves

How do you install or deploy this agent?

  1. Clone: git clone https://github.com/cqzyys/lang-agent.git
  2. Backend (install Poetry first): cd lang-agent-backend && poetry env use python && poetry shell && poetry install
  3. Frontend (install yarn first): cd lang-agent-frontend && yarn install
  4. For vector features, provision a postgres or milvus vector store.

How do you use this agent?

  1. Start the backend: python -m lang_agent.main
  2. Start the frontend: yarn dev, then open http://localhost:8820
  3. In Model Configuration, create a model connection (unique name; type llm/vlm/embedding; OpenAI-compatible ChatOpenAI parameters)
  4. For tool calls, add an MCP connection using langchain-mcp-adapters parameters; for retrieval, configure a vector store and upload/vectorize documents
  5. In Agent Configuration, create an agent, drag nodes and agents from the resource tree onto the canvas, set names, prompts and state variables, connect edges, save, and run — results appear in the chatbot at the bottom right.

How does this agent compare with similar options?

The README explicitly contrasts Lang-Agent with dify and coze: its design philosophy is closer to comfyUI, encouraging users to develop nodes tailored to their own business rather than offering a closed, platform-style orchestration experience.

FAQ

Which model providers are supported?
Currently only OpenAI-compatible channels, configured via LangChain ChatOpenAI connection parameters; the docs note that more channels will be supported later.
Do I have to configure a vector store?
No. A postgres or milvus vector store is only needed when you want to vectorize and store documents or perform vector retrieval.
How do I enable tool calling?
Add an MCP connection in MCP Configuration using langchain-mcp-adapters parameters, then use a ReactAgent node on the canvas so the model can autonomously call those tools.
Something failed or I want to reproduce a demo — where do I start?
The examples folder ships JSON samples per node (loop_chat., vlm_demo., supervisor_demo., etc.); import one via the canvas import feature and run it directly.
What is the development cost?
If built-in nodes are insufficient, you add a XXXNode.tsx on the frontend and a XXX_node.py on the backend to create a new node without touching platform code — but this assumes familiarity with React and Python.

Compare agents like this one

The same FARS review applied across the shortlist this agent qualifies for.

Related agents