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.1.tar.gz (25.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.1-py3-none-any.whl (33.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fluidattacks_agent-0.1.1.tar.gz
  • Upload date:
  • Size: 25.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.1.tar.gz
Algorithm Hash digest
SHA256 d317a3ef8bfd14456f5f6be11d50eaae9fd44c4149f7e4c2199e9478db71051e
MD5 05fa104b48657ed615c47511adeb66eb
BLAKE2b-256 fa9a432f37d04e5fc578b622bf0472efde3c095e06a1418911d44d97b93ff8e2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fluidattacks_agent-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 33.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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c79ba2c81067a706c1cd127ba43536403d95b64ba99ff33af3e8a6c6da944240
MD5 57e7fb868d5e61f9ad052e11d9d0676d
BLAKE2b-256 59eee3af1f31bffbc32da23582a981f039384e5ab2c88c0435ff5325035d4f4c

See more details on using hashes here.

Release history Release notifications | RSS feed

0.3.0

2 files

0.2.0

2 files

0.1.2

2 files

This release

0.1.1 This release

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