A modern web application for visualizing OpenHands Resolver and their execution trajectory.
- GitHub Authentication: Secure GitHub token authentication with appropriate scopes
- Repository Selection: Easy navigation between repositories
- Workflow Run Timeline: Interactive timeline visualization of workflow execution steps
- OpenHands Support: Upload and visualize trajectories exported from OpenHands
- Dark/Light Mode: Full support for system and user preferences
- Responsive Design: Works seamlessly on desktop and mobile devices
- Keyboard Navigation: Efficient keyboard shortcuts for timeline traversal
- Node.js (v16 or higher)
- npm or yarn
-
Clone the repository:
git clone https://github.com/All-Hands-AI/trajectory-visualizer.git cd trajectory-visualizer
-
Install dependencies:
# Install frontend dependencies npm install
-
Start the development server:
npm start
-
Open http://localhost:3000 in your browser
To use Trajectory Visualizer with GitHub workflows, you'll need a GitHub personal access token with the following scopes:
repo
- Full control of private repositoriesworkflow
- Update GitHub Action workflows
Follow these steps to create a token:
- Go to GitHub Settings → Developer Settings → Personal Access Tokens → Tokens (classic)
- Generate a new token with the required scopes
- Copy the token and paste it into the application when prompted
You can also visualize trajectories exported from OpenHands:
- In OpenHands, use the download button next to the thumbs up/down buttons to export a trajectory
- In Trajectory Visualizer, click "Upload OpenHands Trajectory"
- Drag and drop the downloaded JSON file or click to select it
- The trajectory will be displayed in the timeline view
The timeline shows:
- Actions (commands, edits, searches) in blue
- Observations (messages, errors) in gray/red
- Each step shows the timestamp, title, content, and any metadata
- You can navigate through steps using arrow keys or clicking
- Frontend: React, TypeScript, Tailwind CSS
- Routing: React Router
- Styling: Tailwind CSS with dark mode support
- API Integration: Axios for GitHub API requests
trajectory-visualizer/
│ ├── public/
│ ├── src/
│ │ ├── components/
│ │ │ ├── upload/ # OpenHands trajectory upload
│ │ │ ├── timeline/ # Timeline visualization
│ │ │ └── ...
│ │ ├── services/
│ │ ├── types/
│ │ ├── utils/
│ │ │ └── openhands-converter.ts # OpenHands format converter
│ │ └── App.tsx
│ ├── package.json
│ └── tsconfig.json
└── README.md
npm start
: Start development servernpm build
: Build production-ready appnpm test
: Run testsnpm eject
: Eject from Create React App
This project is licensed under the MIT License - see the LICENSE file for details.
- GitHub for their comprehensive API