How kritt-ai/open-kritt works
open·kritt is a self-hosted AI security research platform. Researchers configure reusable workflows and model access, launch scans against remote or local repositories, then review, validate, rank, and export findings. The graph preserves the main product stages and supporting configuration capabilities. Source excerpts establish frontend routing, API dispatch, scan validation, and worker responsibilities; several cross-service runtime connections are documented only at product level, so those edges are dashed rather than asserted as inspected calls.
Main entry points: main.jsx Web application · scans.js Scan routes · worker.py Job worker · app.js HTTP application
Components 20
Researcher interface
- Web application
frontend/src/main.jsx - Workflow editor
frontend/src/pages/WorkflowBuilder.jsx - Scan creation
frontend/src/pages/CreateScan.jsx - Scan results
frontend/src/pages/ScanDetail.jsx - Finding detail
frontend/src/pages/VulnerabilityPage.jsx - API client
frontend/src/api/client.js
Backend API
- HTTP application
backend/src/app.js - Scan routes
backend/src/routes/scans.js - Workflow routes
backend/src/routes/workflows.js - Request validation
backend/src/lib/validation.js - Repository logic
backend/src/lib/repo.js - Research configuration
backend/src/routes
Scan engine
- Job worker
engine/open_kritt_engine/worker.py - Agent harnesses
engine/open_kritt_engine/harnesses.py - Repository workspace
engine/open_kritt_engine/repository.py - Finding validation
engine/open_kritt_engine/post_processing.py
Persistence and results
- Application database
backend/src/db.js - Engine database
engine/open_kritt_engine/db.py - Finding export
backend/src/lib/findingExport.js
Other components
- Researcher
Connections 26
- Researcher → Web application: uses
README.md - Web application → Workflow editor: routes to
- Web application → Scan creation: routes to
- Web application → Scan results: routes to
- Web application → Finding detail: routes to
- Workflow editor → API client: uses
frontend/src/pages/WorkflowBuilder.jsx - Scan creation → API client: submits scan
- Scan results → API client: loads results
frontend/src/pages/ScanDetail.jsx - API client → HTTP application: requests API
- HTTP application → Scan routes: routes scans
backend/src/app.js - HTTP application → Workflow routes: routes workflows
backend/src/app.js - HTTP application → Research configuration: routes capabilities
backend/src/app.js - Scan routes → Request validation: validates scan
backend/src/routes/scans.js - Scan routes → Repository logic: assembles scan
backend/src/routes/scans.js - Workflow routes → Request validation: validates workflow
backend/src/routes/workflows.js - Researcher → Workflow editor: defines playbooks
README.md - Researcher → Scan creation: launches scans
README.md - Job worker → Agent harnesses: runs agents
engine/open_kritt_engine/worker.py - Job worker → Repository workspace: processes repositories
- Job worker → Finding validation: validates findings
engine/open_kritt_engine/worker.py - Scan routes → Job worker: dispatches jobs
- Job worker → Engine database: persists job state
engine/open_kritt_engine/worker.py - Scan routes → Application database: reads and writes
backend/src/routes/scans.js - Scan results → Finding export: exports findings
- Researcher → Scan results: reviews findings
README.md - Researcher → Finding validation: configures verification
README.md