How v7ren/sentinai-public works
SentinAI is a desktop-assisted security scanner for source code. The principal workflow is selecting a scan in the desktop app, submitting it through the gateway to the worker, indexing the project, and analyzing code for vulnerabilities; findings are then processed and returned. The repository also contains local scanning, persistence, report/SARIF output, and an optional OpenCode-backed LLM bridge. README content was not provided, and the worker orchestration excerpt is incomplete, so uncertain internal handoffs are omitted.
Main entry points: main.py Scan Worker · App.tsx Desktop App · coordinator.py Agent Coordinator · ScanPage.tsx Scan Page
Components 21
Desktop Client
- Desktop App
desktop/src/App.tsx - Scan Page
desktop/src/pages/ScanPage.tsx - Scan API
desktop/src/scan/api.ts - Settings UI
desktop/src/pages/SettingsPage.tsx
Scan Service
- Client Gateway
backend/mainflask.py - Scan Worker
backend/worker/core/main.py - Local Scan Server
backend/local_scan_server.py
Analysis Engine
- Project Indexer
backend/worker/core/project_indexer.py - Native Index
native/sentinai-index/src/lib.rs - Agent Coordinator
backend/worker/core/agents/coordinator.py - Security Specialists
backend/worker/core/agents/specialists/llm_security_agent.py - Finding Deduplication
backend/worker/core/agents/deduplication_engine.py - Finding Validation
backend/worker/core/findings_validator.py
Findings and Storage
- Scan Database
backend/database/operations.py - Markdown Reports
backend/findings_md_generator.py - SARIF Output
backend/worker/core/output/sarif_emitter.py
LLM Integration
- LLM Client
backend/worker/core/llm_client.py - Bridge Client
backend/worker/core/deepseek_client.py - OpenCode Bridge
backend/opencode-bridge/server.go
Other components
- Scanner User
- OpenCode Service
Connections 19
- Scanner User → Desktop App: uses
- Desktop App → Scan Page: opens scan
- Desktop App → Settings UI: opens settings
- Scan Page → Scan API: submits scan
- Scan API → Client Gateway: sends request
- Client Gateway → Scan Worker: dispatches scan
- Scan Worker → Project Indexer: indexes project
- Project Indexer → Native Index: uses indexer
- Scan Worker → Agent Coordinator: runs analysis
- Agent Coordinator → Security Specialists: dispatches agents
- Scan Worker → Finding Deduplication: deduplicates findings
- Scan Worker → Finding Validation: validates findings
- Scan Worker → Scan Database: persists index
- Scan Worker → Markdown Reports: generates report
- Scan Worker → SARIF Output: emits findings
- Agent Coordinator → LLM Client: requests completions
- LLM Client → Bridge Client: uses bridge fallback
- Bridge Client → OpenCode Bridge: posts completion
- OpenCode Bridge → OpenCode Service: calls service