TheDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/irchaosclub/FANGS/llms.txt
Use this file to discover all available pages before exploring further.
fangs allow command manages the allowlist — the set of rules that tell the Differ to ignore specific network destinations, filesystem paths, or TLS hostnames when computing deviations. Use it to suppress noise from known-good infrastructure (internal CIDRs, telemetry endpoints, temp directories) without promoting entire runs into the baseline. Rules can be scoped globally to all packages or narrowly to a single package name.
Subcommands
| Subcommand | Purpose |
|---|---|
allow list | Show all allowlist entries, optionally filtered to one package |
allow add | Create a new CIDR, path, or SNI suppression rule |
allow remove <id_prefix> | Delete an entry by its ID prefix |
fangs allow list
Fetches every row from theallow_entries table and renders them in a table. When -package is supplied, only entries that are either global or scoped to that specific package are shown (the same filter the Differ itself applies).
Flags
Filter the output to entries that apply to the given package — global entries plus any entries with a matching
package_name. When omitted, all entries across all scopes are returned.Output columns
| Column | Description |
|---|---|
ID | Short hex prefix of the 16-character entry ID |
SCOPE | global or package |
PACKAGE | Package name for package-scoped entries; — for global entries |
KIND | Rule type: cidr, path, or sni |
VALUE | The rule value (truncated to 40 characters in table output) |
NOTE | The operator-supplied free-form comment (truncated to 30 characters) |
CREATED | RFC 3339 timestamp of when the entry was created |
Empty state
When no entries exist,allow list prints example commands instead of an empty table:
fangs allow add
Creates a new allowlist entry and persists it to storage. The entry takes effect immediately — the next time the Differ analyzes a run for the relevant package, it will skip any events that match this rule.Flags
The rule type. Accepted values:
cidr— suppressesnet_new_destinationdeviations where the IP address falls within the given CIDR range. Validated withnet.ParseCIDR.path— suppressesfs_new_path_*deviations where the file path starts with the given prefix. Must begin with/.sni— suppressesnet_new_https_hostdeviations where the TLS SNI matches the given string. No structural validation is applied.
The rule value. Format depends on
-kind:- cidr: a valid CIDR notation string, e.g.
10.0.0.0/8or192.168.1.0/24 - path: an absolute path prefix starting with
/, e.g./tmp/npm-cache - sni: any string, e.g.
telemetry.example.com
Scope the rule to a single package. When supplied, the entry has scope
package and only suppresses deviations in runs of that package. When omitted, the entry is global and applies to runs of every package.A free-form human-readable comment describing why this rule exists. Visible in
allow list output. Recommended for audit trail purposes.Validation rules
| Kind | Validation |
|---|---|
cidr | Parsed with net.ParseCIDR — must be valid CIDR notation |
path | Must begin with / |
sni | No structural check — operator-supplied strings are accepted as-is |
ID format
Each entry is assigned an 8-byte cryptographically random ID encoded as a 16-character hex string, e.g.a3f2b19c44e8d701. This ID is generated at add time and never changes.
Examples
fangs allow remove
Deletes an allowlist entry by its ID prefix. Uses the same git-style prefix resolution asbaseline promote — supply enough characters to uniquely identify the entry.
Arguments
A prefix of the 16-character entry ID. FANGS resolves the prefix against the
allow_entries table. Must uniquely match exactly one entry.Error conditions
| Error | Cause |
|---|---|
ErrAmbiguous | The prefix matches more than one entry — use a longer prefix |
ErrNotFound | No entry matches the given prefix |
Examples
Scoping reference
Understanding scope is critical for keeping the allowlist precise.Global scope
Created with no
-package flag. Applies to every package FANGS monitors. Use for rules that are truly infrastructure-wide, such as internal RFC-1918 CIDRs or shared CDN prefixes.Package scope
Created with
-package <name>. Applies only to runs of that specific package. Use for rules that are expected for one package but would be suspicious in others — e.g., a package-specific telemetry SNI.