Skip to main content

fluidattacks-agent

Reports what a running Python workload actually imports and runs, so that a dependency inventory can say which of its findings are reachable at runtime and which are not.

It is a library, not a service. It observes the interpreter it is installed in, writes what it saw, and does nothing else. It takes no dependencies: the standard library only, because it is installed into workloads we do not own.

Installing

pip install fluidattacks-agent

That is the whole setup. A .pth file at the root of the wheel starts the probe at interpreter start, before the workload's own program runs, so nothing has to be imported or called by hand.

Turning it off

FLUIDATTACKS_AGENT=off

Also 0, false, no, disabled or none. A workload that says no pays for reading the setting and for nothing above it. Saying nothing is taken for yes, because installing the package is the consent.

What it observes

  • distributions whose modules were imported, and which modules
  • functions that were executed, where the interpreter offers that
  • how often, in windows, and when a symbol was first reached

Only what an installed distribution owns is attributed. The standard library and a workload's own first-party code produce no records.

Where reports go

By default, one file per report under /tmp/.watches-exec, for a collector to drain. Naming an endpoint sends them instead:

FLUIDATTACKS_AGENT_ENDPOINT where reports are posted, https:// only
FLUIDATTACKS_AGENT_TOKEN_FILE a file holding the credential, preferred
FLUIDATTACKS_AGENT_TOKEN the credential itself, read only if no file is named
FLUIDATTACKS_AGENT_GROUP what the reports are filed under
FLUIDATTACKS_AGENT_WORKLOAD what this workload is called

A file is preferred over a variable because a file can be mode 400, while an environment variable is readable by any process of the same user.

An endpoint named without enough beside it to reach is a misconfiguration, not a reason to fall back: the probe then holds nothing and counts every report it refused, so a half-configured deployment is loud rather than a directory filling up where nobody drains it.

What travels, and what does not

Reports are gzipped and signed with a key derived from the credential; the credential itself never travels, appears in no record, and is in no exception. The far end must prove who it is — certificate chain and hostname both — and no redirect is followed.

What a report contains is distribution names, versions, module and function names, and counts. No arguments, no return values, no file contents, no environment.

Licence

MPL-2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fluidattacks_agent-0.1.2.tar.gz (26.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fluidattacks_agent-0.1.2-py3-none-any.whl (34.6 kB view details)

Uploaded Python 3

File details

Details for the file fluidattacks_agent-0.1.2.tar.gz.

File metadata

  • Download URL: fluidattacks_agent-0.1.2.tar.gz
  • Upload date:
  • Size: 26.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.11 {"installer":{"name":"uv","version":"0.11.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fluidattacks_agent-0.1.2.tar.gz
Algorithm Hash digest
SHA256 e8640d02e0be21d8e4186b717ef9d18527e7c60939453db76d1757a13a560b07
MD5 f8129a953993aae0bdd6e4ba39bd3ebb
BLAKE2b-256 6fa6bddf61f9db15d492417464de580bbbe7854c57140e77ab1c7723bde3855b

See more details on using hashes here.

File details

Details for the file fluidattacks_agent-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: fluidattacks_agent-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 34.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.11 {"installer":{"name":"uv","version":"0.11.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fluidattacks_agent-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 860f50c33be5e49f4644bdedac09d3e5c1712bfe5466c4645bff1b6fecc2dc7b
MD5 23671a59442d054f123f91e7457c94b8
BLAKE2b-256 bdee88a8b6f63c40f564fffd507dbd0ed22702e9deddd9db0d697ac358e5f59c

See more details on using hashes here.

Release history Release notifications | RSS feed

0.3.0

2 files

0.2.0

2 files

This release

0.1.2 This release

2 files

0.1.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page