attuned-core

Crates.ioattuned-core
lib.rsattuned-core
version1.0.1
created_at2025-12-18 17:38:56.75516+00
updated_at2025-12-18 19:41:40.346854+00
descriptionCore types and traits for Attuned - human state representation for LLM systems
homepage
repositoryhttps://github.com/JtPerez-Acle/Attuned
max_upload_size
id1992978
size124,121
jt.. (JtPerez-Acle)

documentation

README

attuned-core

Core types and traits for Attuned - human state representation for LLM systems.

Overview

This crate provides the foundational types for representing human state as interpretable vectors across 23 canonical axes. It includes:

  • StateSnapshot - Point-in-time human state representation
  • RuleTranslator - Converts state to LLM-consumable PromptContext
  • Canonical Axes - 23 validated axes across 6 categories with governance metadata

Quick Start

use attuned_core::{StateSnapshot, RuleTranslator, Source};

// Create a state snapshot
let state = StateSnapshot::builder()
    .user_id("user_123")
    .source(Source::SelfReport)
    .axis("cognitive_load", 0.8)
    .axis("stress_level", 0.6)
    .axis("warmth", 0.7)
    .build()?;

// Translate to prompt context
let translator = RuleTranslator::default();
let context = translator.to_prompt_context(&state);

// Use context.guidelines in your LLM system prompt
println!("Tone: {}", context.tone);
println!("Verbosity: {:?}", context.verbosity);
println!("Guidelines: {}", context.guidelines);

Axis Categories

Category Axes Purpose
Cognitive 4 Mental load, decision fatigue, complexity tolerance, focus
Emotional 4 Stress, frustration, confidence, enthusiasm
Social 5 Formality, warmth, assertiveness, patience, trust
Preferences 4 Verbosity, detail level, example preference, pacing
Control 4 Autonomy, agency, transparency, override
Safety 2 Vulnerability, crisis indicators

Design Principles

  • No Actions: Produces context, never executes actions
  • No Persuasion: No engagement optimization or nudging
  • Transparent: All axes have declared governance metadata
  • Self-Report Priority: User-declared state always overrides inference

License

Apache-2.0

Commit count: 0

cargo fmt