---
# System prepended metadata

title: Falcoctl

---

# Falcoctl

## falcoctl artifact

Even if it's clear for a dev what artifacts are, it's not a term commonly used by SRE/SecOps, and it's confusing to list all types with same command (even if we can filter with an arg).
To avoid confusion, I propose to replace `falcoctl artifacts` by `falcoctl plugin` and `falcoctl driver`.

For plugins:
* `falcoctl plugin list`: list all official plugins
* `falcoctl plugin search`: search a plugin
* `falcoctl plugin install`: install a plugin
* `falcoctl plugin remove`: uninstall a plugin

For rules:
* `falcoctl rule list`: list all official rules
* `falcoctl rule search`: search a rule
* `falcoctl rule install`: install a rule
* `falcoctl rule remove`: uninstall a rule

For drivers:
* `falcoctl driver list`: list all official drivers (`--type` to filter between kmod and ebpf)
* `falcoctl driver search`: search a driver (`--type` to filter between kmod and ebpf)
* `falcoctl driver install`: install a driver (it replaces the loading function from this [script](https://github.com/falcosecurity/falco/blob/master/scripts/falco-driver-loader))
* `falcoctl driver remove`: uninstall a driver

### falcoctl driver

In the last months, we added in test-infra the creation of .json listing the drivers:
* https://download.falco.org/driver/site/index.json
* https://download.falco.org/driver/site/3.0.1%2Bdriver.json (example for 1 driver version)

These files could be used for the `list` and `search` subcommands.

#### falcoctl driver search

The most common issue the adopters have with the installation of Falco is to check the compatibility of the drivers with their systems.
A command `falcoctl driver search --current` could check if some precompiled drivers are available for the locale system.

### falcoctl rule list

The API endpoint is not available in the gRPC contract but we can imagine having a way to list the enabled rules in Falco could be useful `falcoctl rule list --enabled`.

### falcoctl rule enable/disable

If the gRPC allows it, it gives to the user the possibility to enable/disable rules on the fly.

## More functions

### falcoctl check

`checks` if we can install falco with precompiled drivers in the locale or remote system (k8s, vm). It replaces check functions from https://github.com/falcosecurity/falco/blob/master/scripts/falco-driver-loader


### falcoctl connect

It connect to a falco through gRPC to get the livestream of events