Skip to main content

Crate synheart_sensor_agent

Crate synheart_sensor_agent 

Source
Expand description

Synheart Sensor Agent - Privacy-first behavioral sensor for research.

This library provides tools for capturing keyboard and mouse interaction timing for behavioral research, with strong privacy guarantees.

§Privacy Guarantees

  • No key content: We never capture which keys are pressed, only timing
  • No coordinates: We never capture cursor position, only movement magnitude
  • No raw storage: Raw events are not stored beyond the current window
  • Transparency: All collection is logged and auditable

§Architecture

┌─────────────────────────────────────────────────────────────┐
│                    Synheart Sensor Agent                     │
├─────────────────────────────────────────────────────────────┤
│  ┌─────────────┐   ┌─────────────┐   ┌─────────────┐       │
│  │  Collector  │──▶│  Windowing  │──▶│  Features   │       │
│  │   (macOS)   │   │  (10s bins) │   │ (compute)   │       │
│  └─────────────┘   └─────────────┘   └─────────────┘       │
│         │                                    │              │
│         ▼                                    ▼              │
│  ┌─────────────┐                     ┌─────────────┐       │
│  │Transparency │                     │    HSI      │       │
│  │    Log      │                     │  Snapshot   │       │
│  └─────────────┘                     └─────────────┘       │
└─────────────────────────────────────────────────────────────┘

§Example

use synheart_sensor_agent::{collector, core, transparency};

// Create a collector (requires Input Monitoring permission)
let config = collector::CollectorConfig::default();
let mut collector = collector::Collector::new(config);

// Start collection
collector.start().expect("Failed to start collector");

// Events can be received from collector.receiver()

Re-exports§

pub use collector::Collector;
pub use collector::CollectorConfig;
pub use collector::CollectorError;
pub use collector::SensorEvent;
pub use config::Config;
pub use config::SourceConfig;
pub use core::compute_features;
pub use core::HsiBuilder;
pub use core::HsiSnapshot;
pub use core::WindowFeatures;
pub use core::WindowManager;
pub use transparency::SharedTransparencyLog;
pub use transparency::TransparencyLog;
pub use transparency::TransparencyStats;

Modules§

collector
Event collection module for the Synheart Sensor Agent.
config
Configuration for the Synheart Sensor Agent.
core
Core functionality for the Synheart Sensor Agent.
transparency
Transparency module for the Synheart Sensor Agent.

Constants§

PRIVACY_DECLARATION
Privacy declaration that can be displayed to users.
VERSION
Library version.