# AiSOC Roadmap > **πŸ“Œ Active planning has moved (2026-05-12)** > > This file is the **historical record** of major-version deliverables (v4 β†’ > v8 planned). Day-to-day planning, prioritization, and contributor-facing > issue intake now live in the community-feedback-driven **Now / Next / > Later** docs: > > - [`docs/community-feedback/2026-05-12/AiSOC_ROADMAP.md`](docs/community-feedback/2026-05-12/AiSOC_ROADMAP.md) β€” strategic narrative > - [`docs/community-feedback/2026-05-12/AiSOC_Community_Feedback_Synthesis.md`](docs/community-feedback/2026-05-12/AiSOC_Community_Feedback_Synthesis.md) β€” themes (`F001`–`Fxxx`) > - [`docs/community-feedback/2026-05-12/AiSOC_Proposed_Issues.md`](docs/community-feedback/2026-05-12/AiSOC_Proposed_Issues.md) β€” 23 implementation tickets > > Items in v7.1+ sections below that overlap with the new docs are flagged > inline with `β†’ Now/Next/Later: [ID]`. Where the new docs supersede a > deferred item entirely, the entry here is left intact for traceability > but reasoned about against the newer plan. This document captures the planned direction for AiSOC across major versions. All v4 deliverables and items deferred beyond v4 are listed here. ## v4.0 β€” Shipped ### AI multi-agent investigator - [x] Orchestrator (LangGraph state machine) in `services/agents/app/investigator/` - [x] ReconAgent, ForensicAgent, ResponderAgent (dry-run with analyst approval) - [x] ReportWriterAgent β€” streaming markdown + branded PDF - [x] Investigation & Report tabs in Case Workspace UI - [x] Eval harness: 20 synthetic incidents, β‰₯80% MITRE-tactic accuracy CI gate ### Visual SOAR studio - [x] React Flow playbook editor with full node palette (Trigger, Condition, Action, Loop, Parallel, Human Approval, Wait, Notify) - [x] DAG playbook engine with retries, idempotency, blast-radius checks - [x] `playbook.schema.json` (JSON Schema 2020-12) for portability and CI linting - [x] Detection-as-Code: `detections/` directory with Sigma + AiSOC YAML, GitHub Action deploy-on-merge - [x] 12 starter playbook templates - [x] Community playbook marketplace (static index v4.0; publishing flow v4.1) ### Plugin platform, public API, SDKs, docs - [x] Plugin SDK in Python (`packages/plugin-sdk-py/`) and Go (`packages/plugin-sdk-go/`) - [x] `plugin.yaml` manifest spec (connector | enricher | responder | detection | widget) - [x] Plugin loader with OCI image support (`oras pull`) in api/actions/enrichment/connectors - [x] Public REST API v1 at `/api/v1`, OpenAPI 3.1 at `docs/openapi.yaml` - [x] GraphQL gateway (Strawberry) proxying REST - [x] Scoped API tokens (`cases:read`, `playbooks:run`, `plugins:install`) - [x] Auto-generated client SDKs: `@aisoc/sdk` (TypeScript), `aisoc-sdk` (Python/PyPI), `github.com/beenuar/aisoc/sdk-go` - [x] Docusaurus docs site at `docs/site/`, deployed to GitHub Pages - [x] Demo Lab: `pnpm aisoc:lab` one-command full-stack + Conti-style ransomware scenario - [x] 4 reference plugins: Okta connector, YARA enricher, Slack quarantine responder, MTTR sparkline widget ### Cross-cutting - [x] OpenTelemetry traces: agents β†’ actions β†’ api β†’ realtime (Jaeger/Tempo) - [x] API token scopes (foundation for SSO) - [x] MIGRATION.md for v3 β†’ v4 upgrade path --- ## v4.1 β€” Shipped - [x] Plugin publishing flow (signed community submissions, Ed25519 verification, review endpoints) - [x] Plugin marketplace UI v2 (ratings, install counts, verified badges, category filter, sort) - [x] Detection catalog: browse and install community Sigma rules via UI - [x] Playbook community submissions and curation - [x] `aisoc-cli` β€” developer CLI for scaffold, validate, publish plugins and detections --- ## v5.0 β€” Shipped ### Identity & Access - [x] SAML 2.0 + OIDC authentication (Okta, Azure AD, Google Workspace) - [x] Multi-tenant row-level security (Postgres RLS + SQLAlchemy middleware) - [x] Granular RBAC with data-class and tenant scopes (`require_permission()` dependency) - [x] Full analyst audit log (append-only `audit_log` table + middleware + UI) ### Compliance - [x] SOC 2 Type II evidence collection dashboard + PDF export - [x] ISO 27001 control mapping - [x] NIST CSF / NIST 800-53 control coverage heatmap - [x] PCI-DSS, HIPAA, DORA module - [x] MTTD / MTTR / MTTC SLA tracking per tenant ### High Availability & Operations - [x] HA Helm chart with PodDisruptionBudgets and HorizontalPodAutoscalers - [x] Backup / restore CLI (`scripts/backup.sh`, `scripts/restore.sh`) - [x] Multi-region active-active topology guide (`docs/operations/multi-region.md`) - [x] Operator runbook generation from OTel traces (`scripts/generate_runbook.py`) --- ## v5.1 β€” Shipped ### UEBA - [x] Per-user, per-host, per-service behavioral baselines (Welford's algorithm) - [x] Anomaly risk scores feeding the fusion engine (z-score composite scoring) - [x] Peer-group analysis and deviation scoring - [x] Kafka integration: consumes `security.events`, publishes `ueba.anomalies` ### Deception / Honeytokens - [x] Token generation (AWS keys, URLs, DNS, file, DB credentials, custom types) - [x] First-touch alerting via HMAC-SHA256-signed webhooks - [x] Honeytoken lifecycle management UI (create, revoke, delete, trigger history) ### Purple-Team / Continuous Validation - [x] Atomic Red Team YAML loader and test sync API - [x] Caldera adversary emulation REST client integration - [x] ATT&CK coverage heatmap by tactic/technique with detection tracking - [x] Tabletop incident simulator with findings management UI --- ## v6.0 β€” Shipped (2026-05-06) ### Wave 3 β€” Operational Maturity - [x] MSSP / parent-tenant console β€” onboard child tenants, delegate cross-tenant actions, view rollup metrics - [x] Asset inventory + vuln-to-alert correlation β€” asset CRUD, vulnerability findings, blast-radius context - [x] Insider threat module β€” user risk profiles, behavioural indicators, peer-group deviation scoring - [x] L0–L4 auto-remediation maturity tiers β€” per-tenant autonomy gate with audit log and per-action whitelist ### Wave 4 β€” Advanced Capabilities - [x] Internal threat intelligence β€” IOC harvesting, threat actor profiles, STIX/TAXII feed subscriptions - [x] Cloud security posture management (CSPM/KSPM) β€” posture findings, drift tracking, suppress/resolve workflows - [x] Identity-centric correlation graph β€” identity node/edge graph, alert-to-identity linking, attack-path queries - [x] Auto-generated board reports β€” report templates, scheduled PDF/HTML artefacts, email/webhook delivery ### Platform - [x] Dashboard metrics API β€” aggregated KPI endpoint powering frontend dashboard tiles - [x] Tailscale connector β€” audit log and policy-change events with cursor-based pagination - [x] AWS GuardDuty credential-exfiltration Sigma detection rule --- ## v6.1 β€” Shipped (2026-05-07) β€” v1.5 market-driven feature expansion A review of G2, Gartner Peer Insights, and customer feedback on AI SOC / SIEM / SOAR platforms drove this release. ### New autonomous agents (`services/agents/app/agents/`) - [x] Master autonomous triage agent (`auto_triage_agent.py`) β€” classifies each alert as `true_positive` / `false_positive` / `benign` with confidence - [x] Phishing triage sub-agent (`phishing_agent.py`) - [x] Identity reasoning sub-agent (`identity_agent.py`) - [x] Cloud reasoning sub-agent (`cloud_agent.py`) - [x] Insider-threat reasoning sub-agent (`insider_threat_agent.py`) - [x] All five exposed via `POST /api/v1/agents/triage` ### New console pages (`apps/web/src/components/`) - [x] `/investigate` β€” conversational, multi-turn investigation copilot - [x] `/coverage-advisor` β€” MITRE ATT&CK gap ranking by adversary prevalence - [x] `/shifts` β€” analyst shift-handoff dashboard - [x] `/easm` β€” External Attack Surface Management - [x] `/mssp` β€” MSSP executive dashboard - [x] `/noise-tuning` β€” per-rule false-positive rate and one-click tuning - [x] `/analytics/team` β€” analyst leaderboard, MTTR per analyst, dispositions accuracy ### New API surfaces (`services/api/app/api/v1/endpoints/`) - [x] `shifts.py` β€” shift-handoff CRUD - [x] `stix_taxii.py` β€” STIX 2.1 / TAXII 2.1 publishing - [x] `compliance.py` β€” automated compliance evidence (SOC 2, ISO 27001, NIST CSF, PCI-DSS, HIPAA, DORA) - [x] `deployment.py` β€” deployment / air-gap toggles ### New connectors (16 β†’ 26) - [x] SentinelOne (`sentinelone.py`) - [x] Cortex XDR (`cortex_xdr.py`) - [x] Wiz (`wiz.py`) - [x] Snyk (`snyk.py`) - [x] Zscaler (`zscaler.py`) - [x] Proofpoint (`proofpoint.py`) - [x] ServiceNow (`servicenow.py`) - [x] Jira (`jira.py`) - [x] 1Password (`1password.py`) - [x] Duo Security (`duo_security.py`) ### Other - [x] AI-generated incident reports β€” one-click "Export Report" generates PDF from the Investigation Ledger - [x] Air-gap deployment configuration β€” per-tenant toggles disable external feeds --- ## v7.0 β€” Shipped βœ… (2026-05-10) All items below were shipped as part of the v1.0 buyer-value plan. Implemented and reviewed by Beenu Arora . - [x] WCAG AA full accessibility pass (axe-core CI gate β€” `apps/web/src/test/a11y.test.tsx`) - [x] Light theme persisted in user profile (`ThemeProvider.tsx` + `PATCH /api/v1/users/me/preferences`) - [x] Saved views and custom drag-drop dashboard widgets per analyst (`saved_views.py` + `DashboardView.tsx`) - [x] AI-generated weekly executive digest β€” auto-emailed PDF (`digest_pdf.py` + `weekly_digest_task.py`) - [x] Slack native bot for alert triage without opening the UI (`services/slack-bot/` β€” 61 tests) - [x] Threat actor attribution engine v0 (`services/threatintel/app/actors/attribution.py`) - [x] Air-gap / Ollama local-LLM mode (`docker-compose.airgap.yml` + `apps/docs/docs/operations/air-gapped.md`) - [x] BYOK per-tenant LLM credentials UI + API (`llm_credentials.py` + `SettingsView.tsx`) - [x] MSSP console β€” per-child-tenant KPI aggregation, SLA posture, parent_tenant_id hierarchy - [x] Team analytics view β€” analyst MTTR, leaderboard, shift workload (`TeamAnalyticsView.tsx`) - [x] Case auto-summary + PDF export (`case_summary.py` + `case_summary_html.py`) - [x] Investigation timeline (replayable) (`InvestigationTimeline.tsx`) - [x] Playbook gallery with 12 curated packs + GitHub PR integration for detection proposals - [ ] Mobile responder console (React Native) β€” triage and acknowledge from phone _(deferred to v8.0)_ - [ ] Plugin publishing marketplace v3 (commercial plugins, revenue sharing) _(deferred to v8.0)_ --- ## v7.0.x β€” Endpoint telemetry wave + hardening (2026-05-10) Six-PR feature wave that closes [#44](https://github.com/beenuar/AiSOC/issues/44) ("osctrl connector for fleet-wide osquery telemetry") and significantly extends osquery coverage end to end. All six PRs were implemented sequentially as part of the v7.0 release window and then patched through 7.0.1 β†’ 7.0.3. ### Endpoint telemetry β€” osquery feature wave (PR1–PR6) - [x] **PR1 β€” osctrl + FleetDM connectors** (`services/connectors/app/connectors/osctrl.py`, `fleetdm.py`). Schema-driven setup, live `Test connection` round-trip, secrets encrypted via `CredentialVault`, polling on per-instance schedule, plus marketplace manifests at `plugins/osctrl/plugin.yaml` and `plugins/fleetdm/plugin.yaml`. - [x] **PR2 β€” Native osquery detection schema migration** β€” 16 osquery rules (`detections/endpoint/osquery-*.yaml`, IDs `det-endpoint-281..296`) migrated from `_quarantine/` to the native schema, with positive/negative test fixtures (`detections/fixtures/osquery_*.json`) gated by the Detection Validation workflow. - [x] **PR3 β€” Live-query playbook step** (`services/actions/app/clients/osctrl_client.py`, `fleetdm_client.py`, `osquery_allowlist.py`, `services/agents/app/playbook/steps/osquery_live_query.py`). Allowlisted distributed queries pushed to single hosts or fleet-wide via osctrl/FleetDM with HMAC-signed ChatOps approval. - [x] **PR4 β€” `aisoc-osquery-tls` FastAPI service + `aisoc-direct` agent connector** (`services/osquery-tls/`, `services/connectors/app/connectors/aisoc_direct.py`). First-party self-hosted osquery TLS plugin, FleetDM-compatible config/log endpoints, direct-from-agent ingest path that bypasses third-party SaaS. - [x] **PR5 β€” Osquery packs + FIM endpoint + FIM dashboard** (`services/osquery-tls/app/api/v1/endpoints/fim.py`, `apps/web/src/components/dashboard/FimDashboard.tsx`). Bundled IR / OSquery-ATT&CK / FIM packs; ingests `file_events` and synthesises alerts on writes to `/etc/passwd`, `/etc/shadow`, sshd configs, sudoers, Windows registry hives. FIM-specific detection IDs `det-endpoint-297..300`. - [x] **PR6 β€” AiSOC osquery extensions** (`services/osquery-extensions/tables/*.go`). 5 custom Go-based virtual tables: `aisoc_browser_extensions`, `aisoc_kernel_modules`, `aisoc_attck_persistence`, `aisoc_pending_actions`, `aisoc_alert_cache` β€” ship richer endpoint visibility plus a bidirectional response channel. ### Patch releases #### v7.0.1 β€” Web app hardening (CodeQL + Turbopack) - [x] **42 CodeQL code-scanning alerts cleared** (`py/unused-global-variable`, `py/cyclic-import`, `py/empty-except`, `py/log-injection`, `py/clear-text-logging-sensitive-data`, `py/incomplete-url-substring-sanitization`, `py/stack-trace-exposure`, `py/call/wrong-arguments`, `py/unused-import`, `js/unused-local-variable`). - [x] **`apps/web/next.config.js`** β€” Removed deprecated `eslint.ignoreDuringBuilds` key Next.js 16 no longer accepts; added `turbopack.root` for workspace package resolution. - [x] **`apps/web/src/app/layout.tsx`** β€” Added `suppressHydrationWarning` to `` so the render-blocking `themeBootstrapScript` can write `data-theme` / `data-theme-preference` / `style.colorScheme` without React reporting an attribute mismatch. #### v7.0.2 β€” Version alignment + landing-page footer + docs - [x] **`apps/web/package.json`** bumped to `7.0.2`; sidebar shows `v7.0.2` dynamically. - [x] **`apps/web/src/components/landing/Footer.tsx`** β€” Replaced hard-coded `v6.1.0` with a dynamic import of `package.json`. - [x] **`README.md`** β€” Added `osquery-tls` (port 8090) and `osquery-extensions` to the services / Swagger / directory-tree / dev-surface tables. #### v7.0.3 β€” Structural hydration fix + font preload - [x] **`apps/web/src/components/layout/AppShell.tsx`** β€” Wrapped `` in a new `` boundary so the banner (which reads `NEXT_PUBLIC_DEMO_MODE`) is never server-rendered. Eliminates React hydration error #418 caused by stale env-var inlining producing a structural tree mismatch (server saw `