zeekayandHanzo Dev b47cf5e7e0 Move the workflows to .github/workflows
The forge reads .github/workflows natively and github.com reads nothing else,
so one directory serves both planes instead of two conventions that disagree
about which one is live. The reusable in hanzoai/ci already lives there, so a
caller naming that path now resolves to a file that exists.

Co-authored-by: Hanzo Dev <[email protected]>
2026-09-08 18:50:30 -07:00
2026-08-04 16:47:53 -07:00
2026-06-28 20:25:33 -07:00

persona

Persona

Framework for loading, validating, and working with personality profiles.

Provides loaders (Rust, TypeScript, Python), JSON schemas, and CLI tools for the Hanzo Personas dataset.

Install

# Python
pip install hanzo-persona

# Node.js
npm install @hanzo/persona

# Rust
cargo add hanzo-persona

Usage

from persona import load, get

# Load all personas
personas = load()

# Get a specific persona
feynman = get("feynman")
print(feynman.traits.openness)  # 0.95
import { PersonaLoader } from '@hanzo/persona'

const loader = new PersonaLoader()
const feynman = loader.get('feynman')
console.log(feynman.traits.openness) // 0.95
use hanzo_persona::PersonaLoader;

let loader = PersonaLoader::default();
let feynman = loader.get("feynman").unwrap();
println!("{}", feynman.traits.openness); // 0.95

Schemas

  • schemas/personality.schema.json — JSON Schema for profile validation
  • schemas/persona_schema.yaml — YAML schema for PERSONA.md frontmatter

Tools

  • scripts/validate.js — validate profiles against schema
  • scripts/split-personalities.js — split bulk data into individual files
  • tools/unix_tools.yaml — tool preference definitions

Data

Persona data (707 JSON profiles + 14 PERSONA.md files) lives in hanzoai/personas.

License

MIT

S
Description
Loaders, schemas, and CLI tools for working with Hanzo Personas personality profiles.
Readme
900 KiB
Languages
JavaScript 58.6%
Python 38.8%
Shell 2.6%