QA Agent — Complete Client Guide
What This Does
QA Agent autonomously scans your entire codebase, writes test cases for every function, runs them, finds bugs, explains them clearly, and fixes them automatically — then asks for your approval before committing anything.
Supports: Python, Kotlin, Java, Vert.x, JavaScript, TypeScript, Go, Rust, React, Vue, ML/AI models, and more.
Prerequisites (Client Machine)
| Requirement | Version | How to install |
|---|---|---|
| Docker Desktop | 24+ | https://docker.com/products/docker-desktop |
| Python | 3.10+ | https://python.org |
| 16GB RAM | — | For running LLM models locally |
| 20GB disk | — | For Docker images + LLM models |
Privacy guarantee: Your code NEVER leaves your machine. The LLM runs locally via Ollama.
Install (One Command)
# Mac / Linux / Windows WSL:
curl -fsSL https://install.qa-agent.dev | bash
# Windows (PowerShell):
irm https://install.qa-agent.dev/windows | iex
This automatically:
- Checks Docker is running
- Starts all 7 AI services in Docker
- Downloads LLM models (qwen2.5-coder — private, runs locally)
- Installs the
qa-agentCLI - Runs a health check
First Scan
# Go to your project directory
cd /path/to/your/codebase
# Run full autonomous scan
qa-agent scan .
What you'll see:
QA Agent — Autonomous scan
Repo: /path/to/your/codebase
Languages: all
Mode: exhaustive
[scanning] Found 1,247 source files
[indexing] Indexed 3,891 functions
[generating] Generated 3,891 test files (parallel, 4 workers)
[running] 2,847/3,891 tests passing
[healing] Self-healed 891 wrong assertion values
[fixing] Analysing 153 real failures...
┌─────────────────────────────────────────────┐
│ Bug Fix Proposal │
│ File: src/payment/calculator.kt │
│ Confidence: 94% │
│ │
│ Root cause: Tax rate multiplied instead │
│ of applied as percentage │
│ │
│ Diff: │
│ - return amount * taxRate │
│ + return amount * (taxRate / 100.0) │
└─────────────────────────────────────────────┘
Approve this patch? [y/N]: y
[PASS] Patch committed and verified.
╔══════════════════════════════════════════════╗
║ QA Agent — Scan Report ║
║ Status: PASS ║
║ Files scanned: 1,247 ║
║ Functions tested: 3,891 ║
║ Tests passed: 3,891 / 3,891 (100%) ║
║ Bugs found: 153 ║
║ Bugs fixed: 153 / 153 ║
║ Time: 14m 32s ║
║ YOUR CODEBASE IS GREEN ║
╚══════════════════════════════════════════════╝
Common Commands
# Full scan (all files, all languages)
qa-agent scan .
# Only scan files changed since last commit (fast re-scan)
qa-agent scan . --changed-only
# Scan specific languages only
qa-agent scan . --lang python,kotlin,java
# CI/CD mode — auto-approve patches (no prompts)
qa-agent scan . --auto-approve
# Check system health
qa-agent doctor
# Check status of a running scan
qa-agent status <job-id>
# Approve/reject a pending patch
qa-agent approve <job-id> <patch-id>
qa-agent approve <job-id> <patch-id> --reject
CI/CD Integration
GitHub Actions
name: QA Agent Scan
on: [push, pull_request]
jobs:
qa-scan:
runs-on: self-hosted # needs Docker + qa-agent installed
steps:
- uses: actions/checkout@v4
- name: Run QA Agent
run: qa-agent scan . --auto-approve --output json > qa-report.json
- name: Upload Report
uses: actions/upload-artifact@v4
with:
name: qa-report
path: qa-report.json
GitLab CI
qa-scan:
stage: test
tags: [docker]
script:
- qa-agent scan . --auto-approve
artifacts:
paths: [qa-report.json]
Configuration
Create .qa-agent.env in your repo root:
# LLM Provider: ollama (local) | openai | anthropic
LLM_PROVIDER=ollama
# For cloud LLMs (faster, requires API key)
# LLM_PROVIDER=openai
# OPENAI_API_KEY=sk-...
# Models
TEST_GEN_MODEL=qwen2.5-coder:1.5b # fast, for test generation
PATCH_MODEL=qwen2.5-coder:7b # accurate, for bug fixing
# Scan behaviour
MAX_CHUNKS=1000 # max functions to generate tests for
MAX_FIX_ATTEMPTS=3 # LLM retry limit per bug
Supported Languages
| Language | Test Framework | Status |
|---|---|---|
| Python | pytest | ✅ |
| Kotlin | JUnit 5 + Maven | ✅ |
| Java | JUnit 5 + Maven | ✅ |
| Vert.x (Java/Kotlin) | JUnit 5 | ✅ |
| JavaScript | Jest | ✅ |
| TypeScript | Jest | ✅ |
| Go | go test | ✅ |
| Rust | cargo test | ✅ |
| React/Vue/Svelte | Jest + Testing Library | ✅ |
| ML (PyTorch/TF) | pytest | ✅ |
How It Works (Under the Hood)
Your codebase
│
▼
qa-agent scan .
│
[Brain — LangGraph AI]
│
├── Scan: finds all source files (git-aware, skips unchanged)
├── Index: tree-sitter AST → function-level chunks → Qdrant
├── Generate: LLM writes positive + negative + edge-case tests
├── Run: executes tests in isolated Docker sandbox
├── Heal: fixes wrong assertion values automatically
├── Fix: LLM analyses real bugs → proposes patches → YOU approve
└── Report: full summary with pass rate, bugs found/fixed
Key guarantees:
- Code stays on your machine (Ollama runs locally)
- Nothing is committed without your approval
- Re-scans only process changed files (git diff)
- Known bug patterns are cached (instant fix second time)
Uninstall
# Stop and remove all containers + data
docker compose -f ~/.qa-agent/docker-compose.yml down -v
# Remove CLI
pip uninstall qa-agent
# Remove models (optional, frees ~8GB)
docker exec qa-ollama ollama rm qwen2.5-coder:7b
docker exec qa-ollama ollama rm qwen2.5-coder:1.5b
Troubleshooting
# Check all services are running
qa-agent doctor
# View logs
docker compose logs qa-brain --tail=50
docker compose logs qa-celery --tail=50
# Restart services
docker compose restart
# Common issues:
# "Ollama not responding" → docker restart qa-ollama
# "Tests not generating" → check OLLAMA_HOST in qa-app logs
# "Scan hangs" → qa-agent status <job-id> to check phase
Metadata
Release files for autonomous-qa-agent 1.0.11
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| autonomous_qa_agent-1.0.11.tar.gz | 12.1 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| autonomous_qa_agent-1.0.11-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 23.9 kB
Release files / autonomous_qa_agent-1.0.11.tar.gz
| Download URL | autonomous_qa_agent-1.0.11.tar.gz |
|---|---|
| Size | 12.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
54b0f738ba857910108b4bca8a22fe73140a753024e8ebf487d3361c0e2c63b9
|
|
BLAKE2b-256 checksum How to use checksums |
2ae77eb0f6e0c3bb69c6c436ceba3f53c0f3cc029500ad37d3655d077db466dd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.0
|
Release files / autonomous_qa_agent-1.0.11-py3-none-any.whl
| Download URL | autonomous_qa_agent-1.0.11-py3-none-any.whl |
|---|---|
| Size | 11.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c24d6b2a8c8e11f109b658dc6b8287f18456b543cef909df0457d5cc397848a9
|
|
BLAKE2b-256 checksum How to use checksums |
a048c8c6732cbd0717b28a3326243c0819f0426370e1c986c3f922e684db8f56
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.0
|
Security for autonomous-qa-agent 1.0.11
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.