Implementation-focused technical specifications of Falco, enabling the workflow: modify spec → modify implementation.
Era: 0.44 (released May 26, 2026)
┌─────────────────────────────────────────────────────────────────┐
│ Falco Application │
│ ┌───────────────┐ ┌──────────────┐ ┌──────────────────────┐ │
│ │ Rule Engine │ │ Output System│ │ App Lifecycle │ │
│ │ rule-engine │ │ output-system│ │ application-lifecycle│ │
│ └───────┬───────┘ └──────┬───────┘ └──────────────────────┘ │
│ │ │ │
│ ┌───────┴─────────────────┴──────────────────────────────────┐ │
│ │ Configuration: configuration CLI: cli-interface │ │
│ │ Metrics: metrics-and-observability │ │
│ └────────────────────────────────────────────────────────────┘ │
├─────────────────────────────────────────────────────────────────┤
│ falcosecurity/libs │
│ ┌────────────────┐ ┌────────────────┐ ┌──────────────────┐ │
│ │ Filter Engine │ │ libsinsp │ │ libscap │ │
│ │ filter-engine │ │ libsinsp │ │ libscap │ │
│ └────────┬───────┘ └────────┬───────┘ └────────┬─────────┘ │
│ └──────────┬────────┘ │ │
│ │ │ │
│ ┌───────────────────┴─────────────────────────────┘ │
│ │ Plugin System: plugin-system │
│ └─────────────────────────────────────────────────────────────┘│
├─────────────────────────────────────────────────────────────────┤
│ Kernel Driver: kernel-instrumentation │
├─────────────────────────────────────────────────────────────────┤
│ External Tools │
│ ┌───────────────┐ ┌──────────────┐ │
│ │ falcoctl │ │ Build System │ │
│ │ falcoctl │ │ build-system │ │
│ └───────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────────────┘
Follow the event pipeline from bottom to top, then application concerns:
| # | Spec | Description |
|---|---|---|
| 1 | architecture-overview.md |
System architecture, event pipeline, threading model |
| 2 | kernel-instrumentation.md |
Modern eBPF, kmod, syscall capture, event model |
| 3 | libscap.md |
System capture library, engine vtable, ring buffers |
| 4 | libsinsp.md |
Event parsing, state tables, thread/FD tracking |
| 5 | filter-engine.md |
Filter language, AST, operators, filterchecks |
| 6 | rule-engine.md |
Rule YAML schema, compilation pipeline, indexing |
| 7 | configuration.md |
Config system, merging, JSON schema validation |
| 8 | output-system.md |
Alert channels, async queue, formatting |
| 9 | plugin-system.md |
Plugin API, capabilities, lifecycle |
| 10 | metrics-and-observability.md |
Internal metrics, stats, health monitoring |
| 11 | application-lifecycle.md |
App actions, signal handling, hot reload |
| 12 | cli-interface.md |
CLI flags, introspection, exit codes |
| 13 | falcoctl.md |
Artifact/driver management, OCI distribution |
| 14 | build-system.md |
CMake, dependencies, feature flags |
| 15 | kubernetes-deployment.md |
Helm charts, DaemonSet/Deployment, pod architecture |
| 16 | rules-content.md |
Detection rules, maturity framework, tuning |
| 17 | falcosidekick.md |
Fan-out daemon, FalcoPayload, 70+ outputs |
| 18 | falco-operator.md |
Kubernetes Operator, 5 CRDs, instance/artifact management |
| 19 | falco-lsp.md |
Language Server, CLI tool, VS Code extension for rules |
| 20 | falco-talon.md |
Response Engine, actionners, automated threat response |
| 21 | driver-distribution.md |
Pre-built driver pipeline, kernel-crawler, driverkit |
| 22 | ci-cd-infrastructure.md |
Prow components, AWS EKS, config, Tide, Pigeon |
| 23 | ci-cd-jobs.md |
Job catalog, org management, OWNERS workflow |
| 24 | ci-cd-github-actions.md |
Falco Actions, CI/CD rules, testing suite |
kernel-instrumentation
│
▼
libscap ◄──── plugin-system
│
▼
libsinsp
│
┌────┴────┐
▼ ▼
filter-engine (state tables)
│
▼
rule-engine ──────► output-system
│ │
▼ ▼
configuration application-lifecycle
│
┌────┴────┐
▼ ▼
cli-interface metrics-and-observability
falcoctl (standalone)
build-system (cross-cutting)
rules-content (detection content for rule-engine)
kubernetes-deployment (deploys Falco, uses falcoctl + configuration)
falcosidekick (ecosystem, receives from output-system via HTTP)
falco-talon (ecosystem, receives from falcosidekick or output-system)
falco-operator (ecosystem, manages Falco instances and artifacts in Kubernetes)
falco-lsp (ecosystem, validates rules against rule-engine/filter-engine grammar)
driver-distribution (builds drivers for kernel-instrumentation)
ci-cd-infrastructure ──► ci-cd-jobs ──► driver-distribution
└──► ci-cd-github-actions
These specifications cover:
- Core Falco: falco binary, falco_engine, output framework
- Core Libraries: libscap, libsinsp (from falcosecurity/libs)
- Drivers: Modern eBPF (default), kernel module
- Plugin System: API, capabilities, official plugins
- falcoctl: CLI management tool
- Build System: CMake structure, dependencies, feature flags
- Kubernetes Deployment: Helm charts, DaemonSet/Deployment topology, pod architecture
- Detection Rules: Rule content, maturity framework, tuning patterns
- Ecosystem: Falcosidekick (fan-out daemon), Falco Operator (Kubernetes-native management), Falco LSP (language tooling), Falco Talon (response engine), driver distribution pipeline
- CI/CD: Prow infrastructure, job catalog, GitHub Actions, organization management
Not covered in detail:
- Driverkit CLI details — driverkit build pipeline is covered in
driver-distribution.md - Deprecated features (legacy eBPF, gVisor, gRPC output) — brief mentions only