Skip to main content

PhenoVector – Behavioural Genome Engine for Running Processes

PhenoVector is a fully local, lightweight behavioural‑genome engine that derives structured “genome vectors” for running system processes. It performs safe on‑device telemetry collection using psutil, computes >20 behaviour‑driven gene scores, assigns risk levels, and provides an optional Streamlit dashboard for visual exploration.

All capabilities described here match the actual source code: features.py, genes.py, genome.py, and app.py.


🔍 What PhenoVector Does

1. Collects Runtime Behaviour Features

From each process (features.py):

  • CPU percentage
  • RSS memory
  • Thread count
  • Open file handles
  • Network connections
  • Executable entropy (first 200kB)
  • Lifetime & CPU time
  • System process / temp executable identification

2. Computes Behavioural Gene Scores

Each behaviour feature is normalised via PopulationStats and transformed into 20+ genes (genes.py):

  • resource_abuse
  • entropy
  • impersonation
  • exfiltration
  • tracking
  • persistence
  • mutation
  • stealth
  • latency
  • syscall_diversity
  • burst_density
  • thread_intensity
  • registry_touch
  • io_intensity
  • network_activity
  • file_entropy
  • handle_abuse
  • injection_sus
  • dll_sideload

Every gene strictly returns a float in [0,1].

3. Produces Per‑Process Genome Objects

genome.py returns a structured ProcessGenome:

  • identity: pid, name, exe
  • behaviour features
  • gene vector (dict)
  • risk_score (0–1)
  • risk_level (benign, suspicious, high)

4. Optional Visual Dashboard

app.py provides:

  • PCA/t‑SNE process clustering
  • Radar charts of gene profiles
  • IsolationForest anomaly scoring
  • PID whitelisting
  • Raw genome table & JSON export

📦 Installation

pip install phenovector

🚀 Quick Usage

from phenovector.genome import analyze_system

genomes = analyze_system(limit=100)
for g in genomes:
    print(g.pid, g.name, g.risk_score, g.risk_level)
    print(g.genes)

📊 Run the Streamlit UI

streamlit run -m phenovector.app

📄 License

APACHE 2.0

Metadata

Release files for phenovector 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for phenovector 0.1.0
File Size Uploaded Provenance
phenovector-0.1.0.tar.gz 18.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for phenovector 0.1.0
File Interpreter ABI Platform
phenovector-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 38.2 kB

Release files / phenovector-0.1.0.tar.gz

Download URL phenovector-0.1.0.tar.gz
Size 18.6 kB
Tags Source
SHA-256 checksum
How to use checksums
286a0b640534a7b536eaf85fb6ad2191ad32625fea3cfc814f925fdd89d4c3ff
BLAKE2b-256 checksum
How to use checksums
5dc450ff8093e1fadb4420cf555c98e5f4a362264990f61a10b4defa128175b6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Release files / phenovector-0.1.0-py3-none-any.whl

Download URL phenovector-0.1.0-py3-none-any.whl
Size 19.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
98da441ae389dc601377a3d8fd87f417c04c84d25b4e66581fe3b72e3911a65e
BLAKE2b-256 checksum
How to use checksums
42bff3411b142bf18e42cf180dafd4b065e6be53cb2959cf5bf85d4ec464109a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Security for phenovector 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

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