A fully functional React interface for debugging and testing GoLangGraph agents, adapted from the LangGraph Studio interface. This provides a comprehensive development environment for GoLangGraph applications without any limits for production use.
This interface is a visual control plane for GoLangGraph development. Every authoring surface is tied to a real server capability; controls that require application-owned Go code are called out rather than simulated.
- Visual Graph Representation: Interactive flow diagram showing your GoLangGraph execution
- Real-time Node Status: See which nodes are running, completed, or errored
- Execution Path Tracking: Visual representation of the current execution path
- Graph Controls: Run, step through, or stop graph execution
- Interactive Nodes: Click and inspect individual nodes
- Agent Type Support: Visualizes Chat, ReAct, and Tool agent types
- Clean Chat Interface: Similar to the official LangGraph Studio chat mode
- Message History: Persistent conversation threads
- Markdown Support: Rich text rendering for assistant responses
- Typing Indicators: Real-time feedback during message processing
- Thread Management: Create, switch between, and manage multiple chat threads
- Agent Selection: Easy switching between different GoLangGraph agents
- State Inspection: View current graph state and variables
- Step-by-Step Execution: Detailed breakdown of each execution step
- Execution Logs: Real-time logs with different severity levels
- Variable Tracking: Monitor how variables change throughout execution
- Performance Metrics: Execution timing and duration tracking
- WebSocket Streaming: Real-time updates during execution
- Live Agent CRUD: Create, edit, select, and delete agents through the
production
/api/v1/agentsAPI - Provider and Tool Awareness: Configure agents against providers and tools exposed by the connected server
- Visual Multi-Agent Pipelines: Compose existing agents into a deterministic sequential execution graph
- Server-Validated Publishing: The server refuses unknown agents and never accepts executable browser code; each published pipeline is a real registered graph that can be inspected and executed through the normal API
- Run Lab: Execute a published pipeline and inspect each node result and state checkpoint
- Honest Boundaries: Custom Go node functions and conditional routing stay application-owned rather than being shown as pretend drag-and-drop controls
- Persistent Agent History: Reload server-side execution history for the selected agent
- Pipeline Checkpoints: Browse graph steps and state snapshots produced in the current Studio session
- Agent Management: Create and manage multiple GoLangGraph agents
- Thread Management: Organize conversations and execution sessions
- Connection Setup: Easy configuration for GoLangGraph server connections
- Responsive Design: Works on desktop and mobile devices
- Real-time Updates: Live updates during graph execution via WebSocket
- Node.js 20.19+
- npm or yarn
- A running GoLangGraph server (for actual functionality)
-
Clone the repository
git clone <repository-url> cd golanggraph-studio-interface
-
Install dependencies
npm install # or yarn install -
Start the development server
npm start # or yarn start -
Open your browser Navigate to
http://localhost:5173
When you first open the application, you'll see a connection setup screen:
- Server URL: Enter your GoLangGraph server URL (default:
http://localhost:8080) - Agent ID: (Optional) Specify a default agent ID
- API Key: (Optional) Your API key for authenticated requests
You can also configure the application using environment variables:
# .env file
VITE_API_URL=http://localhost:8080Before using this interface, make sure you have a GoLangGraph server running. You can use the built-in auto-server:
# Navigate to your GoLangGraph project
cd your-golanggraph-project
# Start the auto-server (example)
go run cmd/golanggraph/main.go serve --config config.yamlThis will start the GoLangGraph server at http://localhost:8080 by default.
- Connection Setup: Configure your GoLangGraph server connection
- Choose Your View:
- Graph View: Visualize and control graph execution
- Chat Mode: Interactive chat with your agent
- Debug View: Inspect execution details and logs
- Create Agents: Set up different agent configurations
- Manage Threads: Organize your conversations and sessions
src/
βββ components/
β βββ layout/ # Layout components (Header, Sidebar, etc.)
β βββ setup/ # Connection setup components
β βββ views/ # Main view components (Graph, Chat, Debug)
βββ store/ # Zustand state management
βββ types/ # TypeScript type definitions
βββ index.css # Global styles and Tailwind imports
βββ App.tsx # Main application component
- React 18: Modern React with hooks and concurrent features
- TypeScript: Type-safe development
- Zustand: Lightweight state management
- Tailwind CSS: Utility-first CSS framework
- React Flow: Interactive graph visualization
- React Markdown: Markdown rendering for chat messages
- Heroicons: Beautiful SVG icons
- Date-fns: Date formatting utilities
- WebSocket: Real-time communication with GoLangGraph
The interface is designed to work with the GoLangGraph Server API:
GET /api/v1/health- Server health checkGET /api/v1/agents- List available agentsGET /api/v1/agents/{id}- Get agent detailsPOST /api/v1/agents/{id}/execute- Execute an agentGET /api/v1/agents/{id}/history- Get execution historyGET /api/v1/tools- List available toolsGET /api/v1/providers- List LLM providersPOST /api/v1/agents- Create an agentPUT/DELETE /api/v1/agents/{id}- Update or delete an agentGET /api/v1/graphs- List registered graphs and pipelinesPOST /api/v1/pipelines- Publish a safe visual sequential-agent pipelineDELETE /api/v1/pipelines/{id}- Delete a Studio-published pipelinePOST /api/v1/graphs/{id}/execute- Run a graph and receive node checkpointsWS /api/v1/ws/agents/{id}/stream- Stream execution events (WebSocket)
The interface authenticates requests by sending the configured API key in the
X-API-Key header. If no key is configured, requests are sent without it
(the server accepts unauthenticated requests in development mode).
The interface supports all GoLangGraph agent types:
- Chat Agent: Simple conversational flow
- ReAct Agent: Reasoning and Acting pattern with observe loops
- Tool Agent: Planning, execution, and review cycle
The interface uses Tailwind CSS for styling. You can customize the appearance by:
- Modifying the Tailwind config (
tailwind.config.js) - Updating CSS variables in
src/index.css - Creating custom components with your own styling
The modular architecture makes it easy to add new features:
- Create new components in the appropriate directory
- Add new state to the Zustand store
- Update types in
src/types/index.ts - Add new views by creating components in
src/components/views/
If you're migrating from the original LangGraph Studio interface:
- API Endpoints: GoLangGraph uses
/api/v1/prefix and different endpoint structure - Agent vs Assistant: GoLangGraph uses "agents" instead of "assistants"
- WebSocket Streaming: Uses WebSocket instead of Server-Sent Events
- Graph Structure: Different node and edge metadata format
- Execution Model: Direct agent execution instead of runs/threads
The interface maintains backward compatibility for:
- Message history format
- Thread structure
- Basic configuration
Contributions are welcome! Please feel free to submit a Pull Request.
- Follow TypeScript best practices
- Use Tailwind CSS for styling
- Write meaningful commit messages
- Add types for new features
- Test your changes thoroughly
This project is licensed under the MIT License - see the LICENSE file for details.
- GoLangGraph Team: For creating the excellent GoLangGraph framework
- LangChain Team: For inspiration from the original LangGraph Studio
- React Flow: For the excellent graph visualization library
- Tailwind CSS: For the utility-first CSS framework
- Heroicons: For the beautiful icon set
- GoLangGraph Documentation
- GoLangGraph GitHub Repository
- Original LangGraph Studio
- React Flow Documentation
This repository has been migrated from piotrlaczkowski/GoLangGraphStudio to UnicoLab/GoLangGraphStudio. GitHub automatically redirects the old URL, so existing clones, links, and references keep working. The legacy remote is retained as piotrlaczkowski for backward compatibility.
Note: This is an independent React interface specifically adapted for GoLangGraph. For the official LangGraph Studio, please visit studio.langchain.com.


