Skip to content

feat: Add automatic agent-visibility dashboard integration#593

Open
hit1001 wants to merge 1 commit intoOpenBMB:mainfrom
hit1001:feat/agent-visibility-integration
Open

feat: Add automatic agent-visibility dashboard integration#593
hit1001 wants to merge 1 commit intoOpenBMB:mainfrom
hit1001:feat/agent-visibility-integration

Conversation

@hit1001
Copy link
Copy Markdown

@hit1001 hit1001 commented Mar 31, 2026

What this PR does:

Integrates agent-visibility-cli — a live dashboard that shows agent activity, message flow, tool calls, and plans in real time — into ChatDev with zero YAML changes required.

How it works

Every workflow run automatically streams events to the dashboard at http://localhost:4242 (configurable via VISIBILITY_URL env var):

Graph preview — selecting a workflow instantly populates the dashboard with the agent graph (nodes + edges) before launch
Live execution — as the workflow runs, agents light up with active/done status, arrows animate between agents, tool calls and LLM generations appear in the Tools tab, and each agent's output is recorded in the Memory tab
Auto-reset — switching workflows or relaunching always starts with a clean slate

Files changed

utils/visibility_bridge.py — new VisibilityLogger subclass that maps all WorkflowLogger events to dashboard calls
server/services/websocket_logger.py — extend VisibilityLogger instead of WorkflowLogger
server/services/websocket_executor.py — pass task_prompt and graph_config to the logger
server/services/workflow_run_service.py — reset dashboard before each run
server/routes/execute_sync.py — add GET /api/workflow/preview/{file} endpoint
frontend/src/pages/LaunchView.vue — call preview endpoint on workflow selection
functions/function_calling/visibility.py — optional function tools for explicit YAML control
yaml_instance/demo_visibility.yaml — demo workflow showing explicit visibility usage

Setup

Start the visibility dashboard first

git clone https://github.com/hit1001/multiagent-visibility-tool.git
cd agent-visibility-cli && node src/server.js

Then start ChatDev as usual

cd ChatDev && make dev
Open http://localhost:4242 alongside the ChatDev UI.

- visibility_bridge.py: VisibilityLogger subclass that mirrors all
  workflow events (NODE_START/END, TOOL_CALL, MODEL_CALL, EDGE_PROCESS,
  WORKFLOW_START/END) to the agent-visibility dashboard at localhost:4242
- WebSocketLogger now extends VisibilityLogger so the web UI path gets
  automatic visibility without any YAML changes
- workflow_run_service: resets dashboard before each run so switching or
  relaunching workflows always shows a clean slate
- execute_sync: GET /api/workflow/preview/{file} endpoint populates the
  dashboard graph immediately when a workflow is selected (before launch)
- LaunchView: calls the preview endpoint on workflow selection
- functions/visibility.py + demo_visibility.yaml: opt-in function tools
  for workflows that want explicit control over dashboard events
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant