OMADIA
Back to home

kemia · persona engine

Personality for every agent.

twelve axes · four guardrails · one bundle.

Most agents have one voice. Yours can be tuned across twelve axes of personality, gated by four boundary categories, and pinned by a sycophancy level; then snapshotted, bundled and exported. Persona portability via content-addressed ZIP, in the box.

formalitydirectnesswarmthhumorsarcasmconcisenessproactivityautonomyriskcreativitydramaphilosophyKEMIA

01 · the honest pitch

Tone is not a prompt-engineering hobby.

Generic chat models default to one voice (eager, agreeable, mid-formal, mid-warm). That voice is wrong for legal, wrong for ops, wrong for support, wrong for sales. Kemia is the persona stack we ported into omadia so the operator picks the voice explicitly, axis by axis, with research backing the sycophancy levels (Chandra 2026, Sharma 2023). The platform compiles it into the system prompt every turn.

If you ship one tone for every team, you're shipping the model's tone. Not yours.
the kemia thesis

02 · stack

Four pillars, one persona contract.

Each pillar is its own capability with its own plugin. They compose in a fixed order at the prompt boundary (header, persona, boundaries, sycophancy, skill) so the layering is predictable and auditable.

01

Persona axes

PersonaConfigSchema · 8 core + 4 extended

Twelve 0-100 sliders covering formality, directness, warmth, humor, sarcasm, conciseness, proactivity, autonomy. Plus four extended axes for risk, creativity, drama, philosophy.

02

Quality-Guard

responseGuard · sycophancy off/low/medium/high

Sycophancy levels prepended as rules at the answer boundary. Cited research, four discrete settings, opt-in per agent. Pilots run today on agent-reference-maximum (low) and agent-seo-analyst (medium).

03

Boundaries

boundaryPresets · 12 presets · 4 categories

Curated wording for what the agent must refuse (data, scope, authority, communication). Pick from the registry; unknown IDs are surfaced as warnings, never silently dropped.

04

Snapshots + Bundle

snapshotService · Profile-Bundle v1

Spec edits land as snapshots with a content hash. Export the whole persona (agent.md, plugin pins, knowledge) as a content-addressed ZIP. Import on another deployment, identical behaviour by hash.

03 · axes

The twelve dimensions of voice.

Eight core axes are always visible in the Builder UI; four extended axes sit behind a collapsible panel so the default surface stays calm. Every axis is 0-100, default 50 = Family-Default neutral.

  • core · 8 axes
  • extended · 4 axes
12PERSONA SCHEMA

formality

Casual chat ↔ courtroom register. Drives address forms and clause length.

directness

Soften-and-hint ↔ name-the-thing. Sets how blunt a recommendation lands.

warmth

Transactional ↔ visibly caring. Drives acknowledgement density.

humor

Strictly task ↔ playful asides. Constrained by sycophancy at the upper end.

sarcasm

Sincere ↔ dry edge. Gated hard by Quality-Guard above the midline.

conciseness

Generous detail ↔ minimum viable answer. Hot-pick for ops surfaces.

proactivity

Answer-only ↔ surfaces next steps unprompted. Pair with autonomy carefully.

autonomy

Asks before acting ↔ takes the obvious next action. Boundaries constrain the ceiling.

extended

risk tolerance

Conservative recommendations ↔ assertive bets. Useful for sales, dangerous for legal.

creativity

Stay-in-the-lines ↔ propose unusual angles. Pairs with humor and drama.

drama

Flat affect ↔ visible stakes. Subtle dial. Small changes read big.

philosophy

Operational ↔ tendency to reach for first principles. Off by default.

04 · boundaries

What the agent must not do.

Twelve curated presets across four categories. Kemia controls the prompt wording, not the operator, so a boundary always lands the same way regardless of who toggled it. Operators add their own custom one-liners on top.

data

4

no-financial-data · no-pii · no-medical-data · no-legal-advice.

scope

3

own-domain-only · no-code-execution · no-external-links.

authority

3

no-discount-authority · no-commitments · no-personnel-decisions.

communication

2

no-speculation · no-competitor-discussion.

12 presets ported 1:1 from byte5ai/kemia. Categories are stable; the registry is open to extension.

05 · portability

Persona as a content-addressed ZIP.

Profile-Bundle v1 wraps everything an operator needs to recreate the persona on another deployment: the agent prompt, the persona axes, the plugin pins, the knowledge files. All under one content-addressed hash.

PROFILE-BUNDLE v1
  • profile-manifest.yamlschema · ids · semver · hashes · created_by
  • agent.mdsystem prompt + identity + guardrails frontmatter
  • plugins.lockone line per plugin: id@version sha256=hex64
  • knowledge/files referenced by the persona, hashed individually (optional)
  • plugins/vendored plugin ZIPs the persona depends on (optional)
  • bundle_hashcontent-addressed bundle hash · re-import = identical

outer ZIP · BundleZipper / BundleImporter live · admin-UI on /api/v1/profiles/:id/snapshots/admin-ui

Secrets are never in the bundle. Only secret slot-names are referenced (e.g. TAVILY_API_KEY). The operator wires values through the existing vault flow at import time.

06 · pilot

Tune a persona with us in 30 minutes.

We open the Builder, pick a real role from your team, and set the twelve axes until it sounds right. You leave with the Profile-Bundle ZIP, importable on your own infrastructure.

Get in touchRequest a demo