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.
| 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). |
┌─────────────┐ ┌──────────────────┐ ┌───────────────────┐ ┌──────────────┐
│ Bug Video │────▶│ Gemini 3 Flash │────▶│ Code Fix + Test │────▶│ GitHub PR │
│ (MP4/MOV) │ │ (Vision+Audio) │ │ + Verification │ │ (Automated) │
└─────────────┘ └──────────────────┘ └───────────────────┘ └──────────────┘
- Upload a screen recording (MP4/MOV) of the bug in your web app.
- SessionSolve analyzes the video with Gemini 3 — watching UI interactions, listening for audio, and reading your source code.
- A fix is generated along with a Playwright regression test and an interactive capture script.
- 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.
- Choose your output:
- Local Mode — patches the file on disk with a
.bakbackup. - GitHub Mode — pushes to a new branch and opens a PR with the verification screenshot attached.
- Local Mode — patches the file on disk with a
- 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
reposcope
# 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.pyThe app opens at http://localhost:8501. Enter your Gemini API key in the sidebar and you're ready to go.
docker build -t SessionSolve .
docker run -p 7860:7860 SessionSolveSessionSolve/
├── 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
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). |
The included dummy_project/ contains a simple counter app with an intentional bug. To test:
- Screen-record yourself clicking the counter button and noticing the bug.
- Upload the recording to SessionSolve.
- Set the project path to
./dummy_project. - Click Analyze & Diagnose and watch the agent work.
This project is Docker SDK-ready for Hugging Face Spaces:
- Create a new Space with Docker SDK.
- Push this repo to the Space.
- Set your
GEMINI_API_KEYas a Space secret. - The app will be live on port
7860.
- 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.
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.