Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Powered by Gemini 3 Streamlit Playwright MIT License

🛠️ SessionSolve

Autonomous Visual Debugger — from bug video to pull request in one click.

Upload a screen recording of a bug. SessionSolve watches the video, listens to your commentary,
reads your codebase, diagnoses the root cause, generates a fix + regression test,
visually verifies the fix with Playwright, and opens a GitHub PR — fully autonomously.


✨ Features

Capability Description
🎬 Multimodal Analysis Gemini 3 watches your bug video frame-by-frame and listens for spoken commentary to cross-reference visual evidence with verbal intent.
🧠 Live Reasoning Console Watch the AI think in real time — a two-column layout streams the agent's reasoning alongside the reference video.
💻 Autonomous Code Fix Generates the complete corrected file (not a diff), targeting the exact root-cause lines.
🧪 Regression Test Generation Produces a self-contained Playwright .spec.ts test that replicates the user journey from the video.
📸 Visual Verification Starts a local dev server, replays user actions with Playwright, captures a screenshot, and asks Gemini to confirm the fix — all automatically.
🚀 GitHub PR Agent Clones the repo, creates a branch, commits the fix + test, attaches a verification screenshot, and opens a pull request.
🎤 Audio Intelligence Detects spoken frustration, intent, and verbal claims — with conflict resolution (visuals take priority if speech contradicts what's on screen).

🖥️ How It Works

┌─────────────┐     ┌──────────────────┐     ┌───────────────────┐     ┌──────────────┐
│  Bug Video   │────▶│  Gemini 3 Flash  │────▶│  Code Fix + Test  │────▶│  GitHub PR   │
│  (MP4/MOV)   │     │  (Vision+Audio)  │     │  + Verification   │     │  (Automated) │
└─────────────┘     └──────────────────┘     └───────────────────┘     └──────────────┘
  1. Upload a screen recording (MP4/MOV) of the bug in your web app.
  2. SessionSolve analyzes the video with Gemini 3 — watching UI interactions, listening for audio, and reading your source code.
  3. A fix is generated along with a Playwright regression test and an interactive capture script.
  4. Visual verification spins up your app locally, replays the user's actions, captures a screenshot, and sends it to Gemini for a pass/fail verdict.
  5. Choose your output:
    • Local Mode — patches the file on disk with a .bak backup.
    • GitHub Mode — pushes to a new branch and opens a PR with the verification screenshot attached.

🚀 Quick Start

Prerequisites

  • Python 3.10+
  • Node.js 18+ & npm (for Playwright visual verification)
  • A Gemini API key
  • (GitHub Mode only) A GitHub Personal Access Token (Classic) with repo scope

Install & Run

# Clone the repository
git clone https://github.com/MdRaf1/SessionSolve.git
cd SessionSolve

# Install Python dependencies
pip install -r requirements.txt

# Launch the app
streamlit run gui.py

The app opens at http://localhost:8501. Enter your Gemini API key in the sidebar and you're ready to go.

Docker

docker build -t SessionSolve .
docker run -p 7860:7860 SessionSolve

📂 Project Structure

SessionSolve/
├── gui.py               # Entire application — single-file Streamlit app
├── requirements.txt     # Python dependencies
├── Dockerfile           # Production container (Python + Node + Chromium libs)
├── dummy_project/       # Sample buggy project for testing
│   ├── index.html
│   ├── style.css
│   └── app.js
├── LICENSE              # MIT License
└── README.md

⚙️ Configuration

All configuration is done through the sidebar in the Streamlit UI:

Setting Description
Gemini API Key Your Google AI Studio API key for Gemini 3 Flash.
Operation Mode Local File Patching (edits files on disk) or GitHub Autonomous Agent (creates PRs).
Local Project Path Path to your project (Local mode). Default: ./dummy_project.
GitHub Token Personal Access Token with repo scope (GitHub mode).
Repository URL The target GitHub repository (GitHub mode).
Target Branch Base branch for the PR, typically main (GitHub mode).

🧪 Testing with the Dummy Project

The included dummy_project/ contains a simple counter app with an intentional bug. To test:

  1. Screen-record yourself clicking the counter button and noticing the bug.
  2. Upload the recording to SessionSolve.
  3. Set the project path to ./dummy_project.
  4. Click Analyze & Diagnose and watch the agent work.

🐳 Deploying to Hugging Face Spaces

This project is Docker SDK-ready for Hugging Face Spaces:

  1. Create a new Space with Docker SDK.
  2. Push this repo to the Space.
  3. Set your GEMINI_API_KEY as a Space secret.
  4. The app will be live on port 7860.

🛡️ Security Notes

  • API keys are entered at runtime via the UI and are never stored on disk or in logs.
  • In GitHub mode, tokens are injected into clone URLs in-memory only and are discarded after use.
  • Temporary directories (cloned repos, video files) are cleaned up automatically after each operation.

📄 License

This project is licensed under the MIT License — see the LICENSE file for details.


Built with ❤️ using Gemini 3 + Streamlit + Playwright
SessionSolve — because debugging should be autonomous.

About

Autonomous Visual Debugger — from bug video to pull request in one click.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages