A real alert queue.
Ingest Wazuh alerts across agents and rule levels. Search, filter by severity and time, and inspect the original detection without switching between disconnected views.
Connect your detections to a clearer investigation path. Keep the original evidence, understand the context, and make the next decision with something to stand on.
Alerts retain their identity and context. The collector and Analyst build on the source, rather than replacing your SIEM.
Live detections, durable records, original evidence.
The operational essentials, connected.
Ingest Wazuh alerts across agents and rule levels. Search, filter by severity and time, and inspect the original detection without switching between disconnected views.
Keep the connection, native index, document ID, timestamps, and original source. Normalization adds usable context without replacing the underlying evidence.
PostgreSQL preserves records independently of a browser session. Idempotent inserts and checkpointed polling let the worker catch up without pretending incomplete queries succeeded.
The collector retrieves bounded surrounding activity and process ancestry. The Analyst separates observations, inferences, alternative explanations, and gaps in an advisory report.
Analyst engine implemented. Dashboard triage is the next rollout.
Explore where an alert goes, what gets stored,
and where model processing begins—and ends.
A source-preserving path from Wazuh to your queue. This is running in the live workspace.
Wazuh owns detection and telemetry retention. Corvus reads alert indices across agents and rule levels without changing rules or endpoint configuration.
Wazuh-specific queries and field mappings stay inside the adapter. The collector and Analyst work with an evidence contract, not a forked SIEM.
Operational records live in PostgreSQL. High-volume telemetry stays in Wazuh and is retrieved only within a scoped collection.
Data retrieval, external analysis, report validation, and human review are separate steps. None grants the model permission to execute a response.
Rule names and severity are starting points, not proof of compromise. Keep the source close enough to challenge the interpretation.
Failed collection is not “nothing happened.” Gaps and partial windows stay visible instead of becoming confident model prose.
Evidence binding and citation checks make reports easier to inspect. They do not replace review or prove that every claim follows from the logs.
A recommendation is not an approved action. Corvus does not silently isolate hosts or turn a model label into incident resolution.
The core investigation path stays the same.
You decide how an alert enters it.
Choose an alert, review the evidence-processing boundary, and request an investigation. The Analyst gathers scoped context and returns a report for review.
These controls explain the workflow; they do not change your connection settings or send evidence anywhere.
Focused by design.
Every component has a clear responsibility.
React and TypeScript for an authenticated, responsive workspace. Your browser never receives backend or model credentials.
A small API and a separate ingestion worker. Backend adapters, evidence collection, reporting, and model transport remain separate.
Transactional checkpoints, indexed alert fields, original JSONB payloads, sessions, and audit events. A foundation for later operational analytics.
Keep your existing detections and telemetry pipeline. Read alerts and retrieve supporting context through documented indexer APIs.
The configured DeepSeek-V4-Flash deployment powers the advisory Analyst core. No automatic model substitution or hidden tool execution.
Separate web, API, worker, and database containers. HTTPS at the edge, private service routing, and server-side secrets.
What runs today, what is next,
and what Corvus intentionally does not do.
No. Wazuh remains responsible for detection and telemetry. Corvus is an independent companion that preserves incoming alerts and adds an evidence-led investigation workflow. You do not need to fork Wazuh or couple its lifecycle to Corvus.
Authenticated Wazuh connection setup, durable alert ingestion, severity and time filters, search, pagination, sync health, and original-source inspection. The Analyst core already exists separately; manual dashboard triage is the next integration. Automatic mode is planned, not currently enabled.
No. The current ingestion worker makes no model calls. Analyst processing requires an explicit external-processing decision. Planned automatic mode will require separate connection-level consent and request limits; turning on ingestion will not opt you in.
No. It is read-only and has no response executor. Recommendations remain advisory. A model disposition, completed report, or passed citation check is not authorization for an endpoint action.
The application needs transactions, deduplication, authentication, job state, and indexed queries first. PostgreSQL supports that operational workload and initial SQL analytics. High-volume raw telemetry stays in Wazuh rather than being copied into another event lake.
Collection failures, truncation, incomplete time windows, and missing ancestry are preserved as explicit gaps. The Analyst must distinguish unknown activity from evidence of absence. Schema and citation checks improve inspectability but do not prove narrative accuracy.
Bring the source into focus. Leave the assumptions behind.